;!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d75271a8-1816-4dbf-9d00-ec6cd4b1e028",e._sentryDebugIdIdentifier="sentry-dbid-d75271a8-1816-4dbf-9d00-ec6cd4b1e028")}catch(e){}}();
(self["webpackChunkyouscan_ui"] = self["webpackChunkyouscan_ui"] || []).push([[792],{

/***/ "gXmr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  X: () => (/* binding */ countries),
  z: () => (/* binding */ world)
});

;// CONCATENATED MODULE: ./src/3rd-party/mapdata/custom/world.json
const world_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"World, Miller projection, medium resolution","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:54003"}},"hc-transform":{"default":{"crs":"+proj=mill +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +R_A +datum=WGS84 +units=m +no_defs","scale":0.0000172182781654,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-19495356.3693,"yoffset":12635908.1982}},"features":[{"type":"Feature","id":"FO","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.54,"hc-key":"fo","hc-a2":"FO","name":"Faroe Islands","labelrank":"6","country-abbrev":"Faeroe Is.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"FRO","iso-a2":"FO","woe-id":"23424816","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[3991,8611],[4005,8598],[4004,8594],[3989,8605],[3991,8611]]]}},{"type":"Feature","id":"UM","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.58,"hc-key":"um","hc-a2":"UM","name":"United States Minor Outlying Islands","labelrank":"5","country-abbrev":"U.S. MOI","subregion":"Seven seas (open ocean)","region-wb":"East Asia & Pacific","iso-a3":"UMI","iso-a2":"UM","woe-id":"28289407","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[-605,6652],[-606,6652],[-606,6652],[-606,6652],[-605,6652]]]}},{"type":"Feature","id":"US","properties":{"hc-group":"admin0","hc-middle-x":0.68,"hc-middle-y":0.68,"hc-key":"us","hc-a2":"US","name":"United States of America","labelrank":"2","country-abbrev":"U.S.A.","subregion":"Northern America","region-wb":"North America","iso-a3":"USA","iso-a2":"US","woe-id":"23424977","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[556,8034],[559,8032],[549,8036],[550,8040],[556,8034]]],[[[558,8043],[561,8042],[558,8039],[553,8040],[558,8043]]],[[[265,8289],[268,8289],[267,8283],[263,8288],[265,8289]]],[[[263,8300],[267,8295],[264,8292],[261,8294],[263,8300]]],[[[255,8300],[267,8279],[253,8290],[251,8302],[255,8300]]],[[[306,8298],[305,8293],[298,8293],[300,8304],[306,8298]]],[[[249,8306],[250,8302],[245,8301],[244,8305],[249,8306]]],[[[292,8310],[298,8305],[294,8298],[291,8308],[292,8310]]],[[[238,8311],[244,8313],[244,8308],[238,8304],[238,8311]]],[[[249,8311],[248,8310],[244,8314],[249,8314],[249,8311]]],[[[232,8330],[237,8337],[249,8340],[245,8335],[232,8330]]],[[[272,8342],[284,8338],[278,8330],[268,8336],[272,8342]]],[[[268,8353],[268,8346],[255,8348],[259,8353],[268,8353]]],[[[282,8349],[285,8339],[276,8346],[276,8355],[282,8349]]],[[[261,8368],[271,8358],[264,8355],[259,8356],[261,8368]]],[[[234,8379],[258,8373],[253,8353],[237,8353],[234,8379]]],[[[181,8386],[179,8377],[173,8376],[177,8383],[181,8386]]],[[[158,8420],[155,8412],[152,8416],[154,8423],[158,8420]]],[[[1578,8023],[1574,8018],[1559,8010],[1556,8013],[1578,8023]]],[[[1623,7918],[1621,7909],[1614,7899],[1610,7903],[1623,7918]]],[[[1667,7934],[1667,7928],[1663,7927],[1665,7933],[1667,7934]]],[[[1724,7944],[1726,7939],[1717,7939],[1721,7943],[1724,7944]]],[[[224,8331],[215,8369],[227,8371],[236,8359],[224,8331]]],[[[-726,8256],[-740,8233],[-777,8227],[-811,8206],[-792,8230],[-757,8230],[-757,8246],[-726,8256]]],[[[193,8378],[186,8400],[202,8387],[208,8341],[193,8378]]],[[[183,8412],[177,8392],[156,8412],[174,8431],[183,8412]]],[[[199,8431],[221,8424],[229,8389],[214,8393],[199,8431]]],[[[-826,8660],[-803,8657],[-834,8641],[-862,8661],[-896,8667],[-850,8675],[-826,8660]]],[[[553,8054],[551,8053],[551,8054],[553,8054]]],[[[1261,7281],[1260,7293],[1252,7296],[1228,7335],[1206,7373],[1202,7375],[1200,7378],[1167,7387],[1143,7358],[1102,7380],[1091,7409],[1043,7449],[993,7449],[993,7434],[908,7434],[797,7472],[799,7479],[728,7473],[722,7492],[686,7523],[648,7524],[624,7541],[571,7629],[568,7651],[532,7689],[528,7720],[512,7742],[522,7777],[507,7826],[520,7864],[527,7925],[507,8030],[563,8020],[563,8024],[573,8014],[562,8025],[562,8026],[566,8031],[562,8027],[561,8054],[1379,8054],[1455,8037],[1491,8018],[1546,8016],[1503,7997],[1471,7971],[1510,7975],[1520,7963],[1574,7988],[1575,7986],[1575,7988],[1591,7997],[1601,7995],[1583,7981],[1612,7961],[1683,7971],[1697,7959],[1708,7961],[1708,7954],[1689,7936],[1622,7938],[1592,7889],[1612,7898],[1595,7842],[1598,7806],[1614,7783],[1632,7792],[1645,7831],[1636,7855],[1644,7893],[1694,7935],[1726,7918],[1730,7880],[1715,7868],[1750,7865],[1758,7833],[1755,7820],[1751,7816],[1746,7820],[1739,7807],[1727,7787],[1756,7775],[1780,7780],[1855,7817],[1862,7830],[1858,7836],[1858,7842],[1927,7844],[1955,7886],[1970,7900],[1987,7905],[1987,7905],[2082,7905],[2118,7937],[2126,7968],[2149,7996],[2192,7982],[2192,7933],[2196,7927],[2203,7927],[2202,7914],[2210,7911],[2216,7898],[2179,7882],[2181,7881],[2174,7874],[2173,7879],[2173,7879],[2164,7875],[2168,7876],[2168,7870],[2163,7871],[2161,7874],[2155,7872],[2110,7843],[2108,7787],[2041,7770],[2006,7747],[2005,7718],[1959,7656],[1937,7700],[1941,7654],[1934,7620],[1948,7620],[1956,7577],[1933,7542],[1915,7545],[1890,7517],[1854,7495],[1795,7447],[1786,7414],[1814,7342],[1829,7289],[1819,7237],[1797,7235],[1766,7277],[1746,7323],[1752,7355],[1710,7394],[1682,7378],[1650,7401],[1567,7404],[1544,7395],[1558,7358],[1533,7373],[1514,7361],[1485,7382],[1464,7376],[1411,7380],[1340,7337],[1309,7290],[1321,7262],[1289,7265],[1261,7281]]],[[[247,8324],[243,8322],[239,8327],[247,8327],[248,8327],[252,8348],[288,8301],[287,8280],[261,8307],[246,8319],[247,8324]]],[[[-425,7092],[-433,7100],[-433,7100],[-426,7097],[-425,7092],[-425,7092],[-425,7092]]],[[[-425,7092],[-390,7060],[-422,7047],[-425,7092],[-425,7092],[-425,7092]]],[[[308,8292],[307,8287],[302,8290],[308,8292],[308,8292],[308,8292]]],[[[217,8430],[220,8427],[210,8429],[210,8433],[205,8435],[148,8429],[100,8466],[54,8486],[-34,8511],[-77,8513],[-132,8528],[-131,8544],[-185,8544],[-179,8506],[-229,8506],[-240,8492],[-304,8469],[-282,8489],[-303,8495],[-289,8538],[-261,8553],[-264,8566],[-317,8528],[-328,8503],[-369,8479],[-346,8459],[-377,8422],[-432,8396],[-465,8356],[-478,8363],[-510,8328],[-540,8328],[-589,8308],[-615,8286],[-687,8268],[-679,8288],[-643,8297],[-585,8332],[-551,8327],[-555,8346],[-513,8369],[-478,8400],[-458,8457],[-516,8437],[-555,8465],[-597,8443],[-595,8484],[-613,8511],[-651,8497],[-693,8522],[-709,8506],[-741,8500],[-765,8515],[-713,8520],[-680,8544],[-726,8574],[-715,8598],[-667,8655],[-644,8644],[-615,8663],[-568,8678],[-587,8710],[-579,8735],[-637,8709],[-728,8718],[-784,8772],[-702,8808],[-655,8816],[-653,8790],[-599,8787],[-594,8837],[-655,8842],[-667,8867],[-741,8904],[-729,8932],[-673,8934],[-637,8959],[-638,8973],[-601,9009],[-570,9009],[-534,9034],[-486,9036],[-450,9061],[-399,9052],[-370,9033],[-317,9037],[-306,9015],[-225,9020],[-162,9000],[-87,8990],[-49,8997],[19,8972],[20,8520],[74,8510],[120,8473],[126,8458],[158,8488],[183,8497],[199,8475],[245,8436],[292,8359],[346,8330],[346,8304],[346,8304],[319,8284],[320,8322],[316,8323],[310,8332],[305,8326],[295,8329],[287,8349],[254,8380],[220,8428],[217,8430]]],[[[-373,8372],[-390,8391],[-344,8421],[-318,8446],[-311,8403],[-356,8377],[-413,8325],[-373,8372]]],[[[-433,7100],[-479,7115],[-446,7112],[-433,7100],[-433,7100]]],[[[308,8292],[309,8295],[309,8292],[308,8292],[308,8292],[308,8292]]]]}},{"type":"Feature","id":"JP","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.66,"hc-key":"jp","hc-a2":"JP","name":"Japan","labelrank":"2","country-abbrev":"Japan","subregion":"Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"JPN","iso-a2":"JP","woe-id":"23424856","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8389,7914],[8390,7917],[8398,7911],[8394,7909],[8389,7914]]],[[[8149,7526],[8129,7515],[8097,7520],[8140,7570],[8197,7578],[8232,7572],[8278,7641],[8269,7618],[8307,7629],[8314,7654],[8342,7662],[8359,7703],[8352,7721],[8369,7771],[8380,7756],[8400,7767],[8419,7706],[8391,7670],[8390,7636],[8375,7598],[8384,7580],[8357,7553],[8353,7573],[8306,7546],[8256,7542],[8267,7531],[8239,7508],[8212,7518],[8222,7544],[8172,7539],[8149,7527],[8166,7521],[8186,7539],[8200,7532],[8186,7497],[8173,7507],[8138,7480],[8130,7504],[8149,7526]]],[[[8044,7495],[8037,7525],[8057,7499],[8076,7517],[8113,7508],[8122,7487],[8101,7435],[8068,7431],[8067,7482],[8044,7495]]],[[[8380,7790],[8365,7775],[8355,7820],[8373,7846],[8401,7845],[8416,7924],[8472,7874],[8509,7860],[8522,7839],[8483,7831],[8455,7794],[8413,7818],[8367,7806],[8380,7790]]]]}},{"type":"Feature","id":"SC","properties":{"hc-group":"admin0","hc-middle-x":0.58,"hc-middle-y":0.41,"hc-key":"sc","hc-a2":"SC","name":"Seychelles","labelrank":"6","country-abbrev":"Syc.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SYC","iso-a2":"SC","woe-id":"23424941","continent":"Seven seas (open ocean)"},"geometry":{"type":"Polygon","coordinates":[[[5849,6344],[5852,6341],[5851,6337],[5843,6348],[5849,6344]]]}},{"type":"Feature","id":"IN","properties":{"hc-group":"admin0","hc-middle-x":0.34,"hc-middle-y":0.43,"hc-key":"in","hc-a2":"IN","name":"India","labelrank":"2","country-abbrev":"India","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"IND","iso-a2":"IN","woe-id":"23424848","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6818,7133],[6820,7134],[6820,7126],[6817,7128],[6818,7133]]],[[[6819,7322],[6840,7326],[6842,7305],[6869,7285],[6937,7293],[6923,7319],[6953,7324],[7012,7369],[7032,7360],[7057,7370],[7092,7333],[7074,7306],[7024,7278],[7023,7255],[6996,7195],[6973,7200],[6969,7150],[6951,7137],[6939,7192],[6922,7167],[6909,7188],[6949,7229],[6935,7237],[6886,7236],[6870,7262],[6829,7277],[6818,7260],[6843,7237],[6816,7220],[6837,7209],[6832,7189],[6847,7142],[6823,7124],[6820,7141],[6792,7124],[6767,7075],[6740,7073],[6699,7023],[6646,6986],[6647,6972],[6586,6945],[6580,6925],[6588,6875],[6574,6835],[6574,6783],[6504,6717],[6476,6742],[6454,6807],[6424,6859],[6410,6911],[6384,6956],[6360,7072],[6367,7093],[6351,7149],[6344,7113],[6310,7098],[6291,7105],[6258,7137],[6287,7155],[6241,7174],[6227,7195],[6247,7208],[6280,7205],[6313,7222],[6265,7289],[6295,7328],[6337,7325],[6368,7360],[6381,7388],[6416,7427],[6415,7446],[6438,7461],[6400,7495],[6393,7534],[6410,7548],[6453,7539],[6490,7559],[6513,7572],[6527,7544],[6546,7534],[6542,7507],[6563,7480],[6530,7473],[6541,7434],[6608,7397],[6589,7383],[6579,7353],[6660,7310],[6714,7305],[6751,7281],[6795,7274],[6820,7286],[6819,7322]]]]}},{"type":"Feature","id":"FR","properties":{"hc-group":"admin0","hc-middle-x":0.28,"hc-middle-y":0.04,"hc-key":"fr","hc-a2":"FR","name":"France","labelrank":"2","country-abbrev":"Fr.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"FRA","iso-a2":"FR","woe-id":"-90","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2537,7972],[2531,7971],[2530,7983],[2533,7975],[2537,7972]]],[[[4485,7820],[4477,7774],[4465,7781],[4462,7817],[4485,7820]]],[[[9164,5848],[9155,5806],[9109,5833],[9082,5858],[9076,5879],[9141,5830],[9164,5848]]],[[[6256,4904],[6297,4899],[6285,4876],[6245,4876],[6256,4904]]],[[[2331,7017],[2334,7019],[2334,7016],[2331,7017]]],[[[4427,7861],[4426,7860],[4425,7859],[4424,7860],[4423,7858],[4385,7835],[4321,7852],[4294,7830],[4298,7812],[4279,7808],[4263,7812],[4262,7812],[4262,7812],[4255,7814],[4255,7818],[4246,7818],[4203,7821],[4151,7846],[4160,7853],[4173,7943],[4145,7980],[4120,7997],[4065,8019],[4064,8038],[4112,8049],[4124,8036],[4163,8041],[4147,8082],[4197,8065],[4210,8081],[4250,8101],[4251,8127],[4279,8135],[4327,8092],[4376,8075],[4381,8071],[4392,8072],[4447,8053],[4429,8001],[4386,7963],[4389,7952],[4391,7955],[4393,7956],[4405,7957],[4405,7947],[4412,7939],[4400,7909],[4427,7861]]],[[[2596,6636],[2603,6648],[2632,6639],[2670,6598],[2632,6543],[2583,6547],[2601,6581],[2587,6623],[2596,6636]]]]}},{"type":"Feature","id":"FM","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.52,"hc-key":"fm","hc-a2":"FM","name":"Federated States of Micronesia","labelrank":"6","country-abbrev":"F.S.M.","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"FSM","iso-a2":"FM","woe-id":"23424815","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[8899,6684],[8902,6683],[8902,6679],[8899,6679],[8899,6684]]]}},{"type":"Feature","id":"CN","properties":{"hc-group":"admin0","hc-middle-x":0.41,"hc-middle-y":0.56,"hc-key":"cn","hc-a2":"CN","name":"China","labelrank":"2","country-abbrev":"China","subregion":"Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"CHN","iso-a2":"CN","woe-id":"23424781","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7429,7050],[7456,7076],[7488,7081],[7498,7067],[7481,7036],[7459,7021],[7429,7031],[7429,7050]]],[[[6842,7305],[6840,7326],[6819,7322],[6773,7330],[6756,7323],[6729,7336],[6699,7367],[6683,7364],[6640,7401],[6608,7397],[6541,7434],[6530,7473],[6563,7480],[6542,7507],[6546,7534],[6527,7544],[6513,7572],[6500,7571],[6482,7577],[6459,7605],[6416,7624],[6411,7627],[6426,7631],[6423,7675],[6395,7677],[6389,7707],[6399,7728],[6446,7748],[6450,7736],[6482,7759],[6521,7763],[6529,7774],[6584,7803],[6602,7838],[6581,7906],[6646,7924],[6668,7986],[6719,7972],[6741,7981],[6750,8032],[6795,8058],[6801,8059],[6810,8061],[6814,8039],[6847,8016],[6885,8003],[6906,7963],[6901,7912],[6979,7903],[7034,7879],[7064,7822],[7220,7815],[7232,7803],[7282,7788],[7326,7787],[7372,7807],[7453,7813],[7526,7857],[7511,7885],[7528,7908],[7575,7895],[7603,7919],[7637,7921],[7664,7953],[7714,7968],[7756,7963],[7762,7975],[7722,8015],[7698,8015],[7696,8015],[7691,8008],[7642,8005],[7632,8021],[7667,8086],[7699,8074],[7742,8093],[7740,8107],[7768,8158],[7788,8176],[7766,8201],[7790,8222],[7862,8234],[7935,8210],[8005,8075],[8043,8071],[8086,8027],[8093,8004],[8135,8005],[8192,8031],[8204,8005],[8185,7988],[8178,7951],[8146,7907],[8138,7916],[8121,7913],[8090,7899],[8099,7870],[8091,7827],[8078,7815],[8057,7831],[8053,7812],[8004,7796],[8007,7774],[7962,7785],[7943,7758],[7895,7730],[7838,7706],[7799,7682],[7804,7705],[7833,7744],[7800,7758],[7778,7733],[7751,7722],[7736,7698],[7699,7695],[7708,7662],[7731,7662],[7749,7627],[7787,7651],[7812,7637],[7845,7637],[7787,7604],[7742,7557],[7773,7532],[7791,7478],[7819,7454],[7824,7420],[7794,7408],[7836,7385],[7812,7368],[7814,7337],[7794,7326],[7749,7262],[7758,7244],[7731,7235],[7661,7167],[7610,7163],[7593,7144],[7576,7170],[7574,7142],[7489,7118],[7466,7084],[7461,7122],[7422,7134],[7409,7122],[7366,7149],[7372,7161],[7329,7180],[7289,7154],[7245,7162],[7234,7150],[7217,7146],[7222,7111],[7206,7124],[7177,7120],[7170,7139],[7146,7143],[7157,7171],[7138,7175],[7130,7203],[7101,7195],[7103,7234],[7133,7260],[7132,7313],[7098,7343],[7092,7333],[7057,7370],[7032,7360],[7012,7369],[6953,7324],[6923,7319],[6882,7338],[6842,7305]]]]}},{"type":"Feature","id":"PT","properties":{"hc-group":"admin0","hc-middle-x":0.46,"hc-middle-y":0.5,"hc-key":"pt","hc-a2":"PT","name":"Portugal","labelrank":"2","country-abbrev":"Port.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"PRT","iso-a2":"PT","woe-id":"23424925","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[3984,7629],[3937,7624],[3944,7663],[3922,7681],[3946,7754],[3944,7795],[4009,7795],[4020,7781],[3998,7762],[3997,7692],[3984,7629]]]}},{"type":"Feature","id":"SW","properties":{"hc-group":"admin0","hc-middle-x":0.86,"hc-middle-y":0.57,"hc-key":"sw","hc-a2":"SW","name":"Serranilla Bank","labelrank":"5","country-abbrev":"S.B.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"-99","iso-a2":"SW","woe-id":"-99","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1870,6950],[1870,6950],[1870,6950],[1870,6950]]]}},{"type":"Feature","id":"SH","properties":{"hc-group":"admin0","hc-middle-x":0.54,"hc-middle-y":0.51,"hc-key":"sh","hc-a2":"SH","name":"Scarborough Reef","labelrank":"6","country-abbrev":"S.R.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"-99","iso-a2":"SH","woe-id":"-99","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7699,6929],[7698,6929],[7698,6929],[7698,6929],[7699,6929]]]}},{"type":"Feature","id":"BR","properties":{"hc-group":"admin0","hc-middle-x":0.54,"hc-middle-y":0.34,"hc-key":"br","hc-a2":"BR","name":"Brazil","labelrank":"2","country-abbrev":"Brazil","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"BRA","iso-a2":"BR","woe-id":"23424768","continent":"South America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2729,6474],[2767,6471],[2755,6436],[2702,6426],[2696,6461],[2729,6474]]],[[[2615,5450],[2627,5475],[2626,5480],[2554,5539],[2542,5531],[2517,5563],[2494,5561],[2549,5623],[2606,5658],[2604,5706],[2584,5708],[2584,5709],[2583,5712],[2594,5736],[2594,5755],[2559,5759],[2553,5800],[2530,5817],[2483,5817],[2488,5852],[2478,5876],[2496,5937],[2471,5965],[2469,5993],[2419,5995],[2409,6069],[2369,6077],[2332,6104],[2293,6110],[2263,6149],[2262,6192],[2226,6186],[2177,6154],[2139,6155],[2108,6153],[2111,6200],[2091,6185],[2061,6183],[2007,6256],[2034,6290],[2040,6327],[2103,6356],[2128,6354],[2143,6437],[2125,6474],[2131,6529],[2181,6529],[2206,6540],[2219,6515],[2258,6498],[2301,6525],[2324,6550],[2303,6552],[2286,6596],[2377,6604],[2401,6632],[2424,6629],[2437,6595],[2423,6558],[2431,6534],[2459,6514],[2509,6538],[2528,6536],[2543,6553],[2583,6547],[2632,6543],[2670,6598],[2688,6593],[2700,6543],[2723,6528],[2725,6479],[2679,6465],[2701,6426],[2743,6421],[2788,6463],[2869,6439],[2879,6399],[2908,6412],[2969,6393],[3017,6395],[3062,6370],[3101,6334],[3149,6327],[3171,6267],[3156,6207],[3109,6160],[3075,6104],[3048,6086],[3051,6007],[3043,5952],[3028,5936],[3026,5900],[2985,5834],[2988,5821],[2956,5790],[2888,5790],[2811,5749],[2785,5728],[2761,5693],[2767,5650],[2757,5614],[2726,5585],[2711,5552],[2684,5560],[2677,5531],[2654,5510],[2642,5465],[2620,5444],[2615,5447],[2615,5450]]]]}},{"type":"Feature","id":"KI","properties":{"hc-group":"admin0","hc-middle-x":0.28,"hc-middle-y":0.65,"hc-key":"ki","hc-a2":"KI","name":"Kiribati","labelrank":"6","country-abbrev":"Kir.","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"KIR","iso-a2":"KI","woe-id":"23424867","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[-468,6538],[-465,6533],[-460,6529],[-467,6531],[-468,6538]]]}},{"type":"Feature","id":"PH","properties":{"hc-group":"admin0","hc-middle-x":0.4,"hc-middle-y":0.19,"hc-key":"ph","hc-a2":"PH","name":"Philippines","labelrank":"2","country-abbrev":"Phil.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"PHL","iso-a2":"PH","woe-id":"23424934","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7894,6825],[7915,6827],[7892,6850],[7919,6851],[7934,6808],[7915,6812],[7907,6784],[7894,6825]]],[[[7758,6817],[7762,6844],[7775,6837],[7758,6817],[7758,6817]]],[[[7753,6809],[7752,6810],[7758,6817],[7758,6817],[7758,6816],[7753,6809],[7753,6809]]],[[[7823,6787],[7825,6841],[7859,6818],[7853,6800],[7886,6812],[7884,6786],[7855,6746],[7836,6770],[7842,6795],[7823,6787]]],[[[7891,6697],[7867,6709],[7840,6706],[7823,6668],[7827,6707],[7866,6736],[7880,6720],[7907,6747],[7929,6745],[7929,6776],[7953,6740],[7962,6694],[7951,6678],[7937,6696],[7925,6676],[7925,6643],[7891,6661],[7891,6697]]],[[[7896,6884],[7885,6826],[7867,6840],[7859,6878],[7840,6893],[7842,6869],[7816,6893],[7801,6877],[7817,6862],[7802,6841],[7776,6880],[7796,6881],[7767,6918],[7760,6966],[7777,6959],[7775,7002],[7801,7048],[7798,7035],[7834,7023],[7840,6987],[7831,6962],[7812,6952],[7817,6900],[7839,6905],[7896,6884]]],[[[7753,6809],[7757,6790],[7686,6729],[7752,6809],[7753,6809]]]]}},{"type":"Feature","id":"MX","properties":{"hc-group":"admin0","hc-middle-x":0.51,"hc-middle-y":0.49,"hc-key":"mx","hc-a2":"MX","name":"Mexico","labelrank":"2","country-abbrev":"Mex.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"MEX","iso-a2":"MX","woe-id":"23424900","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1630,7094],[1622,7084],[1622,7088],[1624,7093],[1630,7094]]],[[[1038,7129],[1042,7127],[1052,7116],[1044,7121],[1038,7129]]],[[[881,7216],[885,7216],[889,7212],[889,7210],[881,7216]]],[[[875,7231],[874,7226],[871,7225],[874,7232],[875,7231]]],[[[786,7330],[784,7328],[781,7330],[786,7338],[786,7330]]],[[[696,7356],[694,7355],[692,7363],[695,7361],[696,7356]]],[[[864,7349],[866,7364],[874,7359],[871,7350],[864,7349]]],[[[836,7376],[845,7368],[847,7358],[833,7372],[836,7376]]],[[[1200,7378],[1199,7374],[1206,7373],[1228,7335],[1252,7296],[1259,7288],[1261,7281],[1289,7265],[1321,7262],[1306,7216],[1300,7155],[1321,7096],[1361,7038],[1401,7020],[1478,7034],[1505,7051],[1523,7108],[1589,7126],[1630,7115],[1609,7083],[1597,7023],[1583,7030],[1567,7012],[1558,7009],[1504,7009],[1491,6992],[1522,6966],[1482,6956],[1466,6911],[1417,6957],[1389,6967],[1339,6944],[1273,6971],[1205,6993],[1183,7012],[1133,7025],[1088,7056],[1067,7089],[1083,7121],[1064,7158],[989,7239],[956,7256],[956,7286],[923,7307],[876,7358],[847,7417],[849,7428],[804,7448],[801,7397],[832,7368],[924,7228],[922,7208],[946,7205],[956,7176],[943,7165],[930,7186],[876,7228],[873,7264],[834,7285],[790,7321],[816,7325],[820,7341],[771,7383],[760,7417],[728,7473],[799,7479],[797,7472],[908,7434],[993,7434],[993,7449],[1043,7449],[1091,7409],[1102,7380],[1143,7358],[1167,7387],[1200,7378]],[[1309,7246],[1303,7231],[1306,7218],[1313,7245],[1309,7246]]]]}},{"type":"Feature","id":"ES","properties":{"hc-group":"admin0","hc-middle-x":0.76,"hc-middle-y":0.27,"hc-key":"es","hc-a2":"ES","name":"Spain","labelrank":"2","country-abbrev":"Sp.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"ESP","iso-a2":"ES","woe-id":"23424950","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3748,7322],[3716,7331],[3697,7330],[3726,7345],[3748,7322]]],[[[4117,7566],[4118,7565],[4117,7564],[4116,7566],[4117,7566]]],[[[4044,7586],[4046,7586],[4045,7584],[4044,7585],[4044,7586]]],[[[4045,7594],[4021,7599],[4011,7621],[3984,7629],[3997,7692],[3998,7762],[4020,7781],[4009,7795],[3944,7795],[3930,7838],[3969,7860],[3988,7852],[4098,7851],[4151,7846],[4203,7821],[4246,7818],[4249,7812],[4255,7814],[4262,7812],[4262,7813],[4262,7814],[4263,7812],[4263,7812],[4279,7808],[4298,7812],[4300,7795],[4265,7771],[4233,7763],[4194,7709],[4211,7683],[4189,7669],[4183,7644],[4154,7635],[4143,7615],[4072,7613],[4046,7594],[4045,7594]]]]}},{"type":"Feature","id":"BU","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.73,"hc-key":"bu","hc-a2":"BU","name":"Bajo Nuevo Bank (Petrel Is.)","labelrank":"8","country-abbrev":null,"subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"-99","iso-a2":"BU","woe-id":"-99","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1830,6948],[1830,6948],[1830,6948],[1830,6948],[1830,6948]]]}},{"type":"Feature","id":"MV","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.53,"hc-key":"mv","hc-a2":"MV","name":"Maldives","labelrank":"5","country-abbrev":"Mald.","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"MDV","iso-a2":"MV","woe-id":"23424899","continent":"Seven seas (open ocean)"},"geometry":{"type":"Polygon","coordinates":[[[6382,6647],[6390,6636],[6380,6637],[6384,6642],[6382,6647]]]}},{"type":"Feature","id":"SP","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"sp","hc-a2":"SP","name":"Spratly Islands","labelrank":"6","country-abbrev":"Spratly Is.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"SPI","iso-a2":"SP","woe-id":"23424921","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7642,6799],[7641,6799],[7641,6799],[7642,6799],[7642,6799]]]}},{"type":"Feature","id":"GB","properties":{"hc-group":"admin0","hc-middle-x":0.69,"hc-middle-y":0.09,"hc-key":"gb","hc-a2":"GB","name":"United Kingdom","labelrank":"2","country-abbrev":"U.K.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"GBR","iso-a2":"GB","woe-id":"-90","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4108,8458],[4110,8454],[4106,8453],[4102,8457],[4108,8458]]],[[[4112,8469],[4111,8462],[4116,8461],[4104,8463],[4112,8469]]],[[[4118,8472],[4113,8477],[4125,8471],[4121,8468],[4118,8472]]],[[[4173,8521],[4166,8500],[4165,8515],[4155,8520],[4173,8521]]],[[[4176,8534],[4182,8533],[4169,8530],[4171,8539],[4176,8534]]],[[[4181,8542],[4179,8536],[4175,8537],[4176,8542],[4181,8542]]],[[[1789,7055],[1792,7057],[1798,7055],[1792,7054],[1789,7055]]],[[[2080,7131],[2072,7131],[2072,7133],[2077,7133],[2080,7131]]],[[[2065,7134],[2063,7131],[2058,7131],[2062,7132],[2065,7134]]],[[[3994,8404],[3993,8427],[4018,8441],[4015,8421],[3994,8404]]],[[[2433,4774],[2454,4816],[2486,4811],[2491,4798],[2433,4774]]],[[[5210,7554],[5209,7553],[5207,7555],[5206,7555],[5206,7555],[5206,7554],[5204,7554],[5204,7555],[5205,7555],[5203,7556],[5206,7556],[5210,7558],[5210,7557],[5207,7557],[5210,7554]],[[5205,7555],[5206,7556],[5205,7556],[5205,7555]]],[[[4046,7594],[4045,7593],[4045,7594],[4046,7594]]],[[[5184,7543],[5181,7544],[5176,7544],[5178,7545],[5184,7543]]],[[[3989,8295],[4018,8305],[4040,8278],[4018,8256],[3987,8256],[3961,8270],[3989,8295]]],[[[4024,8390],[4056,8446],[4114,8447],[4083,8416],[4100,8407],[4147,8405],[4152,8396],[4110,8337],[4156,8317],[4168,8277],[4202,8256],[4214,8215],[4204,8207],[4254,8201],[4251,8174],[4225,8151],[4244,8137],[4212,8122],[4102,8117],[4043,8100],[4081,8140],[4113,8140],[4074,8163],[4046,8166],[4079,8182],[4080,8220],[4109,8227],[4119,8259],[4096,8272],[4103,8288],[4073,8289],[4075,8268],[4052,8286],[4067,8313],[4036,8351],[4008,8361],[4032,8367],[4003,8396],[4024,8390]]]]}},{"type":"Feature","id":"GR","properties":{"hc-group":"admin0","hc-middle-x":0.3,"hc-middle-y":0.43,"hc-key":"gr","hc-a2":"GR","name":"Greece","labelrank":"3","country-abbrev":"Greece","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"GRC","iso-a2":"GR","woe-id":"23424833","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4984,7560],[4938,7553],[4902,7565],[4922,7573],[4984,7560]]],[[[5023,7596],[5041,7604],[5037,7593],[5028,7585],[5023,7596]]],[[[5011,7610],[5003,7612],[5010,7619],[5009,7615],[5011,7610]]],[[[5002,7626],[5006,7623],[5003,7621],[5004,7624],[5002,7626]]],[[[4952,7622],[4962,7630],[4963,7623],[4957,7611],[4952,7622]]],[[[4985,7644],[4977,7640],[4975,7641],[4978,7645],[4985,7644]]],[[[5004,7649],[5007,7647],[4999,7645],[4993,7649],[5004,7649]]],[[[4978,7677],[4980,7667],[4975,7669],[4971,7677],[4978,7677]]],[[[4959,7727],[4953,7726],[4959,7743],[4966,7743],[4959,7727]]],[[[4828,7750],[4831,7753],[4828,7750],[4826,7753],[4826,7754],[4828,7756],[4831,7756],[4854,7765],[4884,7773],[4931,7781],[4953,7770],[4985,7786],[4994,7775],[4977,7752],[4947,7761],[4907,7750],[4928,7732],[4876,7743],[4874,7728],[4958,7637],[4915,7667],[4918,7646],[4893,7656],[4878,7642],[4892,7604],[4853,7613],[4838,7665],[4798,7715],[4809,7720],[4828,7750]]],[[[4989,7700],[4994,7693],[4988,7690],[4971,7698],[4986,7702],[4988,7702],[4989,7700]]]]}},{"type":"Feature","id":"AS","properties":{"hc-group":"admin0","hc-middle-x":0.56,"hc-middle-y":0.57,"hc-key":"as","hc-a2":"AS","name":"American Samoa","labelrank":"4","country-abbrev":"Am. Samoa","subregion":"Polynesia","region-wb":"East Asia & Pacific","iso-a3":"ASM","iso-a2":"AS","woe-id":"23424746","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[-859,6056],[-861,6055],[-863,6052],[-866,6054],[-859,6056]]]}},{"type":"Feature","id":"DK","properties":{"hc-group":"admin0","hc-middle-x":0.35,"hc-middle-y":0.49,"hc-key":"dk","hc-a2":"DK","name":"Denmark","labelrank":"4","country-abbrev":"Den.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"DNK","iso-a2":"DK","woe-id":"23424796","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4538,8291],[4553,8278],[4544,8277],[4531,8283],[4538,8291]]],[[[4511,8288],[4516,8286],[4512,8286],[4506,8292],[4511,8288]]],[[[4576,8293],[4566,8288],[4565,8292],[4570,8294],[4576,8293]]],[[[4495,8296],[4502,8291],[4500,8287],[4494,8289],[4495,8296]]],[[[4526,8290],[4523,8282],[4520,8286],[4529,8299],[4526,8290]]],[[[4578,8322],[4559,8280],[4533,8320],[4567,8339],[4578,8322]]],[[[4484,8285],[4466,8289],[4461,8288],[4445,8357],[4495,8381],[4519,8408],[4509,8372],[4529,8353],[4516,8338],[4525,8302],[4488,8310],[4484,8285]]]]}},{"type":"Feature","id":"GL","properties":{"hc-group":"admin0","hc-middle-x":0.55,"hc-middle-y":0.43,"hc-key":"gl","hc-a2":"GL","name":"Greenland","labelrank":"3","country-abbrev":"Grlnd.","subregion":"Northern America","region-wb":"Europe & Central Asia","iso-a3":"GRL","iso-a2":"GL","woe-id":"23424828","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2633,8910],[2635,8908],[2628,8905],[2624,8909],[2633,8910]]],[[[2656,8923],[2628,8916],[2630,8920],[2642,8923],[2656,8923]]],[[[2582,9011],[2574,9011],[2571,9017],[2578,9015],[2582,9011]]],[[[2616,9047],[2602,9051],[2613,9062],[2620,9051],[2616,9047]]],[[[2570,9117],[2557,9108],[2553,9113],[2571,9121],[2570,9117]]],[[[2552,9143],[2545,9137],[2535,9139],[2543,9143],[2552,9143]]],[[[2572,9145],[2556,9131],[2554,9142],[2564,9145],[2572,9145]]],[[[2544,9188],[2558,9180],[2554,9179],[2539,9188],[2544,9188]]],[[[2534,9206],[2543,9205],[2524,9203],[2524,9209],[2534,9206]]],[[[2528,9242],[2510,9242],[2496,9242],[2521,9246],[2528,9242]]],[[[2139,9366],[2126,9367],[2127,9369],[2140,9370],[2139,9366]]],[[[2061,9422],[2086,9417],[2076,9414],[2052,9419],[2061,9422]]],[[[2100,9424],[2119,9418],[2095,9418],[2088,9423],[2100,9424]]],[[[3690,9588],[3655,9569],[3628,9580],[3678,9596],[3690,9588]]],[[[2218,9636],[2228,9632],[2222,9631],[2218,9632],[2218,9636]]],[[[2683,9729],[2658,9730],[2626,9738],[2637,9753],[2683,9729]]],[[[2610,8952],[2619,8961],[2572,8975],[2577,9002],[2623,9002],[2661,8980],[2657,8963],[2610,8952]]],[[[2631,8765],[2626,8765],[2626,8768],[2627,8768],[2624,8771],[2612,8811],[2652,8832],[2603,8840],[2627,8897],[2686,8916],[2696,8975],[2677,8989],[2606,9011],[2584,9029],[2647,9028],[2701,9008],[2677,9040],[2647,9058],[2641,9054],[2628,9056],[2632,9066],[2636,9065],[2631,9068],[2667,9078],[2637,9080],[2624,9074],[2617,9080],[2629,9081],[2633,9081],[2599,9084],[2603,9068],[2563,9065],[2545,9082],[2553,9091],[2548,9094],[2555,9096],[2557,9095],[2575,9114],[2584,9146],[2568,9153],[2570,9153],[2556,9159],[2555,9158],[2552,9159],[2564,9178],[2541,9192],[2552,9207],[2530,9217],[2538,9235],[2510,9267],[2478,9276],[2463,9295],[2469,9316],[2398,9342],[2320,9355],[2304,9341],[2239,9349],[2231,9329],[2173,9337],[2137,9356],[2186,9374],[2115,9382],[2087,9394],[2100,9406],[2175,9418],[2222,9417],[2237,9433],[2150,9423],[2141,9438],[2088,9443],[2041,9468],[2050,9491],[2146,9510],[2185,9528],[2246,9530],[2279,9557],[2274,9591],[2214,9594],[2202,9613],[2271,9643],[2281,9658],[2335,9675],[2378,9663],[2400,9695],[2380,9712],[2465,9738],[2588,9757],[2615,9738],[2608,9698],[2633,9733],[2679,9723],[2736,9726],[2703,9741],[2687,9767],[2750,9763],[2839,9733],[2864,9715],[2891,9719],[2870,9733],[2876,9737],[2813,9756],[2770,9788],[2788,9777],[2829,9779],[2885,9759],[2877,9738],[2906,9760],[2846,9787],[2988,9787],[2850,9794],[2814,9801],[2838,9810],[2865,9802],[2879,9816],[2954,9821],[3022,9818],[3052,9816],[3056,9835],[3114,9844],[3240,9851],[3294,9849],[3443,9826],[3430,9819],[3292,9814],[3167,9796],[3259,9803],[3311,9813],[3391,9808],[3456,9816],[3478,9796],[3532,9789],[3571,9776],[3538,9755],[3318,9740],[3231,9719],[3264,9718],[3380,9734],[3473,9729],[3471,9714],[3423,9702],[3421,9689],[3499,9712],[3516,9732],[3569,9736],[3573,9695],[3518,9653],[3552,9660],[3651,9717],[3698,9699],[3735,9718],[3791,9716],[3847,9704],[3866,9691],[3808,9660],[3772,9658],[3780,9644],[3746,9634],[3698,9635],[3735,9618],[3716,9605],[3647,9598],[3600,9582],[3634,9570],[3623,9548],[3641,9533],[3613,9524],[3628,9503],[3597,9514],[3572,9475],[3569,9450],[3634,9453],[3630,9441],[3674,9435],[3630,9427],[3586,9435],[3597,9418],[3660,9407],[3648,9365],[3653,9329],[3637,9361],[3647,9379],[3595,9391],[3559,9373],[3560,9348],[3612,9348],[3630,9296],[3689,9274],[3657,9271],[3629,9229],[3573,9218],[3594,9181],[3565,9184],[3542,9170],[3492,9190],[3428,9169],[3444,9165],[3441,9166],[3478,9180],[3514,9160],[3554,9151],[3554,9138],[3524,9143],[3553,9127],[3532,9126],[3545,9106],[3481,9133],[3477,9146],[3501,9146],[3476,9150],[3457,9159],[3441,9150],[3476,9123],[3536,9094],[3520,9084],[3557,9059],[3567,9020],[3511,9014],[3484,9049],[3437,9076],[3445,9055],[3375,9038],[3366,9011],[3394,9014],[3371,9014],[3383,9030],[3452,9049],[3453,9026],[3427,9015],[3407,9015],[3376,8996],[3394,8990],[3453,9013],[3505,8997],[3540,8997],[3514,8972],[3489,8966],[3424,8922],[3372,8915],[3332,8897],[3254,8889],[3215,8864],[3216,8851],[3176,8805],[3124,8778],[3080,8766],[3076,8798],[3061,8771],[3013,8760],[3032,8753],[3009,8738],[2992,8708],[3002,8677],[2953,8623],[2939,8546],[2915,8528],[2921,8504],[2888,8501],[2857,8515],[2855,8534],[2781,8544],[2749,8569],[2741,8603],[2711,8619],[2716,8640],[2679,8665],[2683,8709],[2658,8696],[2660,8737],[2631,8765]]]]}},{"type":"Feature","id":"GU","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.44,"hc-key":"gu","hc-a2":"GU","name":"Guam","labelrank":"6","country-abbrev":"Guam","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"GUM","iso-a2":"GU","woe-id":"23424832","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[8501,6877],[8498,6871],[8496,6877],[8503,6884],[8501,6877]]]}},{"type":"Feature","id":"MP","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.49,"hc-key":"mp","hc-a2":"MP","name":"Northern Mariana Islands","labelrank":"6","country-abbrev":"N.M.I.","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"MNP","iso-a2":"MP","woe-id":"23424788","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[8526,6925],[8528,6930],[8531,6932],[8529,6927],[8526,6925]]]}},{"type":"Feature","id":"PR","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.65,"hc-key":"pr","hc-a2":"PR","name":"Puerto Rico","labelrank":"5","country-abbrev":"P.R.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"PRI","iso-a2":"PR","woe-id":"23424935","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2267,7024],[2239,7013],[2212,7014],[2213,7031],[2267,7024]]]}},{"type":"Feature","id":"VI","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.19,"hc-key":"vi","hc-a2":"VI","name":"United States Virgin Islands","labelrank":"6","country-abbrev":"V.I. (U.S.)","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"VIR","iso-a2":"VI","woe-id":"23424985","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2283,7008],[2288,7008],[2278,7005],[2279,7008],[2283,7008]]]}},{"type":"Feature","id":"CA","properties":{"hc-group":"admin0","hc-middle-x":0.29,"hc-middle-y":0.64,"hc-key":"ca","hc-a2":"CA","name":"Canada","labelrank":"2","country-abbrev":"Can.","subregion":"Northern America","region-wb":"North America","iso-a3":"CAN","iso-a2":"CA","woe-id":"23424775","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1713,9425],[1665,9428],[1680,9462],[1643,9470],[1608,9466],[1608,9487],[1634,9510],[1674,9517],[1735,9510],[1777,9514],[1703,9520],[1681,9564],[1638,9573],[1639,9612],[1717,9607],[1765,9581],[1781,9562],[1787,9587],[1735,9612],[1889,9631],[1831,9632],[1931,9652],[1841,9647],[1743,9627],[1715,9642],[1699,9625],[1630,9631],[1649,9658],[1614,9633],[1551,9650],[1631,9659],[1637,9668],[1538,9660],[1523,9671],[1581,9700],[1519,9685],[1545,9704],[1475,9704],[1503,9719],[1590,9738],[1689,9729],[1630,9740],[1671,9751],[1659,9764],[1742,9752],[1829,9728],[1749,9758],[1768,9779],[1812,9771],[1783,9788],[1833,9786],[1825,9799],[1915,9793],[1945,9807],[2002,9803],[2013,9793],[2038,9809],[2136,9812],[2138,9803],[2235,9795],[2168,9776],[2203,9778],[2284,9797],[2337,9767],[2377,9766],[2384,9744],[2294,9710],[2264,9713],[2226,9694],[2125,9670],[2289,9698],[2178,9642],[2107,9600],[2083,9572],[2026,9575],[2032,9559],[1951,9546],[1907,9553],[1909,9541],[1994,9538],[1993,9525],[1945,9531],[1892,9527],[1955,9522],[1989,9509],[1984,9496],[1934,9493],[1975,9482],[1961,9465],[1901,9446],[1881,9418],[1807,9415],[1859,9401],[1848,9390],[1892,9392],[1896,9373],[1852,9352],[1863,9324],[1837,9325],[1849,9351],[1798,9340],[1807,9358],[1714,9361],[1699,9351],[1610,9360],[1531,9362],[1516,9376],[1584,9403],[1602,9416],[1587,9445],[1616,9451],[1653,9439],[1658,9421],[1713,9425]],[[1713,9425],[1714,9425],[1714,9425],[1714,9425],[1714,9425],[1714,9425],[1729,9427],[1747,9459],[1714,9425],[1714,9425],[1714,9425],[1714,9425],[1713,9425]]],[[[1858,7836],[1858,7833],[1862,7830],[1790,7820],[1752,7798],[1739,7807],[1758,7809],[1751,7816],[1755,7820],[1758,7833],[1778,7845],[1791,7914],[1827,7886],[1838,7897],[1808,7939],[1708,7954],[1708,7961],[1697,7959],[1686,8013],[1656,8016],[1639,8046],[1591,8054],[1546,8016],[1491,8018],[1455,8037],[1379,8054],[561,8054],[555,8058],[553,8054],[551,8054],[545,8069],[502,8091],[506,8102],[499,8104],[501,8103],[504,8100],[499,8097],[497,8104],[488,8106],[489,8108],[486,8110],[485,8107],[476,8108],[474,8109],[464,8111],[472,8108],[471,8108],[468,8109],[472,8107],[474,8108],[480,8106],[485,8099],[485,8098],[490,8093],[490,8093],[508,8069],[539,8044],[537,8052],[544,8047],[553,8046],[540,8044],[545,8040],[537,8028],[504,8038],[448,8070],[445,8079],[446,8079],[443,8087],[443,8087],[442,8091],[411,8096],[393,8123],[409,8127],[448,8116],[450,8117],[447,8118],[456,8118],[459,8122],[456,8125],[447,8118],[412,8138],[406,8174],[401,8161],[398,8166],[401,8173],[406,8174],[406,8175],[407,8175],[409,8178],[406,8178],[405,8179],[408,8179],[407,8183],[405,8181],[402,8201],[387,8216],[379,8197],[370,8211],[371,8215],[366,8216],[366,8220],[371,8223],[371,8217],[373,8223],[384,8218],[380,8222],[387,8253],[374,8237],[381,8240],[379,8235],[373,8232],[372,8234],[366,8227],[332,8264],[346,8293],[346,8304],[346,8330],[292,8359],[245,8436],[199,8475],[183,8497],[158,8488],[126,8458],[120,8473],[74,8510],[20,8520],[19,8972],[75,8965],[132,8936],[172,8933],[173,8954],[234,8964],[250,8959],[335,9000],[361,8992],[287,8966],[261,8941],[310,8969],[318,8952],[336,8974],[431,9004],[446,8976],[481,8955],[509,8996],[512,8957],[549,8964],[555,8982],[600,8978],[635,8959],[701,8939],[762,8928],[763,8938],[815,8916],[820,8899],[792,8901],[776,8883],[825,8871],[894,8872],[929,8885],[965,8875],[975,8854],[999,8850],[1012,8813],[1023,8842],[999,8872],[1069,8919],[1010,8895],[975,8901],[991,8919],[1064,8932],[1078,8905],[1103,8888],[1137,8887],[1191,8870],[1215,8879],[1285,8876],[1309,8866],[1275,8905],[1318,8911],[1331,8888],[1358,8902],[1341,8860],[1375,8831],[1371,8890],[1389,8888],[1427,8930],[1396,8925],[1405,8962],[1349,8984],[1339,9009],[1342,9061],[1378,9097],[1396,9099],[1380,9098],[1381,9125],[1363,9145],[1363,9192],[1377,9214],[1424,9223],[1466,9213],[1527,9207],[1478,9147],[1462,9139],[1410,9143],[1430,9125],[1411,9101],[1398,9100],[1438,9070],[1443,9037],[1487,8999],[1448,8975],[1480,8964],[1520,8932],[1525,8899],[1543,8940],[1565,8950],[1594,8924],[1580,8901],[1607,8842],[1655,8889],[1662,8924],[1690,8940],[1667,8953],[1666,8979],[1701,8983],[1715,8980],[1715,8982],[1725,8979],[1723,8978],[1752,8972],[1790,8948],[1776,8934],[1792,8919],[1751,8910],[1793,8859],[1785,8836],[1730,8804],[1700,8835],[1720,8796],[1674,8800],[1668,8815],[1628,8808],[1656,8794],[1611,8754],[1595,8754],[1542,8784],[1562,8753],[1621,8749],[1593,8699],[1561,8687],[1534,8698],[1528,8674],[1504,8670],[1505,8669],[1514,8666],[1512,8664],[1511,8666],[1505,8669],[1514,8645],[1453,8618],[1404,8545],[1390,8504],[1401,8450],[1439,8451],[1460,8395],[1454,8374],[1503,8387],[1566,8370],[1605,8336],[1693,8303],[1761,8295],[1767,8244],[1762,8210],[1837,8137],[1874,8185],[1860,8212],[1855,8257],[1837,8278],[1896,8304],[1928,8336],[1934,8367],[1917,8417],[1872,8446],[1910,8497],[1884,8545],[1903,8573],[1885,8610],[1905,8624],[1985,8603],[2018,8619],[2077,8581],[2073,8567],[2145,8542],[2132,8530],[2143,8458],[2163,8459],[2196,8424],[2251,8456],[2259,8494],[2279,8522],[2293,8517],[2299,8495],[2302,8500],[2305,8496],[2301,8493],[2299,8495],[2303,8480],[2323,8475],[2336,8445],[2383,8381],[2366,8360],[2429,8297],[2504,8272],[2482,8261],[2509,8241],[2548,8229],[2554,8180],[2513,8148],[2465,8139],[2429,8106],[2372,8097],[2354,8104],[2232,8103],[2205,8067],[2155,8046],[2129,8008],[2086,7969],[2038,7949],[1987,7905],[1970,7900],[1955,7886],[1860,7863],[1837,7844],[1858,7842],[1858,7838],[1858,7836]],[[456,8113],[455,8114],[454,8114],[456,8113]],[[544,8070],[543,8075],[540,8074],[540,8071],[544,8070]],[[424,8181],[428,8188],[413,8181],[409,8169],[424,8181]],[[1315,8873],[1309,8871],[1310,8867],[1315,8870],[1315,8873]],[[466,8061],[471,8060],[471,8063],[469,8063],[466,8061]],[[463,8065],[462,8069],[458,8069],[458,8065],[463,8065]]],[[[2286,8678],[2286,8639],[2268,8632],[2229,8643],[2201,8663],[2198,8647],[2247,8606],[2237,8590],[2170,8608],[2139,8627],[2076,8651],[2080,8670],[2048,8683],[2024,8719],[1988,8708],[1954,8719],[1928,8699],[1894,8707],[1885,8735],[1906,8760],[1956,8748],[2002,8763],[2024,8760],[1994,8794],[2039,8823],[2062,8850],[2038,8899],[2013,8904],[1964,8939],[1930,8922],[1930,8939],[1961,8950],[1899,8982],[1899,9001],[1861,9008],[1866,8984],[1778,8998],[1766,8979],[1644,8997],[1572,9016],[1546,9050],[1612,9042],[1590,9056],[1539,9063],[1530,9095],[1546,9144],[1564,9172],[1599,9197],[1631,9204],[1678,9202],[1631,9145],[1640,9100],[1686,9060],[1667,9114],[1696,9106],[1661,9135],[1676,9169],[1746,9198],[1785,9197],[1822,9141],[1805,9098],[1835,9128],[1862,9100],[1876,9132],[1901,9142],[1972,9127],[1970,9106],[2001,9104],[2000,9085],[2036,9059],[2053,9080],[2094,9059],[2066,9049],[2064,9043],[2072,9048],[2082,9041],[2103,9051],[2091,9022],[2129,9038],[2175,9022],[2212,8976],[2191,8974],[2194,8971],[2188,8967],[2194,8966],[2201,8970],[2207,8967],[2198,8965],[2209,8962],[2222,8945],[2194,8940],[2183,8927],[2180,8928],[2174,8928],[2182,8926],[2175,8917],[2219,8908],[2228,8897],[2231,8899],[2238,8899],[2237,8895],[2228,8896],[2237,8885],[2276,8889],[2307,8851],[2310,8851],[2317,8853],[2324,8851],[2323,8851],[2334,8850],[2324,8830],[2364,8838],[2380,8805],[2348,8798],[2346,8770],[2315,8760],[2319,8733],[2288,8742],[2220,8813],[2190,8809],[2212,8787],[2187,8765],[2258,8726],[2254,8713],[2286,8689],[2286,8685],[2286,8685],[2287,8680],[2292,8674],[2286,8678]],[[2063,9038],[2061,9032],[2070,9036],[2065,9034],[2063,9038]],[[2187,8974],[2164,8972],[2177,8969],[2187,8974]]],[[[2096,7974],[2093,7974],[2100,7980],[2101,7977],[2096,7974]]],[[[533,8059],[538,8053],[544,8051],[538,8052],[533,8059]]],[[[2301,8091],[2368,8068],[2357,8057],[2317,8069],[2301,8091]]],[[[495,8094],[493,8097],[495,8100],[498,8096],[495,8094]]],[[[409,8150],[403,8151],[401,8156],[405,8160],[409,8150]]],[[[1857,8175],[1850,8170],[1841,8168],[1841,8172],[1857,8175]]],[[[316,8175],[314,8174],[313,8171],[313,8177],[316,8175]]],[[[399,8172],[397,8175],[398,8179],[401,8179],[399,8172]]],[[[397,8181],[396,8177],[390,8177],[392,8181],[397,8181]]],[[[385,8190],[387,8184],[385,8182],[383,8189],[385,8190]]],[[[390,8195],[391,8191],[390,8189],[384,8195],[390,8195]]],[[[297,8200],[302,8200],[303,8197],[299,8195],[297,8200]]],[[[394,8186],[392,8196],[394,8203],[397,8191],[394,8186]]],[[[366,8203],[377,8196],[378,8191],[372,8194],[366,8203]]],[[[398,8196],[397,8198],[396,8202],[400,8203],[398,8196]]],[[[359,8213],[360,8209],[357,8209],[354,8216],[359,8213]]],[[[363,8217],[367,8211],[364,8211],[361,8219],[363,8217]]],[[[1788,8220],[1797,8219],[1809,8199],[1769,8212],[1788,8220]]],[[[1834,8218],[1836,8216],[1832,8215],[1833,8218],[1834,8218]]],[[[378,8225],[372,8224],[371,8226],[376,8233],[378,8225]]],[[[329,8230],[331,8237],[350,8227],[348,8218],[329,8230]]],[[[343,8235],[336,8236],[334,8239],[340,8242],[343,8235]]],[[[353,8238],[366,8226],[359,8220],[337,8245],[353,8238]]],[[[327,8256],[336,8254],[339,8250],[328,8243],[327,8256]]],[[[314,8276],[324,8276],[326,8266],[318,8270],[314,8276]]],[[[1852,8288],[1842,8285],[1840,8286],[1859,8290],[1852,8288]]],[[[333,8283],[332,8285],[341,8294],[338,8286],[333,8283]]],[[[1861,8337],[1867,8352],[1869,8353],[1869,8342],[1861,8337]]],[[[1843,8360],[1842,8352],[1831,8342],[1841,8352],[1843,8360]]],[[[1834,8370],[1832,8369],[1834,8374],[1838,8369],[1834,8370]]],[[[2200,8432],[2196,8433],[2197,8436],[2199,8437],[2200,8432]]],[[[2155,8463],[2146,8461],[2146,8468],[2153,8468],[2155,8463]]],[[[1818,8492],[1823,8494],[1825,8492],[1822,8490],[1818,8492]]],[[[1830,8501],[1833,8500],[1829,8496],[1825,8495],[1830,8501]]],[[[2284,8532],[2292,8519],[2283,8523],[2280,8528],[2284,8532]]],[[[2184,8533],[2191,8527],[2187,8519],[2174,8520],[2184,8533]]],[[[1883,8544],[1879,8541],[1869,8538],[1871,8541],[1883,8544]]],[[[2281,8579],[2279,8566],[2261,8578],[2274,8583],[2281,8579]]],[[[2252,8589],[2255,8585],[2247,8587],[2252,8591],[2252,8589]]],[[[1449,8594],[1442,8589],[1438,8593],[1443,8593],[1449,8594]]],[[[2273,8593],[2280,8586],[2271,8587],[2267,8591],[2273,8593]]],[[[1847,8614],[1850,8596],[1837,8578],[1824,8603],[1847,8614]]],[[[1463,8614],[1464,8616],[1470,8615],[1467,8613],[1463,8614]]],[[[2284,8621],[2293,8621],[2287,8613],[2277,8616],[2284,8621]]],[[[1894,8622],[1887,8624],[1901,8624],[1897,8621],[1894,8622]]],[[[2278,8622],[2272,8621],[2274,8624],[2278,8624],[2278,8622]]],[[[1995,8630],[2007,8628],[2009,8625],[1997,8626],[1995,8630]]],[[[2103,8635],[2121,8624],[2105,8622],[2090,8637],[2103,8635]]],[[[1767,8641],[1772,8629],[1737,8605],[1714,8619],[1732,8640],[1767,8641]]],[[[2222,8640],[2222,8639],[2213,8647],[2218,8646],[2222,8640]]],[[[1877,8666],[1899,8663],[1902,8651],[1891,8647],[1877,8666]]],[[[2300,8671],[2296,8665],[2297,8658],[2290,8672],[2300,8671]]],[[[1914,8674],[1932,8665],[1919,8662],[1906,8671],[1914,8674]]],[[[2297,8678],[2295,8679],[2295,8682],[2300,8681],[2297,8678]]],[[[1903,8691],[1897,8687],[1890,8688],[1891,8690],[1903,8691]]],[[[2277,8700],[2275,8699],[2274,8705],[2278,8702],[2277,8700]]],[[[2022,8713],[2021,8705],[2018,8705],[2017,8715],[2022,8713]]],[[[2266,8724],[2269,8720],[2255,8714],[2261,8722],[2266,8724]]],[[[2351,8774],[2357,8774],[2360,8769],[2350,8770],[2351,8774]]],[[[1732,8779],[1726,8777],[1725,8780],[1730,8780],[1732,8779]]],[[[1679,8789],[1689,8780],[1691,8765],[1678,8775],[1679,8789]]],[[[1701,8792],[1719,8784],[1729,8768],[1707,8775],[1701,8792]]],[[[1737,8802],[1744,8800],[1741,8796],[1732,8800],[1737,8802]]],[[[2352,8845],[2353,8844],[2340,8837],[2345,8845],[2352,8845]]],[[[1017,8840],[1013,8840],[1010,8844],[1011,8846],[1017,8840]]],[[[1002,8856],[1000,8852],[995,8857],[1002,8860],[1002,8856]]],[[[987,8864],[990,8864],[988,8859],[984,8863],[987,8864]]],[[[2311,8862],[2304,8863],[2306,8869],[2311,8864],[2311,8862]]],[[[1001,8864],[995,8864],[996,8870],[999,8869],[1001,8864]]],[[[843,8882],[837,8883],[852,8884],[852,8882],[843,8882]]],[[[997,8881],[992,8881],[993,8884],[996,8885],[997,8881]]],[[[964,8886],[973,8884],[971,8880],[965,8883],[964,8886]]],[[[959,8889],[960,8886],[955,8889],[955,8892],[959,8889]]],[[[944,8895],[952,8898],[942,8891],[932,8889],[944,8895]]],[[[2000,8891],[2025,8885],[2025,8875],[1996,8875],[2000,8891]]],[[[1641,8883],[1634,8873],[1624,8883],[1631,8902],[1641,8883]]],[[[890,8898],[887,8898],[889,8902],[894,8903],[890,8898]]],[[[1961,8903],[1974,8899],[1976,8864],[1952,8849],[1919,8848],[1909,8872],[1928,8900],[1961,8903]]],[[[1859,8896],[1854,8898],[1855,8904],[1865,8901],[1859,8896]]],[[[1767,8905],[1771,8904],[1768,8902],[1763,8905],[1767,8905]]],[[[2003,8899],[1996,8909],[2001,8909],[2005,8904],[2003,8899]]],[[[917,8916],[917,8914],[919,8912],[907,8911],[917,8916]]],[[[1102,8907],[1086,8915],[1097,8916],[1104,8913],[1102,8907]]],[[[1872,8919],[1870,8911],[1860,8911],[1869,8917],[1872,8919]]],[[[1993,8916],[1985,8915],[1981,8919],[1984,8921],[1993,8916]]],[[[1981,8915],[1984,8904],[1966,8913],[1971,8924],[1981,8915]]],[[[1184,8927],[1182,8916],[1167,8922],[1176,8929],[1184,8927]]],[[[1232,8934],[1224,8924],[1218,8926],[1218,8938],[1232,8934]]],[[[1236,8935],[1230,8938],[1232,8946],[1235,8943],[1236,8935]]],[[[166,8945],[168,8943],[161,8944],[162,8948],[166,8945]]],[[[1187,8943],[1188,8950],[1191,8949],[1190,8944],[1187,8943]]],[[[1516,8957],[1520,8950],[1516,8949],[1513,8957],[1516,8957]]],[[[1876,8959],[1876,8950],[1864,8933],[1847,8934],[1876,8959]]],[[[181,8968],[186,8972],[180,8962],[173,8964],[181,8968]]],[[[1779,8961],[1785,8959],[1786,8956],[1774,8960],[1779,8961]]],[[[1528,8959],[1523,8951],[1518,8955],[1523,8961],[1528,8959]]],[[[1918,8960],[1929,8958],[1914,8944],[1907,8952],[1918,8960]]],[[[1199,8967],[1208,8963],[1201,8958],[1198,8962],[1199,8967]]],[[[1336,8968],[1351,8968],[1351,8957],[1339,8963],[1336,8968]]],[[[1365,8970],[1373,8966],[1364,8955],[1363,8967],[1365,8970]]],[[[83,8969],[76,8966],[71,8969],[76,8972],[83,8969]]],[[[1890,8974],[1874,8964],[1864,8965],[1881,8977],[1890,8974]]],[[[1840,8981],[1844,8971],[1807,8973],[1823,8980],[1840,8981]]],[[[1756,8978],[1754,8977],[1746,8979],[1751,8982],[1756,8978]]],[[[1479,8982],[1481,8985],[1489,8981],[1487,8976],[1479,8982]]],[[[1315,8986],[1312,8986],[1311,8988],[1315,8988],[1315,8986]]],[[[1622,8997],[1634,8997],[1629,8989],[1611,8996],[1622,8997]]],[[[890,9007],[877,9007],[872,9011],[884,9008],[890,9007]]],[[[748,9020],[758,9020],[744,9016],[738,9020],[748,9020]]],[[[735,9020],[725,9020],[723,9021],[725,9023],[735,9020]]],[[[403,9024],[398,9023],[395,9020],[398,9026],[403,9024]]],[[[1216,9028],[1222,9027],[1230,9016],[1217,9020],[1216,9028]]],[[[2033,9068],[2043,9069],[2038,9062],[2030,9064],[2033,9068]]],[[[2046,9075],[2038,9075],[2040,9080],[2045,9081],[2046,9075]]],[[[1100,9174],[1080,9147],[1043,9179],[1041,9196],[1083,9199],[1100,9174]]],[[[1106,9352],[1117,9374],[1155,9352],[1166,9333],[1127,9326],[1106,9352]]],[[[1524,9434],[1544,9415],[1530,9407],[1498,9420],[1524,9434]]],[[[1088,9420],[1104,9404],[1081,9404],[1056,9441],[1088,9420]]],[[[1664,8007],[1660,8006],[1654,8006],[1656,8009],[1664,8007]]],[[[1600,8048],[1604,8045],[1593,8045],[1594,8049],[1600,8048]]],[[[1763,7943],[1772,7941],[1776,7924],[1734,7937],[1763,7943]]],[[[1732,7940],[1731,7937],[1726,7938],[1728,7941],[1732,7940]]],[[[1710,7953],[1718,7950],[1713,7944],[1709,7949],[1710,7953]]],[[[1938,7875],[1934,7873],[1936,7876],[1943,7877],[1938,7875]]],[[[1366,9443],[1437,9441],[1429,9423],[1355,9424],[1366,9443]]],[[[2430,7942],[2394,7922],[2378,7943],[2406,7980],[2411,7952],[2430,7942]]],[[[2364,7988],[2365,7958],[2348,7940],[2327,7957],[2361,7959],[2364,7988]]],[[[277,8210],[270,8217],[293,8221],[295,8199],[277,8210]]],[[[257,8259],[297,8258],[287,8221],[261,8230],[257,8259]]],[[[1844,8337],[1829,8330],[1851,8362],[1858,8352],[1844,8337]]],[[[1395,9317],[1429,9288],[1426,9252],[1382,9254],[1337,9272],[1349,9299],[1395,9317]]],[[[957,9478],[905,9483],[849,9475],[844,9483],[927,9507],[955,9496],[957,9478]]],[[[1358,9489],[1390,9481],[1388,9465],[1330,9444],[1302,9460],[1284,9490],[1291,9511],[1350,9498],[1358,9489]]],[[[2210,7911],[2202,7914],[2203,7927],[2195,7929],[2192,7933],[2192,7982],[2149,7996],[2126,7968],[2118,7937],[2082,7905],[1987,7905],[2022,7920],[2033,7943],[2111,7979],[2155,8025],[2239,8062],[2276,8063],[2298,8050],[2295,8032],[2262,8016],[2230,8020],[2256,8004],[2290,8010],[2271,7986],[2302,7943],[2350,7927],[2367,7937],[2394,7917],[2333,7893],[2308,7894],[2257,7848],[2239,7871],[2245,7889],[2279,7910],[2289,7938],[2249,7913],[2210,7911]]],[[[2018,7927],[2024,7931],[2021,7924],[2020,7921],[2009,7921],[2015,7925],[2012,7925],[2016,7930],[2021,7930],[2018,7927]]],[[[518,8075],[504,8083],[514,8081],[518,8075],[518,8075],[518,8075]]],[[[629,9322],[617,9345],[604,9327],[571,9328],[559,9347],[597,9359],[678,9417],[749,9430],[780,9414],[754,9406],[765,9375],[730,9364],[718,9338],[684,9302],[660,9308],[712,9340],[710,9380],[687,9377],[670,9338],[629,9322]]],[[[2606,8006],[2634,8020],[2643,7998],[2633,7971],[2596,7976],[2607,7995],[2574,7990],[2550,7973],[2552,8004],[2449,8000],[2441,8012],[2462,8038],[2521,8144],[2553,8130],[2521,8094],[2558,8090],[2552,8069],[2599,8083],[2618,8064],[2604,8038],[2629,8033],[2606,8006]]],[[[1663,8674],[1617,8670],[1645,8694],[1639,8718],[1654,8775],[1667,8783],[1687,8748],[1694,8761],[1761,8726],[1784,8700],[1824,8681],[1800,8664],[1725,8695],[1722,8679],[1673,8648],[1663,8674]]],[[[1295,8985],[1330,8964],[1360,8932],[1379,8931],[1340,8910],[1312,8914],[1248,8940],[1284,8957],[1295,8985]]],[[[1118,9032],[1191,8997],[1210,8979],[1165,8981],[1152,8958],[1175,8964],[1181,8940],[1135,8927],[1046,8948],[1043,8964],[1019,8939],[971,8925],[843,8910],[830,8948],[762,8954],[719,8990],[733,8998],[815,9008],[894,9005],[875,9018],[821,9029],[760,9020],[715,9023],[691,9046],[758,9065],[767,9075],[697,9065],[700,9081],[671,9079],[670,9095],[698,9112],[685,9123],[721,9151],[804,9178],[822,9164],[829,9134],[850,9157],[903,9140],[890,9116],[922,9133],[946,9128],[919,9156],[937,9155],[980,9131],[1007,9079],[1021,9094],[1006,9107],[996,9142],[999,9187],[1024,9167],[1044,9168],[1077,9144],[1079,9125],[1107,9076],[1100,9049],[1118,9032]]],[[[1885,9194],[1941,9161],[1939,9145],[1830,9148],[1807,9172],[1804,9199],[1885,9194]]],[[[1340,9095],[1291,9080],[1274,9059],[1217,9110],[1182,9118],[1155,9145],[1179,9161],[1198,9140],[1223,9141],[1230,9163],[1188,9184],[1204,9198],[1291,9219],[1302,9241],[1296,9210],[1318,9205],[1321,9178],[1285,9158],[1318,9154],[1331,9167],[1346,9123],[1340,9095]]],[[[596,9246],[638,9229],[700,9230],[736,9218],[782,9183],[668,9135],[638,9108],[624,9071],[551,9049],[522,9083],[467,9098],[499,9159],[531,9200],[502,9234],[596,9246]]],[[[1227,9273],[1215,9298],[1242,9311],[1158,9302],[1138,9317],[1171,9332],[1183,9360],[1242,9329],[1202,9368],[1208,9378],[1306,9362],[1313,9300],[1295,9274],[1227,9273]]],[[[938,9326],[960,9339],[928,9351],[976,9386],[984,9335],[1027,9326],[1040,9336],[1073,9326],[1073,9306],[1130,9283],[1100,9275],[1068,9293],[1058,9276],[987,9267],[975,9276],[890,9242],[830,9239],[808,9254],[857,9271],[887,9271],[912,9287],[822,9276],[820,9294],[792,9270],[717,9284],[764,9354],[794,9364],[795,9380],[808,9377],[822,9344],[851,9349],[896,9323],[902,9303],[972,9302],[974,9314],[938,9326]]],[[[1848,9265],[1825,9250],[1777,9240],[1726,9247],[1603,9240],[1567,9252],[1535,9244],[1473,9259],[1459,9285],[1470,9325],[1440,9355],[1412,9348],[1360,9357],[1331,9393],[1362,9399],[1423,9389],[1442,9371],[1490,9375],[1552,9344],[1528,9336],[1587,9303],[1652,9304],[1719,9322],[1797,9319],[1840,9300],[1841,9283],[1817,9274],[1848,9265]]],[[[933,9426],[877,9415],[845,9427],[833,9446],[816,9439],[788,9455],[811,9463],[843,9452],[918,9464],[949,9456],[933,9426]]],[[[1126,9547],[1165,9524],[1187,9528],[1249,9496],[1240,9486],[1266,9450],[1200,9447],[1205,9471],[1154,9471],[1155,9482],[1104,9475],[1087,9490],[1131,9490],[1115,9522],[1071,9525],[1076,9545],[1126,9547]]],[[[1511,9629],[1553,9627],[1562,9603],[1579,9620],[1601,9618],[1623,9584],[1617,9561],[1665,9561],[1684,9542],[1637,9527],[1563,9469],[1474,9471],[1406,9521],[1437,9534],[1477,9534],[1456,9553],[1417,9540],[1362,9550],[1334,9600],[1389,9593],[1338,9609],[1354,9630],[1379,9632],[1370,9645],[1389,9663],[1439,9666],[1403,9677],[1436,9685],[1480,9670],[1511,9629]]],[[[518,8075],[519,8073],[519,8072],[518,8075],[518,8075],[518,8075]]]]}},{"type":"Feature","id":"ST","properties":{"hc-group":"admin0","hc-middle-x":0.55,"hc-middle-y":0.5,"hc-key":"st","hc-a2":"ST","name":"Sao Tome and Principe","labelrank":"6","country-abbrev":"S.T.P.","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"STP","iso-a2":"ST","woe-id":"23424966","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4400,6481],[4396,6485],[4401,6491],[4405,6487],[4400,6481]]]}},{"type":"Feature","id":"CV","properties":{"hc-group":"admin0","hc-middle-x":0.56,"hc-middle-y":0.5,"hc-key":"cv","hc-a2":"CV","name":"Cape Verde","labelrank":"4","country-abbrev":"C.Vd.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"CPV","iso-a2":"CV","woe-id":"23424794","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3499,6934],[3506,6928],[3507,6922],[3499,6925],[3499,6934]]]}},{"type":"Feature","id":"DM","properties":{"hc-group":"admin0","hc-middle-x":0.54,"hc-middle-y":0.47,"hc-key":"dm","hc-a2":"DM","name":"Dominica","labelrank":"6","country-abbrev":"D\'inca","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"DMA","iso-a2":"DM","woe-id":"23424798","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2382,6942],[2386,6936],[2383,6930],[2380,6939],[2382,6942]]]}},{"type":"Feature","id":"NL","properties":{"hc-group":"admin0","hc-middle-x":0.99,"hc-middle-y":0.01,"hc-key":"nl","hc-a2":"NL","name":"Netherlands","labelrank":"5","country-abbrev":"Neth.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"NLD","iso-a2":"NL","woe-id":"-90","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4369,8229],[4359,8225],[4360,8227],[4372,8230],[4369,8229]]],[[[2334,7016],[2331,7016],[2331,7017],[2334,7016]]],[[[4303,8146],[4315,8146],[4329,8146],[4317,8140],[4303,8146]]],[[[4417,8221],[4412,8180],[4393,8164],[4382,8122],[4353,8150],[4330,8146],[4318,8156],[4355,8209],[4396,8234],[4417,8221]]]]}},{"type":"Feature","id":"JM","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.52,"hc-key":"jm","hc-a2":"JM","name":"Jamaica","labelrank":"4","country-abbrev":"Jam.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"JAM","iso-a2":"JM","woe-id":"23424858","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1906,7029],[1943,7013],[1913,7006],[1878,7023],[1906,7029]]]}},{"type":"Feature","id":"WS","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.54,"hc-key":"ws","hc-a2":"WS","name":"Samoa","labelrank":"4","country-abbrev":"Samoa","subregion":"Polynesia","region-wb":"East Asia & Pacific","iso-a3":"WSM","iso-a2":"WS","woe-id":"23424992","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[-909,6078],[-907,6069],[-916,6069],[-924,6078],[-909,6078]]]}},{"type":"Feature","id":"OM","properties":{"hc-group":"admin0","hc-middle-x":0.88,"hc-middle-y":0.44,"hc-key":"om","hc-a2":"OM","name":"Oman","labelrank":"4","country-abbrev":"Oman","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"OMN","iso-a2":"OM","woe-id":"23424898","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5874,7239],[5873,7238],[5873,7241],[5876,7241],[5874,7239]]],[[[5868,7265],[5877,7275],[5874,7251],[5870,7253],[5868,7265]]],[[[5747,7045],[5836,7076],[5855,7137],[5842,7160],[5860,7228],[5877,7231],[5900,7199],[5948,7186],[5979,7145],[5916,7068],[5920,7047],[5885,7033],[5876,7013],[5849,7010],[5837,6985],[5780,6974],[5769,6994],[5747,7045]]]]}},{"type":"Feature","id":"VC","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"vc","hc-a2":"VC","name":"Saint Vincent and the Grenadines","labelrank":"6","country-abbrev":"St.V.G.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"VCT","iso-a2":"VC","woe-id":"23424981","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2388,6865],[2385,6871],[2389,6875],[2390,6870],[2388,6865]]]}},{"type":"Feature","id":"TR","properties":{"hc-group":"admin0","hc-middle-x":0.34,"hc-middle-y":0.49,"hc-key":"tr","hc-a2":"TR","name":"Turkey","labelrank":"2","country-abbrev":"Tur.","subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"TUR","iso-a2":"TR","woe-id":"23424969","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4974,7732],[4969,7730],[4966,7731],[4973,7735],[4974,7732]]],[[[5035,7796],[5068,7769],[5021,7761],[5011,7748],[4977,7752],[4994,7775],[4985,7786],[5007,7799],[5035,7796]]],[[[5534,7714],[5510,7704],[5516,7656],[5532,7628],[5472,7635],[5461,7627],[5457,7634],[5384,7614],[5338,7620],[5291,7617],[5270,7586],[5272,7620],[5252,7608],[5229,7615],[5177,7590],[5154,7607],[5115,7619],[5106,7597],[5085,7593],[5044,7625],[5011,7635],[5012,7657],[4983,7666],[5007,7687],[4989,7700],[4986,7702],[4979,7707],[4997,7740],[5069,7741],[5071,7770],[5131,7764],[5193,7797],[5271,7787],[5318,7762],[5374,7765],[5395,7758],[5436,7779],[5474,7782],[5493,7765],[5500,7730],[5533,7716],[5534,7714]]]]}},{"type":"Feature","id":"BD","properties":{"hc-group":"admin0","hc-middle-x":0.85,"hc-middle-y":0.61,"hc-key":"bd","hc-a2":"BD","name":"Bangladesh","labelrank":"3","country-abbrev":"Bang.","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"BGD","iso-a2":"BD","woe-id":"23424759","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6942,7109],[6918,7163],[6880,7132],[6847,7142],[6832,7189],[6837,7209],[6816,7220],[6843,7237],[6818,7260],[6829,7277],[6870,7262],[6886,7236],[6935,7237],[6949,7229],[6909,7188],[6922,7167],[6939,7192],[6951,7137],[6953,7116],[6942,7109]]]}},{"type":"Feature","id":"LC","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.47,"hc-key":"lc","hc-a2":"LC","name":"Saint Lucia","labelrank":"6","country-abbrev":"S.L.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"LCA","iso-a2":"LC","woe-id":"23424951","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2395,6886],[2391,6890],[2396,6897],[2397,6893],[2395,6886]]]}},{"type":"Feature","id":"NR","properties":{"hc-group":"admin0","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"nr","hc-a2":"NR","name":"Nauru","labelrank":"6","country-abbrev":"Nauru","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"NRU","iso-a2":"NR","woe-id":"23424912","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[9158,6463],[9157,6463],[9157,6464],[9159,6464],[9158,6463]]]}},{"type":"Feature","id":"NO","properties":{"hc-group":"admin0","hc-middle-x":0.1,"hc-middle-y":0.93,"hc-key":"no","hc-a2":"NO","name":"Norway","labelrank":"3","country-abbrev":"Nor.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"NOR","iso-a2":"NO","woe-id":"-90","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4821,8997],[4815,8993],[4809,8996],[4815,9003],[4821,8997]]],[[[4797,8992],[4790,8995],[4784,9004],[4802,8997],[4797,8992]]],[[[4877,9011],[4887,9004],[4870,9006],[4871,9011],[4877,9011]]],[[[4901,9024],[4906,9016],[4890,9006],[4882,9013],[4901,9024]]],[[[4911,9029],[4920,9024],[4909,9019],[4905,9028],[4911,9029]]],[[[4898,9036],[4889,9022],[4861,9017],[4873,9029],[4898,9036]]],[[[4918,9045],[4919,9040],[4914,9042],[4915,9046],[4918,9045]]],[[[4966,9053],[4974,9045],[4962,9041],[4955,9047],[4966,9053]]],[[[4841,9496],[4865,9475],[4829,9471],[4803,9490],[4841,9496]]],[[[4998,9499],[4989,9504],[4994,9510],[5000,9504],[4998,9499]]],[[[5066,9517],[5038,9511],[5030,9512],[5047,9521],[5066,9517]]],[[[4804,9531],[4822,9526],[4810,9523],[4799,9526],[4804,9531]]],[[[4802,9547],[4789,9545],[4786,9549],[4789,9550],[4802,9547]]],[[[5202,9605],[5178,9599],[5142,9595],[5139,9598],[5202,9605]]],[[[4928,9617],[4921,9616],[4921,9620],[4923,9621],[4928,9617]]],[[[4921,9625],[4925,9623],[4923,9622],[4917,9623],[4921,9625]]],[[[4797,9623],[4793,9624],[4796,9627],[4801,9625],[4797,9623]]],[[[4837,9638],[4831,9635],[4828,9638],[4834,9639],[4837,9638]]],[[[4821,9634],[4821,9638],[4813,9643],[4826,9639],[4821,9634]]],[[[4748,8967],[4767,8968],[4802,8988],[4813,8979],[4815,8980],[4817,8980],[4818,8983],[4823,8988],[4820,8990],[4826,8992],[4827,8992],[4845,9007],[4847,9007],[4847,9006],[4849,9005],[4850,9007],[4886,9002],[4934,9033],[4973,9037],[4948,9018],[4950,8995],[4996,9042],[4991,9010],[5022,9050],[5094,9029],[5126,9006],[5099,8995],[5057,9000],[5119,8981],[5093,8957],[5063,8940],[5075,8962],[5032,8995],[4976,8974],[4965,8932],[4942,8915],[4914,8929],[4869,8923],[4847,8952],[4816,8940],[4797,8905],[4743,8914],[4735,8885],[4718,8892],[4683,8857],[4691,8839],[4635,8792],[4635,8753],[4609,8718],[4618,8690],[4580,8688],[4560,8656],[4569,8610],[4565,8584],[4586,8568],[4568,8551],[4575,8512],[4556,8501],[4543,8462],[4515,8473],[4456,8430],[4429,8420],[4398,8424],[4359,8468],[4372,8509],[4342,8554],[4363,8576],[4347,8589],[4369,8612],[4411,8630],[4409,8639],[4464,8659],[4435,8662],[4465,8681],[4504,8658],[4544,8680],[4498,8667],[4487,8679],[4537,8729],[4562,8742],[4566,8761],[4607,8833],[4667,8874],[4643,8878],[4692,8898],[4682,8907],[4716,8924],[4703,8941],[4719,8966],[4748,8967],[4769,8982],[4768,8999],[4781,8983],[4748,8967]],[[5095,8982],[5091,8986],[5086,8978],[5097,8981],[5095,8982]]],[[[4948,9363],[4949,9366],[4963,9376],[4948,9363],[4948,9363],[4948,9363]]],[[[4630,8922],[4662,8932],[4682,8955],[4696,8923],[4668,8902],[4602,8890],[4605,8899],[4657,8910],[4630,8922]]],[[[4893,9411],[4874,9424],[4825,9422],[4847,9452],[4824,9463],[4886,9474],[4905,9449],[4929,9446],[4893,9411]]],[[[4669,9570],[4695,9593],[4764,9552],[4766,9533],[4843,9513],[4768,9488],[4744,9425],[4730,9424],[4703,9367],[4631,9407],[4617,9428],[4702,9450],[4611,9443],[4607,9461],[4650,9465],[4673,9480],[4644,9505],[4641,9483],[4590,9471],[4561,9497],[4565,9471],[4533,9487],[4515,9516],[4540,9521],[4522,9560],[4531,9569],[4564,9568],[4613,9582],[4616,9559],[4636,9577],[4658,9563],[4689,9517],[4669,9570]]],[[[4909,9611],[5000,9602],[5010,9580],[4975,9557],[4918,9535],[4884,9538],[4883,9551],[4822,9548],[4787,9564],[4852,9570],[4854,9578],[4761,9571],[4763,9592],[4732,9599],[4742,9610],[4778,9596],[4809,9619],[4824,9604],[4852,9608],[4868,9590],[4879,9624],[4887,9601],[4909,9611]]],[[[4948,9363],[4946,9359],[4947,9363],[4948,9363],[4948,9363],[4948,9363]]]]}},{"type":"Feature","id":"KN","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.49,"hc-key":"kn","hc-a2":"KN","name":"Saint Kitts and Nevis","labelrank":"6","country-abbrev":"St.K.N.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"KNA","iso-a2":"KN","woe-id":"23424940","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2346,6991],[2339,6996],[2340,6997],[2343,6995],[2346,6991]]]}},{"type":"Feature","id":"BH","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.5,"hc-key":"bh","hc-a2":"BH","name":"Bahrain","labelrank":"4","country-abbrev":"Bahr.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"BHR","iso-a2":"BH","woe-id":"23424753","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5702,7271],[5706,7269],[5705,7256],[5701,7263],[5702,7271]]]}},{"type":"Feature","id":"TO","properties":{"hc-group":"admin0","hc-middle-x":0.54,"hc-middle-y":0.34,"hc-key":"to","hc-a2":"TO","name":"Tonga","labelrank":"4","country-abbrev":"Tongo","subregion":"Polynesia","region-wb":"East Asia & Pacific","iso-a3":"TON","iso-a2":"TO","woe-id":"23424964","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[-987,5842],[-988,5840],[-999,5845],[-992,5847],[-987,5842]]]}},{"type":"Feature","id":"FI","properties":{"hc-group":"admin0","hc-middle-x":0.63,"hc-middle-y":0.54,"hc-key":"fi","hc-a2":"FI","name":"Finland","labelrank":"3","country-abbrev":"Fin.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"FIN","iso-a2":"FI","woe-id":"23424812","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4816,8512],[4815,8507],[4806,8505],[4810,8509],[4816,8512]]],[[[4803,8510],[4806,8512],[4803,8505],[4798,8508],[4803,8510]]],[[[4808,8518],[4799,8510],[4785,8518],[4800,8522],[4808,8518]]],[[[4844,8516],[4844,8514],[4855,8514],[4842,8511],[4844,8516]]],[[[4870,8506],[4870,8515],[4882,8511],[4872,8501],[4870,8506]]],[[[4836,8532],[4837,8528],[4836,8523],[4835,8528],[4836,8532]]],[[[4835,8657],[4838,8652],[4834,8650],[4830,8654],[4835,8657]]],[[[4942,8741],[4935,8736],[4933,8739],[4936,8741],[4942,8741]]],[[[4851,8526],[4845,8528],[4834,8596],[4842,8652],[4868,8658],[4939,8731],[4954,8729],[4955,8762],[4921,8778],[4906,8808],[4916,8826],[4899,8860],[4906,8885],[4816,8940],[4847,8952],[4869,8923],[4914,8929],[4942,8915],[4965,8932],[4976,8974],[5032,8995],[5075,8962],[5063,8940],[5048,8914],[5055,8897],[5095,8871],[5067,8828],[5091,8792],[5082,8737],[5111,8691],[5094,8678],[5141,8638],[5131,8620],[5071,8562],[5029,8531],[4909,8505],[4869,8520],[4871,8521],[4866,8521],[4866,8521],[4854,8525],[4857,8523],[4856,8520],[4851,8524],[4851,8526]]]]}},{"type":"Feature","id":"ID","properties":{"hc-group":"admin0","hc-middle-x":0.38,"hc-middle-y":0.41,"hc-key":"id","hc-a2":"ID","name":"Indonesia","labelrank":"2","country-abbrev":"Indo.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"IDN","iso-a2":"ID","woe-id":"23424846","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8188,6311],[8203,6311],[8186,6274],[8184,6299],[8156,6320],[8188,6311]]],[[[7394,6396],[7365,6387],[7343,6415],[7351,6432],[7368,6393],[7394,6396]]],[[[7693,6231],[7736,6235],[7737,6224],[7676,6209],[7642,6218],[7658,6236],[7693,6231]]],[[[8007,6546],[8003,6517],[8028,6486],[8001,6493],[7995,6439],[7976,6470],[7993,6473],[7985,6514],[8007,6546]]],[[[7885,6203],[7891,6198],[7897,6207],[7902,6208],[7911,6214],[7912,6206],[7915,6198],[7897,6179],[7868,6172],[7885,6203]]],[[[7703,6601],[7696,6596],[7697,6601],[7703,6601]]],[[[8388,6402],[8388,6275],[8388,6210],[8360,6240],[8289,6230],[8299,6253],[8325,6262],[8294,6324],[8238,6346],[8216,6347],[8170,6376],[8148,6358],[8127,6400],[8181,6408],[8142,6411],[8087,6439],[8070,6476],[8099,6455],[8142,6468],[8180,6457],[8185,6415],[8210,6380],[8248,6403],[8246,6430],[8295,6435],[8355,6409],[8388,6402]]],[[[7779,6174],[7734,6196],[7755,6202],[7771,6234],[7833,6224],[7852,6236],[7936,6242],[7886,6226],[7878,6234],[7818,6216],[7763,6218],[7789,6183],[7779,6174]]],[[[7419,6248],[7365,6260],[7335,6278],[7351,6305],[7419,6294],[7427,6279],[7483,6274],[7496,6290],[7530,6275],[7624,6277],[7624,6218],[7565,6234],[7548,6229],[7490,6237],[7450,6251],[7419,6248]]],[[[8007,6388],[7965,6365],[7943,6380],[7942,6408],[7946,6387],[7976,6380],[8002,6393],[8048,6397],[8079,6386],[8086,6365],[8007,6388]]],[[[7849,6311],[7824,6317],[7851,6347],[7809,6341],[7813,6358],[7778,6383],[7775,6316],[7746,6321],[7754,6351],[7730,6401],[7746,6421],[7766,6500],[7792,6519],[7814,6510],[7882,6503],[7917,6531],[7898,6492],[7774,6491],[7765,6473],[7785,6438],[7815,6465],[7866,6460],[7862,6427],[7846,6446],[7811,6422],[7839,6386],[7855,6349],[7849,6311]]],[[[7693,6601],[7687,6576],[7709,6546],[7702,6535],[7736,6509],[7698,6501],[7689,6463],[7663,6436],[7664,6414],[7646,6373],[7606,6356],[7594,6380],[7558,6385],[7522,6375],[7519,6397],[7476,6390],[7466,6446],[7452,6441],[7434,6503],[7458,6540],[7485,6504],[7557,6525],[7602,6521],[7631,6568],[7642,6608],[7693,6601]]],[[[7120,6602],[7164,6572],[7200,6534],[7221,6541],[7283,6486],[7272,6457],[7301,6448],[7311,6409],[7338,6408],[7352,6382],[7345,6312],[7312,6304],[7219,6384],[7196,6415],[7181,6455],[7152,6486],[7124,6478],[7149,6426],[7139,6429],[7121,6478],[7145,6496],[7128,6536],[7092,6539],[7110,6508],[7103,6496],[7087,6540],[7065,6548],[7092,6543],[7100,6563],[7036,6621],[7032,6650],[7065,6633],[7097,6634],[7120,6602]]]]}},{"type":"Feature","id":"MU","properties":{"hc-group":"admin0","hc-middle-x":0.63,"hc-middle-y":0.58,"hc-key":"mu","hc-a2":"MU","name":"Mauritius","labelrank":"5","country-abbrev":"Mus.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"MUS","iso-a2":"MU","woe-id":"23424894","continent":"Seven seas (open ocean)"},"geometry":{"type":"Polygon","coordinates":[[[5917,5878],[5916,5867],[5907,5866],[5911,5880],[5917,5878]]]}},{"type":"Feature","id":"SE","properties":{"hc-group":"admin0","hc-middle-x":0.4,"hc-middle-y":0.48,"hc-key":"se","hc-a2":"SE","name":"Sweden","labelrank":"3","country-abbrev":"Swe.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"SWE","iso-a2":"SE","woe-id":"23424954","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4749,8461],[4749,8461],[4749,8466],[4753,8466],[4749,8461]]],[[[4864,8758],[4864,8764],[4868,8762],[4868,8758],[4864,8758]]],[[[4921,8778],[4853,8764],[4831,8722],[4845,8711],[4821,8684],[4769,8651],[4733,8619],[4712,8569],[4718,8540],[4736,8533],[4770,8495],[4751,8469],[4701,8445],[4691,8414],[4700,8372],[4711,8391],[4741,8387],[4760,8415],[4759,8386],[4710,8386],[4693,8344],[4640,8340],[4625,8309],[4589,8309],[4571,8373],[4546,8417],[4550,8417],[4552,8421],[4545,8421],[4546,8418],[4537,8434],[4543,8462],[4556,8501],[4575,8512],[4568,8551],[4586,8568],[4565,8584],[4569,8610],[4560,8656],[4580,8688],[4618,8690],[4609,8718],[4635,8753],[4635,8792],[4691,8839],[4683,8857],[4718,8892],[4735,8885],[4743,8914],[4797,8905],[4816,8940],[4906,8885],[4899,8860],[4916,8826],[4906,8808],[4921,8778]],[[4554,8430],[4543,8426],[4546,8423],[4554,8424],[4554,8430]]]]}},{"type":"Feature","id":"TT","properties":{"hc-group":"admin0","hc-middle-x":0.46,"hc-middle-y":0.44,"hc-key":"tt","hc-a2":"TT","name":"Trinidad and Tobago","labelrank":"5","country-abbrev":"Tr.T.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"TTO","iso-a2":"TT","woe-id":"23424958","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2396,6799],[2394,6779],[2380,6783],[2374,6796],[2396,6799]]]}},{"type":"Feature","id":"MY","properties":{"hc-group":"admin0","hc-middle-x":0.9,"hc-middle-y":0.26,"hc-key":"my","hc-a2":"MY","name":"Malaysia","labelrank":"3","country-abbrev":"Malay.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"MYS","iso-a2":"MY","woe-id":"23424901","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7181,6640],[7180,6634],[7177,6634],[7177,6640],[7181,6640]]],[[[7703,6601],[7697,6601],[7698,6602],[7693,6601],[7642,6608],[7631,6568],[7602,6521],[7557,6525],[7485,6504],[7458,6540],[7498,6525],[7508,6550],[7510,6549],[7510,6554],[7511,6558],[7558,6572],[7587,6614],[7606,6597],[7616,6623],[7617,6624],[7618,6621],[7627,6606],[7621,6623],[7650,6660],[7685,6675],[7743,6632],[7710,6623],[7722,6607],[7701,6603],[7703,6601]]],[[[7175,6669],[7204,6663],[7205,6645],[7233,6663],[7274,6620],[7274,6565],[7299,6519],[7272,6524],[7210,6563],[7193,6593],[7175,6669]]]]}},{"type":"Feature","id":"PA","properties":{"hc-group":"admin0","hc-middle-x":0.22,"hc-middle-y":0.5,"hc-key":"pa","hc-a2":"PA","name":"Panama","labelrank":"4","country-abbrev":"Pan.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"PAN","iso-a2":"PA","woe-id":"23424924","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1892,6692],[1873,6732],[1843,6744],[1816,6717],[1829,6699],[1776,6692],[1778,6721],[1744,6716],[1739,6725],[1740,6725],[1740,6725],[1740,6726],[1740,6726],[1754,6762],[1768,6743],[1798,6739],[1841,6763],[1876,6757],[1908,6735],[1914,6713],[1892,6692]]]}},{"type":"Feature","id":"PW","properties":{"hc-group":"admin0","hc-middle-x":0.38,"hc-middle-y":0.44,"hc-key":"pw","hc-a2":"PW","name":"Palau","labelrank":"6","country-abbrev":"Palau","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"PLW","iso-a2":"PW","woe-id":"23424927","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[8196,6695],[8195,6699],[8197,6703],[8200,6703],[8196,6695]]]}},{"type":"Feature","id":"TV","properties":{"hc-group":"admin0","hc-middle-x":0.25,"hc-middle-y":0.5,"hc-key":"tv","hc-a2":"TV","name":"Tuvalu","labelrank":"6","country-abbrev":"Tuv.","subregion":"Polynesia","region-wb":"East Asia & Pacific","iso-a3":"TUV","iso-a2":"TV","woe-id":"23424970","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[9522,6227],[9522,6227],[9522,6229],[9522,6227],[9522,6227]]]}},{"type":"Feature","id":"MH","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.6,"hc-key":"mh","hc-a2":"MH","name":"Marshall Islands","labelrank":"6","country-abbrev":"M. Is.","subregion":"Micronesia","region-wb":"East Asia & Pacific","iso-a3":"MHL","iso-a2":"MH","woe-id":"23424932","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[9280,6690],[9285,6688],[9286,6687],[9285,6688],[9280,6690]]]}},{"type":"Feature","id":"CL","properties":{"hc-group":"admin0","hc-middle-x":0.51,"hc-middle-y":0.9,"hc-key":"cl","hc-a2":"CL","name":"Chile","labelrank":"2","country-abbrev":"Chile","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"CHL","iso-a2":"CL","woe-id":"23424782","continent":"South America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2028,4732],[2063,4714],[2042,4700],[2014,4729],[2028,4732]]],[[[1977,4948],[1993,4916],[1994,4867],[1960,4879],[1981,4893],[1959,4908],[1961,4938],[1977,4948]]],[[[2022,5147],[2016,5111],[1985,5101],[2001,5124],[2006,5163],[2022,5147]]],[[[2167,4761],[2167,4674],[2165,4674],[2167,4673],[2167,4670],[2128,4674],[2110,4657],[2088,4695],[2113,4723],[2117,4693],[2157,4688],[2125,4702],[2114,4746],[2144,4768],[2167,4761]]],[[[2115,5932],[2128,5935],[2141,5957],[2157,5913],[2173,5898],[2163,5868],[2180,5842],[2189,5794],[2210,5794],[2206,5757],[2169,5733],[2177,5666],[2162,5659],[2137,5618],[2109,5516],[2133,5456],[2115,5397],[2115,5366],[2096,5352],[2091,5311],[2101,5277],[2085,5269],[2069,5206],[2075,5158],[2063,5125],[2077,5092],[2066,5062],[2088,5042],[2070,4970],[2051,4944],[2059,4928],[2020,4882],[2032,4835],[2058,4839],[2054,4804],[2070,4787],[2128,4786],[2173,4772],[2152,4778],[2105,4757],[2096,4714],[2032,4737],[2038,4753],[2004,4758],[1996,4781],[2017,4777],[2012,4815],[1976,4834],[2000,4847],[1996,4918],[1986,4952],[2000,4987],[1966,4992],[1995,5037],[2008,5015],[2031,5042],[2026,5058],[1996,5060],[2012,5097],[2020,5062],[2053,5159],[2039,5179],[2015,5170],[2010,5197],[2030,5249],[2018,5310],[2031,5329],[2048,5383],[2060,5398],[2085,5489],[2078,5559],[2088,5569],[2081,5601],[2100,5643],[2113,5714],[2109,5785],[2125,5837],[2115,5932]]],[[[2209,4666],[2230,4654],[2168,4659],[2214,4627],[2192,4628],[2162,4657],[2133,4648],[2129,4663],[2202,4668],[2207,4668],[2209,4666]]]]}},{"type":"Feature","id":"TH","properties":{"hc-group":"admin0","hc-middle-x":0.25,"hc-middle-y":0.49,"hc-key":"th","hc-a2":"TH","name":"Thailand","labelrank":"3","country-abbrev":"Thai.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"THA","iso-a2":"TH","woe-id":"23424960","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7239,6839],[7241,6837],[7244,6834],[7240,6833],[7239,6839]]],[[[7233,6663],[7205,6645],[7204,6663],[7175,6669],[7151,6704],[7118,6732],[7134,6785],[7161,6829],[7146,6886],[7119,6918],[7137,6959],[7095,7030],[7113,7070],[7128,7066],[7175,7086],[7186,7062],[7209,7061],[7205,6999],[7233,7022],[7249,7010],[7272,7029],[7290,7025],[7315,6996],[7313,6970],[7338,6946],[7325,6904],[7280,6907],[7241,6881],[7258,6824],[7226,6854],[7201,6852],[7200,6878],[7173,6876],[7172,6840],[7151,6793],[7149,6752],[7167,6753],[7185,6690],[7218,6681],[7233,6663]]]]}},{"type":"Feature","id":"GD","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"gd","hc-a2":"GD","name":"Grenada","labelrank":"6","country-abbrev":"Gren.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"GRD","iso-a2":"GD","woe-id":"23424826","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2375,6835],[2372,6835],[2372,6839],[2376,6841],[2375,6835]]]}},{"type":"Feature","id":"EE","properties":{"hc-group":"admin0","hc-middle-x":0.35,"hc-middle-y":0.41,"hc-key":"ee","hc-a2":"EE","name":"Estonia","labelrank":"6","country-abbrev":"Est.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"EST","iso-a2":"EE","woe-id":"23424805","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4876,8444],[4887,8435],[4863,8425],[4852,8441],[4876,8444]]],[[[4897,8446],[4893,8442],[4888,8445],[4892,8448],[4897,8446]]],[[[4893,8464],[4897,8464],[4898,8461],[4891,8461],[4893,8464]]],[[[4878,8463],[4888,8455],[4872,8449],[4858,8459],[4878,8463]]],[[[5026,8462],[5004,8453],[5024,8419],[5021,8411],[5016,8399],[4990,8398],[4954,8422],[4925,8413],[4902,8443],[4901,8472],[4975,8490],[5035,8483],[5038,8482],[5040,8478],[5038,8477],[5035,8477],[5035,8477],[5037,8476],[5037,8476],[5038,8476],[5037,8476],[5034,8476],[5030,8469],[5026,8462]]]]}},{"type":"Feature","id":"AG","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.48,"hc-key":"ag","hc-a2":"AG","name":"Antigua and Barbuda","labelrank":"6","country-abbrev":"Ant.B.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"ATG","iso-a2":"AG","woe-id":"23424737","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2371,6989],[2373,6986],[2369,6985],[2367,6988],[2371,6989]]]}},{"type":"Feature","id":"TW","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.41,"hc-key":"tw","hc-a2":"TW","name":"Taiwan","labelrank":"3","country-abbrev":"Taiwan","subregion":"Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"TWN","iso-a2":"TW","woe-id":"23424971","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7752,7185],[7768,7185],[7797,7233],[7821,7235],[7807,7173],[7790,7136],[7752,7185]]]}},{"type":"Feature","id":"BB","properties":{"hc-group":"admin0","hc-middle-x":0.31,"hc-middle-y":0.56,"hc-key":"bb","hc-a2":"BB","name":"Barbados","labelrank":"5","country-abbrev":"Barb.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"BRB","iso-a2":"BB","woe-id":"23424754","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2438,6866],[2434,6868],[2435,6874],[2440,6869],[2438,6866]]]}},{"type":"Feature","id":"IT","properties":{"hc-group":"admin0","hc-middle-x":0.79,"hc-middle-y":0.71,"hc-key":"it","hc-a2":"IT","name":"Italy","labelrank":"2","country-abbrev":"Italy","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"ITA","iso-a2":"IT","woe-id":"23424853","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4571,7654],[4668,7666],[4655,7649],[4652,7611],[4634,7616],[4571,7654]]],[[[4484,7768],[4496,7744],[4488,7697],[4454,7690],[4456,7736],[4448,7757],[4484,7768]]],[[[4427,7861],[4400,7909],[4412,7939],[4444,7951],[4466,7944],[4500,7955],[4514,7974],[4566,7982],[4572,7967],[4611,7961],[4601,7952],[4611,7927],[4596,7933],[4565,7916],[4572,7876],[4608,7851],[4622,7818],[4654,7794],[4680,7795],[4677,7778],[4738,7749],[4753,7731],[4710,7744],[4694,7715],[4713,7705],[4681,7655],[4685,7684],[4668,7729],[4611,7770],[4591,7769],[4536,7815],[4504,7869],[4464,7884],[4427,7861]],[[4574,7793],[4574,7793],[4574,7793],[4574,7793],[4574,7793]],[[4574,7865],[4574,7868],[4573,7867],[4572,7866],[4574,7865]]]]}},{"type":"Feature","id":"MT","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.53,"hc-key":"mt","hc-a2":"MT","name":"Malta","labelrank":"5","country-abbrev":"Malta","subregion":"Southern Europe","region-wb":"Middle East & North Africa","iso-a3":"MLT","iso-a2":"MT","woe-id":"23424897","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4628,7589],[4635,7586],[4635,7582],[4631,7584],[4628,7589]]]}},{"type":"Feature","id":"VU","properties":{"hc-group":"admin0","hc-middle-x":0.6,"hc-middle-y":0.53,"hc-key":"vu","hc-a2":"VU","name":"Vanuatu","labelrank":"4","country-abbrev":"Van.","subregion":"Melanesia","region-wb":"East Asia & Pacific","iso-a3":"VUT","iso-a2":"VU","woe-id":"23424907","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[9172,6054],[9194,6034],[9205,5976],[9178,5988],[9154,6029],[9172,6054]]]}},{"type":"Feature","id":"SG","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.57,"hc-key":"sg","hc-a2":"SG","name":"Singapore","labelrank":"6","country-abbrev":"Sing.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"SGP","iso-a2":"SG","woe-id":"23424948","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7286,6521],[7290,6519],[7286,6516],[7280,6517],[7286,6521]]]}},{"type":"Feature","id":"CY","properties":{"hc-group":"admin0","hc-middle-x":0.39,"hc-middle-y":0.51,"hc-key":"cy","hc-a2":"CY","name":"Cyprus","labelrank":"5","country-abbrev":"Cyp.","subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"CYP","iso-a2":"CY","woe-id":"-90","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5205,7555],[5205,7556],[5206,7556],[5205,7555]]],[[[5214,7557],[5216,7554],[5210,7554],[5207,7557],[5210,7557],[5213,7557],[5214,7557]]],[[[5206,7555],[5206,7555],[5207,7555],[5207,7554],[5206,7555]]],[[[5204,7554],[5201,7549],[5184,7543],[5178,7545],[5176,7544],[5162,7557],[5171,7561],[5172,7560],[5173,7562],[5174,7561],[5175,7561],[5175,7561],[5175,7561],[5175,7561],[5175,7561],[5196,7561],[5204,7555],[5204,7554]]]]}},{"type":"Feature","id":"LK","properties":{"hc-group":"admin0","hc-middle-x":0.62,"hc-middle-y":0.91,"hc-key":"lk","hc-a2":"LK","name":"Sri Lanka","labelrank":"3","country-abbrev":"Sri L.","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"LKA","iso-a2":"LK","woe-id":"23424778","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6576,6765],[6600,6755],[6632,6703],[6631,6674],[6596,6654],[6581,6660],[6572,6717],[6584,6759],[6576,6765]]]}},{"type":"Feature","id":"KM","properties":{"hc-group":"admin0","hc-middle-x":0.41,"hc-middle-y":0.51,"hc-key":"km","hc-a2":"KM","name":"Comoros","labelrank":"6","country-abbrev":"Com.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"COM","iso-a2":"KM","woe-id":"23424786","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5494,6125],[5487,6131],[5488,6142],[5492,6141],[5494,6125]]]}},{"type":"Feature","id":"FJ","properties":{"hc-group":"admin0","hc-middle-x":0.44,"hc-middle-y":0.33,"hc-key":"fj","hc-a2":"FJ","name":"Fiji","labelrank":"6","country-abbrev":"Fiji","subregion":"Melanesia","region-wb":"East Asia & Pacific","iso-a3":"FJI","iso-a2":"FJ","woe-id":"23424813","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[9460,5963],[9494,5962],[9495,5978],[9543,5996],[9494,5959],[9507,5951],[9500,5915],[9490,5934],[9467,5939],[9460,5963]]]}},{"type":"Feature","id":"RU","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.56,"hc-key":"ru","hc-a2":"RU","name":"Russia","labelrank":"2","country-abbrev":"Rus.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"RUS","iso-a2":"RU","woe-id":"23424936","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8620,7917],[8587,7905],[8565,7884],[8519,7862],[8540,7887],[8614,7923],[8620,7917]]],[[[5691,8936],[5646,8924],[5637,8953],[5666,8965],[5693,8952],[5691,8936]]],[[[5965,9010],[5999,8987],[5972,8976],[5942,8995],[5965,9010]]],[[[6315,9176],[6331,9169],[6278,9157],[6280,9178],[6315,9176]]],[[[7568,9234],[7551,9218],[7512,9233],[7528,9245],[7568,9234]]],[[[5900,9603],[5857,9597],[5866,9613],[5939,9622],[5950,9582],[5900,9603]]],[[[5825,9623],[5819,9605],[5766,9602],[5774,9618],[5819,9609],[5825,9623]]],[[[5870,9665],[5945,9662],[5893,9635],[5861,9633],[5807,9645],[5870,9665]]],[[[6124,9673],[6147,9654],[6077,9637],[6060,9648],[6104,9658],[6124,9673]]],[[[5922,9709],[5937,9692],[5916,9668],[5861,9672],[5922,9709]]],[[[5391,7846],[5361,7874],[5289,7912],[5317,7918],[5327,7959],[5370,7979],[5338,7983],[5356,8011],[5384,8010],[5382,8045],[5395,8064],[5367,8087],[5315,8109],[5262,8106],[5245,8140],[5218,8142],[5225,8161],[5207,8185],[5147,8175],[5131,8212],[5175,8229],[5146,8243],[5121,8317],[5039,8340],[5024,8370],[5016,8399],[5021,8411],[5024,8419],[5030,8439],[5026,8462],[5030,8469],[5033,8474],[5037,8476],[5037,8476],[5035,8477],[5035,8477],[5035,8477],[5037,8476],[5040,8478],[5038,8482],[5035,8483],[5037,8497],[5090,8514],[5029,8531],[5071,8562],[5131,8620],[5141,8638],[5094,8678],[5111,8691],[5082,8737],[5091,8792],[5067,8828],[5095,8871],[5055,8897],[5048,8914],[5063,8940],[5093,8957],[5119,8981],[5155,8989],[5187,8976],[5154,8968],[5271,8947],[5422,8870],[5431,8846],[5404,8806],[5372,8793],[5330,8791],[5199,8822],[5161,8842],[5242,8773],[5227,8755],[5241,8731],[5264,8746],[5302,8746],[5378,8716],[5404,8728],[5386,8767],[5431,8789],[5468,8824],[5515,8780],[5524,8820],[5504,8845],[5517,8900],[5490,8918],[5567,8909],[5591,8879],[5550,8873],[5538,8852],[5564,8831],[5620,8836],[5629,8869],[5652,8873],[5723,8912],[5790,8934],[5806,8904],[5827,8896],[5866,8921],[5905,8916],[5951,8938],[5975,8904],[6011,8945],[5989,8968],[6007,8983],[6107,8967],[6153,8943],[6199,8929],[6230,8904],[6255,8935],[6236,8937],[6223,8964],[6186,8969],[6202,9029],[6176,9027],[6190,9061],[6236,9090],[6251,9138],[6269,9149],[6328,9151],[6366,9139],[6367,9115],[6336,9074],[6361,9051],[6354,9006],[6358,8935],[6389,8913],[6375,8873],[6358,8867],[6328,8819],[6292,8803],[6343,8798],[6385,8827],[6422,8871],[6414,8922],[6471,8938],[6499,8913],[6493,8875],[6522,8899],[6509,8932],[6445,8952],[6393,8949],[6386,8977],[6409,9019],[6371,9068],[6386,9090],[6428,9105],[6421,9150],[6448,9187],[6481,9183],[6445,9141],[6451,9113],[6436,9067],[6512,9052],[6527,9059],[6469,9075],[6459,9094],[6487,9102],[6506,9090],[6515,9116],[6553,9161],[6560,9121],[6630,9083],[6675,9084],[6646,9060],[6663,9044],[6673,9007],[6690,9016],[6671,9058],[6685,9079],[6643,9115],[6599,9130],[6588,9167],[6594,9189],[6788,9206],[6780,9224],[6737,9257],[6785,9249],[6777,9269],[6809,9274],[6873,9307],[6980,9323],[6962,9336],[7011,9336],[7047,9351],[7033,9373],[7059,9393],[7066,9353],[7049,9341],[7067,9325],[7108,9332],[7138,9364],[7197,9366],[7207,9400],[7268,9436],[7313,9439],[7346,9430],[7326,9407],[7393,9388],[7362,9364],[7404,9365],[7407,9378],[7502,9378],[7543,9370],[7546,9346],[7568,9345],[7578,9308],[7544,9323],[7575,9289],[7467,9233],[7411,9192],[7384,9191],[7360,9167],[7401,9165],[7495,9195],[7457,9196],[7469,9214],[7539,9196],[7561,9206],[7571,9185],[7629,9196],[7719,9189],[7716,9172],[7772,9155],[7853,9150],[7870,9168],[7862,9188],[7901,9208],[7905,9196],[7955,9179],[7974,9187],[8045,9157],[8030,9104],[7998,9123],[8055,9053],[8088,9032],[8108,9038],[8137,9093],[8170,9068],[8195,9065],[8239,9079],[8270,9074],[8322,9080],[8360,9070],[8335,9109],[8345,9127],[8405,9143],[8519,9131],[8564,9117],[8534,9111],[8541,9090],[8572,9118],[8644,9108],[8657,9095],[8626,9083],[8700,9063],[8721,9038],[8764,9037],[8832,9050],[8908,9043],[8943,9027],[8955,9004],[8943,8985],[8984,8961],[9072,8979],[9096,8968],[9158,8964],[9197,8992],[9232,8984],[9225,8968],[9192,8975],[9201,8950],[9238,8927],[9278,8941],[9267,8997],[9413,8983],[9467,8971],[9580,8925],[9584,8914],[9685,8870],[9711,8813],[9723,8834],[9791,8834],[9851,8793],[9826,8768],[9778,8763],[9764,8722],[9776,8709],[9742,8703],[9702,8728],[9668,8738],[9667,8757],[9635,8767],[9589,8762],[9555,8796],[9567,8768],[9556,8744],[9493,8721],[9439,8731],[9486,8700],[9495,8707],[9534,8629],[9519,8610],[9488,8621],[9448,8619],[9352,8576],[9308,8545],[9266,8526],[9261,8505],[9227,8532],[9158,8520],[9133,8499],[9142,8528],[9095,8497],[9060,8508],[9046,8484],[9064,8458],[9090,8456],[9056,8438],[9043,8461],[9011,8423],[9051,8406],[9035,8366],[9052,8342],[9016,8339],[9005,8318],[9016,8287],[8954,8259],[8941,8221],[8912,8207],[8886,8153],[8827,8100],[8811,8101],[8856,8131],[8837,8208],[8820,8304],[8835,8366],[8877,8410],[8923,8437],[8948,8468],[9008,8515],[9010,8525],[9072,8567],[9075,8609],[9107,8615],[9089,8628],[9049,8621],[9040,8587],[8957,8532],[8946,8548],[8962,8594],[8877,8587],[8802,8523],[8776,8485],[8810,8470],[8755,8473],[8696,8456],[8678,8483],[8643,8496],[8619,8473],[8474,8481],[8435,8472],[8385,8435],[8373,8412],[8319,8375],[8287,8339],[8217,8288],[8256,8276],[8261,8291],[8303,8293],[8279,8254],[8297,8235],[8321,8264],[8353,8263],[8401,8217],[8372,8113],[8375,8076],[8364,8034],[8337,8008],[8302,7950],[8237,7883],[8214,7850],[8156,7821],[8116,7844],[8083,7807],[8081,7811],[8078,7815],[8091,7827],[8099,7870],[8090,7899],[8121,7913],[8132,7887],[8146,7907],[8178,7951],[8185,7988],[8204,8005],[8192,8031],[8135,8005],[8093,8004],[8086,8027],[8043,8071],[8005,8075],[7935,8210],[7862,8234],[7790,8222],[7766,8201],[7788,8176],[7768,8158],[7740,8107],[7742,8093],[7699,8074],[7667,8086],[7628,8089],[7596,8104],[7559,8077],[7490,8060],[7425,8067],[7407,8090],[7330,8111],[7280,8098],[7239,8117],[7237,8144],[7139,8176],[7106,8132],[7121,8113],[7093,8083],[7011,8094],[7001,8115],[6945,8127],[6810,8061],[6801,8059],[6795,8058],[6774,8077],[6734,8077],[6680,8131],[6621,8121],[6598,8144],[6577,8124],[6515,8222],[6475,8250],[6479,8269],[6407,8235],[6385,8249],[6316,8256],[6306,8305],[6230,8300],[6227,8291],[6139,8266],[6014,8247],[6020,8222],[6045,8216],[6005,8198],[6015,8184],[5989,8167],[6028,8148],[6025,8123],[5983,8125],[5978,8114],[5943,8133],[5881,8134],[5856,8113],[5821,8126],[5787,8152],[5705,8157],[5648,8115],[5641,8085],[5615,8110],[5596,8086],[5600,8062],[5583,8032],[5602,8009],[5630,8008],[5665,7954],[5617,7931],[5591,7892],[5617,7860],[5612,7833],[5646,7791],[5621,7768],[5582,7793],[5534,7823],[5508,7816],[5475,7838],[5391,7846]]],[[[9599,9071],[9621,9058],[9607,9047],[9546,9044],[9510,9034],[9513,9057],[9553,9077],[9599,9071]]],[[[8377,9210],[8419,9208],[8460,9187],[8453,9166],[8373,9183],[8377,9210]]],[[[6937,9577],[6908,9593],[6985,9585],[6953,9568],[6937,9577]]],[[[5596,9641],[5637,9647],[5572,9620],[5542,9634],[5596,9641]]],[[[5995,9655],[6034,9667],[6052,9644],[6016,9618],[5975,9619],[5961,9635],[5995,9655]]],[[[4790,8269],[4810,8280],[4786,8270],[4786,8270],[4795,8288],[4825,8304],[4827,8304],[4814,8290],[4835,8303],[4881,8288],[4880,8266],[4878,8266],[4790,8269]]],[[[7022,9596],[7001,9593],[6984,9590],[6920,9610],[6957,9625],[6965,9659],[7046,9679],[7111,9638],[7088,9634],[7088,9606],[7033,9597],[7100,9602],[7123,9582],[7148,9593],[7170,9569],[7154,9511],[7105,9510],[7077,9522],[7024,9525],[6986,9559],[7022,9596]]],[[[8455,8069],[8434,8017],[8459,7961],[8432,7965],[8421,7938],[8413,7964],[8424,8015],[8417,8049],[8426,8138],[8409,8161],[8411,8226],[8442,8239],[8434,8264],[8456,8217],[8461,8152],[8486,8064],[8455,8069]]],[[[5879,9169],[5847,9116],[5869,9059],[5914,9030],[5900,9017],[5849,9031],[5841,9020],[5786,9037],[5794,9055],[5774,9065],[5778,9046],[5733,9076],[5731,9096],[5759,9104],[5780,9161],[5834,9180],[5879,9169]]],[[[8571,9292],[8608,9297],[8629,9288],[8681,9280],[8673,9266],[8601,9260],[8539,9286],[8548,9307],[8571,9292]]],[[[8399,9343],[8434,9324],[8476,9322],[8518,9303],[8477,9274],[8433,9294],[8437,9278],[8468,9268],[8429,9262],[8413,9272],[8329,9252],[8296,9263],[8266,9294],[8241,9299],[8224,9294],[8230,9324],[8269,9309],[8282,9329],[8326,9346],[8388,9309],[8399,9343]]],[[[6210,9395],[6246,9386],[6250,9367],[6197,9339],[6025,9292],[5959,9239],[5931,9247],[5933,9224],[5888,9170],[5837,9181],[5814,9174],[5796,9199],[5830,9212],[5852,9252],[5897,9296],[5931,9307],[5947,9326],[6017,9337],[6017,9349],[6055,9344],[6104,9352],[6210,9395]]],[[[7197,9509],[7203,9532],[7240,9552],[7265,9544],[7257,9526],[7285,9533],[7322,9512],[7352,9475],[7326,9488],[7282,9474],[7207,9470],[7173,9455],[7150,9460],[7197,9509]]],[[[5588,9611],[5677,9634],[5658,9643],[5699,9660],[5738,9636],[5680,9624],[5695,9590],[5674,9601],[5588,9611]]]]}},{"type":"Feature","id":"VA","properties":{"hc-group":"admin0","hc-middle-x":0.61,"hc-middle-y":0.44,"hc-key":"va","hc-a2":"VA","name":"Vatican","labelrank":"6","country-abbrev":"Vat.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"VAT","iso-a2":"VA","woe-id":"23424986","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4574,7793],[4574,7793],[4574,7793],[4574,7793],[4574,7793]]]}},{"type":"Feature","id":"SM","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.42,"hc-key":"sm","hc-a2":"SM","name":"San Marino","labelrank":"6","country-abbrev":"S.M.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"SMR","iso-a2":"SM","woe-id":"23424947","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4574,7865],[4572,7866],[4573,7867],[4574,7868],[4574,7865]]]}},{"type":"Feature","id":"KZ","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.46,"hc-key":"kz","hc-a2":"KZ","name":"Kazakhstan","labelrank":"3","country-abbrev":"Kaz.","subregion":"Central Asia","region-wb":"Europe & Central Asia","iso-a3":"KAZ","iso-a2":"KZ","woe-id":"-90","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5991,7941],[5960,7930],[5968,7910],[5947,7922],[5952,7928],[5943,7925],[5865,7905],[5865,7773],[5851,7770],[5812,7808],[5792,7800],[5792,7800],[5792,7800],[5792,7800],[5780,7795],[5780,7795],[5780,7795],[5780,7795],[5760,7788],[5768,7823],[5745,7826],[5697,7892],[5729,7917],[5763,7920],[5779,7942],[5779,7975],[5750,7972],[5724,7983],[5665,7954],[5630,8008],[5602,8009],[5583,8032],[5600,8062],[5596,8086],[5615,8110],[5641,8085],[5648,8115],[5705,8157],[5787,8152],[5821,8126],[5856,8113],[5881,8134],[5943,8133],[5978,8114],[5983,8125],[6025,8123],[6028,8148],[5989,8167],[6015,8184],[6005,8198],[6045,8216],[6020,8222],[6014,8247],[6139,8266],[6227,8291],[6230,8300],[6306,8305],[6316,8256],[6385,8249],[6407,8235],[6479,8269],[6475,8250],[6515,8222],[6577,8124],[6598,8144],[6621,8121],[6680,8131],[6734,8077],[6774,8077],[6795,8058],[6750,8032],[6741,7981],[6719,7972],[6668,7986],[6646,7924],[6581,7906],[6602,7838],[6584,7803],[6531,7828],[6435,7827],[6405,7842],[6385,7812],[6336,7826],[6309,7805],[6253,7774],[6240,7747],[6220,7768],[6183,7768],[6178,7796],[6163,7797],[6157,7828],[6131,7858],[6045,7850],[6015,7882],[5986,7899],[5977,7930],[5996,7939],[5991,7941]],[[5995,7942],[5997,7942],[5997,7940],[6021,7950],[5995,7942]]],[[[5693,7900],[5687,7903],[5689,7907],[5698,7908],[5693,7900]]]]}},{"type":"Feature","id":"AZ","properties":{"hc-group":"admin0","hc-middle-x":0.83,"hc-middle-y":0.51,"hc-key":"az","hc-a2":"AZ","name":"Azerbaijan","labelrank":"5","country-abbrev":"Aze.","subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"AZE","iso-a2":"AZ","woe-id":"23424741","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5540,7763],[5539,7762],[5538,7764],[5540,7764],[5540,7763]]],[[[5546,7760],[5545,7760],[5545,7761],[5545,7761],[5546,7760]]],[[[5554,7747],[5554,7749],[5556,7749],[5555,7747],[5554,7747]]],[[[5534,7714],[5533,7716],[5563,7710],[5573,7687],[5552,7692],[5534,7714]]],[[[5582,7793],[5621,7768],[5646,7791],[5676,7748],[5654,7672],[5629,7685],[5627,7716],[5584,7687],[5558,7727],[5568,7734],[5539,7771],[5584,7763],[5582,7793]]]]}},{"type":"Feature","id":"TJ","properties":{"hc-group":"admin0","hc-middle-x":0.28,"hc-middle-y":0.56,"hc-key":"tj","hc-a2":"TJ","name":"Tajikistan","labelrank":"4","country-abbrev":"Tjk.","subregion":"Central Asia","region-wb":"Europe & Central Asia","iso-a3":"TJK","iso-a2":"TJ","woe-id":"23424961","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6300,7759],[6300,7759],[6298,7762],[6299,7761],[6300,7759]]],[[[6300,7721],[6302,7720],[6299,7718],[6296,7722],[6300,7721]]],[[[6389,7707],[6395,7677],[6423,7675],[6426,7631],[6379,7639],[6329,7613],[6329,7653],[6299,7669],[6285,7641],[6259,7626],[6215,7629],[6232,7665],[6225,7691],[6203,7699],[6235,7710],[6264,7754],[6295,7762],[6310,7734],[6280,7734],[6261,7709],[6325,7713],[6348,7698],[6389,7707]]]]}},{"type":"Feature","id":"LS","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.45,"hc-key":"ls","hc-a2":"LS","name":"Lesotho","labelrank":"6","country-abbrev":"Les.","subregion":"Southern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"LSO","iso-a2":"LS","woe-id":"23424880","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5040,5608],[5054,5613],[5078,5588],[5037,5545],[5006,5579],[5040,5608]]]}},{"type":"Feature","id":"UZ","properties":{"hc-group":"admin0","hc-middle-x":0.46,"hc-middle-y":0.53,"hc-key":"uz","hc-a2":"UZ","name":"Uzbekistan","labelrank":"3","country-abbrev":"Uzb.","subregion":"Central Asia","region-wb":"Europe & Central Asia","iso-a3":"UZB","iso-a2":"UZ","woe-id":"23424980","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6333,7723],[6332,7723],[6331,7724],[6334,7726],[6333,7723]]],[[[6316,7728],[6317,7722],[6312,7722],[6310,7729],[6316,7728]]],[[[5968,7910],[5961,7895],[5982,7876],[5986,7899],[6015,7882],[6045,7850],[6131,7858],[6157,7828],[6163,7797],[6178,7796],[6183,7768],[6220,7768],[6240,7747],[6253,7774],[6309,7805],[6286,7782],[6323,7766],[6333,7777],[6374,7754],[6331,7731],[6310,7734],[6295,7762],[6264,7754],[6235,7710],[6203,7699],[6225,7691],[6232,7665],[6215,7629],[6200,7629],[6178,7635],[6179,7658],[6151,7665],[6057,7726],[6043,7761],[5987,7775],[5981,7807],[5943,7825],[5915,7802],[5908,7809],[5898,7794],[5896,7770],[5865,7773],[5865,7905],[5943,7925],[5934,7884],[5947,7922],[5968,7910]],[[6300,7759],[6299,7761],[6298,7762],[6300,7759],[6300,7759]]]]}},{"type":"Feature","id":"MA","properties":{"hc-group":"admin0","hc-middle-x":0.6,"hc-middle-y":0.21,"hc-key":"ma","hc-a2":"MA","name":"Morocco","labelrank":"3","country-abbrev":"Mor.","subregion":"Northern Africa","region-wb":"Middle East & North Africa","iso-a3":"MAR","iso-a2":"MA","woe-id":"23424893","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4117,7564],[4118,7565],[4119,7560],[4138,7558],[4151,7547],[4154,7497],[4173,7473],[4167,7459],[4129,7460],[4095,7444],[4096,7414],[4033,7378],[3977,7371],[3946,7348],[3946,7316],[3943,7298],[3915,7290],[3866,7291],[3847,7264],[3835,7226],[3788,7182],[3782,7148],[3764,7121],[3699,7120],[3740,7201],[3762,7222],[3774,7267],[3800,7285],[3820,7324],[3863,7337],[3890,7358],[3919,7404],[3912,7436],[3929,7475],[3951,7498],[4002,7523],[4028,7582],[4044,7586],[4044,7585],[4045,7584],[4074,7560],[4116,7566],[4117,7566],[4117,7564]]]}},{"type":"Feature","id":"CO","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.54,"hc-key":"co","hc-a2":"CO","name":"Colombia","labelrank":"2","country-abbrev":"Col.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"COL","iso-a2":"CO","woe-id":"23424787","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[1865,6521],[1868,6543],[1894,6559],[1916,6592],[1909,6611],[1909,6673],[1892,6692],[1914,6713],[1908,6735],[1920,6731],[1960,6758],[1963,6791],[2005,6815],[2029,6813],[2082,6847],[2087,6830],[2068,6824],[2040,6787],[2037,6753],[2056,6726],[2064,6688],[2123,6685],[2143,6659],[2201,6662],[2190,6612],[2207,6580],[2191,6564],[2210,6549],[2219,6515],[2206,6540],[2181,6529],[2131,6529],[2125,6474],[2143,6437],[2128,6354],[2105,6367],[2125,6399],[2096,6414],[2056,6406],[2032,6413],[2019,6442],[1970,6476],[1940,6492],[1905,6498],[1865,6521]]]}},{"type":"Feature","id":"TL","properties":{"hc-group":"admin0","hc-middle-x":0.65,"hc-middle-y":0.36,"hc-key":"tl","hc-a2":"TL","name":"East Timor","labelrank":"5","country-abbrev":"T.L.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"TLS","iso-a2":"TL","woe-id":"23424968","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7885,6203],[7890,6206],[7897,6207],[7891,6198],[7885,6203]]],[[[7911,6214],[7918,6224],[7972,6233],[7957,6214],[7915,6198],[7912,6206],[7911,6214]]]]}},{"type":"Feature","id":"TZ","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"tz","hc-a2":"TZ","name":"United Republic of Tanzania","labelrank":"3","country-abbrev":"Tanz.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"TZA","iso-a2":"TZ","woe-id":"23424973","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5242,6136],[5241,6138],[5240,6141],[5240,6141],[5236,6143],[5235,6145],[5235,6145],[5234,6146],[5227,6185],[5222,6192],[5219,6195],[5219,6195],[5216,6197],[5215,6197],[5215,6198],[5211,6196],[5210,6191],[5195,6195],[5181,6201],[5153,6211],[5129,6225],[5093,6304],[5084,6347],[5118,6383],[5111,6408],[5119,6432],[5108,6447],[5119,6449],[5147,6449],[5147,6448],[5148,6449],[5149,6449],[5151,6407],[5189,6405],[5215,6448],[5321,6389],[5325,6371],[5367,6341],[5387,6324],[5371,6310],[5378,6289],[5372,6221],[5404,6169],[5316,6132],[5242,6136]]]}},{"type":"Feature","id":"AR","properties":{"hc-group":"admin0","hc-middle-x":0.46,"hc-middle-y":0.27,"hc-key":"ar","hc-a2":"AR","name":"Argentina","labelrank":"2","country-abbrev":"Arg.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"ARG","iso-a2":"AR","woe-id":"23424747","continent":"South America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2167,4673],[2169,4670],[2167,4670],[2167,4673]]],[[[2584,5708],[2604,5706],[2606,5658],[2549,5623],[2494,5561],[2477,5505],[2477,5487],[2466,5426],[2509,5387],[2501,5373],[2522,5338],[2495,5295],[2451,5277],[2398,5267],[2362,5269],[2354,5201],[2310,5191],[2278,5207],[2273,5163],[2287,5146],[2312,5158],[2316,5134],[2292,5143],[2292,5126],[2265,5101],[2257,5052],[2239,5053],[2206,5030],[2197,5010],[2222,4978],[2246,4976],[2246,4939],[2199,4902],[2189,4865],[2160,4852],[2151,4826],[2173,4772],[2128,4786],[2070,4787],[2054,4804],[2058,4839],[2032,4835],[2020,4882],[2059,4928],[2051,4944],[2070,4970],[2088,5042],[2066,5062],[2077,5092],[2063,5125],[2075,5158],[2069,5206],[2085,5269],[2101,5277],[2091,5311],[2096,5352],[2115,5366],[2115,5397],[2133,5456],[2109,5516],[2137,5618],[2162,5659],[2177,5666],[2169,5733],[2206,5757],[2210,5794],[2238,5826],[2287,5813],[2295,5792],[2307,5819],[2345,5812],[2394,5763],[2422,5757],[2496,5712],[2465,5653],[2549,5649],[2578,5674],[2584,5708]]],[[[2167,4674],[2167,4761],[2173,4734],[2207,4704],[2250,4679],[2287,4669],[2229,4663],[2209,4666],[2202,4668],[2167,4674]]]]}},{"type":"Feature","id":"SA","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.53,"hc-key":"sa","hc-a2":"SA","name":"Saudi Arabia","labelrank":"2","country-abbrev":"Saud.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"SAU","iso-a2":"SA","woe-id":"23424938","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5641,7344],[5655,7313],[5692,7284],[5692,7255],[5712,7224],[5717,7218],[5724,7220],[5726,7210],[5734,7208],[5764,7167],[5842,7160],[5855,7137],[5836,7076],[5747,7045],[5662,7034],[5633,7020],[5611,6987],[5544,6998],[5485,6995],[5474,6966],[5427,7036],[5419,7061],[5381,7090],[5364,7117],[5364,7155],[5345,7193],[5318,7209],[5309,7237],[5249,7328],[5230,7330],[5241,7370],[5274,7365],[5331,7407],[5301,7439],[5366,7460],[5404,7453],[5453,7426],[5530,7365],[5585,7362],[5612,7358],[5641,7344]]]}},{"type":"Feature","id":"PK","properties":{"hc-group":"admin0","hc-middle-x":0.34,"hc-middle-y":0.64,"hc-key":"pk","hc-a2":"PK","name":"Pakistan","labelrank":"2","country-abbrev":"Pak.","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"PAK","iso-a2":"PK","woe-id":"23424922","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6416,7624],[6459,7605],[6482,7577],[6490,7559],[6453,7539],[6410,7548],[6393,7534],[6400,7495],[6438,7461],[6415,7446],[6416,7427],[6381,7388],[6368,7360],[6337,7325],[6295,7328],[6265,7289],[6313,7222],[6280,7205],[6247,7208],[6227,7195],[6203,7202],[6173,7246],[6088,7238],[6032,7238],[6039,7270],[6076,7283],[6067,7334],[6041,7344],[6010,7386],[6058,7372],[6106,7371],[6168,7385],[6173,7421],[6226,7450],[6261,7454],[6268,7491],[6290,7499],[6281,7523],[6313,7524],[6330,7562],[6316,7590],[6357,7617],[6416,7624]]]}},{"type":"Feature","id":"YE","properties":{"hc-group":"admin0","hc-middle-x":0.39,"hc-middle-y":0.75,"hc-key":"ye","hc-a2":"YE","name":"Yemen","labelrank":"3","country-abbrev":"Yem.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"YEM","iso-a2":"YE","woe-id":"23425002","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5747,7045],[5769,6994],[5780,6974],[5754,6943],[5675,6916],[5649,6895],[5629,6896],[5590,6877],[5564,6875],[5508,6852],[5494,6859],[5472,6941],[5474,6966],[5485,6995],[5544,6998],[5611,6987],[5633,7020],[5662,7034],[5747,7045]]]}},{"type":"Feature","id":"AE","properties":{"hc-group":"admin0","hc-middle-x":0.59,"hc-middle-y":0.65,"hc-key":"ae","hc-a2":"AE","name":"United Arab Emirates","labelrank":"4","country-abbrev":"U.A.E.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"ARE","iso-a2":"AE","woe-id":"23424738","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5874,7251],[5877,7248],[5877,7231],[5860,7228],[5842,7160],[5764,7167],[5734,7208],[5810,7205],[5868,7265],[5870,7253],[5874,7251]],[[5874,7239],[5876,7241],[5873,7241],[5873,7238],[5874,7239]]]}},{"type":"Feature","id":"KE","properties":{"hc-group":"admin0","hc-middle-x":0.87,"hc-middle-y":0.7,"hc-key":"ke","hc-a2":"KE","name":"Kenya","labelrank":"2","country-abbrev":"Ken.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"KEN","iso-a2":"KE","woe-id":"23424863","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5367,6341],[5325,6371],[5321,6389],[5215,6448],[5220,6471],[5213,6486],[5242,6527],[5240,6552],[5212,6603],[5255,6627],[5270,6615],[5297,6609],[5335,6585],[5377,6579],[5414,6605],[5447,6596],[5420,6562],[5420,6453],[5437,6429],[5396,6397],[5367,6341]]]}},{"type":"Feature","id":"PE","properties":{"hc-group":"admin0","hc-middle-x":0.69,"hc-middle-y":0.71,"hc-key":"pe","hc-a2":"PE","name":"Peru","labelrank":"2","country-abbrev":"Peru","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"PER","iso-a2":"PE","woe-id":"23424919","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[1970,6476],[2019,6442],[2032,6413],[2056,6406],[2096,6414],[2125,6399],[2105,6367],[2128,6354],[2103,6356],[2040,6327],[2034,6290],[2007,6256],[2061,6183],[2091,6185],[2111,6200],[2108,6153],[2139,6155],[2166,6108],[2153,6073],[2160,6058],[2145,6017],[2126,6008],[2153,5996],[2155,5997],[2157,5996],[2153,5988],[2155,5986],[2137,5964],[2141,5957],[2128,5935],[2115,5932],[2082,5964],[1973,6022],[1940,6061],[1942,6083],[1900,6144],[1860,6236],[1831,6278],[1797,6299],[1793,6354],[1820,6379],[1815,6358],[1858,6331],[1879,6379],[1928,6403],[1961,6433],[1970,6476]]]}},{"type":"Feature","id":"DO","properties":{"hc-group":"admin0","hc-middle-x":0.46,"hc-middle-y":0.38,"hc-key":"do","hc-a2":"DO","name":"Dominican Republic","labelrank":"5","country-abbrev":"Dom. Rep.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"DOM","iso-a2":"DO","woe-id":"23424800","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[2070,7030],[2070,7030],[2069,7031],[2069,7031],[2067,7033],[2076,7038],[2075,7067],[2097,7074],[2128,7066],[2138,7048],[2175,7035],[2159,7028],[2106,7028],[2085,7003],[2074,7016],[2076,7025],[2070,7030]]]}},{"type":"Feature","id":"HT","properties":{"hc-group":"admin0","hc-middle-x":0.82,"hc-middle-y":0.96,"hc-key":"ht","hc-a2":"HT","name":"Haiti","labelrank":"5","country-abbrev":"Haiti","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"HTI","iso-a2":"HT","woe-id":"23424839","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2070,7030],[2069,7031],[2069,7031],[2069,7031],[2070,7030]]],[[[2075,7067],[2076,7038],[2067,7033],[2068,7030],[2070,7030],[2076,7025],[2074,7016],[2028,7023],[2011,7016],[2000,7036],[2046,7028],[2046,7059],[2025,7070],[2075,7067]]]]}},{"type":"Feature","id":"PG","properties":{"hc-group":"admin0","hc-middle-x":0.14,"hc-middle-y":0.5,"hc-key":"pg","hc-a2":"PG","name":"Papua New Guinea","labelrank":"2","country-abbrev":"P.N.G.","subregion":"Melanesia","region-wb":"East Asia & Pacific","iso-a3":"PNG","iso-a2":"PG","woe-id":"23424926","continent":"Oceania"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8388,6210],[8388,6275],[8388,6402],[8478,6367],[8493,6366],[8531,6335],[8530,6317],[8580,6303],[8592,6281],[8565,6279],[8572,6258],[8600,6241],[8632,6198],[8684,6195],[8676,6166],[8595,6178],[8568,6199],[8539,6240],[8470,6255],[8460,6214],[8437,6203],[8388,6210]]],[[[8654,6406],[8646,6432],[8662,6408],[8716,6383],[8749,6353],[8741,6336],[8723,6373],[8654,6406]]],[[[8645,6292],[8598,6309],[8685,6319],[8703,6332],[8701,6355],[8727,6351],[8719,6320],[8669,6294],[8645,6292]]]]}},{"type":"Feature","id":"AO","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.67,"hc-key":"ao","hc-a2":"AO","name":"Angola","labelrank":"3","country-abbrev":"Ang.","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"AGO","iso-a2":"AO","woe-id":"23424745","continent":"Africa"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4566,6309],[4567,6317],[4560,6331],[4583,6349],[4592,6342],[4573,6330],[4566,6309]]],[[[4898,5953],[4821,5941],[4761,5950],[4752,5961],[4618,5960],[4595,5974],[4553,5965],[4553,6009],[4575,6081],[4609,6116],[4613,6163],[4590,6210],[4601,6232],[4568,6298],[4595,6306],[4697,6304],[4708,6263],[4726,6239],[4778,6242],[4783,6272],[4850,6264],[4851,6201],[4862,6185],[4864,6146],[4915,6157],[4916,6093],[4856,6093],[4856,5998],[4898,5953]]]]}},{"type":"Feature","id":"KH","properties":{"hc-group":"admin0","hc-middle-x":0.84,"hc-middle-y":0.49,"hc-key":"kh","hc-a2":"KH","name":"Cambodia","labelrank":"3","country-abbrev":"Camb.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"KHM","iso-a2":"KH","woe-id":"23424776","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7395,6915],[7395,6844],[7342,6805],[7304,6787],[7279,6789],[7258,6824],[7241,6881],[7280,6907],[7325,6904],[7374,6904],[7395,6915]]]}},{"type":"Feature","id":"VN","properties":{"hc-group":"admin0","hc-middle-x":0.59,"hc-middle-y":0.89,"hc-key":"vn","hc-a2":"VN","name":"Vietnam","labelrank":"2","country-abbrev":"Viet.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"VNM","iso-a2":"VN","woe-id":"23424984","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7304,6787],[7342,6805],[7395,6844],[7395,6915],[7399,6932],[7365,6984],[7311,7039],[7286,7055],[7319,7079],[7292,7106],[7264,7103],[7260,7125],[7234,7150],[7245,7162],[7289,7154],[7329,7180],[7372,7161],[7366,7149],[7409,7122],[7377,7105],[7350,7076],[7338,7046],[7368,6999],[7432,6936],[7452,6861],[7439,6815],[7387,6786],[7371,6790],[7364,6761],[7313,6739],[7314,6781],[7304,6787]]]}},{"type":"Feature","id":"MZ","properties":{"hc-group":"admin0","hc-middle-x":0.83,"hc-middle-y":0.28,"hc-key":"mz","hc-a2":"MZ","name":"Mozambique","labelrank":"3","country-abbrev":"Moz.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"MOZ","iso-a2":"MZ","woe-id":"23424902","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5238,6078],[5234,6118],[5242,6136],[5316,6132],[5404,6169],[5416,6039],[5388,5991],[5305,5946],[5239,5885],[5233,5868],[5258,5816],[5246,5739],[5205,5723],[5169,5696],[5180,5668],[5164,5667],[5157,5668],[5155,5685],[5152,5696],[5153,5744],[5133,5807],[5166,5841],[5184,5880],[5176,5898],[5185,5932],[5182,5982],[5106,6014],[5101,6034],[5189,6063],[5202,6045],[5223,6052],[5220,6006],[5247,5987],[5266,6002],[5268,6044],[5238,6078]]]}},{"type":"Feature","id":"CR","properties":{"hc-group":"admin0","hc-middle-x":0.55,"hc-middle-y":0.31,"hc-key":"cr","hc-a2":"CR","name":"Costa Rica","labelrank":"5","country-abbrev":"C.R.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"CRI","iso-a2":"CR","woe-id":"23424791","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1722,6802],[1727,6789],[1754,6762],[1740,6726],[1740,6726],[1736,6734],[1656,6785],[1661,6807],[1701,6804],[1722,6802]]],[[[1744,6716],[1739,6725],[1740,6725],[1740,6725],[1744,6716]]]]}},{"type":"Feature","id":"BJ","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.49,"hc-key":"bj","hc-a2":"BJ","name":"Benin","labelrank":"5","country-abbrev":"Benin","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"BEN","iso-a2":"BJ","woe-id":"23424764","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4311,6825],[4318,6792],[4286,6746],[4284,6667],[4260,6664],[4252,6662],[4252,6746],[4231,6804],[4247,6818],[4275,6831],[4288,6846],[4311,6825]]]}},{"type":"Feature","id":"NG","properties":{"hc-group":"admin0","hc-middle-x":0.36,"hc-middle-y":0.33,"hc-key":"ng","hc-a2":"NG","name":"Nigeria","labelrank":"2","country-abbrev":"Nigeria","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"NGA","iso-a2":"NG","woe-id":"23424908","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4284,6667],[4286,6746],[4318,6792],[4311,6825],[4326,6878],[4368,6891],[4410,6864],[4436,6874],[4490,6859],[4504,6872],[4543,6875],[4574,6866],[4608,6885],[4621,6866],[4639,6839],[4567,6725],[4540,6669],[4518,6689],[4466,6651],[4459,6621],[4388,6605],[4370,6615],[4335,6666],[4284,6667]]]}},{"type":"Feature","id":"IR","properties":{"hc-group":"admin0","hc-middle-x":0.58,"hc-middle-y":0.51,"hc-key":"ir","hc-a2":"IR","name":"Iran","labelrank":"2","country-abbrev":"Iran","subregion":"Southern Asia","region-wb":"Middle East & North Africa","iso-a3":"IRN","iso-a2":"IR","woe-id":"23424851","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5532,7628],[5516,7656],[5510,7704],[5534,7714],[5552,7692],[5573,7687],[5580,7689],[5584,7687],[5627,7716],[5629,7685],[5654,7672],[5659,7648],[5694,7636],[5720,7614],[5744,7609],[5807,7617],[5804,7634],[5849,7660],[5902,7666],[5906,7656],[5949,7646],[5995,7610],[6020,7608],[6022,7576],[6001,7491],[6009,7439],[6035,7435],[6038,7418],[6010,7386],[6041,7344],[6067,7334],[6076,7283],[6039,7270],[6032,7238],[5982,7242],[5905,7256],[5896,7290],[5876,7301],[5830,7279],[5729,7324],[5690,7397],[5657,7404],[5644,7390],[5619,7423],[5623,7448],[5611,7469],[5577,7487],[5551,7521],[5579,7582],[5549,7589],[5532,7628]]]}},{"type":"Feature","id":"SV","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.55,"hc-key":"sv","hc-a2":"SV","name":"El Salvador","labelrank":"6","country-abbrev":"El. S.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"SLV","iso-a2":"SV","woe-id":"23424807","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1598,6876],[1569,6871],[1530,6886],[1530,6889],[1552,6907],[1601,6889],[1598,6876]]]}},{"type":"Feature","id":"SL","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.48,"hc-key":"sl","hc-a2":"SL","name":"Sierra Leone","labelrank":"4","country-abbrev":"S.L.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SLE","iso-a2":"SL","woe-id":"23424946","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3863,6683],[3820,6702],[3809,6746],[3833,6770],[3870,6774],[3899,6729],[3889,6708],[3863,6683]]]}},{"type":"Feature","id":"GW","properties":{"hc-group":"admin0","hc-middle-x":0.55,"hc-middle-y":0.49,"hc-key":"gw","hc-a2":"GW","name":"Guinea Bissau","labelrank":"6","country-abbrev":"GnB.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"GNB","iso-a2":"GW","woe-id":"23424929","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3758,6803],[3732,6811],[3708,6844],[3753,6854],[3797,6854],[3797,6825],[3767,6819],[3758,6803]]]}},{"type":"Feature","id":"HR","properties":{"hc-group":"admin0","hc-middle-x":0.35,"hc-middle-y":0.59,"hc-key":"hr","hc-a2":"HR","name":"Croatia","labelrank":"6","country-abbrev":"Cro.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"HRV","iso-a2":"HR","woe-id":"23424843","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4753,7811],[4732,7826],[4728,7828],[4734,7826],[4751,7816],[4751,7814],[4753,7811]]],[[[4607,7923],[4659,7921],[4668,7949],[4694,7960],[4719,7940],[4765,7939],[4769,7910],[4768,7900],[4706,7915],[4672,7911],[4685,7876],[4726,7830],[4699,7837],[4645,7875],[4645,7908],[4619,7898],[4607,7923]]]]}},{"type":"Feature","id":"BZ","properties":{"hc-group":"admin0","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"bz","hc-a2":"BZ","name":"Belize","labelrank":"6","country-abbrev":"Belize","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"BLZ","iso-a2":"BZ","woe-id":"23424760","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1558,7009],[1567,7012],[1583,7030],[1586,6984],[1565,6951],[1556,6951],[1558,7009]]]}},{"type":"Feature","id":"ZA","properties":{"hc-group":"admin0","hc-middle-x":0.36,"hc-middle-y":0.7,"hc-key":"za","hc-a2":"ZA","name":"South Africa","labelrank":"2","country-abbrev":"S.Af.","subregion":"Southern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"ZAF","iso-a2":"ZA","woe-id":"23424942","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5157,5668],[5164,5667],[5180,5668],[5165,5613],[5129,5581],[5106,5539],[5061,5492],[5008,5451],[4942,5430],[4874,5436],[4854,5424],[4787,5410],[4753,5441],[4733,5474],[4746,5480],[4744,5511],[4717,5555],[4693,5613],[4711,5630],[4720,5608],[4771,5600],[4797,5617],[4797,5734],[4822,5690],[4818,5666],[4847,5667],[4878,5695],[4887,5716],[4941,5700],[4963,5706],[4972,5734],[5000,5749],[5006,5769],[5041,5799],[5075,5814],[5104,5809],[5133,5807],[5153,5744],[5152,5696],[5137,5702],[5118,5682],[5128,5656],[5157,5668]],[[5040,5608],[5006,5579],[5037,5545],[5078,5588],[5054,5613],[5040,5608]]]}},{"type":"Feature","id":"CF","properties":{"hc-group":"admin0","hc-middle-x":0.47,"hc-middle-y":0.46,"hc-key":"cf","hc-a2":"CF","name":"Central African Republic","labelrank":"4","country-abbrev":"C.A.R.","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"CAF","iso-a2":"CF","woe-id":"23424792","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4882,6802],[4906,6770],[4901,6738],[4921,6735],[4956,6696],[4987,6675],[4988,6658],[5018,6628],[4963,6637],[4872,6602],[4815,6609],[4789,6630],[4754,6606],[4757,6581],[4722,6588],[4696,6581],[4685,6545],[4682,6562],[4654,6590],[4631,6657],[4663,6701],[4702,6702],[4756,6716],[4771,6745],[4810,6749],[4870,6804],[4882,6802]]]}},{"type":"Feature","id":"SD","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.38,"hc-key":"sd","hc-a2":"SD","name":"Sudan","labelrank":"3","country-abbrev":"Sudan","subregion":"Northern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SDN","iso-a2":"SD","woe-id":"-90","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4921,6735],[4901,6738],[4906,6770],[4882,6802],[4863,6856],[4859,6887],[4873,6898],[4889,6945],[4916,6946],[4916,7061],[4916,7076],[4945,7076],[4945,7138],[5131,7138],[5299,7138],[5310,7102],[5318,7037],[5350,7015],[5302,6987],[5285,6928],[5288,6902],[5276,6855],[5263,6854],[5238,6796],[5230,6801],[5215,6758],[5189,6800],[5190,6840],[5156,6834],[5166,6806],[5131,6768],[5095,6783],[5060,6754],[4992,6760],[4970,6787],[4948,6783],[4921,6735]]]}},{"type":"Feature","id":"CD","properties":{"hc-group":"admin0","hc-middle-x":0.58,"hc-middle-y":0.42,"hc-key":"cd","hc-a2":"CD","name":"Democratic Republic of the Congo","labelrank":"2","country-abbrev":"D.R.C.","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"COD","iso-a2":"CD","woe-id":"23424780","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5071,6380],[5067,6329],[5079,6281],[5111,6236],[5061,6228],[5045,6210],[5050,6201],[5056,6189],[5046,6140],[5066,6112],[5088,6119],[5088,6081],[5070,6080],[5011,6136],[4996,6123],[4956,6134],[4955,6147],[4925,6142],[4915,6157],[4864,6146],[4862,6185],[4851,6201],[4850,6264],[4783,6272],[4778,6242],[4726,6239],[4708,6263],[4697,6304],[4595,6306],[4573,6300],[4566,6309],[4573,6330],[4592,6342],[4631,6353],[4644,6337],[4685,6381],[4686,6416],[4731,6463],[4740,6542],[4757,6581],[4754,6606],[4789,6630],[4815,6609],[4872,6602],[4963,6637],[5018,6628],[5046,6605],[5088,6613],[5119,6582],[5115,6551],[5132,6543],[5109,6523],[5108,6515],[5093,6503],[5085,6476],[5074,6464],[5084,6465],[5081,6452],[5082,6438],[5075,6434],[5071,6429],[5063,6421],[5061,6406],[5061,6400],[5065,6398],[5072,6389],[5071,6380]]]}},{"type":"Feature","id":"KW","properties":{"hc-group":"admin0","hc-middle-x":0.61,"hc-middle-y":0.4,"hc-key":"kw","hc-a2":"KW","name":"Kuwait","labelrank":"6","country-abbrev":"Kwt.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"KWT","iso-a2":"KW","woe-id":"23424870","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5641,7344],[5612,7358],[5585,7362],[5602,7390],[5627,7391],[5631,7370],[5641,7344]]]}},{"type":"Feature","id":"DE","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.34,"hc-key":"de","hc-a2":"DE","name":"Germany","labelrank":"2","country-abbrev":"Ger.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"DEU","iso-a2":"DE","woe-id":"23424829","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4477,8004],[4477,8003],[4477,8003],[4477,8004]]],[[[4461,8288],[4466,8289],[4484,8285],[4544,8248],[4575,8271],[4609,8275],[4620,8254],[4626,8249],[4625,8248],[4625,8247],[4621,8251],[4627,8239],[4623,8205],[4639,8194],[4644,8126],[4575,8108],[4571,8083],[4614,8045],[4582,8021],[4591,7997],[4565,8005],[4530,7993],[4492,7999],[4473,8009],[4477,8004],[4455,8001],[4429,8001],[4447,8053],[4392,8072],[4397,8085],[4386,8097],[4393,8105],[4382,8122],[4393,8164],[4412,8180],[4417,8221],[4422,8240],[4458,8233],[4471,8247],[4461,8288]]]]}},{"type":"Feature","id":"BE","properties":{"hc-group":"admin0","hc-middle-x":0.54,"hc-middle-y":0.4,"hc-key":"be","hc-a2":"BE","name":"Belgium","labelrank":"2","country-abbrev":"Belg.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"BEL","iso-a2":"BE","woe-id":"23424757","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4382,8122],[4393,8105],[4386,8097],[4374,8088],[4376,8075],[4327,8092],[4279,8135],[4297,8145],[4303,8146],[4317,8140],[4329,8146],[4331,8144],[4330,8146],[4353,8150],[4382,8122]]]}},{"type":"Feature","id":"IE","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.48,"hc-key":"ie","hc-a2":"IE","name":"Ireland","labelrank":"3","country-abbrev":"Ire.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"IRL","iso-a2":"IE","woe-id":"23424803","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[3989,8295],[3961,8270],[3987,8256],[4018,8256],[4026,8209],[4015,8179],[3979,8174],[3946,8154],[3913,8149],[3895,8167],[3939,8222],[3907,8226],[3912,8265],[3948,8262],[3958,8299],[3989,8295]]]}},{"type":"Feature","id":"KP","properties":{"hc-group":"admin0","hc-middle-x":0.32,"hc-middle-y":0.63,"hc-key":"kp","hc-a2":"KP","name":"North Korea","labelrank":"3","country-abbrev":"N.K.","subregion":"Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"PRK","iso-a2":"KP","woe-id":"23424865","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[8083,7807],[8051,7781],[8053,7755],[7988,7717],[7986,7697],[8013,7678],[7978,7667],[7963,7651],[7931,7658],[7924,7646],[7907,7675],[7927,7702],[7895,7730],[7943,7758],[7962,7785],[8007,7774],[8004,7796],[8053,7812],[8057,7831],[8078,7815],[8081,7811],[8083,7807]]]}},{"type":"Feature","id":"KR","properties":{"hc-group":"admin0","hc-middle-x":0.54,"hc-middle-y":0.5,"hc-key":"kr","hc-a2":"KR","name":"South Korea","labelrank":"2","country-abbrev":"S.K.","subregion":"Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"KOR","iso-a2":"KR","woe-id":"23424868","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7963,7651],[7978,7667],[8013,7678],[8042,7632],[8046,7573],[8021,7546],[8004,7553],[7987,7536],[7955,7542],[7963,7651]]]}},{"type":"Feature","id":"GY","properties":{"hc-group":"admin0","hc-middle-x":0.26,"hc-middle-y":0.07,"hc-key":"gy","hc-a2":"GY","name":"Guyana","labelrank":"4","country-abbrev":"Guy.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"GUY","iso-a2":"GY","woe-id":"23424836","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[2423,6732],[2450,6715],[2507,6658],[2505,6641],[2481,6602],[2528,6536],[2509,6538],[2459,6514],[2431,6534],[2423,6558],[2437,6595],[2424,6629],[2401,6632],[2382,6653],[2387,6672],[2415,6689],[2408,6709],[2423,6732]]]}},{"type":"Feature","id":"HN","properties":{"hc-group":"admin0","hc-middle-x":0.71,"hc-middle-y":0.09,"hc-key":"hn","hc-a2":"HN","name":"Honduras","labelrank":"5","country-abbrev":"Hond.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"HND","iso-a2":"HN","woe-id":"23424841","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1586,6946],[1654,6955],[1702,6949],[1737,6924],[1688,6919],[1660,6893],[1630,6887],[1613,6864],[1607,6873],[1598,6876],[1601,6889],[1552,6907],[1558,6926],[1586,6946]]]}},{"type":"Feature","id":"MM","properties":{"hc-group":"admin0","hc-middle-x":0.17,"hc-middle-y":0.49,"hc-key":"mm","hc-a2":"MM","name":"Myanmar","labelrank":"3","country-abbrev":"Myan.","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"MMR","iso-a2":"MM","woe-id":"23424763","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6942,7109],[6953,7116],[6951,7137],[6969,7150],[6973,7200],[6996,7195],[7023,7255],[7024,7278],[7074,7306],[7092,7333],[7098,7343],[7132,7313],[7133,7260],[7103,7234],[7101,7195],[7130,7203],[7138,7175],[7157,7171],[7146,7143],[7170,7139],[7177,7120],[7206,7124],[7193,7117],[7175,7086],[7128,7066],[7113,7070],[7095,7030],[7137,6959],[7119,6918],[7146,6886],[7161,6829],[7134,6785],[7129,6870],[7106,6921],[7102,6963],[7088,6985],[7036,6946],[7000,6955],[7012,7001],[6993,7058],[6965,7077],[6942,7109]]]}},{"type":"Feature","id":"GA","properties":{"hc-group":"admin0","hc-middle-x":0.36,"hc-middle-y":0.65,"hc-key":"ga","hc-a2":"GA","name":"Gabon","labelrank":"4","country-abbrev":"Gabon","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"GAB","iso-a2":"GA","woe-id":"23424822","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4495,6508],[4540,6508],[4540,6543],[4541,6547],[4599,6542],[4597,6515],[4633,6506],[4614,6473],[4634,6461],[4622,6405],[4573,6423],[4547,6410],[4555,6369],[4534,6363],[4479,6425],[4462,6461],[4479,6467],[4480,6495],[4495,6508]]]}},{"type":"Feature","id":"GQ","properties":{"hc-group":"admin0","hc-middle-x":0.53,"hc-middle-y":0.55,"hc-key":"gq","hc-a2":"GQ","name":"Equatorial Guinea","labelrank":"4","country-abbrev":"Eq. G.","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"GNQ","iso-a2":"GQ","woe-id":"23424804","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4540,6543],[4540,6508],[4495,6508],[4481,6514],[4495,6548],[4500,6543],[4540,6543]]]}},{"type":"Feature","id":"NI","properties":{"hc-group":"admin0","hc-middle-x":0.84,"hc-middle-y":0.5,"hc-key":"ni","hc-a2":"NI","name":"Nicaragua","labelrank":"5","country-abbrev":"Nic.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"NIC","iso-a2":"NI","woe-id":"23424915","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1661,6807],[1603,6860],[1613,6864],[1630,6887],[1660,6893],[1688,6919],[1737,6924],[1715,6816],[1722,6802],[1701,6804],[1661,6807]]]}},{"type":"Feature","id":"LV","properties":{"hc-group":"admin0","hc-middle-x":0.05,"hc-middle-y":0.36,"hc-key":"lv","hc-a2":"LV","name":"Latvia","labelrank":"5","country-abbrev":"Lat.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"LVA","iso-a2":"LV","woe-id":"23424874","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[5016,8399],[5024,8370],[5039,8340],[5023,8325],[4993,8320],[4942,8353],[4929,8345],[4860,8352],[4829,8337],[4829,8370],[4849,8401],[4875,8408],[4907,8375],[4927,8386],[4925,8413],[4954,8422],[4990,8398],[5016,8399]]]}},{"type":"Feature","id":"UG","properties":{"hc-group":"admin0","hc-middle-x":0.16,"hc-middle-y":0.56,"hc-key":"ug","hc-a2":"UG","name":"Uganda","labelrank":"3","country-abbrev":"Uga.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"UGA","iso-a2":"UG","woe-id":"23424974","continent":"Africa"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5148,6449],[5148,6450],[5149,6449],[5148,6449]]],[[[5082,6438],[5081,6452],[5084,6465],[5091,6474],[5085,6476],[5093,6503],[5108,6515],[5136,6535],[5132,6543],[5115,6551],[5119,6582],[5198,6589],[5212,6603],[5240,6552],[5242,6527],[5213,6486],[5171,6483],[5147,6449],[5119,6449],[5108,6447],[5092,6435],[5082,6438]]]]}},{"type":"Feature","id":"MW","properties":{"hc-group":"admin0","hc-middle-x":0.16,"hc-middle-y":0.29,"hc-key":"mw","hc-a2":"MW","name":"Malawi","labelrank":"6","country-abbrev":"Mal.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"MWI","iso-a2":"MW","woe-id":"23424889","continent":"Africa"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5240,6141],[5240,6141],[5240,6141],[5240,6141]]],[[[5235,6145],[5235,6146],[5234,6146],[5235,6145],[5235,6145]]],[[[5222,6192],[5219,6195],[5219,6195],[5222,6192]]],[[[5216,6197],[5215,6198],[5215,6197],[5216,6197]]],[[[5181,6201],[5195,6195],[5210,6191],[5223,6133],[5222,6082],[5238,6078],[5268,6044],[5266,6002],[5247,5987],[5220,6006],[5223,6052],[5202,6045],[5189,6063],[5178,6072],[5194,6107],[5190,6157],[5203,6166],[5181,6201]]]]}},{"type":"Feature","id":"AM","properties":{"hc-group":"admin0","hc-middle-x":0.1,"hc-middle-y":0.12,"hc-key":"am","hc-a2":"AM","name":"Armenia","labelrank":"6","country-abbrev":"Arm.","subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"ARM","iso-a2":"AM","woe-id":"23424743","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5584,7687],[5580,7689],[5573,7687],[5563,7710],[5533,7716],[5500,7730],[5493,7765],[5515,7769],[5539,7771],[5568,7734],[5558,7727],[5584,7687]],[[5540,7763],[5540,7764],[5538,7764],[5539,7762],[5540,7763]],[[5546,7760],[5545,7761],[5545,7761],[5545,7760],[5546,7760]],[[5554,7747],[5555,7747],[5556,7749],[5554,7749],[5554,7747]]]}},{"type":"Feature","id":"SX","properties":{"hc-group":"admin0","hc-middle-x":0.76,"hc-middle-y":0.53,"hc-key":"sx","hc-a2":"SX","name":"Somaliland","labelrank":"5","country-abbrev":"Solnd.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"-99","iso-a2":"SX","woe-id":"-99","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5487,6819],[5518,6788],[5562,6801],[5582,6795],[5611,6810],[5656,6812],[5656,6758],[5628,6715],[5598,6715],[5510,6744],[5470,6793],[5478,6804],[5487,6819]]]}},{"type":"Feature","id":"TM","properties":{"hc-group":"admin0","hc-middle-x":0.4,"hc-middle-y":0.42,"hc-key":"tm","hc-a2":"TM","name":"Turkmenistan","labelrank":"4","country-abbrev":"Turkm.","subregion":"Central Asia","region-wb":"Europe & Central Asia","iso-a3":"TKM","iso-a2":"TM","woe-id":"23424972","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5898,7794],[5921,7785],[5915,7802],[5943,7825],[5981,7807],[5987,7775],[6043,7761],[6057,7726],[6151,7665],[6179,7658],[6178,7635],[6156,7642],[6126,7626],[6117,7598],[6052,7560],[6022,7576],[6020,7608],[5995,7610],[5949,7646],[5906,7656],[5902,7666],[5849,7660],[5804,7634],[5806,7688],[5794,7724],[5769,7728],[5775,7760],[5798,7748],[5828,7765],[5803,7799],[5792,7800],[5792,7800],[5812,7808],[5851,7770],[5865,7773],[5896,7770],[5898,7794]]],[[[5780,7795],[5782,7800],[5792,7800],[5792,7800],[5780,7795],[5780,7795],[5780,7795]]],[[[5780,7795],[5771,7775],[5760,7788],[5780,7795],[5780,7795],[5780,7795]]]]}},{"type":"Feature","id":"ZM","properties":{"hc-group":"admin0","hc-middle-x":0.36,"hc-middle-y":0.58,"hc-key":"zm","hc-a2":"ZM","name":"Zambia","labelrank":"3","country-abbrev":"Zambia","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"ZMB","iso-a2":"ZM","woe-id":"23425003","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5050,6201],[5069,6222],[5061,6228],[5111,6236],[5125,6219],[5129,6225],[5153,6211],[5181,6201],[5203,6166],[5190,6157],[5194,6107],[5178,6072],[5189,6063],[5101,6034],[5106,6014],[5060,6001],[5058,5987],[5038,5977],[5022,5969],[5006,5944],[4996,5940],[4954,5949],[4923,5958],[4898,5953],[4856,5998],[4856,6093],[4916,6093],[4915,6157],[4925,6142],[4955,6147],[4956,6134],[4996,6123],[5011,6136],[5070,6080],[5088,6081],[5088,6119],[5066,6112],[5046,6140],[5056,6189],[5050,6201]]]}},{"type":"Feature","id":"NC","properties":{"hc-group":"admin0","hc-middle-x":0.56,"hc-middle-y":0.71,"hc-key":"nc","hc-a2":"NC","name":"Northern Cyprus","labelrank":"6","country-abbrev":"N. Cy.","subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"-99","iso-a2":"NC","woe-id":"-90","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5210,7558],[5206,7556],[5203,7556],[5196,7562],[5175,7561],[5175,7561],[5175,7561],[5175,7561],[5175,7561],[5175,7561],[5231,7579],[5213,7557],[5210,7558]]],[[[5171,7561],[5173,7562],[5172,7561],[5171,7561]]]]}},{"type":"Feature","id":"MR","properties":{"hc-group":"admin0","hc-middle-x":0.61,"hc-middle-y":0.63,"hc-key":"mr","hc-a2":"MR","name":"Mauritania","labelrank":"3","country-abbrev":"Mrt.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"MRT","iso-a2":"MR","woe-id":"23424896","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3946,7304],[4040,7245],[4061,7231],[4008,7231],[4040,6939],[3886,6937],[3856,6941],[3840,6917],[3779,6974],[3719,6968],[3713,6949],[3728,7014],[3714,7058],[3723,7083],[3698,7100],[3701,7117],[3818,7117],[3818,7170],[3847,7183],[3847,7263],[3946,7263],[3946,7304]]]}},{"type":"Feature","id":"DZ","properties":{"hc-group":"admin0","hc-middle-x":0.63,"hc-middle-y":0.5,"hc-key":"dz","hc-a2":"DZ","name":"Algeria","labelrank":"3","country-abbrev":"Alg.","subregion":"Northern Africa","region-wb":"Middle East & North Africa","iso-a3":"DZA","iso-a2":"DZ","woe-id":"23424740","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4061,7231],[4040,7245],[3946,7304],[3946,7316],[3946,7348],[3977,7371],[4033,7378],[4096,7414],[4095,7444],[4129,7460],[4167,7459],[4173,7473],[4154,7497],[4151,7547],[4138,7558],[4235,7605],[4291,7616],[4346,7619],[4359,7611],[4423,7626],[4459,7621],[4452,7604],[4448,7543],[4426,7518],[4451,7473],[4472,7458],[4486,7398],[4496,7363],[4496,7279],[4483,7267],[4502,7227],[4546,7209],[4559,7185],[4426,7103],[4376,7059],[4329,7050],[4296,7050],[4299,7070],[4260,7083],[4238,7110],[4061,7231]]]}},{"type":"Feature","id":"LT","properties":{"hc-group":"admin0","hc-middle-x":0.27,"hc-middle-y":0.06,"hc-key":"lt","hc-a2":"LT","name":"Lithuania","labelrank":"5","country-abbrev":"Lith.","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"LTU","iso-a2":"LT","woe-id":"23424875","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4835,8303],[4832,8321],[4829,8337],[4860,8352],[4929,8345],[4942,8353],[4993,8320],[4998,8305],[4972,8290],[4960,8264],[4927,8247],[4901,8249],[4900,8258],[4880,8266],[4881,8288],[4835,8303]]],[[[4825,8304],[4830,8313],[4827,8304],[4825,8304]]]]}},{"type":"Feature","id":"ET","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.58,"hc-key":"et","hc-a2":"ET","name":"Ethiopia","labelrank":"2","country-abbrev":"Eth.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"ETH","iso-a2":"ET","woe-id":"23424808","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5444,6813],[5441,6810],[5444,6807],[5449,6802],[5478,6804],[5470,6793],[5510,6744],[5598,6715],[5628,6715],[5538,6624],[5509,6625],[5447,6596],[5414,6605],[5377,6579],[5335,6585],[5297,6609],[5270,6615],[5235,6675],[5205,6705],[5185,6709],[5190,6729],[5211,6728],[5215,6758],[5230,6801],[5238,6796],[5263,6854],[5276,6855],[5288,6902],[5328,6921],[5416,6897],[5462,6848],[5443,6820],[5444,6813]]]}},{"type":"Feature","id":"ER","properties":{"hc-group":"admin0","hc-middle-x":0.29,"hc-middle-y":0.05,"hc-key":"er","hc-a2":"ER","name":"Eritrea","labelrank":"4","country-abbrev":"Erit.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"ERI","iso-a2":"ER","woe-id":"23424806","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5462,6848],[5416,6897],[5328,6921],[5288,6902],[5285,6928],[5302,6987],[5350,7015],[5382,6928],[5426,6913],[5484,6855],[5471,6845],[5462,6848]]]}},{"type":"Feature","id":"GH","properties":{"hc-group":"admin0","hc-middle-x":0.13,"hc-middle-y":0.77,"hc-key":"gh","hc-a2":"GH","name":"Ghana","labelrank":"3","country-abbrev":"Ghana","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"GHA","iso-a2":"GH","woe-id":"23424824","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4239,6659],[4142,6618],[4111,6629],[4112,6629],[4116,6629],[4120,6631],[4108,6681],[4130,6721],[4124,6759],[4122,6804],[4199,6808],[4215,6781],[4219,6681],[4239,6659]]]}},{"type":"Feature","id":"SI","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.57,"hc-key":"si","hc-a2":"SI","name":"Slovenia","labelrank":"6","country-abbrev":"Slo.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"SVN","iso-a2":"SI","woe-id":"23424945","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4607,7923],[4607,7925],[4611,7927],[4601,7952],[4611,7961],[4635,7956],[4682,7974],[4687,7974],[4694,7960],[4668,7949],[4659,7921],[4607,7923]]]}},{"type":"Feature","id":"GT","properties":{"hc-group":"admin0","hc-middle-x":0.44,"hc-middle-y":0.87,"hc-key":"gt","hc-a2":"GT","name":"Guatemala","labelrank":"3","country-abbrev":"Guat.","subregion":"Central America","region-wb":"Latin America & Caribbean","iso-a3":"GTM","iso-a2":"GT","woe-id":"23424834","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1565,6951],[1574,6947],[1586,6946],[1558,6926],[1552,6907],[1530,6889],[1530,6886],[1494,6893],[1466,6911],[1482,6956],[1522,6966],[1491,6992],[1504,7009],[1558,7009],[1556,6951],[1565,6951]]]}},{"type":"Feature","id":"BA","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.48,"hc-key":"ba","hc-a2":"BA","name":"Bosnia and Herzegovina","labelrank":"5","country-abbrev":"B.H.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"BIH","iso-a2":"BA","woe-id":"23424761","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4728,7828],[4725,7830],[4726,7830],[4685,7876],[4672,7911],[4706,7915],[4768,7900],[4779,7901],[4774,7851],[4752,7832],[4751,7816],[4734,7826],[4728,7828]]]}},{"type":"Feature","id":"JO","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.85,"hc-key":"jo","hc-a2":"JO","name":"Jordan","labelrank":"4","country-abbrev":"Jord.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"JOR","iso-a2":"JO","woe-id":"23424860","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5255,7426],[5258,7429],[5255,7431],[5254,7432],[5255,7434],[5259,7434],[5259,7448],[5259,7477],[5265,7480],[5296,7466],[5355,7501],[5363,7472],[5366,7460],[5301,7439],[5331,7407],[5274,7365],[5241,7370],[5243,7376],[5241,7377],[5247,7405],[5255,7426]]]}},{"type":"Feature","id":"SY","properties":{"hc-group":"admin0","hc-middle-x":0.25,"hc-middle-y":0.54,"hc-key":"sy","hc-a2":"SY","name":"Syria","labelrank":"3","country-abbrev":"Syria","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"SYR","iso-a2":"SY","woe-id":"23424956","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5355,7501],[5296,7466],[5265,7480],[5269,7487],[5267,7502],[5290,7529],[5271,7544],[5270,7569],[5270,7586],[5291,7617],[5338,7620],[5384,7614],[5457,7634],[5461,7627],[5432,7606],[5427,7548],[5412,7533],[5355,7501]]]}},{"type":"Feature","id":"MC","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.67,"hc-key":"mc","hc-a2":"MC","name":"Monaco","labelrank":"6","country-abbrev":"Mco.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"MCO","iso-a2":"MC","woe-id":"23424892","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4425,7859],[4424,7858],[4423,7858],[4424,7860],[4425,7859]]]}},{"type":"Feature","id":"AL","properties":{"hc-group":"admin0","hc-middle-x":0.39,"hc-middle-y":0.49,"hc-key":"al","hc-a2":"AL","name":"Albania","labelrank":"6","country-abbrev":"Alb.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"ALB","iso-a2":"AL","woe-id":"23424742","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4826,7757],[4826,7757],[4825,7758],[4826,7757]]],[[[4779,7800],[4779,7805],[4780,7808],[4789,7820],[4799,7816],[4812,7804],[4814,7792],[4811,7781],[4816,7764],[4817,7758],[4819,7758],[4822,7758],[4825,7758],[4825,7757],[4826,7756],[4826,7756],[4824,7753],[4826,7754],[4826,7753],[4828,7750],[4827,7750],[4828,7750],[4809,7720],[4798,7715],[4777,7749],[4779,7791],[4778,7795],[4779,7800]]],[[[4779,7807],[4779,7807],[4779,7806],[4779,7807]]]]}},{"type":"Feature","id":"UY","properties":{"hc-group":"admin0","hc-middle-x":0.81,"hc-middle-y":0.63,"hc-key":"uy","hc-a2":"UY","name":"Uruguay","labelrank":"4","country-abbrev":"Ury.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"URY","iso-a2":"UY","woe-id":"23424979","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[2626,5480],[2612,5465],[2615,5450],[2615,5447],[2620,5444],[2608,5422],[2573,5404],[2537,5404],[2487,5420],[2471,5437],[2477,5487],[2477,5505],[2494,5561],[2517,5563],[2542,5531],[2554,5539],[2626,5480]]]}},{"type":"Feature","id":"CNM","properties":{"hc-group":"admin0","hc-middle-x":0.39,"hc-middle-y":0.11,"hc-key":"cnm","hc-a2":"CN","name":"Cyprus No Mans Area","labelrank":"9","country-abbrev":null,"subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"-99","iso-a2":null,"woe-id":"-99","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5213,7557],[5214,7557],[5213,7557],[5210,7557],[5210,7558],[5213,7557]]],[[[5171,7561],[5171,7561],[5172,7561],[5173,7562],[5173,7562],[5172,7560],[5171,7561]]],[[[5175,7561],[5174,7561],[5175,7561],[5175,7561],[5175,7561],[5175,7561]]],[[[5203,7556],[5205,7555],[5204,7555],[5196,7561],[5175,7561],[5175,7561],[5196,7562],[5203,7556]]]]}},{"type":"Feature","id":"MN","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.53,"hc-key":"mn","hc-a2":"MN","name":"Mongolia","labelrank":"3","country-abbrev":"Mong.","subregion":"Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"MNG","iso-a2":"MN","woe-id":"23424887","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7691,8008],[7702,8011],[7698,8015],[7722,8015],[7762,7975],[7756,7963],[7714,7968],[7664,7953],[7637,7921],[7603,7919],[7575,7895],[7528,7908],[7511,7885],[7526,7857],[7453,7813],[7372,7807],[7326,7787],[7282,7788],[7232,7803],[7220,7815],[7064,7822],[7034,7879],[6979,7903],[6901,7912],[6906,7963],[6885,8003],[6847,8016],[6814,8039],[6810,8061],[6945,8127],[7001,8115],[7011,8094],[7093,8083],[7121,8113],[7106,8132],[7139,8176],[7237,8144],[7239,8117],[7280,8098],[7330,8111],[7407,8090],[7425,8067],[7490,8060],[7559,8077],[7596,8104],[7628,8089],[7667,8086],[7632,8021],[7642,8005],[7691,8008]]]}},{"type":"Feature","id":"RW","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.56,"hc-key":"rw","hc-a2":"RW","name":"Rwanda","labelrank":"3","country-abbrev":"Rwa.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"RWA","iso-a2":"RW","woe-id":"23424937","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5065,6398],[5061,6400],[5061,6406],[5075,6419],[5071,6429],[5075,6434],[5082,6438],[5092,6435],[5108,6447],[5119,6432],[5111,6408],[5091,6400],[5065,6398]]]}},{"type":"Feature","id":"SO","properties":{"hc-group":"admin0","hc-middle-x":0.39,"hc-middle-y":0.74,"hc-key":"so","hc-a2":"SO","name":"Somalia","labelrank":"6","country-abbrev":"Som.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SOM","iso-a2":"SO","woe-id":"-90","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5447,6596],[5509,6625],[5538,6624],[5628,6715],[5656,6758],[5656,6812],[5726,6829],[5713,6758],[5627,6610],[5570,6551],[5494,6497],[5437,6429],[5420,6453],[5420,6562],[5447,6596]]]}},{"type":"Feature","id":"BO","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.59,"hc-key":"bo","hc-a2":"BO","name":"Bolivia","labelrank":"3","country-abbrev":"Bolivia","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"BOL","iso-a2":"BO","woe-id":"23424762","continent":"South America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2153,5996],[2153,6001],[2157,5996],[2155,5997],[2153,5996]]],[[[2141,5957],[2137,5964],[2155,5986],[2169,5993],[2145,6017],[2160,6058],[2153,6073],[2166,6108],[2139,6155],[2177,6154],[2226,6186],[2262,6192],[2263,6149],[2293,6110],[2332,6104],[2369,6077],[2409,6069],[2419,5995],[2469,5993],[2471,5965],[2496,5937],[2478,5876],[2450,5903],[2371,5892],[2356,5864],[2345,5812],[2307,5819],[2295,5792],[2287,5813],[2238,5826],[2210,5794],[2189,5794],[2180,5842],[2163,5868],[2173,5898],[2157,5913],[2141,5957]]]]}},{"type":"Feature","id":"CM","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.81,"hc-key":"cm","hc-a2":"CM","name":"Cameroon","labelrank":"3","country-abbrev":"Cam.","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"CMR","iso-a2":"CM","woe-id":"23424785","continent":"Africa"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4599,6542],[4541,6547],[4540,6543],[4500,6543],[4495,6548],[4490,6593],[4459,6621],[4466,6651],[4518,6689],[4540,6669],[4567,6725],[4639,6839],[4621,6866],[4629,6866],[4627,6861],[4634,6863],[4653,6820],[4651,6798],[4669,6774],[4625,6774],[4618,6764],[4655,6729],[4663,6701],[4631,6657],[4654,6590],[4682,6562],[4685,6545],[4684,6530],[4636,6544],[4599,6542]]],[[[4631,6866],[4631,6866],[4630,6866],[4631,6866]]]]}},{"type":"Feature","id":"CG","properties":{"hc-group":"admin0","hc-middle-x":0.15,"hc-middle-y":0.78,"hc-key":"cg","hc-a2":"CG","name":"Republic of Congo","labelrank":"4","country-abbrev":"Rep. Congo","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"COG","iso-a2":"CG","woe-id":"23424779","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4599,6542],[4636,6544],[4684,6530],[4685,6545],[4696,6581],[4722,6588],[4757,6581],[4740,6542],[4731,6463],[4686,6416],[4685,6381],[4644,6337],[4631,6353],[4592,6342],[4583,6349],[4560,6331],[4554,6344],[4534,6363],[4555,6369],[4547,6410],[4573,6423],[4622,6405],[4634,6461],[4614,6473],[4633,6506],[4597,6515],[4599,6542]]]}},{"type":"Feature","id":"EH","properties":{"hc-group":"admin0","hc-middle-x":0.41,"hc-middle-y":0.71,"hc-key":"eh","hc-a2":"EH","name":"Western Sahara","labelrank":"7","country-abbrev":"W. Sah.","subregion":"Northern Africa","region-wb":"Middle East & North Africa","iso-a3":"ESH","iso-a2":"EH","woe-id":"23424990","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3698,7100],[3696,7103],[3699,7120],[3764,7121],[3782,7148],[3788,7182],[3835,7226],[3847,7264],[3866,7291],[3915,7290],[3943,7298],[3946,7316],[3946,7304],[3946,7263],[3847,7263],[3847,7183],[3818,7170],[3818,7117],[3701,7117],[3698,7100]]]}},{"type":"Feature","id":"RS","properties":{"hc-group":"admin0","hc-middle-x":0.42,"hc-middle-y":0.52,"hc-key":"rs","hc-a2":"RS","name":"Republic of Serbia","labelrank":"5","country-abbrev":"Serb.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"SRB","iso-a2":"RS","woe-id":"-90","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4774,7851],[4779,7901],[4768,7900],[4769,7910],[4765,7939],[4784,7948],[4805,7946],[4842,7910],[4839,7897],[4877,7877],[4867,7861],[4885,7836],[4867,7808],[4855,7808],[4844,7805],[4850,7820],[4820,7842],[4808,7826],[4786,7839],[4774,7851]]]}},{"type":"Feature","id":"ME","properties":{"hc-group":"admin0","hc-middle-x":0.42,"hc-middle-y":0.47,"hc-key":"me","hc-a2":"ME","name":"Montenegro","labelrank":"6","country-abbrev":"Mont.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"MNE","iso-a2":"ME","woe-id":"20069817","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4774,7851],[4786,7839],[4808,7826],[4798,7822],[4799,7816],[4789,7820],[4780,7808],[4779,7807],[4779,7806],[4772,7806],[4779,7800],[4778,7795],[4779,7791],[4761,7806],[4753,7811],[4751,7814],[4751,7816],[4752,7832],[4774,7851]]]}},{"type":"Feature","id":"TG","properties":{"hc-group":"admin0","hc-middle-x":0.76,"hc-middle-y":0.81,"hc-key":"tg","hc-a2":"TG","name":"Togo","labelrank":"6","country-abbrev":"Togo","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"TGO","iso-a2":"TG","woe-id":"23424965","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4231,6804],[4252,6746],[4252,6662],[4246,6661],[4239,6659],[4219,6681],[4215,6781],[4199,6808],[4218,6804],[4231,6804]]]}},{"type":"Feature","id":"LA","properties":{"hc-group":"admin0","hc-middle-x":0.88,"hc-middle-y":0.79,"hc-key":"la","hc-a2":"LA","name":"Laos","labelrank":"4","country-abbrev":"Laos","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"LAO","iso-a2":"LA","woe-id":"23424872","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[7395,6915],[7374,6904],[7325,6904],[7338,6946],[7313,6970],[7315,6996],[7290,7025],[7272,7029],[7249,7010],[7233,7022],[7205,6999],[7209,7061],[7186,7062],[7175,7086],[7193,7117],[7206,7124],[7222,7111],[7217,7146],[7234,7150],[7260,7125],[7264,7103],[7292,7106],[7319,7079],[7286,7055],[7311,7039],[7365,6984],[7399,6932],[7395,6915]]]}},{"type":"Feature","id":"AF","properties":{"hc-group":"admin0","hc-middle-x":0.37,"hc-middle-y":0.52,"hc-key":"af","hc-a2":"AF","name":"Afghanistan","labelrank":"3","country-abbrev":"Afg.","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"AFG","iso-a2":"AF","woe-id":"23424739","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6426,7631],[6411,7627],[6416,7624],[6357,7617],[6316,7590],[6330,7562],[6313,7524],[6281,7523],[6290,7499],[6268,7491],[6261,7454],[6226,7450],[6173,7421],[6168,7385],[6106,7371],[6058,7372],[6010,7386],[6038,7418],[6035,7435],[6009,7439],[6001,7491],[6022,7576],[6052,7560],[6117,7598],[6126,7626],[6156,7642],[6178,7635],[6200,7629],[6215,7629],[6259,7626],[6285,7641],[6299,7669],[6329,7653],[6329,7613],[6379,7639],[6426,7631]]]}},{"type":"Feature","id":"UA","properties":{"hc-group":"admin0","hc-middle-x":0.7,"hc-middle-y":0.46,"hc-key":"ua","hc-a2":"UA","name":"Ukraine","labelrank":"3","country-abbrev":"Ukr.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"UKR","iso-a2":"UA","woe-id":"23424976","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4861,8032],[4866,8042],[4873,8057],[4876,8075],[4919,8114],[4905,8152],[4928,8166],[4969,8168],[5013,8155],[5074,8146],[5110,8154],[5122,8174],[5147,8175],[5207,8185],[5225,8161],[5218,8142],[5245,8140],[5262,8106],[5315,8109],[5367,8087],[5395,8064],[5382,8045],[5384,8010],[5356,8011],[5338,7983],[5269,7966],[5237,7948],[5260,7909],[5212,7882],[5179,7928],[5206,7939],[5146,7950],[5163,7959],[5129,7965],[5089,7927],[5084,7913],[5059,7914],[5041,7922],[5063,7958],[5097,7955],[5068,7999],[5072,8011],[5028,8033],[4994,8026],[4954,8013],[4883,8014],[4875,8020],[4861,8032]],[[5098,7955],[5107,7945],[5109,7947],[5100,7956],[5098,7955]],[[5213,7945],[5242,7929],[5237,7943],[5218,7952],[5213,7945]]]}},{"type":"Feature","id":"SK","properties":{"hc-group":"admin0","hc-middle-x":0.21,"hc-middle-y":0.52,"hc-key":"sk","hc-a2":"SK","name":"Slovakia","labelrank":"6","country-abbrev":"Svk.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"SVK","iso-a2":"SK","woe-id":"23424877","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4873,8057],[4866,8042],[4861,8032],[4812,8036],[4795,8021],[4733,8007],[4713,8017],[4704,8030],[4707,8039],[4741,8058],[4763,8074],[4852,8069],[4873,8057]]]}},{"type":"Feature","id":"JK","properties":{"hc-group":"admin0","hc-middle-x":0.4,"hc-middle-y":0.63,"hc-key":"jk","hc-a2":"JK","name":"Siachen Glacier","labelrank":"5","country-abbrev":"Siachen","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"-99","iso-a2":"JK","woe-id":"23424928","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6513,7572],[6490,7559],[6482,7577],[6500,7571],[6513,7572]]]}},{"type":"Feature","id":"BG","properties":{"hc-group":"admin0","hc-middle-x":0.76,"hc-middle-y":0.51,"hc-key":"bg","hc-a2":"BG","name":"Bulgaria","labelrank":"4","country-abbrev":"Bulg.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"BGR","iso-a2":"BG","woe-id":"23424771","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[5052,7859],[5026,7812],[5035,7796],[5007,7799],[4985,7786],[4953,7770],[4931,7781],[4884,7773],[4887,7787],[4867,7808],[4885,7836],[4867,7861],[4877,7877],[4896,7864],[4957,7856],[5006,7875],[5052,7859]]]}},{"type":"Feature","id":"QA","properties":{"hc-group":"admin0","hc-middle-x":0.36,"hc-middle-y":0.46,"hc-key":"qa","hc-a2":"QA","name":"Qatar","labelrank":"5","country-abbrev":"Qatar","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"QAT","iso-a2":"QA","woe-id":"23424930","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5712,7224],[5710,7247],[5735,7259],[5724,7220],[5717,7218],[5712,7224]]]}},{"type":"Feature","id":"LI","properties":{"hc-group":"admin0","hc-middle-x":0.61,"hc-middle-y":0.53,"hc-key":"li","hc-a2":"LI","name":"Liechtenstein","labelrank":"6","country-abbrev":"Liech.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"LIE","iso-a2":"LI","woe-id":"23424879","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4487,7989],[4489,7983],[4488,7981],[4485,7981],[4487,7989]]]}},{"type":"Feature","id":"AT","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.62,"hc-key":"at","hc-a2":"AT","name":"Austria","labelrank":"4","country-abbrev":"Aust.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"AUT","iso-a2":"AT","woe-id":"23424750","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4488,7981],[4489,7983],[4487,7989],[4490,7994],[4488,7998],[4491,7997],[4492,7999],[4530,7993],[4565,8005],[4591,7997],[4582,8021],[4614,8045],[4640,8039],[4648,8053],[4707,8039],[4704,8030],[4713,8017],[4696,8007],[4682,7974],[4635,7956],[4611,7961],[4572,7967],[4566,7982],[4514,7974],[4504,7973],[4488,7981]]]}},{"type":"Feature","id":"SZ","properties":{"hc-group":"admin0","hc-middle-x":0.51,"hc-middle-y":0.45,"hc-key":"sz","hc-a2":"SZ","name":"Swaziland","labelrank":"4","country-abbrev":"Swz.","subregion":"Southern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SWZ","iso-a2":"SZ","woe-id":"23424993","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5152,5696],[5155,5685],[5157,5668],[5128,5656],[5118,5682],[5137,5702],[5152,5696]]]}},{"type":"Feature","id":"HU","properties":{"hc-group":"admin0","hc-middle-x":0.27,"hc-middle-y":0.61,"hc-key":"hu","hc-a2":"HU","name":"Hungary","labelrank":"5","country-abbrev":"Hun.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"HUN","iso-a2":"HU","woe-id":"23424844","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4861,8032],[4875,8020],[4883,8014],[4857,7997],[4831,7952],[4805,7946],[4784,7948],[4765,7939],[4719,7940],[4694,7960],[4687,7974],[4682,7974],[4696,8007],[4713,8017],[4733,8007],[4795,8021],[4812,8036],[4861,8032]]]}},{"type":"Feature","id":"RO","properties":{"hc-group":"admin0","hc-middle-x":0.67,"hc-middle-y":0.5,"hc-key":"ro","hc-a2":"RO","name":"Romania","labelrank":"3","country-abbrev":"Rom.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"ROU","iso-a2":"RO","woe-id":"23424933","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4877,7877],[4839,7897],[4842,7910],[4805,7946],[4831,7952],[4857,7997],[4883,8014],[4954,8013],[4994,8026],[5005,8023],[5042,7965],[5041,7922],[5059,7914],[5084,7913],[5054,7880],[5052,7859],[5006,7875],[4957,7856],[4896,7864],[4877,7877]]]}},{"type":"Feature","id":"NE","properties":{"hc-group":"admin0","hc-middle-x":0.64,"hc-middle-y":0.53,"hc-key":"ne","hc-a2":"NE","name":"Niger","labelrank":"3","country-abbrev":"Niger","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"NER","iso-a2":"NE","woe-id":"23424906","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4311,6825],[4288,6846],[4275,6831],[4269,6852],[4233,6865],[4210,6922],[4243,6933],[4308,6935],[4328,6967],[4329,7050],[4376,7059],[4426,7103],[4559,7185],[4604,7175],[4626,7157],[4649,7169],[4655,7122],[4678,7087],[4671,7073],[4663,6982],[4603,6906],[4608,6885],[4574,6866],[4543,6875],[4504,6872],[4490,6859],[4436,6874],[4410,6864],[4368,6891],[4326,6878],[4311,6825]]]}},{"type":"Feature","id":"LU","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.6,"hc-key":"lu","hc-a2":"LU","name":"Luxembourg","labelrank":"6","country-abbrev":"Lux.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"LUX","iso-a2":"LU","woe-id":"23424881","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4392,8072],[4381,8071],[4376,8075],[4374,8088],[4386,8097],[4397,8085],[4392,8072]]]}},{"type":"Feature","id":"AD","properties":{"hc-group":"admin0","hc-middle-x":0.58,"hc-middle-y":0.28,"hc-key":"ad","hc-a2":"AD","name":"Andorra","labelrank":"6","country-abbrev":"And.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"AND","iso-a2":"AD","woe-id":"23424744","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4246,7818],[4255,7818],[4255,7814],[4249,7812],[4246,7818]]]}},{"type":"Feature","id":"CI","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.48,"hc-key":"ci","hc-a2":"CI","name":"Ivory Coast","labelrank":"3","country-abbrev":"I.C.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"CIV","iso-a2":"CI","woe-id":"23424854","continent":"Africa"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4124,6759],[4130,6721],[4108,6681],[4120,6631],[4030,6627],[3980,6607],[3982,6650],[3948,6670],[3952,6702],[3971,6757],[3967,6779],[4019,6782],[4040,6787],[4065,6765],[4109,6772],[4124,6759]]],[[[4111,6629],[4107,6630],[4112,6629],[4111,6629]]]]}},{"type":"Feature","id":"LR","properties":{"hc-group":"admin0","hc-middle-x":0.96,"hc-middle-y":0.75,"hc-key":"lr","hc-a2":"LR","name":"Liberia","labelrank":"4","country-abbrev":"Liberia","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"LBR","iso-a2":"LR","woe-id":"23424876","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3952,6702],[3948,6670],[3982,6650],[3980,6607],[3929,6631],[3863,6683],[3889,6708],[3899,6729],[3922,6725],[3933,6691],[3952,6702]]]}},{"type":"Feature","id":"BN","properties":{"hc-group":"admin0","hc-middle-x":0.32,"hc-middle-y":0.34,"hc-key":"bn","hc-a2":"BN","name":"Brunei","labelrank":"6","country-abbrev":"Brunei","subregion":"South-Eastern Asia","region-wb":"East Asia & Pacific","iso-a3":"BRN","iso-a2":"BN","woe-id":"23424773","continent":"Asia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7618,6621],[7621,6622],[7621,6623],[7627,6606],[7618,6621]]],[[[7587,6614],[7603,6617],[7616,6623],[7606,6597],[7587,6614]]]]}},{"type":"Feature","id":"IQ","properties":{"hc-group":"admin0","hc-middle-x":0.46,"hc-middle-y":0.44,"hc-key":"iq","hc-a2":"IQ","name":"Iraq","labelrank":"3","country-abbrev":"Iraq","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"IRQ","iso-a2":"IQ","woe-id":"23424855","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5644,7390],[5632,7392],[5627,7391],[5602,7390],[5585,7362],[5530,7365],[5453,7426],[5404,7453],[5366,7460],[5363,7472],[5355,7501],[5412,7533],[5427,7548],[5432,7606],[5461,7627],[5472,7635],[5532,7628],[5549,7589],[5579,7582],[5551,7521],[5577,7487],[5611,7469],[5623,7448],[5619,7423],[5644,7390]]]}},{"type":"Feature","id":"GE","properties":{"hc-group":"admin0","hc-middle-x":0.99,"hc-middle-y":0.82,"hc-key":"ge","hc-a2":"GE","name":"Georgia","labelrank":"5","country-abbrev":"Geo.","subregion":"Western Asia","region-wb":"Europe & Central Asia","iso-a3":"GEO","iso-a2":"GE","woe-id":"23424823","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5539,7771],[5515,7769],[5493,7765],[5474,7782],[5436,7779],[5436,7819],[5391,7846],[5475,7838],[5508,7816],[5534,7823],[5582,7793],[5584,7763],[5539,7771]]]}},{"type":"Feature","id":"GM","properties":{"hc-group":"admin0","hc-middle-x":0.51,"hc-middle-y":0.51,"hc-key":"gm","hc-a2":"GM","name":"Gambia","labelrank":"6","country-abbrev":"Gambia","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"GMB","iso-a2":"GM","woe-id":"23424821","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3707,6866],[3705,6874],[3713,6882],[3762,6888],[3734,6869],[3707,6866]]]}},{"type":"Feature","id":"CH","properties":{"hc-group":"admin0","hc-middle-x":0.12,"hc-middle-y":0.55,"hc-key":"ch","hc-a2":"CH","name":"Switzerland","labelrank":"4","country-abbrev":"Switz.","subregion":"Western Europe","region-wb":"Europe & Central Asia","iso-a3":"CHE","iso-a2":"CH","woe-id":"23424957","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4477,8004],[4477,8004],[4477,8003],[4477,8003],[4486,7997],[4488,7998],[4490,7994],[4487,7989],[4485,7981],[4488,7981],[4504,7973],[4514,7974],[4500,7955],[4466,7944],[4444,7951],[4412,7939],[4405,7947],[4405,7957],[4400,7961],[4393,7956],[4389,7952],[4386,7963],[4429,8001],[4455,8001],[4477,8004]]]}},{"type":"Feature","id":"TD","properties":{"hc-group":"admin0","hc-middle-x":0.47,"hc-middle-y":0.63,"hc-key":"td","hc-a2":"TD","name":"Chad","labelrank":"3","country-abbrev":"Chad","subregion":"Middle Africa","region-wb":"Sub-Saharan Africa","iso-a3":"TCD","iso-a2":"TD","woe-id":"23424777","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4634,6863],[4642,6866],[4631,6866],[4630,6866],[4628,6868],[4629,6866],[4621,6866],[4608,6885],[4603,6906],[4663,6982],[4671,7073],[4678,7087],[4655,7122],[4649,7169],[4678,7183],[4916,7061],[4916,6946],[4889,6945],[4873,6898],[4859,6887],[4863,6856],[4882,6802],[4870,6804],[4810,6749],[4771,6745],[4756,6716],[4702,6702],[4663,6701],[4655,6729],[4618,6764],[4625,6774],[4669,6774],[4651,6798],[4653,6820],[4634,6863]]]}},{"type":"Feature","id":"KV","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.52,"hc-key":"kv","hc-a2":"KV","name":"Kosovo","labelrank":"6","country-abbrev":"Kos.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"-99","iso-a2":"KV","woe-id":"-90","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4814,7792],[4812,7804],[4799,7816],[4798,7822],[4808,7826],[4820,7842],[4850,7820],[4844,7805],[4830,7804],[4814,7792]]]}},{"type":"Feature","id":"LB","properties":{"hc-group":"admin0","hc-middle-x":0.39,"hc-middle-y":0.57,"hc-key":"lb","hc-a2":"LB","name":"Lebanon","labelrank":"5","country-abbrev":"Leb.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"LBN","iso-a2":"LB","woe-id":"23424873","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5246,7492],[5260,7519],[5271,7544],[5290,7529],[5267,7502],[5257,7492],[5246,7492]]]}},{"type":"Feature","id":"DJ","properties":{"hc-group":"admin0","hc-middle-x":0.56,"hc-middle-y":0.55,"hc-key":"dj","hc-a2":"DJ","name":"Djibouti","labelrank":"5","country-abbrev":"Dji.","subregion":"Eastern Africa","region-wb":"Middle East & North Africa","iso-a3":"DJI","iso-a2":"DJ","woe-id":"23424797","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5478,6804],[5449,6802],[5444,6807],[5447,6810],[5444,6813],[5443,6820],[5462,6848],[5471,6845],[5484,6855],[5490,6834],[5487,6819],[5478,6804]]]}},{"type":"Feature","id":"BI","properties":{"hc-group":"admin0","hc-middle-x":0.57,"hc-middle-y":0.47,"hc-key":"bi","hc-a2":"BI","name":"Burundi","labelrank":"6","country-abbrev":"Bur.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"BDI","iso-a2":"BI","woe-id":"23424774","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5084,6347],[5076,6364],[5071,6380],[5072,6389],[5065,6398],[5091,6400],[5111,6408],[5118,6383],[5084,6347]]]}},{"type":"Feature","id":"SR","properties":{"hc-group":"admin0","hc-middle-x":0.91,"hc-middle-y":0.09,"hc-key":"sr","hc-a2":"SR","name":"Suriname","labelrank":"4","country-abbrev":"Sur.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"SUR","iso-a2":"SR","woe-id":"23424913","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[2583,6547],[2543,6553],[2528,6536],[2481,6602],[2505,6641],[2514,6656],[2601,6651],[2596,6636],[2587,6623],[2601,6581],[2583,6547]]]}},{"type":"Feature","id":"IL","properties":{"hc-group":"admin0","hc-middle-x":0.68,"hc-middle-y":0.1,"hc-key":"il","hc-a2":"IL","name":"Israel","labelrank":"4","country-abbrev":"Isr.","subregion":"Western Asia","region-wb":"Middle East & North Africa","iso-a3":"ISR","iso-a2":"IL","woe-id":"23424852","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[5219,7433],[5238,7465],[5246,7492],[5257,7492],[5267,7502],[5269,7487],[5265,7480],[5259,7477],[5259,7448],[5254,7440],[5255,7434],[5254,7432],[5255,7431],[5253,7429],[5255,7426],[5247,7405],[5241,7377],[5240,7374],[5239,7374],[5237,7382],[5219,7433]]]}},{"type":"Feature","id":"ML","properties":{"hc-group":"admin0","hc-middle-x":0.59,"hc-middle-y":0.38,"hc-key":"ml","hc-a2":"ML","name":"Mali","labelrank":"3","country-abbrev":"Mali","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"MLI","iso-a2":"ML","woe-id":"23424891","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4040,6787],[4019,6782],[3967,6779],[3955,6815],[3931,6848],[3886,6831],[3866,6846],[3845,6885],[3840,6917],[3856,6941],[3886,6937],[4040,6939],[4008,7231],[4061,7231],[4238,7110],[4260,7083],[4299,7070],[4296,7050],[4329,7050],[4328,6967],[4308,6935],[4243,6933],[4210,6922],[4183,6927],[4141,6899],[4120,6895],[4099,6869],[4083,6876],[4069,6839],[4051,6832],[4040,6787]]]}},{"type":"Feature","id":"SN","properties":{"hc-group":"admin0","hc-middle-x":0.2,"hc-middle-y":0.55,"hc-key":"sn","hc-a2":"SN","name":"Senegal","labelrank":"3","country-abbrev":"Sen.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SEN","iso-a2":"SN","woe-id":"23424943","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3708,6844],[3705,6859],[3707,6866],[3734,6869],[3762,6888],[3713,6882],[3695,6922],[3713,6949],[3719,6968],[3779,6974],[3840,6917],[3845,6885],[3866,6846],[3837,6843],[3797,6854],[3753,6854],[3708,6844]]]}},{"type":"Feature","id":"GN","properties":{"hc-group":"admin0","hc-middle-x":0.24,"hc-middle-y":0.51,"hc-key":"gn","hc-a2":"GN","name":"Guinea","labelrank":"3","country-abbrev":"Gin.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"GIN","iso-a2":"GN","woe-id":"23424835","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[3866,6846],[3886,6831],[3931,6848],[3955,6815],[3967,6779],[3971,6757],[3952,6702],[3933,6691],[3922,6725],[3899,6729],[3870,6774],[3833,6770],[3809,6746],[3793,6770],[3758,6803],[3767,6819],[3797,6825],[3797,6854],[3837,6843],[3866,6846]]]}},{"type":"Feature","id":"ZW","properties":{"hc-group":"admin0","hc-middle-x":0.81,"hc-middle-y":0.42,"hc-key":"zw","hc-a2":"ZW","name":"Zimbabwe","labelrank":"3","country-abbrev":"Zimb.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"ZWE","iso-a2":"ZW","woe-id":"23425004","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4954,5949],[4996,5940],[5006,5944],[5038,5977],[5038,5977],[5058,5987],[5060,6001],[5106,6014],[5182,5982],[5185,5932],[5176,5898],[5184,5880],[5166,5841],[5133,5807],[5104,5809],[5075,5814],[5036,5833],[5026,5865],[4979,5896],[4954,5949]]]}},{"type":"Feature","id":"PL","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.48,"hc-key":"pl","hc-a2":"PL","name":"Poland","labelrank":"3","country-abbrev":"Pol.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"POL","iso-a2":"PL","woe-id":"23424923","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4786,8270],[4779,8263],[4790,8269],[4878,8266],[4880,8266],[4900,8258],[4901,8249],[4912,8198],[4891,8183],[4905,8152],[4919,8114],[4876,8075],[4873,8057],[4852,8069],[4763,8074],[4755,8089],[4691,8116],[4644,8126],[4639,8194],[4623,8205],[4627,8239],[4638,8245],[4625,8247],[4625,8248],[4626,8249],[4683,8263],[4696,8274],[4748,8286],[4756,8269],[4786,8270],[4786,8270]]]}},{"type":"Feature","id":"MK","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.44,"hc-key":"mk","hc-a2":"MK","name":"Macedonia","labelrank":"6","country-abbrev":"Mkd.","subregion":"Southern Europe","region-wb":"Europe & Central Asia","iso-a3":"MKD","iso-a2":"MK","woe-id":"23424890","continent":"Europe"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4826,7756],[4826,7756],[4826,7756],[4826,7756]]],[[[4867,7808],[4887,7787],[4884,7773],[4854,7765],[4831,7756],[4826,7762],[4826,7757],[4825,7758],[4825,7758],[4822,7758],[4819,7758],[4822,7765],[4816,7764],[4811,7781],[4814,7792],[4830,7804],[4844,7805],[4855,7808],[4867,7808]]]]}},{"type":"Feature","id":"PY","properties":{"hc-group":"admin0","hc-middle-x":0.35,"hc-middle-y":0.36,"hc-key":"py","hc-a2":"PY","name":"Paraguay","labelrank":"4","country-abbrev":"Para.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"PRY","iso-a2":"PY","woe-id":"23424917","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[2594,5755],[2590,5743],[2583,5712],[2584,5709],[2584,5708],[2578,5674],[2549,5649],[2465,5653],[2496,5712],[2422,5757],[2394,5763],[2345,5812],[2356,5864],[2371,5892],[2450,5903],[2478,5876],[2488,5852],[2483,5817],[2530,5817],[2553,5800],[2559,5759],[2594,5755]]]}},{"type":"Feature","id":"BY","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"by","hc-a2":"BY","name":"Belarus","labelrank":"4","country-abbrev":"Bela.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"BLR","iso-a2":"BY","woe-id":"23424765","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4905,8152],[4891,8183],[4912,8198],[4901,8249],[4927,8247],[4960,8264],[4972,8290],[4998,8305],[4993,8320],[5023,8325],[5039,8340],[5121,8317],[5146,8243],[5175,8229],[5131,8212],[5147,8175],[5122,8174],[5110,8154],[5074,8146],[5013,8155],[4969,8168],[4928,8166],[4905,8152]]]}},{"type":"Feature","id":"CZ","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.56,"hc-key":"cz","hc-a2":"CZ","name":"Czech Republic","labelrank":"5","country-abbrev":"Cz. Rep.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"CZE","iso-a2":"CZ","woe-id":"23424810","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[4763,8074],[4741,8058],[4707,8039],[4648,8053],[4640,8039],[4614,8045],[4571,8083],[4575,8108],[4644,8126],[4691,8116],[4755,8089],[4763,8074]]]}},{"type":"Feature","id":"BF","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.54,"hc-key":"bf","hc-a2":"BF","name":"Burkina Faso","labelrank":"3","country-abbrev":"B.F.","subregion":"Western Africa","region-wb":"Sub-Saharan Africa","iso-a3":"BFA","iso-a2":"BF","woe-id":"23424978","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4231,6804],[4218,6804],[4199,6808],[4122,6804],[4124,6759],[4109,6772],[4065,6765],[4040,6787],[4051,6832],[4069,6839],[4083,6876],[4099,6869],[4120,6895],[4141,6899],[4183,6927],[4210,6922],[4233,6865],[4269,6852],[4275,6831],[4247,6818],[4231,6804]]]}},{"type":"Feature","id":"NA","properties":{"hc-group":"admin0","hc-middle-x":0.33,"hc-middle-y":0.37,"hc-key":"na","hc-a2":"NA","name":"Namibia","labelrank":"3","country-abbrev":"Nam.","subregion":"Southern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"NAM","iso-a2":"NA","woe-id":"23424987","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4898,5953],[4923,5958],[4954,5949],[4904,5928],[4895,5942],[4826,5933],[4827,5821],[4797,5819],[4797,5734],[4797,5617],[4771,5600],[4720,5608],[4711,5630],[4693,5613],[4658,5652],[4637,5740],[4631,5811],[4602,5855],[4577,5909],[4561,5927],[4553,5965],[4595,5974],[4618,5960],[4752,5961],[4761,5950],[4821,5941],[4898,5953]]]}},{"type":"Feature","id":"LY","properties":{"hc-group":"admin0","hc-middle-x":0.51,"hc-middle-y":0.38,"hc-key":"ly","hc-a2":"LY","name":"Libya","labelrank":"3","country-abbrev":"Libya","subregion":"Northern Africa","region-wb":"Middle East & North Africa","iso-a3":"LBY","iso-a2":"LY","woe-id":"23424882","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4649,7169],[4626,7157],[4604,7175],[4559,7185],[4546,7209],[4502,7227],[4483,7267],[4496,7279],[4496,7363],[4486,7398],[4509,7421],[4504,7437],[4547,7471],[4545,7495],[4570,7483],[4600,7486],[4655,7469],[4680,7432],[4719,7426],[4770,7399],[4790,7407],[4795,7448],[4814,7474],[4846,7487],[4890,7477],[4889,7467],[4945,7455],[4950,7445],[4937,7397],[4945,7364],[4945,7138],[4945,7076],[4916,7076],[4916,7061],[4678,7183],[4649,7169]]]}},{"type":"Feature","id":"TN","properties":{"hc-group":"admin0","hc-middle-x":0.53,"hc-middle-y":0.03,"hc-key":"tn","hc-a2":"TN","name":"Tunisia","labelrank":"3","country-abbrev":"Tun.","subregion":"Northern Africa","region-wb":"Middle East & North Africa","iso-a3":"TUN","iso-a2":"TN","woe-id":"23424967","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4545,7495],[4547,7471],[4504,7437],[4509,7421],[4486,7398],[4472,7458],[4451,7473],[4426,7518],[4448,7543],[4452,7604],[4459,7621],[4493,7635],[4535,7563],[4505,7533],[4511,7512],[4532,7515],[4545,7495]]]}},{"type":"Feature","id":"BT","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.48,"hc-key":"bt","hc-a2":"BT","name":"Bhutan","labelrank":"5","country-abbrev":"Bhutan","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"BTN","iso-a2":"BT","woe-id":"23424770","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6842,7305],[6882,7338],[6923,7319],[6937,7293],[6869,7285],[6842,7305]]]}},{"type":"Feature","id":"MD","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.42,"hc-key":"md","hc-a2":"MD","name":"Moldova","labelrank":"6","country-abbrev":"Mda.","subregion":"Eastern Europe","region-wb":"Europe & Central Asia","iso-a3":"MDA","iso-a2":"MD","woe-id":"23424885","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[5041,7922],[5042,7965],[5005,8023],[4994,8026],[5028,8033],[5072,8011],[5068,7999],[5097,7955],[5063,7958],[5041,7922]]]}},{"type":"Feature","id":"SS","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.58,"hc-key":"ss","hc-a2":"SS","name":"South Sudan","labelrank":"3","country-abbrev":"S. Sud.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"SSD","iso-a2":"SS","woe-id":"-99","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5212,6603],[5198,6589],[5119,6582],[5088,6613],[5046,6605],[5018,6628],[4988,6658],[4987,6675],[4956,6696],[4921,6735],[4948,6783],[4970,6787],[4992,6760],[5060,6754],[5095,6783],[5131,6768],[5166,6806],[5156,6834],[5190,6840],[5189,6800],[5215,6758],[5211,6728],[5190,6729],[5185,6709],[5205,6705],[5235,6675],[5270,6615],[5255,6627],[5212,6603]]]}},{"type":"Feature","id":"BW","properties":{"hc-group":"admin0","hc-middle-x":0.49,"hc-middle-y":0.6,"hc-key":"bw","hc-a2":"BW","name":"Botswana","labelrank":"4","country-abbrev":"Bwa.","subregion":"Southern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"BWA","iso-a2":"BW","woe-id":"23424755","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[4954,5949],[4979,5896],[5026,5865],[5036,5833],[5075,5814],[5041,5799],[5006,5769],[5000,5749],[4972,5734],[4963,5706],[4941,5700],[4887,5716],[4878,5695],[4847,5667],[4818,5666],[4822,5690],[4797,5734],[4797,5819],[4827,5821],[4826,5933],[4895,5942],[4904,5928],[4954,5949]]]}},{"type":"Feature","id":"BS","properties":{"hc-group":"admin0","hc-middle-x":0.8,"hc-middle-y":0.92,"hc-key":"bs","hc-a2":"BS","name":"The Bahamas","labelrank":"4","country-abbrev":"Bhs.","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"BHS","iso-a2":"BS","woe-id":"23424758","continent":"North America"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1956,7219],[1937,7241],[1937,7241],[1937,7241],[1944,7236],[1956,7219],[1956,7219]]],[[[1956,7219],[1970,7205],[1976,7173],[2045,7149],[1983,7165],[1949,7190],[1966,7207],[1956,7219],[1956,7219]]],[[[1937,7241],[1911,7260],[1890,7236],[1901,7192],[1881,7221],[1883,7237],[1912,7268],[1937,7241],[1937,7241],[1937,7241]]]]}},{"type":"Feature","id":"NZ","properties":{"hc-group":"admin0","hc-middle-x":0.25,"hc-middle-y":0.81,"hc-key":"nz","hc-a2":"NZ","name":"New Zealand","labelrank":"2","country-abbrev":"N.Z.","subregion":"Australia and New Zealand","region-wb":"East Asia & Pacific","iso-a3":"NZL","iso-a2":"NZ","woe-id":"23424916","continent":"Oceania"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9238,4994],[9198,4996],[9194,4975],[9181,5009],[9153,5008],[9145,5023],[9159,5047],[9201,5088],[9241,5104],[9282,5140],[9311,5200],[9330,5213],[9341,5185],[9362,5199],[9374,5165],[9321,5099],[9289,5079],[9268,5027],[9238,4994]]],[[[9429,5191],[9404,5174],[9386,5186],[9404,5221],[9361,5252],[9385,5272],[9393,5308],[9378,5347],[9341,5395],[9364,5402],[9402,5361],[9422,5343],[9427,5313],[9470,5301],[9503,5310],[9483,5263],[9469,5264],[9429,5191]]]]}},{"type":"Feature","id":"CU","properties":{"hc-group":"admin0","hc-middle-x":0.67,"hc-middle-y":0.64,"hc-key":"cu","hc-a2":"CU","name":"Cuba","labelrank":"3","country-abbrev":"Cuba","subregion":"Caribbean","region-wb":"Latin America & Caribbean","iso-a3":"CUB","iso-a2":"CU","woe-id":"23424793","continent":"North America"},"geometry":{"type":"Polygon","coordinates":[[[1916,7091],[1870,7097],[1853,7124],[1817,7140],[1776,7144],[1774,7159],[1748,7160],[1696,7131],[1700,7149],[1734,7169],[1770,7175],[1828,7171],[1852,7150],[1867,7154],[1879,7155],[1933,7113],[1986,7095],[2000,7078],[1898,7071],[1916,7091]]]}},{"type":"Feature","id":"EC","properties":{"hc-group":"admin0","hc-middle-x":0.16,"hc-middle-y":0.37,"hc-key":"ec","hc-a2":"EC","name":"Ecuador","labelrank":"3","country-abbrev":"Ecu.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"ECU","iso-a2":"EC","woe-id":"23424801","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[1820,6379],[1837,6400],[1803,6410],[1803,6447],[1828,6480],[1827,6500],[1865,6521],[1905,6498],[1940,6492],[1970,6476],[1961,6433],[1928,6403],[1879,6379],[1858,6331],[1815,6358],[1820,6379]]]}},{"type":"Feature","id":"AU","properties":{"hc-group":"admin0","hc-middle-x":0.53,"hc-middle-y":0.39,"hc-key":"au","hc-a2":"AU","name":"Australia","labelrank":"2","country-abbrev":"Auz.","subregion":"Australia and New Zealand","region-wb":"East Asia & Pacific","iso-a3":"AUS","iso-a2":"AU","woe-id":"-90","continent":"Oceania"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8563,5105],[8537,5105],[8515,5139],[8497,5193],[8499,5215],[8479,5229],[8543,5191],[8602,5210],[8604,5168],[8595,5117],[8581,5130],[8563,5105]]],[[[8541,5953],[8550,5909],[8629,5866],[8644,5812],[8680,5798],[8682,5771],[8712,5753],[8733,5720],[8756,5726],[8746,5701],[8761,5650],[8762,5603],[8731,5487],[8709,5472],[8660,5372],[8655,5318],[8605,5306],[8551,5275],[8505,5283],[8507,5304],[8464,5271],[8430,5288],[8379,5298],[8351,5328],[8347,5368],[8329,5384],[8261,5366],[8280,5383],[8270,5405],[8300,5464],[8283,5464],[8229,5404],[8216,5439],[8189,5463],[8185,5486],[8128,5500],[8096,5519],[8032,5512],[7981,5492],[7949,5494],[7887,5463],[7870,5437],[7765,5438],[7718,5405],[7680,5400],[7646,5408],[7616,5433],[7637,5459],[7637,5513],[7616,5560],[7616,5583],[7592,5627],[7587,5653],[7556,5702],[7573,5710],[7590,5680],[7592,5701],[7570,5741],[7577,5802],[7645,5849],[7698,5861],[7793,5892],[7834,5938],[7830,5965],[7853,5985],[7871,5957],[7872,5998],[7896,5993],[7897,6026],[7916,6045],[7961,6056],[7971,6072],[8008,6042],[8052,6031],[8043,6051],[8090,6125],[8063,6129],[8073,6147],[8104,6146],[8105,6115],[8141,6119],[8139,6152],[8156,6132],[8212,6115],[8254,6129],[8267,6115],[8237,6071],[8224,6036],[8256,6011],[8329,5976],[8359,5951],[8384,5959],[8408,6030],[8406,6107],[8417,6122],[8422,6177],[8436,6161],[8463,6071],[8476,6048],[8492,6058],[8517,6035],[8519,5993],[8541,5953]]]]}},{"type":"Feature","id":"VE","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.33,"hc-key":"ve","hc-a2":"VE","name":"Venezuela","labelrank":"3","country-abbrev":"Ven.","subregion":"South America","region-wb":"Latin America & Caribbean","iso-a3":"VEN","iso-a2":"VE","woe-id":"23424982","continent":"South America"},"geometry":{"type":"Polygon","coordinates":[[[2087,6830],[2070,6823],[2080,6796],[2064,6769],[2082,6746],[2096,6767],[2080,6799],[2122,6818],[2160,6818],[2188,6788],[2237,6794],[2282,6777],[2307,6793],[2343,6797],[2357,6776],[2400,6756],[2397,6742],[2423,6732],[2408,6709],[2415,6689],[2387,6672],[2382,6653],[2401,6632],[2377,6604],[2286,6596],[2303,6552],[2324,6550],[2301,6525],[2258,6498],[2219,6515],[2210,6549],[2191,6564],[2207,6580],[2190,6612],[2201,6662],[2143,6659],[2123,6685],[2064,6688],[2056,6726],[2037,6753],[2040,6787],[2068,6824],[2087,6830]]]}},{"type":"Feature","id":"SB","properties":{"hc-group":"admin0","hc-middle-x":0.13,"hc-middle-y":0.24,"hc-key":"sb","hc-a2":"SB","name":"Solomon Islands","labelrank":"3","country-abbrev":"S. Is.","subregion":"Melanesia","region-wb":"East Asia & Pacific","iso-a3":"SLB","iso-a2":"SB","woe-id":"23424766","continent":"Oceania"},"geometry":{"type":"Polygon","coordinates":[[[8977,6187],[8947,6189],[8947,6226],[8902,6255],[8881,6242],[8899,6222],[8858,6239],[8861,6266],[8912,6255],[8947,6233],[8955,6212],[8982,6224],[8977,6187]]]}},{"type":"Feature","id":"MG","properties":{"hc-group":"admin0","hc-middle-x":0.45,"hc-middle-y":0.48,"hc-key":"mg","hc-a2":"MG","name":"Madagascar","labelrank":"3","country-abbrev":"Mad.","subregion":"Eastern Africa","region-wb":"Sub-Saharan Africa","iso-a3":"MDG","iso-a2":"MG","woe-id":"23424883","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5683,5987],[5616,5762],[5601,5727],[5544,5707],[5511,5726],[5503,5774],[5487,5812],[5495,5841],[5524,5882],[5508,5959],[5523,5997],[5558,6004],[5613,6031],[5635,6081],[5650,6080],[5665,6125],[5686,6092],[5702,6020],[5677,6017],[5683,5987]]]}},{"type":"Feature","id":"IS","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"is","hc-a2":"IS","name":"Iceland","labelrank":"3","country-abbrev":"Iceland","subregion":"Northern Europe","region-wb":"Europe & Central Asia","iso-a3":"ISL","iso-a2":"IS","woe-id":"23424845","continent":"Europe"},"geometry":{"type":"Polygon","coordinates":[[[3490,8732],[3556,8739],[3551,8757],[3516,8766],[3476,8762],[3500,8775],[3508,8796],[3538,8790],[3534,8809],[3571,8786],[3566,8765],[3584,8755],[3607,8792],[3661,8795],[3682,8785],[3715,8796],[3713,8811],[3768,8789],[3763,8773],[3795,8763],[3803,8741],[3772,8709],[3677,8676],[3648,8661],[3605,8668],[3575,8684],[3530,8682],[3560,8708],[3538,8728],[3490,8732]]]}},{"type":"Feature","id":"EG","properties":{"hc-group":"admin0","hc-middle-x":0.5,"hc-middle-y":0.66,"hc-key":"eg","hc-a2":"EG","name":"Egypt","labelrank":"2","country-abbrev":"Egypt","subregion":"Northern Africa","region-wb":"Middle East & North Africa","iso-a3":"EGY","iso-a2":"EG","woe-id":"23424802","continent":"Africa"},"geometry":{"type":"Polygon","coordinates":[[[5239,7374],[5220,7318],[5190,7345],[5169,7390],[5172,7358],[5201,7320],[5213,7282],[5258,7199],[5263,7167],[5299,7138],[5131,7138],[4945,7138],[4945,7364],[4937,7397],[4950,7445],[5015,7435],[5065,7418],[5105,7440],[5140,7438],[5157,7425],[5219,7433],[5237,7382],[5239,7374]]]}},{"type":"Feature","id":"KG","properties":{"hc-group":"admin0","hc-middle-x":0.48,"hc-middle-y":0.43,"hc-key":"kg","hc-a2":"KG","name":"Kyrgyzstan","labelrank":"4","country-abbrev":"Kgz.","subregion":"Central Asia","region-wb":"Europe & Central Asia","iso-a3":"KGZ","iso-a2":"KG","woe-id":"23424864","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6389,7707],[6348,7698],[6325,7713],[6261,7709],[6280,7734],[6310,7734],[6331,7731],[6374,7754],[6333,7777],[6323,7766],[6286,7782],[6309,7805],[6336,7826],[6385,7812],[6405,7842],[6435,7827],[6531,7828],[6584,7803],[6529,7774],[6521,7763],[6482,7759],[6450,7736],[6446,7748],[6399,7728],[6389,7707]],[[6300,7721],[6296,7722],[6299,7718],[6302,7720],[6300,7721]],[[6333,7723],[6334,7726],[6331,7724],[6332,7723],[6333,7723]],[[6316,7728],[6310,7729],[6312,7722],[6317,7722],[6316,7728]]]}},{"type":"Feature","id":"NP","properties":{"hc-group":"admin0","hc-middle-x":0.52,"hc-middle-y":0.54,"hc-key":"np","hc-a2":"NP","name":"Nepal","labelrank":"3","country-abbrev":"Nepal","subregion":"Southern Asia","region-wb":"South Asia","iso-a3":"NPL","iso-a2":"NP","woe-id":"23424911","continent":"Asia"},"geometry":{"type":"Polygon","coordinates":[[[6819,7322],[6820,7286],[6795,7274],[6751,7281],[6714,7305],[6660,7310],[6579,7353],[6589,7383],[6608,7397],[6640,7401],[6683,7364],[6699,7367],[6729,7336],[6756,7323],[6773,7330],[6819,7322]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/ru-all.geo.json
const ru_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Russia","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:3576"}},"hc-transform":{"default":{"crs":"+proj=laea +lat_0=90 +lon_0=90 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs","scale":0.0000863609966999,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-3908619.12528,"yoffset":474572.303972}},"features":[{"type":"Feature","id":"RU.3637","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.43,"hc-key":"ru-3637","hc-a2":"NU","labelrank":"20","hasc":"-99","alt-name":null,"woe-id":"-99","subregion":"West Siberian","fips":null,"postal-code":null,"name":null,"country":"Russia","type-en":null,"region":"Urals","longitude":"67.26130000000001","woe-name":null,"latitude":"68.79989999999999","woe-label":null,"type":null},"geometry":{"type":"Polygon","coordinates":[[[3020,6310],[3021,6304],[3017,6303],[3013,6312],[3020,6310]]]}},{"type":"Feature","id":"RU.CK","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.58,"hc-key":"ru-ck","hc-a2":"CK","labelrank":"2","hasc":"RU.","alt-name":"Chukotskiy Avtonomnyy Okrug","woe-id":"20070513","subregion":"Far Eastern","fips":"RS15","postal-code":"CK","name":"Chukchi Autonomous Okrug","country":"Russia","type-en":"Autonomous Province","region":"Far Eastern","longitude":"170.516","woe-name":null,"latitude":"66.7517","woe-label":null,"type":"Avtonomnyy Okrug"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7190,8663],[7216,8646],[7213,8630],[7163,8580],[7141,8612],[7175,8666],[7190,8663]]],[[[7052,9318],[7073,9248],[7061,9216],[7078,9199],[7087,9158],[7053,9148],[7024,9162],[6973,9228],[6979,9293],[7022,9340],[7052,9318]]],[[[7114,8304],[7132,8372],[7124,8388],[7165,8421],[7172,8465],[7201,8527],[7172,8580],[7208,8596],[7254,8589],[7286,8639],[7335,8648],[7335,8688],[7316,8722],[7271,8730],[7225,8720],[7201,8690],[7201,8724],[7150,8733],[7179,8801],[7189,8842],[7209,8860],[7195,8876],[7208,8904],[7219,8982],[7260,9076],[7287,9120],[7281,9129],[7314,9176],[7355,9213],[7390,9279],[7420,9288],[7448,9345],[7490,9402],[7511,9416],[7519,9456],[7538,9488],[7586,9500],[7580,9520],[7628,9518],[7667,9535],[7683,9519],[7699,9553],[7736,9555],[7705,9580],[7693,9563],[7676,9582],[7634,9572],[7622,9551],[7616,9615],[7636,9654],[7616,9647],[7619,9709],[7655,9736],[7721,9822],[7717,9849],[7735,9851],[7740,9825],[7763,9806],[7800,9810],[7795,9770],[7821,9768],[7828,9710],[7808,9693],[7897,9725],[7933,9686],[7961,9692],[7932,9705],[7939,9734],[7953,9702],[7990,9729],[8008,9691],[8013,9640],[7951,9559],[7960,9515],[7930,9483],[7911,9490],[7871,9476],[7845,9407],[7871,9380],[7873,9325],[7863,9309],[7785,9279],[7793,9295],[7772,9309],[7739,9301],[7768,9291],[7778,9230],[7825,9233],[7847,9261],[7918,9237],[7936,9201],[7965,9182],[7987,9099],[7973,9062],[7946,9050],[7926,9017],[7958,9040],[7942,8959],[7994,9001],[7976,9019],[7969,9052],[8020,9047],[8052,9082],[8031,9102],[8091,9125],[8138,9131],[8169,9119],[8198,9167],[8232,9163],[8272,9188],[8299,9172],[8321,9140],[8294,9078],[8286,9025],[8253,9028],[8268,8999],[8288,9020],[8296,8982],[8320,8950],[8344,8878],[8382,8813],[8359,8816],[8342,8792],[8288,8795],[8271,8756],[8288,8731],[8280,8670],[8268,8653],[8284,8610],[8273,8592],[8287,8563],[8274,8522],[8216,8502],[8162,8461],[8136,8419],[8086,8481],[8072,8510],[8025,8502],[8009,8473],[7962,8457],[7948,8407],[7901,8385],[7907,8354],[7887,8318],[7889,8294],[7859,8291],[7836,8252],[7856,8245],[7810,8205],[7796,8162],[7812,8131],[7826,8117],[7776,8050],[7724,8033],[7705,7989],[7658,7981],[7590,7922],[7528,7962],[7497,7932],[7478,7935],[7445,7977],[7406,7979],[7345,7945],[7298,7965],[7303,7996],[7286,7988],[7258,8010],[7262,8104],[7281,8166],[7273,8193],[7305,8242],[7268,8272],[7238,8274],[7233,8290],[7193,8284],[7185,8300],[7130,8292],[7114,8304]]]]}},{"type":"Feature","id":"RU.AR","properties":{"hc-group":"admin1","hc-middle-x":0.13,"hc-middle-y":0.72,"hc-key":"ru-ar","hc-a2":"AR","labelrank":"6","hasc":"RU.VO","alt-name":"Vologodskaya Oblast","woe-id":"20070508","subregion":"Northern","fips":"RS06","postal-code":"AR","name":"Arkhangel\'sk","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"41.9939","woe-name":"Arkhangel\'sk","latitude":"63.3132","woe-label":"Arkhangelrskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2558,7014],[2553,6970],[2529,6954],[2538,6985],[2527,7012],[2558,7014]]],[[[3414,8023],[3393,8068],[3420,8059],[3412,8028],[3450,8009],[3424,7972],[3401,7995],[3414,8023]]],[[[3381,8039],[3343,8049],[3343,8069],[3368,8074],[3381,8039]]],[[[3463,7944],[3502,7946],[3466,7921],[3439,7974],[3458,8024],[3488,8003],[3495,7974],[3464,7982],[3463,7944]]],[[[3521,8081],[3537,8073],[3506,8059],[3492,8111],[3521,8081]]],[[[3672,8028],[3670,7982],[3636,7968],[3604,7975],[3602,8003],[3644,8006],[3672,8028]]],[[[3538,8108],[3526,8097],[3494,8127],[3498,8148],[3513,8126],[3520,8145],[3538,8108]]],[[[3247,8227],[3322,8194],[3308,8162],[3306,8194],[3243,8187],[3247,8227]]],[[[3576,8030],[3563,8052],[3603,8047],[3586,8034],[3593,7997],[3577,7977],[3539,7962],[3510,8000],[3536,8032],[3571,8019],[3576,8030]]],[[[3459,8078],[3436,8082],[3428,8108],[3466,8107],[3466,8134],[3485,8107],[3502,8054],[3457,8051],[3459,8078]]],[[[1374,5994],[1354,6020],[1363,6032],[1325,6076],[1298,6063],[1289,6113],[1268,6114],[1249,6150],[1259,6165],[1239,6187],[1205,6163],[1158,6224],[1167,6238],[1140,6252],[1100,6242],[1073,6264],[1066,6298],[1043,6303],[1027,6349],[1001,6368],[977,6351],[962,6397],[907,6433],[904,6457],[883,6470],[877,6503],[854,6512],[857,6558],[862,6572],[860,6576],[862,6580],[864,6576],[871,6592],[905,6636],[962,6667],[992,6722],[1022,6751],[1005,6776],[1000,6823],[1014,6855],[1057,6890],[1062,6922],[1090,6901],[1135,6921],[1148,6866],[1193,6840],[1234,6873],[1235,6899],[1208,6926],[1242,7007],[1261,6992],[1294,7000],[1303,6951],[1298,6919],[1320,6863],[1325,6813],[1352,6813],[1383,6796],[1401,6808],[1427,6885],[1455,6899],[1487,6889],[1537,6889],[1567,6870],[1614,6869],[1695,6883],[1658,6867],[1652,6846],[1687,6820],[1683,6749],[1724,6775],[1755,6673],[1778,6643],[1792,6588],[1816,6563],[1871,6578],[1909,6542],[1827,6449],[1857,6427],[1844,6362],[1855,6334],[1819,6311],[1794,6347],[1773,6340],[1751,6365],[1698,6360],[1695,6386],[1578,6483],[1550,6491],[1548,6447],[1567,6413],[1572,6380],[1561,6348],[1539,6333],[1550,6282],[1523,6269],[1496,6272],[1484,6243],[1455,6213],[1449,6187],[1480,6184],[1508,6159],[1552,6199],[1588,6186],[1622,6146],[1550,6089],[1536,6090],[1489,6054],[1502,6023],[1455,5985],[1398,6010],[1374,5994]]],[[[3561,8148],[3574,8153],[3574,8153],[3574,8153],[3573,8148],[3561,8148],[3561,8148]]],[[[3561,8148],[3561,8147],[3564,8116],[3593,8083],[3564,8100],[3533,8148],[3561,8148],[3561,8148]]],[[[2822,7183],[2819,7195],[2779,7212],[2817,7227],[2800,7239],[2798,7268],[2858,7266],[2891,7293],[2915,7289],[2916,7308],[2949,7292],[2939,7330],[2973,7319],[2966,7346],[3000,7341],[2979,7366],[2990,7386],[3003,7361],[3049,7389],[3066,7366],[3075,7394],[3100,7390],[3161,7415],[3199,7402],[3206,7417],[3230,7399],[3244,7425],[3263,7419],[3298,7384],[3407,7393],[3471,7424],[3494,7425],[3519,7407],[3525,7377],[3513,7346],[3482,7324],[3428,7306],[3285,7296],[3259,7301],[3186,7297],[3111,7257],[3083,7234],[3064,7248],[3044,7226],[3022,7263],[3014,7208],[2993,7213],[2939,7165],[2866,7129],[2838,7158],[2852,7135],[2837,7116],[2802,7122],[2823,7105],[2805,7087],[2790,7097],[2736,7048],[2735,7030],[2699,7006],[2707,6996],[2690,6956],[2678,6901],[2685,6826],[2699,6794],[2681,6784],[2618,6820],[2608,6858],[2581,6842],[2573,6889],[2557,6890],[2532,6934],[2557,6930],[2558,6952],[2591,6936],[2572,6980],[2582,7005],[2529,7045],[2527,7068],[2550,7107],[2593,7127],[2606,7103],[2670,7158],[2663,7177],[2684,7188],[2710,7171],[2728,7208],[2762,7210],[2775,7195],[2815,7195],[2822,7183]]],[[[3235,8120],[3257,8135],[3234,8141],[3240,8164],[3271,8140],[3268,8165],[3298,8162],[3307,8145],[3328,8151],[3329,8176],[3378,8181],[3368,8169],[3370,8123],[3343,8118],[3288,8135],[3274,8108],[3299,8094],[3280,8078],[3303,8067],[3294,8039],[3272,8068],[3279,8098],[3263,8119],[3235,8120]]],[[[3574,8153],[3575,8163],[3583,8178],[3611,8171],[3574,8153],[3574,8153],[3574,8153]]]]}},{"type":"Feature","id":"RU.NN","properties":{"hc-group":"admin1","hc-middle-x":0.77,"hc-middle-y":0.84,"hc-key":"ru-nn","hc-a2":"NN","labelrank":"2","hasc":"RU.NN","alt-name":"Nenetskiy A.Okr.|Nenetskiy AOk","woe-id":"20070509","subregion":"Northern","fips":"RS50","postal-code":"NN","name":"Nenets","country":"Russia","type-en":"Autonomous Province","region":"Northwestern","longitude":"56.2877","woe-name":null,"latitude":"67.8271","woe-label":null,"type":"Avtonomnyy Okrug"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2228,6817],[2251,6835],[2186,6819],[2143,6845],[2145,6879],[2184,6916],[2225,6922],[2245,6907],[2258,6849],[2255,6831],[2228,6817]]],[[[2693,6702],[2706,6721],[2739,6726],[2762,6618],[2747,6592],[2705,6616],[2712,6641],[2694,6661],[2693,6702]]],[[[2933,6422],[2894,6402],[2884,6381],[2918,6354],[2903,6300],[2864,6314],[2841,6292],[2793,6285],[2790,6265],[2715,6253],[2700,6229],[2611,6213],[2530,6255],[2464,6296],[2215,6462],[2151,6527],[2099,6534],[2089,6519],[1909,6542],[1871,6578],[1816,6563],[1792,6588],[1778,6643],[1755,6673],[1724,6775],[1764,6790],[1790,6815],[1798,6841],[1788,6870],[1805,6888],[1867,6920],[1919,6962],[1921,7035],[1940,7003],[1991,6950],[2006,6915],[1999,6858],[1977,6820],[1909,6863],[1875,6856],[1850,6837],[1860,6793],[1844,6754],[1868,6716],[1937,6690],[1955,6713],[1990,6729],[1996,6746],[2053,6728],[2070,6741],[2116,6723],[2203,6727],[2206,6717],[2284,6701],[2262,6680],[2296,6671],[2290,6702],[2367,6699],[2386,6672],[2357,6659],[2333,6613],[2319,6635],[2300,6628],[2331,6599],[2354,6601],[2368,6566],[2389,6589],[2457,6588],[2514,6535],[2567,6551],[2620,6544],[2628,6500],[2600,6491],[2586,6463],[2608,6438],[2632,6446],[2637,6477],[2675,6465],[2710,6479],[2724,6504],[2711,6516],[2721,6583],[2752,6582],[2770,6601],[2848,6541],[2906,6480],[2933,6422]]]]}},{"type":"Feature","id":"RU.YN","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.72,"hc-key":"ru-yn","hc-a2":"YN","labelrank":"2","hasc":"RU.YN","alt-name":"Yamalo-Nenetskiy A.Okr","woe-id":"20070525","subregion":"West Siberian","fips":"RS87","postal-code":"YN","name":"Yamal-Nenets","country":"Russia","type-en":"Autonomous Province","region":"Urals","longitude":"75.1874","woe-name":"Yamal-Nenets","latitude":"65.4117","woe-label":"Yamalo-Nenetskiy Avtonomnyy Okrug, RU, Russia","type":"Avtonomnyy Okrug"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3015,5994],[3055,5963],[3043,5938],[3019,5961],[3015,5994]]],[[[3675,6641],[3636,6648],[3678,6690],[3709,6662],[3675,6641]]],[[[3430,6864],[3444,6864],[3442,6817],[3433,6842],[3372,6838],[3364,6844],[3386,6893],[3432,6895],[3430,6864]]],[[[2903,6300],[2918,6354],[2884,6381],[2894,6402],[2933,6422],[2963,6388],[2954,6382],[3011,6318],[3004,6312],[3041,6226],[3034,6206],[3092,6254],[3117,6292],[3087,6308],[3083,6367],[3093,6388],[3065,6422],[3039,6390],[3038,6429],[3065,6480],[3084,6476],[3088,6506],[3107,6529],[3130,6585],[3091,6597],[3142,6656],[3201,6668],[3241,6701],[3310,6812],[3344,6841],[3344,6826],[3428,6802],[3473,6756],[3455,6694],[3415,6643],[3397,6610],[3376,6604],[3378,6566],[3396,6533],[3394,6499],[3371,6435],[3347,6418],[3341,6354],[3323,6330],[3315,6278],[3296,6230],[3334,6151],[3292,6120],[3275,6051],[3240,6045],[3199,5988],[3145,5961],[3138,5929],[3081,5927],[3047,5986],[2998,6003],[2996,5974],[3053,5909],[3100,5897],[3143,5862],[3170,5870],[3189,5907],[3256,5918],[3285,5937],[3298,5977],[3360,6019],[3375,6054],[3378,6090],[3366,6124],[3385,6166],[3431,6181],[3498,6182],[3505,6145],[3533,6104],[3516,6070],[3525,6061],[3497,5997],[3542,5954],[3598,5952],[3550,5969],[3518,5990],[3532,6044],[3572,6057],[3557,6112],[3564,6150],[3528,6177],[3522,6196],[3462,6231],[3435,6214],[3367,6245],[3384,6276],[3379,6328],[3408,6386],[3450,6426],[3444,6541],[3426,6569],[3457,6598],[3466,6621],[3540,6643],[3558,6676],[3565,6724],[3540,6785],[3570,6787],[3562,6748],[3577,6751],[3591,6698],[3581,6655],[3551,6619],[3542,6588],[3547,6556],[3528,6540],[3558,6507],[3639,6474],[3644,6446],[3664,6431],[3667,6485],[3638,6495],[3584,6549],[3581,6603],[3629,6612],[3652,6575],[3677,6577],[3677,6613],[3654,6610],[3693,6649],[3710,6645],[3713,6614],[3755,6588],[3781,6558],[3765,6529],[3729,6526],[3712,6501],[3743,6452],[3770,6434],[3770,6373],[3657,6277],[3658,6253],[3681,6242],[3693,6194],[3738,6180],[3748,6164],[3802,6177],[3797,6153],[3826,6146],[3827,6093],[3848,6069],[3816,6060],[3822,6016],[3804,6003],[3797,5969],[3761,5971],[3791,5909],[3770,5869],[3823,5800],[3829,5776],[3813,5748],[3834,5703],[3818,5688],[3832,5645],[3860,5645],[3876,5627],[3888,5571],[3863,5520],[3898,5515],[3919,5487],[3947,5496],[3963,5484],[3959,5447],[3969,5414],[3961,5382],[3932,5367],[3898,5311],[3933,5285],[3926,5239],[3834,5119],[3823,5149],[3794,5179],[3758,5168],[3723,5216],[3678,5228],[3659,5215],[3628,5239],[3616,5284],[3579,5276],[3528,5251],[3517,5225],[3445,5240],[3389,5230],[3347,5275],[3335,5317],[3310,5333],[3284,5326],[3257,5357],[3194,5361],[3167,5370],[3154,5393],[3098,5415],[3090,5452],[3054,5440],[3022,5452],[2980,5449],[2995,5500],[2989,5521],[2960,5532],[2953,5586],[2974,5606],[2952,5637],[2931,5640],[2892,5678],[2867,5683],[2857,5653],[2833,5674],[2780,5654],[2750,5674],[2730,5705],[2752,5737],[2710,5771],[2664,5789],[2643,5779],[2610,5794],[2539,5801],[2532,5846],[2494,5871],[2521,5884],[2524,5907],[2559,5957],[2546,5972],[2551,6016],[2543,6035],[2599,6031],[2608,6050],[2673,6095],[2791,6107],[2809,6136],[2879,6160],[2874,6187],[2892,6181],[2904,6220],[2870,6233],[2880,6277],[2903,6300]]]]}},{"type":"Feature","id":"RU.KY","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.56,"hc-key":"ru-ky","hc-a2":"KY","labelrank":"6","hasc":"RU.KY","alt-name":"Krasnoyarskiy Kray|Yeniseisk|Yeniseyskaya G.","woe-id":"20070524","subregion":"East Siberian","fips":"RS39","postal-code":"KY","name":"Krasnoyarsk","country":"Russia","type-en":"Territory","region":"Siberian","longitude":"95.2029","woe-name":null,"latitude":"65.5602","woe-label":null,"type":"Kray"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3771,6715],[3768,6688],[3739,6694],[3728,6714],[3759,6743],[3771,6715]]],[[[4424,7244],[4408,7237],[4411,7283],[4450,7319],[4450,7301],[4426,7279],[4424,7244]]],[[[4271,7699],[4256,7734],[4331,7715],[4304,7676],[4271,7699]]],[[[5095,6956],[5055,6932],[5041,6938],[5048,6978],[5106,6977],[5098,6964],[5095,6956]]],[[[3834,5119],[3926,5239],[3933,5285],[3898,5311],[3932,5367],[3961,5382],[3969,5414],[3959,5447],[3963,5484],[3947,5496],[3919,5487],[3898,5515],[3863,5520],[3888,5571],[3876,5627],[3860,5645],[3832,5645],[3818,5688],[3834,5703],[3813,5748],[3829,5776],[3823,5800],[3770,5869],[3791,5909],[3761,5971],[3797,5969],[3804,6003],[3822,6016],[3816,6060],[3848,6069],[3827,6093],[3826,6146],[3797,6153],[3802,6177],[3748,6164],[3738,6180],[3693,6194],[3681,6242],[3658,6253],[3657,6277],[3770,6373],[3770,6434],[3743,6452],[3712,6501],[3729,6526],[3765,6529],[3781,6558],[3755,6588],[3713,6614],[3710,6645],[3750,6638],[3842,6520],[3896,6526],[3916,6508],[3898,6471],[3860,6456],[3850,6418],[3856,6383],[3835,6353],[3854,6356],[3859,6385],[3882,6410],[3898,6379],[3894,6327],[3858,6304],[3881,6275],[3874,6312],[3901,6310],[3918,6329],[3900,6445],[3929,6496],[3921,6531],[3895,6544],[3871,6575],[3874,6603],[3832,6620],[3813,6651],[3828,6705],[3813,6766],[3843,6800],[3893,6806],[3957,6797],[4014,6807],[4040,6797],[4048,6813],[4098,6821],[4112,6777],[4133,6808],[4117,6814],[4102,6863],[4070,6876],[4068,6906],[4039,6916],[4070,6924],[4074,6900],[4103,6898],[4092,6920],[4063,6932],[4084,6956],[4104,6940],[4117,6959],[4087,6964],[4117,6982],[4119,6962],[4200,7047],[4231,7066],[4364,7110],[4343,7142],[4404,7152],[4440,7184],[4477,7196],[4476,7169],[4445,7162],[4450,7132],[4492,7157],[4518,7147],[4518,7166],[4545,7182],[4586,7166],[4573,7198],[4543,7230],[4566,7225],[4611,7244],[4618,7280],[4601,7308],[4629,7378],[4655,7424],[4677,7440],[4725,7423],[4740,7432],[4760,7409],[4734,7373],[4709,7357],[4756,7366],[4766,7351],[4792,7367],[4819,7353],[4803,7285],[4848,7304],[4843,7334],[4887,7352],[4914,7351],[4946,7372],[4965,7358],[4997,7369],[5021,7336],[5037,7348],[5075,7285],[5087,7287],[5096,7249],[5042,7268],[5065,7235],[5099,7238],[5111,7206],[5103,7155],[5083,7128],[5029,7022],[5034,7002],[5008,6964],[4989,6898],[4953,6884],[4945,6834],[4927,6831],[4918,6743],[4941,6782],[4938,6814],[4996,6828],[5017,6858],[5048,6879],[5039,6902],[5069,6900],[5100,6946],[5100,6901],[5135,6855],[5130,6832],[5146,6799],[5173,6793],[5177,6767],[5229,6750],[5269,6651],[5311,6637],[5302,6599],[5269,6563],[5235,6541],[5223,6510],[5241,6483],[5212,6467],[5205,6437],[5223,6418],[5224,6377],[5173,6372],[5166,6346],[5115,6302],[5092,6302],[5085,6273],[5145,6211],[5177,6109],[5205,5996],[5147,5930],[5181,5921],[5214,5866],[5205,5848],[5218,5819],[5242,5803],[5255,5754],[5291,5742],[5274,5716],[5277,5692],[5252,5654],[5271,5640],[5251,5602],[5263,5577],[5313,5586],[5415,5584],[5442,5565],[5403,5545],[5401,5524],[5344,5527],[5352,5507],[5349,5451],[5368,5440],[5348,5419],[5341,5386],[5381,5341],[5405,5334],[5388,5276],[5401,5247],[5374,5210],[5383,5190],[5314,5120],[5324,5097],[5309,5043],[5339,4986],[5360,4976],[5405,4981],[5415,4919],[5388,4914],[5376,4889],[5399,4861],[5413,4867],[5440,4820],[5405,4767],[5418,4756],[5389,4731],[5335,4762],[5313,4758],[5253,4803],[5215,4770],[5233,4712],[5211,4676],[5182,4661],[5170,4625],[5139,4602],[5145,4585],[5122,4566],[5142,4521],[5126,4498],[5098,4511],[5052,4581],[5026,4577],[5009,4532],[4974,4516],[4957,4523],[4888,4516],[4854,4401],[4877,4392],[4868,4372],[4894,4369],[4908,4314],[4887,4311],[4888,4282],[4872,4260],[4852,4265],[4826,4211],[4847,4154],[4830,4141],[4823,4106],[4836,4095],[4830,4036],[4784,4038],[4753,3987],[4792,3966],[4837,3917],[4855,3913],[4833,3893],[4814,3905],[4803,3881],[4771,3887],[4737,3863],[4725,3873],[4664,3848],[4661,3791],[4627,3777],[4596,3720],[4588,3688],[4559,3673],[4511,3628],[4427,3620],[4383,3633],[4315,3633],[4279,3671],[4300,3710],[4366,3769],[4361,3799],[4406,3830],[4396,3852],[4370,3861],[4356,3903],[4368,3937],[4339,3998],[4311,4017],[4316,4041],[4274,4051],[4251,4091],[4202,4070],[4161,4069],[4140,4112],[4110,4135],[4150,4169],[4177,4180],[4152,4255],[4112,4277],[4106,4303],[4125,4313],[4116,4332],[4125,4368],[4109,4370],[4138,4417],[4181,4446],[4178,4491],[4138,4493],[4082,4516],[4066,4576],[4104,4630],[4139,4647],[4121,4686],[4070,4683],[4042,4738],[4015,4745],[4007,4774],[3921,4790],[3884,4783],[3822,4791],[3810,4802],[3835,4857],[3802,4930],[3913,4983],[3936,5019],[3902,5033],[3838,5079],[3834,5119]]],[[[4520,7455],[4533,7513],[4544,7624],[4569,7674],[4591,7655],[4591,7587],[4598,7622],[4619,7643],[4649,7606],[4670,7604],[4686,7573],[4681,7545],[4717,7533],[4736,7545],[4734,7520],[4765,7535],[4768,7515],[4733,7517],[4717,7531],[4672,7534],[4648,7513],[4576,7487],[4546,7447],[4520,7455]]],[[[4304,7638],[4344,7693],[4362,7743],[4427,7762],[4453,7721],[4454,7748],[4471,7749],[4500,7714],[4499,7699],[4499,7637],[4485,7635],[4517,7594],[4506,7570],[4459,7561],[4428,7584],[4376,7586],[4355,7614],[4351,7650],[4335,7658],[4304,7638]]],[[[4416,7769],[4349,7747],[4337,7721],[4272,7766],[4281,7793],[4301,7801],[4311,7844],[4293,7840],[4305,7873],[4264,7884],[4233,7887],[4235,7904],[4266,7901],[4305,7873],[4346,7898],[4364,7921],[4398,7868],[4425,7840],[4408,7830],[4416,7769]]]]}},{"type":"Feature","id":"RU.SK","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.58,"hc-key":"ru-sk","hc-a2":"SK","labelrank":"2","hasc":"RU.CK","alt-name":"Chukotka|Chukotskiy AOk","woe-id":"2346881","subregion":"Far Eastern","fips":"RS63","postal-code":"SK","name":"Sakha (Yakutia)","country":"Russia","type-en":"Autonomous Province","region":"Far Eastern","longitude":"130.989","woe-name":"Chukot","latitude":"65.5964","woe-label":"Sakha, RU, Russia","type":"Avtonomnyy Okrug"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7114,8245],[7156,8228],[7196,8225],[7174,8211],[7123,8225],[7114,8245]]],[[[6083,7693],[6040,7711],[6051,7738],[6086,7717],[6083,7693]]],[[[5158,7075],[5151,7030],[5125,7027],[5087,7045],[5103,7053],[5096,7079],[5148,7092],[5158,7075]]],[[[5796,7698],[5787,7686],[5741,7743],[5778,7732],[5796,7698]]],[[[6137,7634],[6103,7709],[6122,7742],[6147,7752],[6201,7754],[6242,7732],[6239,7714],[6180,7668],[6148,7654],[6137,7634]]],[[[5100,6946],[5097,6952],[5095,6956],[5098,6964],[5106,6977],[5157,6971],[5175,7009],[5205,6973],[5201,6949],[5230,6929],[5236,6947],[5212,6963],[5253,6995],[5274,7024],[5360,7046],[5398,7066],[5425,7017],[5489,7021],[5544,7038],[5592,7068],[5595,7087],[5624,7086],[5615,7133],[5589,7147],[5575,7195],[5596,7193],[5594,7224],[5663,7222],[5681,7240],[5699,7227],[5710,7260],[5749,7280],[5759,7260],[5802,7270],[5839,7264],[5812,7210],[5841,7246],[5863,7225],[5861,7178],[5879,7192],[5915,7177],[5910,7140],[5839,7150],[6027,7060],[6105,7053],[6119,7088],[6098,7142],[6056,7229],[6108,7216],[6140,7217],[6175,7239],[6177,7274],[6199,7317],[6311,7349],[6302,7363],[6244,7342],[6287,7415],[6326,7408],[6346,7445],[6280,7472],[6262,7506],[6243,7480],[6216,7525],[6246,7561],[6251,7588],[6201,7599],[6242,7621],[6371,7741],[6434,7775],[6396,7722],[6373,7714],[6391,7672],[6398,7704],[6440,7779],[6471,7705],[6453,7674],[6478,7664],[6480,7709],[6444,7791],[6476,7836],[6525,7871],[6565,7873],[6576,7847],[6551,7843],[6567,7813],[6594,7850],[6619,7831],[6630,7867],[6660,7850],[6655,7875],[6681,7893],[6725,7897],[6722,7873],[6749,7890],[6785,7953],[6783,7985],[6801,8069],[6847,8159],[6900,8205],[6929,8218],[6921,8264],[6945,8220],[6993,8217],[7037,8178],[7081,8197],[7093,8227],[7169,8203],[7194,8220],[7249,8180],[7203,8226],[7160,8231],[7108,8248],[7124,8266],[7114,8304],[7130,8292],[7185,8300],[7193,8284],[7233,8290],[7238,8274],[7268,8272],[7305,8242],[7273,8193],[7281,8166],[7262,8104],[7258,8010],[7286,7988],[7303,7996],[7298,7965],[7345,7945],[7406,7979],[7445,7977],[7478,7935],[7497,7932],[7529,7916],[7512,7872],[7529,7842],[7513,7819],[7474,7814],[7485,7792],[7456,7764],[7439,7713],[7416,7701],[7431,7671],[7453,7671],[7461,7646],[7440,7631],[7446,7611],[7501,7584],[7496,7531],[7527,7501],[7568,7498],[7593,7442],[7570,7443],[7565,7391],[7548,7350],[7568,7339],[7549,7318],[7508,7330],[7491,7321],[7492,7276],[7470,7243],[7442,7233],[7455,7203],[7477,7209],[7505,7168],[7464,7166],[7465,7135],[7419,7107],[7437,7063],[7430,7023],[7453,7014],[7496,6953],[7549,6922],[7580,6914],[7573,6888],[7599,6874],[7610,6829],[7625,6773],[7608,6757],[7583,6776],[7535,6739],[7549,6710],[7531,6679],[7491,6679],[7487,6660],[7417,6665],[7374,6645],[7379,6608],[7412,6575],[7408,6553],[7442,6480],[7418,6420],[7432,6405],[7427,6379],[7439,6347],[7472,6343],[7511,6285],[7569,6241],[7533,6204],[7541,6150],[7528,6117],[7481,6085],[7457,6080],[7452,6044],[7467,6005],[7426,5969],[7388,5954],[7351,5922],[7334,5874],[7353,5847],[7340,5837],[7362,5809],[7351,5769],[7378,5747],[7390,5714],[7342,5699],[7389,5681],[7422,5679],[7413,5646],[7432,5612],[7407,5578],[7485,5572],[7512,5523],[7484,5500],[7517,5419],[7541,5400],[7477,5349],[7449,5335],[7416,5291],[7432,5272],[7391,5246],[7365,5249],[7317,5195],[7268,5182],[7242,5139],[7212,5123],[7200,5138],[7164,5114],[7131,5115],[7114,5094],[7077,5078],[7053,5092],[6987,5106],[6946,5084],[6899,5079],[6891,5059],[6840,5069],[6800,5044],[6768,5064],[6736,5054],[6685,5019],[6664,4988],[6637,4991],[6629,5012],[6585,5043],[6563,5037],[6543,5057],[6513,5122],[6497,5154],[6468,5154],[6456,5188],[6416,5227],[6419,5247],[6364,5265],[6344,5230],[6278,5219],[6273,5250],[6230,5288],[6192,5300],[6155,5289],[6121,5291],[6089,5255],[6071,5219],[6074,5184],[6056,5127],[6031,5098],[6039,5055],[5986,4996],[5978,5031],[5951,5024],[5936,5048],[5927,5009],[5875,4975],[5838,4972],[5831,4935],[5786,4910],[5721,4959],[5730,5050],[5720,5062],[5720,5111],[5733,5153],[5725,5222],[5703,5215],[5669,5227],[5661,5260],[5629,5296],[5641,5346],[5624,5377],[5579,5373],[5581,5434],[5570,5437],[5544,5491],[5512,5513],[5453,5496],[5450,5530],[5477,5539],[5471,5565],[5446,5597],[5415,5584],[5313,5586],[5263,5577],[5251,5602],[5271,5640],[5252,5654],[5277,5692],[5274,5716],[5291,5742],[5255,5754],[5242,5803],[5218,5819],[5205,5848],[5214,5866],[5181,5921],[5147,5930],[5205,5996],[5177,6109],[5145,6211],[5085,6273],[5092,6302],[5115,6302],[5166,6346],[5173,6372],[5224,6377],[5223,6418],[5205,6437],[5212,6467],[5241,6483],[5223,6510],[5235,6541],[5269,6563],[5302,6599],[5311,6637],[5269,6651],[5229,6750],[5177,6767],[5173,6793],[5146,6799],[5130,6832],[5135,6855],[5100,6901],[5100,6946]]],[[[6059,7988],[6023,8026],[6058,8021],[6063,8039],[6084,8077],[6114,8068],[6118,8089],[6170,8136],[6195,8111],[6184,8053],[6157,8021],[6059,7988]]],[[[5906,7934],[5941,7973],[6011,7989],[6006,7962],[6027,7955],[6044,7916],[6000,7880],[5963,7888],[5935,7933],[5918,7915],[5935,7890],[5998,7867],[6041,7888],[6024,7834],[6002,7832],[5967,7764],[5939,7758],[5964,7729],[5924,7702],[5858,7709],[5825,7724],[5840,7737],[5801,7761],[5799,7785],[5776,7799],[5782,7865],[5800,7859],[5899,7866],[5850,7908],[5868,7919],[5843,7929],[5906,7934]]]]}},{"type":"Feature","id":"RU.KH","properties":{"hc-group":"admin1","hc-middle-x":0.67,"hc-middle-y":0.75,"hc-key":"ru-kh","hc-a2":"KH","labelrank":"6","hasc":"RU.KH","alt-name":"Khabarovskiy Kray","woe-id":"2346883","subregion":"Far Eastern","fips":"RS30","postal-code":"KH","name":"Khabarovsk","country":"Russia","type-en":"Territory","region":"Far Eastern","longitude":"135.443","woe-name":"Khabarovsk","latitude":"57.0232","woe-label":"Khabarovskiy Kray, RU, Russia","type":"Kray"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8008,5705],[8024,5714],[8013,5765],[8037,5782],[8063,5780],[8078,5752],[8079,5717],[8039,5727],[8034,5700],[8008,5705]]],[[[8021,6745],[7990,6724],[8018,6694],[7989,6666],[7974,6688],[7937,6623],[7880,6557],[7873,6522],[7853,6504],[7836,6427],[7860,6339],[7852,6275],[7861,6243],[7890,6200],[7880,6153],[7893,6122],[7883,6065],[7885,6003],[7902,5925],[7919,5922],[7908,5896],[7914,5851],[7905,5709],[7909,5650],[7897,5620],[7896,5580],[7917,5566],[7963,5582],[8032,5659],[8100,5569],[8127,5598],[8115,5632],[8089,5628],[8097,5692],[8108,5717],[8115,5636],[8155,5656],[8170,5587],[8201,5633],[8207,5675],[8198,5717],[8217,5701],[8224,5653],[8242,5669],[8212,5728],[8174,5758],[8225,5791],[8240,5830],[8292,5839],[8311,5825],[8358,5826],[8400,5845],[8462,5844],[8462,5807],[8516,5782],[8520,5759],[8563,5761],[8595,5738],[8604,5690],[8598,5669],[8618,5652],[8617,5629],[8645,5606],[8656,5575],[8686,5538],[8733,5509],[8752,5512],[8757,5475],[8798,5461],[8855,5374],[8892,5329],[8900,5196],[8925,5141],[8884,5119],[8859,5130],[8862,5167],[8827,5163],[8782,5190],[8764,5179],[8756,5121],[8728,5089],[8731,5068],[8805,5069],[8826,5087],[8845,5076],[8831,4995],[8795,4976],[8814,4941],[8809,4885],[8750,4831],[8728,4836],[8700,4803],[8697,4818],[8655,4810],[8630,4765],[8628,4734],[8651,4706],[8623,4670],[8575,4744],[8584,4786],[8579,4835],[8531,4852],[8519,4884],[8484,4873],[8514,4901],[8508,4939],[8476,4907],[8449,4909],[8438,4877],[8401,4865],[8359,4839],[8321,4863],[8283,4845],[8268,4853],[8244,4821],[8206,4822],[8218,4786],[8196,4783],[8172,4747],[8164,4771],[8113,4826],[8096,4818],[8094,4846],[8060,4858],[8020,4839],[8009,4865],[7984,4846],[7962,4936],[7984,4974],[7948,5006],[7971,5025],[8004,5089],[7995,5123],[8003,5149],[8036,5183],[8035,5200],[8006,5205],[7988,5228],[8104,5292],[8093,5327],[8055,5348],[8044,5399],[8022,5414],[7981,5409],[7963,5355],[7922,5338],[7910,5302],[7918,5285],[7853,5211],[7808,5170],[7803,5185],[7755,5224],[7718,5195],[7674,5179],[7657,5208],[7660,5242],[7680,5266],[7659,5302],[7685,5382],[7677,5402],[7696,5423],[7686,5471],[7647,5495],[7624,5478],[7605,5445],[7557,5403],[7541,5400],[7517,5419],[7484,5500],[7512,5523],[7485,5572],[7407,5578],[7432,5612],[7413,5646],[7422,5679],[7389,5681],[7342,5699],[7390,5714],[7378,5747],[7351,5769],[7362,5809],[7340,5837],[7353,5847],[7334,5874],[7351,5922],[7388,5954],[7426,5969],[7467,6005],[7452,6044],[7457,6080],[7481,6085],[7528,6117],[7541,6150],[7533,6204],[7569,6241],[7511,6285],[7472,6343],[7439,6347],[7427,6379],[7432,6405],[7418,6420],[7442,6480],[7408,6553],[7412,6575],[7379,6608],[7374,6645],[7417,6665],[7487,6660],[7491,6679],[7531,6679],[7549,6710],[7535,6739],[7583,6776],[7608,6757],[7625,6773],[7610,6829],[7650,6864],[7649,6889],[7687,6905],[7734,6906],[7804,6875],[7816,6842],[7841,6825],[7825,6807],[7823,6759],[7848,6738],[7874,6741],[7890,6784],[7952,6781],[7973,6800],[8023,6762],[8021,6745]]]]}},{"type":"Feature","id":"RU.SL","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.75,"hc-key":"ru-sl","hc-a2":"SL","labelrank":"2","hasc":"RU.SL","alt-name":"Sakhalinskaya Oblast","woe-id":"2346937","subregion":"Far Eastern","fips":"RS64","postal-code":"SL","name":"Sakhalin","country":"Russia","type-en":"Region","region":"Far Eastern","longitude":"152.467","woe-name":"Sakhalin","latitude":"47.3479","woe-label":"Sakhalinskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9770,6119],[9801,6027],[9808,5950],[9799,5929],[9781,5970],[9786,5986],[9772,6045],[9783,6073],[9770,6119]]],[[[9766,6310],[9781,6268],[9777,6248],[9760,6297],[9766,6310]]],[[[9546,6676],[9576,6697],[9579,6712],[9615,6685],[9623,6652],[9576,6696],[9546,6676]]],[[[9841,5438],[9841,5438],[9841,5438],[9841,5438],[9841,5438],[9841,5438],[9841,5438]]],[[[9841,5438],[9833,5477],[9834,5523],[9851,5559],[9849,5522],[9833,5477],[9844,5442],[9841,5438],[9841,5438]]],[[[9487,6863],[9461,6849],[9486,6865],[9483,6921],[9514,6909],[9496,6886],[9541,6840],[9539,6767],[9508,6779],[9513,6834],[9487,6863]]],[[[9841,5438],[9830,5424],[9767,5404],[9753,5409],[9750,5456],[9723,5529],[9758,5569],[9752,5513],[9765,5455],[9764,5426],[9782,5410],[9826,5426],[9841,5438],[9841,5438],[9841,5438]]],[[[9782,5747],[9764,5719],[9777,5692],[9786,5604],[9773,5601],[9767,5631],[9752,5699],[9751,5752],[9730,5774],[9758,5773],[9770,5798],[9762,5844],[9770,5862],[9790,5856],[9774,5783],[9782,5747]]],[[[8706,5865],[8728,5867],[8799,5842],[8919,5785],[8966,5778],[9033,5757],[9069,5739],[9116,5733],[9050,5717],[8990,5665],[9007,5666],[9001,5632],[9026,5602],[9097,5490],[9125,5468],[9174,5458],[9213,5466],[9283,5434],[9299,5469],[9350,5447],[9362,5416],[9327,5424],[9317,5439],[9271,5391],[9250,5397],[9244,5365],[9299,5271],[9273,5268],[9204,5307],[9171,5366],[9104,5406],[9080,5455],[9038,5480],[8970,5496],[8967,5513],[8890,5599],[8815,5655],[8788,5662],[8753,5701],[8742,5727],[8686,5747],[8632,5740],[8560,5794],[8548,5826],[8505,5869],[8457,5888],[8466,5937],[8488,5928],[8488,5970],[8467,5967],[8479,5993],[8446,6007],[8389,6009],[8397,6025],[8394,6050],[8441,6045],[8471,6009],[8506,6004],[8569,5983],[8622,5949],[8657,5904],[8706,5865]]]]}},{"type":"Feature","id":"RU.KA","properties":{"hc-group":"admin1","hc-middle-x":0.66,"hc-middle-y":0.73,"hc-key":"ru-ka","hc-a2":"KA","labelrank":"2","hasc":"RU.KA","alt-name":"Kamçatka|Kamchatskaya Oblast","woe-id":"20070514","subregion":"Far Eastern","fips":"RS26","postal-code":"KA","name":"Kamchatka","country":"Russia","type-en":"Region","region":"Far Eastern","longitude":"160.187","woe-name":"Kamchatka","latitude":"56.5325","woe-label":"Kamchatskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9175,7979],[9190,8006],[9211,7998],[9262,8022],[9281,8018],[9256,7997],[9196,7978],[9180,7959],[9175,7979]]],[[[8617,7987],[8609,8007],[8643,8012],[8663,7998],[8658,7962],[8682,7905],[8643,7932],[8617,7987]]],[[[8382,8813],[8375,8790],[8401,8763],[8385,8746],[8412,8738],[8457,8671],[8449,8652],[8498,8617],[8502,8584],[8532,8549],[8534,8520],[8564,8491],[8606,8476],[8587,8445],[8536,8434],[8505,8404],[8488,8319],[8505,8233],[8555,8167],[8558,8146],[8472,8190],[8469,8164],[8489,8133],[8503,8082],[8518,8085],[8538,8047],[8487,8035],[8500,8005],[8477,7969],[8499,7968],[8504,7941],[8530,7934],[8541,7912],[8575,7914],[8572,7896],[8603,7902],[8641,7818],[8708,7761],[8730,7757],[8767,7788],[8742,7812],[8793,7850],[8820,7820],[8825,7797],[8909,7767],[8923,7802],[9003,7791],[9019,7757],[8979,7732],[8958,7763],[8944,7747],[8952,7719],[8971,7730],[8978,7687],[9039,7634],[9069,7621],[9113,7618],[9152,7632],[9186,7580],[9176,7544],[9157,7535],[9153,7497],[9180,7420],[9201,7398],[9258,7369],[9324,7369],[9289,7339],[9292,7274],[9303,7234],[9354,7195],[9367,7201],[9413,7153],[9449,7083],[9494,6952],[9454,6970],[9435,6958],[9311,7001],[9206,7013],[9079,7052],[8998,7067],[8881,7103],[8788,7158],[8706,7229],[8691,7294],[8652,7340],[8599,7344],[8594,7363],[8617,7397],[8596,7429],[8610,7452],[8583,7548],[8540,7625],[8509,7648],[8493,7691],[8470,7715],[8471,7740],[8426,7815],[8416,7848],[8388,7861],[8375,7930],[8364,7944],[8360,8015],[8342,7998],[8306,8050],[8291,8035],[8259,8065],[8180,8093],[8162,8129],[8183,8174],[8132,8142],[8127,8045],[8156,8044],[8164,8021],[8189,8021],[8220,7995],[8242,8016],[8262,7988],[8230,7979],[8230,7956],[8188,7954],[8170,7976],[8149,7957],[8147,7999],[8089,8013],[8053,7996],[8031,8003],[8025,8038],[7995,8042],[7969,8072],[7934,8065],[7922,8083],[7892,8083],[7893,8108],[7871,8135],[7842,8124],[7812,8131],[7796,8162],[7810,8205],[7856,8245],[7836,8252],[7859,8291],[7889,8294],[7887,8318],[7907,8354],[7901,8385],[7948,8407],[7962,8457],[8009,8473],[8025,8502],[8072,8510],[8086,8481],[8136,8419],[8162,8461],[8216,8502],[8274,8522],[8287,8563],[8273,8592],[8284,8610],[8268,8653],[8280,8670],[8288,8731],[8271,8756],[8288,8795],[8342,8792],[8359,8816],[8382,8813]]]]}},{"type":"Feature","id":"RU.KT","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.41,"hc-key":"ru-kt","hc-a2":"KT","labelrank":"6","hasc":"RU.KT","alt-name":"Kostromskaya","woe-id":"2346903","subregion":"Central","fips":"RS37","postal-code":"KT","name":"Kostroma","country":"Russia","type-en":"Region","region":"Central","longitude":"43.4689","woe-name":"Kostroma","latitude":"58.3882","woe-label":"Kostromskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[987,6026],[985,6026],[986,6033],[990,6032],[987,6026]]],[[[1180,5928],[1154,5907],[1153,5846],[1140,5828],[1119,5844],[1078,5831],[1046,5847],[983,5810],[928,5856],[897,5895],[877,5875],[807,5872],[768,5902],[768,5923],[737,5926],[712,5953],[739,5975],[691,6005],[680,6058],[644,6035],[605,6055],[564,6088],[600,6113],[602,6102],[641,6137],[720,6144],[731,6180],[762,6176],[794,6190],[834,6181],[847,6166],[882,6193],[876,6173],[900,6148],[895,6124],[945,6096],[980,6031],[1010,5994],[1022,5995],[1069,5949],[1110,5942],[1142,5969],[1180,5928]]]]}},{"type":"Feature","id":"RU.2510","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.59,"hc-key":"ru-2510","hc-a2":"MO","labelrank":"9","hasc":"RU.MS","alt-name":"Mosca|Moscou|Moscow|Mosc£|Moskau|Moskova|Moskovskaya","woe-id":"2346910","subregion":"Central","fips":"RS47","postal-code":null,"name":"Moskva","country":"Russia","type-en":"Region","region":"Central","longitude":"37.6188","woe-name":"Moskva","latitude":"55.7177","woe-label":"Moskva, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[207,6170],[200,6178],[206,6181],[215,6170],[207,6170]]],[[[252,6183],[246,6183],[245,6191],[254,6195],[252,6183]]],[[[129,6109],[139,6121],[144,6145],[177,6169],[183,6145],[220,6146],[246,6164],[261,6135],[167,6104],[129,6109]]]]}},{"type":"Feature","id":"RU.RZ","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.49,"hc-key":"ru-rz","hc-a2":"RZ","labelrank":"6","hasc":"RU.RZ","alt-name":"Ryazanskaya Oblast|Ryazanskaya Oblast","woe-id":"2346922","subregion":"Central","fips":"RS62","postal-code":"RZ","name":"Ryazan\'","country":"Russia","type-en":"Region","region":"Central","longitude":"40.6258","woe-name":"Ryazan\'","latitude":"54.3363","woe-label":"Ryazanskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[414,5716],[412,5719],[415,5724],[417,5722],[414,5716]]],[[[121,5745],[122,5798],[67,5820],[70,5857],[107,5893],[132,5933],[164,5930],[180,5954],[206,5929],[243,5938],[293,5923],[289,5939],[336,5922],[356,5903],[349,5884],[375,5866],[388,5823],[408,5798],[413,5756],[437,5744],[423,5729],[406,5719],[407,5686],[381,5671],[345,5681],[359,5654],[329,5665],[328,5642],[306,5642],[297,5646],[292,5650],[243,5698],[216,5680],[192,5682],[177,5728],[132,5733],[121,5745]]]]}},{"type":"Feature","id":"RU.SA","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.44,"hc-key":"ru-sa","hc-a2":"SA","labelrank":"6","hasc":"RU.SA","alt-name":"Kuybyshev|Kuybyshevskaya|Samarskaya Oblast","woe-id":"2346906","subregion":"Volga","fips":"RS65","postal-code":"SA","name":"Samara","country":"Russia","type-en":"Region","region":"Volga","longitude":"50.4377","woe-name":"Samara","latitude":"53.1783","woe-label":"Samarskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[942,4959],[939,4964],[943,4967],[946,4962],[942,4959]]],[[[886,5216],[905,5195],[901,5170],[922,5171],[930,5148],[954,5165],[992,5159],[1019,5111],[1013,5085],[1053,5074],[1049,5061],[1026,5070],[1009,5045],[1016,5027],[966,4996],[940,4989],[937,4968],[895,4934],[855,4936],[841,4916],[828,4929],[809,4902],[789,4900],[768,4873],[688,4875],[699,4894],[681,4949],[656,4981],[658,5011],[640,5053],[609,5062],[616,5099],[594,5124],[610,5130],[634,5135],[616,5167],[628,5183],[632,5224],[649,5227],[671,5207],[707,5231],[729,5202],[753,5208],[790,5169],[825,5146],[880,5183],[886,5216]]]]}},{"type":"Feature","id":"RU.UL","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.51,"hc-key":"ru-ul","hc-a2":"UL","labelrank":"7","hasc":"RU.UL","alt-name":"Simbirsk|Simbirskaya G.|Ul\'yanovskaya Oblast","woe-id":"2346931","subregion":"Volga","fips":"RS81","postal-code":"UL","name":"Ul\'yanovsk","country":"Russia","type-en":"Region","region":"Volga","longitude":"47.3773","woe-name":"Ul\'yanovsk","latitude":"53.9248","woe-label":"Ulryanovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[789,5385],[796,5388],[797,5385],[791,5384],[789,5385]]],[[[546,5426],[580,5430],[640,5400],[641,5432],[665,5463],[679,5422],[708,5404],[702,5375],[748,5378],[784,5346],[787,5324],[812,5304],[866,5302],[859,5249],[886,5216],[880,5183],[825,5146],[790,5169],[753,5208],[729,5202],[707,5231],[671,5207],[649,5227],[632,5224],[628,5183],[616,5167],[634,5135],[610,5130],[554,5162],[540,5156],[493,5196],[481,5216],[507,5222],[556,5286],[545,5330],[565,5389],[546,5426]]]]}},{"type":"Feature","id":"RU.OM","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.52,"hc-key":"ru-om","hc-a2":"OM","labelrank":"6","hasc":"RU.OM","alt-name":"Omskaya Oblast","woe-id":"2346915","subregion":"West Siberian","fips":"RS54","postal-code":"OM","name":"Omsk","country":"Russia","type-en":"Region","region":"Siberian","longitude":"73.3995","woe-name":"Omsk","latitude":"56.0471","woe-label":"Omskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2586,4490],[2582,4492],[2588,4496],[2590,4496],[2586,4490]]],[[[2581,4484],[2577,4486],[2581,4487],[2583,4485],[2581,4484]]],[[[2930,4107],[2860,4081],[2838,4090],[2804,4078],[2792,4051],[2756,4085],[2702,4070],[2693,4107],[2731,4139],[2692,4154],[2688,4176],[2660,4187],[2635,4161],[2633,4225],[2612,4204],[2589,4227],[2579,4213],[2549,4233],[2532,4224],[2525,4260],[2543,4253],[2560,4308],[2548,4320],[2559,4361],[2556,4395],[2526,4404],[2533,4422],[2564,4437],[2555,4480],[2590,4484],[2599,4531],[2631,4555],[2640,4577],[2683,4568],[2699,4591],[2683,4618],[2673,4664],[2638,4653],[2625,4691],[2649,4698],[2642,4741],[2650,4761],[2712,4831],[2738,4799],[2720,4759],[2780,4746],[2788,4729],[2843,4709],[2867,4722],[2954,4694],[3042,4737],[3053,4715],[3031,4706],[3023,4672],[3053,4639],[3047,4601],[3075,4532],[3071,4455],[3026,4426],[3044,4426],[3056,4380],[3009,4385],[2937,4347],[2946,4307],[2924,4295],[2959,4171],[2946,4166],[2930,4107]]]]}},{"type":"Feature","id":"RU.NS","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.52,"hc-key":"ru-ns","hc-a2":"NS","labelrank":"6","hasc":"RU.NS","alt-name":"Novosibirskaya Oblast","woe-id":"2346914","subregion":"West Siberian","fips":"RS53","postal-code":"NS","name":"Novosibirsk","country":"Russia","type-en":"Region","region":"Siberian","longitude":"80.08320000000001","woe-name":"Novosibirsk","latitude":"55.3139","woe-label":"Novosibirskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[3094,3954],[3000,4068],[2992,4097],[3018,4089],[3045,4130],[2930,4107],[2946,4166],[2959,4171],[2924,4295],[2946,4307],[2937,4347],[3009,4385],[3056,4380],[3044,4426],[3026,4426],[3071,4455],[3075,4532],[3139,4507],[3264,4476],[3263,4470],[3353,4425],[3401,4345],[3473,4347],[3504,4303],[3573,4307],[3641,4326],[3653,4311],[3634,4282],[3657,4230],[3638,4210],[3674,4200],[3706,4241],[3746,4242],[3757,4241],[3754,4196],[3778,4145],[3774,4088],[3790,4070],[3776,4051],[3785,4014],[3748,3998],[3723,3972],[3708,3985],[3641,3978],[3623,3956],[3606,3974],[3560,3940],[3532,3899],[3477,3941],[3483,3977],[3455,3976],[3451,3996],[3419,4012],[3408,4049],[3379,4026],[3301,4001],[3256,3975],[3205,3983],[3177,3966],[3143,3968],[3142,3984],[3094,3954]]]}},{"type":"Feature","id":"RU.MM","properties":{"hc-group":"admin1","hc-middle-x":0.63,"hc-middle-y":0.5,"hc-key":"ru-mm","hc-a2":"MM","labelrank":"6","hasc":"RU.MM","alt-name":"Murmanskaya Oblast","woe-id":"2346912","subregion":"Northern","fips":"RS28","postal-code":"MM","name":"Murmansk","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"34.3212","woe-name":"Murmansk","latitude":"67.9609","woe-label":"Murmanskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1319,7320],[1332,7313],[1321,7313],[1319,7318],[1319,7320]]],[[[1210,7515],[1249,7555],[1338,7550],[1364,7558],[1394,7623],[1392,7663],[1426,7695],[1477,7701],[1476,7722],[1525,7700],[1548,7707],[1575,7685],[1617,7687],[1620,7655],[1655,7677],[1657,7640],[1685,7622],[1708,7635],[1701,7564],[1684,7568],[1673,7605],[1665,7577],[1677,7550],[1657,7551],[1684,7527],[1689,7491],[1728,7398],[1730,7282],[1714,7217],[1724,7212],[1721,7143],[1732,7117],[1734,7042],[1689,6995],[1672,6961],[1643,6950],[1569,6945],[1495,6971],[1455,7002],[1435,7035],[1419,7104],[1402,7128],[1380,7190],[1383,7235],[1363,7248],[1371,7272],[1353,7311],[1362,7362],[1375,7373],[1362,7403],[1331,7345],[1338,7323],[1315,7329],[1304,7344],[1269,7340],[1255,7362],[1281,7403],[1269,7430],[1210,7515]]]]}},{"type":"Feature","id":"RU.LN","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.15,"hc-key":"ru-ln","hc-a2":"LN","labelrank":"2","hasc":"RU.LN","alt-name":"Saint Petersburg|Sankt-Peterburgskaya G.|Leningradskaya Oblast","woe-id":"2346907","subregion":"Northwestern","fips":"RS42","postal-code":"LN","name":"Leningrad","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"32.7736","woe-name":"Leningrad","latitude":"59.9905","woe-label":"Leningradskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[182,7085],[227,7091],[216,7072],[244,7070],[256,7099],[297,7117],[293,7087],[323,7091],[336,7058],[364,7057],[378,7017],[358,6955],[398,6934],[399,6956],[427,6983],[415,7044],[395,7052],[383,7081],[397,7105],[386,7118],[408,7144],[408,7121],[440,7140],[399,7158],[385,7186],[489,7158],[533,7141],[527,7112],[538,7094],[583,6872],[610,6856],[657,6854],[662,6830],[682,6833],[673,6864],[687,6865],[735,6807],[768,6757],[770,6736],[725,6719],[700,6728],[684,6707],[610,6670],[619,6647],[586,6614],[557,6598],[486,6618],[458,6683],[464,6719],[446,6760],[401,6766],[391,6788],[407,6813],[381,6849],[361,6838],[320,6841],[328,6855],[268,6863],[248,6900],[220,6883],[201,6890],[188,6924],[199,6938],[207,6989],[186,7039],[198,7058],[182,7085]]]}},{"type":"Feature","id":"RU.SP","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.73,"hc-key":"ru-sp","hc-a2":"SP","labelrank":"7","hasc":"RU.SP","alt-name":"Sankt-Peterburg gorsovet","woe-id":"20070507","subregion":"Northwestern","fips":"RS52","postal-code":"SP","name":"City of St. Petersburg","country":"Russia","type-en":"City","region":"Northwestern","longitude":"30.2901","woe-name":"City of St. Petersburg","latitude":"59.8064","woe-label":"St. Peterburg, RU, Russia","type":"Gorsovet"},"geometry":{"type":"Polygon","coordinates":[[[395,7052],[415,7044],[427,6983],[399,6956],[398,6934],[358,6955],[378,7017],[384,6983],[404,6987],[411,7023],[395,7052]]]}},{"type":"Feature","id":"RU.KI","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.46,"hc-key":"ru-ki","hc-a2":"KI","labelrank":"2","hasc":"RU.KI","alt-name":"Karelian A.S.S.R.|Karelo-Finnish A.S.S.R.|Karel\'skaya A.S.S.R.|Olonets|Olonetskaya G.|Kareliya|Republic of Karelia","woe-id":"2346873","subregion":"Northern","fips":"RS28","postal-code":"KI","name":"Karelia","country":"Russia","type-en":"Republic","region":"Northwestern","longitude":"33.1446","woe-name":"Karelia","latitude":"63.5295","woe-label":"Kareliya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[1315,7329],[1314,7328],[1319,7320],[1319,7318],[1321,7313],[1325,7276],[1306,7270],[1313,7209],[1300,7173],[1278,7154],[1221,7150],[1201,7110],[1245,7066],[1222,7047],[1227,7071],[1196,7103],[1150,7059],[1136,7065],[1128,7008],[1150,6987],[1135,6921],[1090,6901],[1062,6922],[1057,6890],[1014,6855],[1000,6823],[1005,6776],[1022,6751],[992,6722],[962,6667],[905,6636],[880,6663],[878,6688],[852,6707],[833,6703],[770,6736],[768,6757],[735,6807],[687,6865],[673,6864],[682,6833],[662,6830],[657,6854],[610,6856],[583,6872],[538,7094],[527,7112],[533,7141],[587,7129],[692,7119],[754,7105],[816,7116],[840,7159],[847,7222],[864,7272],[914,7260],[944,7274],[949,7317],[998,7343],[991,7360],[1009,7385],[1044,7387],[1094,7425],[1110,7405],[1160,7449],[1210,7515],[1269,7430],[1281,7403],[1255,7362],[1269,7340],[1304,7344],[1315,7329]]]}},{"type":"Feature","id":"RU.KC","properties":{"hc-group":"admin1","hc-middle-x":0.25,"hc-middle-y":0.6,"hc-key":"ru-kc","hc-a2":"KC","labelrank":"2","hasc":"RU.KC","alt-name":"Karaçay-Çerkes|Karachay-Cherkessiya|Karachayevo-Cherkesskaya Respublika|Karachayevo-Cherkessiya|Karachayevo-Cherkess Republic|K","woe-id":"20070522","subregion":"North Caucasus","fips":"RS32","postal-code":"KC","name":"Karachay-Cherkess","country":"Russia","type-en":"Republic","region":"Volga","longitude":"41.6866","woe-name":"Karachay-Cherkess","latitude":"43.7073","woe-label":"Karachayevo-Cherkesiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-782,4643],[-809,4663],[-847,4714],[-849,4738],[-873,4775],[-883,4817],[-834,4845],[-815,4834],[-803,4853],[-776,4792],[-749,4788],[-707,4810],[-664,4719],[-696,4730],[-706,4709],[-682,4697],[-698,4668],[-735,4669],[-782,4643]]]}},{"type":"Feature","id":"RU.IN","properties":{"hc-group":"admin1","hc-middle-x":0.83,"hc-middle-y":0.15,"hc-key":"ru-in","hc-a2":"IN","labelrank":"2","hasc":"RU.IN","alt-name":"Ingouchie|Inguchétia|Inguschetien|Ingushetia|Ingushetiya|Ingush Republic|Ingushskaya Respublika|Respublika Ingushetiya","woe-id":"20070521","subregion":"North Caucasus","fips":"RS19","postal-code":"IN","name":"Ingush","country":"Russia","type-en":"Republic","region":"Volga","longitude":"44.8468","woe-name":"Ingush","latitude":"43.3661","woe-label":"Ingushetiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-612,4358],[-624,4383],[-644,4376],[-644,4400],[-631,4414],[-617,4391],[-589,4408],[-592,4474],[-574,4489],[-545,4464],[-537,4438],[-594,4360],[-612,4358]]]}},{"type":"Feature","id":"RU.KB","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.56,"hc-key":"ru-kb","hc-a2":"KB","labelrank":"2","hasc":"RU.KB","alt-name":"Kabardin A.S.S.R.|Kabardino-Balkarskaya A.S.S.R.|Kabardino-Balkariya|Kabardino-Balkarsk|Kabard|Kabardino-Balkarskaya Republic","woe-id":"2346871","subregion":"North Caucasus","fips":"RS22","postal-code":"KB","name":"Kabardin-Balkar","country":"Russia","type-en":"Republic","region":"Volga","longitude":"43.3982","woe-name":"Kabardin-Balkar","latitude":"43.3757","woe-label":"Kabardino-Balkariya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-734,4521],[-747,4547],[-744,4575],[-772,4614],[-782,4643],[-735,4669],[-698,4668],[-645,4639],[-647,4612],[-611,4582],[-582,4581],[-560,4545],[-568,4533],[-572,4505],[-593,4493],[-633,4511],[-649,4497],[-654,4521],[-714,4511],[-734,4521]]]}},{"type":"Feature","id":"RU.NO","properties":{"hc-group":"admin1","hc-middle-x":0.21,"hc-middle-y":0.55,"hc-key":"ru-no","hc-a2":"NO","labelrank":"2","hasc":"RU.NO","alt-name":"Kuzey Osetya|Respublika Severnaya Osetiya|Severnaya Osetiya-Alaniya|North Ossetian A.S.S.R.|Republic of North Osetia-Alania","woe-id":"2346877","subregion":"North Caucasus","fips":"RS68","postal-code":"NO","name":"North Ossetia","country":"Russia","type-en":"Republic","region":"Volga","longitude":"44.1653","woe-name":null,"latitude":"42.9969","woe-label":null,"type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-545,4464],[-574,4489],[-592,4474],[-589,4408],[-617,4391],[-631,4414],[-644,4400],[-678,4428],[-721,4442],[-732,4463],[-713,4472],[-734,4521],[-714,4511],[-654,4521],[-649,4497],[-633,4511],[-593,4493],[-572,4505],[-568,4533],[-527,4488],[-538,4471],[-545,4464]]]}},{"type":"Feature","id":"RU.ST","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.48,"hc-key":"ru-st","hc-a2":"ST","labelrank":"7","hasc":"RU.ST","alt-name":"Stavropol\'skiy Kray|Stavropolskiy Kray","woe-id":"2346887","subregion":"North Caucasus","fips":"RS70","postal-code":"ST","name":"Stavropol\'","country":"Russia","type-en":"Territory","region":"Volga","longitude":"43.2791","woe-name":"Stavropol\'","latitude":"44.981","woe-label":"Stavropolrskiy Kray, RU, Russia","type":"Kray"},"geometry":{"type":"Polygon","coordinates":[[[-538,4471],[-527,4488],[-568,4533],[-560,4545],[-582,4581],[-611,4582],[-647,4612],[-645,4639],[-698,4668],[-682,4697],[-706,4709],[-696,4730],[-664,4719],[-707,4810],[-705,4860],[-660,4865],[-672,4880],[-657,4910],[-682,4940],[-662,4984],[-644,4996],[-608,4967],[-595,4994],[-574,4978],[-550,4952],[-522,4911],[-488,4884],[-436,4876],[-421,4816],[-391,4770],[-399,4720],[-390,4686],[-369,4661],[-332,4556],[-340,4529],[-367,4516],[-412,4526],[-428,4489],[-462,4500],[-432,4468],[-448,4450],[-466,4443],[-490,4479],[-506,4464],[-538,4471]]]}},{"type":"Feature","id":"RU.SM","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.66,"hc-key":"ru-sm","hc-a2":"SM","labelrank":"6","hasc":"RU.SM","alt-name":"Smolenskaya Oblast","woe-id":"2346925","subregion":"Central","fips":"RS69","postal-code":"SM","name":"Smolensk","country":"Russia","type-en":"Region","region":"Central","longitude":"33.0803","woe-name":"Smolensk","latitude":"54.6726","woe-label":"Smolenskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-112,6615],[-82,6618],[-68,6584],[-43,6555],[-49,6535],[-29,6517],[-10,6466],[19,6440],[67,6426],[89,6430],[103,6409],[106,6366],[137,6329],[126,6302],[68,6267],[64,6257],[-13,6251],[-51,6271],[-84,6268],[-81,6294],[-99,6324],[-175,6298],[-195,6313],[-208,6299],[-284,6314],[-283,6344],[-264,6355],[-270,6393],[-289,6418],[-254,6432],[-256,6483],[-216,6525],[-215,6567],[-175,6567],[-153,6602],[-112,6615]]]}},{"type":"Feature","id":"RU.PS","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.44,"hc-key":"ru-ps","hc-a2":"PS","labelrank":"6","hasc":"RU.PS","alt-name":"Pskovskaya Oblast","woe-id":"2346920","subregion":"Northwestern","fips":"RS60","postal-code":"PS","name":"Pskov","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"29.1229","woe-name":"Pskov","latitude":"57.2449","woe-label":"Pskovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-68,6584],[-82,6618],[-112,6615],[-109,6687],[-127,6712],[-162,6733],[-133,6758],[-139,6789],[-160,6800],[-149,6825],[-167,6847],[-112,6892],[-84,6941],[-93,6951],[-29,6965],[-17,7017],[26,7022],[48,6994],[74,6990],[88,7017],[70,7037],[79,7052],[119,7048],[182,7085],[198,7058],[186,7039],[207,6989],[199,6938],[188,6924],[201,6890],[164,6898],[144,6885],[138,6856],[155,6811],[125,6786],[85,6771],[47,6734],[62,6710],[33,6712],[24,6678],[3,6672],[3,6624],[-30,6604],[-45,6610],[-68,6584]]]}},{"type":"Feature","id":"RU.TV","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.46,"hc-key":"ru-tv","hc-a2":"TV","labelrank":"6","hasc":"RU.TV","alt-name":"Kalinin|Kalininskaya|Tverskaya Oblast","woe-id":"2346898","subregion":"Central","fips":"RS77","postal-code":"TV","name":"Tver\'","country":"Russia","type-en":"Region","region":"Central","longitude":"34.5445","woe-name":"Tver\'","latitude":"57.0297","woe-label":"Tverskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-68,6584],[-45,6610],[-30,6604],[3,6624],[3,6672],[24,6678],[33,6712],[62,6710],[83,6668],[111,6668],[158,6629],[203,6618],[222,6581],[250,6597],[299,6591],[307,6612],[348,6595],[365,6536],[387,6544],[393,6524],[426,6524],[463,6482],[485,6476],[501,6455],[555,6458],[570,6443],[552,6378],[507,6369],[508,6340],[481,6350],[462,6318],[465,6290],[441,6275],[458,6238],[432,6231],[390,6186],[378,6202],[383,6236],[352,6238],[327,6259],[299,6245],[295,6266],[230,6297],[209,6350],[137,6329],[106,6366],[103,6409],[89,6430],[67,6426],[19,6440],[-10,6466],[-29,6517],[-49,6535],[-43,6555],[-68,6584]]]}},{"type":"Feature","id":"RU.VO","properties":{"hc-group":"admin1","hc-middle-x":0.34,"hc-middle-y":0.35,"hc-key":"ru-vo","hc-a2":"VO","labelrank":"6","hasc":"RU.VO","alt-name":"Vologodskaya Oblast","woe-id":"2346934","subregion":"Northern","fips":"RS85","postal-code":"VO","name":"Vologda","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"40.9333","woe-name":"Vologda","latitude":"59.6397","woe-label":"Vologodskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[552,6378],[570,6443],[555,6458],[501,6455],[485,6476],[498,6480],[500,6529],[470,6569],[485,6574],[486,6618],[557,6598],[586,6614],[619,6647],[610,6670],[684,6707],[700,6728],[725,6719],[770,6736],[833,6703],[852,6707],[878,6688],[880,6663],[905,6636],[871,6592],[864,6576],[864,6575],[863,6571],[862,6572],[857,6558],[854,6512],[877,6503],[883,6470],[904,6457],[907,6433],[962,6397],[977,6351],[1001,6368],[1027,6349],[1043,6303],[1066,6298],[1073,6264],[1100,6242],[1140,6252],[1167,6238],[1158,6224],[1205,6163],[1239,6187],[1259,6165],[1249,6150],[1268,6114],[1289,6113],[1298,6063],[1223,6016],[1196,6038],[1196,6003],[1223,5984],[1192,5963],[1180,5928],[1142,5969],[1110,5942],[1069,5949],[1022,5995],[1010,5994],[980,6031],[945,6096],[895,6124],[900,6148],[876,6173],[882,6193],[847,6166],[834,6181],[794,6190],[762,6176],[731,6180],[689,6225],[701,6255],[698,6292],[669,6336],[645,6319],[601,6373],[552,6378]],[[987,6026],[990,6032],[986,6033],[985,6026],[987,6026]]]}},{"type":"Feature","id":"RU.IV","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.49,"hc-key":"ru-iv","hc-a2":"IV","labelrank":"7","hasc":"RU.IV","alt-name":"Ivanovskaya Oblast","woe-id":"2346897","subregion":"Central","fips":"RS21","postal-code":"IV","name":"Ivanovo","country":"Russia","type-en":"Region","region":"Central","longitude":"41.6244","woe-name":"Ivanovo","latitude":"57.1213","woe-label":"Ivanovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[453,6109],[486,6125],[520,6118],[564,6088],[605,6055],[644,6035],[680,6058],[691,6005],[739,5975],[712,5953],[737,5926],[768,5923],[768,5902],[767,5885],[738,5893],[724,5864],[697,5860],[651,5892],[616,5857],[593,5870],[581,5894],[557,5899],[566,5921],[510,5975],[493,6021],[456,6029],[458,6067],[477,6080],[453,6109]]]}},{"type":"Feature","id":"RU.YS","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.45,"hc-key":"ru-ys","hc-a2":"YS","labelrank":"6","hasc":"RU.YS","alt-name":"Yaroslavskaya Oblast","woe-id":"2346936","subregion":"Central","fips":"RS88","postal-code":"YS","name":"Yaroslavl\'","country":"Russia","type-en":"Region","region":"Central","longitude":"39.2547","woe-name":"Yaroslavl\'","latitude":"57.7329","woe-label":"Yaroslavskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[564,6088],[520,6118],[486,6125],[453,6109],[419,6097],[402,6131],[381,6145],[388,6171],[387,6177],[390,6186],[432,6231],[458,6238],[441,6275],[465,6290],[462,6318],[481,6350],[508,6340],[507,6369],[552,6378],[601,6373],[645,6319],[669,6336],[698,6292],[701,6255],[689,6225],[731,6180],[720,6144],[641,6137],[602,6102],[600,6113],[564,6088]]]}},{"type":"Feature","id":"RU.KG","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.52,"hc-key":"ru-kg","hc-a2":"KG","labelrank":"7","hasc":"RU.KG","alt-name":"Kaluzhskaya Oblast","woe-id":"2346899","subregion":"Central","fips":"RS25","postal-code":"KG","name":"Kaluga","country":"Russia","type-en":"Region","region":"Central","longitude":"35.3416","woe-name":"Kaluga","latitude":"54.2421","woe-label":"Kaluzhskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[144,6145],[139,6121],[129,6109],[123,6097],[119,6086],[75,6074],[68,6100],[53,6070],[36,6065],[13,6097],[-18,6119],[-25,6097],[-67,6102],[-88,6075],[-140,6103],[-162,6097],[-173,6119],[-168,6132],[-192,6175],[-170,6185],[-153,6235],[-172,6260],[-175,6298],[-99,6324],[-81,6294],[-84,6268],[-51,6271],[-13,6251],[64,6257],[81,6246],[105,6190],[129,6187],[144,6145]]]}},{"type":"Feature","id":"RU.BR","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.63,"hc-key":"ru-br","hc-a2":"BR","labelrank":"7","hasc":"RU.BR","alt-name":"Bryanskaya Oblast","woe-id":"2346892","subregion":"Central","fips":"RS10","postal-code":"BR","name":"Bryansk","country":"Russia","type-en":"Region","region":"Central","longitude":"33.2803","woe-name":"Bryansk","latitude":"53.0868","woe-label":"Bryanskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-175,6298],[-172,6260],[-153,6235],[-170,6185],[-192,6175],[-168,6132],[-173,6119],[-191,6106],[-190,6083],[-240,6106],[-244,6070],[-295,6057],[-341,6052],[-374,6069],[-385,6057],[-386,6089],[-362,6110],[-354,6144],[-377,6161],[-385,6194],[-413,6207],[-434,6259],[-469,6251],[-492,6275],[-476,6323],[-414,6367],[-407,6400],[-376,6400],[-361,6374],[-357,6338],[-328,6321],[-284,6314],[-208,6299],[-195,6313],[-175,6298]]]}},{"type":"Feature","id":"RU.KS","properties":{"hc-group":"admin1","hc-middle-x":0.15,"hc-middle-y":0.28,"hc-key":"ru-ks","hc-a2":"KS","labelrank":"7","hasc":"RU.KS","alt-name":"Kurskaya Oblast","woe-id":"2346905","subregion":"Central Black Earth","fips":"RS41","postal-code":"KS","name":"Kursk","country":"Russia","type-en":"Region","region":"Central","longitude":"36.2921","woe-name":"Kursk","latitude":"51.7358","woe-label":"Kurskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-434,5914],[-419,5947],[-441,5974],[-462,6026],[-442,6027],[-415,6065],[-385,6057],[-374,6069],[-341,6052],[-295,6057],[-249,6010],[-266,5992],[-212,5944],[-213,5887],[-198,5857],[-202,5830],[-170,5807],[-170,5776],[-143,5760],[-166,5728],[-190,5742],[-217,5702],[-231,5749],[-281,5796],[-293,5789],[-342,5816],[-371,5874],[-406,5870],[-434,5914]]]}},{"type":"Feature","id":"RU.LP","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.42,"hc-key":"ru-lp","hc-a2":"LP","labelrank":"7","hasc":"RU.LP","alt-name":"Lipetskaya Oblast","woe-id":"2346908","subregion":"Central Black Earth","fips":"RS43","postal-code":"LP","name":"Lipetsk","country":"Russia","type-en":"Region","region":"Central","longitude":"39.2073","woe-name":"Lipetsk","latitude":"52.7462","woe-label":"Lipetskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-143,5760],[-170,5776],[-170,5807],[-152,5817],[-116,5813],[-105,5861],[-76,5865],[-54,5886],[-42,5886],[-30,5845],[-5,5833],[17,5865],[41,5850],[70,5857],[67,5820],[122,5798],[121,5745],[58,5702],[34,5698],[30,5647],[38,5608],[-8,5593],[-68,5670],[-74,5705],[-96,5711],[-104,5742],[-143,5760]]]}},{"type":"Feature","id":"RU.MS","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.76,"hc-key":"ru-ms","hc-a2":"MS","labelrank":"2","hasc":"RU.MS","alt-name":"Moskovsskaya Oblast","woe-id":"2346911","subregion":"Central","fips":null,"postal-code":"MS","name":"Moskovsskaya","country":"Russia","type-en":"Region","region":"Central","longitude":"38.671","woe-name":"Moskovsskaya","latitude":"55.1508","woe-label":"Moskovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[390,6186],[387,6177],[388,6171],[363,6157],[318,6090],[337,6059],[338,6021],[372,5996],[363,5958],[336,5922],[289,5939],[293,5923],[243,5938],[206,5929],[180,5954],[164,5930],[132,5933],[145,5978],[164,5982],[148,6020],[156,6037],[124,6056],[119,6086],[123,6097],[129,6109],[167,6104],[261,6135],[246,6164],[220,6146],[183,6145],[177,6169],[144,6145],[129,6187],[105,6190],[81,6246],[64,6257],[68,6267],[126,6302],[137,6329],[209,6350],[230,6297],[295,6266],[299,6245],[327,6259],[352,6238],[383,6236],[378,6202],[390,6186]],[[207,6170],[215,6170],[206,6181],[200,6178],[207,6170]],[[252,6183],[254,6195],[245,6191],[246,6183],[252,6183]]]}},{"type":"Feature","id":"RU.OL","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.48,"hc-key":"ru-ol","hc-a2":"OL","labelrank":"7","hasc":"RU.OL","alt-name":"Orlovskaya|Or\'ol|Oryol|Orlovskaya Oblast","woe-id":"2346917","subregion":"Central","fips":"RS56","postal-code":"OL","name":"Orel","country":"Russia","type-en":"Region","region":"Central","longitude":"36.4166","woe-name":"Orel","latitude":"52.8778","woe-label":"Orlovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-295,6057],[-244,6070],[-240,6106],[-190,6083],[-191,6106],[-173,6119],[-162,6097],[-140,6103],[-88,6075],[-81,5988],[-64,5955],[-38,5930],[-52,5920],[-54,5886],[-76,5865],[-105,5861],[-116,5813],[-152,5817],[-170,5807],[-202,5830],[-198,5857],[-213,5887],[-212,5944],[-266,5992],[-249,6010],[-295,6057]]]}},{"type":"Feature","id":"RU.NZ","properties":{"hc-group":"admin1","hc-middle-x":0.27,"hc-middle-y":0.4,"hc-key":"ru-nz","hc-a2":"NZ","labelrank":"2","hasc":"RU.NZ","alt-name":"Gor\'kiy|Gor\'kovskaya|Gorky|Nizhegorodskaya|Nizhniy-Novgorod","woe-id":"2346895","subregion":"Volga-Vyatka","fips":"RS51","postal-code":"NZ","name":"Nizhegorod","country":"Russia","type-en":"Region","region":"Volga","longitude":"44.7751","woe-name":"Nizhegorod","latitude":"56.1384","woe-label":"Nizhegorodskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[423,5729],[437,5744],[413,5756],[408,5798],[460,5805],[476,5828],[513,5822],[568,5835],[584,5824],[593,5870],[616,5857],[651,5892],[697,5860],[724,5864],[738,5893],[767,5885],[768,5902],[807,5872],[877,5875],[897,5895],[928,5856],[983,5810],[983,5800],[1039,5748],[1054,5722],[998,5689],[953,5729],[897,5674],[841,5708],[817,5688],[794,5698],[782,5684],[797,5664],[775,5650],[776,5609],[721,5589],[729,5538],[685,5529],[666,5515],[647,5532],[657,5550],[626,5552],[609,5538],[568,5546],[555,5519],[516,5549],[502,5599],[508,5623],[487,5677],[455,5680],[425,5710],[423,5729]]]}},{"type":"Feature","id":"RU.PZ","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.63,"hc-key":"ru-pz","hc-a2":"PZ","labelrank":"7","hasc":"RU.PZ","alt-name":"Penzenskaya Oblast","woe-id":"2346918","subregion":"Volga","fips":"RS57","postal-code":"PZ","name":"Penza","country":"Russia","type-en":"Region","region":"Volga","longitude":"44.8159","woe-name":"Penza","latitude":"53.0562","woe-label":"Penzenskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[292,5650],[297,5646],[306,5642],[308,5617],[333,5609],[358,5583],[377,5597],[410,5555],[402,5532],[430,5474],[448,5466],[458,5491],[503,5463],[505,5443],[546,5426],[565,5389],[545,5330],[556,5286],[507,5222],[481,5216],[449,5258],[402,5251],[378,5289],[346,5309],[328,5307],[319,5363],[281,5353],[253,5406],[206,5450],[211,5465],[243,5464],[261,5627],[292,5650]]]}},{"type":"Feature","id":"RU.VL","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.7,"hc-key":"ru-vl","hc-a2":"VL","labelrank":"7","hasc":"RU.VL","alt-name":"Vladimirskaya","woe-id":"2346932","subregion":"Central","fips":"RS83","postal-code":"VL","name":"Vladimir","country":"Russia","type-en":"Region","region":"Central","longitude":"40.6207","woe-name":"Vladimir","latitude":"55.8966","woe-label":"Vladimirskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[388,6171],[381,6145],[402,6131],[419,6097],[453,6109],[477,6080],[458,6067],[456,6029],[493,6021],[510,5975],[566,5921],[557,5899],[581,5894],[593,5870],[584,5824],[568,5835],[513,5822],[476,5828],[460,5805],[408,5798],[388,5823],[375,5866],[349,5884],[356,5903],[336,5922],[363,5958],[372,5996],[338,6021],[337,6059],[318,6090],[363,6157],[388,6171]]]}},{"type":"Feature","id":"RU.VR","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.65,"hc-key":"ru-vr","hc-a2":"VR","labelrank":"6","hasc":"RU.VR","alt-name":"Voronezhskaya Oblast","woe-id":"2346935","subregion":"Central Black Earth","fips":"RS86","postal-code":"VR","name":"Voronezh","country":"Russia","type-en":"Region","region":"Central","longitude":"40.5223","woe-name":"Voronezh","latitude":"50.7774","woe-label":"Voronezhskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-286,5408],[-311,5429],[-308,5465],[-323,5483],[-318,5507],[-293,5519],[-268,5572],[-240,5584],[-246,5625],[-223,5624],[-214,5648],[-235,5675],[-217,5702],[-190,5742],[-166,5728],[-143,5760],[-104,5742],[-96,5711],[-74,5705],[-68,5670],[-8,5593],[13,5556],[-5,5545],[27,5519],[70,5431],[85,5416],[86,5367],[71,5352],[20,5388],[-1,5423],[-26,5416],[-89,5436],[-85,5392],[-135,5370],[-152,5358],[-188,5365],[-223,5357],[-257,5378],[-286,5408]]]}},{"type":"Feature","id":"RU.KO","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.52,"hc-key":"ru-ko","hc-a2":"KO","labelrank":"2","hasc":"RU.KO","alt-name":"Komi A.S.S.R.|Republic of Komi|Respublika Komi","woe-id":"2346874","subregion":"Northern","fips":"RS34","postal-code":"KO","name":"Komi","country":"Russia","type-en":"Republic","region":"Northwestern","longitude":"55.8183","woe-name":"Komi","latitude":"64.1194","woe-label":"Komi, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[2130,5647],[2111,5635],[2098,5613],[2043,5616],[1922,5697],[1894,5697],[1869,5676],[1847,5699],[1824,5686],[1804,5706],[1762,5689],[1703,5752],[1688,5740],[1666,5764],[1678,5781],[1654,5809],[1637,5796],[1619,5816],[1601,5804],[1577,5829],[1546,5804],[1563,5758],[1545,5738],[1537,5758],[1471,5741],[1455,5776],[1423,5766],[1393,5785],[1342,5790],[1302,5748],[1286,5762],[1301,5779],[1282,5816],[1299,5831],[1271,5866],[1314,5921],[1346,5924],[1374,5994],[1398,6010],[1455,5985],[1502,6023],[1489,6054],[1536,6090],[1550,6089],[1622,6146],[1588,6186],[1552,6199],[1508,6159],[1480,6184],[1449,6187],[1455,6213],[1484,6243],[1496,6272],[1523,6269],[1550,6282],[1539,6333],[1561,6348],[1572,6380],[1567,6413],[1548,6447],[1550,6491],[1578,6483],[1695,6386],[1698,6360],[1751,6365],[1773,6340],[1794,6347],[1819,6311],[1855,6334],[1844,6362],[1857,6427],[1827,6449],[1909,6542],[2089,6519],[2099,6534],[2151,6527],[2215,6462],[2464,6296],[2530,6255],[2611,6213],[2700,6229],[2715,6253],[2790,6265],[2793,6285],[2841,6292],[2864,6314],[2903,6300],[2880,6277],[2870,6233],[2904,6220],[2892,6181],[2874,6187],[2879,6160],[2809,6136],[2791,6107],[2673,6095],[2608,6050],[2599,6031],[2543,6035],[2473,6007],[2473,5999],[2411,5973],[2393,6010],[2344,5989],[2301,5923],[2309,5905],[2279,5887],[2217,5822],[2189,5776],[2177,5706],[2133,5664],[2130,5647]]]}},{"type":"Feature","id":"RU.SV","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.5,"hc-key":"ru-sv","hc-a2":"SV","labelrank":"6","hasc":"RU.SV","alt-name":"Yekaterinburg|Sverdlovskaya Oblast","woe-id":"2346926","subregion":"Urals","fips":"RS71","postal-code":"SV","name":"Sverdlovsk","country":"Russia","type-en":"Region","region":"Urals","longitude":"61.7078","woe-name":"Sverdlovsk","latitude":"58.8952","woe-label":"Sverdlovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[2098,5613],[2111,5635],[2130,5647],[2154,5617],[2146,5592],[2213,5547],[2269,5456],[2278,5402],[2262,5387],[2256,5299],[2272,5268],[2263,5214],[2245,5172],[2320,5114],[2328,5004],[2345,4988],[2332,4945],[2331,4903],[2205,4899],[2181,4816],[2179,4775],[2164,4780],[2156,4796],[2113,4802],[2082,4772],[2033,4821],[1964,4836],[1964,4849],[1910,4831],[1898,4812],[1878,4853],[1836,4876],[1834,4860],[1764,4898],[1731,4933],[1688,4960],[1670,4946],[1642,4946],[1551,5014],[1563,5039],[1586,5084],[1590,5111],[1617,5100],[1666,5096],[1696,5160],[1721,5169],[1743,5140],[1771,5145],[1775,5188],[1871,5213],[1882,5242],[1866,5263],[1900,5306],[1865,5381],[1893,5404],[1949,5420],[2019,5474],[2041,5500],[2059,5559],[2090,5588],[2098,5613]]]}},{"type":"Feature","id":"RU.BK","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.5,"hc-key":"ru-bk","hc-a2":"BK","labelrank":"2","hasc":"RU.BK","alt-name":"Bashkir|Bashkiriya|Bashkirskaya A.S.S.R.|Republic of Bashkortostan|Respublika Bashkortostan","woe-id":"2346866","subregion":"Urals","fips":"RS08","postal-code":"BK","name":"Bashkortostan","country":"Russia","type-en":"Republic","region":"Volga","longitude":"56.5575","woe-name":"Bashkortostan","latitude":"54.2086","woe-label":"Bashkortostan, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[1258,5176],[1300,5172],[1347,5191],[1376,5202],[1387,5156],[1423,5135],[1466,5127],[1463,5098],[1495,5094],[1506,5039],[1531,5031],[1563,5039],[1551,5014],[1642,4946],[1670,4946],[1688,4929],[1653,4894],[1662,4840],[1631,4850],[1619,4838],[1583,4849],[1570,4816],[1550,4816],[1541,4859],[1498,4845],[1529,4883],[1495,4915],[1448,4904],[1429,4870],[1449,4832],[1460,4780],[1500,4780],[1514,4758],[1560,4757],[1572,4747],[1625,4765],[1644,4736],[1599,4712],[1590,4675],[1574,4666],[1550,4689],[1522,4674],[1498,4678],[1437,4594],[1433,4575],[1388,4532],[1381,4502],[1381,4480],[1345,4482],[1342,4462],[1307,4437],[1274,4454],[1242,4493],[1182,4484],[1178,4512],[1153,4543],[1170,4546],[1171,4590],[1149,4609],[1179,4609],[1186,4637],[1177,4668],[1127,4650],[1113,4673],[1137,4727],[1117,4739],[1128,4808],[1085,4865],[1078,4928],[1089,4972],[1106,5013],[1157,5042],[1159,5115],[1197,5098],[1232,5102],[1282,5120],[1278,5149],[1258,5176]]]}},{"type":"Feature","id":"RU.UD","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.48,"hc-key":"ru-ud","hc-a2":"UD","labelrank":"2","hasc":"RU.UD","alt-name":"Udmurtiya|Udmurt Republic|Udmurtskaya A.S.S.R.|Udmurtskaya Respublika","woe-id":"2346880","subregion":"Urals","fips":"RS80","postal-code":"UD","name":"Udmurt","country":"Russia","type-en":"Republic","region":"Volga","longitude":"52.7957","woe-name":"Udmurt","latitude":"57.3433","woe-label":"Udmurtiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[1347,5191],[1300,5172],[1258,5176],[1230,5188],[1277,5211],[1262,5235],[1253,5212],[1238,5242],[1273,5274],[1214,5272],[1226,5253],[1199,5240],[1175,5270],[1164,5253],[1107,5295],[1141,5309],[1127,5319],[1156,5390],[1170,5382],[1199,5396],[1191,5411],[1206,5461],[1226,5478],[1251,5457],[1288,5465],[1320,5502],[1322,5533],[1368,5552],[1421,5501],[1449,5503],[1449,5476],[1483,5460],[1467,5434],[1465,5394],[1446,5357],[1423,5343],[1431,5320],[1403,5278],[1380,5274],[1363,5252],[1351,5267],[1334,5248],[1353,5240],[1347,5191]]]}},{"type":"Feature","id":"RU.MR","properties":{"hc-group":"admin1","hc-middle-x":0.37,"hc-middle-y":0.43,"hc-key":"ru-mr","hc-a2":"MR","labelrank":"2","hasc":"RU.MR","alt-name":"Mordov|Mordvian Autonomous Republic|Mordvinia|Republic of Mordovia|Mordovian A.S.S.R.","woe-id":"2346876","subregion":"Volga-Vyatka","fips":"RS46","postal-code":"MR","name":"Mordovia","country":"Russia","type-en":"Republic","region":"Volga","longitude":"44.4631","woe-name":"Mordovia","latitude":"54.1154","woe-label":"Mordoviya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[665,5463],[641,5432],[640,5400],[580,5430],[546,5426],[505,5443],[503,5463],[458,5491],[448,5466],[430,5474],[402,5532],[410,5555],[377,5597],[358,5583],[333,5609],[308,5617],[306,5642],[328,5642],[329,5665],[359,5654],[345,5681],[381,5671],[407,5686],[406,5719],[423,5729],[425,5710],[455,5680],[487,5677],[508,5623],[502,5599],[516,5549],[555,5519],[568,5546],[609,5538],[626,5552],[657,5550],[647,5532],[666,5515],[678,5509],[665,5463]],[[414,5716],[417,5722],[415,5724],[412,5719],[414,5716]]]}},{"type":"Feature","id":"RU.CV","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.49,"hc-key":"ru-cv","hc-a2":"CV","labelrank":"2","hasc":"RU.CV","alt-name":"Chuvashskaya A.S.S.R.|Chuvashskaya Respublika|Chuvashiya|Chuvash Republic","woe-id":"2346869","subregion":"Volga-Vyatka","fips":"RS16","postal-code":"CV","name":"Chuvash","country":"Russia","type-en":"Republic","region":"Volga","longitude":"47.1662","woe-name":"Chuvash","latitude":"55.4883","woe-label":"Chuvashiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[665,5463],[678,5509],[666,5515],[685,5529],[729,5538],[721,5589],[776,5609],[810,5589],[851,5583],[877,5568],[867,5550],[890,5515],[880,5489],[896,5455],[851,5457],[814,5430],[805,5398],[759,5384],[742,5414],[708,5404],[679,5422],[665,5463]]]}},{"type":"Feature","id":"RU.CL","properties":{"hc-group":"admin1","hc-middle-x":0.34,"hc-middle-y":0.68,"hc-key":"ru-cl","hc-a2":"CL","labelrank":"6","hasc":"RU.CL","alt-name":"Chelyabinskaya","woe-id":"2346893","subregion":"Urals","fips":"RS13","postal-code":"CL","name":"Chelyabinsk","country":"Russia","type-en":"Region","region":"Urals","longitude":"60.2383","woe-name":"Chelyabinsk","latitude":"54.1131","woe-label":"Chelyabinskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[1670,4946],[1688,4960],[1731,4933],[1764,4898],[1834,4860],[1836,4876],[1878,4853],[1898,4812],[1893,4768],[1905,4758],[1897,4712],[1857,4716],[1838,4704],[1848,4687],[1833,4663],[1819,4677],[1805,4621],[1843,4615],[1838,4601],[1892,4583],[1890,4558],[1861,4539],[1870,4511],[1797,4526],[1715,4558],[1686,4584],[1673,4559],[1645,4545],[1664,4520],[1636,4492],[1697,4435],[1691,4417],[1648,4433],[1641,4447],[1600,4455],[1551,4441],[1559,4383],[1515,4377],[1450,4389],[1448,4408],[1478,4417],[1490,4436],[1464,4462],[1420,4487],[1399,4466],[1381,4502],[1388,4532],[1433,4575],[1437,4594],[1498,4678],[1522,4674],[1550,4689],[1574,4666],[1590,4675],[1599,4712],[1644,4736],[1625,4765],[1572,4747],[1560,4757],[1514,4758],[1500,4780],[1460,4780],[1449,4832],[1429,4870],[1448,4904],[1495,4915],[1529,4883],[1498,4845],[1541,4859],[1550,4816],[1570,4816],[1583,4849],[1619,4838],[1631,4850],[1662,4840],[1653,4894],[1688,4929],[1670,4946]]]}},{"type":"Feature","id":"RU.OB","properties":{"hc-group":"admin1","hc-middle-x":0.34,"hc-middle-y":0.35,"hc-key":"ru-ob","hc-a2":"OB","labelrank":"6","hasc":"RU.OB","alt-name":"Chkalov|Orenburgskaya|Orenburgskaya Oblast","woe-id":"2346916","subregion":"Urals","fips":"RS55","postal-code":"OB","name":"Orenburg","country":"Russia","type-en":"Region","region":"Volga","longitude":"56.2149","woe-name":"Orenburg","latitude":"51.5157","woe-label":"Orenburgskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[1381,4502],[1399,4466],[1420,4487],[1464,4462],[1490,4436],[1478,4417],[1448,4408],[1450,4389],[1473,4342],[1455,4334],[1500,4299],[1499,4279],[1534,4250],[1540,4221],[1520,4216],[1482,4176],[1416,4192],[1382,4216],[1369,4251],[1325,4224],[1299,4230],[1303,4253],[1262,4285],[1245,4326],[1259,4344],[1244,4374],[1223,4372],[1196,4399],[1173,4377],[1143,4393],[1144,4428],[1087,4461],[1047,4461],[1024,4445],[974,4446],[956,4481],[952,4521],[930,4561],[899,4511],[876,4530],[903,4551],[888,4581],[886,4620],[868,4639],[876,4660],[866,4691],[830,4709],[798,4738],[809,4780],[765,4798],[743,4783],[704,4810],[723,4823],[688,4875],[768,4873],[789,4900],[809,4902],[828,4929],[841,4916],[855,4936],[895,4934],[937,4968],[940,4989],[966,4996],[1016,5027],[1009,5045],[1026,5070],[1049,5061],[1080,5015],[1062,4997],[1089,4972],[1078,4928],[1085,4865],[1128,4808],[1117,4739],[1137,4727],[1113,4673],[1127,4650],[1177,4668],[1186,4637],[1179,4609],[1149,4609],[1171,4590],[1170,4546],[1153,4543],[1178,4512],[1182,4484],[1242,4493],[1274,4454],[1307,4437],[1342,4462],[1345,4482],[1381,4480],[1381,4502]],[[942,4959],[946,4962],[943,4967],[939,4964],[942,4959]]]}},{"type":"Feature","id":"RU.SR","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.66,"hc-key":"ru-sr","hc-a2":"SR","labelrank":"6","hasc":"RU.SR","alt-name":"Saratovskaya Oblast","woe-id":"2346924","subregion":"Volga","fips":"RS67","postal-code":"SR","name":"Saratov","country":"Russia","type-en":"Region","region":"Volga","longitude":"46.6368","woe-name":"Saratov","latitude":"51.6742","woe-label":"Saratovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[71,5352],[86,5367],[85,5416],[161,5451],[206,5450],[253,5406],[281,5353],[319,5363],[328,5307],[346,5309],[378,5289],[402,5251],[449,5258],[481,5216],[493,5196],[540,5156],[554,5162],[610,5130],[594,5124],[616,5099],[609,5062],[640,5053],[658,5011],[656,4981],[681,4949],[699,4894],[688,4875],[676,4856],[663,4873],[618,4853],[554,4866],[527,4889],[503,4863],[423,4883],[402,4855],[387,4809],[332,4819],[323,4837],[334,4887],[331,4939],[311,4945],[306,4973],[284,4998],[277,5037],[255,5030],[226,5057],[234,5091],[206,5091],[171,5119],[204,5143],[210,5187],[176,5238],[149,5247],[80,5298],[71,5352]]]}},{"type":"Feature","id":"RU.TT","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.29,"hc-key":"ru-tt","hc-a2":"TT","labelrank":"2","hasc":"RU.TT","alt-name":"Kazan|Kazanskaya G.|Tatar A.S.S.R.|Tatarskaya A.S.S.R.|Republic of Tatarstan|Respublika Tatars","woe-id":"2346878","subregion":"Volga","fips":"RS73","postal-code":"TT","name":"Tatarstan","country":"Russia","type-en":"Republic","region":"Volga","longitude":"50.7364","woe-name":"Tatarstan","latitude":"55.374","woe-label":"Tatarstan, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[1089,4972],[1062,4997],[1080,5015],[1049,5061],[1053,5074],[1013,5085],[1019,5111],[992,5159],[954,5165],[930,5148],[922,5171],[901,5170],[905,5195],[886,5216],[859,5249],[866,5302],[812,5304],[787,5324],[784,5346],[748,5378],[702,5375],[708,5404],[742,5414],[759,5384],[805,5398],[814,5430],[851,5457],[896,5455],[927,5453],[995,5476],[1050,5454],[1060,5431],[1079,5447],[1101,5437],[1089,5390],[1109,5378],[1095,5364],[1113,5318],[1127,5319],[1141,5309],[1107,5295],[1164,5253],[1175,5270],[1199,5240],[1226,5253],[1214,5272],[1273,5274],[1238,5242],[1253,5212],[1262,5235],[1277,5211],[1230,5188],[1258,5176],[1278,5149],[1282,5120],[1232,5102],[1197,5098],[1159,5115],[1157,5042],[1106,5013],[1089,4972]],[[789,5385],[791,5384],[797,5385],[796,5388],[789,5385]]]}},{"type":"Feature","id":"RU.TO","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.45,"hc-key":"ru-to","hc-a2":"TO","labelrank":"6","hasc":"RU.TO","alt-name":"Tomskaya","woe-id":"2346928","subregion":"West Siberian","fips":"RS75","postal-code":"TO","name":"Tomsk","country":"Russia","type-en":"Region","region":"Siberian","longitude":"82.2299","woe-name":"Tomsk","latitude":"58.4467","woe-label":"Tomskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[3042,4737],[3047,4741],[3049,4745],[3098,4782],[3106,4818],[3158,4850],[3196,4847],[3234,4939],[3235,4966],[3254,4973],[3274,5017],[3395,4980],[3423,4983],[3433,4955],[3493,4945],[3537,4957],[3565,4929],[3617,4922],[3638,4903],[3661,4927],[3722,4964],[3749,4964],[3782,4928],[3802,4930],[3835,4857],[3810,4802],[3822,4791],[3884,4783],[3921,4790],[4007,4774],[4015,4745],[4042,4738],[4070,4683],[4121,4686],[4139,4647],[4104,4630],[4066,4576],[4082,4516],[4138,4493],[4178,4491],[4181,4446],[4138,4417],[4109,4370],[4125,4368],[4116,4332],[4098,4332],[4042,4294],[3990,4314],[3978,4295],[3951,4310],[3896,4293],[3850,4269],[3746,4242],[3706,4241],[3674,4200],[3638,4210],[3657,4230],[3634,4282],[3653,4311],[3641,4326],[3573,4307],[3504,4303],[3473,4347],[3401,4345],[3353,4425],[3263,4470],[3264,4476],[3139,4507],[3075,4532],[3047,4601],[3053,4639],[3023,4672],[3031,4706],[3053,4715],[3042,4737]]]}},{"type":"Feature","id":"RU.TY","properties":{"hc-group":"admin1","hc-middle-x":0.31,"hc-middle-y":0.52,"hc-key":"ru-ty","hc-a2":"TY","labelrank":"6","hasc":"RU.TY","alt-name":"Tobol\'sk|Tobol\'skaya G.|Tyumenskaya Oblast","woe-id":"20070528","subregion":"West Siberian","fips":"RS78","postal-code":"TY","name":"Tyumen\'","country":"Russia","type-en":"Region","region":"Urals","longitude":"68.51860000000001","woe-name":"Tyumen\'","latitude":"57.2639","woe-label":"Tyumenskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[3049,4745],[3047,4741],[3042,4737],[2954,4694],[2867,4722],[2843,4709],[2788,4729],[2780,4746],[2720,4759],[2738,4799],[2712,4831],[2650,4761],[2642,4741],[2649,4698],[2625,4691],[2638,4653],[2673,4664],[2683,4618],[2699,4591],[2683,4568],[2640,4577],[2631,4555],[2599,4531],[2590,4484],[2555,4480],[2564,4437],[2533,4422],[2526,4404],[2496,4392],[2462,4435],[2421,4449],[2406,4471],[2385,4467],[2351,4517],[2358,4531],[2299,4560],[2300,4593],[2232,4622],[2225,4642],[2200,4642],[2187,4692],[2148,4713],[2146,4747],[2164,4780],[2179,4775],[2181,4816],[2205,4899],[2331,4903],[2332,4945],[2345,4988],[2377,4971],[2408,4970],[2425,5003],[2447,4993],[2512,5010],[2561,5002],[2589,5032],[2656,5042],[2645,5063],[2667,5070],[2685,5050],[2724,5035],[2738,5017],[2800,5009],[2803,4992],[2845,4943],[2874,4864],[2892,4866],[2892,4822],[2937,4807],[2970,4780],[3020,4768],[3049,4745]],[[2586,4490],[2590,4496],[2588,4496],[2582,4492],[2586,4490]],[[2581,4484],[2583,4485],[2581,4487],[2577,4486],[2581,4484]]]}},{"type":"Feature","id":"RU.GA","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.56,"hc-key":"ru-ga","hc-a2":"GA","labelrank":"7","hasc":"RU.GA","alt-name":"Gorno-Altayskaya A.Obl.|Respublika Altay|Oirot|Republic of Altai","woe-id":"20070530","subregion":"West Siberian","fips":"RS03","postal-code":"GA","name":"Gorno-Altay","country":"Russia","type-en":"Republic","region":"Siberian","longitude":"86.937","woe-name":"Gorno-Altay","latitude":"50.9782","woe-label":"Altay, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[4075,3671],[4051,3662],[4022,3623],[4046,3608],[4023,3586],[4071,3552],[4085,3551],[4109,3585],[4130,3567],[4139,3514],[4171,3485],[4217,3425],[4183,3415],[4196,3352],[4200,3324],[4116,3287],[4092,3295],[4044,3290],[4020,3252],[3962,3241],[3924,3268],[3905,3305],[3882,3317],[3902,3331],[3885,3346],[3838,3303],[3780,3329],[3745,3326],[3722,3397],[3650,3430],[3640,3484],[3686,3487],[3687,3524],[3639,3545],[3679,3569],[3742,3595],[3765,3590],[3796,3620],[3817,3623],[3839,3670],[3887,3659],[3919,3669],[3925,3695],[3907,3707],[3932,3745],[3963,3738],[4006,3713],[4034,3726],[4060,3707],[4081,3711],[4075,3671]]]}},{"type":"Feature","id":"RU.KK","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.48,"hc-key":"ru-kk","hc-a2":"KK","labelrank":"2","hasc":"RU.KK","alt-name":"Khakassiya|Republic of Khakasia|Khakasskaya A.Obl.|Respublika Khakasiya|Republic of Khakasia","woe-id":"20070519","subregion":"East Siberian","fips":"RS31","postal-code":"KK","name":"Khakass","country":"Russia","type-en":"Republic","region":"Siberian","longitude":"89.84050000000001","woe-name":"Khakass","latitude":"53.3643","woe-label":"Khakasiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[4109,3585],[4085,3551],[4071,3552],[4023,3586],[4046,3608],[4022,3623],[4051,3662],[4075,3671],[4106,3683],[4106,3696],[4148,3734],[4160,3760],[4128,3785],[4144,3822],[4124,3870],[4166,3907],[4139,3938],[4158,3949],[4153,3978],[4123,3987],[4101,3970],[4098,3988],[4120,4043],[4090,4111],[4110,4135],[4140,4112],[4161,4069],[4202,4070],[4251,4091],[4274,4051],[4316,4041],[4311,4017],[4339,3998],[4368,3937],[4356,3903],[4370,3861],[4396,3852],[4406,3830],[4361,3799],[4366,3769],[4300,3710],[4279,3671],[4245,3663],[4236,3643],[4243,3612],[4207,3586],[4157,3584],[4154,3598],[4109,3585]]]}},{"type":"Feature","id":"RU.CN","properties":{"hc-group":"admin1","hc-middle-x":0.09,"hc-middle-y":0.56,"hc-key":"ru-cn","hc-a2":"CN","labelrank":"2","hasc":"RU.CN","alt-name":"Cecenia|Chechenia|Chechênia|Tchetchnia|Chechen-Ingush A.S.S.R.|Checheno-Ingushetia|Checheno-Ingushetia","woe-id":"2346868","subregion":"North Caucasus","fips":"RS12","postal-code":"CN","name":"Chechnya","country":"Russia","type-en":"Republic","region":"Volga","longitude":"45.757","woe-name":null,"latitude":"43.2153","woe-label":null,"type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-576,4281],[-604,4318],[-612,4358],[-594,4360],[-537,4438],[-545,4464],[-538,4471],[-506,4464],[-490,4479],[-466,4443],[-448,4450],[-411,4399],[-407,4378],[-379,4381],[-373,4334],[-431,4328],[-451,4273],[-479,4264],[-496,4285],[-515,4270],[-576,4281]]]}},{"type":"Feature","id":"RU.KL","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.51,"hc-key":"ru-kl","hc-a2":"KL","labelrank":"2","hasc":"RU.KL","alt-name":"Kalmykiya|Khalmg Tangch|Republic of Kalmykia|Kalmytskaya A.S.S.R.|Respublika Kalmykiya","woe-id":"2346872","subregion":"Volga","fips":"RS24","postal-code":"KL","name":"Kalmyk","country":"Russia","type-en":"Republic","region":"Volga","longitude":"45.4681","woe-name":"Kalmyk","latitude":"46.5191","woe-label":"Kalmykiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-136,4448],[-138,4439],[-216,4410],[-263,4413],[-284,4467],[-340,4529],[-332,4556],[-369,4661],[-390,4686],[-399,4720],[-391,4770],[-421,4816],[-436,4876],[-488,4884],[-522,4911],[-550,4952],[-535,4973],[-525,4956],[-498,4957],[-481,4941],[-470,4976],[-444,4944],[-442,4918],[-416,4894],[-408,4833],[-382,4814],[-353,4822],[-343,4802],[-331,4836],[-266,4831],[-204,4881],[-214,4903],[-254,4892],[-249,4928],[-230,4950],[-180,4942],[-161,4915],[-138,4928],[-128,4959],[-117,4935],[-130,4922],[-114,4905],[-84,4904],[-69,4868],[-57,4819],[-64,4748],[-53,4723],[-8,4718],[-6,4703],[-43,4708],[-58,4646],[-49,4589],[-90,4591],[-101,4578],[-123,4599],[-151,4595],[-125,4563],[-142,4549],[-113,4527],[-137,4523],[-185,4496],[-135,4469],[-136,4448]]]}},{"type":"Feature","id":"RU.DA","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.7,"hc-key":"ru-da","hc-a2":"DA","labelrank":"2","hasc":"RU.DA","alt-name":"Dagestanskaya A.S.S.R.|Daghestan|Republic of Dagestan|Respublika Dagestan|Dagistan","woe-id":"2346870","subregion":"North Caucasus","fips":"RS17","postal-code":"DA","name":"Dagestan","country":"Russia","type-en":"Republic","region":"Volga","longitude":"47.1424","woe-name":"Dagestan","latitude":"42.36","woe-label":"Dagestan, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-340,4529],[-284,4467],[-263,4413],[-286,4416],[-308,4397],[-283,4331],[-303,4276],[-330,4245],[-288,4273],[-251,4262],[-294,4258],[-332,4236],[-375,4194],[-368,4159],[-379,4117],[-382,3985],[-425,3975],[-465,3989],[-504,3978],[-550,4038],[-547,4136],[-601,4220],[-610,4267],[-576,4281],[-515,4270],[-496,4285],[-479,4264],[-451,4273],[-431,4328],[-373,4334],[-379,4381],[-407,4378],[-411,4399],[-448,4450],[-432,4468],[-462,4500],[-428,4489],[-412,4526],[-367,4516],[-340,4529]]]}},{"type":"Feature","id":"RU.RO","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.47,"hc-key":"ru-ro","hc-a2":"RO","labelrank":"6","hasc":"RU.RO","alt-name":"Province of the Don Cossacks|Provinz des Donischen Heeres|Voyska Donskovo|Rostovskaya Oblast","woe-id":"2346921","subregion":"North Caucasus","fips":"RS61","postal-code":"RO","name":"Rostov","country":"Russia","type-en":"Region","region":"Volga","longitude":"41.2613","woe-name":"Rostov","latitude":"47.9913","woe-label":"Rostovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-286,5408],[-257,5378],[-223,5357],[-188,5365],[-152,5358],[-135,5370],[-145,5326],[-134,5301],[-137,5256],[-162,5248],[-198,5213],[-179,5195],[-176,5153],[-189,5130],[-220,5116],[-263,5144],[-317,5114],[-286,5076],[-285,5042],[-303,4992],[-287,4962],[-249,4928],[-254,4892],[-214,4903],[-204,4881],[-266,4831],[-331,4836],[-343,4802],[-353,4822],[-382,4814],[-408,4833],[-416,4894],[-442,4918],[-444,4944],[-470,4976],[-481,4941],[-498,4957],[-525,4956],[-535,4973],[-550,4952],[-574,4978],[-595,4994],[-584,5041],[-621,5093],[-604,5126],[-614,5140],[-592,5163],[-647,5230],[-667,5223],[-692,5251],[-668,5264],[-676,5287],[-630,5267],[-620,5249],[-593,5271],[-681,5346],[-662,5364],[-617,5378],[-584,5352],[-559,5359],[-497,5280],[-461,5299],[-434,5300],[-403,5366],[-375,5356],[-375,5392],[-357,5376],[-321,5376],[-286,5408]]]}},{"type":"Feature","id":"RU.BL","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.65,"hc-key":"ru-bl","hc-a2":"BL","labelrank":"7","hasc":"RU.BL","alt-name":"Belgorodskaya Oblast","woe-id":"2346891","subregion":"Central Black Earth","fips":"RS09","postal-code":"BL","name":"Belgorod","country":"Russia","type-en":"Region","region":"Central","longitude":"37.277","woe-name":"Belgorod","latitude":"50.8757","woe-label":"Belgorodskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-217,5702],[-235,5675],[-214,5648],[-223,5624],[-246,5625],[-240,5584],[-268,5572],[-293,5519],[-318,5507],[-340,5521],[-360,5605],[-389,5605],[-386,5642],[-366,5695],[-407,5730],[-442,5745],[-453,5778],[-447,5802],[-480,5830],[-479,5861],[-456,5875],[-434,5914],[-406,5870],[-371,5874],[-342,5816],[-293,5789],[-281,5796],[-231,5749],[-217,5702]]]}},{"type":"Feature","id":"RU.TU","properties":{"hc-group":"admin1","hc-middle-x":0.72,"hc-middle-y":0.48,"hc-key":"ru-tu","hc-a2":"TU","labelrank":"2","hasc":"RU.TU","alt-name":"Respublika Tyva|Republic of Tuva|Tyva|Tuvinskaya A.S.S.R.|Republic of Tyva","woe-id":"2346879","subregion":"East Siberian","fips":"RS79","postal-code":"TU","name":"Tuva","country":"Russia","type-en":"Republic","region":"Siberian","longitude":"93.9927","woe-name":"Tuva","latitude":"51.6051","woe-label":"Tyva, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[4855,3913],[4871,3928],[4915,3914],[4945,3886],[4979,3888],[5010,3874],[5015,3858],[5051,3870],[5085,3868],[5107,3850],[5078,3841],[5084,3807],[5060,3768],[5066,3744],[5096,3730],[5072,3678],[5046,3665],[5040,3629],[5024,3626],[5009,3558],[5037,3511],[5067,3497],[5057,3432],[4982,3374],[4945,3392],[4884,3385],[4831,3397],[4797,3376],[4751,3380],[4735,3392],[4705,3386],[4674,3416],[4660,3459],[4536,3460],[4530,3481],[4499,3465],[4463,3487],[4450,3465],[4409,3463],[4376,3431],[4335,3425],[4306,3404],[4238,3376],[4230,3360],[4196,3352],[4183,3415],[4217,3425],[4171,3485],[4139,3514],[4130,3567],[4109,3585],[4154,3598],[4157,3584],[4207,3586],[4243,3612],[4236,3643],[4245,3663],[4279,3671],[4315,3633],[4383,3633],[4427,3620],[4511,3628],[4559,3673],[4588,3688],[4596,3720],[4627,3777],[4661,3791],[4664,3848],[4725,3873],[4737,3863],[4771,3887],[4803,3881],[4814,3905],[4833,3893],[4855,3913]]]}},{"type":"Feature","id":"RU.IR","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.61,"hc-key":"ru-ir","hc-a2":"IR","labelrank":"6","hasc":"RU.IR","alt-name":"Irkutskaya Oblast","woe-id":"2346896","subregion":"East Siberian","fips":"RS20","postal-code":"IR","name":"Irkutsk","country":"Russia","type-en":"Region","region":"Siberian","longitude":"105.966","woe-name":"Irkutsk","latitude":"56.8255","woe-label":"Irkutskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[5107,3850],[5085,3868],[5051,3870],[5015,3858],[5010,3874],[4979,3888],[4945,3886],[4915,3914],[4871,3928],[4855,3913],[4837,3917],[4792,3966],[4753,3987],[4784,4038],[4830,4036],[4836,4095],[4823,4106],[4830,4141],[4847,4154],[4826,4211],[4852,4265],[4872,4260],[4888,4282],[4887,4311],[4908,4314],[4894,4369],[4868,4372],[4877,4392],[4854,4401],[4888,4516],[4957,4523],[4974,4516],[5009,4532],[5026,4577],[5052,4581],[5098,4511],[5126,4498],[5142,4521],[5122,4566],[5145,4585],[5139,4602],[5170,4625],[5182,4661],[5211,4676],[5233,4712],[5215,4770],[5253,4803],[5313,4758],[5335,4762],[5389,4731],[5418,4756],[5405,4767],[5440,4820],[5413,4867],[5399,4861],[5376,4889],[5388,4914],[5415,4919],[5405,4981],[5360,4976],[5339,4986],[5309,5043],[5324,5097],[5314,5120],[5383,5190],[5374,5210],[5401,5247],[5388,5276],[5405,5334],[5381,5341],[5341,5386],[5348,5419],[5368,5440],[5349,5451],[5352,5507],[5344,5527],[5401,5524],[5403,5545],[5442,5565],[5415,5584],[5446,5597],[5471,5565],[5477,5539],[5450,5530],[5453,5496],[5512,5513],[5544,5491],[5570,5437],[5581,5434],[5579,5373],[5624,5377],[5641,5346],[5629,5296],[5661,5260],[5669,5227],[5703,5215],[5725,5222],[5733,5153],[5720,5111],[5720,5062],[5730,5050],[5721,4959],[5786,4910],[5831,4935],[5838,4972],[5875,4975],[5927,5009],[5936,5048],[5951,5024],[5978,5031],[5986,4996],[6039,5055],[6031,5098],[6056,5127],[6074,5184],[6071,5219],[6089,5255],[6121,5291],[6155,5289],[6192,5300],[6230,5288],[6273,5250],[6278,5219],[6344,5230],[6364,5265],[6419,5247],[6416,5227],[6456,5188],[6468,5154],[6497,5154],[6513,5122],[6482,5097],[6449,5106],[6398,5088],[6389,5068],[6408,5004],[6394,4991],[6492,4908],[6486,4880],[6470,4890],[6444,4843],[6401,4841],[6385,4827],[6344,4831],[6373,4875],[6338,4872],[6316,4839],[6287,4829],[6289,4765],[6239,4737],[6236,4714],[6194,4716],[6181,4704],[6127,4701],[6108,4725],[6096,4705],[6043,4691],[6006,4705],[6009,4675],[5995,4657],[5946,4643],[5902,4646],[5884,4597],[5861,4595],[5811,4555],[5813,4512],[5834,4514],[5881,4478],[5862,4476],[5856,4401],[5878,4375],[5897,4298],[5892,4276],[5934,4283],[5914,4170],[5906,4079],[5770,3926],[5744,3859],[5696,3802],[5655,3775],[5664,3726],[5626,3718],[5592,3688],[5584,3723],[5558,3730],[5536,3718],[5516,3740],[5514,3764],[5466,3781],[5436,3809],[5373,3809],[5325,3835],[5234,3871],[5205,3897],[5191,3925],[5156,3907],[5144,3882],[5115,3875],[5107,3850]]]}},{"type":"Feature","id":"RU.CT","properties":{"hc-group":"admin1","hc-middle-x":0.72,"hc-middle-y":0.45,"hc-key":"ru-ct","hc-a2":"CT","labelrank":"6","hasc":"RU.CT","alt-name":"Transbaikalia|Zabaykal\'skaya|Transbaikalien|Chitinskaya Oblast","woe-id":"2346894","subregion":"East Siberian","fips":"RS14","postal-code":"CT","name":"Chita","country":"Russia","type-en":"Region","region":"Siberian","longitude":"116.559","woe-name":"Chita","latitude":"52.159","woe-label":"Chitinskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[6513,5122],[6543,5057],[6563,5037],[6585,5043],[6629,5012],[6637,4991],[6664,4988],[6655,4964],[6697,4942],[6724,4949],[6754,4941],[6730,4902],[6758,4875],[6808,4929],[6825,4938],[6850,4920],[6874,4883],[6906,4919],[6923,4908],[6956,4850],[6948,4814],[6968,4823],[6988,4796],[7012,4793],[6982,4770],[7006,4716],[7042,4707],[7080,4664],[7026,4605],[6999,4590],[6980,4511],[6967,4486],[6981,4468],[7009,4490],[7040,4493],[7046,4464],[7075,4444],[7073,4408],[7051,4356],[7061,4267],[7054,4234],[7063,4213],[7057,4151],[7078,4158],[7092,4125],[7079,4101],[7041,4075],[7017,4017],[6990,3978],[6937,3967],[6817,3968],[6782,3931],[6746,3915],[6669,3932],[6624,3918],[6573,3856],[6549,3815],[6546,3778],[6522,3754],[6491,3746],[6459,3715],[6395,3683],[6347,3631],[6307,3631],[6292,3614],[6184,3602],[6123,3579],[6050,3604],[6039,3640],[6018,3638],[6013,3663],[6026,3695],[6084,3741],[6031,3744],[6029,3802],[6043,3822],[6024,3828],[6031,3870],[6099,3872],[6161,3932],[6225,3939],[6250,3996],[6295,4042],[6311,4089],[6345,4093],[6350,4116],[6386,4131],[6405,4158],[6435,4169],[6467,4220],[6466,4277],[6426,4286],[6388,4329],[6464,4425],[6493,4505],[6533,4539],[6572,4560],[6575,4606],[6542,4640],[6511,4642],[6493,4657],[6462,4640],[6433,4675],[6420,4710],[6403,4720],[6365,4783],[6348,4779],[6344,4831],[6385,4827],[6401,4841],[6444,4843],[6470,4890],[6486,4880],[6492,4908],[6394,4991],[6408,5004],[6389,5068],[6398,5088],[6449,5106],[6482,5097],[6513,5122]]]}},{"type":"Feature","id":"RU.YV","properties":{"hc-group":"admin1","hc-middle-x":0.32,"hc-middle-y":0.7,"hc-key":"ru-yv","hc-a2":"YV","labelrank":"2","hasc":"RU.YV","alt-name":"Den jødiske autonome oblasten|Evrey|Jewish A.Obl.|Yahudi|Yevreyskaya A.Obl.|Evreyskaya AOb","woe-id":"20070516","subregion":"Far Eastern","fips":"RS89","postal-code":"YV","name":"Yevrey","country":"Russia","type-en":"Autonomous Region","region":"Far Eastern","longitude":"132.758","woe-name":"Yevrey","latitude":"48.64","woe-label":"Yevreyskaya Avtonomnaya Oblast, RU, Russia","type":"Avtonomnaya Oblast"},"geometry":{"type":"Polygon","coordinates":[[[8145,4655],[8165,4690],[8155,4733],[8172,4747],[8196,4783],[8218,4786],[8206,4822],[8244,4821],[8268,4853],[8283,4845],[8321,4863],[8359,4839],[8401,4865],[8438,4877],[8449,4909],[8476,4907],[8508,4939],[8514,4901],[8484,4873],[8446,4810],[8441,4775],[8411,4750],[8393,4704],[8404,4668],[8332,4596],[8312,4592],[8286,4558],[8225,4572],[8210,4612],[8160,4624],[8145,4655]]]}},{"type":"Feature","id":"RU.AM","properties":{"hc-group":"admin1","hc-middle-x":0.63,"hc-middle-y":0.55,"hc-key":"ru-am","hc-a2":"AM","labelrank":"2","hasc":"RU.AM","alt-name":"Amurskaya Oblast","woe-id":"2346888","subregion":"Far Eastern","fips":"RS05","postal-code":"AM","name":"Amur","country":"Russia","type-en":"Region","region":"Far Eastern","longitude":"128.354","woe-name":"Amur","latitude":"52.9236","woe-label":"Amurskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[8172,4747],[8155,4733],[8165,4690],[8145,4655],[8116,4629],[8074,4625],[8008,4637],[7979,4604],[7941,4596],[7937,4609],[7882,4560],[7857,4549],[7811,4554],[7783,4603],[7754,4600],[7714,4644],[7659,4658],[7628,4694],[7595,4702],[7544,4733],[7536,4757],[7405,4806],[7340,4799],[7282,4764],[7257,4771],[7195,4760],[7166,4742],[7143,4711],[7100,4687],[7080,4664],[7042,4707],[7006,4716],[6982,4770],[7012,4793],[6988,4796],[6968,4823],[6948,4814],[6956,4850],[6923,4908],[6906,4919],[6874,4883],[6850,4920],[6825,4938],[6808,4929],[6758,4875],[6730,4902],[6754,4941],[6724,4949],[6697,4942],[6655,4964],[6664,4988],[6685,5019],[6736,5054],[6768,5064],[6800,5044],[6840,5069],[6891,5059],[6899,5079],[6946,5084],[6987,5106],[7053,5092],[7077,5078],[7114,5094],[7131,5115],[7164,5114],[7200,5138],[7212,5123],[7242,5139],[7268,5182],[7317,5195],[7365,5249],[7391,5246],[7432,5272],[7416,5291],[7449,5335],[7477,5349],[7541,5400],[7557,5403],[7605,5445],[7624,5478],[7647,5495],[7686,5471],[7696,5423],[7677,5402],[7685,5382],[7659,5302],[7680,5266],[7660,5242],[7657,5208],[7674,5179],[7718,5195],[7755,5224],[7803,5185],[7808,5170],[7853,5211],[7918,5285],[7910,5302],[7922,5338],[7963,5355],[7981,5409],[8022,5414],[8044,5399],[8055,5348],[8093,5327],[8104,5292],[7988,5228],[8006,5205],[8035,5200],[8036,5183],[8003,5149],[7995,5123],[8004,5089],[7971,5025],[7948,5006],[7984,4974],[7962,4936],[7984,4846],[8009,4865],[8020,4839],[8060,4858],[8094,4846],[8096,4818],[8113,4826],[8164,4771],[8172,4747]]]}},{"type":"Feature","id":"RU.TB","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.52,"hc-key":"ru-tb","hc-a2":"TB","labelrank":"7","hasc":"RU.TB","alt-name":"Tambovskaya Oblast","woe-id":"2346927","subregion":"Central Black Earth","fips":"RS72","postal-code":"TB","name":"Tambov","country":"Russia","type-en":"Region","region":"Central","longitude":"41.5945","woe-name":"Tambov","latitude":"52.7808","woe-label":"Tambovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[206,5450],[161,5451],[85,5416],[70,5431],[27,5519],[-5,5545],[13,5556],[-8,5593],[38,5608],[30,5647],[34,5698],[58,5702],[121,5745],[132,5733],[177,5728],[192,5682],[216,5680],[243,5698],[292,5650],[261,5627],[243,5464],[211,5465],[206,5450]]]}},{"type":"Feature","id":"RU.TL","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.66,"hc-key":"ru-tl","hc-a2":"TL","labelrank":"7","hasc":"RU.TL","alt-name":"Tul\'skaya|Tulskaya Oblast","woe-id":"2346929","subregion":"Central","fips":"RS76","postal-code":"TL","name":"Tula","country":"Russia","type-en":"Region","region":"Central","longitude":"37.4161","woe-name":"Tula","latitude":"54.0668","woe-label":"Tulrskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[132,5933],[107,5893],[70,5857],[41,5850],[17,5865],[-5,5833],[-30,5845],[-42,5886],[-54,5886],[-52,5920],[-38,5930],[-64,5955],[-81,5988],[-88,6075],[-67,6102],[-25,6097],[-18,6119],[13,6097],[36,6065],[53,6070],[68,6100],[75,6074],[119,6086],[124,6056],[156,6037],[148,6020],[164,5982],[145,5978],[132,5933]]]}},{"type":"Feature","id":"RU.NG","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.39,"hc-key":"ru-ng","hc-a2":"NG","labelrank":"6","hasc":"RU.NG","alt-name":"Novgorodskaya Oblast","woe-id":"2346913","subregion":"Northwestern","fips":"RS52","postal-code":"NG","name":"Novgorod","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"32.9454","woe-name":"Novgorod","latitude":"58.4228","woe-label":"Novgorodskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[486,6618],[485,6574],[470,6569],[500,6529],[498,6480],[485,6476],[463,6482],[426,6524],[393,6524],[387,6544],[365,6536],[348,6595],[307,6612],[299,6591],[250,6597],[222,6581],[203,6618],[158,6629],[111,6668],[83,6668],[62,6710],[47,6734],[85,6771],[125,6786],[155,6811],[138,6856],[144,6885],[164,6898],[201,6890],[220,6883],[248,6900],[268,6863],[328,6855],[320,6841],[361,6838],[381,6849],[407,6813],[391,6788],[401,6766],[446,6760],[464,6719],[458,6683],[486,6618]]]}},{"type":"Feature","id":"RU.VG","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.39,"hc-key":"ru-vg","hc-a2":"VG","labelrank":"6","hasc":"RU.VG","alt-name":"Stalingrad|Volgogradskaya Oblast","woe-id":"2346933","subregion":"Volga","fips":"RS84","postal-code":"VG","name":"Volgograd","country":"Russia","type-en":"Region","region":"Volga","longitude":"44.4488","woe-name":"Volgograd","latitude":"49.5014","woe-label":"Volgogradskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[311,4945],[291,4944],[270,4920],[218,4925],[162,4884],[169,4853],[87,4828],[78,4868],[52,4893],[2,4894],[-34,4917],[-76,4908],[-69,4868],[-84,4904],[-114,4905],[-130,4922],[-117,4935],[-128,4959],[-138,4928],[-161,4915],[-180,4942],[-230,4950],[-249,4928],[-287,4962],[-303,4992],[-285,5042],[-286,5076],[-317,5114],[-263,5144],[-220,5116],[-189,5130],[-176,5153],[-179,5195],[-198,5213],[-162,5248],[-137,5256],[-134,5301],[-145,5326],[-135,5370],[-85,5392],[-89,5436],[-26,5416],[-1,5423],[20,5388],[71,5352],[80,5298],[149,5247],[176,5238],[210,5187],[204,5143],[171,5119],[206,5091],[234,5091],[226,5057],[255,5030],[277,5037],[284,4998],[306,4973],[311,4945]]]}},{"type":"Feature","id":"RU.KV","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.54,"hc-key":"ru-kv","hc-a2":"KV","labelrank":"6","hasc":"RU.KV","alt-name":"Vyatka|Vyatskaya G.|Kirovskaya Oblast","woe-id":"2346902","subregion":"Volga-Vyatka","fips":"RS33","postal-code":"KV","name":"Kirov","country":"Russia","type-en":"Region","region":"Volga","longitude":"50.1112","woe-name":"Kirov","latitude":"58.1926","woe-label":"Kirovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[983,5810],[1046,5847],[1078,5831],[1119,5844],[1140,5828],[1153,5846],[1154,5907],[1180,5928],[1192,5963],[1223,5984],[1196,6003],[1196,6038],[1223,6016],[1298,6063],[1325,6076],[1363,6032],[1354,6020],[1374,5994],[1346,5924],[1314,5921],[1271,5866],[1299,5831],[1282,5816],[1301,5779],[1286,5762],[1302,5748],[1342,5790],[1393,5785],[1423,5766],[1455,5776],[1471,5741],[1537,5758],[1545,5738],[1551,5726],[1617,5666],[1611,5645],[1579,5616],[1567,5621],[1525,5595],[1517,5568],[1544,5532],[1520,5518],[1521,5493],[1491,5482],[1483,5460],[1449,5476],[1449,5503],[1421,5501],[1368,5552],[1322,5533],[1320,5502],[1288,5465],[1251,5457],[1226,5478],[1206,5461],[1191,5411],[1199,5396],[1170,5382],[1156,5390],[1127,5319],[1113,5318],[1095,5364],[1109,5378],[1089,5390],[1101,5437],[1079,5447],[1097,5476],[1082,5495],[1096,5516],[1066,5536],[1087,5573],[1050,5559],[1048,5575],[1014,5604],[988,5596],[972,5623],[939,5620],[897,5674],[953,5729],[998,5689],[1054,5722],[1039,5748],[983,5800],[983,5810]]]}},{"type":"Feature","id":"RU.ME","properties":{"hc-group":"admin1","hc-middle-x":0.63,"hc-middle-y":0.68,"hc-key":"ru-me","hc-a2":"ME","labelrank":"2","hasc":"RU.ME","alt-name":"Mari|Mari-El|Republic of Mari El|Mariyskaya A.S.S.R.|Respublika Mariy El","woe-id":"2346875","subregion":"Volga-Vyatka","fips":"RS45","postal-code":"ME","name":"Mariy-El","country":"Russia","type-en":"Republic","region":"Volga","longitude":"47.9131","woe-name":"Mariy-El","latitude":"56.5407","woe-label":"Mariy-El, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[1079,5447],[1060,5431],[1050,5454],[995,5476],[927,5453],[896,5455],[880,5489],[890,5515],[867,5550],[877,5568],[851,5583],[810,5589],[776,5609],[775,5650],[797,5664],[782,5684],[794,5698],[817,5688],[841,5708],[897,5674],[939,5620],[972,5623],[988,5596],[1014,5604],[1048,5575],[1050,5559],[1087,5573],[1066,5536],[1096,5516],[1082,5495],[1097,5476],[1079,5447]]]}},{"type":"Feature","id":"RU.KE","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.43,"hc-key":"ru-ke","hc-a2":"KE","labelrank":"6","hasc":"RU.KE","alt-name":"Kemerovskaya Oblast","woe-id":"2346901","subregion":"West Siberian","fips":"RS29","postal-code":"KE","name":"Kemerovo","country":"Russia","type-en":"Region","region":"Siberian","longitude":"87.16759999999999","woe-name":"Kemerovo","latitude":"54.6462","woe-label":"Kemerovskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[4075,3671],[4081,3711],[4060,3707],[4034,3726],[4006,3713],[3963,3738],[3943,3775],[3957,3804],[3923,3823],[3953,3865],[3927,3863],[3903,3883],[3875,3940],[3828,3976],[3815,3974],[3785,4014],[3776,4051],[3790,4070],[3774,4088],[3778,4145],[3754,4196],[3757,4241],[3746,4242],[3850,4269],[3896,4293],[3951,4310],[3978,4295],[3990,4314],[4042,4294],[4098,4332],[4116,4332],[4125,4313],[4106,4303],[4112,4277],[4152,4255],[4177,4180],[4150,4169],[4110,4135],[4090,4111],[4120,4043],[4098,3988],[4101,3970],[4123,3987],[4153,3978],[4158,3949],[4139,3938],[4166,3907],[4124,3870],[4144,3822],[4128,3785],[4160,3760],[4148,3734],[4106,3696],[4106,3683],[4075,3671]]]}},{"type":"Feature","id":"RU.AS","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.78,"hc-key":"ru-as","hc-a2":"AS","labelrank":"7","hasc":"RU.AS","alt-name":"Astrachan|Astrakhanskaya Oblast","woe-id":"2346890","subregion":"Volga","fips":"RS07","postal-code":"AS","name":"Astrakhan\'","country":"Russia","type-en":"Region","region":"Volga","longitude":"47.7227","woe-name":"Astrakhan\'","latitude":"47.0334","woe-label":"Astrakhanskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[87,4828],[51,4812],[84,4755],[45,4705],[51,4674],[71,4684],[81,4661],[113,4633],[119,4561],[105,4517],[100,4460],[72,4469],[62,4492],[44,4489],[78,4398],[51,4398],[17,4415],[-2,4379],[-9,4409],[-63,4414],[-112,4453],[-136,4448],[-135,4469],[-185,4496],[-137,4523],[-113,4527],[-142,4549],[-125,4563],[-151,4595],[-123,4599],[-101,4578],[-90,4591],[-49,4589],[-58,4646],[-43,4708],[-6,4703],[-8,4718],[-53,4723],[-64,4748],[-57,4819],[-69,4868],[-76,4908],[-34,4917],[2,4894],[52,4893],[78,4868],[87,4828]]]}},{"type":"Feature","id":"RU.PR","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.49,"hc-key":"ru-pr","hc-a2":"PR","labelrank":"2","hasc":"RU.PR","alt-name":"Küsten-Gebiet|Maritime Territory|Primorsk|Primorskiy Kray","woe-id":"2346886","subregion":"Far Eastern","fips":"RS59","postal-code":"PR","name":"Primor\'ye","country":"Russia","type-en":"Territory","region":"Far Eastern","longitude":"134.594","woe-name":"Primor\'ye","latitude":"44.8622","woe-label":"Primorskiy Kray, RU, Russia","type":"Kray"},"geometry":{"type":"Polygon","coordinates":[[[8884,5119],[8925,5141],[8932,5063],[8979,4958],[8991,4882],[8993,4799],[8986,4757],[8995,4705],[8991,4680],[9003,4629],[8991,4603],[9001,4524],[9014,4515],[9008,4479],[9017,4455],[8998,4382],[8979,4335],[8975,4293],[8945,4254],[8926,4211],[8899,4211],[8890,4190],[8869,4198],[8832,4160],[8793,4205],[8785,4152],[8772,4135],[8774,4172],[8748,4159],[8756,4145],[8749,4091],[8759,4046],[8705,4008],[8736,4012],[8742,3974],[8676,3996],[8698,4038],[8719,4053],[8697,4131],[8675,4136],[8635,4199],[8561,4248],[8535,4255],[8567,4304],[8566,4372],[8591,4375],[8623,4360],[8632,4336],[8686,4331],[8693,4366],[8677,4422],[8695,4450],[8667,4484],[8677,4520],[8656,4557],[8662,4574],[8645,4597],[8651,4625],[8626,4643],[8623,4670],[8651,4706],[8628,4734],[8630,4765],[8655,4810],[8697,4818],[8700,4803],[8728,4836],[8750,4831],[8809,4885],[8814,4941],[8795,4976],[8831,4995],[8845,5076],[8826,5087],[8805,5069],[8731,5068],[8728,5089],[8756,5121],[8764,5179],[8782,5190],[8827,5163],[8862,5167],[8859,5130],[8884,5119]]]}},{"type":"Feature","id":"RU.MG","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.46,"hc-key":"ru-mg","hc-a2":"MG","labelrank":"2","hasc":"RU.MG","alt-name":"Magadanskaya Oblast","woe-id":"20070512","subregion":"Far Eastern","fips":"RS44","postal-code":"MG","name":"Maga Buryatdan","country":"Russia","type-en":"Region","region":"Far Eastern","longitude":"153.797","woe-name":"Maga Buryatdan","latitude":"62.6257","woe-label":"Magadanskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[8230,7956],[8258,7907],[8322,7740],[8289,7753],[8267,7783],[8266,7734],[8246,7755],[8222,7746],[8193,7797],[8141,7820],[8162,7776],[8157,7750],[8123,7750],[8104,7672],[8111,7655],[8088,7616],[8100,7549],[8141,7530],[8151,7479],[8179,7445],[8199,7362],[8222,7319],[8245,7301],[8240,7281],[8281,7248],[8313,7310],[8362,7307],[8334,7260],[8339,7217],[8291,7181],[8316,7128],[8278,7096],[8289,7061],[8266,7013],[8224,7011],[8246,7061],[8255,7105],[8225,7072],[8175,7069],[8162,7032],[8175,7024],[8156,7000],[8136,7004],[8084,6956],[8080,6916],[8097,6912],[8081,6887],[8098,6869],[8121,6875],[8099,6841],[8082,6847],[8061,6816],[8064,6779],[8021,6745],[8023,6762],[7973,6800],[7952,6781],[7890,6784],[7874,6741],[7848,6738],[7823,6759],[7825,6807],[7841,6825],[7816,6842],[7804,6875],[7734,6906],[7687,6905],[7649,6889],[7650,6864],[7610,6829],[7599,6874],[7573,6888],[7580,6914],[7549,6922],[7496,6953],[7453,7014],[7430,7023],[7437,7063],[7419,7107],[7465,7135],[7464,7166],[7505,7168],[7477,7209],[7455,7203],[7442,7233],[7470,7243],[7492,7276],[7491,7321],[7508,7330],[7549,7318],[7568,7339],[7548,7350],[7565,7391],[7570,7443],[7593,7442],[7568,7498],[7527,7501],[7496,7531],[7501,7584],[7446,7611],[7440,7631],[7461,7646],[7453,7671],[7431,7671],[7416,7701],[7439,7713],[7456,7764],[7485,7792],[7474,7814],[7513,7819],[7529,7842],[7512,7872],[7529,7916],[7497,7932],[7528,7962],[7590,7922],[7658,7981],[7705,7989],[7724,8033],[7776,8050],[7826,8117],[7812,8131],[7842,8124],[7871,8135],[7893,8108],[7892,8083],[7922,8083],[7934,8065],[7969,8072],[7995,8042],[8025,8038],[8031,8003],[8053,7996],[8089,8013],[8147,7999],[8149,7957],[8170,7976],[8188,7954],[8230,7956]]]}},{"type":"Feature","id":"RU.BU","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.46,"hc-key":"ru-bu","hc-a2":"BU","labelrank":"2","hasc":"RU.BU","alt-name":"Buryatiya|Buryat-Mongol A.S.S.R.|Republic of Buryatia|Buryatskaya A.S.S.R.","woe-id":"2346867","subregion":"East Siberian","fips":"RS11","postal-code":"BU","name":"Buryat","country":"Russia","type-en":"Republic","region":"Siberian","longitude":"109.341","woe-name":"Buryat","latitude":"52.9061","woe-label":"Buryatiya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[6018,3638],[5966,3626],[5897,3654],[5859,3637],[5829,3644],[5762,3637],[5678,3589],[5662,3566],[5611,3548],[5495,3562],[5466,3574],[5432,3646],[5429,3678],[5348,3679],[5256,3701],[5208,3693],[5172,3709],[5137,3710],[5096,3730],[5066,3744],[5060,3768],[5084,3807],[5078,3841],[5107,3850],[5115,3875],[5144,3882],[5156,3907],[5191,3925],[5205,3897],[5234,3871],[5325,3835],[5373,3809],[5436,3809],[5466,3781],[5514,3764],[5516,3740],[5536,3718],[5558,3730],[5584,3723],[5592,3688],[5626,3718],[5664,3726],[5655,3775],[5696,3802],[5744,3859],[5770,3926],[5906,4079],[5914,4170],[5934,4283],[5892,4276],[5897,4298],[5878,4375],[5856,4401],[5862,4476],[5881,4478],[5834,4514],[5813,4512],[5811,4555],[5861,4595],[5884,4597],[5902,4646],[5946,4643],[5995,4657],[6009,4675],[6006,4705],[6043,4691],[6096,4705],[6108,4725],[6127,4701],[6181,4704],[6194,4716],[6236,4714],[6239,4737],[6289,4765],[6287,4829],[6316,4839],[6338,4872],[6373,4875],[6344,4831],[6348,4779],[6365,4783],[6403,4720],[6420,4710],[6433,4675],[6462,4640],[6493,4657],[6511,4642],[6542,4640],[6575,4606],[6572,4560],[6533,4539],[6493,4505],[6464,4425],[6388,4329],[6426,4286],[6466,4277],[6467,4220],[6435,4169],[6405,4158],[6386,4131],[6350,4116],[6345,4093],[6311,4089],[6295,4042],[6250,3996],[6225,3939],[6161,3932],[6099,3872],[6031,3870],[6024,3828],[6043,3822],[6029,3802],[6031,3744],[6084,3741],[6026,3695],[6013,3663],[6018,3638]]]}},{"type":"Feature","id":"RU.KN","properties":{"hc-group":"admin1","hc-middle-x":0.67,"hc-middle-y":0.67,"hc-key":"ru-kn","hc-a2":"KN","labelrank":"7","hasc":"RU.KN","alt-name":"Kaliningradskaya Oblast","woe-id":"2346938","subregion":"Kaliningrad","fips":"RS23","postal-code":"KN","name":"Kaliningrad","country":"Russia","type-en":"Region","region":"Northwestern","longitude":"21.2287","woe-name":"Kaliningrad","latitude":"54.6636","woe-label":"Kaliningradskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[-529,7339],[-531,7281],[-511,7243],[-525,7215],[-601,7194],[-662,7372],[-686,7449],[-632,7406],[-641,7444],[-609,7450],[-572,7349],[-540,7366],[-529,7339]]]}},{"type":"Feature","id":"RU.KD","properties":{"hc-group":"admin1","hc-middle-x":0.65,"hc-middle-y":0.39,"hc-key":"ru-kd","hc-a2":"KD","labelrank":"6","hasc":"RU.KD","alt-name":"Cossacks of the Black Sea|Kuban|Kubanskaya|Yekaterinodar|Krasnodarskiy Kray","woe-id":"2346884","subregion":"North Caucasus","fips":"RS38","postal-code":"KD","name":"Krasnodar","country":"Russia","type-en":"Territory","region":"Volga","longitude":"39.4688","woe-name":"Krasnodar","latitude":"45.8397","woe-label":"Krasnodarskiy Kray, RU, Russia","type":"Kray"},"geometry":{"type":"Polygon","coordinates":[[[-883,4817],[-912,4862],[-951,4868],[-952,4908],[-946,5025],[-954,5076],[-976,5120],[-967,5171],[-996,5206],[-982,5245],[-999,5331],[-957,5329],[-947,5292],[-960,5287],[-918,5261],[-909,5236],[-880,5277],[-854,5265],[-813,5277],[-783,5261],[-765,5232],[-766,5292],[-778,5304],[-760,5351],[-745,5321],[-676,5287],[-668,5264],[-692,5251],[-667,5223],[-647,5230],[-592,5163],[-614,5140],[-604,5126],[-621,5093],[-584,5041],[-595,4994],[-608,4967],[-644,4996],[-662,4984],[-682,4940],[-657,4910],[-672,4880],[-660,4865],[-705,4860],[-707,4810],[-749,4788],[-776,4792],[-803,4853],[-815,4834],[-834,4845],[-883,4817]],[[-753,4995],[-775,5019],[-786,5057],[-830,5068],[-854,5090],[-872,5128],[-869,5075],[-834,5031],[-814,5056],[-807,5026],[-788,5020],[-806,4983],[-864,4970],[-854,4935],[-884,4933],[-885,4960],[-915,4938],[-891,4874],[-853,4878],[-823,4907],[-802,4941],[-780,4950],[-769,4935],[-779,4896],[-750,4955],[-753,4995]]]}},{"type":"Feature","id":"RU.KU","properties":{"hc-group":"admin1","hc-middle-x":0.33,"hc-middle-y":0.46,"hc-key":"ru-ku","hc-a2":"KU","labelrank":"6","hasc":"RU.KU","alt-name":"Kurganskaya Oblast","woe-id":"2346904","subregion":"Urals","fips":"RS40","postal-code":"KU","name":"Kurgan","country":"Russia","type-en":"Region","region":"Urals","longitude":"65.3505","woe-name":"Kurgan","latitude":"55.4316","woe-label":"Kurganskaya Oblast, RU, Russia","type":"Oblast"},"geometry":{"type":"Polygon","coordinates":[[[2385,4467],[2366,4450],[2337,4461],[2317,4433],[2266,4438],[2160,4461],[2116,4465],[2073,4487],[2048,4483],[2036,4459],[2015,4478],[1932,4502],[1870,4511],[1861,4539],[1890,4558],[1892,4583],[1838,4601],[1843,4615],[1805,4621],[1819,4677],[1833,4663],[1848,4687],[1838,4704],[1857,4716],[1897,4712],[1905,4758],[1893,4768],[1898,4812],[1910,4831],[1964,4849],[1964,4836],[2033,4821],[2082,4772],[2113,4802],[2156,4796],[2164,4780],[2146,4747],[2148,4713],[2187,4692],[2200,4642],[2225,4642],[2232,4622],[2300,4593],[2299,4560],[2358,4531],[2351,4517],[2385,4467]]]}},{"type":"Feature","id":"RU.AL","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.47,"hc-key":"ru-al","hc-a2":"AL","labelrank":"2","hasc":"RU.AL","alt-name":"Altayskiy Kray","woe-id":"20070529","subregion":"West Siberian","fips":"RS04","postal-code":"AL","name":"Altay","country":"Russia","type-en":"Territory","region":"Siberian","longitude":"82.86669999999999","woe-name":"Altay","latitude":"52.4268","woe-label":"Altayskiy Kray, RU, Russia","type":"Kray"},"geometry":{"type":"Polygon","coordinates":[[[3640,3484],[3616,3519],[3580,3541],[3512,3537],[3480,3514],[3411,3534],[3379,3530],[3378,3563],[3344,3567],[3357,3591],[3315,3622],[3289,3612],[3283,3578],[3235,3562],[3202,3669],[3107,3929],[3094,3954],[3142,3984],[3143,3968],[3177,3966],[3205,3983],[3256,3975],[3301,4001],[3379,4026],[3408,4049],[3419,4012],[3451,3996],[3455,3976],[3483,3977],[3477,3941],[3532,3899],[3560,3940],[3606,3974],[3623,3956],[3641,3978],[3708,3985],[3723,3972],[3748,3998],[3785,4014],[3815,3974],[3828,3976],[3875,3940],[3903,3883],[3927,3863],[3953,3865],[3923,3823],[3957,3804],[3943,3775],[3963,3738],[3932,3745],[3907,3707],[3925,3695],[3919,3669],[3887,3659],[3839,3670],[3817,3623],[3796,3620],[3765,3590],[3742,3595],[3679,3569],[3639,3545],[3687,3524],[3686,3487],[3640,3484]]]}},{"type":"Feature","id":"RU.KM","properties":{"hc-group":"admin1","hc-middle-x":0.32,"hc-middle-y":0.5,"hc-key":"ru-km","hc-a2":"KM","labelrank":"2","hasc":"RU.KM","alt-name":"Khanty-Mansiysk|Khanty-Mansiyskiy A.Okr.|Khanty-Mansiyskiy A.Okr.-Yugra|Khanty-Mansiyskiy AOk","woe-id":"20070526","subregion":"West Siberian","fips":"RS32","postal-code":"KM","name":"Khanty-Mansiy","country":"Russia","type-en":"Autonomous Province","region":"Urals","longitude":"71.3806","woe-name":"Khanty-Mansiy","latitude":"61.4315","woe-label":"Khanty-Mansiyskiy Avtonomnyy Okrug, RU, Russia","type":"Avtonomnyy Okrug"},"geometry":{"type":"Polygon","coordinates":[[[3834,5119],[3838,5079],[3902,5033],[3936,5019],[3913,4983],[3802,4930],[3782,4928],[3749,4964],[3722,4964],[3661,4927],[3638,4903],[3617,4922],[3565,4929],[3537,4957],[3493,4945],[3433,4955],[3423,4983],[3395,4980],[3274,5017],[3254,4973],[3235,4966],[3234,4939],[3196,4847],[3158,4850],[3106,4818],[3098,4782],[3049,4745],[3020,4768],[2970,4780],[2937,4807],[2892,4822],[2892,4866],[2874,4864],[2845,4943],[2803,4992],[2800,5009],[2738,5017],[2724,5035],[2685,5050],[2667,5070],[2645,5063],[2656,5042],[2589,5032],[2561,5002],[2512,5010],[2447,4993],[2425,5003],[2408,4970],[2377,4971],[2345,4988],[2328,5004],[2320,5114],[2245,5172],[2263,5214],[2272,5268],[2256,5299],[2262,5387],[2278,5402],[2269,5456],[2213,5547],[2146,5592],[2154,5617],[2130,5647],[2133,5664],[2177,5706],[2189,5776],[2217,5822],[2279,5887],[2309,5905],[2301,5923],[2344,5989],[2393,6010],[2411,5973],[2473,5999],[2473,6007],[2543,6035],[2551,6016],[2546,5972],[2559,5957],[2524,5907],[2521,5884],[2494,5871],[2532,5846],[2539,5801],[2610,5794],[2643,5779],[2664,5789],[2710,5771],[2752,5737],[2730,5705],[2750,5674],[2780,5654],[2833,5674],[2857,5653],[2867,5683],[2892,5678],[2931,5640],[2952,5637],[2974,5606],[2953,5586],[2960,5532],[2989,5521],[2995,5500],[2980,5449],[3022,5452],[3054,5440],[3090,5452],[3098,5415],[3154,5393],[3167,5370],[3194,5361],[3257,5357],[3284,5326],[3310,5333],[3335,5317],[3347,5275],[3389,5230],[3445,5240],[3517,5225],[3528,5251],[3579,5276],[3616,5284],[3628,5239],[3659,5215],[3678,5228],[3723,5216],[3758,5168],[3794,5179],[3823,5149],[3834,5119]]]}},{"type":"Feature","id":"RU.PE","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.48,"hc-key":"ru-pe","hc-a2":"PE","labelrank":"6","hasc":"RU.PE","alt-name":"Molotov|Permskaya Oblast","woe-id":"20070511","subregion":"Urals","fips":"RS90","postal-code":"PE","name":"Perm\'","country":"Russia","type-en":"Territory","region":"Volga","longitude":"56.5878","woe-name":"Perm\'","latitude":"58.8735","woe-label":"Permskiy Kray, RU, Russia","type":"Kray"},"geometry":{"type":"Polygon","coordinates":[[[1563,5039],[1531,5031],[1506,5039],[1495,5094],[1463,5098],[1466,5127],[1423,5135],[1387,5156],[1376,5202],[1347,5191],[1353,5240],[1334,5248],[1351,5267],[1363,5252],[1380,5274],[1403,5278],[1431,5320],[1423,5343],[1446,5357],[1465,5394],[1467,5434],[1483,5460],[1491,5482],[1521,5493],[1520,5518],[1544,5532],[1517,5568],[1525,5595],[1567,5621],[1579,5616],[1611,5645],[1617,5666],[1551,5726],[1545,5738],[1563,5758],[1546,5804],[1577,5829],[1601,5804],[1619,5816],[1637,5796],[1654,5809],[1678,5781],[1666,5764],[1688,5740],[1703,5752],[1762,5689],[1804,5706],[1824,5686],[1847,5699],[1869,5676],[1894,5697],[1922,5697],[2043,5616],[2098,5613],[2090,5588],[2059,5559],[2041,5500],[2019,5474],[1949,5420],[1893,5404],[1865,5381],[1900,5306],[1866,5263],[1882,5242],[1871,5213],[1775,5188],[1771,5145],[1743,5140],[1721,5169],[1696,5160],[1666,5096],[1617,5100],[1590,5111],[1586,5084],[1563,5039]]]}},{"type":"Feature","id":"RU.AD","properties":{"hc-group":"admin1","hc-middle-x":0.1,"hc-middle-y":0.73,"hc-key":"ru-ad","hc-a2":"AD","labelrank":"2","hasc":"RU.AD","alt-name":"Adygea|Adygeya|Adygheya|Republic of Adygeya|Adygeyskaya A.Obl.|Respublika Adygeya","woe-id":"20070520","subregion":"North Caucasus","fips":"RS01","postal-code":"AD","name":"Adygey","country":"Russia","type-en":"Republic","region":"Volga","longitude":"40.1293","woe-name":"Adygey","latitude":"44.4658","woe-label":"Adygeya, RU, Russia","type":"Respublika"},"geometry":{"type":"Polygon","coordinates":[[[-753,4995],[-750,4955],[-779,4896],[-769,4935],[-780,4950],[-802,4941],[-823,4907],[-853,4878],[-891,4874],[-915,4938],[-885,4960],[-884,4933],[-854,4935],[-864,4970],[-806,4983],[-788,5020],[-807,5026],[-814,5056],[-834,5031],[-869,5075],[-872,5128],[-854,5090],[-830,5068],[-786,5057],[-775,5019],[-753,4995]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/ua-all.geo.json
const ua_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Ukraine","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:5564"}},"hc-transform":{"default":{"crs":"+proj=tmerc +lat_0=0 +lon_0=33 +k=1 +x_0=6500000 +y_0=0 +ellps=krass +towgs84=25,-141,-78.5,-0,0.35,0.736,0 +units=m +no_defs","scale":0.000528631401173,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":5696111.86253,"yoffset":5804527.05192}},"features":[{"type":"Feature","id":"UA.MY","properties":{"hc-group":"admin1","hc-middle-x":0.67,"hc-middle-y":0.32,"hc-key":"ua-my","hc-a2":"MY","labelrank":"7","hasc":"UA.MY","alt-name":"Odesa|Odes\'ka Oblast\'|Odesskaya Oblast\'","woe-id":"2347549","subregion":null,"fips":"UP15","postal-code":"MY","name":"Odessa","country":"Ukraine","type-en":"Region","region":null,"longitude":"29.7568","woe-name":"Odessa","latitude":"46.0315","woe-label":"Odessa Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3548,3736],[3726,3892],[3759,3908],[3615,3781],[3548,3736]]],[[[4452,4633],[4328,4611],[4249,4571],[4208,4577],[4177,4537],[4203,4473],[4129,4360],[4106,4305],[4001,4145],[3920,4073],[3847,3982],[3767,3916],[3767,3979],[3739,3912],[3674,3944],[3647,3876],[3626,3903],[3632,3833],[3611,3859],[3550,3849],[3587,3788],[3501,3738],[3472,3815],[3482,3892],[3451,3935],[3421,3812],[3407,3692],[3474,3692],[3414,3626],[3443,3585],[3495,3612],[3505,3471],[3471,3383],[3439,3378],[3449,3429],[3438,3496],[3388,3543],[3231,3595],[3170,3579],[3134,3549],[2998,3493],[2972,3457],[2884,3500],[2873,3418],[2744,3440],[2589,3518],[2555,3627],[2513,3649],[2561,3701],[2695,3675],[2735,3744],[2699,3817],[2757,3868],[2769,3908],[2829,3919],[2831,3951],[2876,3972],[2875,4064],[2894,4084],[3023,4114],[3021,4208],[3068,4277],[3020,4349],[3030,4390],[3018,4482],[3037,4527],[3177,4596],[3203,4562],[3193,4430],[3247,4464],[3273,4528],[3297,4479],[3360,4539],[3372,4484],[3410,4471],[3444,4424],[3521,4519],[3600,4398],[3646,4425],[3749,4422],[3782,4465],[3748,4466],[3699,4537],[3650,4558],[3640,4589],[3673,4611],[3663,4649],[3680,4761],[3668,4822],[3617,4865],[3561,4871],[3526,4915],[3442,4956],[3474,5046],[3443,5087],[3418,5066],[3401,5114],[3446,5151],[3445,5219],[3469,5263],[3456,5300],[3410,5315],[3363,5264],[3335,5332],[3300,5357],[3261,5421],[3218,5417],[3194,5504],[3237,5574],[3251,5669],[3278,5703],[3242,5735],[3282,5807],[3252,5821],[3218,5907],[3179,5903],[3151,5869],[3110,5875],[3059,5937],[3175,6007],[3174,6048],[3213,6060],[3298,6002],[3354,6001],[3414,6022],[3451,6002],[3562,5997],[3557,6067],[3625,6095],[3695,6076],[3716,6108],[3760,6106],[3811,6034],[3938,6022],[3951,5991],[3893,5967],[3887,5899],[3935,5848],[3946,5749],[3989,5707],[4001,5575],[4034,5550],[4104,5561],[4151,5550],[4168,5515],[4222,5555],[4227,5510],[4274,5471],[4250,5368],[4296,5227],[4373,5202],[4442,5220],[4455,5190],[4419,5138],[4485,5122],[4534,5062],[4506,4972],[4476,4947],[4365,4931],[4375,4879],[4440,4812],[4452,4633]],[[3779,4421],[3774,4358],[3815,4308],[3884,4280],[3923,4234],[3956,4157],[4007,4202],[3958,4251],[3946,4316],[3909,4339],[3893,4417],[3881,4359],[3829,4439],[3779,4421]]]]}},{"type":"Feature","id":"UA.KS","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.43,"hc-key":"ua-ks","hc-a2":"KS","labelrank":"5","hasc":"UA.KS","alt-name":null,"woe-id":"2347541","subregion":null,"fips":"UP08","postal-code":"KS","name":"Kherson","country":"Ukraine","type-en":null,"region":null,"longitude":"33.5787","woe-name":"Kherson Oblast","latitude":"46.6964","woe-label":"Kherson Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5360,4102],[5451,4089],[5575,4096],[5614,4058],[5360,4102]]],[[[5053,4192],[4791,4255],[4716,4291],[5001,4217],[5053,4192]]],[[[7029,4300],[6958,4183],[6857,4130],[6883,4193],[6981,4233],[7020,4305],[7021,4304],[7029,4300]]],[[[6918,4333],[6872,4293],[6812,4276],[6792,4294],[6735,4212],[6745,4131],[6780,3994],[6866,3816],[6850,3806],[6788,3928],[6745,3890],[6764,3981],[6747,3993],[6728,4087],[6702,4070],[6641,4138],[6695,4157],[6710,4189],[6663,4223],[6614,4205],[6624,4134],[6589,4054],[6531,4026],[6484,4060],[6507,4154],[6554,4173],[6573,4134],[6584,4202],[6566,4227],[6529,4188],[6418,4249],[6424,4157],[6371,4267],[6335,4307],[6314,4266],[6349,4220],[6324,4192],[6300,4243],[6271,4219],[6310,4165],[6247,4176],[6210,4234],[6154,4261],[6066,4273],[6012,4246],[6014,4206],[5987,4162],[5966,4190],[5926,4159],[5942,4128],[5916,4090],[5858,4096],[5816,4142],[5773,4134],[5775,4171],[5725,4164],[5738,4251],[5700,4187],[5667,4171],[5604,4202],[5600,4163],[5534,4152],[5456,4170],[5328,4143],[5274,4117],[5122,4166],[5127,4236],[5030,4246],[4989,4293],[4969,4285],[4886,4343],[4883,4306],[4814,4329],[4843,4370],[4938,4371],[4998,4409],[4964,4460],[4844,4493],[4844,4493],[4867,4528],[4981,4512],[5030,4517],[5133,4478],[5187,4474],[5217,4520],[5290,4588],[5320,4591],[5367,4639],[5218,4567],[5172,4561],[5120,4600],[5053,4560],[5035,4603],[4976,4624],[4940,4709],[5008,4731],[5070,4730],[5103,4783],[5188,4779],[5207,4813],[5297,4814],[5301,4843],[5386,4820],[5403,4800],[5478,4800],[5552,4832],[5469,4844],[5598,4903],[5560,4918],[5573,4958],[5604,4931],[5627,4972],[5542,5027],[5536,5052],[5574,5128],[5619,5124],[5673,5168],[5654,5206],[5666,5256],[5650,5306],[5605,5330],[5629,5367],[5666,5337],[5660,5441],[5644,5489],[5770,5446],[5795,5410],[5883,5442],[5936,5483],[5950,5428],[5993,5403],[6145,5430],[6242,5400],[6332,5399],[6394,5212],[6453,5216],[6474,5251],[6516,5256],[6504,5212],[6528,5070],[6547,5058],[6565,4972],[6589,4937],[6661,4905],[6712,4817],[6645,4718],[6610,4689],[6675,4662],[6670,4608],[6694,4561],[6756,4554],[6755,4516],[6799,4517],[6870,4479],[6889,4343],[6918,4333]]]]}},{"type":"Feature","id":"UA.KC","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.39,"hc-key":"ua-kc","hc-a2":"KC","labelrank":"7","hasc":"UA.KM","alt-name":"Kyïvs\'ka mis\'ka rada","woe-id":"20070188","subregion":null,"fips":"UP12","postal-code":"KC","name":"Kiev City","country":"Ukraine","type-en":"Municipality","region":null,"longitude":"30.5277","woe-name":"Kiev City Municipality","latitude":"50.383","woe-label":"Kiev City Municipality, UA, Ukraine","type":"Rada"},"geometry":{"type":"Polygon","coordinates":[[[4337,8242],[4281,8173],[4285,8112],[4333,8032],[4300,8014],[4300,7977],[4261,7994],[4256,7951],[4190,7958],[4215,7855],[4195,7825],[4208,7744],[4171,7727],[4148,7804],[4138,7889],[4113,7898],[4079,7995],[4034,8055],[4027,8092],[3981,8099],[3949,8075],[3973,8216],[3998,8237],[4006,8298],[4044,8323],[4102,8321],[4124,8259],[4165,8215],[4168,8244],[4223,8237],[4266,8280],[4279,8320],[4334,8292],[4337,8242]]]}},{"type":"Feature","id":"UA.ZT","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.45,"hc-key":"ua-zt","hc-a2":"ZT","labelrank":"7","hasc":"UA.ZT","alt-name":"Zhitomir|Jitomir|Shitomir|Zhitomirskaya Oblast\'","woe-id":"2347558","subregion":null,"fips":"UP24","postal-code":"ZT","name":"Zhytomyr","country":"Ukraine","type-en":"Region","region":null,"longitude":"28.4643","woe-name":"Zhytomyr","latitude":"50.6898","woe-label":"Zhytomyr Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[2554,9160],[2580,9134],[2625,9174],[2645,9256],[2669,9267],[2713,9219],[2789,9206],[2873,9286],[2926,9212],[2943,9166],[3027,9203],[3091,9183],[3102,9100],[3142,9078],[3154,9040],[3172,9114],[3239,9179],[3291,9180],[3344,9234],[3390,9231],[3443,9131],[3438,9084],[3476,8997],[3509,8998],[3530,8977],[3523,8926],[3455,8873],[3474,8763],[3495,8787],[3569,8717],[3553,8624],[3517,8635],[3574,8522],[3560,8458],[3607,8439],[3617,8385],[3546,8281],[3565,8256],[3554,8195],[3522,8116],[3572,8125],[3597,8094],[3613,8027],[3659,7969],[3655,7894],[3676,7844],[3636,7817],[3637,7743],[3668,7685],[3604,7612],[3487,7551],[3473,7476],[3510,7473],[3487,7423],[3378,7369],[3221,7381],[3198,7474],[3229,7509],[3195,7563],[3180,7641],[3137,7652],[3059,7576],[2976,7574],[2894,7598],[2869,7572],[2797,7587],[2653,7570],[2560,7576],[2440,7620],[2404,7714],[2377,7731],[2402,7760],[2387,7815],[2457,7833],[2435,7877],[2455,7958],[2438,8033],[2367,8015],[2323,8086],[2228,8182],[2277,8254],[2217,8317],[2245,8353],[2222,8387],[2277,8492],[2255,8547],[2269,8633],[2252,8726],[2311,8770],[2355,8856],[2413,8931],[2403,9004],[2435,9009],[2458,9122],[2501,9076],[2508,9147],[2554,9160]]]}},{"type":"Feature","id":"UA.SM","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.69,"hc-key":"ua-sm","hc-a2":"SM","labelrank":"7","hasc":"UA.SM","alt-name":null,"woe-id":"2347552","subregion":null,"fips":"UP18","postal-code":"SM","name":"Sumy","country":"Ukraine","type-en":"Region","region":null,"longitude":"34.3159","woe-name":"Sumy","latitude":"50.8153","woe-label":"Sumy Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[5813,9829],[5857,9842],[5886,9779],[5973,9841],[6038,9840],[6125,9723],[6181,9674],[6190,9547],[6206,9475],[6235,9475],[6283,9424],[6372,9356],[6389,9282],[6368,9256],[6228,9228],[6201,9194],[6236,9174],[6285,9078],[6284,8998],[6265,8968],[6331,8945],[6322,8884],[6267,8835],[6323,8816],[6395,8841],[6518,8818],[6530,8778],[6591,8765],[6712,8814],[6768,8813],[6791,8787],[6808,8704],[6837,8658],[6937,8658],[6899,8616],[6910,8567],[6938,8548],[6963,8440],[6999,8409],[7019,8325],[6968,8280],[7012,8149],[7057,8135],[7087,8060],[7159,8033],[7151,8013],[7045,8006],[6991,8018],[6979,7980],[6948,7990],[6907,7934],[6837,7933],[6769,7864],[6747,7882],[6706,7839],[6651,7850],[6587,7840],[6567,7808],[6489,7814],[6453,7798],[6442,7834],[6469,7860],[6422,7947],[6396,7939],[6393,8011],[6321,8095],[6313,8185],[6293,8191],[6198,8125],[6119,8178],[6058,8150],[6078,8134],[6008,8115],[5964,8135],[5786,8171],[5754,8189],[5709,8164],[5625,8182],[5648,8293],[5684,8378],[5661,8400],[5674,8495],[5692,8516],[5678,8593],[5708,8647],[5637,8632],[5601,8672],[5557,8689],[5570,8769],[5600,8778],[5629,8830],[5617,8914],[5589,8948],[5652,8942],[5658,9066],[5695,9073],[5667,9194],[5676,9235],[5637,9279],[5624,9326],[5680,9427],[5716,9429],[5795,9466],[5788,9507],[5807,9568],[5850,9560],[5841,9595],[5772,9654],[5767,9706],[5790,9741],[5813,9829]]]}},{"type":"Feature","id":"UA.DT","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.53,"hc-key":"ua-dt","hc-a2":"DT","labelrank":"7","hasc":"UA.DT","alt-name":"Donetsk|Donetskaya Oblast\'|Donezk|Stalino","woe-id":"2347538","subregion":null,"fips":"UP05","postal-code":"DT","name":"Donets\'k","country":"Ukraine","type-en":"Region","region":null,"longitude":"37.7933","woe-name":"Donets\'k","latitude":"48.145","woe-label":"Donetsk Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[9289,5883],[9192,5880],[9164,5866],[9132,5802],[9117,5706],[9081,5710],[9014,5652],[8886,5625],[8852,5582],[8836,5517],[8841,5426],[8811,5370],[8812,5330],[8869,5331],[8867,5289],[8820,5241],[8833,5160],[8770,5086],[8781,5131],[8743,5151],[8716,5133],[8612,5144],[8547,5116],[8439,5124],[8381,5071],[8296,4926],[8247,4969],[8111,4910],[8091,4944],[8122,4988],[8154,4994],[8154,5051],[8085,5082],[8055,5144],[7989,5184],[8035,5216],[8028,5297],[8112,5298],[8127,5355],[8167,5342],[8197,5443],[8143,5436],[8048,5524],[7990,5520],[7928,5571],[7904,5561],[7829,5730],[7789,5730],[7782,5778],[7754,5832],[7814,5850],[7777,5893],[7780,5992],[7826,6002],[7929,5956],[7966,5991],[7949,6081],[7981,6114],[7963,6198],[7913,6213],[7899,6303],[7944,6419],[7938,6454],[7895,6451],[7880,6410],[7856,6438],[7879,6468],[7839,6494],[7811,6631],[7893,6631],[7938,6657],[8007,6625],[7996,6656],[8058,6701],[8104,6696],[8124,6757],[8179,6787],[8163,6834],[8208,6903],[8339,6995],[8328,7024],[8278,7030],[8302,7069],[8359,7073],[8437,7056],[8481,7084],[8535,7058],[8514,7017],[8558,6998],[8619,7017],[8606,6944],[8632,6885],[8595,6838],[8717,6818],[8733,6759],[8761,6746],[8787,6636],[8756,6583],[8775,6468],[8805,6455],[8802,6399],[8866,6383],[8916,6314],[8880,6284],[8910,6235],[8970,6246],[9020,6146],[9136,6105],[9131,6054],[9171,6024],[9273,6019],[9297,5939],[9289,5883]]]}},{"type":"Feature","id":"UA.DP","properties":{"hc-group":"admin1","hc-middle-x":0.33,"hc-middle-y":0.61,"hc-key":"ua-dp","hc-a2":"DP","labelrank":"7","hasc":"UA.DP","alt-name":"Dnipropetrovsk|Dniepropietrovsk|Dnjepropetrowsk","woe-id":"2347537","subregion":null,"fips":"UP04","postal-code":"DP","name":"Dnipropetrovs\'k","country":"Ukraine","type-en":"Region","region":null,"longitude":"34.9555","woe-name":"Dnipropetrovs\'k","latitude":"48.6313","woe-label":"Dnipropetrovsk Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[7839,6494],[7879,6468],[7856,6438],[7880,6410],[7895,6451],[7938,6454],[7944,6419],[7899,6303],[7913,6213],[7963,6198],[7981,6114],[7949,6081],[7966,5991],[7929,5956],[7826,6002],[7780,5992],[7777,5893],[7814,5850],[7754,5832],[7782,5778],[7619,5743],[7560,5758],[7553,5785],[7494,5757],[7496,5853],[7461,5862],[7437,5915],[7405,5933],[7385,5987],[7304,5961],[7220,6013],[7143,5972],[7017,5985],[6958,6008],[6826,5994],[6775,5958],[6712,5989],[6698,5893],[6761,5831],[6704,5797],[6704,5761],[6757,5726],[6748,5665],[6784,5646],[6760,5511],[6771,5456],[6720,5450],[6565,5485],[6481,5443],[6332,5399],[6242,5400],[6145,5430],[5993,5403],[5950,5428],[5936,5483],[5883,5442],[5795,5410],[5770,5446],[5644,5489],[5592,5497],[5598,5562],[5579,5605],[5640,5622],[5626,5664],[5639,5770],[5608,5801],[5610,5838],[5624,5892],[5680,5943],[5725,5952],[5734,6025],[5757,5967],[5806,6037],[5830,6027],[5903,6091],[5883,6274],[5861,6351],[6025,6433],[6084,6481],[6045,6507],[5953,6527],[5925,6574],[5985,6605],[6053,6604],[6086,6564],[6142,6661],[6215,6609],[6289,6589],[6335,6555],[6369,6590],[6380,6641],[6356,6685],[6370,6754],[6445,6856],[6552,6906],[6621,6925],[6655,6952],[6739,6962],[6774,6945],[6873,6938],[7004,6822],[7062,6783],[7140,6783],[7260,6751],[7347,6792],[7404,6725],[7370,6687],[7437,6662],[7499,6599],[7477,6567],[7564,6501],[7586,6436],[7569,6402],[7611,6397],[7675,6498],[7750,6470],[7839,6494]]]}},{"type":"Feature","id":"UA.KK","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.41,"hc-key":"ua-kk","hc-a2":"KK","labelrank":"7","hasc":"UA.KK","alt-name":"Charkow|Jarkov|Karkov|Khar\'kov","woe-id":"2347540","subregion":null,"fips":"UP07","postal-code":"KK","name":"Kharkiv","country":"Ukraine","type-en":"Region","region":null,"longitude":"36.4612","woe-name":"Kharkiv","latitude":"49.4655","woe-label":"Kharkiv Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[8481,7084],[8437,7056],[8359,7073],[8302,7069],[8278,7030],[8328,7024],[8339,6995],[8208,6903],[8163,6834],[8179,6787],[8124,6757],[8104,6696],[8058,6701],[7996,6656],[8007,6625],[7938,6657],[7893,6631],[7811,6631],[7839,6494],[7750,6470],[7675,6498],[7611,6397],[7569,6402],[7586,6436],[7564,6501],[7477,6567],[7499,6599],[7437,6662],[7370,6687],[7404,6725],[7347,6792],[7260,6751],[7140,6783],[7062,6783],[7004,6822],[6873,6938],[6774,6945],[6755,7013],[6795,7085],[6893,7065],[6937,7084],[6993,7159],[6963,7227],[7054,7260],[7010,7295],[7056,7315],[7021,7384],[7020,7428],[6985,7411],[6912,7442],[6882,7505],[6881,7557],[6828,7570],[6772,7606],[6700,7630],[6671,7705],[6711,7756],[6706,7839],[6747,7882],[6769,7864],[6837,7933],[6907,7934],[6948,7990],[6979,7980],[6991,8018],[7045,8006],[7151,8013],[7159,8033],[7241,8109],[7397,8113],[7436,8080],[7498,7990],[7566,8016],[7655,7984],[7653,7949],[7691,7928],[7740,7982],[7872,8060],[7952,8061],[8035,8091],[8084,8142],[8171,8156],[8202,8080],[8274,8039],[8272,7970],[8361,7851],[8476,7789],[8545,7708],[8581,7655],[8539,7632],[8564,7601],[8514,7528],[8544,7524],[8547,7477],[8517,7420],[8533,7351],[8480,7254],[8499,7160],[8525,7135],[8481,7084]]]}},{"type":"Feature","id":"UA.LH","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.5,"hc-key":"ua-lh","hc-a2":"LH","labelrank":"7","hasc":"UA.LH","alt-name":"Luhansk|Lugansk|Luhans\'ka Oblast\'|Voroshilovgrad","woe-id":"2347546","subregion":null,"fips":"UP12","postal-code":"LH","name":"Luhans\'k","country":"Ukraine","type-en":"Region","region":null,"longitude":"39.0033","woe-name":"Luhans\'k","latitude":"48.9084","woe-label":"Luhansk Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[9289,5883],[9297,5939],[9273,6019],[9171,6024],[9131,6054],[9136,6105],[9020,6146],[8970,6246],[8910,6235],[8880,6284],[8916,6314],[8866,6383],[8802,6399],[8805,6455],[8775,6468],[8756,6583],[8787,6636],[8761,6746],[8733,6759],[8717,6818],[8595,6838],[8632,6885],[8606,6944],[8619,7017],[8558,6998],[8514,7017],[8535,7058],[8481,7084],[8525,7135],[8499,7160],[8480,7254],[8533,7351],[8517,7420],[8547,7477],[8544,7524],[8514,7528],[8564,7601],[8539,7632],[8581,7655],[8545,7708],[8627,7742],[8624,7851],[8698,7857],[8728,7796],[8821,7763],[8918,7784],[8935,7740],[9035,7704],[9090,7651],[9146,7659],[9191,7715],[9230,7713],[9270,7631],[9326,7600],[9393,7627],[9462,7609],[9509,7512],[9621,7457],[9686,7482],[9718,7521],[9803,7518],[9804,7476],[9772,7450],[9770,7391],[9851,7287],[9848,7206],[9745,7085],[9732,7013],[9592,6975],[9591,6929],[9648,6866],[9732,6859],[9767,6837],[9799,6872],[9828,6858],[9812,6805],[9763,6776],[9694,6796],[9627,6727],[9597,6578],[9704,6585],[9734,6562],[9731,6509],[9791,6402],[9731,6334],[9775,6311],[9841,6312],[9825,6264],[9788,6224],[9762,6164],[9769,6088],[9720,6064],[9745,6026],[9734,5898],[9700,5876],[9637,5887],[9510,5870],[9464,5887],[9326,5863],[9289,5883]]]}},{"type":"Feature","id":"UA.PL","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.51,"hc-key":"ua-pl","hc-a2":"PL","labelrank":"7","hasc":"UA.PL","alt-name":null,"woe-id":"2347550","subregion":null,"fips":"UP16","postal-code":"PL","name":"Poltava","country":"Ukraine","type-en":"Region","region":null,"longitude":"33.7723","woe-name":"Poltava","latitude":"49.6978","woe-label":"Poltava Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[5625,8182],[5709,8164],[5754,8189],[5786,8171],[5964,8135],[6008,8115],[6078,8134],[6058,8150],[6119,8178],[6198,8125],[6293,8191],[6313,8185],[6321,8095],[6393,8011],[6396,7939],[6422,7947],[6469,7860],[6442,7834],[6453,7798],[6489,7814],[6567,7808],[6587,7840],[6651,7850],[6706,7839],[6711,7756],[6671,7705],[6700,7630],[6772,7606],[6828,7570],[6881,7557],[6882,7505],[6912,7442],[6985,7411],[7020,7428],[7021,7384],[7056,7315],[7010,7295],[7054,7260],[6963,7227],[6993,7159],[6937,7084],[6893,7065],[6795,7085],[6755,7013],[6774,6945],[6739,6962],[6655,6952],[6621,6925],[6552,6906],[6445,6856],[6370,6754],[6356,6685],[6380,6641],[6369,6590],[6335,6555],[6289,6589],[6215,6609],[6142,6661],[6056,6712],[6006,6696],[5994,6663],[5947,6711],[5915,6693],[5863,6728],[5814,6727],[5768,6776],[5796,6810],[5767,6840],[5711,6845],[5674,6899],[5612,6946],[5463,7019],[5463,7084],[5396,7220],[5443,7279],[5438,7328],[5407,7392],[5343,7418],[5334,7471],[5251,7517],[5214,7585],[5241,7600],[5242,7670],[5195,7740],[5152,7751],[5133,7828],[5045,7912],[5059,7955],[5087,8013],[5136,8007],[5174,8048],[5225,8066],[5288,8059],[5299,8030],[5430,8018],[5521,8057],[5594,8129],[5625,8182]]]}},{"type":"Feature","id":"UA.ZP","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.44,"hc-key":"ua-zp","hc-a2":"ZP","labelrank":"7","hasc":"UA.ZP","alt-name":"Saporoshje|Zaporizhia|Zaporiz\'ka Oblast\'|Zaporojie|Zaporozhskaya Oblast\'|Zaporozh\'ye|Zaporo?je","woe-id":"2347557","subregion":null,"fips":"UP23","postal-code":"ZP","name":"Zaporizhzhya","country":"Ukraine","type-en":"Region","region":null,"longitude":"35.7123","woe-name":"Zaporizhzhya","latitude":"47.3346","woe-label":"Zaporizhia Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[7782,5778],[7789,5730],[7829,5730],[7904,5561],[7928,5571],[7990,5520],[8048,5524],[8143,5436],[8197,5443],[8167,5342],[8127,5355],[8112,5298],[8028,5297],[8035,5216],[7989,5184],[8055,5144],[8085,5082],[8154,5051],[8154,4994],[8122,4988],[8091,4944],[8111,4910],[8019,4840],[7965,4716],[7971,4765],[7902,4812],[7795,4788],[7701,4738],[7661,4691],[7647,4643],[7589,4697],[7509,4695],[7409,4675],[7329,4625],[7242,4529],[7169,4489],[7090,4405],[7029,4300],[7021,4304],[7020,4305],[7066,4375],[7019,4387],[7027,4466],[6952,4515],[6983,4442],[6918,4333],[6889,4343],[6870,4479],[6799,4517],[6755,4516],[6756,4554],[6694,4561],[6670,4608],[6675,4662],[6610,4689],[6645,4718],[6712,4817],[6661,4905],[6589,4937],[6565,4972],[6547,5058],[6528,5070],[6504,5212],[6516,5256],[6474,5251],[6453,5216],[6394,5212],[6332,5399],[6481,5443],[6565,5485],[6720,5450],[6771,5456],[6760,5511],[6784,5646],[6748,5665],[6757,5726],[6704,5761],[6704,5797],[6761,5831],[6698,5893],[6712,5989],[6775,5958],[6826,5994],[6958,6008],[7017,5985],[7143,5972],[7220,6013],[7304,5961],[7385,5987],[7405,5933],[7437,5915],[7461,5862],[7496,5853],[7494,5757],[7553,5785],[7560,5758],[7619,5743],[7782,5778]]]}},{"type":"Feature","id":"UA.SC","properties":{"hc-group":"admin1","hc-middle-x":0.18,"hc-middle-y":0.61,"hc-key":"ua-sc","hc-a2":"SC","labelrank":"5","hasc":"UA.SC","alt-name":null,"woe-id":"20070189","subregion":null,"fips":"UP08","postal-code":"SC","name":"Sevastopol","country":"Ukraine","type-en":null,"region":null,"longitude":"33.6396","woe-name":"Sevastopol City Municipality","latitude":"44.5182","woe-label":"Sevastopol City Municipality, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[6065,2590],[6010,2615],[5966,2680],[5926,2674],[5836,2740],[5872,2778],[5961,2792],[5923,2818],[5944,2873],[5924,2942],[5958,3003],[5965,2973],[6026,2949],[6036,2914],[5986,2884],[5995,2830],[6050,2835],[6077,2796],[6053,2757],[6114,2709],[6145,2622],[6065,2590]]]}},{"type":"Feature","id":"UA.KR","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.49,"hc-key":"ua-kr","hc-a2":"KR","labelrank":"5","hasc":"UA.KR","alt-name":"Crimée|Criméia|Krim|Krymskaya Respublika|Respublika Krym","woe-id":"2347544","subregion":null,"fips":"UP08","postal-code":"KR","name":"Crimea","country":"Ukraine","type-en":"Autonomous Republic","region":null,"longitude":"34.2784","woe-name":"Crimea","latitude":"45.3115","woe-label":"Crimea, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[6866,3816],[6894,3763],[7086,3496],[7183,3432],[7320,3466],[7420,3596],[7431,3537],[7506,3502],[7599,3596],[7730,3597],[7776,3580],[7827,3588],[7855,3559],[7887,3577],[7925,3509],[7838,3501],[7788,3392],[7790,3300],[7809,3245],[7705,3221],[7672,3185],[7556,3218],[7523,3170],[7429,3162],[7377,3227],[7287,3269],[7182,3253],[7137,3191],[7162,3170],[7047,3119],[7022,3078],[6983,3065],[6938,2966],[6888,3002],[6825,2987],[6728,2985],[6635,2933],[6542,2899],[6486,2808],[6450,2728],[6419,2730],[6337,2641],[6214,2578],[6145,2594],[6065,2590],[6145,2622],[6114,2709],[6053,2757],[6077,2796],[6050,2835],[5995,2830],[5986,2884],[6036,2914],[6026,2949],[5965,2973],[5958,3003],[5990,3076],[5952,3223],[5855,3305],[5756,3279],[5701,3316],[5639,3384],[5524,3459],[5428,3468],[5372,3428],[5276,3447],[5256,3510],[5285,3555],[5361,3612],[5434,3651],[5479,3649],[5505,3710],[5549,3740],[5693,3807],[5697,3851],[5736,3820],[5827,3862],[5896,3915],[5942,3909],[5983,3941],[6029,3922],[6030,3971],[6083,3985],[6000,4030],[5987,4162],[6014,4206],[6012,4246],[6052,4182],[6087,4160],[6098,4211],[6128,4195],[6120,4155],[6150,4110],[6212,4067],[6217,4121],[6246,4131],[6330,4051],[6295,4038],[6322,3995],[6349,4007],[6341,4061],[6300,4106],[6368,4080],[6399,4096],[6419,4051],[6445,4078],[6485,4015],[6465,3986],[6491,3940],[6496,3982],[6536,3943],[6590,4002],[6622,4010],[6607,3950],[6573,3932],[6520,3848],[6574,3868],[6637,3929],[6702,3970],[6701,3930],[6653,3913],[6638,3863],[6687,3889],[6713,3863],[6683,3808],[6783,3817],[6762,3791],[6802,3760],[6844,3761],[6911,3665],[6927,3571],[6878,3544],[6906,3495],[6952,3457],[6998,3462],[7099,3418],[7136,3388],[7167,3415],[7091,3468],[6866,3767],[6850,3806],[6866,3816]]]}},{"type":"Feature","id":"UA.CH","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.51,"hc-key":"ua-ch","hc-a2":"CH","labelrank":"7","hasc":"UA.CH","alt-name":"Chernigov|Tschernigow","woe-id":"2347535","subregion":null,"fips":"UP02","postal-code":"CH","name":"Chernihiv","country":"Ukraine","type-en":"Region","region":null,"longitude":"32.0287","woe-name":"Chernihiv","latitude":"51.2597","woe-label":"Chernihiv Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[4190,8847],[4206,8902],[4240,8931],[4233,9044],[4188,9131],[4178,9177],[4203,9195],[4213,9264],[4237,9266],[4272,9345],[4268,9371],[4320,9443],[4355,9459],[4409,9531],[4443,9599],[4541,9598],[4606,9567],[4637,9614],[4733,9631],[4831,9610],[4930,9615],[4961,9598],[4966,9552],[5036,9564],[5080,9555],[5158,9590],[5200,9645],[5213,9716],[5235,9741],[5228,9809],[5325,9804],[5435,9745],[5502,9754],[5548,9740],[5606,9791],[5628,9792],[5699,9851],[5813,9829],[5790,9741],[5767,9706],[5772,9654],[5841,9595],[5850,9560],[5807,9568],[5788,9507],[5795,9466],[5716,9429],[5680,9427],[5624,9326],[5637,9279],[5676,9235],[5667,9194],[5695,9073],[5658,9066],[5652,8942],[5589,8948],[5617,8914],[5629,8830],[5600,8778],[5570,8769],[5557,8689],[5601,8672],[5637,8632],[5708,8647],[5678,8593],[5692,8516],[5674,8495],[5661,8400],[5684,8378],[5648,8293],[5625,8182],[5594,8129],[5521,8057],[5430,8018],[5299,8030],[5288,8059],[5225,8066],[5174,8048],[5136,8007],[5087,8013],[5045,8044],[5054,8069],[5013,8085],[4992,8133],[5026,8155],[5021,8195],[4986,8197],[4921,8265],[4890,8254],[4862,8202],[4786,8172],[4695,8157],[4587,8178],[4578,8212],[4533,8240],[4558,8282],[4523,8357],[4481,8406],[4343,8382],[4281,8404],[4308,8479],[4237,8526],[4244,8592],[4223,8625],[4164,8634],[4157,8670],[4174,8784],[4167,8832],[4190,8847]]]}},{"type":"Feature","id":"UA.RV","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.53,"hc-key":"ua-rv","hc-a2":"RV","labelrank":"7","hasc":"UA.RV","alt-name":"Rovno|Rivnens\'ka Oblast\'|Rovenskaya Oblast\'","woe-id":"2347551","subregion":null,"fips":"UP18","postal-code":"RV","name":"Rivne","country":"Ukraine","type-en":"Region","region":null,"longitude":"26.3841","woe-name":"Rivne","latitude":"51.048","woe-label":"Rivne Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[2554,9160],[2508,9147],[2501,9076],[2458,9122],[2435,9009],[2403,9004],[2413,8931],[2355,8856],[2311,8770],[2252,8726],[2269,8633],[2255,8547],[2277,8492],[2222,8387],[2245,8353],[2217,8317],[2181,8357],[2090,8307],[2052,8321],[1952,8270],[1880,8174],[1771,8086],[1733,8089],[1671,8028],[1628,8010],[1614,8064],[1630,8110],[1596,8096],[1536,8122],[1470,8128],[1382,8058],[1314,8059],[1233,8037],[1173,8064],[1176,8010],[1109,7933],[1020,8017],[1011,8133],[1034,8193],[958,8208],[1042,8268],[992,8361],[1038,8386],[1026,8437],[1102,8418],[1124,8433],[1123,8485],[1164,8475],[1166,8538],[1211,8512],[1310,8550],[1350,8543],[1372,8504],[1439,8472],[1462,8523],[1470,8603],[1520,8640],[1562,8699],[1555,8757],[1614,8768],[1618,8794],[1585,8860],[1541,8866],[1547,8901],[1592,8907],[1613,8959],[1545,9016],[1484,9107],[1496,9154],[1447,9162],[1419,9141],[1342,9145],[1359,9306],[1390,9346],[1343,9382],[1359,9481],[1425,9547],[1448,9626],[1390,9657],[1515,9652],[1689,9610],[1738,9565],[1869,9547],[1886,9504],[2010,9489],[2113,9433],[2150,9423],[2208,9439],[2295,9415],[2303,9331],[2345,9324],[2328,9274],[2403,9264],[2456,9290],[2567,9255],[2582,9230],[2554,9160]]]}},{"type":"Feature","id":"UA.CV","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.45,"hc-key":"ua-cv","hc-a2":"CV","labelrank":"7","hasc":"UA.CV","alt-name":"Chernivets\'ka Oblast\'|Chernovitskaya Oblast\'|Chernovtsy|Czernowitz|Tschernowzy|Tchernovtsy","woe-id":"2347536","subregion":null,"fips":"UP03","postal-code":"CV","name":"Chernivtsi","country":"Ukraine","type-en":"Region","region":null,"longitude":"26.2156","woe-name":"Chernivtsi","latitude":"48.2892","woe-label":"Chernivtsi Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[2260,6419],[2205,6372],[2159,6393],[2097,6341],[2053,6333],[1965,6372],[1967,6338],[1911,6334],[1854,6378],[1812,6356],[1812,6290],[1750,6328],[1707,6267],[1512,6240],[1495,6162],[1415,6048],[1385,6037],[1257,6039],[1153,6018],[849,6015],[821,5999],[752,5907],[683,5872],[628,5868],[671,5968],[654,6080],[660,6140],[702,6215],[799,6278],[803,6322],[842,6345],[909,6415],[1008,6460],[1091,6445],[1115,6571],[1099,6654],[1147,6702],[1214,6653],[1241,6685],[1305,6604],[1353,6632],[1400,6632],[1389,6581],[1445,6547],[1583,6514],[1639,6528],[1691,6450],[1718,6480],[1780,6479],[1726,6523],[1739,6542],[1791,6513],[1806,6561],[1861,6568],[1857,6531],[1890,6512],[1929,6544],[2029,6516],[2051,6535],[2111,6520],[2106,6564],[2158,6544],[2189,6568],[2228,6540],[2260,6419]]]}},{"type":"Feature","id":"UA.IF","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.46,"hc-key":"ua-if","hc-a2":"IF","labelrank":"7","hasc":"UA.IF","alt-name":"Ivano-Frankovsk|Ivano-Frankovskaya Oblast\'|Stanislav","woe-id":"2347539","subregion":null,"fips":"UP06","postal-code":"IF","name":"Ivano-Frankivs\'k","country":"Ukraine","type-en":"Region","region":null,"longitude":"24.6363","woe-name":"Ivano-Frankivs\'k","latitude":"48.665","woe-label":"Ivano-Frankivsk Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[1147,6702],[1099,6654],[1115,6571],[1091,6445],[1008,6460],[909,6415],[842,6345],[803,6322],[799,6278],[702,6215],[660,6140],[654,6080],[671,5968],[628,5868],[597,5875],[554,5959],[478,6013],[474,6051],[430,6095],[483,6190],[430,6276],[440,6347],[417,6399],[315,6523],[282,6494],[216,6522],[228,6661],[84,6639],[84,6699],[21,6756],[24,6788],[-38,6810],[-69,6860],[-115,6884],[-77,6981],[-88,7025],[-57,7111],[-17,7137],[15,7200],[62,7223],[151,7205],[252,7226],[305,7213],[480,7247],[470,7286],[438,7291],[438,7352],[489,7412],[467,7432],[519,7540],[592,7539],[669,7500],[728,7353],[723,7286],[743,7225],[722,7199],[728,7143],[786,7138],[795,7086],[740,7094],[779,7014],[832,7004],[867,6975],[862,6933],[935,6956],[915,6876],[976,6869],[927,6852],[924,6813],[991,6875],[1039,6870],[1080,6825],[1150,6777],[1147,6702]]]}},{"type":"Feature","id":"UA.KM","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.47,"hc-key":"ua-km","hc-a2":"KM","labelrank":"7","hasc":"UA.KM","alt-name":"Khmelnitsky|Khmelnytskyi|Chmelnizkij|Hmelnicki|Kamenets-Podol\'skaya Oblast\'|Khmel\'nyts\'ka Oblast\'","woe-id":"2347542","subregion":null,"fips":"UP09","postal-code":"KM","name":"Khmel\'nyts\'kyy","country":"Ukraine","type-en":"Region","region":null,"longitude":"27.0187","woe-name":"Khmel\'nyts\'kyy","latitude":"49.5537","woe-label":"Khmelnytskyi Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[2189,6568],[2158,6544],[2106,6564],[2111,6520],[2051,6535],[2029,6516],[1929,6544],[1890,6512],[1857,6531],[1861,6568],[1806,6561],[1791,6513],[1739,6542],[1726,6523],[1780,6479],[1718,6480],[1691,6450],[1639,6528],[1583,6514],[1581,6568],[1545,6598],[1554,6632],[1509,6674],[1533,6790],[1509,6823],[1519,6868],[1503,6921],[1526,6962],[1516,7001],[1539,7034],[1527,7122],[1558,7180],[1563,7323],[1547,7341],[1525,7436],[1565,7479],[1599,7563],[1575,7609],[1597,7664],[1573,7712],[1564,7837],[1617,7878],[1595,7898],[1610,7955],[1648,7976],[1628,8010],[1671,8028],[1733,8089],[1771,8086],[1880,8174],[1952,8270],[2052,8321],[2090,8307],[2181,8357],[2217,8317],[2277,8254],[2228,8182],[2323,8086],[2367,8015],[2438,8033],[2455,7958],[2435,7877],[2457,7833],[2387,7815],[2402,7760],[2377,7731],[2404,7714],[2440,7620],[2560,7576],[2485,7502],[2517,7476],[2465,7369],[2479,7314],[2464,7290],[2514,7277],[2501,7238],[2535,7136],[2521,7112],[2535,7031],[2459,6994],[2372,7040],[2341,7008],[2301,7015],[2233,6923],[2211,6846],[2232,6700],[2214,6687],[2189,6568]]]}},{"type":"Feature","id":"UA.LV","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.52,"hc-key":"ua-lv","hc-a2":"LV","labelrank":"7","hasc":"UA.LV","alt-name":"Lemberg|Llvov|L\'vov|Lwow|L\'vivs\'ka Oblast\'","woe-id":"2347547","subregion":null,"fips":"UP13","postal-code":"LV","name":"L\'viv","country":"Ukraine","type-en":"Region","region":null,"longitude":"24.0372","woe-name":"L\'viv","latitude":"49.8152","woe-label":"Lviv Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[958,8208],[1034,8193],[1011,8133],[1020,8017],[1109,7933],[1139,7876],[1114,7818],[1017,7778],[932,7771],[930,7701],[880,7687],[825,7607],[688,7556],[669,7500],[592,7539],[519,7540],[467,7432],[489,7412],[438,7352],[438,7291],[470,7286],[480,7247],[305,7213],[252,7226],[151,7205],[62,7223],[15,7200],[-17,7137],[-57,7111],[-88,7025],[-77,6981],[-115,6884],[-247,6925],[-320,6972],[-355,7051],[-413,7044],[-475,7126],[-462,7177],[-481,7199],[-480,7265],[-557,7354],[-573,7349],[-525,7448],[-522,7532],[-541,7583],[-551,7686],[-451,7813],[-420,7824],[-226,8039],[-2,8228],[81,8277],[143,8331],[162,8368],[202,8383],[307,8371],[340,8380],[366,8458],[428,8495],[438,8576],[472,8581],[514,8522],[592,8531],[618,8480],[656,8472],[674,8438],[622,8398],[644,8349],[675,8371],[793,8268],[874,8266],[889,8284],[962,8244],[958,8208]]]}},{"type":"Feature","id":"UA.TP","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.47,"hc-key":"ua-tp","hc-a2":"TP","labelrank":"7","hasc":"UA.TP","alt-name":"Ternopol|Ternopol\'","woe-id":"2347553","subregion":null,"fips":"UP19","postal-code":"TP","name":"Ternopil\'","country":"Ukraine","type-en":"Region","region":null,"longitude":"25.5438","woe-name":"Ternopil\'","latitude":"49.4739","woe-label":"Ternopil Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[1147,6702],[1150,6777],[1080,6825],[1039,6870],[991,6875],[924,6813],[927,6852],[976,6869],[915,6876],[935,6956],[862,6933],[867,6975],[832,7004],[779,7014],[740,7094],[795,7086],[786,7138],[728,7143],[722,7199],[743,7225],[723,7286],[728,7353],[669,7500],[688,7556],[825,7607],[880,7687],[930,7701],[932,7771],[1017,7778],[1114,7818],[1139,7876],[1109,7933],[1176,8010],[1173,8064],[1233,8037],[1314,8059],[1382,8058],[1470,8128],[1536,8122],[1596,8096],[1630,8110],[1614,8064],[1628,8010],[1648,7976],[1610,7955],[1595,7898],[1617,7878],[1564,7837],[1573,7712],[1597,7664],[1575,7609],[1599,7563],[1565,7479],[1525,7436],[1547,7341],[1563,7323],[1558,7180],[1527,7122],[1539,7034],[1516,7001],[1526,6962],[1503,6921],[1519,6868],[1509,6823],[1533,6790],[1509,6674],[1554,6632],[1545,6598],[1581,6568],[1583,6514],[1445,6547],[1389,6581],[1400,6632],[1353,6632],[1305,6604],[1241,6685],[1214,6653],[1147,6702]]]}},{"type":"Feature","id":"UA.ZK","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.56,"hc-key":"ua-zk","hc-a2":"ZK","labelrank":"5","hasc":"UA.ZK","alt-name":"Transcarpathian|Zakarpattia|Ruthenia|Zakarpats\'ka Oblast\'|Zakarpatskaya Oblast\'","woe-id":"2347556","subregion":null,"fips":"UP22","postal-code":"ZK","name":"Transcarpathia","country":"Ukraine","type-en":"Region","region":null,"longitude":"23.3868","woe-name":"Transcarpathia","latitude":"48.3634","woe-label":"Zakarpattia Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[-115,6884],[-69,6860],[-38,6810],[24,6788],[21,6756],[84,6699],[84,6639],[228,6661],[216,6522],[282,6494],[315,6523],[417,6399],[440,6347],[430,6276],[483,6190],[430,6095],[345,6118],[218,6081],[70,6159],[6,6141],[-48,6196],[-178,6229],[-232,6204],[-303,6233],[-372,6321],[-439,6341],[-483,6269],[-512,6252],[-559,6277],[-604,6229],[-627,6262],[-603,6304],[-617,6347],[-663,6394],[-754,6392],[-771,6465],[-808,6530],[-884,6541],[-907,6592],[-915,6694],[-999,6708],[-978,6839],[-963,6870],[-846,6960],[-808,7042],[-804,7087],[-769,7123],[-736,7196],[-690,7209],[-669,7280],[-643,7285],[-611,7245],[-543,7237],[-490,7183],[-481,7199],[-462,7177],[-475,7126],[-413,7044],[-355,7051],[-320,6972],[-247,6925],[-115,6884]]]}},{"type":"Feature","id":"UA.VO","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.49,"hc-key":"ua-vo","hc-a2":"VO","labelrank":"5","hasc":"UA.VO","alt-name":"Volhynia|Volyns\'ka Oblast\'|Volynskaya Oblast\'|Wolynien","woe-id":"2347555","subregion":null,"fips":"UP21","postal-code":"VO","name":"Volyn","country":"Ukraine","type-en":"Region","region":null,"longitude":"24.8444","woe-name":"Volyn","latitude":"51.1247","woe-label":"Volyn Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[958,8208],[962,8244],[889,8284],[874,8266],[793,8268],[675,8371],[644,8349],[622,8398],[674,8438],[656,8472],[618,8480],[592,8531],[514,8522],[472,8581],[438,8576],[431,8653],[377,8718],[380,8763],[474,8764],[477,8791],[398,8864],[367,8932],[360,9052],[294,9135],[246,9254],[290,9309],[254,9399],[266,9438],[255,9499],[278,9518],[348,9523],[421,9491],[472,9454],[566,9520],[635,9556],[675,9634],[736,9693],[877,9687],[922,9673],[1083,9681],[1189,9706],[1281,9670],[1390,9657],[1448,9626],[1425,9547],[1359,9481],[1343,9382],[1390,9346],[1359,9306],[1342,9145],[1419,9141],[1447,9162],[1496,9154],[1484,9107],[1545,9016],[1613,8959],[1592,8907],[1547,8901],[1541,8866],[1585,8860],[1618,8794],[1614,8768],[1555,8757],[1562,8699],[1520,8640],[1470,8603],[1462,8523],[1439,8472],[1372,8504],[1350,8543],[1310,8550],[1211,8512],[1166,8538],[1164,8475],[1123,8485],[1124,8433],[1102,8418],[1026,8437],[1038,8386],[992,8361],[1042,8268],[958,8208]]]}},{"type":"Feature","id":"UA.CK","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.57,"hc-key":"ua-ck","hc-a2":"CK","labelrank":"7","hasc":"UA.CK","alt-name":"Cherkas\'ka Oblast\'|Cherkasskaya Oblast\'|Cherkassy","woe-id":"2347534","subregion":null,"fips":"UP01","postal-code":"CK","name":"Cherkasy","country":"Ukraine","type-en":"Region","region":null,"longitude":"31.2241","woe-name":"Cherkasy","latitude":"49.1506","woe-label":"Cherkasy Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[5045,7912],[5133,7828],[5152,7751],[5195,7740],[5242,7670],[5241,7600],[5214,7585],[5251,7517],[5334,7471],[5343,7418],[5407,7392],[5438,7328],[5443,7279],[5396,7220],[5463,7084],[5463,7019],[5441,6952],[5463,6914],[5470,6848],[5496,6781],[5458,6747],[5399,6768],[5369,6731],[5298,6718],[5261,6832],[5207,6828],[5189,6864],[5135,6830],[5079,6765],[5069,6706],[5007,6718],[4925,6659],[4874,6716],[4802,6736],[4779,6712],[4715,6719],[4703,6638],[4663,6572],[4584,6539],[4570,6557],[4492,6566],[4416,6547],[4347,6575],[4271,6572],[4205,6587],[4151,6549],[4141,6497],[4103,6457],[4122,6407],[4067,6398],[4026,6416],[4006,6379],[3926,6341],[3878,6346],[3817,6317],[3748,6339],[3787,6394],[3753,6499],[3695,6544],[3713,6578],[3645,6611],[3615,6748],[3570,6779],[3595,6812],[3550,6847],[3618,6940],[3618,7030],[3664,6977],[3720,6982],[3752,7042],[3824,7074],[3867,7064],[3889,7112],[3904,7069],[4008,7043],[4032,7024],[4058,7120],[4096,7100],[4152,7103],[4172,7129],[4237,7093],[4320,7127],[4343,7113],[4368,7171],[4448,7242],[4496,7300],[4481,7354],[4508,7402],[4524,7479],[4515,7539],[4535,7571],[4609,7608],[4665,7615],[4691,7568],[4747,7574],[4827,7558],[4887,7661],[4887,7695],[4928,7724],[4914,7783],[4953,7830],[5001,7859],[5007,7922],[5045,7912]]]}},{"type":"Feature","id":"UA.KH","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.52,"hc-key":"ua-kh","hc-a2":"KH","labelrank":"7","hasc":"UA.KH","alt-name":"Kirovograd|Kirovogradskaya Oblast\'","woe-id":"2347543","subregion":null,"fips":"UP10","postal-code":"KH","name":"Kirovohrad","country":"Ukraine","type-en":"Region","region":null,"longitude":"31.8288","woe-name":"Kirovohrad","latitude":"48.4261","woe-label":"Kirovohrad Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[3817,6317],[3878,6346],[3926,6341],[4006,6379],[4026,6416],[4067,6398],[4122,6407],[4103,6457],[4141,6497],[4151,6549],[4205,6587],[4271,6572],[4347,6575],[4416,6547],[4492,6566],[4570,6557],[4584,6539],[4663,6572],[4703,6638],[4715,6719],[4779,6712],[4802,6736],[4874,6716],[4925,6659],[5007,6718],[5069,6706],[5079,6765],[5135,6830],[5189,6864],[5207,6828],[5261,6832],[5298,6718],[5369,6731],[5399,6768],[5458,6747],[5496,6781],[5470,6848],[5463,6914],[5441,6952],[5463,7019],[5612,6946],[5674,6899],[5711,6845],[5767,6840],[5796,6810],[5768,6776],[5814,6727],[5863,6728],[5915,6693],[5947,6711],[5994,6663],[6006,6696],[6056,6712],[6142,6661],[6086,6564],[6053,6604],[5985,6605],[5925,6574],[5953,6527],[6045,6507],[6084,6481],[6025,6433],[5861,6351],[5883,6274],[5903,6091],[5830,6027],[5806,6037],[5757,5967],[5734,6025],[5725,5952],[5680,5943],[5624,5892],[5610,5838],[5576,5908],[5518,5895],[5477,5838],[5453,5859],[5395,5828],[5414,5789],[5381,5776],[5393,5727],[5368,5687],[5262,5671],[5159,5707],[5119,5708],[5060,5642],[4989,5699],[4894,5687],[4877,5734],[4894,5765],[4867,5824],[4842,5825],[4800,5891],[4837,5918],[4832,5959],[4745,5985],[4673,5939],[4673,5986],[4621,5977],[4522,5991],[4483,6071],[4375,6077],[4316,6030],[4273,6052],[4190,6055],[4142,6025],[4066,6043],[3972,6046],[3938,6022],[3811,6034],[3760,6106],[3716,6108],[3695,6076],[3625,6095],[3634,6138],[3605,6157],[3632,6227],[3684,6288],[3717,6300],[3732,6248],[3817,6317]]]}},{"type":"Feature","id":"UA.KV","properties":{"hc-group":"admin1","hc-middle-x":0.37,"hc-middle-y":0.71,"hc-key":"ua-kv","hc-a2":"KV","labelrank":"7","hasc":"UA.KV","alt-name":"Kiev Oblast|Kiew|Kijew|Kiiv|Kijev|Kiyev|Kyiv|Kyjiv|Kyyiv|Kyyivs\'ka Oblast\'","woe-id":"2347545","subregion":null,"fips":"UP11","postal-code":"KV","name":"Kiev","country":"Ukraine","type-en":"Region","region":null,"longitude":"31.0214","woe-name":"Kiev","latitude":"50.0894","woe-label":"Kiev Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[5045,7912],[5007,7922],[5001,7859],[4953,7830],[4914,7783],[4928,7724],[4887,7695],[4887,7661],[4827,7558],[4747,7574],[4691,7568],[4665,7615],[4609,7608],[4535,7571],[4515,7539],[4524,7479],[4508,7402],[4481,7354],[4496,7300],[4448,7242],[4368,7171],[4343,7113],[4320,7127],[4237,7093],[4172,7129],[4152,7103],[4096,7100],[4058,7120],[4032,7024],[4008,7043],[3904,7069],[3889,7112],[3867,7064],[3824,7074],[3752,7042],[3720,6982],[3664,6977],[3618,7030],[3589,7046],[3557,7105],[3523,7117],[3506,7162],[3544,7203],[3536,7278],[3550,7315],[3513,7350],[3526,7405],[3487,7423],[3510,7473],[3473,7476],[3487,7551],[3604,7612],[3668,7685],[3637,7743],[3636,7817],[3676,7844],[3655,7894],[3659,7969],[3613,8027],[3597,8094],[3572,8125],[3522,8116],[3554,8195],[3565,8256],[3546,8281],[3617,8385],[3607,8439],[3560,8458],[3574,8522],[3517,8635],[3553,8624],[3569,8717],[3495,8787],[3474,8763],[3455,8873],[3523,8926],[3530,8977],[3509,8998],[3574,9002],[3598,9049],[3664,9090],[3711,9086],[3731,9045],[3792,9036],[3886,9077],[3966,9076],[3998,9058],[4066,8985],[4078,8908],[4190,8847],[4167,8832],[4174,8784],[4157,8670],[4164,8634],[4223,8625],[4244,8592],[4237,8526],[4308,8479],[4281,8404],[4343,8382],[4481,8406],[4523,8357],[4558,8282],[4533,8240],[4578,8212],[4587,8178],[4695,8157],[4786,8172],[4862,8202],[4890,8254],[4921,8265],[4986,8197],[5021,8195],[5026,8155],[4992,8133],[5013,8085],[5054,8069],[5045,8044],[5087,8013],[5059,7955],[5045,7912]],[[4337,8242],[4334,8292],[4279,8320],[4266,8280],[4223,8237],[4168,8244],[4165,8215],[4124,8259],[4102,8321],[4044,8323],[4006,8298],[3998,8237],[3973,8216],[3949,8075],[3981,8099],[4027,8092],[4034,8055],[4079,7995],[4113,7898],[4138,7889],[4148,7804],[4171,7727],[4208,7744],[4195,7825],[4215,7855],[4190,7958],[4256,7951],[4261,7994],[4300,7977],[4300,8014],[4333,8032],[4285,8112],[4281,8173],[4337,8242]]]}},{"type":"Feature","id":"UA.MK","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.48,"hc-key":"ua-mk","hc-a2":"MK","labelrank":"7","hasc":"UA.MY","alt-name":"Mykolaiv|Nikolajew|Nikolayev","woe-id":"2347548","subregion":null,"fips":"UP14","postal-code":"MK","name":"Mykolayiv","country":"Ukraine","type-en":"Region","region":null,"longitude":"31.6498","woe-name":"Mykolayiv","latitude":"47.0902","woe-label":"Mykolaiv Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3938,6022],[3972,6046],[4066,6043],[4142,6025],[4190,6055],[4273,6052],[4316,6030],[4375,6077],[4483,6071],[4522,5991],[4621,5977],[4673,5986],[4673,5939],[4745,5985],[4832,5959],[4837,5918],[4800,5891],[4842,5825],[4867,5824],[4894,5765],[4877,5734],[4894,5687],[4989,5699],[5060,5642],[5119,5708],[5159,5707],[5262,5671],[5368,5687],[5393,5727],[5381,5776],[5414,5789],[5395,5828],[5453,5859],[5477,5838],[5518,5895],[5576,5908],[5610,5838],[5608,5801],[5639,5770],[5626,5664],[5640,5622],[5579,5605],[5598,5562],[5592,5497],[5644,5489],[5660,5441],[5666,5337],[5629,5367],[5605,5330],[5650,5306],[5666,5256],[5654,5206],[5673,5168],[5619,5124],[5574,5128],[5536,5052],[5542,5027],[5627,4972],[5604,4931],[5573,4958],[5560,4918],[5598,4903],[5469,4844],[5552,4832],[5478,4800],[5403,4800],[5386,4820],[5301,4843],[5297,4814],[5207,4813],[5188,4779],[5103,4783],[5070,4730],[5008,4731],[4940,4709],[4923,4781],[4966,4867],[4962,4908],[4927,4933],[4951,4971],[4892,4977],[4894,5071],[4854,5143],[4852,5075],[4889,5048],[4864,4971],[4933,4962],[4902,4912],[4945,4905],[4930,4834],[4900,4820],[4879,4763],[4904,4724],[4904,4655],[4873,4625],[4818,4625],[4757,4649],[4697,4617],[4636,4645],[4725,4796],[4662,4737],[4614,4786],[4653,4712],[4603,4638],[4545,4606],[4452,4633],[4440,4812],[4375,4879],[4365,4931],[4476,4947],[4506,4972],[4534,5062],[4485,5122],[4419,5138],[4455,5190],[4442,5220],[4373,5202],[4296,5227],[4250,5368],[4274,5471],[4227,5510],[4222,5555],[4168,5515],[4151,5550],[4104,5561],[4034,5550],[4001,5575],[3989,5707],[3946,5749],[3935,5848],[3887,5899],[3893,5967],[3951,5991],[3938,6022]]],[[[4844,4493],[4788,4510],[4748,4484],[4662,4570],[4697,4552],[4807,4558],[4867,4528],[4844,4493],[4844,4493]]]]}},{"type":"Feature","id":"UA.VI","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.53,"hc-key":"ua-vi","hc-a2":"VI","labelrank":"7","hasc":"UA.VI","alt-name":"Vinnytsia|Vinnitskaya Oblast\'|Vinnyts\'ka Oblast|Winniza","woe-id":"2347554","subregion":null,"fips":"UP20","postal-code":"VI","name":"Vinnytsya","country":"Ukraine","type-en":"Region","region":null,"longitude":"28.7233","woe-name":"Vinnytsya","latitude":"48.9623","woe-label":"Vinnytsia Oblast, UA, Ukraine","type":"Oblast\'"},"geometry":{"type":"Polygon","coordinates":[[[3817,6317],[3732,6248],[3717,6300],[3684,6288],[3632,6227],[3605,6157],[3634,6138],[3625,6095],[3557,6067],[3562,5997],[3451,6002],[3414,6022],[3354,6001],[3298,6002],[3213,6060],[3174,6048],[3175,6007],[3059,5937],[3026,6041],[2891,6088],[2857,6084],[2835,6009],[2779,6107],[2753,6073],[2738,6104],[2770,6164],[2725,6172],[2666,6153],[2656,6197],[2594,6188],[2609,6223],[2585,6259],[2507,6280],[2474,6337],[2408,6390],[2333,6394],[2321,6425],[2260,6419],[2228,6540],[2189,6568],[2214,6687],[2232,6700],[2211,6846],[2233,6923],[2301,7015],[2341,7008],[2372,7040],[2459,6994],[2535,7031],[2521,7112],[2535,7136],[2501,7238],[2514,7277],[2464,7290],[2479,7314],[2465,7369],[2517,7476],[2485,7502],[2560,7576],[2653,7570],[2797,7587],[2869,7572],[2894,7598],[2976,7574],[3059,7576],[3137,7652],[3180,7641],[3195,7563],[3229,7509],[3198,7474],[3221,7381],[3378,7369],[3487,7423],[3526,7405],[3513,7350],[3550,7315],[3536,7278],[3544,7203],[3506,7162],[3523,7117],[3557,7105],[3589,7046],[3618,7030],[3618,6940],[3550,6847],[3595,6812],[3570,6779],[3615,6748],[3645,6611],[3713,6578],[3695,6544],[3753,6499],[3787,6394],[3748,6339],[3817,6317]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/by-all.geo.json
const by_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Belarus","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32635"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=35 +datum=WGS84 +units=m +no_defs","scale":0.00109030149723,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":238519.314618,"yoffset":6224087.58404}},"features":[{"type":"Feature","id":"BY.HM","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.51,"hc-key":"by-hm","hc-a2":"HM","labelrank":"7","hasc":"BY.HM","alt-name":"?????|??????? ???????|Minsk Oblast|Minskaya Voblasts\'","woe-id":"20069996","subregion":null,"fips":"BO06","postal-code":"HM","name":"City of Minsk","country":"Belarus","type-en":"Region","region":null,"longitude":"27.6424","woe-name":"Minsk","latitude":"53.9005","woe-label":"Minsk, BY, Belarus","type":"Voblasts\'"},"geometry":{"type":"Polygon","coordinates":[[[4345,5823],[4349,5757],[4286,5662],[4296,5554],[4344,5479],[4314,5432],[4186,5435],[4069,5420],[4039,5382],[3994,5429],[3846,5480],[3832,5588],[3847,5720],[3872,5781],[3977,5819],[4091,5801],[4183,5769],[4254,5784],[4315,5832],[4345,5823]]]}},{"type":"Feature","id":"BY.BR","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.56,"hc-key":"by-br","hc-a2":"BR","labelrank":"7","hasc":"BY.BR","alt-name":"?????|Brestskaya Voblasts\'|Brèst","woe-id":"2344830","subregion":null,"fips":"BO01","postal-code":"BR","name":"Brest","country":"Belarus","type-en":"Region","region":null,"longitude":"25.3826","woe-name":"Brest","latitude":"52.4289","woe-label":"Brestskaya Voblasts\', BY, Belarus","type":"Voblasts\'"},"geometry":{"type":"Polygon","coordinates":[[[4019,1319],[3978,1320],[3875,1258],[3717,1266],[3744,1371],[3658,1378],[3631,1431],[3627,1550],[3548,1579],[3445,1583],[3328,1542],[3251,1555],[3030,1653],[2774,1663],[2731,1748],[2460,1762],[2351,1846],[2235,1852],[1988,1903],[1890,1885],[1505,1900],[1310,1958],[1204,1941],[1098,1889],[770,1846],[675,1867],[385,1854],[334,1821],[270,1723],[238,1602],[203,1557],[67,1471],[-114,1320],[-161,1315],[-224,1389],[-380,1442],[-523,1419],[-565,1376],[-534,1254],[-538,1207],[-596,1255],[-629,1383],[-633,1481],[-599,1504],[-612,1583],[-592,1659],[-522,1716],[-507,1759],[-544,1824],[-471,2067],[-436,2103],[-473,2275],[-537,2347],[-614,2356],[-680,2475],[-752,2476],[-742,2504],[-951,2575],[-999,2687],[-940,2793],[-717,3087],[-612,3166],[-508,3220],[-314,3266],[-158,3363],[-110,3417],[-91,3553],[81,3538],[167,3591],[203,3558],[360,3522],[443,3536],[532,3469],[628,3479],[618,3569],[674,3658],[657,3699],[751,3776],[710,3836],[793,3872],[923,3817],[980,3823],[1010,3874],[1069,3865],[1097,3758],[1151,3729],[1221,3758],[1204,3637],[1238,3621],[1301,3650],[1362,3645],[1439,3676],[1511,3628],[1485,3779],[1520,3810],[1609,3817],[1676,3924],[1748,3969],[1836,4160],[1782,4268],[1841,4319],[1806,4381],[1824,4431],[1883,4459],[1898,4544],[1982,4660],[2153,4646],[2181,4622],[2340,4607],[2388,4614],[2544,4592],[2602,4569],[2719,4594],[2713,4509],[2736,4469],[2732,4383],[2668,4375],[2595,4279],[2600,4243],[2662,4229],[2721,4130],[2813,4119],[2872,4005],[2769,3990],[2708,3892],[2786,3700],[2746,3654],[2782,3586],[2886,3625],[2897,3678],[2940,3693],[3012,3656],[3024,3604],[3108,3600],[3192,3479],[3370,3416],[3407,3451],[3444,3426],[3444,3367],[3481,3306],[3599,3285],[3636,3239],[3621,3170],[3486,3164],[3465,3107],[3494,3074],[3467,3037],[3584,2914],[3600,2868],[3567,2808],[3732,2704],[3749,2645],[3846,2618],[3877,2557],[4024,2473],[4044,2444],[4022,2373],[4030,2164],[4115,2063],[4099,2010],[4030,1920],[4038,1841],[4006,1735],[4068,1663],[4067,1559],[4015,1474],[4019,1319]]]}},{"type":"Feature","id":"BY.HO","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.49,"hc-key":"by-ho","hc-a2":"HO","labelrank":"7","hasc":"BY.HO","alt-name":"??????|Gomel|Gomel\'|Homyel\'skaya Voblasts\'|Homje","woe-id":"2344831","subregion":null,"fips":"BO02","postal-code":"HO","name":"Gomel","country":"Belarus","type-en":"Region","region":null,"longitude":"29.5189","woe-name":"Homyel\'","latitude":"52.1969","woe-label":"Homyel\'skaya Voblasts\', BY, Belarus","type":"Voblasts\'"},"geometry":{"type":"Polygon","coordinates":[[[8352,4281],[8347,4210],[8309,4196],[8234,4075],[8324,4010],[8408,3847],[8483,3794],[8546,3782],[8617,3670],[8635,3555],[8537,3468],[8662,3278],[8723,3226],[8644,3207],[8641,3134],[8684,3100],[8688,2950],[8720,2895],[8681,2777],[8760,2694],[8840,2674],[8821,2606],[8847,2550],[8925,2488],[8933,2396],[8802,2380],[8597,2407],[8491,2400],[8402,2357],[8348,2254],[8292,2249],[8208,2306],[8005,2291],[7960,2259],[7947,2147],[7899,2065],[7837,2027],[7848,1988],[7779,1949],[7685,1793],[7698,1740],[7639,1682],[7673,1671],[7640,1572],[7589,1564],[7580,1419],[7533,1380],[7568,1342],[7560,1286],[7620,1268],[7597,1228],[7667,1115],[7635,1053],[7677,1026],[7708,943],[7703,884],[7637,820],[7596,689],[7505,735],[7459,789],[7372,810],[7327,877],[7334,965],[7246,1030],[7182,1105],[7114,1136],[6950,1125],[6854,1075],[6808,1086],[6764,1025],[6636,1032],[6588,1114],[6492,1114],[6436,1044],[6363,1019],[6320,919],[6245,937],[6149,876],[6122,891],[6080,1001],[6027,1063],[6031,1161],[5948,1317],[5904,1357],[5810,1356],[5762,1273],[5710,1235],[5603,1224],[5530,1173],[5476,1080],[5478,977],[5452,924],[5421,1001],[5374,984],[5335,1039],[5299,1207],[5163,1239],[5101,1227],[4999,1148],[4955,1240],[4835,1383],[4784,1347],[4725,1238],[4674,1203],[4516,1219],[4419,1308],[4371,1283],[4343,1111],[4277,1025],[4199,1076],[4246,1218],[4212,1268],[4146,1269],[4019,1319],[4015,1474],[4067,1559],[4068,1663],[4006,1735],[4038,1841],[4030,1920],[4099,2010],[4115,2063],[4030,2164],[4022,2373],[4044,2444],[4024,2473],[3877,2557],[3846,2618],[3749,2645],[3732,2704],[3818,2841],[3804,2915],[3859,2936],[3874,2986],[3937,2970],[4032,3040],[4064,2983],[4109,3025],[4110,2932],[4231,2852],[4359,2848],[4487,2861],[4533,2896],[4515,2972],[4553,3009],[4651,2989],[4722,2913],[4959,2943],[5031,3009],[5028,3230],[5098,3321],[5226,3322],[5320,3340],[5501,3400],[5516,3444],[5465,3481],[5653,3557],[5660,3683],[5789,3706],[5884,3834],[5969,3851],[6138,3802],[6150,3855],[6214,3809],[6308,3874],[6429,3877],[6475,3855],[6524,3928],[6407,4004],[6436,4060],[6398,4153],[6430,4207],[6528,4201],[6507,4245],[6542,4318],[6512,4355],[6567,4387],[6518,4527],[6571,4632],[6696,4579],[6775,4620],[6964,4520],[6999,4435],[7084,4431],[7228,4488],[7218,4543],[7261,4582],[7346,4599],[7469,4572],[7520,4535],[7579,4531],[7609,4573],[7659,4553],[7783,4551],[7818,4607],[7913,4602],[7964,4479],[8049,4418],[8061,4336],[8039,4300],[8113,4298],[8186,4244],[8352,4281]]]}},{"type":"Feature","id":"BY.VI","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.48,"hc-key":"by-vi","hc-a2":"VI","labelrank":"7","hasc":"BY.VI","alt-name":"???????|Vicebsk|Vitebsk|Vitsyebskaya Voblasts\'|Witebsk","woe-id":"2344835","subregion":null,"fips":"BO07","postal-code":"VI","name":"Vitebsk","country":"Belarus","type-en":"Region","region":null,"longitude":"28.6747","woe-name":"Vitsyebsk","latitude":"55.3073","woe-label":"Vitsyebskaya Voblasts\', BY, Belarus","type":"Voblasts\'"},"geometry":{"type":"Polygon","coordinates":[[[2523,7659],[2583,7774],[2593,7880],[2628,7934],[2676,7942],[2795,7909],[2853,7942],[2966,7890],[3007,7922],[3026,8028],[3099,8112],[3168,8130],[3206,8180],[3172,8231],[2994,8263],[2929,8246],[2847,8272],[2826,8303],[2894,8494],[2932,8532],[2921,8639],[2989,8735],[3002,8826],[2989,8922],[3038,8975],[3147,8951],[3232,8994],[3314,9131],[3400,9221],[3537,9239],[3603,9219],[3699,9147],[3790,9230],[3885,9170],[4048,9162],[4072,9321],[4101,9405],[4205,9475],[4243,9582],[4347,9673],[4378,9742],[4586,9851],[4778,9647],[4824,9655],[4881,9728],[5037,9748],[5124,9723],[5190,9620],[5220,9493],[5330,9449],[5381,9529],[5559,9624],[5680,9604],[5765,9543],[5928,9503],[5998,9432],[5948,9380],[5903,9188],[5927,9122],[6034,9005],[6085,9003],[6163,9105],[6265,9170],[6394,9177],[6457,9291],[6581,9327],[6708,9285],[6823,9353],[6882,9310],[7095,9250],[7111,9177],[7208,9135],[7242,9016],[7347,8997],[7404,8891],[7515,8929],[7557,8911],[7600,8789],[7572,8662],[7578,8597],[7612,8551],[7602,8490],[7540,8440],[7492,8314],[7562,8257],[7599,8167],[7682,8093],[7712,8035],[7700,7978],[7747,7833],[7647,7831],[7677,7735],[7640,7683],[7550,7643],[7568,7549],[7510,7456],[7517,7374],[7580,7349],[7753,7235],[7777,7172],[7893,7173],[7967,7089],[7891,6923],[7868,6840],[7984,6799],[7998,6773],[7931,6768],[7858,6722],[7859,6671],[7723,6723],[7665,6659],[7536,6665],[7485,6686],[7359,6598],[7390,6543],[7351,6467],[7279,6424],[7208,6469],[7182,6517],[7092,6444],[6997,6470],[7051,6574],[6990,6541],[6919,6538],[6897,6496],[6814,6564],[6743,6467],[6758,6372],[6608,6405],[6576,6481],[6533,6493],[6526,6441],[6340,6406],[6229,6422],[6209,6374],[6159,6361],[6080,6266],[6030,6256],[6024,6353],[6067,6422],[6020,6477],[6065,6589],[6074,6747],[6107,6807],[6086,6861],[6137,6915],[6098,6993],[6070,6927],[5991,6943],[5942,6908],[5852,6921],[5825,7028],[5765,7006],[5749,7044],[5681,6982],[5618,6964],[5476,6986],[5460,6862],[5351,6906],[5304,6880],[5238,6902],[5236,6993],[5210,7042],[5159,7000],[5139,7046],[5041,7018],[4977,6844],[4893,6863],[4758,7019],[4674,7009],[4605,6972],[4548,6986],[4412,6946],[4394,7001],[4339,6974],[4245,6991],[4157,7117],[4173,7172],[4098,7229],[3993,7245],[3984,7314],[3869,7425],[3763,7436],[3751,7489],[3692,7569],[3724,7624],[3682,7662],[3623,7647],[3535,7670],[3500,7643],[3484,7574],[3359,7573],[3309,7620],[3198,7601],[3116,7567],[3092,7602],[3003,7607],[2972,7578],[2739,7631],[2714,7563],[2638,7536],[2606,7614],[2523,7659]]]}},{"type":"Feature","id":"BY.HR","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.64,"hc-key":"by-hr","hc-a2":"HR","labelrank":"7","hasc":"BY.HR","alt-name":"??????|Grodno|Hrodzenskaya Voblasts\'","woe-id":"2344832","subregion":null,"fips":"BO03","postal-code":"HR","name":"Grodno","country":"Belarus","type-en":"Region","region":null,"longitude":"25.0839","woe-name":"Hrodna","latitude":"53.4855","woe-label":"Haradzyenskaya Voblasts\', BY, Belarus","type":"Voblasts\'"},"geometry":{"type":"Polygon","coordinates":[[[2719,4594],[2602,4569],[2544,4592],[2388,4614],[2340,4607],[2181,4622],[2153,4646],[1982,4660],[1898,4544],[1883,4459],[1824,4431],[1806,4381],[1841,4319],[1782,4268],[1836,4160],[1748,3969],[1676,3924],[1609,3817],[1520,3810],[1485,3779],[1511,3628],[1439,3676],[1362,3645],[1301,3650],[1238,3621],[1204,3637],[1221,3758],[1151,3729],[1097,3758],[1069,3865],[1010,3874],[980,3823],[923,3817],[793,3872],[710,3836],[751,3776],[657,3699],[674,3658],[618,3569],[628,3479],[532,3469],[443,3536],[360,3522],[203,3558],[167,3591],[81,3538],[-91,3553],[-83,4005],[-128,4079],[-133,4148],[-90,4267],[-139,4329],[-205,4496],[-242,4676],[-310,4849],[-391,5146],[-411,5278],[-408,5394],[-443,5474],[-449,5575],[-479,5713],[-478,5768],[-308,5684],[-145,5731],[-100,5714],[4,5762],[71,5726],[142,5724],[245,5766],[316,5757],[374,5645],[508,5627],[549,5646],[680,5755],[847,5813],[897,5757],[969,5767],[1008,5860],[969,5999],[1053,6097],[1155,6093],[1241,6056],[1291,6063],[1387,6142],[1431,6269],[1465,6296],[1534,6269],[1625,6272],[1698,6353],[1739,6362],[1827,6237],[1769,6220],[1790,6156],[1750,6133],[1811,6060],[1909,6041],[1975,6078],[2029,6073],[2064,6121],[2084,6233],[2053,6303],[2007,6335],[1987,6402],[1841,6372],[1803,6406],[1805,6453],[1899,6594],[1909,6718],[1939,6778],[2007,6817],[2044,6867],[2044,6941],[2014,7069],[2031,7144],[2033,7265],[2093,7311],[2100,7432],[2170,7500],[2184,7550],[2238,7577],[2317,7566],[2449,7591],[2523,7659],[2606,7614],[2638,7536],[2714,7563],[2680,7526],[2701,7413],[2750,7355],[2796,7340],[2877,7221],[2921,7193],[2924,7104],[2978,6983],[3066,6978],[3073,6884],[3041,6865],[3024,6785],[2975,6813],[2992,6648],[2953,6603],[2871,6379],[2835,6312],[2766,6242],[2644,6219],[2557,6224],[2492,6168],[2442,6166],[2401,6042],[2454,6018],[2474,6057],[2513,6034],[2502,5916],[2538,5855],[2608,5865],[2633,5903],[2683,5897],[2720,5798],[2786,5795],[2776,5698],[2722,5676],[2692,5607],[2551,5538],[2548,5470],[2644,5419],[2598,5374],[2588,5290],[2681,5233],[2702,5142],[2819,5094],[2876,4947],[2852,4854],[2899,4855],[2925,4661],[2719,4594]]]}},{"type":"Feature","id":"BY.MA","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.39,"hc-key":"by-ma","hc-a2":"MA","labelrank":"7","hasc":"BY.MA","alt-name":"???????|Mahiljow|Mogilev|Mahilyowskaya Voblasts\'","woe-id":"2344833","subregion":null,"fips":"BO04","postal-code":"MA","name":"Mogilev","country":"Belarus","type-en":"Region","region":null,"longitude":"30.4041","woe-name":"Mahilyow","latitude":"53.8241","woe-label":"Mahilyowskaya Voblasts\', BY, Belarus","type":"Voblasts\'"},"geometry":{"type":"Polygon","coordinates":[[[6080,6266],[6159,6361],[6209,6374],[6229,6422],[6340,6406],[6526,6441],[6533,6493],[6576,6481],[6608,6405],[6758,6372],[6743,6467],[6814,6564],[6897,6496],[6919,6538],[6990,6541],[7051,6574],[6997,6470],[7092,6444],[7182,6517],[7208,6469],[7279,6424],[7351,6467],[7390,6543],[7359,6598],[7485,6686],[7536,6665],[7665,6659],[7723,6723],[7859,6671],[7858,6722],[7931,6768],[7998,6773],[8031,6766],[8083,6635],[8125,6582],[8150,6442],[8183,6363],[8393,6215],[8479,6193],[8575,6147],[8667,6124],[8697,6055],[8743,6074],[8788,5955],[8762,5746],[8700,5576],[8845,5553],[9075,5630],[9169,5584],[9311,5556],[9409,5475],[9510,5468],[9537,5387],[9450,5329],[9472,5231],[9523,5167],[9642,5108],[9671,5064],[9753,5074],[9766,5014],[9814,5030],[9838,4989],[9832,4851],[9851,4793],[9698,4761],[9690,4712],[9561,4705],[9592,4659],[9521,4498],[9463,4471],[9375,4359],[9316,4356],[9308,4308],[9172,4264],[9087,4292],[8972,4269],[8911,4299],[8844,4298],[8807,4403],[8768,4445],[8626,4468],[8540,4434],[8404,4435],[8364,4399],[8352,4281],[8186,4244],[8113,4298],[8039,4300],[8061,4336],[8049,4418],[7964,4479],[7913,4602],[7818,4607],[7783,4551],[7659,4553],[7609,4573],[7579,4531],[7520,4535],[7469,4572],[7346,4599],[7261,4582],[7218,4543],[7228,4488],[7084,4431],[6999,4435],[6964,4520],[6775,4620],[6696,4579],[6571,4632],[6518,4527],[6567,4387],[6512,4355],[6542,4318],[6507,4245],[6528,4201],[6430,4207],[6398,4153],[6436,4060],[6407,4004],[6524,3928],[6475,3855],[6429,3877],[6308,3874],[6214,3809],[6150,3855],[6138,3802],[5969,3851],[5884,3834],[5789,3706],[5660,3683],[5653,3557],[5465,3481],[5516,3444],[5501,3400],[5320,3340],[5226,3322],[5098,3321],[5031,3382],[4893,3478],[5024,3616],[5070,3734],[5115,3807],[5072,3858],[5110,3946],[5158,3952],[5156,4090],[5127,4173],[5138,4209],[5027,4181],[4979,4291],[4928,4291],[4904,4249],[4799,4285],[4777,4323],[4680,4362],[4650,4458],[4724,4481],[4791,4418],[4951,4423],[5040,4468],[5026,4547],[4965,4571],[4957,4608],[4996,4672],[4993,4801],[5055,4886],[5119,4885],[5173,4916],[5157,4952],[5222,4991],[5210,5045],[5243,5082],[5302,5051],[5404,5035],[5451,5051],[5517,5034],[5506,4986],[5542,4921],[5610,4915],[5598,5019],[5709,5037],[5738,5075],[5726,5147],[5790,5203],[5888,5173],[5973,5224],[6022,5289],[6091,5276],[6131,5336],[6101,5373],[6182,5451],[6045,5494],[6087,5551],[6035,5624],[6038,5742],[6010,5809],[6023,5857],[6098,5943],[6079,6017],[6103,6042],[6098,6143],[6136,6183],[6080,6266]]]}},{"type":"Feature","id":"BY.MI","properties":{"hc-group":"admin1","hc-middle-x":0.37,"hc-middle-y":0.56,"hc-key":"by-mi","hc-a2":"MI","labelrank":"7","hasc":"BY.MI","alt-name":"?????|??????? ???????|Minsk Oblast|Minskaya Voblasts\'","woe-id":"2344834","subregion":null,"fips":"BO06","postal-code":"MI","name":"Minsk","country":"Belarus","type-en":"Municipality","region":null,"longitude":"27.4703","woe-name":"Minsk","latitude":"53.1945","woe-label":"Minskaya Voblasts\', BY, Belarus","type":"Gorod"},"geometry":{"type":"Polygon","coordinates":[[[6080,6266],[6136,6183],[6098,6143],[6103,6042],[6079,6017],[6098,5943],[6023,5857],[6010,5809],[6038,5742],[6035,5624],[6087,5551],[6045,5494],[6182,5451],[6101,5373],[6131,5336],[6091,5276],[6022,5289],[5973,5224],[5888,5173],[5790,5203],[5726,5147],[5738,5075],[5709,5037],[5598,5019],[5610,4915],[5542,4921],[5506,4986],[5517,5034],[5451,5051],[5404,5035],[5302,5051],[5243,5082],[5210,5045],[5222,4991],[5157,4952],[5173,4916],[5119,4885],[5055,4886],[4993,4801],[4996,4672],[4957,4608],[4965,4571],[5026,4547],[5040,4468],[4951,4423],[4791,4418],[4724,4481],[4650,4458],[4680,4362],[4777,4323],[4799,4285],[4904,4249],[4928,4291],[4979,4291],[5027,4181],[5138,4209],[5127,4173],[5156,4090],[5158,3952],[5110,3946],[5072,3858],[5115,3807],[5070,3734],[5024,3616],[4893,3478],[5031,3382],[5098,3321],[5028,3230],[5031,3009],[4959,2943],[4722,2913],[4651,2989],[4553,3009],[4515,2972],[4533,2896],[4487,2861],[4359,2848],[4231,2852],[4110,2932],[4109,3025],[4064,2983],[4032,3040],[3937,2970],[3874,2986],[3859,2936],[3804,2915],[3818,2841],[3732,2704],[3567,2808],[3600,2868],[3584,2914],[3467,3037],[3494,3074],[3465,3107],[3486,3164],[3621,3170],[3636,3239],[3599,3285],[3481,3306],[3444,3367],[3444,3426],[3407,3451],[3370,3416],[3192,3479],[3108,3600],[3024,3604],[3012,3656],[2940,3693],[2897,3678],[2886,3625],[2782,3586],[2746,3654],[2786,3700],[2708,3892],[2769,3990],[2872,4005],[2813,4119],[2721,4130],[2662,4229],[2600,4243],[2595,4279],[2668,4375],[2732,4383],[2736,4469],[2713,4509],[2719,4594],[2925,4661],[2899,4855],[2852,4854],[2876,4947],[2819,5094],[2702,5142],[2681,5233],[2588,5290],[2598,5374],[2644,5419],[2548,5470],[2551,5538],[2692,5607],[2722,5676],[2776,5698],[2786,5795],[2720,5798],[2683,5897],[2633,5903],[2608,5865],[2538,5855],[2502,5916],[2513,6034],[2474,6057],[2454,6018],[2401,6042],[2442,6166],[2492,6168],[2557,6224],[2644,6219],[2766,6242],[2835,6312],[2871,6379],[2953,6603],[2992,6648],[2975,6813],[3024,6785],[3041,6865],[3073,6884],[3066,6978],[2978,6983],[2924,7104],[2921,7193],[2877,7221],[2796,7340],[2750,7355],[2701,7413],[2680,7526],[2714,7563],[2739,7631],[2972,7578],[3003,7607],[3092,7602],[3116,7567],[3198,7601],[3309,7620],[3359,7573],[3484,7574],[3500,7643],[3535,7670],[3623,7647],[3682,7662],[3724,7624],[3692,7569],[3751,7489],[3763,7436],[3869,7425],[3984,7314],[3993,7245],[4098,7229],[4173,7172],[4157,7117],[4245,6991],[4339,6974],[4394,7001],[4412,6946],[4548,6986],[4605,6972],[4674,7009],[4758,7019],[4893,6863],[4977,6844],[5041,7018],[5139,7046],[5159,7000],[5210,7042],[5236,6993],[5238,6902],[5304,6880],[5351,6906],[5460,6862],[5476,6986],[5618,6964],[5681,6982],[5749,7044],[5765,7006],[5825,7028],[5852,6921],[5942,6908],[5991,6943],[6070,6927],[6098,6993],[6137,6915],[6086,6861],[6107,6807],[6074,6747],[6065,6589],[6020,6477],[6067,6422],[6024,6353],[6030,6256],[6080,6266]],[[4345,5823],[4315,5832],[4254,5784],[4183,5769],[4091,5801],[3977,5819],[3872,5781],[3847,5720],[3832,5588],[3846,5480],[3994,5429],[4039,5382],[4069,5420],[4186,5435],[4314,5432],[4344,5479],[4296,5554],[4286,5662],[4349,5757],[4345,5823]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/kz-all.geo.json
const kz_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Kazakhstan","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:54003"}},"hc-transform":{"default":{"crs":"+proj=mill +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +R_A +datum=WGS84 +units=m +no_defs","scale":0.000154127157066,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":5168269.55578,"yoffset":6863579.41101}},"features":[{"type":"Feature","id":"KZ.5085","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.62,"hc-key":"kz-5085","hc-a2":"NU","labelrank":"20","hasc":"-99","alt-name":null,"woe-id":"-99","subregion":null,"fips":null,"postal-code":null,"name":null,"country":"Kazakhstan","type-en":null,"region":null,"longitude":"50.5921","woe-name":null,"latitude":"44.8058","woe-label":null,"type":null},"geometry":{"type":"Polygon","coordinates":[[[732,6678],[719,6674],[735,6695],[739,6691],[732,6678]]]}},{"type":"Feature","id":"KZ.QO","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.51,"hc-key":"kz-qo","hc-a2":"QO","labelrank":"6","hasc":"KZ.QO","alt-name":"Kyzyl-Orda|Kzyl-Orda|Kzyl-Ordinskaya Oblast\'","woe-id":"2345990","subregion":null,"fips":"KZ14","postal-code":"QO","name":"Qyzylorda","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"63.6151","woe-name":"Qyzylorda","latitude":"44.6012","woe-label":"Qyzylorda, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2704,6546],[2707,6522],[2616,6552],[2655,6560],[2704,6546]]],[[[2335,6477],[2335,6477],[2335,6477],[2335,6477]]],[[[2336,6447],[2353,6487],[2434,6399],[2430,6364],[2449,6304],[2445,6265],[2342,6326],[2336,6447]]],[[[4190,5370],[4201,5391],[4213,5567],[4132,5531],[4058,5666],[3993,5705],[3909,5795],[3882,5800],[3769,5747],[3445,5773],[3131,5725],[3120,5729],[2901,5948],[2868,6018],[2608,6169],[2615,6339],[2598,6408],[2535,6408],[2524,6448],[2583,6522],[2703,6496],[2806,6591],[2912,6625],[2931,6699],[2840,6709],[2799,6745],[2808,6798],[2742,6811],[2798,6770],[2768,6744],[2719,6756],[2703,6714],[2680,6779],[2652,6780],[2592,6735],[2596,6696],[2628,6673],[2686,6690],[2744,6653],[2779,6685],[2811,6632],[2804,6598],[2761,6571],[2600,6592],[2543,6570],[2538,6645],[2465,6655],[2521,6574],[2493,6489],[2440,6446],[2388,6465],[2403,6554],[2347,6534],[2357,6570],[2505,6741],[2572,6801],[2638,6843],[2702,6856],[2736,6919],[2796,6915],[2863,7003],[2887,7059],[2945,7128],[3011,7142],[3086,7143],[3137,7073],[3209,7031],[3243,6965],[3348,6943],[3297,6898],[3376,6908],[3445,6869],[3549,6837],[3607,6831],[3924,6720],[3947,6718],[4012,6668],[4068,6645],[4447,6567],[4518,6568],[4525,6535],[4529,6503],[4568,6449],[4548,6419],[4530,6302],[4610,6243],[4613,5994],[4682,5963],[4709,5926],[4772,5884],[4772,5863],[4730,5844],[4729,5785],[4701,5798],[4674,5706],[4651,5687],[4682,5674],[4698,5622],[4568,5566],[4439,5490],[4382,5445],[4318,5435],[4235,5363],[4190,5370]]]]}},{"type":"Feature","id":"KZ.AC","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"kz-ac","hc-a2":"AC","labelrank":"6","hasc":"KZ.AC","alt-name":"Alma-Ata","woe-id":"20070179","subregion":null,"fips":"KZ02","postal-code":"AC","name":"Almaty City","country":"Kazakhstan","type-en":"City","region":null,"longitude":"76.94240000000001","woe-name":"Almaty","latitude":"43.2709","woe-label":"Almaty, KZ, Kazakhstan","type":null},"geometry":{"type":"Polygon","coordinates":[[[7109,5642],[7067,5635],[7058,5658],[7083,5688],[7117,5692],[7109,5642]]]}},{"type":"Feature","id":"KZ.AS","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.46,"hc-key":"kz-as","hc-a2":"AS","labelrank":"4","hasc":"KZ.AS","alt-name":null,"woe-id":"20070181","subregion":null,"fips":"KZ05","postal-code":"AS","name":"Astana","country":"Kazakhstan","type-en":"City","region":null,"longitude":"71.4538","woe-name":"Astana","latitude":"51.1503","woe-label":"Astana, KZ, Kazakhstan","type":null},"geometry":{"type":"Polygon","coordinates":[[[5655,8249],[5639,8243],[5581,8306],[5598,8353],[5628,8357],[5676,8308],[5655,8249]]]}},{"type":"Feature","id":"KZ.QS","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.43,"hc-key":"kz-qs","hc-a2":"QS","labelrank":"6","hasc":"KZ.QS","alt-name":"Kustanai|Kustanay","woe-id":"20070176","subregion":null,"fips":"KZ13","postal-code":"QS","name":"Qostanay","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"64.12909999999999","woe-name":"Qostanay","latitude":"51.2854","woe-label":"Qostanay, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[3030,8344],[2984,8401],[2864,8422],[2842,8467],[2729,8469],[2687,8488],[2720,8528],[2629,8565],[2603,8559],[2594,8602],[2647,8602],[2727,8658],[2771,8655],[2869,8723],[2844,8775],[2814,8787],[2806,8828],[2772,8841],[2874,8933],[2852,8951],[2909,8966],[2985,8966],[3019,8943],[3076,8954],[3103,8939],[3149,8959],[3137,9006],[3061,9022],[3029,9049],[2985,9039],[2912,9061],[2895,9096],[2916,9139],[2968,9119],[3006,9144],[2992,9174],[2942,9158],[2896,9165],[2860,9191],[2912,9258],[2852,9281],[2863,9305],[2914,9290],[2910,9330],[2969,9344],[3018,9305],[3076,9321],[3125,9299],[3125,9330],[3234,9333],[3228,9302],[3256,9279],[3270,9333],[3340,9358],[3412,9355],[3422,9387],[3478,9383],[3578,9415],[3617,9397],[3657,9407],[3650,9434],[3809,9464],[3847,9445],[3897,9470],[3944,9436],[3977,9449],[3978,9516],[4034,9525],[4040,9553],[4110,9542],[4169,9580],[4181,9547],[4212,9556],[4247,9432],[4216,9420],[4285,9361],[4192,9321],[4212,9255],[4248,9230],[4218,9171],[4229,9140],[4263,9134],[4273,9054],[4312,9011],[4230,8990],[4215,8965],[4235,8926],[4211,8864],[4201,8747],[4196,8668],[4175,8647],[4149,8567],[4109,8530],[4039,8517],[4035,8496],[4092,8447],[4078,8383],[4055,8343],[4062,8310],[4109,8242],[4112,8179],[4147,8182],[4202,8215],[4243,8171],[4270,8172],[4313,8134],[4408,8107],[4485,8118],[4514,8099],[4502,8053],[4541,8018],[4611,8047],[4680,8055],[4743,8079],[4790,8046],[4747,7995],[4653,7969],[4655,7913],[4592,7845],[4364,7672],[4229,7559],[4176,7553],[4116,7511],[4060,7501],[3940,7516],[3852,7504],[3821,7441],[3790,7440],[3801,7389],[3713,7355],[3711,7320],[3647,7269],[3565,7378],[3397,7453],[3398,7512],[3300,7517],[3243,7576],[3223,7616],[3253,7637],[3202,7711],[3209,7739],[3244,7737],[3234,7765],[3286,7853],[3314,7871],[3366,7867],[3360,7911],[3308,7980],[3266,8055],[3242,8138],[3205,8165],[3224,8199],[3187,8232],[3202,8265],[3165,8290],[3132,8274],[3090,8355],[3030,8344]]]}},{"type":"Feature","id":"KZ.NK","properties":{"hc-group":"admin1","hc-middle-x":0.25,"hc-middle-y":0.52,"hc-key":"kz-nk","hc-a2":"NK","labelrank":"4","hasc":"KZ.NK","alt-name":"Severo-Kazakhstan|Soltustik Qazaqstan","woe-id":"20070174","subregion":null,"fips":"KZ16","postal-code":"NK","name":"North Kazakhstan","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"69.0682","woe-name":"North Kazakhstan","latitude":"54.4528","woe-label":"Soltustik Qazaqstan, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[4201,8747],[4211,8864],[4235,8926],[4215,8965],[4230,8990],[4312,9011],[4273,9054],[4263,9134],[4229,9140],[4218,9171],[4248,9230],[4212,9255],[4192,9321],[4285,9361],[4216,9420],[4247,9432],[4212,9556],[4305,9584],[4509,9615],[4528,9636],[4618,9636],[4669,9672],[4762,9674],[4800,9717],[4768,9736],[4787,9762],[4879,9762],[4904,9824],[4963,9792],[4968,9851],[5016,9837],[5033,9811],[5072,9833],[5162,9814],[5226,9768],[5301,9739],[5348,9764],[5366,9795],[5467,9799],[5460,9776],[5509,9719],[5500,9649],[5516,9607],[5563,9590],[5582,9552],[5554,9540],[5565,9439],[5509,9442],[5526,9391],[5563,9360],[5600,9397],[5641,9363],[5703,9372],[5717,9414],[5769,9409],[5801,9377],[5808,9437],[5839,9445],[5860,9388],[5909,9373],[5877,9345],[5879,9300],[5901,9289],[5955,9339],[5916,9339],[5946,9373],[6035,9366],[6063,9316],[6142,9301],[6184,9307],[6202,9347],[6243,9344],[6231,9287],[6175,9278],[6107,9201],[6107,9168],[6166,9123],[6199,9067],[6166,9055],[6175,9008],[6220,9041],[6250,9031],[6190,8940],[6228,8945],[6217,8900],[6250,8894],[6269,8924],[6320,8909],[6287,8832],[6242,8861],[6249,8831],[6303,8806],[6221,8812],[6173,8842],[6036,8876],[6018,8960],[5995,8968],[5898,8959],[5844,8928],[5760,8930],[5709,8966],[5734,9032],[5676,9098],[5598,9066],[5541,9080],[5531,9110],[5428,9104],[5391,9048],[5330,9093],[5279,9092],[5292,9140],[5241,9137],[5230,9190],[5160,9208],[5090,9169],[5044,9203],[5016,9184],[4947,9187],[4957,9162],[4873,9106],[4936,9049],[4963,9002],[4934,8948],[4945,8889],[4871,8853],[4840,8810],[4774,8788],[4778,8749],[4725,8698],[4638,8737],[4576,8740],[4572,8688],[4491,8678],[4370,8693],[4357,8718],[4269,8710],[4249,8735],[4201,8747]]]}},{"type":"Feature","id":"KZ.PA","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.6,"hc-key":"kz-pa","hc-a2":"PA","labelrank":"6","hasc":"KZ.PA","alt-name":null,"woe-id":"2345993","subregion":null,"fips":"KZ11","postal-code":"PA","name":"Pavlodar","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"76.3751","woe-name":"Pavlodar","latitude":"52.2076","woe-label":"Pavlodar, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[6303,8806],[6249,8831],[6242,8861],[6287,8832],[6320,8909],[6269,8924],[6250,8894],[6217,8900],[6228,8945],[6190,8940],[6250,9031],[6220,9041],[6175,9008],[6166,9055],[6199,9067],[6166,9123],[6216,9165],[6295,9192],[6328,9168],[6368,9177],[6420,9134],[6432,9209],[6475,9207],[6517,9262],[6585,9253],[6693,9318],[6673,9345],[6747,9359],[6892,9415],[6905,9450],[6958,9439],[7013,9457],[7016,9478],[7069,9492],[7046,9456],[7065,9432],[7019,9372],[6942,9377],[6983,9309],[7271,9121],[7339,9060],[7501,8832],[7721,8493],[7636,8405],[7591,8405],[7576,8356],[7505,8324],[7482,8330],[7403,8283],[7446,8217],[7557,8147],[7565,8064],[7592,8025],[7552,7957],[7500,7912],[7417,7931],[7303,7973],[7287,7983],[7274,8063],[7103,8124],[7046,8073],[7030,7996],[6940,7996],[6922,7969],[6890,7981],[6751,7955],[6677,7955],[6588,7904],[6548,7934],[6620,7982],[6564,8052],[6526,8076],[6502,8058],[6487,8103],[6431,8125],[6333,8104],[6305,8127],[6337,8264],[6321,8314],[6236,8341],[6272,8396],[6384,8440],[6319,8475],[6268,8471],[6285,8543],[6326,8571],[6319,8771],[6303,8806]]]}},{"type":"Feature","id":"KZ.AM","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.48,"hc-key":"kz-am","hc-a2":"AM","labelrank":"4","hasc":"KZ.AM","alt-name":"Akmolin|Akmolinsk|Tselinograd","woe-id":"2345996","subregion":null,"fips":"KZ03","postal-code":"AM","name":"Aqmola","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"69.8519","woe-name":"Aqmola","latitude":"51.928","woe-label":"Aqmola, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[4743,8079],[4680,8055],[4611,8047],[4541,8018],[4502,8053],[4514,8099],[4485,8118],[4408,8107],[4313,8134],[4270,8172],[4243,8171],[4202,8215],[4147,8182],[4112,8179],[4109,8242],[4062,8310],[4055,8343],[4078,8383],[4092,8447],[4035,8496],[4039,8517],[4109,8530],[4149,8567],[4175,8647],[4196,8668],[4201,8747],[4249,8735],[4269,8710],[4357,8718],[4370,8693],[4491,8678],[4572,8688],[4576,8740],[4638,8737],[4725,8698],[4778,8749],[4774,8788],[4840,8810],[4871,8853],[4945,8889],[4934,8948],[4963,9002],[4936,9049],[4873,9106],[4957,9162],[4947,9187],[5016,9184],[5044,9203],[5090,9169],[5160,9208],[5230,9190],[5241,9137],[5292,9140],[5279,9092],[5330,9093],[5391,9048],[5428,9104],[5531,9110],[5541,9080],[5598,9066],[5676,9098],[5734,9032],[5709,8966],[5760,8930],[5844,8928],[5898,8959],[5995,8968],[6018,8960],[6036,8876],[6173,8842],[6221,8812],[6303,8806],[6319,8771],[6326,8571],[6285,8543],[6268,8471],[6319,8475],[6384,8440],[6272,8396],[6236,8341],[6186,8347],[6117,8330],[6142,8282],[6171,8301],[6208,8286],[6167,8253],[6105,8234],[6065,8197],[6020,8205],[5987,8158],[5925,8138],[5928,8099],[5858,8084],[5854,8047],[5783,8053],[5742,8041],[5765,8129],[5684,8168],[5626,8111],[5502,8047],[5486,7978],[5464,7996],[5428,7984],[5412,7928],[5326,7898],[5336,7954],[5315,7980],[5230,7965],[5183,7968],[5158,8012],[5116,8018],[5071,7959],[5025,7943],[4936,7968],[4980,8108],[4982,8146],[4924,8165],[4820,8117],[4726,8116],[4743,8079]],[[5655,8249],[5676,8308],[5628,8357],[5598,8353],[5581,8306],[5639,8243],[5655,8249]]]}},{"type":"Feature","id":"KZ.ZM","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.43,"hc-key":"kz-zm","hc-a2":"ZM","labelrank":"4","hasc":"KZ.ZM","alt-name":"Dzhambul","woe-id":"2345983","subregion":null,"fips":"KZ17","postal-code":"ZM","name":"Zhambyl","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"72.4888","woe-name":"Zhambyl","latitude":"44.3152","woe-label":"Zhambyl, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[6792,5550],[6749,5508],[6625,5522],[6541,5563],[6501,5570],[6460,5607],[6359,5655],[6364,5633],[6302,5640],[6286,5612],[6214,5590],[6177,5537],[6180,5504],[6155,5439],[6180,5385],[6133,5387],[6130,5408],[6077,5426],[6004,5428],[5973,5459],[5907,5469],[5858,5494],[5808,5490],[5740,5517],[5670,5493],[5622,5505],[5554,5467],[5548,5439],[5516,5430],[5485,5359],[5365,5466],[5320,5493],[5317,5565],[5277,5621],[5163,5655],[5124,5703],[5154,5742],[5218,5913],[5225,5949],[5197,6109],[5121,6347],[5062,6480],[5029,6528],[6361,6534],[6327,6475],[6320,6395],[6337,6308],[6271,6304],[6262,6276],[6285,6245],[6337,6239],[6353,6189],[6455,6106],[6474,6027],[6513,5995],[6572,5988],[6617,5965],[6664,5919],[6650,5853],[6582,5752],[6691,5721],[6656,5666],[6674,5621],[6750,5576],[6732,5564],[6792,5550]]]}},{"type":"Feature","id":"KZ.EK","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.42,"hc-key":"kz-ek","hc-a2":"EK","labelrank":"4","hasc":"KZ.EK","alt-name":"Shyghys Qazaqstan|Vostochno-Kazakhstan","woe-id":"20070175","subregion":null,"fips":"KZ15","postal-code":"EK","name":"East Kazakhstan","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"81.9768","woe-name":"East Kazakhstan","latitude":"48.3405","woe-label":"Shyghys Qazaqstan, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[7303,7973],[7417,7931],[7500,7912],[7552,7957],[7592,8025],[7565,8064],[7557,8147],[7446,8217],[7403,8283],[7482,8330],[7505,8324],[7576,8356],[7591,8405],[7636,8405],[7721,8493],[7765,8425],[7903,8177],[8022,8237],[8015,8311],[8065,8325],[8087,8358],[8210,8299],[8187,8233],[8278,8237],[8293,8157],[8374,8176],[8490,8150],[8563,8151],[8622,8185],[8640,8219],[8696,8210],[8731,8249],[8818,8249],[8920,8205],[8962,8142],[8995,8121],[9021,8074],[9034,7993],[9227,7929],[9222,7871],[9242,7863],[9304,7758],[9392,7771],[9481,7728],[9529,7737],[9546,7718],[9572,7759],[9603,7773],[9661,7832],[9698,7828],[9705,7797],[9657,7760],[9718,7733],[9720,7707],[9772,7644],[9823,7637],[9851,7588],[9796,7603],[9735,7595],[9693,7555],[9709,7504],[9697,7457],[9649,7397],[9588,7385],[9550,7360],[9442,7356],[9389,7266],[9371,7191],[9392,7091],[9388,7057],[9412,7010],[9409,6951],[9382,6941],[9366,6899],[9288,6893],[9211,6832],[9172,6821],[9144,6876],[9010,6879],[8943,6873],[8842,6904],[8742,6952],[8706,6947],[8699,6862],[8660,6792],[8616,6658],[8588,6614],[8567,6516],[8516,6401],[8470,6412],[8474,6446],[8414,6570],[8343,6652],[8332,6678],[8215,6728],[8113,6745],[7998,6793],[7976,6820],[7910,6841],[7770,6835],[7722,6892],[7588,6905],[7570,6927],[7447,6984],[7403,6953],[7386,6969],[7335,6942],[7263,6940],[7193,6936],[7179,6911],[7124,6924],[7076,6964],[7104,7014],[7151,7025],[7128,7092],[7152,7171],[7181,7225],[7217,7242],[7154,7268],[7174,7303],[7123,7313],[7089,7348],[7114,7383],[7142,7384],[7201,7426],[7205,7496],[7101,7492],[7078,7553],[7121,7577],[7010,7679],[7047,7727],[7154,7780],[7158,7860],[7228,7898],[7303,7973]]]}},{"type":"Feature","id":"KZ.AR","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.45,"hc-key":"kz-ar","hc-a2":"AR","labelrank":"6","hasc":"KZ.AR","alt-name":"Ateransk|Gur\'yev","woe-id":"2345986","subregion":null,"fips":"KZ06","postal-code":"AR","name":"Atyrau","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"51.7585","woe-name":"Atyrau","latitude":"47.7744","woe-label":"Atyrau, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[696,6472],[756,6555],[775,6639],[752,6730],[783,6787],[761,6794],[747,6848],[712,6867],[631,6865],[589,6882],[562,6846],[521,6843],[531,6817],[468,6845],[405,6853],[335,6902],[258,6922],[164,6895],[100,6860],[97,6837],[47,6842],[3,6795],[-19,6798],[-55,6760],[-112,6728],[-164,6742],[-163,6721],[-246,6735],[-225,6707],[-280,6686],[-269,6657],[-408,6731],[-452,6737],[-474,6768],[-447,6802],[-392,6776],[-328,6804],[-410,6915],[-456,7019],[-499,7047],[-549,7121],[-583,7140],[-688,7139],[-745,7162],[-765,7111],[-829,7157],[-819,7177],[-849,7213],[-810,7242],[-833,7252],[-831,7300],[-354,7239],[-215,7197],[-208,7223],[-87,7232],[129,7361],[188,7382],[243,7432],[300,7443],[422,7427],[417,7389],[504,7371],[514,7382],[607,7356],[633,7418],[672,7471],[670,7511],[710,7554],[819,7550],[912,7622],[974,7579],[993,7602],[1013,7560],[1018,7462],[1116,7442],[1152,7495],[1211,7470],[1224,7432],[1210,7363],[1231,7249],[1257,7222],[1284,7099],[1264,6933],[1342,6812],[1396,6768],[1602,6700],[1656,6577],[1565,6593],[1541,6617],[1485,6627],[1484,6659],[1444,6667],[1391,6708],[1330,6663],[1239,6659],[985,6611],[918,6539],[934,6523],[876,6491],[744,6462],[696,6472]]]}},{"type":"Feature","id":"KZ.MG","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.48,"hc-key":"kz-mg","hc-a2":"MG","labelrank":"4","hasc":"KZ.MG","alt-name":"Mangistau|Mangyshlak","woe-id":"2345991","subregion":null,"fips":"KZ09","postal-code":"MG","name":"Mangghystau","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"53.8538","woe-name":"Mangghystau","latitude":"44.0351","woe-label":"Mangghystau, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[696,6472],[744,6462],[876,6491],[934,6523],[918,6539],[985,6611],[1239,6659],[1330,6663],[1391,6708],[1444,6667],[1484,6659],[1485,6627],[1541,6617],[1565,6593],[1656,6577],[1674,6533],[1718,6272],[1524,6217],[1524,5036],[1433,5018],[1379,5026],[1325,5083],[1251,5186],[1240,5229],[1195,5266],[1051,5352],[1011,5361],[843,5333],[728,5291],[584,5171],[596,5232],[574,5280],[627,5361],[656,5437],[657,5484],[593,5515],[540,5506],[512,5534],[450,5517],[429,5536],[375,5632],[275,5620],[287,5713],[274,5750],[240,5775],[197,5867],[163,5906],[161,5955],[121,5979],[28,5994],[-3,6020],[-1,6084],[16,6106],[68,6097],[174,6095],[240,6051],[281,6073],[345,6059],[312,6092],[287,6087],[255,6134],[194,6169],[191,6212],[254,6241],[307,6328],[412,6352],[456,6341],[605,6353],[627,6393],[654,6352],[618,6351],[709,6322],[762,6318],[804,6334],[664,6392],[666,6429],[696,6472]]]}},{"type":"Feature","id":"KZ.AA","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.41,"hc-key":"kz-aa","hc-a2":"AA","labelrank":"6","hasc":"KZ.AA","alt-name":"Alma-Ata|Alma-Atinskaya Oblast\'|Almatinskaya Oblast\'","woe-id":"20070180","subregion":null,"fips":"KZ01","postal-code":"AA","name":"Almaty","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"78.2246","woe-name":"Almaty","latitude":"45.0707","woe-label":"Almaty, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[6792,5550],[6732,5564],[6750,5576],[6674,5621],[6656,5666],[6691,5721],[6582,5752],[6650,5853],[6664,5919],[6617,5965],[6572,5988],[6513,5995],[6474,6027],[6455,6106],[6353,6189],[6337,6239],[6285,6245],[6262,6276],[6271,6304],[6337,6308],[6320,6395],[6327,6475],[6361,6534],[6514,6681],[6684,6774],[6815,6778],[6951,6769],[6981,6752],[7035,6776],[7114,6764],[7151,6730],[7190,6754],[7268,6773],[7263,6940],[7335,6942],[7386,6969],[7403,6953],[7447,6984],[7570,6927],[7588,6905],[7722,6892],[7770,6835],[7910,6841],[7976,6820],[7998,6793],[8113,6745],[8215,6728],[8332,6678],[8343,6652],[8414,6570],[8474,6446],[8470,6412],[8516,6401],[8533,6377],[8600,6362],[8592,6277],[8563,6257],[8515,6294],[8424,6267],[8386,6281],[8368,6330],[8132,6261],[8091,6266],[8013,6238],[7922,6225],[7868,6188],[7903,6152],[7963,6160],[8032,6133],[8000,6106],[7994,6029],[8005,5981],[7997,5927],[8032,5864],[8095,5718],[8076,5675],[8101,5663],[8115,5612],[8058,5609],[8003,5580],[8053,5538],[7966,5503],[7943,5450],[7977,5327],[7961,5311],[7884,5386],[7753,5400],[7704,5452],[7679,5503],[7648,5492],[7557,5508],[7506,5530],[7382,5524],[7350,5535],[7216,5545],[7160,5542],[7097,5567],[7026,5542],[6958,5535],[6860,5549],[6792,5550]],[[7109,5642],[7117,5692],[7083,5688],[7058,5658],[7067,5635],[7109,5642]]]}},{"type":"Feature","id":"KZ.AT","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.47,"hc-key":"kz-at","hc-a2":"AT","labelrank":"6","hasc":"KZ.AT","alt-name":"Aktyubinsk","woe-id":"2345980","subregion":null,"fips":"KZ04","postal-code":"AT","name":"Aqtöbe","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"58.9373","woe-name":"Aqtöbe","latitude":"48.0288","woe-label":"Aqtobe, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2335,6477],[2335,6477],[2332,6460],[2336,6447],[2342,6326],[2259,6374],[2315,6427],[2335,6477]]],[[[1144,8087],[1178,8112],[1168,8211],[1132,8226],[1168,8261],[1236,8221],[1277,8211],[1287,8180],[1346,8134],[1395,8128],[1440,8087],[1551,8155],[1577,8219],[1619,8215],[1665,8275],[1713,8241],[1715,8274],[1760,8270],[1840,8284],[1889,8211],[1979,8215],[2000,8293],[2099,8271],[2143,8304],[2167,8274],[2219,8260],[2213,8204],[2307,8139],[2443,8122],[2466,8068],[2533,8088],[2598,8200],[2629,8197],[2672,8141],[2784,8130],[2957,8175],[2976,8208],[2995,8307],[3030,8344],[3090,8355],[3132,8274],[3165,8290],[3202,8265],[3187,8232],[3224,8199],[3205,8165],[3242,8138],[3266,8055],[3308,7980],[3360,7911],[3366,7867],[3314,7871],[3286,7853],[3234,7765],[3244,7737],[3209,7739],[3202,7711],[3253,7637],[3223,7616],[3243,7576],[3300,7517],[3398,7512],[3397,7453],[3565,7378],[3647,7269],[3709,7177],[3683,7152],[3348,6943],[3243,6965],[3209,7031],[3137,7073],[3086,7143],[3011,7142],[2945,7128],[2887,7059],[2863,7003],[2796,6915],[2736,6919],[2702,6856],[2638,6843],[2572,6801],[2505,6741],[2357,6570],[2347,6534],[2318,6543],[2259,6510],[2229,6417],[2203,6403],[1923,6330],[1718,6272],[1674,6533],[1656,6577],[1602,6700],[1396,6768],[1342,6812],[1264,6933],[1284,7099],[1257,7222],[1231,7249],[1210,7363],[1224,7432],[1211,7470],[1152,7495],[1116,7442],[1018,7462],[1013,7560],[993,7602],[974,7579],[912,7622],[936,7720],[1000,7771],[1046,7769],[1119,7839],[1145,7914],[1111,7955],[1103,8027],[1144,8087]]]]}},{"type":"Feature","id":"KZ.WK","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.48,"hc-key":"kz-wk","hc-a2":"WK","labelrank":"4","hasc":"KZ.WK","alt-name":"Ural\'sk","woe-id":"2345998","subregion":null,"fips":"KZ07","postal-code":"WK","name":"West Kazakhstan","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"50.5145","woe-name":"West Kazakhstan","latitude":"49.8909","woe-label":"Batys Qazaqstan, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[912,7622],[819,7550],[710,7554],[670,7511],[672,7471],[633,7418],[607,7356],[514,7382],[504,7371],[417,7389],[422,7427],[300,7443],[243,7432],[188,7382],[129,7361],[-87,7232],[-208,7223],[-215,7197],[-354,7239],[-831,7300],[-840,7312],[-999,7357],[-926,7529],[-855,7592],[-853,7628],[-920,7673],[-887,7841],[-872,7863],[-814,7885],[-779,7918],[-782,7998],[-713,8060],[-695,8056],[-597,7966],[-531,7856],[-484,7838],[-387,7880],[-360,7910],[-409,8019],[-416,8104],[-433,8128],[-374,8110],[-291,8175],[-221,8198],[-237,8239],[-217,8287],[-122,8287],[-67,8332],[29,8365],[32,8397],[74,8413],[91,8475],[146,8462],[140,8519],[182,8491],[264,8493],[301,8473],[266,8443],[283,8417],[351,8439],[374,8410],[410,8425],[405,8460],[433,8488],[492,8483],[556,8520],[602,8420],[648,8413],[675,8430],[718,8411],[743,8424],[825,8428],[897,8382],[912,8329],[982,8317],[1028,8285],[1046,8240],[1126,8200],[1100,8118],[1144,8087],[1103,8027],[1111,7955],[1145,7914],[1119,7839],[1046,7769],[1000,7771],[936,7720],[912,7622]]]}},{"type":"Feature","id":"KZ.SK","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.7,"hc-key":"kz-sk","hc-a2":"SK","labelrank":"4","hasc":"KZ.SK","alt-name":"Chimkent","woe-id":"2345982","subregion":null,"fips":"KZ10","postal-code":"SK","name":"South Kazakhstan","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"68.7533","woe-name":"South Kazakhstan","latitude":"42.7187","woe-label":"Ongtustik Qazaqstan, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[5029,6528],[5062,6480],[5121,6347],[5197,6109],[5225,5949],[5218,5913],[5154,5742],[5124,5703],[5163,5655],[5277,5621],[5317,5565],[5320,5493],[5365,5466],[5485,5359],[5501,5330],[5444,5314],[5411,5259],[5370,5281],[5333,5262],[5285,5202],[5226,5160],[5149,5145],[5088,5106],[5087,5082],[5041,5079],[4992,5050],[4994,5004],[4916,4954],[4869,4907],[4875,4808],[4840,4803],[4715,4875],[4739,4894],[4749,4955],[4727,4948],[4701,4997],[4403,4979],[4369,4997],[4330,5168],[4320,5249],[4191,5250],[4190,5370],[4235,5363],[4318,5435],[4382,5445],[4439,5490],[4568,5566],[4698,5622],[4682,5674],[4651,5687],[4674,5706],[4701,5798],[4729,5785],[4730,5844],[4772,5863],[4772,5884],[4709,5926],[4682,5963],[4613,5994],[4610,6243],[4530,6302],[4548,6419],[4568,6449],[4529,6503],[4525,6535],[5029,6528]]]}},{"type":"Feature","id":"KZ.QG","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.58,"hc-key":"kz-qg","hc-a2":"QG","labelrank":"4","hasc":"KZ.QG","alt-name":"Karaganda|Karagandinskaya Oblast\'","woe-id":"20070178","subregion":null,"fips":"KZ12","postal-code":"QG","name":"Qaraghandy","country":"Kazakhstan","type-en":"Region","region":null,"longitude":"70.1925","woe-name":"Qaraghandy","latitude":"48.0823","woe-label":"Qaraghandy, KZ, Kazakhstan","type":"Oblasy"},"geometry":{"type":"Polygon","coordinates":[[[5029,6528],[4525,6535],[4518,6568],[4447,6567],[4068,6645],[4012,6668],[3947,6718],[3924,6720],[3607,6831],[3549,6837],[3445,6869],[3376,6908],[3297,6898],[3348,6943],[3683,7152],[3709,7177],[3647,7269],[3711,7320],[3713,7355],[3801,7389],[3790,7440],[3821,7441],[3852,7504],[3940,7516],[4060,7501],[4116,7511],[4176,7553],[4229,7559],[4364,7672],[4592,7845],[4655,7913],[4653,7969],[4747,7995],[4790,8046],[4743,8079],[4726,8116],[4820,8117],[4924,8165],[4982,8146],[4980,8108],[4936,7968],[5025,7943],[5071,7959],[5116,8018],[5158,8012],[5183,7968],[5230,7965],[5315,7980],[5336,7954],[5326,7898],[5412,7928],[5428,7984],[5464,7996],[5486,7978],[5502,8047],[5626,8111],[5684,8168],[5765,8129],[5742,8041],[5783,8053],[5854,8047],[5858,8084],[5928,8099],[5925,8138],[5987,8158],[6020,8205],[6065,8197],[6105,8234],[6167,8253],[6208,8286],[6171,8301],[6142,8282],[6117,8330],[6186,8347],[6236,8341],[6321,8314],[6337,8264],[6305,8127],[6333,8104],[6431,8125],[6487,8103],[6502,8058],[6526,8076],[6564,8052],[6620,7982],[6548,7934],[6588,7904],[6677,7955],[6751,7955],[6890,7981],[6922,7969],[6940,7996],[7030,7996],[7046,8073],[7103,8124],[7274,8063],[7287,7983],[7303,7973],[7228,7898],[7158,7860],[7154,7780],[7047,7727],[7010,7679],[7121,7577],[7078,7553],[7101,7492],[7205,7496],[7201,7426],[7142,7384],[7114,7383],[7089,7348],[7123,7313],[7174,7303],[7154,7268],[7217,7242],[7181,7225],[7152,7171],[7128,7092],[7151,7025],[7104,7014],[7076,6964],[7124,6924],[7179,6911],[7193,6936],[7263,6940],[7268,6773],[7190,6754],[7151,6730],[7114,6764],[7035,6776],[6981,6752],[6951,6769],[6815,6778],[6684,6774],[6514,6681],[6361,6534],[5029,6528]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/gb-all.geo.json
const gb_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"United Kingdom countries","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32630"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=30 +datum=WGS84 +units=m +no_defs","scale":0.000578035606384,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":164769.517785,"yoffset":6747386.21622}},"features":[{"type":"Feature","id":"GB.ENG","properties":{"hc-group":"admin0","hc-middle-x":0.62,"hc-middle-y":0.57,"hc-key":"gb-eng","hc-a2":"EN","country":"United Kingdom","name":"England"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3306,-175],[3254,-177],[3284,-135],[3300,-146],[3306,-175]]],[[[4459,453],[4371,448],[4331,487],[4349,524],[4428,501],[4459,453]]],[[[2212,633],[2214,691],[2200,741],[2218,823],[2172,853],[2082,943],[2034,923],[2015,937],[1955,1031],[1929,1089],[1930,1145],[1958,1166],[1939,1186],[1971,1243],[2030,1283],[2005,1309],[2031,1354],[1961,1359],[1883,1425],[1889,1481],[1939,1506],[1986,1509],[2019,1550],[2001,1579],[1937,1539],[1934,1598],[1983,1661],[1999,1722],[2028,1745],[2005,1767],[1920,1807],[1913,1841],[1927,1891],[1956,1928],[2002,1960],[2045,1945],[2096,1948],[2137,1911],[2172,1929],[2169,1977],[2121,1996],[2094,2028],[2066,2112],[2034,2148],[2056,2193],[1993,2256],[1954,2268],[1954,2285],[1894,2387],[1911,2418],[1970,2444],[1997,2426],[2033,2333],[2058,2306],[2094,2299],[2155,2319],[2072,2343],[2016,2402],[1947,2553],[1945,2581],[1992,2661],[2064,2743],[2013,2744],[1975,2777],[1978,2886],[1971,2914],[1994,2939],[2048,2960],[2070,2953],[2104,3023],[2066,3009],[2053,3041],[2124,3132],[2090,3201],[2051,3169],[2014,3160],[1990,3228],[1969,3169],[1919,3107],[1919,3071],[1863,3119],[1879,3187],[1883,3269],[1869,3209],[1825,3199],[1767,3285],[1769,3325],[1729,3400],[1637,3520],[1663,3571],[1679,3649],[1716,3732],[1734,3741],[1782,3888],[1806,3907],[1858,3904],[1822,3925],[1882,3959],[1934,3937],[1992,3959],[1952,3965],[1976,3986],[1987,4050],[2031,4045],[2106,4139],[2149,4160],[2215,4227],[2218,4266],[2310,4365],[2368,4367],[2387,4403],[2452,4439],[2467,4468],[2412,4593],[2384,4629],[2431,4654],[2476,4728],[2515,4762],[2522,4796],[2553,4811],[2636,4702],[2672,4641],[2699,4650],[2707,4617],[2739,4622],[2778,4595],[2806,4494],[2805,4388],[2824,4340],[2818,4298],[2847,4242],[2848,4180],[2874,4099],[2914,4015],[2939,3991],[2949,3920],[2986,3797],[3065,3672],[3042,3651],[3101,3645],[3166,3620],[3286,3586],[3419,3507],[3446,3451],[3481,3421],[3523,3303],[3544,3278],[3595,3255],[3623,3199],[3695,3173],[3717,3154],[3667,3124],[3636,3062],[3681,2940],[3860,2692],[3871,2659],[3815,2688],[3755,2670],[3704,2689],[3645,2760],[3597,2778],[3523,2750],[3457,2743],[3401,2763],[3349,2730],[3370,2717],[3394,2742],[3426,2740],[3466,2711],[3491,2729],[3597,2752],[3613,2746],[3670,2662],[3727,2621],[3757,2615],[3845,2537],[3878,2526],[3894,2489],[3938,2444],[4003,2283],[4016,2203],[4002,2143],[3974,2130],[3904,2061],[3819,1935],[3868,1943],[3917,1915],[3966,1851],[4013,1861],[4046,1850],[4079,1901],[4103,1995],[4152,2033],[4312,2047],[4393,2024],[4390,2051],[4578,2016],[4654,1983],[4811,1878],[4845,1835],[4883,1732],[4889,1640],[4906,1594],[4864,1430],[4835,1374],[4839,1303],[4817,1184],[4751,1154],[4725,1098],[4672,1034],[4627,1085],[4577,1113],[4633,1048],[4568,1054],[4526,1031],[4629,1030],[4640,1019],[4594,967],[4643,937],[4560,869],[4499,866],[4460,906],[4406,861],[4400,826],[4335,814],[4293,793],[4325,783],[4389,797],[4435,824],[4452,760],[4455,698],[4410,639],[4348,604],[4298,610],[4153,572],[4138,533],[4203,560],[4303,551],[4322,521],[4271,516],[4219,482],[4240,462],[4319,459],[4326,494],[4352,441],[4486,433],[4561,461],[4762,491],[4777,483],[4740,403],[4765,321],[4762,283],[4736,229],[4623,169],[4582,165],[4534,128],[4499,67],[4511,3],[4489,-7],[4398,18],[4373,9],[4290,-67],[4128,-115],[4072,-189],[3977,-179],[3788,-119],[3727,-119],[3647,-151],[3539,-155],[3437,-193],[3387,-226],[3329,-191],[3353,-160],[3317,-127],[3253,-122],[3232,-183],[3202,-171],[3222,-123],[3162,-124],[3185,-142],[3172,-186],[3052,-98],[2996,-72],[3063,-144],[3067,-170],[3003,-183],[3012,-196],[2937,-211],[2915,-254],[2845,-234],[2781,-255],[2741,-248],[2675,-286],[2669,-264],[2606,-243],[2636,-296],[2667,-300],[2681,-332],[2649,-380],[2587,-380],[2539,-358],[2362,-342],[2343,-395],[2367,-422],[2348,-452],[2332,-390],[2199,-288],[2090,-248],[2006,-273],[1967,-268],[1931,-293],[1899,-289],[1840,-307],[1817,-343],[1746,-359],[1714,-303],[1730,-370],[1690,-432],[1695,-520],[1651,-547],[1694,-568],[1661,-635],[1601,-666],[1592,-752],[1500,-765],[1399,-657],[1345,-681],[1298,-638],[1300,-604],[1262,-598],[1246,-557],[1267,-515],[1219,-536],[1222,-577],[1194,-592],[1252,-618],[1230,-651],[1206,-617],[1123,-605],[1051,-642],[946,-646],[929,-625],[887,-637],[854,-736],[823,-731],[759,-764],[723,-818],[712,-770],[692,-766],[663,-855],[686,-900],[658,-946],[627,-949],[596,-999],[560,-957],[559,-929],[515,-867],[420,-823],[377,-838],[380,-869],[351,-896],[270,-895],[270,-815],[287,-787],[400,-733],[445,-760],[479,-715],[526,-703],[601,-629],[636,-605],[633,-561],[700,-534],[718,-439],[769,-402],[776,-445],[826,-439],[785,-410],[787,-376],[868,-372],[893,-309],[956,-259],[1026,-162],[1025,-74],[1047,0],[1045,42],[1101,41],[1163,22],[1186,32],[1246,100],[1218,175],[1239,173],[1235,216],[1283,234],[1479,253],[1524,267],[1604,245],[1655,246],[1733,227],[1763,204],[1835,206],[1903,223],[1969,225],[1991,209],[2005,250],[1998,327],[2030,390],[2119,489],[2181,515],[2279,675],[2336,742],[2325,759],[2212,633]]],[[[3073,-380],[2956,-299],[2910,-315],[2950,-264],[3004,-237],[3016,-249],[3051,-209],[3081,-196],[3178,-233],[3200,-234],[3231,-273],[3167,-326],[3166,-363],[3096,-386],[3073,-380]]]]}},{"type":"Feature","id":"GB.WLS","properties":{"hc-group":"admin0","hc-middle-x":0.63,"hc-middle-y":0.55,"hc-key":"gb-wls","hc-a2":"WA","country":"United Kingdom","name":"Wales"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1016,2341],[1034,2341],[1073,2272],[1059,2262],[1035,2296],[1003,2306],[993,2331],[1016,2341]]],[[[2172,853],[2218,823],[2205,802],[2200,741],[2214,691],[2201,674],[2212,633],[2183,602],[2092,562],[2040,558],[2020,578],[1995,547],[1939,513],[1897,469],[1889,414],[1824,401],[1668,416],[1592,494],[1546,509],[1519,595],[1474,642],[1408,635],[1384,610],[1399,582],[1308,587],[1251,561],[1203,578],[1204,639],[1239,666],[1247,645],[1328,660],[1341,682],[1294,688],[1261,707],[1203,694],[1173,713],[1151,750],[1188,747],[1143,787],[1108,790],[1101,760],[1031,766],[966,744],[943,678],[859,676],[800,628],[736,660],[733,690],[696,719],[743,711],[863,749],[846,767],[853,812],[817,810],[834,769],[822,748],[760,738],[674,752],[669,732],[625,766],[702,821],[698,877],[685,898],[625,906],[591,900],[594,953],[700,992],[720,1008],[725,1053],[766,1056],[798,1038],[824,1058],[878,1047],[875,1077],[913,1092],[958,1139],[1000,1163],[1076,1159],[1165,1230],[1199,1237],[1273,1298],[1309,1348],[1336,1405],[1362,1505],[1359,1538],[1387,1538],[1429,1565],[1365,1559],[1322,1621],[1334,1670],[1365,1717],[1407,1750],[1370,1737],[1325,1795],[1311,1829],[1330,1847],[1323,1905],[1342,1930],[1264,1936],[1198,1910],[1157,1912],[1111,1871],[1088,1810],[1049,1836],[1009,1822],[939,1814],[957,1854],[1043,1950],[1087,1965],[1188,2046],[1200,2130],[1212,2119],[1248,2171],[1316,2243],[1366,2243],[1422,2275],[1508,2301],[1480,2350],[1546,2331],[1577,2298],[1669,2305],[1783,2361],[1808,2361],[1855,2322],[1931,2272],[1954,2268],[1993,2256],[2056,2193],[2034,2148],[2066,2112],[2094,2028],[2121,1996],[2169,1977],[2172,1929],[2137,1911],[2096,1948],[2045,1945],[2002,1960],[1956,1928],[1927,1891],[1913,1841],[1920,1807],[2005,1767],[2028,1745],[1999,1722],[1983,1661],[1960,1618],[1934,1598],[1937,1539],[2001,1579],[2019,1550],[1986,1509],[1939,1506],[1889,1481],[1874,1451],[1883,1425],[1961,1359],[2031,1354],[2005,1309],[2030,1283],[1971,1243],[1939,1186],[1958,1166],[1930,1145],[1942,1127],[1929,1089],[1951,1065],[1955,1031],[2015,937],[2034,923],[2082,943],[2143,889],[2172,853]]],[[[1175,2200],[1137,2181],[1109,2202],[1107,2230],[1066,2295],[1075,2383],[1069,2412],[1156,2444],[1216,2436],[1244,2417],[1249,2385],[1286,2314],[1331,2329],[1382,2317],[1348,2265],[1289,2236],[1273,2198],[1199,2150],[1158,2150],[1175,2200]]]]}},{"type":"Feature","id":"GB.SCT","properties":{"hc-group":"admin0","hc-middle-x":0.47,"hc-middle-y":0.67,"hc-key":"gb-sct","hc-a2":"SC","country":"United Kingdom","name":"Scotland"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2064,7814],[2043,7773],[2051,7743],[2036,7725],[1986,7820],[2029,7834],[2064,7814]]],[[[2202,8146],[2254,8088],[2211,8067],[2176,8149],[2202,8146]]],[[[1990,8175],[2029,8176],[2017,8127],[1971,8127],[1946,8151],[1952,8183],[1990,8175]]],[[[2123,8238],[2144,8217],[2127,8186],[2141,8142],[2117,8135],[2091,8190],[2114,8190],[2123,8238]]],[[[2032,8342],[2011,8312],[2058,8296],[2070,8251],[2017,8286],[2010,8260],[1965,8327],[2032,8342]]],[[[226,6058],[231,6015],[204,5986],[174,5991],[166,6015],[124,6050],[177,6099],[198,6101],[237,6067],[226,6058]]],[[[94,6098],[45,6102],[83,6121],[109,6105],[94,6098]]],[[[425,6323],[407,6317],[378,6351],[410,6354],[425,6323]]],[[[403,6530],[381,6452],[393,6380],[357,6361],[347,6407],[359,6487],[383,6496],[374,6524],[403,6530]]],[[[874,4748],[816,4804],[804,4862],[785,4876],[773,4932],[791,4941],[838,4899],[874,4793],[874,4748]]],[[[259,5153],[233,5085],[191,5075],[202,5125],[232,5161],[259,5153]]],[[[488,5193],[482,5208],[510,5232],[518,5208],[488,5193]]],[[[555,5291],[538,5218],[523,5252],[536,5285],[555,5291]]],[[[573,5353],[550,5304],[537,5327],[553,5352],[573,5353]]],[[[261,5509],[218,5512],[204,5526],[232,5545],[261,5509]]],[[[-139,5505],[-184,5523],[-195,5567],[-112,5594],[-56,5604],[-59,5574],[-130,5540],[-139,5505]]],[[[44,5649],[14,5627],[-32,5640],[-2,5656],[32,5703],[81,5734],[110,5735],[87,5688],[44,5649]]],[[[2710,8547],[2716,8532],[2691,8513],[2692,8545],[2710,8547]]],[[[2841,9095],[2839,9052],[2826,9052],[2828,9110],[2841,9095]]],[[[2478,9123],[2471,9112],[2446,9132],[2475,9150],[2478,9123]]],[[[2961,9187],[2974,9175],[2964,9113],[2939,9127],[2931,9183],[2961,9187]]],[[[3005,9346],[2977,9345],[2990,9374],[3036,9389],[3005,9346]]],[[[3079,9616],[3104,9616],[3092,9584],[3050,9595],[3044,9577],[3015,9634],[3072,9636],[3079,9616]]],[[[-380,6062],[-435,6020],[-478,6034],[-454,6061],[-456,6090],[-418,6109],[-380,6062]]],[[[-300,6555],[-253,6530],[-287,6518],[-258,6486],[-305,6475],[-365,6520],[-341,6562],[-300,6555]]],[[[-117,6974],[-124,6949],[-143,6962],[-126,6981],[-117,6974]]],[[[-25,7307],[9,7261],[-26,7270],[-39,7302],[-25,7307]]],[[[1782,7869],[1790,7903],[1824,7923],[1877,7890],[1915,7814],[1876,7786],[1936,7800],[1924,7781],[1849,7773],[1835,7813],[1782,7869]]],[[[2074,7968],[2113,7986],[2117,7968],[2088,7944],[2120,7922],[2110,7950],[2145,7965],[2156,7926],[2087,7876],[2048,7893],[2014,7954],[1992,7934],[1961,7937],[1944,7909],[1900,7910],[1883,7966],[1898,7999],[1887,8032],[1867,8001],[1872,7972],[1855,7944],[1838,7951],[1816,8010],[1828,8047],[1825,8092],[1838,8121],[1886,8142],[1924,8135],[1961,8121],[1968,8094],[2007,8067],[1937,7999],[1974,7985],[1998,8011],[2018,7992],[2039,8005],[2074,7968]]],[[[2221,8265],[2287,8287],[2305,8313],[2313,8289],[2281,8273],[2253,8224],[2243,8245],[2207,8238],[2178,8200],[2164,8211],[2211,8258],[2203,8286],[2248,8293],[2221,8265]]],[[[302,6343],[361,6343],[342,6313],[380,6320],[425,6299],[436,6274],[525,6305],[574,6290],[548,6216],[497,6195],[486,6153],[462,6138],[418,6082],[370,6063],[357,6080],[375,6134],[410,6187],[464,6212],[387,6208],[368,6230],[338,6167],[323,6171],[319,6225],[292,6239],[284,6219],[207,6203],[231,6236],[193,6231],[176,6266],[196,6285],[162,6287],[126,6357],[162,6378],[203,6343],[211,6353],[169,6395],[138,6392],[134,6446],[107,6427],[105,6462],[80,6424],[74,6387],[25,6407],[4,6429],[-3,6469],[-29,6510],[4,6508],[-8,6541],[16,6562],[44,6509],[65,6493],[55,6543],[91,6551],[74,6586],[45,6602],[56,6656],[91,6630],[94,6606],[145,6557],[187,6560],[225,6503],[220,6538],[188,6595],[205,6634],[184,6642],[178,6689],[237,6743],[316,6626],[319,6497],[304,6444],[326,6434],[313,6410],[333,6368],[302,6343]]],[[[1976,3986],[1927,3972],[1744,3987],[1703,3982],[1677,4001],[1670,3974],[1677,3905],[1661,3884],[1592,3887],[1579,3867],[1519,3874],[1530,3832],[1449,3780],[1403,3779],[1400,3832],[1377,3819],[1380,3786],[1328,3803],[1309,3837],[1314,3877],[1273,3851],[1231,3872],[1199,3920],[1184,3882],[1197,3837],[1228,3819],[1226,3714],[1212,3695],[1135,3719],[1084,3790],[980,3851],[970,3879],[936,3885],[880,3830],[910,3724],[926,3709],[929,3652],[881,3673],[877,3749],[858,3756],[833,3804],[780,3872],[755,3938],[761,4032],[793,4054],[821,3997],[821,3953],[848,3931],[863,3955],[832,4036],[831,4070],[858,4161],[893,4187],[932,4236],[956,4292],[963,4348],[998,4385],[1012,4429],[1069,4462],[1089,4509],[1071,4551],[1051,4558],[1061,4598],[1033,4633],[979,4653],[984,4669],[923,4726],[958,4773],[944,4909],[957,4953],[1006,4971],[1041,4953],[1161,4930],[1175,4939],[1092,4958],[1041,5012],[1005,5024],[1007,4998],[964,5017],[964,5082],[987,5138],[1028,5201],[1015,5205],[973,5127],[957,5135],[951,5189],[936,5183],[953,5096],[939,5002],[912,5013],[934,4978],[893,4888],[869,4892],[846,4977],[809,5022],[841,4930],[825,4924],[789,4956],[785,4990],[748,4915],[769,4853],[716,4876],[696,4920],[698,5020],[777,5140],[839,5176],[869,5234],[928,5267],[858,5247],[832,5193],[764,5150],[689,5043],[669,5030],[638,5048],[631,4981],[645,4973],[655,4891],[685,4856],[702,4807],[635,4747],[600,4672],[618,4619],[562,4478],[539,4457],[577,4402],[551,4362],[503,4335],[438,4331],[422,4348],[421,4433],[466,4481],[467,4597],[497,4672],[494,4706],[526,4731],[553,4786],[598,4817],[627,4872],[571,4812],[536,4793],[518,4818],[505,4876],[533,4935],[502,4917],[495,4947],[560,5040],[538,5053],[490,4974],[497,5013],[572,5127],[593,5113],[580,5158],[609,5214],[554,5168],[590,5267],[610,5297],[563,5286],[579,5355],[617,5426],[647,5465],[722,5477],[766,5462],[800,5479],[707,5495],[683,5488],[675,5527],[642,5500],[667,5561],[711,5635],[742,5667],[732,5682],[787,5708],[823,5699],[910,5731],[819,5714],[777,5736],[787,5760],[845,5835],[781,5780],[760,5733],[721,5714],[667,5666],[572,5556],[533,5527],[478,5568],[433,5583],[353,5654],[352,5678],[393,5689],[448,5665],[431,5694],[491,5730],[558,5716],[497,5744],[414,5708],[383,5723],[291,5734],[269,5717],[237,5736],[232,5770],[262,5794],[347,5799],[391,5816],[442,5779],[440,5800],[471,5822],[446,5849],[454,5868],[511,5873],[484,5890],[512,5923],[435,5919],[463,6027],[520,6052],[541,6017],[585,6014],[543,6037],[547,6063],[488,6089],[531,6147],[570,6155],[616,6125],[702,6127],[692,6142],[626,6130],[603,6158],[558,6174],[556,6201],[584,6241],[588,6277],[630,6294],[681,6245],[653,6300],[688,6340],[601,6304],[535,6311],[547,6359],[574,6379],[596,6367],[657,6393],[682,6415],[678,6445],[623,6387],[582,6399],[593,6441],[546,6386],[491,6384],[484,6423],[493,6471],[468,6482],[464,6531],[484,6608],[512,6603],[588,6536],[581,6556],[655,6557],[641,6578],[593,6582],[578,6569],[527,6661],[504,6670],[514,6723],[577,6734],[553,6759],[509,6771],[512,6871],[557,6899],[583,6885],[588,6816],[628,6807],[629,6854],[596,6901],[618,6952],[651,6937],[661,6889],[699,6874],[716,6927],[823,6862],[772,6916],[739,6932],[750,6961],[785,6925],[807,6931],[878,6882],[890,6884],[826,6944],[836,6975],[790,6997],[742,7051],[712,7103],[742,7110],[754,7084],[789,7086],[801,7121],[793,7151],[822,7163],[776,7199],[746,7262],[756,7281],[789,7259],[828,7272],[862,7265],[885,7284],[917,7263],[992,7274],[948,7282],[927,7271],[903,7289],[865,7367],[883,7427],[927,7399],[948,7399],[903,7448],[933,7465],[905,7499],[907,7526],[947,7555],[970,7638],[1037,7621],[1058,7600],[1070,7549],[1080,7614],[1139,7561],[1084,7455],[1163,7529],[1179,7578],[1236,7568],[1261,7549],[1223,7453],[1256,7499],[1318,7547],[1349,7529],[1400,7562],[1441,7561],[1469,7591],[1481,7569],[1538,7563],[1582,7570],[1641,7607],[1694,7623],[1727,7598],[1772,7609],[1815,7596],[1822,7616],[1790,7650],[1818,7670],[1843,7643],[1898,7655],[1925,7636],[1995,7635],[1979,7581],[1937,7507],[1942,7479],[1971,7478],[1959,7409],[1936,7364],[1889,7301],[1821,7272],[1774,7232],[1733,7165],[1616,7070],[1567,7040],[1549,6998],[1466,6949],[1430,6965],[1433,6944],[1480,6908],[1468,6868],[1436,6875],[1417,6855],[1357,6876],[1314,6866],[1265,6912],[1292,6869],[1329,6849],[1362,6861],[1451,6819],[1481,6842],[1537,6816],[1580,6865],[1584,6829],[1477,6696],[1462,6724],[1429,6731],[1387,6694],[1313,6683],[1305,6658],[1253,6614],[1239,6582],[1294,6630],[1362,6677],[1418,6660],[1465,6689],[1468,6677],[1334,6501],[1363,6494],[1450,6558],[1424,6588],[1556,6593],[1638,6653],[1688,6640],[1678,6666],[1718,6660],[1742,6711],[1786,6720],[1853,6717],[1892,6691],[1962,6666],[2007,6672],[2049,6699],[2134,6700],[2148,6685],[2187,6694],[2258,6666],[2273,6680],[2326,6666],[2392,6692],[2427,6675],[2481,6705],[2540,6703],[2553,6676],[2575,6683],[2631,6616],[2648,6529],[2671,6477],[2634,6429],[2624,6397],[2555,6321],[2521,6228],[2508,6137],[2520,6121],[2464,6022],[2440,5950],[2448,5916],[2431,5874],[2368,5792],[2311,5735],[2286,5654],[2290,5627],[2263,5581],[2170,5504],[2155,5470],[2134,5476],[1971,5452],[1931,5427],[1873,5368],[1877,5356],[2032,5432],[2068,5458],[2113,5428],[2094,5366],[2133,5333],[2183,5329],[2239,5285],[2200,5230],[2125,5193],[2064,5209],[2024,5206],[1954,5133],[1933,5124],[1905,5059],[1866,5057],[1813,5029],[1769,5027],[1679,5054],[1630,5054],[1589,5075],[1557,5111],[1538,5110],[1580,5076],[1607,5032],[1638,5013],[1682,5019],[1778,4992],[1820,4996],[1835,4979],[1936,4971],[1954,4950],[1996,4952],[2038,4971],[2077,5032],[2115,5066],[2208,5060],[2245,5026],[2237,5005],[2279,5012],[2392,4938],[2482,4922],[2520,4874],[2553,4811],[2522,4796],[2515,4762],[2476,4728],[2431,4654],[2384,4629],[2412,4593],[2467,4468],[2452,4439],[2387,4403],[2368,4367],[2310,4365],[2218,4266],[2215,4227],[2149,4160],[2106,4139],[2031,4045],[1987,4050],[1976,3986]]],[[[767,4726],[788,4697],[821,4587],[806,4544],[827,4476],[804,4461],[722,4471],[676,4508],[679,4575],[656,4616],[655,4672],[678,4714],[731,4746],[767,4726]]],[[[177,4705],[136,4780],[178,4821],[123,4821],[99,4771],[54,4725],[31,4733],[40,4791],[67,4827],[49,4841],[68,4891],[138,4936],[132,4899],[248,4983],[258,4970],[264,4872],[264,4842],[290,4806],[301,4721],[253,4682],[191,4671],[163,4629],[135,4630],[132,4675],[177,4705]]],[[[328,4989],[391,5011],[338,5007],[338,5046],[373,5092],[402,5104],[476,5173],[505,5177],[506,5142],[477,5108],[452,5053],[401,4961],[387,4922],[353,4895],[341,4842],[305,4835],[285,4849],[275,4923],[283,4956],[328,4989]]],[[[464,5405],[513,5405],[499,5383],[448,5351],[409,5359],[421,5391],[390,5370],[259,5324],[208,5327],[192,5307],[159,5322],[140,5368],[183,5389],[205,5354],[215,5379],[239,5372],[297,5391],[334,5419],[245,5401],[233,5422],[273,5482],[337,5501],[341,5540],[279,5513],[244,5564],[193,5575],[166,5596],[194,5615],[176,5650],[233,5654],[252,5685],[292,5692],[337,5655],[378,5559],[433,5556],[503,5520],[538,5456],[535,5429],[490,5431],[464,5405]]],[[[2916,9434],[2881,9413],[2910,9415],[2917,9392],[2955,9449],[2967,9438],[2933,9395],[2958,9401],[2954,9359],[2908,9350],[2957,9325],[2927,9294],[2951,9277],[2915,9255],[2899,9207],[2927,9191],[2924,9153],[2895,9104],[2920,9064],[2893,9043],[2908,9001],[2880,9000],[2870,8885],[2818,8910],[2844,8958],[2830,8979],[2852,9030],[2870,9117],[2856,9158],[2864,9187],[2843,9182],[2864,9247],[2834,9205],[2819,9245],[2821,9198],[2800,9211],[2793,9177],[2773,9156],[2736,9192],[2766,9217],[2747,9242],[2692,9214],[2664,9237],[2653,9282],[2669,9303],[2756,9316],[2764,9278],[2774,9320],[2798,9322],[2815,9287],[2814,9321],[2831,9354],[2864,9357],[2826,9375],[2822,9397],[2797,9390],[2801,9423],[2774,9430],[2770,9491],[2689,9481],[2735,9556],[2748,9524],[2783,9502],[2752,9538],[2785,9580],[2780,9607],[2825,9611],[2837,9644],[2842,9600],[2823,9533],[2824,9486],[2844,9493],[2809,9402],[2831,9428],[2875,9446],[2862,9466],[2882,9500],[2916,9434]]],[[[2913,9511],[2897,9627],[2900,9648],[2935,9618],[2923,9663],[2927,9718],[2943,9739],[2985,9736],[2988,9640],[2953,9667],[2978,9620],[2960,9602],[2981,9582],[2967,9557],[2973,9505],[2913,9511]]],[[[3084,9846],[3089,9799],[3074,9786],[3078,9752],[3055,9725],[3070,9692],[3000,9695],[2998,9730],[3036,9851],[3051,9810],[3060,9847],[3084,9846]]],[[[-297,6306],[-348,6316],[-306,6287],[-301,6250],[-313,6219],[-282,6183],[-296,6170],[-340,6182],[-357,6173],[-376,6204],[-383,6291],[-404,6313],[-364,6386],[-379,6463],[-338,6480],[-292,6443],[-272,6408],[-287,6401],[-349,6461],[-351,6428],[-284,6394],[-263,6359],[-297,6306]]],[[[-307,6615],[-236,6620],[-212,6603],[-226,6576],[-296,6578],[-328,6625],[-375,6654],[-386,6642],[-429,6671],[-387,6738],[-340,6734],[-347,6708],[-298,6758],[-311,6733],[-281,6731],[-228,6754],[-234,6721],[-183,6715],[-169,6696],[-189,6670],[-226,6707],[-250,6708],[-220,6652],[-194,6656],[-219,6627],[-263,6620],[-276,6641],[-307,6615]]],[[[234,7277],[262,7253],[298,7259],[343,7293],[341,7251],[311,7225],[247,7235],[215,7250],[226,7181],[189,7169],[162,7143],[144,7151],[93,7126],[213,7142],[231,7078],[192,7046],[129,7063],[174,7019],[128,6966],[106,6964],[85,7002],[88,6969],[67,6972],[41,7054],[66,7093],[106,7105],[55,7107],[52,7090],[12,7055],[28,7013],[56,6978],[60,6929],[-1,6954],[-17,6933],[17,6891],[-39,6867],[-70,6823],[-118,6794],[-178,6874],[-166,6874],[-101,6927],[-75,6924],[-99,6952],[-40,6965],[-32,6989],[-62,6991],[-90,7014],[-135,7020],[-173,7052],[-142,7085],[-75,7109],[-142,7099],[-121,7139],[-149,7123],[-172,7186],[-152,7229],[-162,7243],[-111,7248],[-130,7261],[-115,7303],[-52,7272],[-68,7267],[-44,7223],[-33,7243],[5,7254],[36,7218],[51,7239],[14,7282],[-1,7337],[56,7388],[106,7397],[256,7501],[299,7548],[330,7516],[347,7453],[320,7403],[344,7381],[299,7349],[296,7330],[261,7306],[260,7283],[234,7277]]]]}},{"type":"Feature","id":"GB.NIR","properties":{"hc-group":"admin0","hc-middle-x":0.51,"hc-middle-y":0.53,"hc-key":"gb-nir","hc-a2":"NI","country":"United Kingdom","name":"Northern Ireland"},"geometry":{"type":"MultiPolygon","coordinates":[[[[199,4348],[178,4341],[137,4344],[164,4357],[199,4348]]],[[[592,3496],[572,3456],[573,3423],[547,3372],[532,3378],[506,3436],[524,3475],[526,3521],[511,3562],[473,3602],[440,3613],[430,3573],[482,3550],[473,3530],[479,3475],[456,3415],[427,3388],[504,3417],[520,3398],[516,3332],[454,3265],[441,3282],[382,3285],[333,3271],[327,3202],[298,3133],[221,3082],[179,3091],[195,3103],[144,3123],[138,3142],[93,3156],[55,3151],[40,3164],[24,3117],[-9,3111],[-35,3125],[-117,3098],[-148,3131],[-124,3229],[-161,3262],[-178,3248],[-209,3269],[-235,3328],[-260,3346],[-244,3360],[-255,3410],[-312,3474],[-349,3485],[-398,3426],[-437,3413],[-449,3373],[-415,3330],[-421,3302],[-466,3288],[-486,3263],[-490,3223],[-511,3209],[-508,3248],[-531,3227],[-519,3198],[-568,3209],[-593,3235],[-631,3216],[-692,3235],[-704,3264],[-744,3298],[-821,3308],[-839,3331],[-849,3399],[-881,3408],[-907,3467],[-950,3493],[-999,3578],[-928,3609],[-894,3652],[-828,3636],[-805,3643],[-719,3721],[-745,3713],[-779,3740],[-793,3733],[-830,3765],[-841,3802],[-790,3832],[-729,3805],[-676,3839],[-615,3831],[-612,3883],[-567,3932],[-549,3970],[-550,4006],[-523,4043],[-519,4087],[-488,4123],[-396,4134],[-322,4115],[-293,4141],[-265,4204],[-255,4262],[-211,4239],[-137,4239],[-71,4266],[-31,4267],[25,4301],[58,4283],[81,4296],[149,4258],[204,4266],[237,4255],[271,4209],[267,4154],[253,4116],[302,4093],[293,4022],[324,4010],[378,3922],[393,3858],[430,3841],[395,3881],[422,3892],[449,3859],[452,3800],[430,3764],[362,3739],[320,3687],[329,3645],[363,3688],[417,3716],[448,3704],[517,3712],[539,3689],[549,3629],[569,3600],[573,3547],[592,3496]]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/es-all.geo.json
const es_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Spain","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:2062"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=40 +lat_0=40 +lon_0=0 +k_0=0.9988085293 +x_0=600000 +y_0=600000 +a=6378298.3 +b=6356657.142669561 +pm=madrid +units=m +no_defs","scale":0.000612848427797,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":142692.792586,"yoffset":1028372.5328},"es-all-canaries":{"xpan":500,"ypan":450,"hitZone":{"type":"Polygon","coordinates":[[[6385,2187],[6794,3142],[9999,3142],[9999,2187],[6385,2187]]]},"crs":"+proj=lcc +lat_1=40 +lat_0=40 +lon_0=0 +k_0=0.9988085293 +x_0=600000 +y_0=600000 +a=6378298.3 +b=6356657.142669561 +pm=madrid +units=m +no_defs","scale":0.000264609209011,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-850558.031443,"yoffset":-529925.129088}},"features":[{"type":"Feature","id":"ES.PM","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.34,"hc-key":"es-pm","hc-a2":"PM","labelrank":"3","hasc":"ES.PM","alt-name":null,"woe-id":"12602088","subregion":null,"fips":"SP07","postal-code":"PM","name":"Baleares","country":"Spain","type-en":"Autonomous Community","region":"Islas Baleares","longitude":"2.99156","woe-name":"Islas Baleares","latitude":"39.6162","woe-label":"Balearic Islands, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7571,4586],[7615,4531],[7680,4531],[7696,4492],[7648,4485],[7592,4515],[7533,4470],[7529,4544],[7571,4586]]],[[[8812,5080],[8772,5054],[8755,5089],[8807,5128],[8812,5080]]],[[[7377,4737],[7393,4804],[7446,4809],[7435,4878],[7485,4927],[7631,4978],[7665,4967],[7707,4889],[7620,4779],[7544,4733],[7538,4671],[7487,4700],[7419,4692],[7377,4737]]],[[[9016,5740],[9063,5781],[9163,5752],[9163,5686],[9123,5628],[9121,5582],[9059,5505],[9035,5394],[8990,5326],[8866,5221],[8775,5314],[8667,5306],[8612,5341],[8587,5404],[8599,5448],[8563,5488],[8513,5507],[8445,5467],[8410,5403],[8387,5399],[8351,5467],[8301,5449],[8270,5484],[8267,5540],[8354,5596],[8391,5642],[8432,5658],[8534,5772],[8618,5840],[8712,5891],[8825,5923],[8906,5963],[8927,5944],[8844,5900],[8845,5866],[8935,5885],[8926,5849],[8880,5825],[8909,5752],[9016,5740]]],[[[9724,5898],[9585,5973],[9435,5971],[9447,6023],[9406,6051],[9418,6088],[9655,6121],[9707,6104],[9790,6038],[9851,5935],[9821,5954],[9825,5885],[9784,5875],[9724,5898]]]]}},{"type":"Feature","id":"ES.VA","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.67,"hc-key":"es-va","hc-a2":"VA","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602122","subregion":null,"fips":"SP85","postal-code":"VA","name":"Valladolid","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-4.83256","woe-name":"Castilla y León","latitude":"41.5715","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2018,7946],[2012,8108],[2033,8139],[2064,8117],[2108,8131],[2131,8179],[2184,8182],[2244,8225],[2284,8180],[2316,8202],[2294,8060],[2372,8055],[2376,7993],[2357,7916],[2308,7832],[2322,7806],[2415,7824],[2476,7703],[2501,7711],[2567,7785],[2648,7699],[2711,7722],[2709,7661],[2755,7644],[2783,7661],[2852,7651],[2909,7685],[3002,7687],[3020,7652],[3066,7646],[3074,7501],[3113,7451],[3086,7378],[2897,7313],[2774,7303],[2689,7270],[2722,7145],[2673,7175],[2623,7177],[2636,7133],[2579,7073],[2538,7003],[2464,6984],[2429,6951],[2391,6954],[2320,7007],[2200,6984],[2092,7053],[2070,7039],[2030,7052],[2067,7113],[2042,7224],[2042,7354],[2125,7403],[2077,7440],[2050,7554],[2001,7650],[2090,7704],[2068,7765],[2073,7854],[2092,7879],[2018,7946]]],[[[2079,8167],[2053,8162],[2045,8195],[2075,8210],[2079,8167]]],[[[1906,8007],[1982,7935],[1968,7869],[1906,8007]]]]}},{"type":"Feature","id":"ES.LE","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.49,"hc-key":"es-le","hc-a2":"LE","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602117","subregion":null,"fips":"SP85","postal-code":"LE","name":"León","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-5.75872","woe-name":"Castilla y León","latitude":"42.6006","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2316,8202],[2284,8180],[2244,8225],[2184,8182],[2131,8179],[2108,8131],[2064,8117],[2033,8139],[2012,8108],[2018,7946],[1982,7935],[1906,8007],[1879,7971],[1824,7994],[1810,8042],[1731,8028],[1722,8053],[1657,8035],[1615,8070],[1565,8045],[1496,8080],[1371,8074],[1288,8139],[1197,8136],[1147,8118],[1095,8144],[980,8159],[920,8198],[920,8198],[957,8252],[946,8313],[882,8366],[899,8444],[823,8476],[781,8460],[705,8471],[754,8614],[743,8683],[834,8734],[878,8786],[883,8856],[909,8898],[953,8874],[994,8900],[1116,8893],[1205,8926],[1185,8970],[1233,8982],[1273,9030],[1373,8988],[1400,9015],[1450,8999],[1495,9038],[1565,9033],[1590,8985],[1673,8935],[1725,8937],[1764,9005],[1814,9012],[1910,8982],[1963,9012],[2005,9012],[2051,9053],[2166,9054],[2239,9068],[2276,9135],[2403,9201],[2461,9149],[2463,9064],[2507,9033],[2540,8966],[2492,8939],[2472,8872],[2431,8803],[2402,8791],[2400,8718],[2377,8677],[2412,8646],[2388,8471],[2409,8462],[2388,8298],[2340,8292],[2363,8262],[2353,8209],[2316,8202]],[[2079,8167],[2075,8210],[2045,8195],[2053,8162],[2079,8167]]]}},{"type":"Feature","id":"ES.ME","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.52,"hc-key":"es-me","hc-a2":"ME","labelrank":"9","hasc":"ES.CE","alt-name":null,"woe-id":"55862984","subregion":null,"fips":"SP00","postal-code":"ME","name":"Melilla","country":"Spain","type-en":"Autonomous City","region":"Melilla","longitude":"-2.94015","woe-name":"Melilla","latitude":"35.2934","woe-label":"Melilla Province, ES, Spain","type":"Ciudades Autónomas"},"geometry":{"type":"Polygon","coordinates":[[[3986,861],[4016,806],[3990,796],[3969,844],[3986,861]]]}},{"type":"Feature","id":"ES.P","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.44,"hc-key":"es-p","hc-a2":"PA","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602118","subregion":null,"fips":"SP85","postal-code":"P","name":"Palencia","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-4.59868","woe-name":"Castilla y León","latitude":"42.3386","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3027,8036],[3027,8072],[3053,8065],[3059,8041],[3027,8036]]],[[[2540,8966],[2676,8973],[2745,9001],[2793,8982],[2827,8931],[2917,8893],[2931,8788],[2986,8800],[2959,8759],[3036,8695],[2989,8683],[2880,8604],[2888,8542],[2864,8491],[2896,8456],[2911,8371],[2843,8354],[2853,8295],[2884,8295],[2916,8132],[2950,8082],[2939,8033],[3006,8026],[3037,7933],[3109,7944],[3121,7922],[3077,7865],[3095,7845],[3166,7882],[3183,7850],[3118,7816],[3101,7769],[3029,7754],[3028,7712],[3066,7646],[3020,7652],[3002,7687],[2909,7685],[2852,7651],[2783,7661],[2755,7644],[2709,7661],[2711,7722],[2648,7699],[2567,7785],[2501,7711],[2476,7703],[2415,7824],[2322,7806],[2308,7832],[2357,7916],[2376,7993],[2372,8055],[2294,8060],[2316,8202],[2353,8209],[2363,8262],[2340,8292],[2388,8298],[2409,8462],[2388,8471],[2412,8646],[2377,8677],[2400,8718],[2402,8791],[2431,8803],[2472,8872],[2492,8939],[2540,8966]]]]}},{"type":"Feature","id":"ES.S","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.39,"hc-key":"es-s","hc-a2":"CA","labelrank":"3","hasc":"ES.CB","alt-name":null,"woe-id":"12578028","subregion":null,"fips":"SP85","postal-code":"S","name":"Cantabria","country":"Spain","type-en":"Autonomous Community","region":"Cantabria","longitude":"-4.02085","woe-name":"Cantabria","latitude":"43.2182","woe-label":"Cantabria, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3670,9185],[3645,9174],[3641,9220],[3655,9216],[3670,9185]]],[[[2540,8966],[2507,9033],[2463,9064],[2461,9149],[2530,9152],[2552,9229],[2608,9236],[2647,9263],[2701,9251],[2690,9315],[2709,9373],[2734,9352],[2772,9372],[2808,9352],[2960,9374],[3030,9405],[3082,9408],[3164,9454],[3238,9469],[3283,9450],[3225,9415],[3261,9399],[3293,9443],[3448,9490],[3485,9451],[3538,9442],[3488,9399],[3520,9380],[3572,9393],[3668,9372],[3759,9326],[3752,9271],[3719,9254],[3627,9262],[3535,9191],[3549,9093],[3476,9096],[3376,9131],[3284,9043],[3229,9034],[3225,9005],[3140,8944],[3115,8867],[3137,8844],[3195,8885],[3232,8862],[3173,8818],[3185,8788],[3234,8810],[3246,8744],[3167,8706],[3102,8702],[3100,8759],[3066,8702],[3036,8695],[2959,8759],[2986,8800],[2931,8788],[2917,8893],[2827,8931],[2793,8982],[2745,9001],[2676,8973],[2540,8966]]]]}},{"type":"Feature","id":"ES.NA","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.45,"hc-key":"es-na","hc-a2":"NA","labelrank":"3","hasc":"ES.NA","alt-name":null,"woe-id":"12578026","subregion":null,"fips":"SP88","postal-code":"NA","name":"Navarra","country":"Spain","type-en":"Autonomous Community","region":"Foral de Navarra","longitude":"-1.63845","woe-name":"Comunidad Foral de Navarra","latitude":"42.7493","woe-label":"Navarre, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5308,8343],[5294,8364],[5317,8382],[5322,8367],[5308,8343]]],[[[5393,8380],[5340,8389],[5347,8417],[5367,8428],[5393,8380]]],[[[5627,8896],[5581,8880],[5551,8821],[5545,8755],[5510,8707],[5418,8655],[5404,8606],[5326,8594],[5281,8505],[5241,8499],[5231,8429],[5179,8351],[5186,8283],[5149,8230],[5126,8145],[5146,8047],[5210,7954],[5132,7816],[5081,7829],[5024,7816],[4943,7868],[4891,7865],[4849,7898],[4789,7906],[4758,7931],[4753,7984],[4808,8058],[4895,8050],[4916,8064],[4906,8135],[4775,8204],[4683,8317],[4639,8316],[4604,8368],[4503,8370],[4446,8415],[4346,8421],[4344,8526],[4310,8504],[4277,8539],[4341,8593],[4375,8570],[4432,8597],[4409,8658],[4436,8684],[4468,8784],[4458,8848],[4488,8901],[4551,8899],[4620,8950],[4640,9027],[4707,9079],[4712,9161],[4786,9211],[4840,9272],[4898,9283],[4926,9233],[4966,9229],[4987,9264],[5108,9224],[5094,9110],[5047,9052],[5089,9004],[5130,8998],[5155,9067],[5213,9019],[5311,8979],[5406,8961],[5443,8931],[5535,8919],[5594,8932],[5627,8896]]]]}},{"type":"Feature","id":"ES.CE","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.34,"hc-key":"es-ce","hc-a2":"CE","labelrank":"9","hasc":"ES.CE","alt-name":null,"woe-id":"55862983","subregion":null,"fips":"SP00","postal-code":"CE","name":"Ceuta","country":"Spain","type-en":"Autonomous City","region":"Ceuta","longitude":"-5.341","woe-name":"Ceuta","latitude":"35.8803","woe-label":"Ceuta Province, ES, Spain","type":"Ciudades Autónomas"},"geometry":{"type":"Polygon","coordinates":[[[1876,1500],[1904,1500],[1968,1463],[1925,1418],[1876,1500]]]}},{"type":"Feature","id":"ES.CU","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.52,"hc-key":"es-cu","hc-a2":"CU","labelrank":"3","hasc":"ES.CM","alt-name":null,"woe-id":"12602112","subregion":null,"fips":"SP84","postal-code":"CU","name":"Cuenca","country":"Spain","type-en":"Autonomous Community","region":"Castilla-La Mancha","longitude":"-2.15126","woe-name":"Castilla-La Mancha","latitude":"39.9115","woe-label":"Castille la Mancha, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4859,6221],[4931,6153],[4938,6103],[4981,6099],[5068,6019],[5157,6012],[5155,5962],[5216,5829],[5313,5807],[5390,5823],[5406,5782],[5357,5745],[5362,5666],[5346,5595],[5314,5538],[5295,5463],[5230,5473],[5186,5431],[5126,5325],[5117,5226],[5132,5195],[4939,5084],[4915,5041],[4819,5064],[4735,5051],[4708,5112],[4651,5119],[4687,5022],[4589,5035],[4491,4976],[4464,5036],[4422,4982],[4308,5095],[4293,5080],[4219,5092],[4119,5068],[4080,5151],[4046,5106],[4004,5101],[4014,5143],[3963,5228],[3966,5365],[3980,5408],[3905,5491],[3855,5613],[3802,5655],[3824,5770],[3787,5768],[3769,5853],[3826,5860],[3851,5895],[3842,5950],[3890,5948],[3902,6004],[3972,5951],[4049,6006],[4061,6066],[4049,6128],[4054,6214],[4084,6229],[4122,6205],[4199,6264],[4291,6230],[4264,6354],[4310,6329],[4388,6369],[4367,6400],[4388,6433],[4435,6394],[4460,6406],[4469,6469],[4530,6448],[4573,6486],[4631,6469],[4676,6426],[4757,6420],[4789,6358],[4820,6249],[4859,6221]]]}},{"type":"Feature","id":"ES.VI","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.43,"hc-key":"es-vi","hc-a2":"VI","labelrank":"3","hasc":"ES.PV","alt-name":null,"woe-id":"12602134","subregion":null,"fips":"SP94","postal-code":"VI","name":"Álava","country":"Spain","type-en":"Autonomous Community","region":"País Vasco","longitude":"-2.6966","woe-name":"País Vasco","latitude":"42.8902","woe-label":"Basque Country, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4228,9043],[4233,8977],[4186,8931],[4220,8911],[4379,8900],[4458,8848],[4468,8784],[4436,8684],[4409,8658],[4432,8597],[4375,8570],[4341,8593],[4277,8539],[4310,8504],[4344,8526],[4346,8421],[4271,8463],[4207,8419],[4128,8461],[4127,8508],[4078,8546],[4053,8511],[4016,8515],[4008,8572],[3996,8594],[3830,8720],[3787,8702],[3762,8753],[3792,8807],[3778,8828],[3711,8766],[3662,8826],[3698,8880],[3732,8889],[3769,8857],[3820,8847],[3888,8869],[3891,8895],[3848,8933],[3888,8956],[3849,8999],[3821,8961],[3750,8974],[3767,9056],[3744,9084],[3767,9120],[3796,9099],[3843,9110],[3877,9163],[3926,9102],[3917,9035],[3959,8997],[4112,8971],[4164,8987],[4143,9029],[4228,9043]],[[4260,8585],[4191,8638],[4225,8693],[4161,8711],[4093,8732],[4022,8730],[3983,8685],[4025,8634],[4166,8585],[4260,8585]]]}},{"type":"Feature","id":"ES.SS","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.56,"hc-key":"es-ss","hc-a2":"SS","labelrank":"3","hasc":"ES.PV","alt-name":null,"woe-id":"12602135","subregion":null,"fips":"SP94","postal-code":"SS","name":"Gipuzkoa","country":"Spain","type-en":"Autonomous Community","region":"País Vasco","longitude":"-2.2243","woe-name":"País Vasco","latitude":"43.1495","woe-label":"Basque Country, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4458,8848],[4379,8900],[4220,8911],[4186,8931],[4233,8977],[4228,9043],[4265,9076],[4270,9185],[4325,9234],[4307,9255],[4333,9299],[4427,9273],[4495,9286],[4548,9258],[4734,9334],[4790,9377],[4802,9320],[4840,9272],[4786,9211],[4712,9161],[4707,9079],[4640,9027],[4620,8950],[4551,8899],[4488,8901],[4458,8848]]]}},{"type":"Feature","id":"ES.GR","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.64,"hc-key":"es-gr","hc-a2":"GR","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602099","subregion":null,"fips":"SP80","postal-code":"GR","name":"Granada","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-3.2411","woe-name":"Andalucía","latitude":"37.2665","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4470,3711],[4535,3635],[4579,3596],[4528,3560],[4513,3495],[4521,3435],[4489,3365],[4495,3285],[4445,3274],[4461,3180],[4351,3143],[4225,3030],[4206,2926],[4212,2849],[4130,2870],[4089,2908],[4043,2899],[4023,2813],[3986,2789],[3973,2743],[3913,2696],[3930,2592],[3870,2533],[3903,2459],[3810,2399],[3820,2355],[3735,2363],[3649,2352],[3577,2300],[3462,2318],[3419,2349],[3308,2330],[3269,2342],[3277,2412],[3227,2468],[3186,2466],[2955,2567],[2861,2648],[2812,2819],[2867,2864],[2860,2897],[2906,2994],[2967,2999],[3018,3047],[3082,3045],[3124,3020],[3216,3028],[3258,3112],[3349,3167],[3396,3179],[3497,3268],[3566,3220],[3658,3231],[3711,3289],[3765,3292],[3846,3251],[3879,3269],[3936,3257],[3942,3290],[4003,3325],[4013,3440],[4098,3586],[4169,3651],[4194,3639],[4254,3686],[4249,3746],[4295,3766],[4363,3734],[4470,3711]]]}},{"type":"Feature","id":"ES.MU","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.61,"hc-key":"es-mu","hc-a2":"MU","labelrank":"7","hasc":"ES.MU","alt-name":null,"woe-id":"12578025","subregion":null,"fips":"SP96","postal-code":"MU","name":"Murcia","country":"Spain","type-en":"Autonomous Community","region":"Murcia","longitude":"-1.45758","woe-name":"Región de Murcia","latitude":"37.9136","woe-label":"Murcia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4579,3596],[4535,3635],[4470,3711],[4481,3749],[4541,3828],[4572,3891],[4642,3934],[4698,3993],[4760,3983],[4841,4013],[4952,4093],[5008,4075],[5010,4043],[5056,4023],[5105,4039],[5177,4123],[5154,4261],[5192,4319],[5207,4389],[5246,4434],[5288,4424],[5370,4485],[5419,4499],[5547,4397],[5563,4303],[5551,4217],[5504,4161],[5511,4075],[5566,4061],[5603,3995],[5594,3923],[5555,3831],[5567,3780],[5658,3641],[5725,3574],[5791,3553],[5718,3421],[5756,3363],[5845,3316],[5663,3243],[5622,3263],[5541,3267],[5499,3241],[5512,3213],[5396,3260],[5328,3240],[5207,3152],[5194,3100],[5066,3042],[4989,3101],[4899,3116],[4759,3323],[4754,3465],[4769,3552],[4611,3576],[4579,3596]]]}},{"type":"Feature","id":"ES.BU","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.47,"hc-key":"es-bu","hc-a2":"BU","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602116","subregion":null,"fips":"SP85","postal-code":"BU","name":"Burgos","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-3.60703","woe-name":"Castilla y León","latitude":"42.348","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3113,7451],[3074,7501],[3066,7646],[3028,7712],[3029,7754],[3101,7769],[3118,7816],[3183,7850],[3166,7882],[3095,7845],[3077,7865],[3121,7922],[3109,7944],[3037,7933],[3006,8026],[2939,8033],[2950,8082],[2916,8132],[2884,8295],[2853,8295],[2843,8354],[2911,8371],[2896,8456],[2864,8491],[2888,8542],[2880,8604],[2989,8683],[3036,8695],[3066,8702],[3100,8759],[3102,8702],[3167,8706],[3246,8744],[3234,8810],[3185,8788],[3173,8818],[3232,8862],[3195,8885],[3137,8844],[3115,8867],[3140,8944],[3225,9005],[3229,9034],[3284,9043],[3376,9131],[3476,9096],[3549,9093],[3661,9154],[3759,9137],[3767,9120],[3744,9084],[3767,9056],[3750,8974],[3821,8961],[3849,8999],[3888,8956],[3848,8933],[3891,8895],[3888,8869],[3820,8847],[3769,8857],[3732,8889],[3698,8880],[3662,8826],[3711,8766],[3778,8828],[3792,8807],[3762,8753],[3787,8702],[3830,8720],[3996,8594],[4008,8572],[3954,8553],[3870,8568],[3822,8551],[3834,8524],[3793,8469],[3827,8449],[3817,8410],[3844,8368],[3839,8292],[3799,8259],[3815,8176],[3790,8098],[3824,8036],[3877,7978],[3937,7979],[3957,7917],[3939,7911],[3907,7819],[3874,7772],[3828,7768],[3753,7672],[3688,7747],[3662,7738],[3669,7649],[3608,7613],[3605,7567],[3578,7564],[3526,7457],[3472,7476],[3461,7445],[3357,7425],[3312,7368],[3312,7318],[3280,7320],[3267,7365],[3228,7362],[3186,7412],[3113,7451]],[[3027,8036],[3059,8041],[3053,8065],[3027,8072],[3027,8036]]],[[[4260,8585],[4166,8585],[4025,8634],[3983,8685],[4022,8730],[4093,8732],[4161,8711],[4225,8693],[4191,8638],[4260,8585]]]]}},{"type":"Feature","id":"ES.SA","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.51,"hc-key":"es-sa","hc-a2":"SA","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602119","subregion":null,"fips":"SP85","postal-code":"SA","name":"Salamanca","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-5.9926","woe-name":"Castilla y León","latitude":"40.8324","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2070,7039],[2092,7053],[2200,6984],[2181,6898],[2221,6846],[2195,6797],[2207,6755],[2165,6706],[2165,6654],[2098,6572],[2001,6505],[1982,6448],[1932,6414],[1876,6411],[1879,6374],[1940,6373],[1920,6301],[1874,6277],[1858,6238],[1826,6290],[1793,6291],[1735,6247],[1739,6166],[1700,6110],[1648,6114],[1646,6162],[1576,6138],[1557,6104],[1490,6125],[1404,6185],[1427,6225],[1319,6314],[1224,6283],[1191,6247],[1066,6189],[1031,6158],[1031,6122],[923,6086],[813,6086],[774,6122],[842,6201],[798,6258],[794,6293],[830,6355],[806,6422],[836,6508],[822,6610],[826,6712],[791,6827],[748,6900],[778,6941],[848,6936],[893,6992],[899,7038],[993,7157],[1059,7158],[1124,7190],[1251,7162],[1402,7070],[1418,7086],[1486,7060],[1482,7034],[1572,7029],[1568,7074],[1594,7105],[1655,7084],[1776,7110],[1814,7072],[1864,7069],[1905,7037],[1976,7044],[1980,7004],[2059,6973],[2070,7039]]]}},{"type":"Feature","id":"ES.ZA","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.52,"hc-key":"es-za","hc-a2":"ZA","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602123","subregion":null,"fips":"SP85","postal-code":"ZA","name":"Zamora","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-5.84292","woe-name":"Castilla y León","latitude":"41.6837","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[980,8159],[1095,8144],[1147,8118],[1197,8136],[1288,8139],[1371,8074],[1496,8080],[1565,8045],[1615,8070],[1657,8035],[1722,8053],[1731,8028],[1810,8042],[1824,7994],[1879,7971],[1906,8007],[1968,7869],[1982,7935],[2018,7946],[2092,7879],[2073,7854],[2068,7765],[2090,7704],[2001,7650],[2050,7554],[2077,7440],[2125,7403],[2042,7354],[2042,7224],[2067,7113],[2030,7052],[2070,7039],[2059,6973],[1980,7004],[1976,7044],[1905,7037],[1864,7069],[1814,7072],[1776,7110],[1655,7084],[1594,7105],[1568,7074],[1572,7029],[1482,7034],[1486,7060],[1418,7086],[1402,7070],[1251,7162],[1124,7190],[1212,7286],[1256,7309],[1286,7379],[1352,7465],[1301,7527],[1228,7567],[1154,7583],[1111,7557],[1079,7583],[1064,7652],[1110,7785],[1070,7803],[1078,7848],[1035,7865],[928,7865],[877,7916],[852,7874],[781,7877],[752,7898],[769,7967],[724,8018],[780,8076],[800,8120],[853,8163],[901,8162],[920,8198],[920,8198],[980,8159]]]}},{"type":"Feature","id":"ES.HU","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.51,"hc-key":"es-hu","hc-a2":"HU","labelrank":"3","hasc":"ES.AR","alt-name":null,"woe-id":"12602105","subregion":null,"fips":"SP81","postal-code":"HU","name":"Huesca","country":"Spain","type-en":"Autonomous Community","region":"Aragón","longitude":"-0.012808","woe-name":"Aragón","latitude":"42.1863","woe-label":"Aragon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[5510,8707],[5545,8755],[5551,8821],[5581,8880],[5627,8896],[5640,8853],[5705,8826],[5758,8771],[5795,8785],[5881,8770],[5958,8828],[6028,8771],[6085,8783],[6121,8701],[6185,8670],[6345,8721],[6399,8706],[6430,8663],[6489,8718],[6518,8685],[6688,8696],[6731,8707],[6769,8643],[6814,8620],[6813,8577],[6771,8485],[6817,8343],[6814,8254],[6789,8151],[6791,8101],[6750,7964],[6700,7918],[6721,7838],[6645,7765],[6614,7715],[6576,7703],[6519,7621],[6551,7539],[6598,7535],[6614,7487],[6584,7433],[6544,7405],[6539,7335],[6461,7356],[6401,7330],[6358,7269],[6288,7276],[6260,7300],[6217,7287],[6186,7394],[6125,7504],[6059,7497],[5984,7556],[5958,7606],[5871,7656],[5839,7765],[5772,7814],[5722,7883],[5635,7882],[5574,7922],[5563,7953],[5592,8013],[5623,7988],[5656,8034],[5641,8200],[5658,8234],[5650,8323],[5618,8340],[5626,8291],[5603,8225],[5558,8223],[5535,8187],[5511,8210],[5573,8314],[5569,8355],[5525,8380],[5514,8570],[5497,8605],[5528,8630],[5510,8707]]]}},{"type":"Feature","id":"ES.M","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.47,"hc-key":"es-m","hc-a2":"MA","labelrank":"7","hasc":"ES.MD","alt-name":null,"woe-id":"12578024","subregion":null,"fips":"SP87","postal-code":"M","name":"Madrid","country":"Spain","type-en":"Autonomous Community","region":"Madrid","longitude":"-3.67012","woe-name":"Comunidad de Madrid","latitude":"40.4593","woe-label":"Madrid, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3842,5950],[3851,5895],[3826,5860],[3769,5853],[3750,5876],[3669,5839],[3496,5833],[3476,5806],[3390,5773],[3387,5754],[3306,5718],[3256,5672],[3194,5705],[3272,5733],[3389,5828],[3396,5901],[3277,5933],[3253,5958],[3104,6011],[3040,6056],[2986,6048],[2952,6082],[2904,6066],[2854,6016],[2818,6046],[2794,6108],[2738,6036],[2662,5994],[2631,6009],[2666,6098],[2660,6137],[2724,6128],[2766,6214],[2832,6219],[2838,6357],[2866,6399],[2861,6438],[2900,6418],[2957,6447],[2965,6507],[3023,6593],[3108,6613],[3148,6758],[3182,6799],[3266,6832],[3293,6881],[3396,6982],[3458,7006],[3513,6931],[3546,6917],[3565,6824],[3497,6621],[3544,6552],[3529,6514],[3585,6505],[3642,6463],[3636,6412],[3665,6344],[3734,6323],[3738,6258],[3788,6199],[3756,6112],[3750,6046],[3799,6073],[3831,6036],[3842,5950]]],[[[2836,6477],[2839,6503],[2873,6513],[2887,6480],[2836,6477]]]]}},{"type":"Feature","id":"ES.GU","properties":{"hc-group":"admin1","hc-middle-x":0.33,"hc-middle-y":0.36,"hc-key":"es-gu","hc-a2":"GU","labelrank":"3","hasc":"ES.CM","alt-name":null,"woe-id":"12602113","subregion":null,"fips":"SP84","postal-code":"GU","name":"Guadalajara","country":"Spain","type-en":"Autonomous Community","region":"Castilla-La Mancha","longitude":"-2.53087","woe-name":"Castilla-La Mancha","latitude":"40.8422","woe-label":"Castille la Mancha, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[3458,7006],[3565,7061],[3561,7114],[3622,7103],[3694,7117],[3734,7154],[3825,7133],[3906,7140],[3963,7178],[4016,7121],[4108,7127],[4124,7106],[4222,7068],[4203,7043],[4223,6999],[4266,7007],[4318,6933],[4365,6911],[4400,6928],[4461,6915],[4549,6941],[4588,6969],[4645,6937],[4647,7006],[4733,7022],[4877,6920],[4905,6880],[4996,6798],[5015,6706],[5061,6664],[5053,6566],[5070,6501],[5061,6429],[5033,6403],[4965,6421],[4944,6319],[4859,6221],[4820,6249],[4789,6358],[4757,6420],[4676,6426],[4631,6469],[4573,6486],[4530,6448],[4469,6469],[4460,6406],[4435,6394],[4388,6433],[4367,6400],[4388,6369],[4310,6329],[4264,6354],[4291,6230],[4199,6264],[4122,6205],[4084,6229],[4054,6214],[4049,6128],[4061,6066],[4049,6006],[3972,5951],[3902,6004],[3890,5948],[3842,5950],[3831,6036],[3799,6073],[3750,6046],[3756,6112],[3788,6199],[3738,6258],[3734,6323],[3665,6344],[3636,6412],[3642,6463],[3585,6505],[3529,6514],[3544,6552],[3497,6621],[3565,6824],[3546,6917],[3513,6931],[3458,7006]]]}},{"type":"Feature","id":"ES.SG","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.39,"hc-key":"es-sg","hc-a2":"SG","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602120","subregion":null,"fips":"SP85","postal-code":"SG","name":"Segovia","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-4.04672","woe-name":"Castilla y León","latitude":"41.2066","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[3734,7154],[3694,7117],[3622,7103],[3561,7114],[3565,7061],[3458,7006],[3396,6982],[3293,6881],[3266,6832],[3182,6799],[3148,6758],[3108,6613],[3023,6593],[2965,6507],[2898,6522],[2873,6513],[2839,6503],[2836,6477],[2758,6452],[2739,6576],[2699,6660],[2658,6653],[2645,6782],[2608,6815],[2583,6870],[2527,6936],[2538,7003],[2579,7073],[2636,7133],[2623,7177],[2673,7175],[2722,7145],[2689,7270],[2774,7303],[2897,7313],[3086,7378],[3113,7451],[3186,7412],[3228,7362],[3267,7365],[3280,7320],[3312,7318],[3312,7368],[3357,7425],[3461,7445],[3475,7405],[3554,7376],[3562,7341],[3614,7322],[3627,7233],[3734,7154]]]}},{"type":"Feature","id":"ES.SE","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.52,"hc-key":"es-se","hc-a2":"SE","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602104","subregion":null,"fips":"SP80","postal-code":"SE","name":"Sevilla","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-5.73917","woe-name":"Andalucía","latitude":"37.438","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[1191,2549],[1148,2575],[1100,2554],[1068,2586],[1090,2639],[1071,2733],[1095,2775],[1107,2975],[1080,3001],[1095,3074],[1137,3115],[1069,3262],[1076,3292],[962,3325],[1017,3421],[1151,3459],[1208,3422],[1257,3497],[1308,3497],[1291,3543],[1309,3605],[1263,3640],[1322,3680],[1437,3698],[1494,3775],[1491,3818],[1558,3880],[1649,3893],[1674,3850],[1642,3831],[1675,3790],[1734,3837],[1770,3834],[1768,3813],[1838,3735],[1852,3670],[1898,3626],[1904,3568],[1988,3448],[1986,3369],[1920,3370],[1899,3345],[1926,3279],[2013,3291],[2086,3337],[2137,3332],[2158,3359],[2224,3378],[2261,3356],[2305,3243],[2291,3177],[2391,3004],[2440,2973],[2485,3007],[2512,2985],[2532,2895],[2476,2900],[2459,2817],[2410,2794],[2373,2829],[2341,2803],[2274,2804],[2320,2769],[2308,2747],[2115,2635],[2049,2579],[1969,2651],[1876,2583],[1856,2611],[1876,2662],[1823,2678],[1791,2572],[1737,2556],[1669,2603],[1627,2556],[1552,2558],[1500,2535],[1478,2477],[1297,2498],[1191,2549]]]}},{"type":"Feature","id":"ES.T","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.46,"hc-key":"es-t","hc-a2":"TA","labelrank":"3","hasc":"ES.CT","alt-name":null,"woe-id":"12602127","subregion":null,"fips":"SP86","postal-code":"T","name":"Tarragona","country":"Spain","type-en":"Autonomous Community","region":"Cataluña","longitude":"0.873012","woe-name":"Cataluña","latitude":"41.1476","woe-label":"Catalonia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[6439,6619],[6514,6726],[6493,6788],[6521,6888],[6458,6978],[6450,7029],[6520,7080],[6535,7133],[6565,7154],[6583,7203],[6621,7202],[6622,7254],[6650,7259],[6681,7218],[6721,7257],[6769,7233],[6913,7275],[6934,7304],[6971,7289],[7033,7305],[7082,7362],[7117,7445],[7153,7436],[7194,7462],[7219,7545],[7349,7545],[7365,7556],[7395,7557],[7378,7485],[7442,7457],[7436,7404],[7510,7344],[7553,7233],[7529,7206],[7572,7164],[7505,7155],[7309,7069],[7254,7053],[7229,7008],[7127,7004],[7076,6975],[6991,6881],[6868,6728],[6854,6696],[6912,6698],[7000,6642],[6983,6586],[6932,6568],[6874,6483],[6803,6448],[6782,6478],[6840,6473],[6892,6537],[6787,6511],[6730,6416],[6675,6438],[6617,6493],[6540,6519],[6533,6573],[6476,6620],[6439,6619]]]}},{"type":"Feature","id":"ES.TE","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.54,"hc-key":"es-te","hc-a2":"TE","labelrank":"3","hasc":"ES.AR","alt-name":null,"woe-id":"12602106","subregion":null,"fips":"SP81","postal-code":"TE","name":"Teruel","country":"Spain","type-en":"Autonomous Community","region":"Aragón","longitude":"-0.8094090000000001","woe-name":"Aragón","latitude":"40.625","woe-label":"Aragon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[6458,6978],[6521,6888],[6493,6788],[6514,6726],[6439,6619],[6338,6578],[6315,6609],[6241,6611],[6166,6659],[6121,6621],[6114,6568],[6059,6532],[6001,6527],[6005,6483],[6070,6472],[6072,6369],[6089,6331],[6044,6283],[6081,6219],[6004,6142],[6005,6109],[5965,6080],[5883,6080],[5832,5900],[5726,5865],[5665,5800],[5655,5762],[5696,5691],[5651,5666],[5606,5675],[5586,5770],[5523,5793],[5406,5782],[5390,5823],[5447,5849],[5456,5882],[5397,5927],[5329,5939],[5278,6020],[5256,5964],[5155,5962],[5157,6012],[5068,6019],[4981,6099],[4938,6103],[4931,6153],[4859,6221],[4859,6221],[4944,6319],[4965,6421],[5033,6403],[5061,6429],[5070,6501],[5053,6566],[5061,6664],[5015,6706],[4996,6798],[5121,6806],[5125,6872],[5175,6933],[5274,6919],[5284,6997],[5353,6992],[5417,7034],[5537,6956],[5579,7008],[5628,6970],[5667,7033],[5693,7039],[5731,6994],[5795,7080],[5767,7128],[5774,7204],[5797,7215],[5855,7125],[5873,7144],[5830,7221],[5836,7251],[5882,7254],[5954,7171],[6010,7140],[6029,7156],[6066,7114],[6254,7036],[6303,6954],[6343,6980],[6458,6978]]]}},{"type":"Feature","id":"ES.V","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.56,"hc-key":"es-v","hc-a2":"VA","labelrank":"6","hasc":"ES.VC","alt-name":null,"woe-id":"12602139","subregion":null,"fips":"SP89","postal-code":"V","name":"Valencia","country":"Spain","type-en":"Autonomous Community","region":"Valenciana","longitude":"-0.712245","woe-name":"Comunidad Valenciana","latitude":"39.3003","woe-label":"Valencia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5390,5823],[5313,5807],[5216,5829],[5155,5962],[5256,5964],[5278,6020],[5329,5939],[5397,5927],[5456,5882],[5447,5849],[5390,5823]]],[[[6187,5538],[6177,5483],[6090,5324],[6097,5189],[6115,5120],[6191,4975],[6170,4958],[6200,4867],[6279,4736],[6355,4667],[6193,4629],[6125,4656],[6041,4587],[5894,4557],[5920,4516],[5969,4504],[5881,4450],[5785,4508],[5714,4493],[5671,4527],[5618,4538],[5623,4644],[5563,4711],[5457,4688],[5349,4796],[5337,4833],[5401,4990],[5399,5078],[5178,5138],[5132,5195],[5117,5226],[5126,5325],[5186,5431],[5230,5473],[5295,5463],[5314,5538],[5346,5595],[5362,5666],[5357,5745],[5406,5782],[5523,5793],[5586,5770],[5606,5675],[5651,5666],[5696,5691],[5742,5633],[5778,5667],[5807,5651],[5817,5569],[5840,5557],[5908,5612],[5955,5542],[6011,5563],[6061,5619],[6187,5538]]]]}},{"type":"Feature","id":"ES.BI","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.52,"hc-key":"es-bi","hc-a2":"BI","labelrank":"3","hasc":"ES.PV","alt-name":"Biscay|Vizcaya","woe-id":"12602136","subregion":null,"fips":"SP94","postal-code":"BI","name":"Bizkaia","country":"Spain","type-en":"Autonomous Community","region":"País Vasco","longitude":"-2.7953","woe-name":"País Vasco","latitude":"43.2392","woe-label":"Basque Country, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[3767,9120],[3759,9137],[3661,9154],[3549,9093],[3535,9191],[3627,9262],[3719,9254],[3752,9271],[3759,9326],[3806,9333],[3869,9285],[3852,9339],[3928,9409],[4062,9424],[4094,9397],[4113,9337],[4135,9384],[4273,9342],[4333,9299],[4307,9255],[4325,9234],[4270,9185],[4265,9076],[4228,9043],[4143,9029],[4164,8987],[4112,8971],[3959,8997],[3917,9035],[3926,9102],[3877,9163],[3843,9110],[3796,9099],[3767,9120]],[[3670,9185],[3655,9216],[3641,9220],[3645,9174],[3670,9185]]]}},{"type":"Feature","id":"ES.OR","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.5,"hc-key":"es-or","hc-a2":"OR","labelrank":"3","hasc":"ES.GA","alt-name":null,"woe-id":"12602132","subregion":null,"fips":"SP91","postal-code":"OR","name":"Orense","country":"Spain","type-en":"Autonomous Community","region":"Galicia","longitude":"-7.59234","woe-name":"Galicia","latitude":"42.1609","woe-label":"Galicia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[920,8198],[920,8198],[901,8162],[853,8163],[800,8120],[780,8076],[724,8018],[769,7967],[752,7898],[698,7878],[626,7929],[582,7906],[581,7840],[537,7802],[415,7777],[384,7747],[365,7797],[244,7781],[257,7824],[168,7855],[29,7818],[24,7877],[-9,7829],[-47,7828],[-93,7780],[-197,7779],[-198,7829],[-234,7861],[-190,7942],[-130,7987],[-118,8018],[-150,8054],[-192,8044],[-212,8142],[-180,8161],[-162,8237],[-218,8225],[-247,8276],[-234,8314],[-276,8364],[-291,8441],[-286,8504],[-257,8500],[-152,8581],[-132,8555],[-32,8543],[-11,8572],[38,8578],[61,8500],[88,8497],[171,8438],[200,8436],[274,8381],[349,8371],[431,8407],[557,8374],[595,8287],[639,8393],[705,8471],[781,8460],[823,8476],[899,8444],[882,8366],[946,8313],[957,8252],[920,8198]]]}},{"type":"Feature","id":"ES.L","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.56,"hc-key":"es-l","hc-a2":"LÉ","labelrank":"3","hasc":"ES.CT","alt-name":null,"woe-id":"12602126","subregion":null,"fips":"SP86","postal-code":"L","name":"Lérida","country":"Spain","type-en":"Autonomous Community","region":"Cataluña","longitude":"1.11518","woe-name":"Cataluña","latitude":"42.0143","woe-label":"Catalonia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[6565,7154],[6574,7248],[6532,7297],[6539,7335],[6544,7405],[6584,7433],[6614,7487],[6598,7535],[6551,7539],[6519,7621],[6576,7703],[6614,7715],[6645,7765],[6721,7838],[6700,7918],[6750,7964],[6791,8101],[6789,8151],[6814,8254],[6817,8343],[6771,8485],[6813,8577],[6814,8620],[6769,8643],[6731,8707],[6705,8757],[6718,8856],[6770,8866],[6840,8855],[6926,8810],[7041,8807],[7095,8746],[7239,8751],[7273,8725],[7332,8632],[7318,8561],[7354,8537],[7322,8517],[7356,8464],[7404,8460],[7504,8506],[7510,8535],[7559,8538],[7586,8479],[7637,8463],[7672,8347],[7574,8322],[7553,8293],[7560,8241],[7594,8218],[7556,8014],[7521,7904],[7537,7834],[7485,7767],[7366,7775],[7368,7693],[7397,7630],[7345,7584],[7365,7556],[7349,7545],[7219,7545],[7194,7462],[7153,7436],[7117,7445],[7082,7362],[7033,7305],[6971,7289],[6934,7304],[6913,7275],[6769,7233],[6721,7257],[6681,7218],[6650,7259],[6622,7254],[6621,7202],[6583,7203],[6565,7154]]]}},{"type":"Feature","id":"ES.Z","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.69,"hc-key":"es-z","hc-a2":"ZA","labelrank":"3","hasc":"ES.AR","alt-name":null,"woe-id":"12602107","subregion":null,"fips":"SP81","postal-code":"Z","name":"Zaragoza","country":"Spain","type-en":"Autonomous Community","region":"Aragón","longitude":"-1.0538","woe-name":"Aragón","latitude":"41.5814","woe-label":"Aragon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[6539,7335],[6532,7297],[6574,7248],[6565,7154],[6535,7133],[6520,7080],[6450,7029],[6458,6978],[6343,6980],[6303,6954],[6254,7036],[6066,7114],[6029,7156],[6010,7140],[5954,7171],[5882,7254],[5836,7251],[5830,7221],[5873,7144],[5855,7125],[5797,7215],[5774,7204],[5767,7128],[5795,7080],[5731,6994],[5693,7039],[5667,7033],[5628,6970],[5579,7008],[5537,6956],[5417,7034],[5353,6992],[5284,6997],[5274,6919],[5175,6933],[5125,6872],[5121,6806],[4996,6798],[4905,6880],[4877,6920],[4733,7022],[4647,7006],[4570,7050],[4549,7156],[4554,7210],[4584,7243],[4605,7313],[4643,7306],[4674,7257],[4727,7287],[4699,7383],[4690,7476],[4741,7485],[4832,7558],[4848,7610],[4798,7684],[4821,7749],[4786,7857],[4795,7886],[4789,7906],[4849,7898],[4891,7865],[4943,7868],[5024,7816],[5081,7829],[5132,7816],[5210,7954],[5146,8047],[5126,8145],[5149,8230],[5186,8283],[5179,8351],[5231,8429],[5241,8499],[5281,8505],[5326,8594],[5404,8606],[5418,8655],[5510,8707],[5528,8630],[5497,8605],[5514,8570],[5525,8380],[5569,8355],[5573,8314],[5511,8210],[5535,8187],[5558,8223],[5603,8225],[5626,8291],[5618,8340],[5650,8323],[5658,8234],[5641,8200],[5656,8034],[5623,7988],[5592,8013],[5563,7953],[5574,7922],[5635,7882],[5722,7883],[5772,7814],[5839,7765],[5871,7656],[5958,7606],[5984,7556],[6059,7497],[6125,7504],[6186,7394],[6217,7287],[6260,7300],[6288,7276],[6358,7269],[6401,7330],[6461,7356],[6539,7335]],[[5308,8343],[5322,8367],[5317,8382],[5294,8364],[5308,8343]],[[5393,8380],[5367,8428],[5347,8417],[5340,8389],[5393,8380]]]}},{"type":"Feature","id":"ES.GI","properties":{"hc-group":"admin1","hc-middle-x":0.73,"hc-middle-y":0.49,"hc-key":"es-gi","hc-a2":"GI","labelrank":"3","hasc":"ES.CT","alt-name":null,"woe-id":"12602125","subregion":null,"fips":"SP86","postal-code":"GI","name":"Gerona","country":"Spain","type-en":"Autonomous Community","region":"Cataluña","longitude":"2.79123","woe-name":"Cataluña","latitude":"42.0844","woe-label":"Catalonia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[7672,8347],[7637,8463],[7586,8479],[7559,8538],[7622,8529],[7730,8489],[7763,8417],[7833,8406],[7895,8477],[8004,8498],[8120,8458],[8156,8415],[8204,8403],[8220,8432],[8310,8424],[8291,8458],[8327,8496],[8387,8504],[8512,8578],[8587,8578],[8618,8545],[8708,8551],[8708,8480],[8733,8456],[8823,8446],[8787,8355],[8699,8366],[8676,8323],[8686,8242],[8763,8172],[8752,8133],[8788,8065],[8763,7981],[8731,7933],[8676,7909],[8671,7880],[8571,7781],[8507,7760],[8454,7701],[8423,7794],[8386,7805],[8266,7766],[8173,7848],[8115,7839],[8077,7887],[8089,7933],[8126,7917],[8172,7937],[8165,8002],[8209,8086],[8171,8133],[8140,8131],[8095,8179],[8050,8167],[8026,8198],[7909,8165],[7858,8180],[7821,8269],[7828,8343],[7775,8341],[7727,8363],[7672,8347]]]}},{"type":"Feature","id":"ES.AB","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.37,"hc-key":"es-ab","hc-a2":"AB","labelrank":"3","hasc":"ES.CM","alt-name":null,"woe-id":"12602110","subregion":null,"fips":"SP84","postal-code":"AB","name":"Albacete","country":"Spain","type-en":"Autonomous Community","region":"Castilla-La Mancha","longitude":"-1.94309","woe-name":"Castilla-La Mancha","latitude":"38.834","woe-label":"Castille la Mancha, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[5618,4538],[5600,4513],[5644,4436],[5615,4409],[5547,4397],[5419,4499],[5370,4485],[5288,4424],[5246,4434],[5207,4389],[5192,4319],[5154,4261],[5177,4123],[5105,4039],[5056,4023],[5010,4043],[5008,4075],[4952,4093],[4841,4013],[4760,3983],[4698,3993],[4642,3934],[4572,3891],[4541,3828],[4481,3749],[4470,3711],[4363,3734],[4295,3766],[4379,3880],[4390,3955],[4355,3996],[4339,4102],[4268,4138],[4269,4208],[4184,4207],[4116,4241],[4108,4283],[4138,4337],[4178,4349],[4206,4425],[4175,4498],[4119,4534],[4107,4607],[4076,4635],[4018,4639],[4010,4674],[4068,4789],[4039,4873],[4136,5016],[4119,5068],[4219,5092],[4293,5080],[4308,5095],[4422,4982],[4464,5036],[4491,4976],[4589,5035],[4687,5022],[4651,5119],[4708,5112],[4735,5051],[4819,5064],[4915,5041],[4939,5084],[5132,5195],[5178,5138],[5399,5078],[5401,4990],[5337,4833],[5349,4796],[5457,4688],[5563,4711],[5623,4644],[5618,4538]]]}},{"type":"Feature","id":"ES.A","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.3,"hc-key":"es-a","hc-a2":"AL","labelrank":"6","hasc":"ES.VC","alt-name":null,"woe-id":"12602137","subregion":null,"fips":"SP89","postal-code":"A","name":"Alicante","country":"Spain","type-en":"Autonomous Community","region":"Valenciana","longitude":"-0.533879","woe-name":"Comunidad Valenciana","latitude":"38.5418","woe-label":"Valencia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[5547,4397],[5615,4409],[5644,4436],[5600,4513],[5618,4538],[5671,4527],[5714,4493],[5785,4508],[5881,4450],[5969,4504],[5920,4516],[5894,4557],[6041,4587],[6125,4656],[6193,4629],[6355,4667],[6474,4637],[6537,4591],[6575,4520],[6522,4495],[6442,4409],[6380,4395],[6322,4299],[6230,4279],[6114,4213],[6066,4145],[6061,4109],[5982,4078],[5992,3940],[5905,3907],[5878,3840],[5874,3707],[5823,3656],[5791,3553],[5725,3574],[5658,3641],[5567,3780],[5555,3831],[5594,3923],[5603,3995],[5566,4061],[5511,4075],[5504,4161],[5551,4217],[5563,4303],[5547,4397]]]}},{"type":"Feature","id":"ES.AV","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.61,"hc-key":"es-av","hc-a2":"AV","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602115","subregion":null,"fips":"SP85","postal-code":"AV","name":"Ávila","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-4.87934","woe-name":"Castilla y León","latitude":"40.5611","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2836,6477],[2887,6480],[2873,6513],[2898,6522],[2965,6507],[2957,6447],[2900,6418],[2861,6438],[2866,6399],[2838,6357],[2832,6219],[2766,6214],[2724,6128],[2660,6137],[2666,6098],[2631,6009],[2576,5994],[2540,6015],[2528,6077],[2442,6062],[2435,6030],[2363,5972],[2347,5937],[2293,5910],[2273,5949],[2238,5947],[2169,5891],[2019,5916],[1992,5968],[2000,6063],[1944,6052],[1899,6011],[1849,6005],[1798,6030],[1732,6096],[1700,6110],[1739,6166],[1735,6247],[1793,6291],[1826,6290],[1858,6238],[1874,6277],[1920,6301],[1940,6373],[1879,6374],[1876,6411],[1932,6414],[1982,6448],[2001,6505],[2098,6572],[2165,6654],[2165,6706],[2207,6755],[2195,6797],[2221,6846],[2181,6898],[2200,6984],[2320,7007],[2391,6954],[2429,6951],[2464,6984],[2538,7003],[2527,6936],[2583,6870],[2608,6815],[2645,6782],[2658,6653],[2699,6660],[2739,6576],[2758,6452],[2836,6477]]]}},{"type":"Feature","id":"ES.CC","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.55,"hc-key":"es-cc","hc-a2":"CC","labelrank":"3","hasc":"ES.EX","alt-name":null,"woe-id":"12602129","subregion":null,"fips":"SP90","postal-code":"CC","name":"Cáceres","country":"Spain","type-en":"Autonomous Community","region":"Extremadura","longitude":"-6.08204","woe-name":"Extremadura","latitude":"39.7279","woe-label":"Extremadura, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[1700,6110],[1732,6096],[1798,6030],[1849,6005],[1899,6011],[1944,6052],[2000,6063],[1992,5968],[2019,5916],[1994,5905],[1964,5711],[1967,5670],[2012,5677],[2045,5648],[2021,5554],[2067,5532],[2109,5574],[2142,5574],[2162,5497],[2153,5437],[2115,5370],[2209,5256],[2242,5240],[2318,5148],[2226,5120],[2192,5157],[2171,5095],[2125,5065],[1994,5082],[1986,4982],[1933,4915],[1904,4910],[1846,4964],[1767,4944],[1795,4901],[1784,4868],[1701,4834],[1639,4892],[1604,4902],[1564,4859],[1509,4839],[1495,4866],[1437,4826],[1431,4888],[1329,4789],[1243,4863],[1192,4882],[1188,4955],[1145,4933],[1016,4949],[909,4979],[891,4956],[819,4973],[795,5025],[838,5090],[802,5170],[729,5179],[600,5240],[584,5217],[620,5173],[603,5118],[576,5114],[578,5182],[505,5164],[506,5115],[466,5065],[428,5072],[369,5149],[385,5270],[317,5311],[226,5421],[196,5513],[371,5497],[458,5509],[501,5495],[621,5506],[643,5532],[654,5624],[719,5694],[722,5748],[760,5838],[702,5939],[654,5957],[634,6024],[651,6060],[774,6122],[813,6086],[923,6086],[1031,6122],[1031,6158],[1066,6189],[1191,6247],[1224,6283],[1319,6314],[1427,6225],[1404,6185],[1490,6125],[1557,6104],[1576,6138],[1646,6162],[1648,6114],[1700,6110]]]}},{"type":"Feature","id":"ES.TO","properties":{"hc-group":"admin1","hc-middle-x":0.32,"hc-middle-y":0.42,"hc-key":"es-to","hc-a2":"TO","labelrank":"3","hasc":"ES.CM","alt-name":null,"woe-id":"12602114","subregion":null,"fips":"SP84","postal-code":"TO","name":"Toledo","country":"Spain","type-en":"Autonomous Community","region":"Castilla-La Mancha","longitude":"-3.95134","woe-name":"Castilla-La Mancha","latitude":"39.7401","woe-label":"Castille la Mancha, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2524,5207],[2515,5195],[2475,5174],[2484,5237],[2458,5281],[2387,5320],[2357,5280],[2318,5148],[2242,5240],[2209,5256],[2115,5370],[2153,5437],[2162,5497],[2142,5574],[2109,5574],[2067,5532],[2021,5554],[2045,5648],[2012,5677],[1967,5670],[1964,5711],[1994,5905],[2019,5916],[2169,5891],[2238,5947],[2273,5949],[2293,5910],[2347,5937],[2363,5972],[2435,6030],[2442,6062],[2528,6077],[2540,6015],[2576,5994],[2631,6009],[2662,5994],[2738,6036],[2794,6108],[2818,6046],[2854,6016],[2904,6066],[2952,6082],[2986,6048],[3040,6056],[3104,6011],[3253,5958],[3277,5933],[3396,5901],[3389,5828],[3272,5733],[3194,5705],[3256,5672],[3306,5718],[3387,5754],[3390,5773],[3476,5806],[3496,5833],[3669,5839],[3750,5876],[3769,5853],[3787,5768],[3824,5770],[3802,5655],[3855,5613],[3905,5491],[3980,5408],[3966,5365],[3963,5228],[3925,5199],[3850,5204],[3790,5252],[3756,5229],[3667,5225],[3640,5161],[3581,5155],[3523,5121],[3518,5090],[3453,5044],[3352,5039],[3306,5012],[3269,5039],[3219,5002],[3117,5043],[3113,5100],[3030,5114],[2975,5107],[2994,5211],[3041,5228],[3029,5279],[3057,5335],[2961,5337],[2933,5254],[2893,5233],[2742,5267],[2702,5243],[2673,5309],[2639,5300],[2585,5211],[2524,5207]]]}},{"type":"Feature","id":"ES.BA","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.53,"hc-key":"es-ba","hc-a2":"BA","labelrank":"3","hasc":"ES.EX","alt-name":null,"woe-id":"12602128","subregion":null,"fips":"SP90","postal-code":"BA","name":"Badajoz","country":"Spain","type-en":"Autonomous Community","region":"Extremadura","longitude":"-6.26724","woe-name":"Extremadura","latitude":"38.5731","woe-label":"Extremadura, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2475,5174],[2515,5195],[2524,5207],[2536,5173],[2508,5096],[2470,5067],[2507,4971],[2549,4916],[2493,4940],[2428,4944],[2394,4909],[2377,4847],[2403,4785],[2368,4769],[2305,4784],[2337,4693],[2392,4678],[2388,4615],[2336,4611],[2264,4458],[2232,4451],[2131,4441],[2112,4387],[1960,4303],[1912,4232],[1786,4139],[1786,4046],[1822,3972],[1806,3862],[1770,3834],[1734,3837],[1675,3790],[1642,3831],[1674,3850],[1649,3893],[1558,3880],[1491,3818],[1494,3775],[1437,3698],[1322,3680],[1263,3640],[1120,3708],[1075,3766],[1014,3729],[942,3739],[932,3774],[883,3814],[797,3817],[746,3839],[759,3902],[647,3944],[633,3934],[570,3937],[505,3912],[456,4018],[338,4183],[304,4208],[343,4322],[380,4371],[369,4407],[390,4511],[492,4593],[571,4628],[565,4681],[645,4793],[627,4868],[595,4895],[522,4886],[490,4904],[492,4964],[431,4993],[428,5072],[466,5065],[506,5115],[505,5164],[578,5182],[576,5114],[603,5118],[620,5173],[584,5217],[600,5240],[729,5179],[802,5170],[838,5090],[795,5025],[819,4973],[891,4956],[909,4979],[1016,4949],[1145,4933],[1188,4955],[1192,4882],[1243,4863],[1329,4789],[1431,4888],[1437,4826],[1495,4866],[1509,4839],[1564,4859],[1604,4902],[1639,4892],[1701,4834],[1784,4868],[1795,4901],[1767,4944],[1846,4964],[1904,4910],[1933,4915],[1986,4982],[1994,5082],[2125,5065],[2171,5095],[2192,5157],[2226,5120],[2318,5148],[2370,5121],[2475,5174]]]}},{"type":"Feature","id":"ES.CO","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.47,"hc-key":"es-co","hc-a2":"CO","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602098","subregion":null,"fips":"SP80","postal-code":"CO","name":"Córdoba","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-4.74788","woe-name":"Andalucía","latitude":"37.9699","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[3082,3045],[3018,3047],[2967,2999],[2906,2994],[2860,2897],[2867,2864],[2812,2819],[2768,2850],[2759,2916],[2707,2916],[2627,2847],[2532,2895],[2512,2985],[2485,3007],[2440,2973],[2391,3004],[2291,3177],[2305,3243],[2261,3356],[2224,3378],[2158,3359],[2137,3332],[2086,3337],[2013,3291],[1926,3279],[1899,3345],[1920,3370],[1986,3369],[1988,3448],[1904,3568],[1898,3626],[1852,3670],[1838,3735],[1768,3813],[1770,3834],[1806,3862],[1822,3972],[1786,4046],[1786,4139],[1912,4232],[1960,4303],[2112,4387],[2131,4441],[2232,4451],[2306,4403],[2358,4403],[2402,4317],[2485,4291],[2581,4202],[2658,4158],[2713,4095],[2858,4046],[2886,4032],[2921,3902],[2946,3866],[2925,3810],[2848,3680],[2867,3638],[2847,3487],[2891,3439],[2900,3377],[2940,3357],[2905,3282],[2991,3189],[3010,3134],[3051,3102],[3082,3045]]]}},{"type":"Feature","id":"ES.H","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.37,"hc-key":"es-h","hc-a2":"HU","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602100","subregion":null,"fips":"SP80","postal-code":"H","name":"Huelva","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-6.90248","woe-name":"Andalucía","latitude":"37.6217","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[1100,2554],[1091,2465],[1056,2453],[1008,2556],[966,2616],[764,2772],[641,2845],[622,2897],[680,2979],[612,2917],[585,2918],[612,2852],[468,2912],[481,2893],[276,2896],[203,2890],[189,2961],[186,3095],[165,3209],[123,3288],[175,3359],[218,3478],[297,3539],[358,3681],[356,3711],[457,3732],[483,3772],[565,3751],[633,3934],[647,3944],[759,3902],[746,3839],[797,3817],[883,3814],[932,3774],[942,3739],[1014,3729],[1075,3766],[1120,3708],[1263,3640],[1309,3605],[1291,3543],[1308,3497],[1257,3497],[1208,3422],[1151,3459],[1017,3421],[962,3325],[1076,3292],[1069,3262],[1137,3115],[1095,3074],[1080,3001],[1107,2975],[1095,2775],[1071,2733],[1090,2639],[1068,2586],[1100,2554]]]}},{"type":"Feature","id":"ES.C","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.55,"hc-key":"es-c","hc-a2":"LC","labelrank":"3","hasc":"ES.GA","alt-name":null,"woe-id":"12602130","subregion":null,"fips":"SP91","postal-code":"C","name":"La Coruña","country":"Spain","type-en":"Autonomous Community","region":"Galicia","longitude":"-8.397360000000001","woe-name":"Galicia","latitude":"43.1026","woe-label":"Galicia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[-579,8727],[-638,8685],[-663,8725],[-672,8682],[-771,8622],[-807,8573],[-849,8645],[-810,8761],[-721,8840],[-725,8856],[-819,8853],[-847,8813],[-885,8876],[-856,8896],[-886,8924],[-877,8987],[-945,9015],[-983,8965],[-999,8999],[-961,9097],[-981,9138],[-929,9198],[-876,9211],[-926,9241],[-862,9286],[-834,9271],[-776,9290],[-762,9319],[-722,9305],[-741,9365],[-625,9417],[-513,9363],[-434,9391],[-408,9378],[-316,9438],[-273,9447],[-249,9407],[-228,9466],[-180,9443],[-134,9380],[-132,9455],[-108,9471],[-176,9486],[-191,9524],[-113,9530],[-103,9552],[-226,9535],[-205,9635],[-143,9641],[-27,9721],[-4,9776],[79,9794],[136,9826],[159,9770],[247,9807],[286,9851],[275,9786],[223,9611],[227,9566],[197,9491],[152,9443],[117,9451],[108,9381],[73,9339],[74,9292],[45,9224],[68,9120],[59,9078],[77,9009],[71,8955],[-2,8866],[-41,8853],[-137,8877],[-228,8847],[-263,8873],[-266,8819],[-310,8819],[-334,8786],[-456,8781],[-579,8727]]]}},{"type":"Feature","id":"ES.MA","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.5,"hc-key":"es-ma","hc-a2":"MA","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602102","subregion":null,"fips":"SP80","postal-code":"MA","name":"Málaga","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-4.68606","woe-name":"Andalucía","latitude":"36.838","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2812,2819],[2861,2648],[2955,2567],[3186,2466],[3227,2468],[3277,2412],[3269,2342],[3217,2359],[3113,2333],[3032,2356],[2987,2332],[2889,2319],[2738,2332],[2712,2318],[2633,2182],[2579,2175],[2556,2130],[2464,2091],[2311,2107],[2232,2056],[2174,2052],[2067,2011],[2008,1891],[1988,1934],[1952,1922],[1924,2037],[1852,2133],[1741,2104],[1724,2152],[1795,2173],[1851,2233],[1942,2282],[1980,2391],[1949,2465],[2011,2500],[2068,2451],[2122,2466],[2159,2518],[2153,2584],[2115,2635],[2308,2747],[2320,2769],[2274,2804],[2341,2803],[2373,2829],[2410,2794],[2459,2817],[2476,2900],[2532,2895],[2627,2847],[2707,2916],[2759,2916],[2768,2850],[2812,2819]]]}},{"type":"Feature","id":"ES.PO","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.31,"hc-key":"es-po","hc-a2":"PO","labelrank":"3","hasc":"ES.GA","alt-name":null,"woe-id":"12602133","subregion":null,"fips":"SP91","postal-code":"PO","name":"Pontevedra","country":"Spain","type-en":"Autonomous Community","region":"Galicia","longitude":"-8.499800000000001","woe-name":"Galicia","latitude":"42.5257","woe-label":"Galicia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[-212,8142],[-312,8092],[-434,8079],[-535,8051],[-572,7999],[-637,7970],[-660,7938],[-731,7891],[-741,7911],[-745,8116],[-687,8143],[-701,8176],[-638,8238],[-519,8315],[-514,8363],[-558,8314],[-655,8277],[-711,8278],[-677,8366],[-635,8362],[-541,8448],[-562,8464],[-616,8432],[-701,8445],[-750,8515],[-707,8531],[-667,8492],[-657,8606],[-618,8641],[-579,8727],[-456,8781],[-334,8786],[-310,8819],[-266,8819],[-263,8873],[-228,8847],[-137,8877],[-41,8853],[-2,8866],[25,8858],[11,8794],[84,8728],[70,8637],[38,8578],[-11,8572],[-32,8543],[-132,8555],[-152,8581],[-257,8500],[-286,8504],[-291,8441],[-276,8364],[-234,8314],[-247,8276],[-218,8225],[-162,8237],[-180,8161],[-212,8142]]]}},{"type":"Feature","id":"ES.LO","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.45,"hc-key":"es-lo","hc-a2":"LO","labelrank":"3","hasc":"ES.LO","alt-name":null,"woe-id":"12578023","subregion":null,"fips":"SP85","postal-code":"LO","name":"La Rioja","country":"Spain","type-en":"Autonomous Community","region":"La Rioja","longitude":"-2.40337","woe-name":"La Rioja","latitude":"42.3179","woe-label":"La Rioja, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4786,7857],[4735,7825],[4586,7862],[4581,7924],[4554,7968],[4575,7996],[4522,8009],[4478,7993],[4449,8035],[4397,8047],[4327,8036],[4269,8007],[4266,7968],[4222,7895],[4144,7895],[4088,7917],[4107,8014],[4053,8000],[4033,7933],[3957,7917],[3937,7979],[3877,7978],[3824,8036],[3790,8098],[3815,8176],[3799,8259],[3839,8292],[3844,8368],[3817,8410],[3827,8449],[3793,8469],[3834,8524],[3822,8551],[3870,8568],[3954,8553],[4008,8572],[4016,8515],[4053,8511],[4078,8546],[4127,8508],[4128,8461],[4207,8419],[4271,8463],[4346,8421],[4446,8415],[4503,8370],[4604,8368],[4639,8316],[4683,8317],[4775,8204],[4906,8135],[4916,8064],[4895,8050],[4808,8058],[4753,7984],[4758,7931],[4789,7906],[4795,7886],[4786,7857]]]}},{"type":"Feature","id":"ES.SO","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.51,"hc-key":"es-so","hc-a2":"SO","labelrank":"3","hasc":"ES.CL","alt-name":null,"woe-id":"12602121","subregion":null,"fips":"SP85","postal-code":"SO","name":"Soria","country":"Spain","type-en":"Autonomous Community","region":"Castilla y León","longitude":"-2.55925","woe-name":"Castilla y León","latitude":"41.6463","woe-label":"Castille and Leon, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[3957,7917],[4033,7933],[4053,8000],[4107,8014],[4088,7917],[4144,7895],[4222,7895],[4266,7968],[4269,8007],[4327,8036],[4397,8047],[4449,8035],[4478,7993],[4522,8009],[4575,7996],[4554,7968],[4581,7924],[4586,7862],[4735,7825],[4786,7857],[4821,7749],[4798,7684],[4848,7610],[4832,7558],[4741,7485],[4690,7476],[4699,7383],[4727,7287],[4674,7257],[4643,7306],[4605,7313],[4584,7243],[4554,7210],[4549,7156],[4570,7050],[4647,7006],[4645,6937],[4588,6969],[4549,6941],[4461,6915],[4400,6928],[4365,6911],[4318,6933],[4266,7007],[4223,6999],[4203,7043],[4222,7068],[4124,7106],[4108,7127],[4016,7121],[3963,7178],[3906,7140],[3825,7133],[3734,7154],[3627,7233],[3614,7322],[3562,7341],[3554,7376],[3475,7405],[3461,7445],[3472,7476],[3526,7457],[3578,7564],[3605,7567],[3608,7613],[3669,7649],[3662,7738],[3688,7747],[3753,7672],[3828,7768],[3874,7772],[3907,7819],[3939,7911],[3957,7917]]]}},{"type":"Feature","id":"ES.AL","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.61,"hc-key":"es-al","hc-a2":"AL","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602095","subregion":null,"fips":"SP80","postal-code":"AL","name":"Almería","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-2.22473","woe-name":"Andalucía","latitude":"37.1563","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[5066,3042],[4995,2937],[4926,2856],[4893,2717],[4852,2623],[4859,2583],[4772,2515],[4764,2472],[4717,2396],[4670,2354],[4605,2354],[4536,2430],[4469,2457],[4409,2435],[4368,2448],[4287,2428],[4254,2340],[4219,2304],[4136,2288],[4081,2323],[4058,2308],[3985,2362],[3939,2346],[3820,2355],[3810,2399],[3903,2459],[3870,2533],[3930,2592],[3913,2696],[3973,2743],[3986,2789],[4023,2813],[4043,2899],[4089,2908],[4130,2870],[4212,2849],[4206,2926],[4225,3030],[4351,3143],[4461,3180],[4445,3274],[4495,3285],[4489,3365],[4521,3435],[4513,3495],[4528,3560],[4579,3596],[4611,3576],[4769,3552],[4754,3465],[4759,3323],[4899,3116],[4989,3101],[5066,3042]]]}},{"type":"Feature","id":"ES.B","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.53,"hc-key":"es-b","hc-a2":"BA","labelrank":"3","hasc":"ES.CT","alt-name":null,"woe-id":"12602124","subregion":null,"fips":"SP86","postal-code":"B","name":"Barcelona","country":"Spain","type-en":"Autonomous Community","region":"Cataluña","longitude":"2.00777","woe-name":"Cataluña","latitude":"41.6575","woe-label":"Catalonia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[8454,7701],[8203,7567],[8144,7514],[8087,7485],[8045,7435],[7966,7306],[7913,7272],[7724,7221],[7572,7164],[7529,7206],[7553,7233],[7510,7344],[7436,7404],[7442,7457],[7378,7485],[7395,7557],[7365,7556],[7345,7584],[7397,7630],[7368,7693],[7366,7775],[7485,7767],[7537,7834],[7521,7904],[7556,8014],[7594,8218],[7560,8241],[7553,8293],[7574,8322],[7672,8347],[7727,8363],[7775,8341],[7828,8343],[7821,8269],[7858,8180],[7909,8165],[8026,8198],[8050,8167],[8095,8179],[8140,8131],[8171,8133],[8209,8086],[8165,8002],[8172,7937],[8126,7917],[8089,7933],[8077,7887],[8115,7839],[8173,7848],[8266,7766],[8386,7805],[8423,7794],[8454,7701]]]}},{"type":"Feature","id":"ES.CA","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.54,"hc-key":"es-ca","hc-a2":"CA","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602096","subregion":null,"fips":"SP80","postal-code":"CA","name":"Cádiz","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-5.82488","woe-name":"Andalucía","latitude":"36.4828","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[2008,1891],[1937,1777],[1932,1728],[1859,1770],[1839,1641],[1696,1591],[1681,1623],[1540,1678],[1438,1784],[1336,1792],[1281,1890],[1235,1916],[1131,2165],[1178,2096],[1224,2137],[1186,2136],[1179,2204],[1130,2249],[1045,2273],[1016,2394],[1080,2429],[1101,2463],[1100,2532],[1130,2555],[1191,2549],[1297,2498],[1478,2477],[1500,2535],[1552,2558],[1627,2556],[1669,2603],[1737,2556],[1791,2572],[1823,2678],[1876,2662],[1856,2611],[1876,2583],[1969,2651],[2049,2579],[2115,2635],[2153,2584],[2159,2518],[2122,2466],[2068,2451],[2011,2500],[1949,2465],[1980,2391],[1942,2282],[1851,2233],[1795,2173],[1724,2152],[1741,2104],[1852,2133],[1924,2037],[1952,1922],[1988,1934],[2008,1891]]]}},{"type":"Feature","id":"ES.O","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.46,"hc-key":"es-o","hc-a2":"AS","labelrank":"3","hasc":"ES.AS","alt-name":null,"woe-id":"12578027","subregion":null,"fips":"SP95","postal-code":"O","name":"Asturias","country":"Spain","type-en":"Autonomous Community","region":"Asturias","longitude":"-5.84196","woe-name":"Principado de Asturias","latitude":"43.3261","woe-label":"Asturias, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[762,9504],[800,9580],[978,9586],[1029,9572],[1072,9594],[1177,9557],[1328,9575],[1399,9601],[1433,9579],[1516,9570],[1552,9589],[1641,9587],[1642,9638],[1685,9665],[1738,9636],[1793,9563],[1857,9547],[2011,9550],[2037,9529],[2119,9519],[2199,9471],[2266,9466],[2355,9436],[2372,9448],[2461,9425],[2539,9390],[2709,9373],[2690,9315],[2701,9251],[2647,9263],[2608,9236],[2552,9229],[2530,9152],[2461,9149],[2403,9201],[2276,9135],[2239,9068],[2166,9054],[2051,9053],[2005,9012],[1963,9012],[1910,8982],[1814,9012],[1764,9005],[1725,8937],[1673,8935],[1590,8985],[1565,9033],[1495,9038],[1450,8999],[1400,9015],[1373,8988],[1273,9030],[1233,8982],[1185,8970],[1205,8926],[1116,8893],[994,8900],[953,8874],[909,8898],[904,8948],[823,9017],[789,9012],[825,9072],[914,9114],[890,9173],[829,9130],[814,9197],[750,9244],[736,9308],[666,9405],[673,9450],[710,9448],[762,9504]]]}},{"type":"Feature","id":"ES.CS","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.47,"hc-key":"es-cs","hc-a2":"CS","labelrank":"6","hasc":"ES.VC","alt-name":null,"woe-id":"12602138","subregion":null,"fips":"SP89","postal-code":"CS","name":"Castellón","country":"Spain","type-en":"Autonomous Community","region":"Valenciana","longitude":"-0.097511","woe-name":"Comunidad Valenciana","latitude":"40.222","woe-label":"Valencia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[6730,6416],[6602,6156],[6491,6031],[6446,5932],[6384,5879],[6333,5772],[6265,5681],[6187,5538],[6061,5619],[6011,5563],[5955,5542],[5908,5612],[5840,5557],[5817,5569],[5807,5651],[5778,5667],[5742,5633],[5696,5691],[5655,5762],[5665,5800],[5726,5865],[5832,5900],[5883,6080],[5965,6080],[6005,6109],[6004,6142],[6081,6219],[6044,6283],[6089,6331],[6072,6369],[6070,6472],[6005,6483],[6001,6527],[6059,6532],[6114,6568],[6121,6621],[6166,6659],[6241,6611],[6315,6609],[6338,6578],[6439,6619],[6476,6620],[6533,6573],[6540,6519],[6617,6493],[6675,6438],[6730,6416]]]}},{"type":"Feature","id":"ES.CR","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.53,"hc-key":"es-cr","hc-a2":"CR","labelrank":"3","hasc":"ES.CM","alt-name":null,"woe-id":"12602111","subregion":null,"fips":"SP84","postal-code":"CR","name":"Ciudad Real","country":"Spain","type-en":"Autonomous Community","region":"Castilla-La Mancha","longitude":"-3.74727","woe-name":"Castilla-La Mancha","latitude":"38.8936","woe-label":"Castille la Mancha, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3963,5228],[4014,5143],[4004,5101],[4046,5106],[4080,5151],[4119,5068],[4136,5016],[4039,4873],[4068,4789],[4010,4674],[4018,4639],[4076,4635],[4107,4607],[4119,4534],[4175,4498],[4206,4425],[4178,4349],[4138,4337],[4108,4283],[4116,4241],[4015,4163],[3956,4177],[3914,4130],[3857,4185],[3821,4158],[3716,4164],[3660,4183],[3615,4174],[3587,4125],[3546,4103],[3485,4110],[3464,4148],[3401,4098],[3257,4124],[3174,4077],[2939,4087],[2867,4099],[2858,4046],[2713,4095],[2658,4158],[2581,4202],[2485,4291],[2402,4317],[2358,4403],[2306,4403],[2232,4451],[2264,4458],[2336,4611],[2388,4615],[2392,4678],[2337,4693],[2305,4784],[2368,4769],[2403,4785],[2377,4847],[2394,4909],[2428,4944],[2493,4940],[2549,4916],[2507,4971],[2470,5067],[2508,5096],[2536,5173],[2524,5207],[2585,5211],[2639,5300],[2673,5309],[2702,5243],[2742,5267],[2893,5233],[2933,5254],[2961,5337],[3057,5335],[3029,5279],[3041,5228],[2994,5211],[2975,5107],[3030,5114],[3113,5100],[3117,5043],[3219,5002],[3269,5039],[3306,5012],[3352,5039],[3453,5044],[3518,5090],[3523,5121],[3581,5155],[3640,5161],[3667,5225],[3756,5229],[3790,5252],[3850,5204],[3925,5199],[3963,5228]]],[[[2318,5148],[2357,5280],[2387,5320],[2458,5281],[2484,5237],[2475,5174],[2370,5121],[2318,5148]]]]}},{"type":"Feature","id":"ES.J","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.47,"hc-key":"es-j","hc-a2":"JA","labelrank":"3","hasc":"ES.AN","alt-name":null,"woe-id":"12602101","subregion":null,"fips":"SP80","postal-code":"J","name":"Jaén","country":"Spain","type-en":"Autonomous Community","region":"Andalucía","longitude":"-3.43703","woe-name":"Andalucía","latitude":"37.9829","woe-label":"Andalusia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[4295,3766],[4249,3746],[4254,3686],[4194,3639],[4169,3651],[4098,3586],[4013,3440],[4003,3325],[3942,3290],[3936,3257],[3879,3269],[3846,3251],[3765,3292],[3711,3289],[3658,3231],[3566,3220],[3497,3268],[3396,3179],[3349,3167],[3258,3112],[3216,3028],[3124,3020],[3082,3045],[3051,3102],[3010,3134],[2991,3189],[2905,3282],[2940,3357],[2900,3377],[2891,3439],[2847,3487],[2867,3638],[2848,3680],[2925,3810],[2946,3866],[2921,3902],[2886,4032],[2858,4046],[2867,4099],[2939,4087],[3174,4077],[3257,4124],[3401,4098],[3464,4148],[3485,4110],[3546,4103],[3587,4125],[3615,4174],[3660,4183],[3716,4164],[3821,4158],[3857,4185],[3914,4130],[3956,4177],[4015,4163],[4116,4241],[4184,4207],[4269,4208],[4268,4138],[4339,4102],[4355,3996],[4390,3955],[4379,3880],[4295,3766]]]}},{"type":"Feature","id":"ES.LU","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.61,"hc-key":"es-lu","hc-a2":"LU","labelrank":"3","hasc":"ES.GA","alt-name":null,"woe-id":"12602131","subregion":null,"fips":"SP91","postal-code":"LU","name":"Lugo","country":"Spain","type-en":"Autonomous Community","region":"Galicia","longitude":"-7.44266","woe-name":"Galicia","latitude":"42.9467","woe-label":"Galicia, ES, Spain","type":"Comunidad Autónoma"},"geometry":{"type":"Polygon","coordinates":[[[909,8898],[883,8856],[878,8786],[834,8734],[743,8683],[754,8614],[705,8471],[639,8393],[595,8287],[557,8374],[431,8407],[349,8371],[274,8381],[200,8436],[171,8438],[88,8497],[61,8500],[38,8578],[70,8637],[84,8728],[11,8794],[25,8858],[-2,8866],[71,8955],[77,9009],[59,9078],[68,9120],[45,9224],[74,9292],[73,9339],[108,9381],[117,9451],[152,9443],[197,9491],[227,9566],[223,9611],[275,9786],[319,9806],[342,9740],[394,9781],[433,9773],[525,9721],[570,9633],[625,9599],[741,9594],[776,9577],[762,9504],[710,9448],[673,9450],[666,9405],[736,9308],[750,9244],[814,9197],[829,9130],[890,9173],[914,9114],[825,9072],[789,9012],[823,9017],[904,8948],[909,8898]]]}},{"type":"Feature","id":"ES.TF","properties":{"hc-group":"admin1","hc-middle-x":0.75,"hc-middle-y":0.65,"hc-key":"es-tf","hc-a2":"TF","labelrank":"20","hasc":"ES.CN","alt-name":null,"woe-id":"12602109","subregion":null,"fips":null,"postal-code":"TF","name":"Santa Cruz de Tenerife","country":"Spain","type-en":"Autonomous Community","region":"Canary Is.","longitude":"-16.6144","woe-name":"Santa Cruz de Tenerife","latitude":"28.2566","woe-label":null,"type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6869,2391],[6848,2368],[6846,2360],[6845,2357],[6838,2355],[6835,2350],[6828,2345],[6826,2341],[6823,2331],[6819,2326],[6813,2327],[6805,2333],[6800,2341],[6797,2348],[6793,2353],[6763,2362],[6756,2367],[6751,2374],[6751,2391],[6763,2394],[6780,2390],[6796,2383],[6803,2386],[6821,2399],[6825,2403],[6826,2407],[6828,2409],[6837,2412],[6853,2419],[6861,2416],[6867,2411],[6872,2404],[6872,2398],[6869,2391]]],[[[7161,2452],[7150,2450],[7140,2454],[7121,2471],[7111,2493],[7113,2510],[7118,2527],[7132,2541],[7153,2543],[7171,2535],[7187,2521],[7207,2501],[7210,2490],[7211,2480],[7203,2471],[7194,2467],[7180,2458],[7171,2453],[7161,2452]]],[[[7640,2637],[7634,2625],[7621,2618],[7588,2606],[7580,2594],[7557,2577],[7545,2569],[7537,2567],[7531,2564],[7526,2556],[7524,2546],[7526,2533],[7524,2529],[7515,2522],[7511,2512],[7494,2489],[7488,2470],[7486,2462],[7472,2448],[7442,2425],[7430,2411],[7417,2416],[7375,2406],[7369,2409],[7365,2416],[7365,2420],[7366,2425],[7360,2431],[7359,2435],[7360,2447],[7355,2455],[7342,2473],[7339,2480],[7338,2491],[7333,2499],[7327,2506],[7324,2513],[7324,2534],[7324,2538],[7319,2548],[7316,2559],[7305,2575],[7302,2585],[7313,2590],[7336,2597],[7344,2592],[7352,2584],[7362,2581],[7374,2583],[7384,2586],[7407,2591],[7415,2588],[7439,2586],[7449,2591],[7459,2591],[7464,2592],[7472,2592],[7481,2597],[7512,2618],[7515,2621],[7519,2630],[7538,2638],[7548,2639],[7556,2641],[7559,2649],[7566,2645],[7605,2639],[7631,2644],[7640,2637]]],[[[6953,2866],[6963,2862],[6980,2866],[6987,2862],[6993,2855],[6996,2849],[6994,2840],[6995,2829],[6997,2820],[7004,2815],[7003,2807],[6989,2795],[6982,2785],[6986,2759],[6981,2751],[6977,2739],[6965,2728],[6954,2711],[6944,2697],[6939,2688],[6937,2688],[6935,2693],[6927,2699],[6925,2709],[6926,2732],[6922,2738],[6920,2746],[6914,2758],[6913,2769],[6902,2795],[6902,2807],[6901,2822],[6895,2828],[6892,2834],[6896,2847],[6909,2861],[6925,2871],[6936,2876],[6944,2869],[6953,2866]]]]}},{"type":"Feature","id":"ES.GC","properties":{"hc-group":"admin1","hc-middle-x":0.73,"hc-middle-y":0.63,"hc-key":"es-gc","hc-a2":"GC","labelrank":"20","hasc":"ES.CN","alt-name":null,"woe-id":"12602108","subregion":null,"fips":null,"postal-code":"GC","name":"Las Palmas","country":"Spain","type-en":"Autonomous Community","region":"Canary Is.","longitude":"-15.6013","woe-name":"Palmas","latitude":"27.9463","woe-label":null,"type":"Comunidad Autónoma"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7898,2401],[7896,2389],[7896,2370],[7898,2355],[7901,2349],[7910,2341],[7911,2338],[7909,2330],[7904,2323],[7902,2314],[7907,2306],[7906,2303],[7902,2302],[7898,2298],[7893,2289],[7896,2282],[7897,2273],[7896,2266],[7888,2264],[7883,2261],[7867,2247],[7861,2242],[7831,2237],[7824,2235],[7812,2224],[7806,2223],[7795,2232],[7778,2235],[7770,2238],[7764,2242],[7745,2264],[7741,2272],[7733,2278],[7728,2285],[7720,2313],[7719,2322],[7722,2331],[7721,2337],[7721,2344],[7723,2351],[7726,2356],[7730,2360],[7747,2366],[7755,2371],[7766,2379],[7775,2390],[7774,2401],[7779,2405],[7782,2413],[7783,2422],[7781,2429],[7790,2428],[7797,2423],[7803,2424],[7824,2414],[7855,2410],[7880,2400],[7890,2402],[7890,2418],[7903,2418],[7904,2417],[7905,2411],[7905,2407],[7901,2406],[7898,2401]]],[[[8374,2335],[8361,2322],[8348,2310],[8330,2304],[8319,2305],[8304,2315],[8296,2318],[8269,2319],[8264,2322],[8266,2323],[8270,2334],[8273,2336],[8286,2332],[8294,2332],[8310,2335],[8335,2343],[8366,2358],[8380,2369],[8387,2376],[8393,2383],[8396,2391],[8401,2414],[8406,2422],[8416,2435],[8430,2466],[8433,2471],[8439,2474],[8453,2493],[8465,2514],[8484,2536],[8491,2558],[8499,2572],[8503,2588],[8505,2594],[8510,2598],[8517,2601],[8533,2606],[8548,2606],[8562,2600],[8572,2586],[8575,2570],[8574,2549],[8566,2510],[8562,2501],[8553,2484],[8551,2478],[8549,2463],[8549,2458],[8552,2448],[8553,2444],[8550,2440],[8542,2434],[8540,2432],[8538,2423],[8537,2419],[8529,2410],[8524,2403],[8518,2388],[8507,2373],[8493,2368],[8449,2366],[8429,2362],[8415,2354],[8398,2352],[8389,2348],[8374,2335]]],[[[8746,2767],[8744,2760],[8746,2747],[8746,2738],[8745,2735],[8739,2726],[8737,2710],[8730,2700],[8717,2691],[8703,2685],[8683,2683],[8675,2675],[8670,2674],[8664,2674],[8654,2673],[8648,2673],[8633,2671],[8622,2664],[8612,2653],[8603,2640],[8601,2640],[8597,2647],[8589,2650],[8570,2653],[8567,2656],[8565,2661],[8565,2667],[8566,2669],[8571,2670],[8575,2673],[8580,2681],[8582,2688],[8586,2710],[8588,2716],[8604,2737],[8612,2744],[8618,2747],[8625,2749],[8633,2750],[8642,2750],[8650,2751],[8665,2761],[8674,2765],[8681,2767],[8688,2767],[8708,2765],[8714,2766],[8719,2771],[8726,2782],[8732,2797],[8736,2804],[8741,2810],[8749,2811],[8756,2806],[8766,2793],[8761,2784],[8759,2777],[8755,2771],[8746,2767]]],[[[8738,2812],[8727,2806],[8717,2808],[8718,2812],[8725,2818],[8729,2827],[8734,2834],[8742,2831],[8745,2822],[8738,2812]]]]}},{"type":"Feature","properties":{"hc-group":"__separator_lines__"},"geometry":{"type":"LineString","coordinates":[[6385,2187],[6794,3142],[8989,3142]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/fr-all.geo.json
const fr_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"France","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:2192"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=46.8 +lat_0=46.8 +lon_0=2.337229166666667 +k_0=0.99987742 +x_0=600000 +y_0=2200000 +ellps=intl +towgs84=-87,-98,-121,0,0,0,0 +units=m +no_defs","scale":0.000622615258227,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":73587.9424903,"yoffset":2677333.42515},"fr-all-reunion":{"xpan":150,"ypan":630,"hitZone":{"type":"Polygon","coordinates":[[[904,253],[2390,253],[2390,-999],[904,-999],[904,253]]]},"crs":"+proj=utm +zone=40 +south +datum=WGS84 +units=m +no_defs","scale":0.000763557633794,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":315585.929084,"yoffset":7692417.85149},"fr-all-mayotte":{"xpan":240,"ypan":630,"hitZone":{"type":"Polygon","coordinates":[[[2390,253],[3530,253],[3530,-999],[2390,-999],[2390,253]]]},"crs":"+proj=utm +zone=38 +south +datum=WGS84 +units=m +no_defs","scale":0.00132206425115,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":504613.291438,"yoffset":8601873.46699},"fr-all-guyana":{"xpan":310,"ypan":630,"hitZone":{"type":"Polygon","coordinates":[[[3530,253],[4745,253],[4745,-999],[3530,-999],[3530,253]]]},"crs":"+proj=utm +zone=22 +datum=WGS84 +units=m +no_defs","scale":0.000124325372918,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":97769.9054769,"yoffset":635816.081323},"fr-all-martinique":{"xpan":390,"ypan":630,"hitZone":{"type":"Polygon","coordinates":[[[4745,253],[6000,253],[6000,-999],[4745,-999],[4745,253]]]},"crs":"+proj=utm +zone=20 +datum=WGS84 +units=m +no_defs","scale":0.000968530558841,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":690597.139078,"yoffset":1645548.31731},"fr-all-guadeloupe":{"xpan":470,"ypan":630,"hitZone":{"type":"Polygon","coordinates":[[[6000,253],[7464,253],[7464,-999],[6000,-999],[6000,253]]]},"crs":"+proj=utm +zone=20 +datum=WGS84 +units=m +no_defs","scale":0.000579103792655,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":628456.113255,"yoffset":1826317.58275}},"features":[{"type":"Feature","id":"FR.COR","properties":{"hc-group":"admin1","hc-key":"fr-cor","hc-a2":"CO","name":"Corse","iso_3166_2":"FR-COR","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[9750,197],[9770,33],[9734,-64],[9689,-61],[9734,-118],[9676,-165],[9687,-231],[9658,-338],[9553,-314],[9570,-278],[9468,-235],[9415,-233],[9344,-180],[9293,-165],[9294,-81],[9350,-63],[9386,-13],[9277,-3],[9271,29],[9201,9],[9205,90],[9264,117],[9272,199],[9222,230],[9121,187],[9092,259],[9147,274],[9166,326],[9211,349],[9171,416],[9078,435],[9081,480],[9040,549],[9147,600],[9039,662],[9030,704],[9105,750],[9111,843],[9145,903],[9189,902],[9218,949],[9289,991],[9376,1017],[9439,1104],[9542,1109],[9590,1062],[9623,1145],[9585,1239],[9619,1339],[9599,1404],[9660,1438],[9689,1383],[9726,1244],[9711,1110],[9726,1001],[9792,940],[9809,757],[9839,674],[9851,479],[9747,297],[9750,197]]]}},{"type":"Feature","id":"FR.BRE","properties":{"hc-group":"admin1","hc-key":"fr-bre","hc-a2":"BR","name":"Bretagne","iso_3166_2":"FR-BRE","hc-middle-x":0.57,"hc-middle-y":0.5},"geometry":{"type":"MultiPolygon","coordinates":[[[[109,5954],[141,5920],[65,5924],[16,5948],[15,6029],[109,5954]]],[[[592,6052],[568,6133],[436,6117],[337,6118],[274,6186],[396,6171],[438,6225],[376,6256],[255,6234],[252,6190],[215,6230],[157,6214],[131,6240],[116,6155],[142,6109],[107,6111],[109,6240],[72,6281],[83,6331],[139,6352],[122,6405],[54,6307],[-9,6367],[-39,6372],[22,6450],[-103,6370],[-156,6455],[-220,6459],[-294,6502],[-333,6483],[-388,6496],[-440,6593],[-516,6564],[-564,6595],[-657,6519],[-762,6533],[-739,6591],[-792,6717],[-858,6777],[-996,6805],[-962,6831],[-727,6862],[-676,6850],[-677,6945],[-783,7011],[-842,6945],[-850,7031],[-902,7040],[-839,7075],[-739,7050],[-585,7049],[-617,7075],[-681,7080],[-638,7121],[-738,7100],[-771,7109],[-697,7178],[-746,7174],[-888,7127],[-938,7147],[-986,7129],[-999,7211],[-986,7290],[-941,7369],[-883,7378],[-823,7424],[-710,7429],[-662,7463],[-639,7421],[-510,7473],[-396,7499],[-388,7418],[-356,7441],[-318,7382],[-280,7491],[-162,7433],[-114,7429],[-117,7478],[-79,7482],[-113,7540],[-62,7591],[38,7563],[119,7584],[142,7609],[153,7548],[201,7594],[240,7601],[247,7554],[288,7550],[269,7516],[344,7482],[332,7446],[412,7359],[417,7296],[485,7250],[469,7223],[504,7194],[584,7268],[779,7368],[800,7357],[762,7307],[820,7326],[842,7251],[895,7307],[961,7318],[1008,7192],[1035,7189],[977,7310],[1017,7359],[1113,7376],[1112,7281],[1193,7268],[1289,7292],[1327,7170],[1381,7098],[1428,7101],[1514,7167],[1646,7121],[1644,6927],[1619,6874],[1637,6773],[1633,6683],[1650,6587],[1557,6547],[1488,6357],[1416,6372],[1338,6410],[1241,6363],[1171,6305],[1082,6282],[1039,6295],[880,6247],[853,6133],[793,6071],[778,6100],[711,6098],[685,6059],[592,6052]]]]}},{"type":"Feature","id":"FR.PDL","properties":{"hc-group":"admin1","hc-key":"fr-pdl","hc-a2":"PD","name":"Pays de la Loire","iso_3166_2":"FR-PDL","hc-middle-x":0.5,"hc-middle-y":0.55},"geometry":{"type":"MultiPolygon","coordinates":[[[[760,5531],[792,5508],[779,5465],[755,5515],[717,5520],[686,5596],[756,5582],[760,5531]]],[[[1514,4777],[1471,4796],[1442,4746],[1330,4832],[1271,4823],[1233,4907],[1144,4924],[1016,5008],[984,5152],[949,5214],[909,5236],[851,5327],[803,5360],[797,5416],[822,5478],[862,5504],[909,5604],[841,5675],[733,5710],[790,5734],[807,5854],[892,5863],[955,5845],[1073,5766],[987,5859],[912,5891],[811,5889],[712,5823],[647,5870],[589,5852],[601,5895],[519,5982],[579,6013],[641,6018],[592,6052],[685,6059],[711,6098],[778,6100],[793,6071],[853,6133],[880,6247],[1039,6295],[1082,6282],[1171,6305],[1241,6363],[1338,6410],[1416,6372],[1488,6357],[1557,6547],[1650,6587],[1633,6683],[1637,6773],[1619,6874],[1644,6927],[1646,7121],[1800,7118],[1836,7062],[1875,7050],[1940,7081],[2018,7074],[2058,7108],[2163,7094],[2238,7129],[2251,7165],[2294,7147],[2304,7087],[2372,7022],[2373,6967],[2445,6963],[2551,7048],[2614,7061],[2678,7032],[2689,6908],[2756,6878],[2766,6839],[2885,6812],[2926,6754],[2978,6743],[3059,6694],[3000,6654],[2974,6602],[3004,6573],[3003,6495],[2958,6444],[2931,6317],[2851,6266],[2832,6199],[2714,6144],[2666,6147],[2655,6100],[2562,6127],[2544,6020],[2508,5887],[2449,5791],[2421,5649],[2369,5654],[2331,5590],[2282,5550],[2237,5598],[2094,5589],[1962,5564],[1965,5526],[1903,5493],[1752,5496],[1682,5528],[1752,5420],[1772,5350],[1837,5291],[1831,5237],[1868,5162],[1897,5016],[1878,4981],[1879,4883],[1935,4823],[1869,4782],[1783,4756],[1733,4790],[1646,4782],[1627,4828],[1544,4810],[1514,4777]]]]}},{"type":"Feature","id":"FR.PAC","properties":{"hc-group":"admin1","hc-key":"fr-pac","hc-a2":"PA","name":"Provence-Alpes-Côte-d\'Azur","iso_3166_2":"FR-PAC","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"MultiPolygon","coordinates":[[[[6119,2611],[6054,2609],[6046,2655],[6082,2722],[6124,2730],[6165,2672],[6119,2611]]],[[[7340,3536],[7321,3514],[7371,3437],[7418,3422],[7427,3332],[7468,3290],[7536,3259],[7587,3269],[7646,3230],[7641,3199],[7691,3085],[7636,3089],[7611,3016],[7540,2928],[7537,2880],[7602,2812],[7566,2741],[7675,2603],[7703,2610],[7877,2532],[7979,2499],[8187,2569],[8179,2534],[8222,2473],[8181,2373],[8128,2316],[8072,2228],[8096,2150],[8049,2095],[7999,2094],[7970,2028],[7913,2030],[7874,1977],[7833,1986],[7816,1932],[7830,1877],[7789,1891],[7751,1853],[7703,1862],[7666,1754],[7621,1716],[7520,1702],[7513,1640],[7423,1563],[7503,1548],[7493,1478],[7439,1445],[7384,1452],[7359,1417],[7260,1396],[7260,1347],[7184,1373],[7093,1340],[7087,1292],[7051,1330],[6986,1320],[6916,1377],[6868,1360],[6919,1309],[6854,1278],[6794,1312],[6821,1335],[6723,1382],[6673,1423],[6657,1394],[6596,1442],[6446,1445],[6461,1504],[6435,1572],[6399,1593],[6356,1562],[6220,1557],[6172,1613],[6211,1658],[6302,1668],[6337,1750],[6293,1726],[6244,1778],[6184,1804],[6170,1759],[6214,1690],[6188,1652],[6109,1674],[6037,1609],[6028,1570],[5907,1568],[5828,1591],[5837,1655],[5784,1681],[5703,1670],[5559,1678],[5575,1724],[5730,1821],[5714,1860],[5766,1949],[5848,1941],[5878,2048],[5871,2129],[5997,2221],[6028,2286],[5970,2361],[5933,2362],[5923,2474],[5871,2570],[5869,2619],[5936,2620],[5989,2539],[6174,2596],[6269,2600],[6262,2546],[6430,2504],[6442,2469],[6532,2422],[6594,2485],[6661,2464],[6663,2575],[6614,2620],[6485,2687],[6459,2744],[6508,2745],[6490,2815],[6579,2799],[6631,2847],[6591,2890],[6625,2984],[6728,3003],[6763,3106],[6859,3139],[6858,3173],[6975,3229],[7148,3241],[7155,3299],[7117,3391],[7041,3395],[7048,3501],[7135,3508],[7215,3454],[7259,3511],[7340,3536]]]]}},{"type":"Feature","id":"FR.OCC","properties":{"hc-group":"admin1","hc-key":"fr-occ","hc-a2":"OC","name":"Occitanie","iso_3166_2":"FR-OCC","hc-middle-x":0.4,"hc-middle-y":0.5},"geometry":{"type":"MultiPolygon","coordinates":[[[[2182,1549],[2161,1572],[2174,1611],[2201,1591],[2182,1549]]],[[[2163,1464],[2142,1476],[2160,1526],[2185,1489],[2163,1464]]],[[[3870,3288],[3896,3171],[3945,3073],[3925,2992],[3963,2919],[4054,2959],[4089,2941],[4172,2952],[4235,3025],[4278,3138],[4379,3246],[4422,3167],[4451,3173],[4518,3055],[4533,2985],[4575,2935],[4605,3003],[4623,3094],[4664,3190],[4705,3178],[4773,3235],[4876,3274],[4939,3145],[4965,3124],[5030,3143],[5038,3178],[5087,3183],[5093,3142],[5152,3127],[5256,3059],[5253,3028],[5297,2877],[5332,2829],[5355,2746],[5399,2689],[5397,2611],[5463,2613],[5558,2562],[5620,2616],[5668,2615],[5678,2577],[5721,2624],[5764,2626],[5871,2570],[5923,2474],[5933,2362],[5970,2361],[6028,2286],[5997,2221],[5871,2129],[5878,2048],[5848,1941],[5766,1949],[5714,1860],[5730,1821],[5575,1724],[5559,1678],[5486,1707],[5463,1776],[5373,1773],[5334,1752],[5180,1621],[5089,1579],[5005,1477],[4904,1478],[4795,1408],[4693,1285],[4636,1109],[4650,1071],[4637,830],[4650,692],[4718,660],[4754,560],[4662,560],[4633,596],[4557,600],[4425,534],[4363,530],[4324,494],[4341,458],[4250,472],[4184,459],[4150,505],[4034,554],[3923,541],[3854,472],[3784,488],[3756,563],[3581,635],[3628,700],[3594,750],[3504,760],[3452,794],[3391,786],[3361,737],[3275,865],[3129,870],[3078,935],[2961,946],[2877,998],[2753,1008],[2733,908],[2739,843],[2538,849],[2511,884],[2447,833],[2419,879],[2365,897],[2198,858],[2136,894],[2105,979],[2047,971],[1993,1021],[1987,1097],[2010,1189],[2095,1249],[2092,1298],[2182,1382],[2227,1468],[2228,1529],[2268,1559],[2260,1648],[2215,1648],[2241,1688],[2219,1757],[2172,1815],[2074,1831],[2051,1871],[2111,1993],[2123,2103],[2094,2157],[2139,2198],[2191,2194],[2252,2238],[2262,2187],[2311,2167],[2361,2245],[2392,2232],[2444,2283],[2515,2261],[2634,2319],[2732,2335],[2783,2296],[2847,2326],[2909,2413],[2967,2412],[3008,2551],[2964,2587],[2991,2658],[3092,2644],[3066,2838],[3158,2909],[3192,2970],[3279,3017],[3331,3112],[3396,3194],[3391,3319],[3468,3366],[3529,3348],[3608,3274],[3672,3244],[3755,3282],[3870,3288]]]]}},{"type":"Feature","id":"FR.NAQ","properties":{"hc-group":"admin1","hc-key":"fr-naq","hc-a2":"NA","name":"Nouvelle-Aquitaine","iso_3166_2":"FR-NAQ","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"MultiPolygon","coordinates":[[[[1375,4452],[1413,4439],[1417,4378],[1452,4338],[1423,4248],[1388,4322],[1304,4427],[1288,4511],[1375,4452]]],[[[1252,4724],[1233,4698],[1368,4672],[1406,4623],[1345,4631],[1276,4681],[1222,4680],[1186,4729],[1252,4724]]],[[[3870,3288],[3755,3282],[3672,3244],[3608,3274],[3529,3348],[3468,3366],[3391,3319],[3396,3194],[3331,3112],[3279,3017],[3192,2970],[3158,2909],[3066,2838],[3092,2644],[2991,2658],[2964,2587],[3008,2551],[2967,2412],[2909,2413],[2847,2326],[2783,2296],[2732,2335],[2634,2319],[2515,2261],[2444,2283],[2392,2232],[2361,2245],[2311,2167],[2262,2187],[2252,2238],[2191,2194],[2139,2198],[2094,2157],[2123,2103],[2111,1993],[2051,1871],[2074,1831],[2172,1815],[2219,1757],[2241,1688],[2215,1648],[2260,1648],[2268,1559],[2228,1529],[2227,1468],[2182,1382],[2092,1298],[2095,1249],[2010,1189],[1987,1097],[1993,1021],[1979,1034],[1897,981],[1811,1003],[1772,991],[1722,1051],[1659,1083],[1638,1158],[1464,1177],[1428,1210],[1334,1235],[1237,1283],[1182,1336],[1151,1268],[1071,1329],[1123,1384],[1146,1499],[1026,1549],[962,1521],[937,1575],[879,1564],[843,1619],[848,1667],[953,1677],[1005,1720],[1106,1863],[1230,2329],[1294,2630],[1330,2846],[1325,2901],[1385,3016],[1493,3016],[1480,3068],[1406,3137],[1351,3062],[1326,2978],[1397,3505],[1436,3673],[1459,3898],[1504,3981],[1522,3935],[1627,3849],[1734,3711],[1762,3516],[1787,3441],[1851,3383],[1910,3386],[1821,3436],[1800,3499],[1779,3705],[1748,3815],[1685,3915],[1582,3997],[1577,4022],[1429,4136],[1389,4138],[1406,4225],[1471,4237],[1533,4164],[1585,4137],[1485,4238],[1468,4304],[1529,4340],[1535,4404],[1506,4464],[1544,4459],[1520,4552],[1483,4609],[1446,4617],[1465,4692],[1518,4722],[1514,4777],[1544,4810],[1627,4828],[1646,4782],[1733,4790],[1783,4756],[1869,4782],[1935,4823],[1879,4883],[1878,4981],[1897,5016],[1868,5162],[1831,5237],[1837,5291],[1772,5350],[1752,5420],[1682,5528],[1752,5496],[1903,5493],[1965,5526],[1962,5564],[2094,5589],[2237,5598],[2282,5550],[2331,5590],[2369,5654],[2421,5649],[2438,5614],[2511,5591],[2515,5541],[2593,5525],[2592,5427],[2684,5405],[2779,5425],[2796,5476],[2859,5437],[2888,5365],[2973,5234],[3018,5190],[3032,5057],[3121,4969],[3167,4968],[3202,4931],[3196,4892],[3235,4853],[3221,4809],[3253,4789],[3338,4818],[3397,4768],[3469,4832],[3526,4830],[3544,4802],[3643,4821],[3656,4872],[3707,4840],[3744,4858],[3908,4834],[4020,4838],[4078,4740],[4184,4679],[4253,4533],[4251,4463],[4275,4357],[4205,4248],[4130,4204],[4162,4127],[4223,4063],[4221,4011],[4178,3942],[4219,3829],[4197,3741],[4123,3758],[4090,3679],[3974,3555],[3983,3486],[3954,3416],[3912,3378],[3926,3307],[3870,3288]],[[2182,1549],[2201,1591],[2174,1611],[2161,1572],[2182,1549]],[[2163,1464],[2185,1489],[2160,1526],[2142,1476],[2163,1464]]]]}},{"type":"Feature","id":"FR.BFC","properties":{"hc-group":"admin1","hc-key":"fr-bfc","hc-a2":"BF","name":"Bourgogne-Franche-Comté","iso_3166_2":"FR-BFC","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[7574,6090],[7477,6097],[7467,6045],[7421,6013],[7382,5935],[7482,5956],[7513,5928],[7453,5871],[7455,5822],[7261,5615],[7256,5570],[7209,5530],[7097,5479],[7097,5282],[6982,5190],[6887,5094],[6899,5047],[6843,4958],[6842,4900],[6717,4742],[6605,4733],[6541,4808],[6442,4715],[6409,4777],[6338,4818],[6295,4867],[6286,4918],[6186,4968],[6102,4951],[6008,4957],[5965,4780],[5928,4693],[5915,4600],[5857,4617],[5843,4679],[5792,4733],[5769,4694],[5622,4719],[5606,4648],[5536,4591],[5368,4608],[5306,4591],[5244,4628],[5234,4695],[5317,4751],[5299,4896],[5121,4986],[5121,5051],[5011,5192],[4985,5125],[4912,5092],[4891,5150],[4843,5128],[4760,5143],[4731,5128],[4609,5195],[4592,5238],[4624,5323],[4609,5369],[4624,5435],[4618,5511],[4546,5748],[4474,5823],[4514,5948],[4461,6045],[4541,6071],[4500,6188],[4444,6229],[4442,6265],[4561,6322],[4555,6427],[4621,6481],[4640,6563],[4591,6617],[4564,6687],[4505,6702],[4520,6755],[4578,6823],[4568,6879],[4586,6924],[4810,6939],[4838,6980],[4857,6935],[4930,6903],[4992,6817],[4975,6734],[5046,6694],[5073,6716],[5207,6530],[5215,6479],[5308,6463],[5330,6480],[5427,6484],[5437,6520],[5489,6469],[5516,6493],[5671,6518],[5718,6573],[5782,6582],[5851,6557],[5927,6467],[5999,6352],[5958,6321],[5990,6236],[6035,6249],[6070,6203],[6133,6222],[6214,6134],[6283,6147],[6316,6224],[6374,6238],[6437,6215],[6518,6256],[6523,6385],[6597,6442],[6688,6571],[6701,6530],[6770,6602],[6825,6601],[6898,6530],[6990,6557],[7083,6510],[7139,6517],[7164,6554],[7367,6404],[7493,6330],[7491,6201],[7522,6198],[7576,6138],[7574,6090]]]}},{"type":"Feature","id":"FR.CVL","properties":{"hc-group":"admin1","hc-key":"fr-cvl","hc-a2":"CV","name":"Centre-Val de Loire","iso_3166_2":"FR-CVL","hc-middle-x":0.5,"hc-middle-y":0.45},"geometry":{"type":"Polygon","coordinates":[[[2421,5649],[2449,5791],[2508,5887],[2544,6020],[2562,6127],[2655,6100],[2666,6147],[2714,6144],[2832,6199],[2851,6266],[2931,6317],[2958,6444],[3003,6495],[3004,6573],[2974,6602],[3000,6654],[3059,6694],[2978,6743],[2999,6768],[2978,6816],[2974,6903],[3050,6928],[3112,7006],[3090,7103],[3023,7169],[3001,7257],[3041,7293],[3139,7315],[3208,7371],[3316,7345],[3377,7383],[3398,7429],[3455,7471],[3456,7527],[3485,7545],[3539,7443],[3535,7381],[3563,7341],[3541,7291],[3582,7225],[3662,7138],[3699,7036],[3784,7011],[3786,6977],[3840,6877],[3832,6831],[3936,6854],[3989,6897],[4024,6861],[4067,6885],[4127,6871],[4154,6801],[4209,6755],[4197,6697],[4163,6677],[4332,6665],[4406,6706],[4433,6675],[4505,6702],[4564,6687],[4591,6617],[4640,6563],[4621,6481],[4555,6427],[4561,6322],[4442,6265],[4444,6229],[4500,6188],[4541,6071],[4461,6045],[4514,5948],[4474,5823],[4546,5748],[4618,5511],[4624,5435],[4609,5369],[4624,5323],[4592,5238],[4520,5229],[4452,5167],[4403,5153],[4366,5176],[4291,5097],[4259,5091],[4287,4977],[4128,4947],[4048,4890],[4020,4838],[3908,4834],[3744,4858],[3707,4840],[3656,4872],[3643,4821],[3544,4802],[3526,4830],[3469,4832],[3397,4768],[3338,4818],[3253,4789],[3221,4809],[3235,4853],[3196,4892],[3202,4931],[3167,4968],[3121,4969],[3032,5057],[3018,5190],[2973,5234],[2888,5365],[2859,5437],[2796,5476],[2779,5425],[2684,5405],[2592,5427],[2593,5525],[2515,5541],[2511,5591],[2438,5614],[2421,5649]]]}},{"type":"Feature","id":"FR.IDF","properties":{"hc-group":"admin1","hc-key":"fr-idf","hc-a2":"ÎD","name":"Île-de-France","iso_3166_2":"FR-IDF","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[4838,6980],[4810,6939],[4586,6924],[4568,6879],[4578,6823],[4520,6755],[4505,6702],[4433,6675],[4406,6706],[4332,6665],[4163,6677],[4197,6697],[4209,6755],[4154,6801],[4127,6871],[4067,6885],[4024,6861],[3989,6897],[3936,6854],[3832,6831],[3840,6877],[3786,6977],[3784,7011],[3699,7036],[3662,7138],[3582,7225],[3541,7291],[3563,7341],[3535,7381],[3539,7443],[3485,7545],[3460,7590],[3459,7662],[3576,7697],[3632,7856],[3660,7812],[3764,7788],[3846,7803],[3902,7833],[4012,7782],[4080,7796],[4256,7698],[4286,7712],[4370,7680],[4398,7699],[4535,7692],[4606,7723],[4649,7709],[4675,7614],[4778,7525],[4803,7530],[4848,7454],[4890,7451],[4842,7411],[4836,7343],[4873,7316],[4886,7224],[4937,7198],[4876,7111],[4848,7104],[4838,6980]]]}},{"type":"Feature","id":"FR.HDF","properties":{"hc-group":"admin1","hc-key":"fr-hdf","hc-a2":"HD","name":"Hauts-de-France","iso_3166_2":"FR-HDF","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[4890,7451],[4848,7454],[4803,7530],[4778,7525],[4675,7614],[4649,7709],[4606,7723],[4535,7692],[4398,7699],[4370,7680],[4286,7712],[4256,7698],[4080,7796],[4012,7782],[3902,7833],[3846,7803],[3764,7788],[3660,7812],[3632,7856],[3652,7899],[3693,7878],[3650,8019],[3647,8063],[3679,8154],[3645,8156],[3624,8301],[3651,8322],[3628,8371],[3676,8430],[3626,8563],[3513,8685],[3415,8756],[3479,8826],[3495,8883],[3543,8918],[3611,8884],[3618,8919],[3534,8982],[3541,9059],[3582,9088],[3545,9119],[3558,9162],[3566,9301],[3553,9413],[3583,9533],[3567,9618],[3617,9639],[3669,9698],[3835,9765],[3944,9778],[4073,9821],[4114,9816],[4207,9851],[4231,9758],[4266,9715],[4245,9662],[4254,9587],[4324,9551],[4389,9460],[4467,9438],[4515,9498],[4605,9527],[4634,9511],[4693,9389],[4722,9251],[4773,9215],[4854,9245],[4879,9210],[4954,9200],[4980,9167],[4994,9032],[5019,9010],[5048,9058],[5116,9062],[5155,9041],[5242,9057],[5315,8971],[5369,8967],[5338,8924],[5318,8833],[5356,8833],[5378,8761],[5325,8714],[5332,8668],[5385,8647],[5410,8541],[5385,8458],[5401,8404],[5324,8317],[5275,8292],[5295,8229],[5276,8143],[5297,8101],[5271,8078],[5281,8014],[5163,8026],[5144,7988],[5041,7963],[5004,7939],[5027,7835],[5071,7808],[5044,7772],[4997,7772],[4965,7653],[5021,7624],[4914,7497],[4890,7451]]]}},{"type":"Feature","id":"FR.ARA","properties":{"hc-group":"admin1","hc-key":"fr-ara","hc-a2":"AR","name":"Auvergne-Rhône-Alpes","iso_3166_2":"FR-ARA","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[6842,4900],[6902,4841],[6874,4718],[6778,4677],[6782,4590],[6833,4611],[6893,4604],[7016,4719],[6971,4775],[7019,4862],[7081,4841],[7169,4908],[7315,4931],[7382,4923],[7359,4850],[7421,4772],[7397,4719],[7389,4625],[7449,4616],[7451,4537],[7499,4539],[7553,4485],[7587,4412],[7551,4350],[7428,4296],[7431,4180],[7468,4144],[7561,4104],[7558,4046],[7584,3967],[7724,3867],[7679,3771],[7695,3702],[7654,3652],[7585,3643],[7503,3552],[7420,3577],[7340,3536],[7259,3511],[7215,3454],[7135,3508],[7048,3501],[7041,3395],[7117,3391],[7155,3299],[7148,3241],[6975,3229],[6858,3173],[6859,3139],[6763,3106],[6728,3003],[6625,2984],[6591,2890],[6631,2847],[6579,2799],[6490,2815],[6508,2745],[6459,2744],[6485,2687],[6614,2620],[6663,2575],[6661,2464],[6594,2485],[6532,2422],[6442,2469],[6430,2504],[6262,2546],[6269,2600],[6174,2596],[5989,2539],[5936,2620],[5869,2619],[5871,2570],[5764,2626],[5721,2624],[5678,2577],[5668,2615],[5620,2616],[5558,2562],[5463,2613],[5397,2611],[5399,2689],[5355,2746],[5332,2829],[5297,2877],[5253,3028],[5256,3059],[5152,3127],[5093,3142],[5087,3183],[5038,3178],[5030,3143],[4965,3124],[4939,3145],[4876,3274],[4773,3235],[4705,3178],[4664,3190],[4623,3094],[4605,3003],[4575,2935],[4533,2985],[4518,3055],[4451,3173],[4422,3167],[4379,3246],[4278,3138],[4235,3025],[4172,2952],[4089,2941],[4054,2959],[3963,2919],[3925,2992],[3945,3073],[3896,3171],[3870,3288],[3926,3307],[3912,3378],[3954,3416],[3983,3486],[3974,3555],[4090,3679],[4123,3758],[4197,3741],[4219,3829],[4178,3942],[4221,4011],[4223,4063],[4162,4127],[4130,4204],[4205,4248],[4275,4357],[4251,4463],[4253,4533],[4184,4679],[4078,4740],[4020,4838],[4048,4890],[4128,4947],[4287,4977],[4259,5091],[4291,5097],[4366,5176],[4403,5153],[4452,5167],[4520,5229],[4592,5238],[4609,5195],[4731,5128],[4760,5143],[4843,5128],[4891,5150],[4912,5092],[4985,5125],[5011,5192],[5121,5051],[5121,4986],[5299,4896],[5317,4751],[5234,4695],[5244,4628],[5306,4591],[5368,4608],[5536,4591],[5606,4648],[5622,4719],[5769,4694],[5792,4733],[5843,4679],[5857,4617],[5915,4600],[5928,4693],[5965,4780],[6008,4957],[6102,4951],[6186,4968],[6286,4918],[6295,4867],[6338,4818],[6409,4777],[6442,4715],[6541,4808],[6605,4733],[6717,4742],[6842,4900]],[[6119,2611],[6165,2672],[6124,2730],[6082,2722],[6046,2655],[6054,2609],[6119,2611]]]}},{"type":"Feature","id":"FR.GES","properties":{"hc-group":"admin1","hc-key":"fr-ges","hc-a2":"GE","name":"Grand Est","iso_3166_2":"FR-GES","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[7574,6090],[7576,6138],[7522,6198],[7491,6201],[7493,6330],[7367,6404],[7164,6554],[7139,6517],[7083,6510],[6990,6557],[6898,6530],[6825,6601],[6770,6602],[6701,6530],[6688,6571],[6597,6442],[6523,6385],[6518,6256],[6437,6215],[6374,6238],[6316,6224],[6283,6147],[6214,6134],[6133,6222],[6070,6203],[6035,6249],[5990,6236],[5958,6321],[5999,6352],[5927,6467],[5851,6557],[5782,6582],[5718,6573],[5671,6518],[5516,6493],[5489,6469],[5437,6520],[5427,6484],[5330,6480],[5308,6463],[5215,6479],[5207,6530],[5073,6716],[5046,6694],[4975,6734],[4992,6817],[4930,6903],[4857,6935],[4838,6980],[4848,7104],[4876,7111],[4937,7198],[4886,7224],[4873,7316],[4836,7343],[4842,7411],[4890,7451],[4914,7497],[5021,7624],[4965,7653],[4997,7772],[5044,7772],[5071,7808],[5027,7835],[5004,7939],[5041,7963],[5144,7988],[5163,8026],[5281,8014],[5271,8078],[5297,8101],[5276,8143],[5295,8229],[5275,8292],[5324,8317],[5401,8404],[5385,8458],[5410,8541],[5385,8647],[5428,8655],[5538,8628],[5689,8693],[5704,8795],[5775,8872],[5833,8859],[5781,8680],[5822,8635],[5819,8545],[5836,8480],[5899,8492],[5993,8449],[6072,8376],[6119,8387],[6148,8357],[6149,8304],[6222,8295],[6279,8182],[6327,8215],[6366,8206],[6394,8239],[6472,8248],[6550,8191],[6595,8182],[6620,8139],[6691,8150],[6740,8203],[6819,8201],[6874,8168],[6928,8180],[6993,8151],[7054,8075],[7038,8049],[7105,7980],[7154,7877],[7231,7853],[7244,7922],[7370,7899],[7382,7833],[7426,7860],[7477,7833],[7557,7829],[7639,7903],[7700,7888],[7736,7817],[7830,7772],[7917,7791],[8029,7784],[8145,7733],[8224,7717],[8166,7564],[8077,7489],[8066,7439],[7975,7329],[7984,7227],[7960,7202],[7939,7102],[7953,7048],[7921,6998],[7907,6919],[7866,6852],[7843,6760],[7883,6664],[7832,6424],[7837,6303],[7889,6214],[7818,6164],[7811,6099],[7750,6040],[7653,6020],[7596,6044],[7574,6090]]]}},{"type":"Feature","id":"FR.NOR","properties":{"hc-group":"admin1","hc-key":"fr-nor","hc-a2":"NO","name":"Normandie","iso_3166_2":"FR-NOR","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[3415,8756],[3513,8685],[3626,8563],[3676,8430],[3628,8371],[3651,8322],[3624,8301],[3645,8156],[3679,8154],[3647,8063],[3650,8019],[3693,7878],[3652,7899],[3632,7856],[3576,7697],[3459,7662],[3460,7590],[3485,7545],[3456,7527],[3455,7471],[3398,7429],[3377,7383],[3316,7345],[3208,7371],[3139,7315],[3041,7293],[3001,7257],[3023,7169],[3090,7103],[3112,7006],[3050,6928],[2974,6903],[2978,6816],[2999,6768],[2978,6743],[2926,6754],[2885,6812],[2766,6839],[2756,6878],[2689,6908],[2678,7032],[2614,7061],[2551,7048],[2445,6963],[2373,6967],[2372,7022],[2304,7087],[2294,7147],[2251,7165],[2238,7129],[2163,7094],[2058,7108],[2018,7074],[1940,7081],[1875,7050],[1836,7062],[1800,7118],[1646,7121],[1514,7167],[1428,7101],[1381,7098],[1327,7170],[1289,7292],[1352,7283],[1445,7304],[1350,7353],[1321,7403],[1314,7540],[1341,7707],[1316,7690],[1301,7787],[1316,7830],[1311,7918],[1285,7926],[1276,7987],[1239,8043],[1169,8110],[1174,8162],[1131,8256],[1162,8298],[1149,8396],[1097,8416],[1107,8465],[1173,8452],[1191,8425],[1338,8376],[1399,8384],[1439,8425],[1485,8434],[1568,8415],[1594,8333],[1536,8265],[1564,8194],[1615,8124],[1613,8044],[1668,8034],[1692,8085],[1784,8076],[1866,8041],[2059,8029],[2153,8008],[2286,7937],[2417,7975],[2493,8015],[2558,8074],[2733,8109],[2625,8124],[2520,8159],[2504,8212],[2541,8276],[2572,8370],[2618,8410],[2725,8456],[2821,8516],[2927,8560],[2987,8558],[3274,8645],[3415,8756]]]}},{"type":"Feature","id":"FR.LRE","properties":{"hc-group":"admin1","hc-key":"fr-lre","hc-a2":"LR","name":"La Réunion","iso_3166_2":"FR-LRE","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[1663.5,71.1],[1679.1,68.7],[1695.2,75.5],[1714.2,69.1],[1758.4,69.9],[1775.6,62.8],[1792.3,52.5],[1847.6,40.2],[1863.9,30.9],[1876.3,20.6],[1903,-8.1],[1912.4,-26.6],[1917.3,-69.4],[1924.3,-84.4],[1954.6,-115.9],[1958.9,-124.8],[1960.9,-150.8],[1967.7,-174.4],[1975.5,-180.1],[1996.9,-188.9],[2018.6,-227.6],[2035.7,-238.6],[2079.9,-256.8],[2095.1,-271.8],[2101,-297.1],[2094.6,-319.1],[2084.2,-341.2],[2064.8,-438],[2062.2,-465.2],[2063.1,-489.5],[2061.2,-517.5],[2050.6,-540.6],[2025.2,-550.4],[1981.6,-549.4],[1959.8,-553.2],[1921.4,-574.2],[1892.7,-578.8],[1864.2,-577.5],[1844.4,-569.7],[1823.6,-577.6],[1792.6,-579.2],[1760.1,-576.2],[1734.7,-570.7],[1713.4,-559.8],[1674.4,-532.2],[1637.3,-523.7],[1586.6,-504.1],[1566.2,-491.7],[1556.3,-480.5],[1541.3,-460],[1528.1,-456.5],[1488.1,-456.6],[1482.1,-452.5],[1472.9,-434.4],[1429.8,-384.9],[1414.7,-359.1],[1408.8,-328.8],[1408.2,-305.8],[1405.1,-285.9],[1352.6,-217.3],[1336.2,-189.2],[1326.3,-161.8],[1326,-137.4],[1332.8,-111.1],[1345.7,-89.7],[1386.8,-71.9],[1401.9,-51.5],[1407.1,-27.8],[1400.9,-8.9],[1410.6,4.9],[1400.6,18],[1419.7,26.7],[1460.3,27.4],[1494.6,52.5],[1548.4,83.1],[1607.3,86],[1627.9,83.9],[1663.5,71.1]]]}},{"type":"Feature","id":"FR.MAY","properties":{"hc-group":"admin1","hc-key":"fr-may","hc-a2":"MA","name":"Mayotte","iso_3166_2":"FR-MAY","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"MultiPolygon","coordinates":[[[[3254.9,-271.5],[3239.7,-271.5],[3209.7,-177.4],[3242.9,-141.5],[3255,-132.3],[3270,-169.6],[3273.4,-201.6],[3267.9,-234.1],[3254.9,-271.5]]],[[[2827.1,49.7],[2813.4,39.7],[2827.8,41],[2834.5,36.6],[2837.8,29.8],[2842.7,24.2],[2872.6,-1.4],[2913.3,-50.5],[2935,-67.5],[2965.9,-74.9],[3035.3,-74.4],[3072.9,-85.6],[3110.6,-110.9],[3126.5,-137.3],[3126.8,-168.7],[3117,-209.4],[3064.5,-286.8],[3044.9,-299],[3046.1,-325.5],[3060.4,-352.1],[3100.4,-377.8],[3095.5,-408.4],[3080.8,-438.3],[3072.7,-450.6],[3052.5,-498.2],[3016.1,-541.3],[3000.4,-587.2],[3040.7,-642.9],[3031.6,-658.6],[3022.2,-670.6],[3011,-679.6],[2995.1,-689],[2981.9,-665],[2966.7,-667.4],[2947.1,-681.2],[2919.5,-689],[2894.5,-682.3],[2878.2,-670.5],[2863.6,-663.8],[2842.4,-673.4],[2845.3,-640.6],[2836.5,-618.7],[2815.3,-608.5],[2782.8,-611.4],[2782.8,-597.6],[2822.9,-578.3],[2826.9,-541.2],[2807,-505.6],[2765.4,-483.5],[2771.6,-471.3],[2788.6,-460.4],[2813.2,-458.2],[2826.8,-466.5],[2866.4,-513.4],[2903.8,-535.5],[2924.6,-525.2],[2929.9,-495.7],[2919.6,-458.2],[2901.9,-430.4],[2878.4,-403.8],[2813.2,-348.7],[2844.4,-335.9],[2858.8,-334.5],[2858.8,-319],[2845.8,-299.8],[2836.1,-266.6],[2828.5,-200.9],[2820.4,-168.9],[2800.8,-155],[2775.8,-147.1],[2752.5,-132],[2736.6,-111.3],[2727,-90.6],[2722.1,-65.2],[2721,-30],[2828.6,86],[2837.3,71.6],[2840,65],[2842.7,55.2],[2832.9,52.8],[2827.1,49.7]]]]}},{"type":"Feature","id":"FR.GF","properties":{"hc-group":"admin1","hc-key":"fr-gf","hc-a2":"GF","name":"Guyane française","iso_3166_2":"FR-GF","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[4435,-278.8],[4419,-286.6],[4413.6,-291.2],[4408.6,-304.7],[4402.4,-315.4],[4388.6,-330.5],[4381.9,-333.7],[4378.1,-345.7],[4369.6,-350.1],[4364.4,-368.3],[4347.2,-397.6],[4318.2,-444.7],[4303,-452.1],[4298.6,-462.2],[4289.5,-472],[4291.3,-487.6],[4276.5,-515.5],[4279.3,-521.9],[4269.4,-528.8],[4252.6,-566.1],[4251.3,-572.6],[4244.4,-577],[4248.3,-590.9],[4234.2,-614.3],[4226.3,-621.2],[4215.2,-636.6],[4178.2,-657.5],[4172.5,-669.3],[4161.1,-675.7],[4139.3,-673.3],[4132.7,-667.8],[4124.1,-666.2],[4098.3,-671],[4092.5,-669.2],[4102.3,-659.4],[4078.7,-638.4],[4071.3,-647.3],[4051,-658.7],[4038.5,-660.2],[4028.3,-655.2],[4014,-653.4],[3999.6,-647.2],[3993.4,-647],[3994.4,-638.3],[3988.5,-634.1],[3980.8,-637.3],[3974.3,-646.6],[3966.6,-647.7],[3959.2,-656.3],[3952.4,-655.2],[3949.6,-665.3],[3932,-674.6],[3923.1,-672.5],[3916.8,-685.3],[3909,-689],[3897.5,-678.2],[3881.4,-680.9],[3866.1,-677.6],[3857.7,-670.6],[3835.7,-666.8],[3820.9,-655.1],[3825.1,-652.1],[3816.9,-645.2],[3806,-642.8],[3809.5,-638.6],[3819.8,-640.3],[3826.4,-638],[3832.2,-623.5],[3847.2,-619.5],[3861,-604.1],[3869.4,-583.1],[3877,-567.9],[3892.7,-546.9],[3897.8,-533.8],[3901.8,-530.6],[3897.7,-526.9],[3903.3,-505.7],[3898.7,-499.7],[3902.1,-497],[3900.5,-474.4],[3893.2,-472.1],[3897.7,-461.3],[3914.1,-438.4],[3921.4,-433.3],[3926.7,-418.8],[3934.5,-410.8],[3938,-402.2],[3937.4,-386.1],[3941.2,-369.1],[3935,-362.5],[3928.1,-364],[3923,-355.1],[3918.7,-340],[3912,-331],[3898.8,-325.5],[3891.4,-314.4],[3887.3,-312.3],[3876.2,-296.5],[3872.6,-287.1],[3865.3,-280.5],[3863.1,-271.6],[3866.9,-260.9],[3866.7,-253.3],[3857.3,-249.6],[3851.3,-241.2],[3855.1,-233.6],[3853,-219],[3846.6,-205.4],[3843,-182.4],[3848.9,-165.5],[3848.6,-154.3],[3845.9,-147.3],[3846.5,-134.3],[3837.3,-124.5],[3836.7,-90.9],[3843.4,-85.8],[3842,-74.1],[3848,-60.9],[3866.6,-39.1],[3869.1,-30.6],[3882.7,-15.1],[3899.6,-3.1],[3903.8,1.7],[3917.5,8.6],[3927.3,20.4],[3939,46.3],[3942.4,68.3],[3952.6,86],[3970.9,83.6],[3980.1,79.7],[3981.2,83],[4005.7,68.4],[4029.8,58.6],[4043.7,50.6],[4058.4,46.3],[4067.1,46.5],[4089.5,40.8],[4094.9,41.3],[4105,32.2],[4109.7,33.6],[4094.1,46.4],[4126.3,34.1],[4136.5,27.1],[4152.8,22.5],[4155.3,23.9],[4176.2,12.8],[4190.5,-0.8],[4200.3,-6.2],[4206.7,-16.8],[4222,-29],[4251.9,-57],[4256,-62.6],[4265,-65.4],[4281.5,-79.5],[4286.3,-87.4],[4284.3,-96.1],[4293.7,-86.1],[4303.4,-85.7],[4312.2,-96.9],[4294.1,-124.8],[4294.6,-132.6],[4300.3,-124.7],[4303.3,-113.7],[4315.6,-104.6],[4317.9,-100.5],[4326.2,-106],[4333.3,-117.6],[4347.3,-125.6],[4362.1,-139.4],[4368.2,-148.2],[4377.8,-190.4],[4375.5,-200.1],[4363,-208.9],[4357.4,-216],[4377.7,-208.2],[4383.8,-191.9],[4382,-161.4],[4383.3,-153.7],[4389.5,-145.5],[4399.8,-147.5],[4411.6,-159.1],[4409.9,-161.5],[4415.8,-169.6],[4419.1,-185.4],[4424.8,-189.8],[4421.9,-194.2],[4424.8,-202.1],[4432,-203.5],[4432.7,-208.1],[4427.8,-216.1],[4429.6,-223.2],[4438,-235.6],[4442,-246.7],[4441.6,-261.2],[4435,-278.8]]]}},{"type":"Feature","id":"FR.MQ","properties":{"hc-group":"admin1","hc-key":"fr-mq","hc-a2":"MQ","name":"Martinique","iso_3166_2":"FR-MQ","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"Polygon","coordinates":[[[5450.3,-64.9],[5479.4,-122.4],[5502.6,-103.2],[5535.2,-86.7],[5573,-76.5],[5611.6,-75.8],[5600.3,-85.3],[5590.5,-91.8],[5585.8,-98.4],[5589.8,-109.1],[5555.9,-144.4],[5536.1,-112.6],[5523.8,-121.4],[5519.5,-153.1],[5523.3,-190.1],[5536.8,-183.8],[5548.5,-184.5],[5558.7,-190.5],[5567.5,-199.9],[5523.6,-224.2],[5535.7,-236.3],[5516.2,-246.6],[5519.2,-260.9],[5533.2,-265.5],[5546.9,-246.6],[5601.3,-269.8],[5589,-271.2],[5582.7,-274.2],[5577.3,-277.8],[5568.2,-281.4],[5578.6,-306.6],[5591.1,-319.4],[5624,-337.6],[5628.8,-346.2],[5631.3,-357.5],[5637.3,-367.3],[5652.9,-371.5],[5664.4,-376.3],[5670.1,-388.7],[5671.3,-403.9],[5669.9,-417.6],[5691,-405.2],[5685.2,-426.7],[5684.5,-447.8],[5690.2,-467.6],[5703.7,-485.4],[5693.8,-490.7],[5689.8,-495.3],[5687.1,-500.6],[5681.9,-508.3],[5703.2,-518.4],[5712.2,-541.1],[5717.6,-567.2],[5727.9,-587.4],[5728,-598.6],[5708.2,-607.6],[5689,-656.1],[5672.4,-678.6],[5654.3,-686.7],[5631.4,-689],[5612.1,-680.6],[5604.9,-656.5],[5614.5,-639.5],[5632.7,-633.6],[5648.2,-624.7],[5649.5,-599.3],[5633.7,-576.2],[5611.6,-585.5],[5586,-601.7],[5560.1,-600.1],[5561.1,-583.3],[5550.4,-581.3],[5505.8,-589.4],[5411.2,-577.7],[5385.9,-581.7],[5346,-598.4],[5322,-602.2],[5308.4,-594.5],[5272.3,-544.9],[5273,-532.5],[5270.9,-525.7],[5263.7,-520.4],[5249,-512.1],[5292.8,-465.3],[5335,-444.1],[5348.7,-430.8],[5366,-455.8],[5391.2,-463.2],[5414.4,-454.3],[5426,-430.2],[5420.5,-419.7],[5408,-402.3],[5396,-379.2],[5392.2,-351.1],[5368.2,-359.6],[5348.5,-363.7],[5331.2,-364.3],[5313.9,-363.1],[5280,-365.6],[5270.8,-363.5],[5263.7,-356.4],[5253.4,-336.6],[5247.4,-329.6],[5189.3,-290.8],[5160,-263.1],[5147.2,-233.6],[5145.9,-223.1],[5142.4,-214.2],[5136.9,-206.3],[5129.9,-198.6],[5123.7,-186.8],[5126.2,-175.8],[5131.6,-165],[5134.5,-153.7],[5130.6,-133.7],[5121,-114.8],[5108.6,-98.4],[5062.1,-50.3],[5050.5,-30],[5046,-6.5],[5050.1,16.1],[5060.8,34.4],[5075,47.7],[5138.8,84.7],[5195.4,86],[5250.4,68.7],[5322.1,23.6],[5385.7,-4],[5412.3,-20.9],[5419,-32.9],[5423.2,-47.5],[5431.4,-59.8],[5450.3,-64.9]]]}},{"type":"Feature","id":"FR.GUA","properties":{"hc-group":"admin1","hc-key":"fr-gua","hc-a2":"GU","name":"Guadeloupe","iso_3166_2":"FR-GUA","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"MultiPolygon","coordinates":[[[[6473.8,-582.6],[6475.3,-584.5],[6472.9,-584.5],[6471.3,-582.7],[6473.8,-582.6]]],[[[6491.7,-582.9],[6492.2,-586.8],[6487.7,-583.2],[6487.3,-579.3],[6491.7,-582.9]]],[[[6460.5,-571.4],[6452.1,-576.7],[6441.7,-570.6],[6445.2,-557.7],[6454.7,-552.6],[6458.2,-556],[6463.1,-563.6],[6460.5,-571.4]]],[[[6487.4,-543.2],[6489.2,-546.4],[6484,-545.7],[6482.2,-542.4],[6487.4,-543.2]]],[[[6495.6,-561.7],[6485.6,-565.1],[6482.6,-560.7],[6492.8,-552.9],[6497.7,-542.8],[6503.5,-540.2],[6509.2,-542.5],[6512.1,-549],[6506.8,-553.8],[6495.6,-561.7]]],[[[6823.7,-539.3],[6791,-547.6],[6761.9,-543.1],[6749.1,-517.4],[6745.6,-502.9],[6742.3,-496.2],[6735.6,-490.2],[6739.6,-482.9],[6748.7,-469.7],[6751.4,-455.3],[6758,-444.6],[6775.2,-424.8],[6796.2,-412.9],[6819.7,-418],[6838.9,-434.2],[6850.3,-462.5],[6857.6,-468.3],[6864.9,-476.1],[6868.2,-489],[6867.7,-501.4],[6864.8,-510.4],[6858.6,-518.2],[6847.7,-527.1],[6823.7,-539.3]]],[[[6945.1,-245],[6950.3,-245.7],[6947.2,-250.5],[6937.6,-251.6],[6930.1,-245.2],[6945.1,-245]]],[[[6952.5,-241.4],[6950.7,-243.4],[6950.7,-240.8],[6952.5,-241.4]]],[[[7012.7,-108.4],[6985.3,-120.2],[6963.2,-117.3],[6975.7,-110.4],[7013.2,-78],[7036.3,-68.3],[7061,-75.6],[7012.7,-108.4]]],[[[6488.3,-76.8],[6483.8,-81.4],[6481.5,-77.3],[6486,-71.2],[6490.3,-69.6],[6497.6,-74.2],[6488.3,-76.8]]],[[[6471.2,-144.2],[6476.9,-140.9],[6490.1,-155],[6494.7,-144.2],[6503.9,-136.6],[6515.9,-134.6],[6522,-140.6],[6524.4,-145.5],[6518.6,-167.8],[6525.9,-187.4],[6502.3,-193.4],[6495.8,-203.6],[6498.2,-249.7],[6510.7,-284.3],[6517.6,-338.5],[6510,-391],[6480,-427.8],[6436.1,-454.2],[6386.7,-475.6],[6385.2,-469.8],[6379.4,-455.3],[6386.5,-448.5],[6379.7,-435.2],[6371.2,-427.8],[6361.3,-421.5],[6350,-411.5],[6342.9,-399.8],[6339.4,-388.4],[6335.3,-379.1],[6327,-373.7],[6315.1,-338.5],[6313.8,-260.2],[6299.4,-224.7],[6303.9,-209.9],[6299.5,-197.9],[6291.9,-187.3],[6286.6,-176.7],[6286,-159.7],[6289.6,-128.7],[6286.2,-115.7],[6295.5,-107.6],[6311.4,-79.2],[6325.2,-67.3],[6342.9,-62.6],[6351.9,-68.2],[6358.2,-76.8],[6367.8,-81.2],[6391.9,-85.7],[6427.3,-97.8],[6460.3,-114.9],[6476.8,-134.8],[6463.2,-141],[6471.2,-144.2]]],[[[6712,-84.8],[6726,-92.2],[6732.5,-84.8],[6742.4,-89.9],[6751.7,-90.6],[6761.5,-90.1],[6772.5,-91.8],[6781.7,-97.4],[6802.7,-114.9],[6818.4,-123.6],[6870.7,-159.4],[6889.2,-164.4],[6894.6,-170],[6883.9,-179],[6875.9,-178.9],[6848.9,-172.6],[6841.6,-169.2],[6826.6,-165.3],[6657.8,-205.3],[6625.5,-219.8],[6608.5,-222.6],[6587.8,-219.3],[6568.8,-212.1],[6552.5,-202.6],[6539.5,-192.3],[6529.6,-180.2],[6525.4,-167.9],[6525.7,-155],[6529.3,-140.6],[6544.7,-88.5],[6553.7,-77.4],[6571.4,-73.1],[6573.9,-69.5],[6575.3,-61.2],[6575.5,-51.9],[6574.5,-45.3],[6570.5,-40.9],[6563.8,-36.7],[6555.8,-33.6],[6548.2,-32],[6542.6,3.5],[6538,12.3],[6537.5,22.1],[6545.7,35.1],[6560.7,53.2],[6564.5,59.7],[6573.7,66.5],[6603.2,82.7],[6605.8,86],[6608.9,84.7],[6640.2,62.5],[6657,46.1],[6668.5,25.7],[6672.9,-0.5],[6670.8,-26.6],[6672.3,-36.4],[6679.8,-51.9],[6689.4,-65.8],[6699.9,-76.4],[6712,-84.8]]]]}},{"type":"Feature","properties":{"hc-group":"__separator_lines__","hc-middle-x":0.5,"hc-middle-y":0.5},"geometry":{"type":"MultiLineString","coordinates":[[[904,253],[7464,253]],[[2390,136],[2390,-689]],[[6000,136],[6000,-689]],[[4745,136],[4745,-689]],[[3530,136],[3530,-689]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/europe/de-all.geo.json
const de_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Germany","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:4839"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=48.66666666666666 +lat_2=53.66666666666666 +lat_0=51 +lon_0=10.5 +x_0=0 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","scale":0.000808796077032,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-325419.299339,"yoffset":450908.217886}},"features":[{"type":"Feature","id":"DE.NI","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.36,"hc-key":"de-ni","hc-a2":"NI","labelrank":"3","hasc":"DE.NI","alt-name":"Lower Saxony","woe-id":"2345486","subregion":null,"fips":"GM06","postal-code":"NI","name":"Niedersachsen","country":"Germany","type-en":"State","region":null,"longitude":"8.861840000000001","woe-name":"Niedersachsen","latitude":"52.775","woe-label":"Lower Saxony, DE, Germany","type":"Land"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-38,7872],[-78,7863],[-105,7905],[0,7929],[-38,7872]]],[[[472,8051],[327,8026],[294,8037],[378,8063],[472,8051]]],[[[705,8080],[611,8076],[590,8099],[689,8097],[705,8080]]],[[[848,8110],[806,8090],[762,8103],[791,8126],[848,8110]]],[[[109,5995],[100,6060],[136,6170],[78,6293],[15,6269],[-119,6306],[-157,6338],[-172,6431],[-109,6453],[-141,6538],[-81,6565],[86,6551],[145,6563],[168,6762],[195,6850],[289,7002],[303,7095],[290,7224],[316,7390],[383,7497],[463,7464],[412,7508],[222,7523],[182,7579],[186,7683],[221,7780],[291,7799],[248,7870],[369,7976],[435,7999],[563,8008],[599,7983],[722,8004],[972,8029],[1037,8008],[1052,7907],[1143,7788],[1132,7751],[1050,7720],[1082,7642],[1126,7644],[1168,7588],[1204,7584],[1242,7628],[1268,7723],[1195,7747],[1220,7857],[1296,7867],[1327,7816],[1430,7782],[1462,7755],[1423,7717],[1402,7647],[1415,7508],[1414,7671],[1465,7732],[1502,7690],[1533,7726],[1525,7850],[1432,7869],[1413,7939],[1419,8006],[1491,8203],[1520,8236],[1584,8244],[1632,8195],[1727,8160],[1938,8203],[2070,8201],[2173,8028],[2240,7954],[2306,7827],[2413,7766],[2469,7753],[2472,7698],[2545,7592],[2652,7566],[2733,7616],[2819,7550],[2937,7589],[2986,7577],[3104,7505],[3165,7504],[3227,7507],[3274,7477],[3281,7416],[3441,7305],[3575,7189],[3620,7229],[3663,7185],[3688,7202],[3730,7153],[3776,7091],[3850,7103],[3989,7052],[3974,7006],[3928,6993],[3925,6914],[3850,6860],[3712,6819],[3682,6846],[3514,6864],[3469,6799],[3406,6774],[3302,6761],[3298,6688],[3335,6599],[3366,6582],[3437,6456],[3486,6448],[3466,6353],[3507,6288],[3464,6279],[3454,6237],[3516,6156],[3569,6112],[3507,6071],[3521,5994],[3580,5908],[3525,5854],[3556,5828],[3542,5777],[3465,5728],[3483,5683],[3382,5663],[3212,5651],[3185,5606],[3141,5601],[3205,5534],[3178,5487],[3201,5430],[3150,5376],[3154,5282],[3223,5184],[3252,5087],[3176,4996],[3093,4973],[3013,5023],[2972,5015],[2963,4954],[2854,4856],[2815,4867],[2775,4801],[2685,4802],[2600,4732],[2561,4781],[2395,4709],[2436,4632],[2392,4608],[2367,4641],[2268,4680],[2280,4759],[2324,4761],[2331,4855],[2295,4916],[2337,4999],[2374,4999],[2320,5080],[2209,5085],[2162,5109],[2104,5108],[2120,5222],[2161,5278],[2179,5414],[2064,5400],[2076,5468],[2008,5493],[2036,5562],[1937,5583],[1961,5629],[1955,5706],[1910,5786],[1791,5792],[1785,5868],[1837,5877],[1857,5934],[1784,5974],[1815,6080],[1863,6090],[1911,6172],[1896,6232],[1916,6267],[1874,6297],[1803,6250],[1769,6176],[1654,6150],[1552,6178],[1552,6280],[1492,6342],[1377,6321],[1333,6250],[1264,6233],[1208,6249],[1234,6174],[1313,6128],[1338,6040],[1337,5901],[1365,5879],[1273,5773],[1165,5807],[1090,5739],[953,5720],[906,5683],[858,5709],[842,5757],[928,5800],[954,5870],[894,5880],[855,5921],[923,6064],[868,6157],[802,6139],[697,6213],[680,6282],[620,6303],[611,6219],[574,6160],[533,6159],[447,6085],[346,6030],[192,6024],[109,5995]],[[1457,7304],[1403,7321],[1417,7287],[1498,7257],[1519,7187],[1571,7116],[1570,7076],[1707,7067],[1748,7035],[1797,7072],[1802,7187],[1767,7227],[1749,7195],[1611,7271],[1565,7267],[1457,7304]]]]}},{"type":"Feature","id":"DE.SH","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.51,"hc-key":"de-sh","hc-a2":"SH","labelrank":"3","hasc":"DE.SH","alt-name":null,"woe-id":"2345490","subregion":null,"fips":"GM10","postal-code":"SH","name":"Schleswig-Holstein","country":"Germany","type-en":"State","region":null,"longitude":"9.84605","woe-name":"Schleswig-Holstein","latitude":"54.1315","woe-label":"Schleswig-Holstein, DE, Germany","type":"Land"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1769,9049],[1734,9047],[1709,9097],[1736,9122],[1832,9125],[1769,9049]]],[[[3695,9052],[3744,8962],[3641,8978],[3580,8963],[3568,9013],[3514,9007],[3492,9036],[3514,9093],[3585,9131],[3655,9102],[3695,9052]]],[[[1593,9100],[1551,9088],[1539,9140],[1619,9179],[1593,9100]]],[[[1522,9371],[1424,9373],[1378,9403],[1436,9458],[1508,9455],[1540,9418],[1522,9371]]],[[[1380,9654],[1419,9643],[1594,9647],[1574,9632],[1473,9640],[1426,9614],[1339,9632],[1309,9612],[1295,9448],[1286,9501],[1300,9652],[1374,9851],[1419,9843],[1354,9756],[1354,9681],[1380,9654]]],[[[3165,7504],[3104,7505],[2986,7577],[2937,7589],[2925,7621],[2820,7719],[2809,7787],[2840,7801],[2851,7870],[2803,7941],[2828,7994],[2744,7991],[2720,7937],[2661,7896],[2606,7888],[2523,7821],[2474,7866],[2450,7788],[2380,7805],[2293,7876],[2279,7983],[2200,8037],[2169,8152],[2026,8238],[1851,8243],[1776,8308],[1711,8447],[1778,8456],[1846,8436],[1865,8530],[1833,8597],[1737,8571],[1699,8649],[1723,8753],[1791,8778],[1826,8837],[1642,8808],[1571,8784],[1530,8873],[1609,8900],[1556,8942],[1656,8976],[1746,8973],[1864,9044],[1871,9100],[1746,9261],[1709,9357],[1617,9426],[1622,9460],[1587,9542],[1600,9651],[1657,9640],[1732,9661],[2028,9578],[2053,9515],[2138,9510],[2181,9532],[2234,9519],[2339,9595],[2341,9545],[2430,9527],[2517,9477],[2534,9440],[2608,9488],[2653,9447],[2691,9361],[2619,9324],[2703,9322],[2691,9144],[2613,9071],[2544,9056],[2579,9028],[2775,9074],[2840,9025],[2829,8935],[2789,8901],[2820,8858],[2850,8947],[2923,8997],[2967,8997],[3034,8948],[3163,8891],[3236,8823],[3307,8821],[3435,8912],[3503,8921],[3516,8896],[3598,8922],[3552,8860],[3567,8697],[3544,8639],[3450,8577],[3417,8534],[3328,8510],[3288,8443],[3311,8395],[3381,8379],[3415,8328],[3413,8286],[3298,8193],[3296,8028],[3334,8020],[3383,7963],[3443,7942],[3458,7777],[3353,7778],[3347,7704],[3193,7607],[3165,7504]]],[[[1328,9374],[1365,9298],[1341,9270],[1293,9339],[1328,9374],[1328,9374],[1328,9374]]],[[[1328,9374],[1327,9375],[1350,9397],[1328,9374],[1328,9374],[1328,9374]]]]}},{"type":"Feature","id":"DE.BE","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.47,"hc-key":"de-be","hc-a2":"BE","labelrank":"9","hasc":"DE.BE","alt-name":null,"woe-id":"2345496","subregion":null,"fips":"GM16","postal-code":"BE","name":"Berlin","country":"Germany","type-en":"State","region":null,"longitude":"13.4213","woe-name":"Berlin","latitude":"52.5131","woe-label":"Berlin, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[5625,6541],[5629,6494],[5687,6431],[5755,6401],[5740,6327],[5773,6332],[5848,6281],[5814,6173],[5764,6126],[5756,6173],[5601,6223],[5576,6173],[5462,6216],[5393,6216],[5345,6186],[5291,6214],[5326,6363],[5336,6469],[5379,6452],[5388,6507],[5456,6552],[5478,6509],[5523,6513],[5596,6567],[5625,6541]]]}},{"type":"Feature","id":"DE.MV","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.61,"hc-key":"de-mv","hc-a2":"MV","labelrank":"3","hasc":"DE.MV","alt-name":"Mecklenburg-West Pomerania","woe-id":"2345492","subregion":null,"fips":"GM12","postal-code":"MV","name":"Mecklenburg-Vorpommern","country":"Germany","type-en":"State","region":null,"longitude":"12.5647","woe-name":"Mecklenburg-Vorpommern","latitude":"53.7528","woe-label":"Mecklenburg-Vorpommern, DE, Germany","type":"Land"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3730,7153],[3688,7202],[3663,7185],[3620,7229],[3575,7189],[3441,7305],[3281,7416],[3274,7477],[3227,7507],[3165,7504],[3193,7607],[3347,7704],[3353,7778],[3458,7777],[3443,7942],[3383,7963],[3334,8020],[3296,8028],[3298,8193],[3413,8286],[3415,8328],[3536,8394],[3635,8409],[3694,8354],[3692,8308],[3767,8331],[3870,8255],[3896,8390],[3999,8496],[4030,8587],[4087,8611],[4156,8600],[4350,8645],[4392,8638],[4460,8736],[4585,8824],[4660,8954],[4709,9064],[4782,9036],[5017,9039],[5051,9019],[5011,8994],[4867,9013],[4810,8996],[4733,8923],[4673,8949],[4650,8883],[4601,8833],[4608,8776],[4644,8752],[4654,8806],[4695,8866],[4854,8955],[4886,8986],[4893,8941],[4944,8957],[4974,8908],[5018,8922],[5039,8971],[5090,9014],[5143,9022],[5150,8964],[5196,8938],[5182,8910],[5216,8810],[5361,8751],[5390,8697],[5442,8676],[5513,8567],[5523,8605],[5623,8629],[5710,8681],[5700,8652],[5792,8589],[5791,8605],[5745,8654],[5795,8684],[5854,8588],[5967,8534],[6134,8372],[6108,8326],[6131,8288],[6005,8283],[5964,8245],[5865,8227],[5839,8243],[5855,8223],[5960,8134],[6062,8096],[6129,8094],[6161,8122],[6190,8081],[6153,8051],[6196,8042],[6196,7981],[6230,7901],[6243,7777],[6294,7690],[6328,7538],[6273,7500],[6215,7427],[6092,7440],[6091,7467],[6159,7518],[6198,7598],[6197,7661],[6112,7674],[6076,7644],[5930,7648],[5882,7759],[5820,7804],[5833,7724],[5750,7707],[5669,7614],[5614,7591],[5580,7482],[5509,7417],[5406,7431],[5365,7353],[5300,7387],[5176,7255],[5132,7293],[5063,7276],[4959,7292],[4955,7328],[4868,7364],[4763,7389],[4694,7381],[4617,7446],[4522,7481],[4488,7517],[4385,7496],[4344,7417],[4300,7385],[4181,7344],[4201,7312],[4122,7295],[4085,7340],[4001,7324],[3948,7278],[3965,7196],[3921,7158],[3835,7176],[3831,7141],[3730,7153],[3730,7153]],[[5793,8586],[5747,8491],[5826,8424],[5836,8382],[5884,8366],[5873,8324],[5816,8272],[5827,8259],[5908,8306],[5912,8347],[5879,8439],[5936,8433],[5950,8395],[6001,8369],[5987,8481],[5968,8472],[5909,8540],[5872,8463],[5839,8447],[5849,8512],[5771,8473],[5796,8547],[5793,8586]]],[[[3901,8418],[3877,8345],[3801,8360],[3813,8392],[3876,8429],[3901,8418]]],[[[5235,9256],[5205,9237],[5194,9158],[5164,9122],[5196,9260],[5235,9256]]],[[[5421,9335],[5427,9271],[5487,9235],[5591,9259],[5627,9253],[5660,9191],[5581,9092],[5612,9012],[5686,8985],[5744,8922],[5702,8862],[5653,8860],[5701,8901],[5649,8928],[5527,8912],[5420,8794],[5464,8800],[5471,8753],[5379,8775],[5396,8821],[5343,8782],[5214,8891],[5239,8946],[5322,8963],[5311,9009],[5243,9016],[5262,9053],[5325,9077],[5300,9143],[5262,9130],[5245,9187],[5307,9199],[5344,9178],[5408,9243],[5394,9157],[5426,9185],[5462,9116],[5525,9113],[5515,9208],[5468,9207],[5406,9281],[5331,9207],[5311,9227],[5340,9327],[5288,9308],[5310,9351],[5419,9388],[5464,9370],[5421,9335]]]]}},{"type":"Feature","id":"DE.HB","properties":{"hc-group":"admin1","hc-middle-x":0.73,"hc-middle-y":0.86,"hc-key":"de-hb","hc-a2":"HB","labelrank":"9","hasc":"DE.HB","alt-name":null,"woe-id":"2345483","subregion":null,"fips":"GM03","postal-code":"HB","name":"Bremen","country":"Germany","type-en":"State","region":null,"longitude":"8.742990000000001","woe-name":"Bremen","latitude":"53.1211","woe-label":"Bremen, DE, Germany","type":"Land"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1457,7304],[1565,7267],[1611,7271],[1749,7195],[1767,7227],[1802,7187],[1797,7072],[1748,7035],[1707,7067],[1570,7076],[1571,7116],[1519,7187],[1498,7257],[1417,7287],[1403,7321],[1457,7304]]],[[[1465,7732],[1474,7769],[1432,7869],[1525,7850],[1533,7726],[1502,7690],[1465,7732]]]]}},{"type":"Feature","id":"DE.SL","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.48,"hc-key":"de-sl","hc-a2":"SL","labelrank":"3","hasc":"DE.SL","alt-name":null,"woe-id":"2345489","subregion":null,"fips":"GM09","postal-code":"SL","name":"Saarland","country":"Germany","type-en":"State","region":null,"longitude":"6.86625","woe-name":"Saarland","latitude":"49.4026","woe-label":"Saarland, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[222,1704],[124,1624],[21,1640],[-41,1681],[-101,1652],[-107,1740],[-182,1777],[-266,1787],[-264,1722],[-293,1699],[-390,1742],[-438,1882],[-515,1979],[-491,2011],[-558,2118],[-639,2164],[-692,2153],[-683,2250],[-555,2254],[-451,2244],[-352,2267],[-216,2322],[-144,2364],[-87,2364],[-23,2325],[32,2320],[108,2263],[152,2282],[184,2151],[125,2099],[171,2011],[247,1987],[247,1941],[177,1825],[154,1761],[222,1704]]]}},{"type":"Feature","id":"DE.BY","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.45,"hc-key":"de-by","hc-a2":"BY","labelrank":"3","hasc":"DE.BY","alt-name":"Bavaria","woe-id":"2345482","subregion":null,"fips":"GM02","postal-code":"BY","name":"Bayern","country":"Germany","type-en":"State","region":null,"longitude":"11.3966","woe-name":"Bayern","latitude":"49.0056","woe-label":"Bavaria, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[4509,3258],[4518,3188],[4492,3158],[4586,3060],[4585,2987],[4648,2886],[4849,2787],[4846,2733],[4902,2698],[4842,2521],[4781,2468],[4815,2410],[4886,2370],[4893,2300],[4941,2252],[4980,2156],[5007,2150],[5029,2038],[5108,1987],[5173,1901],[5287,1911],[5359,1861],[5530,1621],[5642,1591],[5712,1516],[5725,1454],[5818,1380],[5835,1420],[5934,1397],[5980,1309],[6045,1291],[6135,1155],[6110,1095],[6141,1056],[6132,939],[6059,810],[5971,867],[5874,890],[5801,854],[5819,779],[5779,596],[5661,494],[5533,467],[5438,425],[5348,346],[5297,335],[5177,217],[5193,140],[5261,73],[5285,11],[5359,-50],[5419,-157],[5332,-332],[5400,-355],[5453,-343],[5496,-395],[5506,-467],[5476,-522],[5480,-649],[5454,-682],[5391,-683],[5233,-571],[5262,-490],[5212,-415],[5109,-406],[5017,-464],[4963,-475],[4893,-389],[4719,-411],[4720,-337],[4659,-375],[4686,-481],[4652,-518],[4435,-513],[4356,-530],[4327,-564],[4138,-547],[4074,-654],[3943,-667],[3899,-718],[3917,-752],[3843,-766],[3799,-815],[3714,-783],[3634,-832],[3535,-832],[3516,-773],[3413,-689],[3419,-637],[3355,-657],[3182,-593],[3104,-641],[3000,-578],[3005,-690],[3035,-766],[2997,-846],[2953,-874],[2896,-956],[2833,-990],[2757,-999],[2804,-883],[2788,-848],[2676,-867],[2675,-764],[2629,-696],[2602,-711],[2560,-645],[2432,-619],[2427,-571],[2375,-562],[2342,-611],[2239,-559],[2340,-530],[2482,-434],[2565,-456],[2664,-430],[2681,-470],[2733,-417],[2718,-306],[2686,-279],[2733,-238],[2704,-152],[2715,-69],[2694,-37],[2735,67],[2741,168],[2716,225],[2666,444],[2598,551],[2680,677],[2741,697],[2759,667],[2909,758],[2908,865],[2869,967],[2894,998],[2962,944],[3011,996],[3018,955],[3076,992],[3018,1085],[3043,1179],[3043,1327],[2947,1458],[2874,1482],[2865,1588],[2758,1698],[2746,1792],[2770,1796],[2736,1927],[2781,1948],[2730,2026],[2743,2125],[2704,2171],[2644,2082],[2569,2085],[2549,2220],[2481,2182],[2521,2263],[2478,2324],[2441,2421],[2382,2373],[2367,2418],[2337,2378],[2295,2390],[2310,2508],[2270,2491],[2170,2526],[2045,2514],[2009,2440],[2111,2405],[2089,2311],[2064,2326],[1982,2294],[1951,2226],[1822,2225],[1788,2275],[1824,2315],[1814,2380],[1845,2393],[1855,2520],[1792,2581],[1755,2689],[1759,2878],[1714,2893],[1745,2953],[1834,2991],[1873,2972],[1942,3015],[2032,3007],[2101,2941],[2190,2962],[2211,3046],[2185,3057],[2197,3140],[2287,3122],[2331,3136],[2349,3198],[2410,3234],[2428,3368],[2510,3363],[2637,3431],[2685,3526],[2749,3590],[2804,3571],[2848,3516],[2919,3491],[3080,3298],[3127,3305],[3162,3259],[3185,3118],[3283,3098],[3287,3143],[3385,3143],[3382,3184],[3272,3254],[3282,3308],[3338,3344],[3476,3346],[3516,3294],[3626,3316],[3647,3238],[3699,3186],[3755,3191],[3776,3308],[3746,3467],[3833,3532],[3904,3525],[3900,3427],[3950,3406],[4000,3339],[4235,3391],[4264,3361],[4332,3395],[4400,3355],[4405,3308],[4509,3258]]]}},{"type":"Feature","id":"DE.TH","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.62,"hc-key":"de-th","hc-a2":"TH","labelrank":"3","hasc":"DE.TH","alt-name":"Thuringia","woe-id":"2345495","subregion":null,"fips":"GM15","postal-code":"TH","name":"Thüringen","country":"Germany","type-en":"State","region":null,"longitude":"11.0976","woe-name":"Thüringen","latitude":"50.9052","woe-label":"Thuringia, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[4332,3395],[4264,3361],[4235,3391],[4000,3339],[3950,3406],[3900,3427],[3904,3525],[3833,3532],[3746,3467],[3776,3308],[3755,3191],[3699,3186],[3647,3238],[3626,3316],[3516,3294],[3476,3346],[3338,3344],[3282,3308],[3272,3254],[3382,3184],[3385,3143],[3287,3143],[3283,3098],[3185,3118],[3162,3259],[3127,3305],[3080,3298],[2919,3491],[2848,3516],[2804,3571],[2749,3590],[2685,3526],[2678,3650],[2705,3673],[2684,3739],[2594,3730],[2587,3681],[2529,3704],[2561,3772],[2595,3943],[2656,3965],[2689,4036],[2646,4090],[2617,4069],[2602,4119],[2677,4117],[2662,4175],[2686,4209],[2806,4193],[2811,4261],[2767,4276],[2790,4360],[2753,4389],[2795,4401],[2814,4360],[2844,4456],[2714,4510],[2687,4585],[2598,4624],[2578,4702],[2600,4732],[2685,4802],[2775,4801],[2815,4867],[2854,4856],[2963,4954],[2972,5015],[3013,5023],[3093,4973],[3176,4996],[3252,5087],[3344,5080],[3467,5028],[3438,4995],[3490,4854],[3485,4796],[3516,4769],[3687,4755],[3791,4736],[3837,4701],[3913,4582],[3887,4543],[3810,4504],[3887,4426],[3894,4341],[4124,4335],[4164,4232],[4276,4241],[4339,4208],[4405,4141],[4541,4148],[4578,4115],[4641,4231],[4615,4262],[4629,4334],[4685,4341],[4822,4303],[4880,4183],[4930,4158],[4972,4086],[4941,4044],[4868,4051],[4779,3976],[4737,3979],[4633,3928],[4658,3896],[4620,3829],[4655,3771],[4693,3764],[4634,3696],[4576,3695],[4541,3605],[4484,3602],[4456,3560],[4403,3579],[4348,3498],[4368,3462],[4332,3395]]]}},{"type":"Feature","id":"DE.ST","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.3,"hc-key":"de-st","hc-a2":"ST","labelrank":"3","hasc":"DE.ST","alt-name":"Saxony-Anhalt","woe-id":"2345494","subregion":null,"fips":"GM14","postal-code":"ST","name":"Sachsen-Anhalt","country":"Germany","type-en":"State","region":null,"longitude":"11.6796","woe-name":"Sachsen-Anhalt","latitude":"51.9338","woe-label":"Saxony-Anhalt, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[4629,4334],[4615,4262],[4641,4231],[4578,4115],[4541,4148],[4405,4141],[4339,4208],[4276,4241],[4164,4232],[4124,4335],[3894,4341],[3887,4426],[3810,4504],[3887,4543],[3913,4582],[3837,4701],[3791,4736],[3687,4755],[3516,4769],[3485,4796],[3490,4854],[3438,4995],[3467,5028],[3344,5080],[3252,5087],[3223,5184],[3154,5282],[3150,5376],[3201,5430],[3178,5487],[3205,5534],[3141,5601],[3185,5606],[3212,5651],[3382,5663],[3483,5683],[3465,5728],[3542,5777],[3556,5828],[3525,5854],[3580,5908],[3521,5994],[3507,6071],[3569,6112],[3516,6156],[3454,6237],[3464,6279],[3507,6288],[3466,6353],[3486,6448],[3437,6456],[3366,6582],[3335,6599],[3298,6688],[3302,6761],[3406,6774],[3469,6799],[3514,6864],[3682,6846],[3712,6819],[3850,6860],[3925,6914],[3928,6993],[3974,7006],[3989,7052],[4073,7011],[4086,6972],[4143,6988],[4203,6896],[4317,6838],[4424,6849],[4440,6815],[4518,6815],[4545,6747],[4515,6699],[4511,6638],[4544,6571],[4526,6502],[4490,6494],[4461,6381],[4483,6332],[4533,6363],[4601,6285],[4569,6226],[4561,6092],[4542,5998],[4576,5961],[4536,5879],[4591,5789],[4732,5629],[4771,5644],[4855,5577],[4895,5570],[4944,5611],[5125,5503],[5193,5497],[5295,5425],[5442,5434],[5382,5339],[5402,5228],[5377,5177],[5302,5094],[5229,5109],[5127,5162],[5059,5103],[5001,5116],[4957,5064],[4767,5059],[4757,5018],[4649,4987],[4588,4999],[4554,4952],[4552,4870],[4523,4840],[4549,4668],[4507,4621],[4541,4490],[4529,4451],[4592,4340],[4629,4334]]]}},{"type":"Feature","id":"DE.SN","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.42,"hc-key":"de-sn","hc-a2":"SN","labelrank":"3","hasc":"DE.SN","alt-name":"Saxony","woe-id":"2345493","subregion":null,"fips":"GM13","postal-code":"SN","name":"Sachsen","country":"Germany","type-en":"State","region":null,"longitude":"13.4596","woe-name":"Sachsen","latitude":"51.0053","woe-label":"Saxony, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[4509,3258],[4405,3308],[4400,3355],[4332,3395],[4368,3462],[4348,3498],[4403,3579],[4456,3560],[4484,3602],[4541,3605],[4576,3695],[4634,3696],[4693,3764],[4655,3771],[4620,3829],[4658,3896],[4633,3928],[4737,3979],[4779,3976],[4868,4051],[4941,4044],[4972,4086],[4930,4158],[4880,4183],[4822,4303],[4685,4341],[4629,4334],[4592,4340],[4529,4451],[4541,4490],[4507,4621],[4549,4668],[4523,4840],[4552,4870],[4554,4952],[4588,4999],[4649,4987],[4757,5018],[4767,5059],[4957,5064],[5001,5116],[5059,5103],[5127,5162],[5229,5109],[5302,5094],[5400,5029],[5438,4926],[5420,4905],[5423,4778],[5480,4780],[5616,4836],[5715,4764],[5930,4746],[6107,4770],[6166,4869],[6183,4934],[6259,5012],[6355,5024],[6417,4996],[6561,5069],[6636,5081],[6734,5056],[6758,5023],[6917,4967],[6948,4941],[6975,4774],[7028,4698],[7034,4650],[6991,4463],[6990,4406],[6919,4196],[6878,4138],[6852,4047],[6786,4048],[6707,4085],[6721,4174],[6647,4174],[6663,4263],[6589,4317],[6505,4307],[6406,4335],[6367,4257],[6425,4243],[6441,4198],[6498,4178],[6470,4120],[6369,4114],[6335,4068],[6200,3998],[6134,3994],[6076,3961],[6070,3909],[6029,3880],[5824,3855],[5749,3822],[5757,3783],[5694,3690],[5633,3726],[5551,3644],[5504,3661],[5444,3540],[5311,3529],[5302,3447],[5234,3405],[5150,3453],[5086,3442],[5021,3382],[4871,3371],[4836,3310],[4774,3266],[4721,3186],[4677,3050],[4628,3184],[4579,3197],[4569,3244],[4509,3258]]]}},{"type":"Feature","id":"DE.BB","properties":{"hc-group":"admin1","hc-middle-x":0.7,"hc-middle-y":0.72,"hc-key":"de-bb","hc-a2":"BB","labelrank":"3","hasc":"DE.BB","alt-name":null,"woe-id":"2345491","subregion":null,"fips":"GM11","postal-code":"BB","name":"Brandenburg","country":"Germany","type-en":"State","region":null,"longitude":"12.9206","woe-name":"Brandenburg","latitude":"52.8156","woe-label":"Brandenburg, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[5302,5094],[5377,5177],[5402,5228],[5382,5339],[5442,5434],[5295,5425],[5193,5497],[5125,5503],[4944,5611],[4895,5570],[4855,5577],[4771,5644],[4732,5629],[4591,5789],[4536,5879],[4576,5961],[4542,5998],[4561,6092],[4569,6226],[4601,6285],[4533,6363],[4483,6332],[4461,6381],[4490,6494],[4526,6502],[4544,6571],[4511,6638],[4515,6699],[4545,6747],[4518,6815],[4440,6815],[4424,6849],[4317,6838],[4203,6896],[4143,6988],[4086,6972],[4073,7011],[3989,7052],[3850,7103],[3776,7091],[3730,7153],[3831,7141],[3835,7176],[3921,7158],[3965,7196],[3948,7278],[4001,7324],[4085,7340],[4122,7295],[4201,7312],[4181,7344],[4300,7385],[4344,7417],[4385,7496],[4488,7517],[4522,7481],[4617,7446],[4694,7381],[4763,7389],[4955,7328],[4959,7292],[5063,7276],[5132,7293],[5176,7255],[5300,7387],[5365,7353],[5406,7431],[5509,7417],[5580,7482],[5614,7591],[5669,7614],[5750,7707],[5833,7724],[5820,7804],[5882,7759],[5930,7648],[6076,7644],[6112,7674],[6197,7661],[6198,7598],[6159,7518],[6091,7467],[6092,7440],[6215,7427],[6273,7500],[6328,7538],[6348,7453],[6376,7425],[6328,7318],[6342,7256],[6309,7138],[6237,7068],[6148,7006],[6168,6891],[6138,6853],[6218,6811],[6364,6707],[6462,6590],[6514,6573],[6599,6495],[6573,6411],[6595,6383],[6522,6274],[6530,6219],[6590,6074],[6669,6047],[6685,5995],[6670,5863],[6738,5805],[6691,5684],[6693,5599],[6661,5524],[6614,5471],[6609,5416],[6653,5370],[6670,5299],[6734,5245],[6761,5150],[6734,5056],[6636,5081],[6561,5069],[6417,4996],[6355,5024],[6259,5012],[6183,4934],[6166,4869],[6107,4770],[5930,4746],[5715,4764],[5616,4836],[5480,4780],[5423,4778],[5420,4905],[5438,4926],[5400,5029],[5302,5094]],[[5625,6541],[5596,6567],[5523,6513],[5478,6509],[5456,6552],[5388,6507],[5379,6452],[5336,6469],[5326,6363],[5291,6214],[5345,6186],[5393,6216],[5462,6216],[5576,6173],[5601,6223],[5756,6173],[5764,6126],[5814,6173],[5848,6281],[5773,6332],[5740,6327],[5755,6401],[5687,6431],[5629,6494],[5625,6541]]]}},{"type":"Feature","id":"DE.NW","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.45,"hc-key":"de-nw","hc-a2":"NW","labelrank":"3","hasc":"DE.NW","alt-name":"North Rhine-Westphalia","woe-id":"2345487","subregion":null,"fips":"GM07","postal-code":"NW","name":"Nordrhein-Westfalen","country":"Germany","type-en":"State","region":null,"longitude":"7.65708","woe-name":"Nordrhein-Westfalen","latitude":"51.6146","woe-label":"North Rhine-Westphalia, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[-599,3358],[-627,3423],[-610,3513],[-619,3580],[-740,3600],[-770,3676],[-686,3770],[-747,3775],[-826,3917],[-888,3913],[-916,4017],[-887,4083],[-846,4100],[-825,4187],[-879,4221],[-872,4283],[-986,4278],[-999,4387],[-941,4365],[-882,4424],[-732,4523],[-740,4568],[-786,4541],[-810,4580],[-797,4638],[-717,4754],[-685,4777],[-659,4848],[-662,5018],[-748,5143],[-733,5210],[-808,5266],[-794,5305],[-863,5340],[-838,5401],[-867,5445],[-728,5502],[-667,5482],[-718,5546],[-688,5560],[-606,5507],[-473,5451],[-474,5496],[-420,5477],[-256,5537],[-156,5547],[-95,5616],[-120,5675],[-206,5726],[-123,5824],[-67,5828],[-17,5891],[38,5920],[109,5995],[192,6024],[346,6030],[447,6085],[533,6159],[574,6160],[611,6219],[620,6303],[680,6282],[697,6213],[802,6139],[868,6157],[923,6064],[855,5921],[894,5880],[954,5870],[928,5800],[842,5757],[858,5709],[906,5683],[953,5720],[1090,5739],[1165,5807],[1273,5773],[1365,5879],[1337,5901],[1338,6040],[1313,6128],[1234,6174],[1208,6249],[1264,6233],[1333,6250],[1377,6321],[1492,6342],[1552,6280],[1552,6178],[1654,6150],[1769,6176],[1803,6250],[1874,6297],[1916,6267],[1896,6232],[1911,6172],[1863,6090],[1815,6080],[1784,5974],[1857,5934],[1837,5877],[1785,5868],[1791,5792],[1910,5786],[1955,5706],[1961,5629],[1937,5583],[2036,5562],[2008,5493],[2076,5468],[2064,5400],[2179,5414],[2161,5278],[2120,5222],[2104,5108],[2162,5109],[2068,5052],[2087,5032],[2034,4928],[1971,4887],[1962,4847],[1869,4827],[1849,4883],[1790,4921],[1694,4883],[1716,4758],[1498,4724],[1401,4605],[1422,4558],[1522,4595],[1548,4457],[1465,4342],[1348,4352],[1363,4250],[1270,4107],[1197,4033],[1141,4061],[996,3932],[1026,3871],[987,3792],[918,3804],[856,3921],[849,4010],[824,4003],[741,4076],[756,4132],[705,4148],[665,4120],[670,4015],[588,3981],[607,3941],[516,3877],[327,3844],[310,3759],[230,3730],[155,3757],[115,3710],[23,3699],[-79,3654],[-129,3611],[-130,3548],[-189,3564],[-244,3545],[-221,3384],[-290,3368],[-337,3399],[-377,3385],[-405,3424],[-522,3379],[-572,3441],[-551,3369],[-599,3358]]]}},{"type":"Feature","id":"DE.BW","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.57,"hc-key":"de-bw","hc-a2":"BW","labelrank":"3","hasc":"DE.BW","alt-name":null,"woe-id":"2345481","subregion":null,"fips":"GM01","postal-code":"BW","name":"Baden-Württemberg","country":"Germany","type-en":"State","region":null,"longitude":"9.00328","woe-name":"Baden-Württemberg","latitude":"48.59","woe-label":"Baden-Wurttemberg, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[2239,-559],[2187,-544],[2145,-476],[2047,-428],[1971,-418],[1882,-356],[1835,-298],[1739,-226],[1739,-266],[1821,-325],[1862,-429],[1683,-417],[1578,-452],[1515,-410],[1478,-355],[1401,-389],[1406,-315],[1348,-257],[1301,-292],[1296,-246],[1166,-286],[1105,-363],[1094,-421],[1156,-458],[1260,-429],[1250,-531],[1215,-485],[1145,-536],[1055,-538],[995,-487],[891,-484],[803,-549],[637,-553],[625,-514],[552,-501],[500,-554],[420,-568],[377,-538],[401,-494],[331,-508],[336,-475],[275,-386],[293,-301],[285,-229],[322,-152],[321,-97],[385,74],[347,146],[346,204],[389,320],[451,400],[479,501],[527,560],[517,632],[557,759],[593,787],[595,920],[636,980],[727,1051],[749,1113],[874,1198],[920,1312],[970,1386],[1049,1456],[1120,1593],[1153,1762],[1240,1851],[1222,1876],[1259,1961],[1258,2053],[1231,2086],[1185,2212],[1193,2246],[1267,2235],[1327,2169],[1374,2196],[1362,2285],[1425,2300],[1465,2186],[1620,2133],[1582,2102],[1546,1992],[1576,1981],[1669,2061],[1681,2128],[1833,2142],[1794,2224],[1822,2225],[1951,2226],[1982,2294],[2064,2326],[2089,2311],[2111,2405],[2009,2440],[2045,2514],[2170,2526],[2270,2491],[2310,2508],[2295,2390],[2337,2378],[2367,2418],[2382,2373],[2441,2421],[2478,2324],[2521,2263],[2481,2182],[2549,2220],[2569,2085],[2644,2082],[2704,2171],[2743,2125],[2730,2026],[2781,1948],[2736,1927],[2770,1796],[2746,1792],[2758,1698],[2865,1588],[2874,1482],[2947,1458],[3043,1327],[3043,1179],[3018,1085],[3076,992],[3018,955],[3011,996],[2962,944],[2894,998],[2869,967],[2908,865],[2909,758],[2759,667],[2741,697],[2680,677],[2598,551],[2666,444],[2716,225],[2741,168],[2735,67],[2694,-37],[2715,-69],[2704,-152],[2733,-238],[2686,-279],[2718,-306],[2733,-417],[2681,-470],[2664,-430],[2565,-456],[2482,-434],[2340,-530],[2239,-559]]]}},{"type":"Feature","id":"DE.HE","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.43,"hc-key":"de-he","hc-a2":"HE","labelrank":"3","hasc":"DE.HE","alt-name":"Hesse","woe-id":"2345485","subregion":null,"fips":"GM05","postal-code":"HE","name":"Hessen","country":"Germany","type-en":"State","region":null,"longitude":"8.958729999999999","woe-name":"Hessen","latitude":"50.6098","woe-label":"Hesse, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[1822,2225],[1794,2224],[1833,2142],[1681,2128],[1669,2061],[1576,1981],[1546,1992],[1582,2102],[1620,2133],[1465,2186],[1425,2300],[1362,2285],[1374,2196],[1327,2169],[1267,2235],[1193,2246],[1146,2366],[1164,2429],[1252,2492],[1207,2507],[1136,2682],[1135,2777],[1042,2890],[994,2902],[880,2867],[761,2809],[725,2809],[701,2863],[633,2925],[699,2971],[711,3009],[771,2997],[751,3062],[776,3124],[840,3161],[866,3143],[889,3208],[958,3226],[897,3359],[837,3395],[874,3476],[864,3568],[898,3600],[956,3573],[1009,3654],[974,3739],[987,3792],[1026,3871],[996,3932],[1141,4061],[1197,4033],[1270,4107],[1363,4250],[1348,4352],[1465,4342],[1548,4457],[1522,4595],[1422,4558],[1401,4605],[1498,4724],[1716,4758],[1694,4883],[1790,4921],[1849,4883],[1869,4827],[1962,4847],[1971,4887],[2034,4928],[2087,5032],[2068,5052],[2162,5109],[2209,5085],[2320,5080],[2374,4999],[2337,4999],[2295,4916],[2331,4855],[2324,4761],[2280,4759],[2268,4680],[2367,4641],[2392,4608],[2436,4632],[2395,4709],[2561,4781],[2600,4732],[2578,4702],[2598,4624],[2687,4585],[2714,4510],[2844,4456],[2814,4360],[2795,4401],[2753,4389],[2790,4360],[2767,4276],[2811,4261],[2806,4193],[2686,4209],[2662,4175],[2677,4117],[2602,4119],[2617,4069],[2646,4090],[2689,4036],[2656,3965],[2595,3943],[2561,3772],[2529,3704],[2587,3681],[2594,3730],[2684,3739],[2705,3673],[2678,3650],[2685,3526],[2637,3431],[2510,3363],[2428,3368],[2410,3234],[2349,3198],[2331,3136],[2287,3122],[2197,3140],[2185,3057],[2211,3046],[2190,2962],[2101,2941],[2032,3007],[1942,3015],[1873,2972],[1834,2991],[1745,2953],[1714,2893],[1759,2878],[1755,2689],[1792,2581],[1855,2520],[1845,2393],[1814,2380],[1824,2315],[1788,2275],[1822,2225]]]}},{"type":"Feature","id":"DE.HH","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.57,"hc-key":"de-hh","hc-a2":"HH","labelrank":"9","hasc":"DE.HH","alt-name":null,"woe-id":"2345484","subregion":null,"fips":"GM04","postal-code":"HH","name":"Hamburg","country":"Germany","type-en":"State","region":null,"longitude":"10.0344","woe-name":"Hamburg","latitude":"53.559","woe-label":"Hamburg, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[2937,7589],[2819,7550],[2733,7616],[2652,7566],[2545,7592],[2472,7698],[2469,7753],[2515,7765],[2450,7788],[2474,7866],[2523,7821],[2606,7888],[2661,7896],[2720,7937],[2744,7991],[2828,7994],[2803,7941],[2851,7870],[2840,7801],[2809,7787],[2820,7719],[2925,7621],[2937,7589]]]}},{"type":"Feature","id":"DE.RP","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.52,"hc-key":"de-rp","hc-a2":"RP","labelrank":"3","hasc":"DE.RP","alt-name":"Rhineland-Palatinate","woe-id":"2345488","subregion":null,"fips":"GM08","postal-code":"RP","name":"Rheinland-Pfalz","country":"Germany","type-en":"State","region":null,"longitude":"7.36974","woe-name":"Rheinland-Pfalz","latitude":"49.8685","woe-label":"Rhineland-Palatinate, DE, Germany","type":"Land"},"geometry":{"type":"Polygon","coordinates":[[[1193,2246],[1185,2212],[1231,2086],[1258,2053],[1259,1961],[1222,1876],[1240,1851],[1153,1762],[1120,1593],[1049,1456],[970,1387],[870,1419],[728,1501],[659,1500],[583,1525],[468,1512],[433,1550],[354,1583],[311,1647],[317,1679],[222,1704],[154,1761],[177,1825],[247,1941],[247,1987],[171,2011],[125,2099],[184,2151],[152,2282],[108,2263],[32,2320],[-23,2325],[-87,2364],[-144,2364],[-216,2322],[-352,2267],[-451,2244],[-555,2254],[-683,2250],[-678,2307],[-612,2405],[-609,2447],[-540,2487],[-526,2617],[-602,2636],[-768,2760],[-807,2858],[-818,2840],[-868,2991],[-834,3151],[-796,3173],[-809,3218],[-711,3272],[-665,3342],[-599,3358],[-551,3369],[-572,3441],[-522,3379],[-405,3424],[-377,3385],[-337,3399],[-290,3368],[-221,3384],[-244,3545],[-189,3564],[-130,3548],[-129,3611],[-79,3654],[23,3699],[115,3710],[155,3757],[230,3730],[310,3759],[327,3844],[516,3877],[607,3941],[588,3981],[670,4015],[665,4120],[705,4148],[756,4132],[741,4076],[824,4003],[849,4010],[856,3921],[918,3804],[987,3792],[974,3739],[1009,3654],[956,3573],[898,3600],[864,3568],[874,3476],[837,3395],[897,3359],[958,3226],[889,3208],[866,3143],[840,3161],[776,3124],[751,3062],[771,2997],[711,3009],[699,2971],[633,2925],[701,2863],[725,2809],[761,2809],[880,2867],[994,2902],[1042,2890],[1135,2777],[1136,2682],[1207,2507],[1252,2492],[1164,2429],[1146,2366],[1193,2246]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/north_america/ca-all.geo.json
const ca_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Canada","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:102002"}},"hc-transform":{"default":{"rotation":-0.0872664625997,"crs":"+proj=lcc +lat_1=50 +lat_2=70 +lat_0=40 +lon_0=-96 +x_0=0 +y_0=0 +datum=NAD83 +units=m +no_defs","scale":0.000128658751263,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-2521511.95594,"yoffset":4974352.42937}},"features":[{"type":"Feature","id":"CA.5682","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.5,"hc-key":"ca-5682","hc-a2":"NU","labelrank":"20","hasc":"-99","alt-name":null,"woe-id":"-99","subregion":null,"fips":null,"postal-code":null,"name":null,"country":"Canada","type-en":null,"region":null,"longitude":"-61.4664","woe-name":null,"latitude":"47.7941","woe-label":null,"type":null},"geometry":{"type":"Polygon","coordinates":[[[8705,3454],[8701,3445],[8696,3445],[8700,3452],[8705,3454]]]}},{"type":"Feature","id":"CA.BC","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.54,"hc-key":"ca-bc","hc-a2":"BC","labelrank":"2","hasc":"CA.BC","alt-name":"Colombie britannique|New Caledonia","woe-id":"2344916","subregion":"British Columbia","fips":"CA02","postal-code":"BC","name":"British Columbia","country":"Canada","type-en":"Province","region":"Western Canada","longitude":"-124.662","woe-name":"British Columbia","latitude":"54.6943","woe-label":"British Columbia, CA, Canada","type":"Province"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-488,2785],[-490,2732],[-516,2741],[-524,2789],[-488,2785]]],[[[-310,2847],[-257,2839],[-236,2813],[-272,2806],[-310,2847]]],[[[-370,3310],[-461,3275],[-418,3328],[-340,3338],[-370,3310]]],[[[-452,3444],[-485,3387],[-462,3464],[-421,3467],[-452,3444]]],[[[-582,3613],[-567,3581],[-586,3571],[-589,3628],[-630,3697],[-629,3756],[-578,3674],[-582,3613]]],[[[-468,3651],[-469,3608],[-493,3617],[-471,3681],[-425,3682],[-468,3651]]],[[[-613,3794],[-634,3811],[-616,3835],[-580,3840],[-566,3808],[-613,3794]]],[[[-210,2665],[-178,2631],[-163,2578],[-213,2647],[-210,2665],[-210,2665],[-210,2665]]],[[[-210,2666],[-210,2665],[-210,2665],[-210,2665],[-211,2666],[-210,2666],[-210,2666],[-210,2666]]],[[[639,4744],[1038,4617],[669,3324],[685,3260],[664,3269],[673,3220],[717,3194],[723,3157],[749,3135],[759,3156],[783,3123],[789,3066],[817,3013],[812,2944],[845,2962],[874,2937],[859,2912],[881,2873],[920,2872],[947,2764],[985,2775],[1042,2611],[1088,2562],[1079,2537],[1115,2502],[1128,2458],[1155,2456],[1177,2404],[1173,2275],[1148,2235],[1184,2143],[1205,2135],[1220,2088],[-11,2407],[-32,2435],[-58,2422],[-54,2537],[-93,2528],[-140,2575],[-145,2602],[-104,2639],[-120,2663],[-145,2639],[-210,2666],[-210,2666],[-210,2666],[-196,2732],[-173,2754],[-243,2729],[-209,2784],[-215,2827],[-249,2856],[-295,2850],[-417,2918],[-405,2946],[-365,2963],[-363,2999],[-445,2998],[-496,3062],[-510,3123],[-445,3181],[-413,3184],[-334,3155],[-413,3198],[-482,3166],[-483,3217],[-459,3266],[-418,3288],[-325,3304],[-343,3347],[-435,3327],[-438,3400],[-472,3369],[-408,3486],[-436,3467],[-456,3489],[-440,3550],[-465,3601],[-455,3657],[-434,3652],[-413,3692],[-371,3735],[-430,3699],[-478,3686],[-512,3644],[-554,3796],[-528,3835],[-554,3838],[-564,3887],[-516,3962],[-452,4004],[-534,3970],[-416,4053],[-387,4162],[-357,4182],[-357,4227],[-388,4245],[-388,4272],[-438,4338],[-473,4400],[-497,4410],[-485,4455],[-504,4480],[-479,4509],[-507,4536],[-484,4553],[-488,4629],[-485,4850],[-499,4940],[-524,4979],[-519,5029],[-530,5082],[-549,5100],[-549,5137],[-528,5157],[-547,5229],[-652,5239],[-697,5188],[-726,5171],[-748,5183],[-832,5171],[-812,5244],[-847,5398],[-840,5428],[-861,5470],[-860,5470],[639,4744]]],[[[-474,3336],[-471,3309],[-440,3349],[-441,3319],[-489,3260],[-501,3173],[-526,3191],[-523,3223],[-498,3235],[-514,3276],[-492,3303],[-506,3363],[-474,3336]]],[[[-502,3619],[-515,3567],[-490,3611],[-448,3560],[-449,3526],[-491,3451],[-481,3451],[-487,3415],[-510,3423],[-509,3450],[-504,3450],[-512,3453],[-484,3515],[-553,3435],[-563,3538],[-541,3497],[-518,3575],[-536,3591],[-502,3619]]],[[[-541,3574],[-555,3567],[-559,3644],[-587,3755],[-587,3720],[-614,3760],[-568,3795],[-541,3739],[-516,3637],[-540,3637],[-541,3574]]],[[[-127,2332],[-171,2301],[-214,2329],[-307,2411],[-361,2485],[-298,2513],[-375,2514],[-433,2580],[-433,2614],[-466,2638],[-481,2721],[-449,2720],[-480,2752],[-486,2805],[-539,2805],[-523,2853],[-548,2838],[-556,2891],[-619,2900],[-588,2922],[-632,3025],[-630,3063],[-550,3058],[-519,3037],[-514,2997],[-461,2943],[-357,2876],[-250,2782],[-273,2718],[-249,2662],[-264,2658],[-240,2584],[-145,2501],[-100,2406],[-122,2406],[-127,2332]]],[[[-816,3699],[-854,3632],[-840,3612],[-856,3532],[-836,3532],[-829,3474],[-857,3465],[-878,3591],[-908,3674],[-910,3728],[-921,3777],[-860,3751],[-819,3753],[-816,3699]]],[[[-868,4009],[-794,3951],[-796,3895],[-861,3884],[-828,3856],[-790,3895],[-785,3922],[-717,3923],[-777,3862],[-822,3780],[-880,3759],[-909,3773],[-927,3809],[-889,3827],[-932,3876],[-909,3908],[-921,3935],[-868,4009]]]]}},{"type":"Feature","id":"CA.NU","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.66,"hc-key":"ca-nu","hc-a2":"NU","labelrank":"2","hasc":"CA.NU","alt-name":null,"woe-id":"20069920","subregion":null,"fips":"CA10","postal-code":"NU","name":"Nunavut","country":"Canada","type-en":"Territory","region":"Northern Canada","longitude":"-97.1443","woe-name":"Nunavut","latitude":"64.3853","woe-label":"Nunavut, CA, Canada","type":"Territoire"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3649,6454],[3647,6477],[3621,6452],[3590,6452],[3561,6502],[3545,6474],[3466,6519],[3436,6529],[3411,6579],[3401,6627],[3423,6698],[3388,6740],[3401,6803],[3392,6846],[3423,6875],[3449,6850],[3458,6894],[3423,6906],[3459,6963],[3465,6999],[3505,7014],[3470,7003],[3454,7127],[3413,7194],[3415,7268],[3396,7375],[3398,7396],[3424,7405],[3451,7392],[3416,7434],[3418,7461],[3448,7485],[3511,7509],[3566,7507],[3603,7480],[3645,7495],[3681,7495],[3735,7480],[3686,7314],[3667,7228],[3637,7192],[3567,7202],[3518,7191],[3538,7179],[3572,7127],[3553,7092],[3539,7024],[3511,7015],[3529,6942],[3539,6972],[3574,6970],[3570,6944],[3637,6886],[3652,6843],[3656,6767],[3700,6739],[3735,6688],[3747,6653],[3759,6678],[3783,6637],[3748,6623],[3730,6634],[3709,6607],[3741,6614],[3755,6602],[3736,6566],[3695,6521],[3743,6520],[3784,6486],[3807,6530],[3836,6500],[3870,6511],[3908,6494],[3907,6450],[3833,6451],[3877,6416],[3912,6368],[3905,6351],[3919,6306],[3915,6272],[3940,6262],[3949,6233],[3966,6267],[3978,6329],[3965,6417],[3983,6466],[4014,6469],[4037,6439],[4105,6391],[4145,6292],[4139,6261],[4113,6291],[4098,6269],[4133,6164],[4216,6088],[4231,6064],[4264,6075],[4271,6113],[4296,6110],[4278,6176],[4310,6267],[4301,6326],[4307,6348],[4293,6416],[4315,6430],[4361,6435],[4328,6449],[4349,6477],[4332,6493],[4365,6502],[4292,6524],[4264,6577],[4269,6601],[4253,6618],[4259,6664],[4282,6654],[4292,6676],[4331,6685],[4382,6669],[4368,6689],[4395,6687],[4388,6666],[4464,6682],[4444,6706],[4470,6709],[4471,6676],[4488,6646],[4435,6640],[4511,6635],[4529,6613],[4596,6610],[4608,6590],[4579,6539],[4633,6524],[4639,6494],[4595,6433],[4557,6433],[4548,6413],[4582,6408],[4586,6370],[4615,6369],[4624,6318],[4693,6277],[4721,6247],[4729,6142],[4695,6127],[4690,6077],[4665,6022],[4634,6010],[4625,5961],[4600,5954],[4580,5989],[4545,6004],[4539,6047],[4530,6018],[4497,6048],[4495,6068],[4455,6051],[4531,6012],[4530,5991],[4558,5972],[4598,5919],[4574,5914],[4547,5934],[4509,5928],[4539,5901],[4458,5902],[4430,5958],[4396,5935],[4353,5936],[4319,5900],[4340,5879],[4414,5863],[4410,5833],[4379,5796],[4382,5758],[4321,5653],[4272,5643],[4205,5685],[4177,5693],[4089,5744],[4059,5726],[3929,5717],[3977,5695],[3967,5719],[4071,5707],[4120,5676],[4172,5621],[4355,5640],[4370,5622],[4338,5483],[4320,5471],[4319,5397],[4258,5335],[4199,5360],[4229,5323],[4175,5342],[4147,5376],[4139,5345],[4156,5313],[4130,5306],[4147,5280],[4127,5229],[4095,5237],[4091,5186],[4041,5221],[3988,5231],[3918,5234],[3947,5220],[3917,5178],[3975,5228],[4025,5185],[4085,5175],[4110,5106],[4097,5075],[4077,5074],[4042,5032],[3970,5041],[3941,5019],[3994,4996],[3996,4969],[3948,4965],[3949,4937],[3925,4944],[3931,4903],[3897,4877],[3914,4865],[3893,4834],[3906,4802],[3850,4821],[3891,4789],[3823,4709],[3842,4682],[3813,4679],[3828,4658],[3800,4574],[3789,4504],[3766,4500],[3783,4469],[3772,4382],[3772,4382],[3772,4382],[2984,4342],[2984,4342],[2988,5267],[2964,5273],[2382,5413],[2315,5435],[2284,5466],[2197,5603],[2035,5627],[1467,6320],[1465,6325],[1562,6653],[1583,6612],[1694,6540],[1731,6484],[1881,6400],[1861,6436],[1892,6441],[1957,6399],[1991,6356],[2026,6278],[2012,6247],[1936,6269],[1950,6246],[1910,6253],[1913,6214],[1875,6203],[1903,6168],[1930,6165],[2002,6124],[2120,6100],[2130,6113],[2194,6097],[2257,6110],[2325,6154],[2346,6076],[2400,6070],[2412,5988],[2424,6039],[2443,6025],[2480,5965],[2485,5912],[2465,5912],[2459,5873],[2527,5754],[2503,5810],[2490,5905],[2521,5858],[2525,5892],[2546,5872],[2532,5917],[2517,5917],[2512,5988],[2519,6010],[2489,6055],[2484,5972],[2473,6020],[2497,6090],[2519,6101],[2507,6142],[2543,6128],[2568,6145],[2599,6137],[2614,6167],[2626,6145],[2629,6189],[2687,6201],[2698,6249],[2625,6228],[2615,6181],[2602,6205],[2571,6176],[2539,6197],[2509,6181],[2528,6156],[2470,6159],[2464,6195],[2434,6190],[2485,6262],[2566,6272],[2651,6311],[2692,6299],[2713,6266],[2715,6224],[2704,6197],[2755,6155],[2778,6155],[2786,6110],[2836,6106],[2864,6116],[2912,6083],[2928,6058],[2965,6037],[2993,6052],[3031,6027],[3054,6047],[3078,6043],[3098,6065],[3206,6056],[3224,6039],[3295,6063],[3263,6094],[3275,6124],[3318,6053],[3370,6023],[3363,6041],[3399,6063],[3348,6113],[3319,6088],[3291,6105],[3295,6142],[3260,6185],[3301,6173],[3339,6189],[3318,6228],[3377,6214],[3399,6189],[3395,6170],[3426,6177],[3444,6163],[3421,6119],[3491,6185],[3474,6080],[3479,6035],[3465,6048],[3459,6000],[3493,5995],[3481,5951],[3497,5948],[3523,5983],[3537,5968],[3518,5936],[3544,5951],[3564,5898],[3519,5888],[3473,5895],[3524,5848],[3501,5882],[3570,5883],[3560,5939],[3572,5969],[3548,6004],[3540,6043],[3519,6057],[3532,6139],[3581,6134],[3619,6186],[3627,6216],[3685,6281],[3659,6273],[3664,6329],[3634,6355],[3625,6301],[3583,6296],[3580,6343],[3614,6368],[3598,6387],[3600,6427],[3627,6433],[3649,6454]],[[3649,6454],[3649,6450],[3649,6450],[3649,6450],[3630,6411],[3635,6394],[3665,6445],[3650,6440],[3649,6450],[3649,6450],[3649,6450],[3652,6457],[3649,6454]]],[[[5655,3268],[5695,3275],[5755,3236],[5783,3187],[5737,3185],[5588,3200],[5600,3240],[5655,3268]]],[[[5752,3962],[5747,4044],[5757,4049],[5776,3995],[5752,3962]]],[[[6480,5377],[6517,5367],[6522,5326],[6499,5290],[6481,5295],[6465,5368],[6480,5377]]],[[[6625,5763],[6589,5780],[6603,5791],[6665,5761],[6687,5735],[6692,5693],[6604,5707],[6632,5749],[6625,5763]]],[[[5237,5243],[5263,5222],[5276,5166],[5264,5068],[5208,5093],[5187,5122],[5179,5167],[5197,5236],[5237,5243]]],[[[6565,5924],[6590,5940],[6593,5899],[6559,5890],[6565,5924]]],[[[5999,5679],[6033,5678],[6079,5658],[6069,5637],[6031,5626],[5957,5670],[5999,5679]]],[[[5250,5507],[5322,5521],[5352,5495],[5353,5474],[5325,5440],[5247,5482],[5250,5507]]],[[[5352,5587],[5400,5582],[5423,5568],[5417,5542],[5388,5540],[5334,5562],[5352,5587]]],[[[4486,5855],[4502,5851],[4554,5779],[4546,5759],[4500,5793],[4486,5855]]],[[[4546,5887],[4614,5861],[4611,5837],[4640,5821],[4669,5827],[4661,5805],[4623,5806],[4625,5824],[4584,5817],[4578,5847],[4551,5863],[4546,5887]]],[[[5217,6582],[5292,6589],[5310,6551],[5234,6517],[5209,6525],[5182,6563],[5217,6582]]],[[[4278,6232],[4271,6183],[4248,6192],[4222,6249],[4234,6307],[4262,6290],[4278,6232]]],[[[2786,6192],[2744,6226],[2775,6231],[2791,6215],[2786,6192]]],[[[5128,6658],[5155,6614],[5092,6635],[5088,6682],[5128,6658]]],[[[3010,6272],[3018,6247],[3003,6225],[2964,6250],[2990,6280],[3010,6272]]],[[[3136,6317],[3139,6353],[3151,6331],[3138,6277],[3124,6259],[3102,6275],[3101,6319],[3136,6317]]],[[[4796,6725],[4821,6713],[4809,6691],[4805,6616],[4781,6587],[4759,6602],[4764,6641],[4780,6651],[4781,6704],[4796,6725]]],[[[4897,6770],[4928,6776],[4922,6729],[4930,6713],[4903,6707],[4877,6762],[4897,6770]]],[[[3408,6459],[3446,6463],[3451,6416],[3419,6440],[3408,6459]]],[[[3482,6476],[3507,6459],[3507,6429],[3485,6412],[3480,6464],[3462,6419],[3463,6470],[3482,6476]]],[[[4809,6799],[4808,6774],[4784,6743],[4758,6738],[4768,6775],[4791,6808],[4809,6799]]],[[[4675,6783],[4709,6768],[4673,6731],[4677,6717],[4646,6711],[4604,6743],[4636,6765],[4660,6756],[4675,6783]]],[[[4120,6693],[4146,6699],[4165,6679],[4120,6663],[4093,6683],[4120,6693]]],[[[3091,6694],[3105,6694],[3126,6646],[3093,6665],[3091,6694]]],[[[5109,7263],[5144,7269],[5150,7245],[5113,7206],[5095,7225],[5109,7263]]],[[[3339,7251],[3353,7238],[3331,7208],[3314,7241],[3334,7268],[3339,7251]]],[[[2896,7734],[2905,7708],[2888,7683],[2866,7673],[2827,7699],[2843,7749],[2875,7768],[2896,7734]]],[[[3322,7828],[3345,7809],[3330,7784],[3313,7784],[3294,7758],[3281,7790],[3322,7828]]],[[[2994,7889],[2957,7841],[2923,7839],[2940,7874],[2986,7894],[2994,7889]]],[[[3431,7865],[3412,7859],[3393,7901],[3414,7916],[3431,7865]]],[[[4241,8139],[4255,8134],[4246,8104],[4270,8083],[4247,8079],[4245,8059],[4224,8068],[4241,8139]]],[[[3087,8061],[3034,8024],[3016,8031],[3053,8065],[3087,8061]]],[[[3656,8074],[3639,8063],[3603,8110],[3602,8128],[3628,8144],[3647,8127],[3644,8094],[3656,8074]]],[[[3255,9011],[3272,9007],[3269,8989],[3230,8998],[3255,9011]]],[[[5497,7102],[5495,7097],[5494,7102],[5494,7102],[5494,7102],[5497,7102],[5497,7102]]],[[[3199,7451],[3262,7474],[3268,7463],[3239,7418],[3189,7399],[3157,7421],[3199,7451]]],[[[2888,7884],[2974,7916],[2980,7910],[2979,7898],[2904,7871],[2888,7884]]],[[[2872,7947],[2959,7968],[2964,7958],[2969,7932],[2952,7914],[2898,7905],[2868,7916],[2872,7947]]],[[[2874,8051],[2896,8040],[2941,8003],[2926,7972],[2869,7973],[2869,8006],[2857,8037],[2874,8051]]],[[[3551,8323],[3580,8321],[3616,8287],[3625,8257],[3608,8226],[3562,8242],[3544,8263],[3538,8311],[3551,8323]]],[[[2827,8298],[2849,8254],[2847,8226],[2861,8226],[2876,8200],[2873,8164],[2857,8155],[2819,8202],[2798,8304],[2827,8298]]],[[[3039,8321],[3053,8299],[3022,8295],[3010,8283],[2978,8296],[2981,8332],[3017,8333],[3039,8321]]],[[[3093,8867],[3107,8858],[3120,8864],[3139,8825],[3143,8783],[3138,8755],[3116,8774],[3103,8807],[3083,8801],[3077,8838],[3093,8867]]],[[[3427,8259],[3405,8251],[3385,8257],[3302,8249],[3284,8275],[3285,8301],[3301,8315],[3322,8329],[3326,8314],[3347,8327],[3413,8332],[3434,8321],[3427,8259]]],[[[5497,7102],[5511,7134],[5529,7125],[5525,7096],[5497,7102],[5497,7102]]],[[[2454,7126],[2467,7123],[2455,7135],[2456,7141],[2470,7135],[2459,7164],[2461,7182],[2475,7185],[2462,7192],[2469,7244],[2483,7218],[2549,7139],[2542,7094],[2555,7045],[2550,7009],[2565,6999],[2555,6966],[2573,6927],[2591,6925],[2605,6956],[2627,6961],[2628,6984],[2597,7039],[2604,7071],[2591,7124],[2600,7136],[2590,7179],[2594,7280],[2613,7274],[2603,7313],[2629,7304],[2659,7272],[2680,7297],[2718,7243],[2743,7224],[2771,7173],[2771,7097],[2792,7033],[2785,7019],[2826,6902],[2831,6849],[2815,6841],[2803,6796],[2840,6745],[2849,6711],[2909,6656],[2910,6694],[2930,6657],[2997,6601],[3016,6610],[3029,6566],[3064,6585],[3080,6499],[3073,6467],[3045,6470],[3033,6518],[3018,6463],[2979,6520],[2966,6489],[2948,6485],[2953,6445],[2932,6439],[2882,6478],[2876,6459],[2927,6406],[2956,6426],[2988,6427],[2979,6398],[3012,6355],[2995,6313],[2911,6276],[2876,6274],[2797,6311],[2785,6294],[2731,6317],[2761,6336],[2686,6369],[2645,6374],[2655,6421],[2636,6445],[2604,6416],[2605,6388],[2569,6344],[2519,6329],[2472,6335],[2434,6294],[2378,6278],[2299,6283],[2287,6255],[2256,6257],[2285,6277],[2137,6283],[2122,6275],[2078,6311],[2062,6361],[2080,6413],[2075,6448],[2025,6478],[1962,6481],[1904,6506],[1862,6552],[1854,6597],[1870,6589],[1845,6654],[1852,6678],[2167,6613],[2163,6576],[2195,6575],[2197,6608],[2386,6581],[2454,7126]]],[[[2552,7904],[2586,7921],[2596,7943],[2578,7973],[2561,7976],[2569,8035],[2597,8065],[2621,8107],[2644,8114],[2656,8071],[2641,8063],[2649,8019],[2667,7978],[2639,7924],[2675,7926],[2684,7904],[2669,7889],[2716,7882],[2723,7853],[2726,7893],[2744,7919],[2789,7900],[2802,7876],[2806,7823],[2783,7786],[2786,7754],[2760,7703],[2762,7687],[2717,7678],[2701,7661],[2671,7668],[2663,7694],[2639,7670],[2617,7667],[2597,7705],[2547,7662],[2522,7664],[2542,7820],[2603,7801],[2610,7830],[2598,7861],[2551,7896],[2552,7904]]],[[[2616,8406],[2635,8393],[2611,8367],[2616,8406]]],[[[2633,8543],[2653,8517],[2661,8486],[2649,8451],[2622,8460],[2632,8539],[2633,8543]]],[[[6838,5533],[6840,5524],[6792,5531],[6809,5549],[6842,5539],[6838,5533]]],[[[5655,3947],[5676,3971],[5682,4031],[5697,4051],[5729,3989],[5717,3986],[5707,3900],[5685,3896],[5676,3943],[5659,3871],[5640,3882],[5655,3947]]],[[[6463,5976],[6518,5943],[6542,5909],[6516,5904],[6490,5940],[6364,5922],[6333,5943],[6323,5921],[6223,5950],[6174,5974],[6214,5933],[6153,5950],[6083,5955],[6064,5936],[6089,5917],[6184,5877],[6194,5898],[6227,5871],[6263,5873],[6336,5846],[6352,5826],[6370,5843],[6431,5820],[6472,5792],[6497,5795],[6499,5749],[6529,5737],[6505,5713],[6446,5717],[6413,5703],[6379,5711],[6259,5670],[6203,5672],[6125,5699],[6132,5727],[6079,5710],[6057,5687],[6023,5698],[5953,5691],[5884,5704],[5864,5736],[5820,5739],[5862,5754],[5884,5799],[5855,5791],[5846,5816],[5808,5789],[5762,5835],[5760,5803],[5735,5797],[5691,5828],[5685,5849],[5640,5869],[5654,5830],[5600,5897],[5606,5850],[5583,5898],[5557,5896],[5576,5838],[5536,5916],[5514,5867],[5512,5822],[5395,5829],[5386,5750],[5345,5725],[5351,5710],[5303,5717],[5288,5697],[5233,5706],[5181,5753],[5179,5790],[5162,5817],[5171,5843],[5215,5895],[5188,5914],[5184,5944],[5253,5959],[5347,5951],[5385,5934],[5380,5903],[5419,5865],[5426,5874],[5398,5923],[5368,5949],[5322,5966],[5390,5979],[5387,6011],[5434,6017],[5463,6078],[5518,6084],[5479,6130],[5437,6143],[5373,6186],[5419,6303],[5434,6366],[5425,6426],[5453,6458],[5450,6494],[5431,6499],[5407,6536],[5373,6562],[5368,6583],[5331,6598],[5298,6657],[5237,6648],[5211,6661],[5206,6718],[5165,6717],[5203,6691],[5182,6672],[5153,6680],[5136,6663],[5125,6686],[5151,6682],[5115,6731],[5088,6731],[5101,6766],[5077,6746],[5081,6718],[5044,6735],[5047,6703],[5009,6643],[4988,6631],[4979,6674],[4960,6699],[4972,6714],[5008,6717],[5028,6744],[5006,6783],[4917,6808],[4867,6813],[4890,6833],[4877,6854],[4829,6849],[4818,6836],[4790,6911],[4769,6922],[4737,6899],[4694,6940],[4664,6948],[4666,6926],[4643,6930],[4641,6905],[4688,6906],[4733,6849],[4726,6818],[4673,6789],[4646,6811],[4612,6802],[4554,6808],[4503,6797],[4534,6779],[4552,6784],[4599,6742],[4591,6730],[4524,6769],[4468,6784],[4519,6758],[4495,6725],[4472,6722],[4416,6744],[4375,6718],[4296,6710],[4241,6719],[4210,6709],[4256,6695],[4216,6687],[4147,6726],[4140,6751],[4120,6740],[4101,6768],[4088,6748],[4112,6728],[4052,6726],[4052,6704],[4017,6718],[4046,6721],[3979,6741],[3906,6827],[3922,6838],[3890,6866],[3924,6859],[3957,6871],[3984,6854],[4053,6867],[4056,6881],[4017,6903],[4006,6927],[3991,6914],[3863,6915],[3844,6941],[3839,6975],[3846,7011],[3819,7041],[3821,7076],[3845,7102],[3815,7118],[3814,7190],[3826,7202],[3819,7241],[3839,7236],[3826,7300],[3834,7349],[3862,7418],[3893,7469],[3952,7512],[3994,7524],[4052,7528],[4073,7518],[4070,7499],[4040,7455],[4023,7402],[4006,7285],[4015,7248],[4046,7223],[4057,7200],[4053,7155],[4066,7113],[4097,7071],[4155,7021],[4197,7012],[4212,6981],[4190,6975],[4170,6948],[4140,6939],[4129,6914],[4090,6887],[4127,6897],[4156,6937],[4219,6956],[4224,6903],[4237,6918],[4216,6984],[4224,7029],[4199,7071],[4163,7059],[4134,7080],[4128,7105],[4093,7125],[4124,7145],[4115,7185],[4145,7190],[4216,7155],[4149,7200],[4140,7216],[4102,7227],[4080,7261],[4067,7318],[4072,7339],[4098,7339],[4165,7322],[4093,7352],[4069,7350],[4085,7382],[4136,7375],[4175,7380],[4126,7385],[4080,7400],[4093,7440],[4130,7412],[4104,7445],[4196,7550],[4276,7570],[4306,7538],[4333,7477],[4368,7470],[4386,7419],[4424,7386],[4418,7347],[4433,7305],[4415,7257],[4449,7242],[4420,7232],[4445,7215],[4464,7237],[4449,7263],[4468,7347],[4495,7316],[4511,7335],[4541,7317],[4550,7275],[4546,7248],[4583,7248],[4562,7267],[4550,7310],[4560,7343],[4618,7338],[4556,7359],[4550,7395],[4589,7450],[4634,7465],[4658,7449],[4761,7457],[4798,7414],[4787,7349],[4802,7385],[4859,7397],[4876,7378],[4880,7343],[4838,7296],[4871,7299],[4870,7250],[4895,7245],[4875,7274],[4878,7304],[4907,7345],[4928,7351],[4926,7283],[4949,7310],[4954,7284],[5009,7267],[5006,7299],[5003,7278],[4987,7280],[4965,7311],[4982,7321],[4988,7295],[4990,7319],[5005,7311],[5003,7328],[4980,7331],[5004,7362],[5080,7362],[5134,7327],[5133,7278],[5093,7261],[5092,7209],[5105,7186],[5159,7244],[5156,7280],[5171,7307],[5207,7281],[5210,7229],[5194,7186],[5172,7184],[5171,7153],[5187,7116],[5177,7176],[5203,7180],[5233,7091],[5207,7205],[5252,7290],[5264,7260],[5242,7218],[5273,7229],[5284,7280],[5321,7287],[5384,7286],[5399,7240],[5347,7181],[5324,7123],[5341,7126],[5328,7094],[5356,7116],[5344,7152],[5402,7200],[5413,7191],[5391,7096],[5428,7158],[5445,7203],[5425,7217],[5432,7247],[5485,7231],[5528,7205],[5560,7167],[5512,7153],[5488,7121],[5494,7102],[5494,7102],[5494,7102],[5489,7103],[5461,7090],[5437,7042],[5476,7084],[5529,7081],[5546,7128],[5566,7127],[5560,7101],[5582,7112],[5625,7105],[5651,7080],[5583,7039],[5533,7045],[5472,7023],[5548,7026],[5523,7012],[5594,7010],[5580,6985],[5619,6959],[5518,6915],[5544,6913],[5611,6930],[5597,6900],[5667,6922],[5721,6926],[5722,6902],[5750,6897],[5782,6862],[5769,6908],[5786,6927],[5817,6865],[5830,6890],[5856,6850],[5848,6884],[5872,6906],[5883,6892],[5899,6938],[5924,6936],[5913,6892],[5931,6873],[5941,6906],[5973,6911],[6046,6890],[6038,6869],[6062,6844],[6009,6790],[6055,6820],[6031,6783],[6073,6822],[6078,6870],[6139,6874],[6130,6845],[6153,6796],[6174,6832],[6201,6805],[6198,6843],[6247,6816],[6214,6847],[6211,6876],[6250,6884],[6326,6857],[6331,6807],[6309,6776],[6353,6794],[6329,6755],[6295,6761],[6260,6748],[6300,6739],[6293,6714],[6331,6721],[6362,6706],[6332,6674],[6361,6653],[6367,6615],[6317,6573],[6273,6600],[6312,6560],[6302,6519],[6357,6491],[6380,6422],[6336,6430],[6327,6456],[6297,6421],[6258,6455],[6276,6405],[6220,6437],[6165,6456],[6162,6479],[6139,6471],[6119,6519],[6144,6565],[6133,6582],[6108,6530],[6073,6501],[6050,6529],[5984,6550],[5958,6543],[5933,6569],[5893,6547],[5938,6514],[5920,6499],[5864,6509],[5897,6475],[5966,6459],[5977,6439],[5922,6400],[5898,6432],[5861,6446],[5842,6432],[5900,6414],[5874,6410],[5911,6367],[5954,6353],[5958,6315],[5978,6382],[6001,6380],[6002,6344],[6035,6355],[6063,6304],[6059,6342],[6084,6292],[6102,6290],[6140,6249],[6114,6293],[6176,6286],[6191,6249],[6190,6298],[6234,6292],[6249,6255],[6259,6303],[6278,6285],[6267,6254],[6313,6253],[6313,6221],[6288,6215],[6357,6190],[6351,6174],[6401,6193],[6401,6158],[6417,6184],[6425,6160],[6450,6171],[6509,6093],[6441,6152],[6401,6151],[6401,6142],[6451,6139],[6494,6065],[6466,6067],[6415,6115],[6413,6091],[6527,5997],[6510,5975],[6463,5976]]],[[[4873,5097],[4841,5064],[4797,5130],[4819,5184],[4830,5240],[4852,5227],[4883,5257],[4941,5281],[4968,5279],[4974,5237],[4948,5196],[4921,5125],[4892,5085],[4873,5097]]],[[[5159,6564],[5161,6527],[5181,6503],[5203,6449],[5194,6399],[5164,6362],[5078,6324],[5048,6355],[5014,6409],[5010,6446],[5018,6542],[5042,6569],[5096,6587],[5138,6586],[5159,6564]]],[[[2732,7273],[2705,7318],[2673,7336],[2704,7385],[2796,7389],[2836,7345],[2828,7288],[2777,7186],[2732,7273]]],[[[4728,5458],[4747,5406],[4716,5365],[4695,5360],[4684,5286],[4629,5229],[4588,5245],[4573,5325],[4548,5342],[4505,5316],[4469,5310],[4454,5285],[4424,5283],[4416,5314],[4433,5363],[4490,5416],[4464,5456],[4444,5516],[4451,5595],[4431,5669],[4427,5775],[4458,5820],[4465,5792],[4490,5801],[4513,5763],[4494,5742],[4520,5729],[4554,5683],[4562,5748],[4609,5725],[4621,5700],[4687,5702],[4716,5667],[4770,5645],[4802,5651],[4872,5614],[4894,5562],[4913,5560],[4884,5503],[4937,5534],[4985,5535],[4978,5559],[5022,5538],[5017,5516],[5064,5514],[5044,5489],[5012,5414],[4898,5434],[4860,5421],[4861,5460],[4837,5480],[4790,5462],[4780,5513],[4736,5482],[4728,5458]]],[[[3459,6391],[3483,6316],[3535,6313],[3513,6272],[3489,6281],[3455,6222],[3437,6214],[3394,6234],[3359,6228],[3334,6252],[3304,6256],[3292,6288],[3271,6270],[3243,6288],[3232,6314],[3218,6286],[3184,6325],[3191,6349],[3229,6355],[3275,6396],[3257,6423],[3260,6455],[3304,6427],[3274,6460],[3283,6504],[3305,6527],[3356,6486],[3390,6444],[3459,6391]]],[[[4645,7554],[4656,7522],[4672,7519],[4663,7495],[4590,7481],[4542,7467],[4491,7414],[4465,7406],[4435,7416],[4406,7454],[4393,7494],[4353,7491],[4334,7525],[4319,7585],[4337,7604],[4407,7595],[4483,7631],[4551,7618],[4574,7590],[4599,7587],[4614,7561],[4645,7554]]],[[[3048,7063],[3033,7042],[3006,7061],[2998,7100],[2954,7137],[2945,7171],[2964,7222],[2993,7231],[3026,7188],[3043,7150],[3099,7155],[3100,7186],[3125,7206],[3112,7244],[3087,7247],[3104,7287],[3070,7273],[3020,7324],[3045,7350],[3065,7349],[3080,7321],[3089,7349],[3057,7367],[3067,7401],[3096,7404],[3121,7387],[3109,7422],[3134,7426],[3141,7406],[3173,7383],[3243,7404],[3254,7424],[3295,7417],[3316,7390],[3315,7365],[3289,7342],[3309,7312],[3273,7290],[3236,7229],[3235,7199],[3260,7230],[3309,7214],[3310,7190],[3328,7174],[3343,7202],[3368,7147],[3382,7099],[3359,7073],[3367,7061],[3375,6966],[3347,6957],[3340,6933],[3315,6912],[3261,6918],[3275,6890],[3264,6862],[3230,6830],[3213,6852],[3192,6846],[3178,6889],[3144,6958],[3132,6960],[3089,7031],[3067,7028],[3048,7063]]],[[[3320,7723],[3348,7770],[3353,7796],[3401,7834],[3430,7828],[3491,7757],[3488,7743],[3507,7672],[3502,7618],[3435,7605],[3412,7616],[3397,7641],[3361,7642],[3330,7661],[3315,7676],[3320,7723]]],[[[3034,7799],[3029,7805],[2962,7780],[2959,7822],[2984,7832],[2984,7865],[3008,7874],[3034,7845],[3003,7915],[3032,7953],[2993,7946],[2988,7963],[3009,8001],[3030,7996],[3048,7974],[3048,7950],[3090,7911],[3102,7877],[3120,7886],[3097,7927],[3126,7925],[3109,7944],[3082,7950],[3106,7967],[3090,7985],[3071,7983],[3053,8012],[3091,8046],[3125,8044],[3153,8003],[3164,8042],[3232,8014],[3228,7976],[3246,7939],[3241,7891],[3246,7872],[3227,7843],[3260,7830],[3260,7793],[3270,7767],[3242,7804],[3227,7739],[3257,7708],[3234,7698],[3231,7678],[3153,7666],[3154,7697],[3137,7663],[3096,7670],[3090,7721],[3113,7720],[3068,7748],[3089,7754],[3071,7767],[3110,7772],[3096,7788],[3122,7793],[3122,7818],[3172,7833],[3080,7816],[3034,7799]]],[[[3746,7836],[3753,7850],[3739,7877],[3755,7891],[3784,7854],[3805,7884],[3823,7867],[3824,7896],[3888,7867],[3879,7851],[3922,7875],[3898,7888],[3924,7915],[3940,7914],[3951,7936],[3978,7936],[4012,7993],[4052,7984],[4086,8019],[4156,8025],[4155,7997],[4197,8010],[4235,7990],[4219,7970],[4258,7985],[4283,7949],[4281,7923],[4246,7877],[4265,7870],[4295,7889],[4317,7862],[4277,7820],[4292,7792],[4275,7772],[4230,7757],[4210,7726],[4138,7726],[4108,7784],[4079,7790],[4100,7770],[4103,7722],[4063,7694],[4000,7675],[3989,7682],[3954,7661],[3911,7666],[3926,7652],[3811,7633],[3806,7692],[3792,7722],[3783,7665],[3773,7694],[3769,7650],[3724,7624],[3654,7651],[3662,7695],[3641,7654],[3652,7634],[3627,7633],[3592,7659],[3575,7739],[3551,7753],[3552,7822],[3565,7845],[3546,7910],[3517,7935],[3513,7957],[3479,8011],[3431,7979],[3393,7988],[3377,7965],[3364,7979],[3387,7993],[3333,8001],[3319,8036],[3292,8065],[3271,8067],[3299,8093],[3273,8105],[3270,8132],[3322,8157],[3353,8144],[3389,8140],[3412,8123],[3433,8133],[3464,8098],[3463,8031],[3474,8070],[3495,8066],[3558,8098],[3609,8076],[3617,8055],[3569,8058],[3569,8044],[3621,8042],[3687,8028],[3688,8001],[3588,7979],[3649,7967],[3645,7958],[3600,7951],[3614,7927],[3618,7945],[3658,7938],[3666,7955],[3715,7916],[3718,7879],[3746,7836]]],[[[3302,8349],[3258,8337],[3253,8318],[3240,8333],[3244,8349],[3205,8374],[3209,8387],[3244,8385],[3247,8399],[3199,8417],[3187,8456],[3168,8478],[3185,8496],[3171,8514],[3168,8543],[3177,8554],[3209,8551],[3271,8515],[3267,8494],[3294,8494],[3323,8480],[3339,8460],[3316,8430],[3342,8401],[3337,8368],[3302,8349]]],[[[2840,8637],[2852,8676],[2863,8667],[2926,8680],[2962,8648],[2973,8617],[2977,8564],[2982,8596],[3017,8612],[3047,8577],[3037,8551],[3051,8540],[3074,8553],[3098,8523],[3090,8508],[3114,8500],[3101,8462],[3105,8432],[3116,8429],[3143,8380],[3146,8336],[3138,8324],[3102,8309],[3068,8327],[3060,8378],[3044,8406],[2993,8426],[2963,8414],[2950,8388],[2941,8405],[2962,8418],[2965,8447],[2922,8434],[2908,8417],[2883,8425],[2867,8446],[2858,8480],[2878,8498],[2931,8478],[2932,8544],[2917,8533],[2899,8545],[2917,8567],[2908,8591],[2890,8585],[2871,8549],[2863,8555],[2881,8598],[2869,8609],[2841,8604],[2840,8637]]],[[[3408,8522],[3375,8560],[3410,8564],[3370,8575],[3349,8604],[3376,8630],[3389,8657],[3449,8664],[3511,8692],[3482,8690],[3438,8673],[3413,8678],[3414,8694],[3445,8706],[3411,8711],[3408,8727],[3372,8700],[3356,8674],[3345,8691],[3356,8708],[3328,8711],[3328,8691],[3298,8675],[3300,8690],[3273,8700],[3276,8737],[3312,8753],[3327,8790],[3292,8760],[3263,8758],[3227,8811],[3246,8818],[3228,8826],[3218,8873],[3248,8857],[3296,8855],[3297,8868],[3324,8891],[3301,8898],[3289,8878],[3272,8872],[3260,8900],[3247,8888],[3221,8904],[3244,8933],[3262,8935],[3236,8957],[3237,8979],[3277,8988],[3320,8973],[3316,8989],[3295,8990],[3292,9019],[3252,9034],[3264,9054],[3251,9058],[3258,9085],[3270,9098],[3291,9079],[3304,9100],[3288,9110],[3333,9114],[3327,9141],[3307,9137],[3282,9148],[3287,9174],[3307,9169],[3320,9179],[3361,9156],[3380,9136],[3379,9115],[3398,9094],[3423,9042],[3439,9034],[3444,9001],[3499,9004],[3513,8990],[3512,8950],[3526,8926],[3567,8910],[3535,8951],[3537,8988],[3568,8988],[3585,8934],[3569,8921],[3576,8905],[3604,8912],[3624,8877],[3633,8798],[3652,8821],[3680,8807],[3700,8815],[3714,8787],[3744,8756],[3726,8720],[3688,8687],[3684,8660],[3668,8679],[3677,8649],[3663,8586],[3648,8588],[3629,8648],[3619,8644],[3635,8581],[3648,8569],[3650,8530],[3645,8480],[3642,8531],[3619,8562],[3610,8562],[3629,8521],[3630,8462],[3617,8459],[3554,8550],[3563,8510],[3573,8502],[3599,8451],[3575,8461],[3560,8482],[3550,8472],[3557,8439],[3532,8435],[3476,8442],[3444,8467],[3422,8494],[3426,8505],[3477,8524],[3425,8535],[3408,8522]]],[[[4160,8505],[4186,8481],[4178,8423],[4144,8390],[4117,8387],[4105,8373],[4062,8372],[4010,8400],[4008,8379],[4042,8363],[4013,8345],[4026,8319],[4049,8356],[4109,8352],[4134,8373],[4165,8351],[4161,8306],[4186,8314],[4188,8295],[4205,8343],[4229,8341],[4251,8313],[4261,8278],[4241,8220],[4218,8241],[4211,8169],[4199,8170],[4152,8117],[4126,8122],[4131,8164],[4114,8181],[4063,8168],[4049,8193],[4052,8142],[4026,8132],[3976,8127],[3939,8162],[3947,8123],[3922,8118],[3898,8140],[3912,8108],[3946,8090],[3902,8080],[3836,8085],[3837,8119],[3819,8095],[3822,8068],[3781,8084],[3775,8054],[3731,8059],[3704,8153],[3700,8127],[3721,8083],[3704,8101],[3703,8057],[3655,8087],[3664,8115],[3651,8152],[3686,8196],[3702,8228],[3738,8227],[3765,8273],[3722,8284],[3717,8314],[3683,8344],[3676,8380],[3718,8414],[3771,8400],[3787,8384],[3808,8340],[3832,8321],[3884,8311],[3872,8327],[3898,8339],[3930,8335],[3906,8358],[3922,8371],[3934,8428],[3936,8485],[3919,8494],[3916,8393],[3899,8361],[3856,8356],[3846,8338],[3825,8364],[3849,8371],[3823,8381],[3820,8415],[3788,8442],[3810,8474],[3807,8541],[3798,8541],[3787,8481],[3756,8461],[3750,8484],[3734,8490],[3727,8468],[3693,8462],[3677,8536],[3687,8562],[3688,8602],[3698,8627],[3734,8641],[3752,8666],[3822,8666],[3874,8645],[3902,8623],[3882,8651],[3848,8665],[3845,8676],[3882,8681],[3907,8698],[3906,8743],[3891,8731],[3888,8704],[3872,8692],[3850,8699],[3792,8686],[3766,8700],[3770,8727],[3799,8711],[3823,8713],[3775,8739],[3755,8788],[3734,8801],[3720,8829],[3690,8844],[3651,8849],[3647,8898],[3692,8898],[3640,8905],[3624,8937],[3623,8977],[3643,8987],[3670,8976],[3730,8988],[3768,8955],[3820,8919],[3860,8864],[3868,8878],[3902,8879],[3926,8899],[3929,8914],[3887,8887],[3858,8893],[3837,8934],[3842,8948],[3809,8953],[3749,9010],[3789,9044],[3846,9079],[3853,9095],[3923,9138],[3850,9116],[3889,9173],[3921,9198],[3954,9214],[3948,9227],[3897,9208],[3871,9186],[3857,9220],[3875,9307],[3889,9326],[3889,9347],[3857,9296],[3842,9212],[3850,9208],[3846,9169],[3802,9104],[3745,9064],[3732,9089],[3761,9116],[3759,9143],[3744,9114],[3720,9096],[3701,9104],[3710,9059],[3690,9041],[3663,9033],[3623,9031],[3595,9041],[3597,9069],[3612,9129],[3629,9153],[3710,9203],[3720,9219],[3661,9179],[3620,9160],[3597,9137],[3576,9068],[3574,9043],[3540,9047],[3482,9084],[3483,9103],[3512,9120],[3543,9122],[3575,9135],[3607,9189],[3630,9218],[3611,9217],[3592,9197],[3575,9165],[3546,9144],[3529,9143],[3459,9113],[3433,9148],[3443,9168],[3465,9173],[3442,9191],[3463,9212],[3471,9235],[3503,9251],[3484,9259],[3466,9244],[3420,9194],[3404,9214],[3441,9262],[3423,9257],[3401,9266],[3395,9237],[3380,9230],[3358,9248],[3369,9284],[3385,9286],[3383,9304],[3422,9330],[3440,9308],[3452,9370],[3472,9386],[3494,9384],[3503,9357],[3516,9367],[3509,9381],[3536,9386],[3571,9347],[3553,9375],[3585,9384],[3512,9403],[3503,9422],[3540,9437],[3547,9450],[3524,9489],[3556,9501],[3552,9486],[3597,9478],[3635,9432],[3633,9418],[3667,9425],[3649,9429],[3626,9457],[3623,9473],[3644,9466],[3679,9444],[3741,9426],[3769,9398],[3779,9400],[3743,9432],[3742,9441],[3702,9447],[3625,9495],[3623,9527],[3654,9534],[3623,9547],[3624,9570],[3647,9566],[3670,9549],[3677,9557],[3630,9602],[3630,9612],[3667,9613],[3683,9588],[3685,9601],[3712,9598],[3729,9609],[3682,9613],[3683,9630],[3660,9631],[3660,9651],[3680,9667],[3699,9648],[3699,9666],[3712,9650],[3727,9671],[3753,9666],[3787,9628],[3814,9619],[3819,9583],[3824,9632],[3799,9637],[3765,9674],[3735,9691],[3764,9720],[3795,9730],[3823,9731],[3847,9705],[3899,9684],[3846,9721],[3849,9763],[3856,9774],[3882,9787],[3901,9753],[3928,9749],[3895,9771],[3903,9800],[3932,9816],[3949,9789],[3958,9810],[3968,9797],[3986,9812],[3992,9801],[4005,9815],[4040,9827],[4047,9817],[4039,9777],[4017,9740],[4019,9726],[4048,9750],[4067,9815],[4087,9807],[4079,9838],[4089,9847],[4098,9830],[4115,9820],[4113,9842],[4132,9851],[4142,9825],[4177,9811],[4190,9798],[4228,9815],[4255,9802],[4276,9761],[4265,9736],[4275,9708],[4254,9607],[4219,9596],[4208,9570],[4230,9579],[4222,9559],[4199,9544],[4157,9504],[4152,9487],[4186,9522],[4214,9518],[4185,9467],[4180,9446],[4144,9386],[4161,9401],[4243,9534],[4272,9568],[4288,9533],[4281,9494],[4268,9474],[4270,9422],[4250,9333],[4247,9270],[4254,9236],[4248,9222],[4225,9210],[4211,9235],[4186,9242],[4217,9221],[4222,9205],[4248,9196],[4247,9176],[4226,9170],[4190,9112],[4212,9126],[4237,9158],[4251,9125],[4231,9102],[4254,9100],[4249,9057],[4228,9027],[4197,9024],[4181,9043],[4128,9041],[4109,9021],[4166,9023],[4173,9030],[4204,8983],[4179,8948],[4153,8937],[4134,8940],[4147,8914],[4125,8911],[4089,8921],[4114,8893],[4075,8880],[4054,8900],[4044,8893],[4062,8867],[4037,8865],[4063,8853],[4110,8874],[4122,8869],[4183,8892],[4174,8879],[4200,8851],[4176,8839],[4136,8841],[4119,8859],[4040,8822],[4125,8841],[4075,8796],[4057,8797],[4062,8733],[4072,8781],[4108,8812],[4152,8816],[4155,8803],[4134,8781],[4181,8803],[4208,8802],[4220,8782],[4229,8748],[4211,8722],[4160,8709],[4186,8699],[4236,8697],[4229,8649],[4181,8644],[4172,8628],[4210,8625],[4239,8632],[4237,8592],[4218,8600],[4199,8563],[4183,8567],[4135,8553],[4128,8537],[4156,8524],[4174,8531],[4160,8505]]]]}},{"type":"Feature","id":"CA.NT","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.76,"hc-key":"ca-nt","hc-a2":"NT","labelrank":"2","hasc":"CA.NT","alt-name":"Territoires du Nord-Ouest","woe-id":"2344920","subregion":null,"fips":"CA13","postal-code":"NT","name":"Northwest Territories","country":"Canada","type-en":"Territory","region":"Northern Canada","longitude":"-119.942","woe-name":"Northwest Territories","latitude":"64.0831","woe-label":"Northwest Territories, CA, Canada","type":"Territoire"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2387,8156],[2397,8128],[2382,8115],[2322,8141],[2351,8163],[2387,8156]]],[[[1038,4617],[639,4744],[607,4913],[629,4930],[630,4971],[544,4961],[495,5005],[476,4991],[388,5020],[405,5077],[418,5169],[384,5194],[357,5247],[340,5358],[314,5354],[285,5381],[286,5429],[313,5455],[295,5494],[292,5554],[326,5592],[306,5605],[301,5662],[343,5681],[337,5739],[347,5753],[308,5817],[316,5923],[299,5942],[254,5942],[279,5965],[265,6015],[229,6052],[274,6092],[255,6133],[272,6153],[341,6194],[335,6261],[363,6271],[354,6297],[309,6294],[325,6311],[277,6316],[268,6353],[300,6391],[283,6404],[326,6443],[325,6485],[338,6497],[337,6544],[354,6539],[178,6637],[193,6675],[223,6706],[238,6745],[237,6786],[369,7013],[392,6993],[417,6925],[430,6946],[427,6980],[409,6989],[419,7030],[455,7066],[501,7055],[508,7069],[546,7064],[562,7040],[603,7089],[597,7046],[621,7055],[615,7024],[556,6992],[616,7000],[645,6986],[694,7025],[716,7007],[726,7029],[777,7010],[826,7034],[828,7000],[860,7036],[895,7046],[942,7010],[974,7041],[979,7005],[953,6982],[870,6970],[820,6939],[820,6959],[744,6969],[718,6939],[694,6938],[671,6912],[675,6942],[628,6910],[609,6913],[576,6882],[618,6847],[634,6905],[727,6915],[761,6945],[787,6938],[789,6907],[816,6933],[790,6879],[875,6947],[974,6940],[968,6900],[1043,6942],[1048,6966],[1074,6977],[1115,6972],[1089,6996],[1086,7018],[1104,7048],[1104,7075],[1139,7002],[1148,6962],[1138,6849],[1165,6755],[1195,6721],[1219,6727],[1206,6763],[1230,6748],[1217,6780],[1228,6797],[1256,6799],[1281,6836],[1279,6855],[1332,6868],[1309,6833],[1310,6806],[1294,6779],[1324,6770],[1271,6705],[1306,6700],[1327,6683],[1373,6699],[1394,6756],[1414,6765],[1479,6739],[1521,6714],[1562,6653],[1465,6325],[1467,6320],[2035,5627],[2197,5603],[2284,5466],[2315,5435],[2382,5413],[2964,5273],[2988,5267],[2984,4342],[2984,4342],[2110,4398],[1038,4617]]],[[[2080,7998],[2105,8002],[2144,8030],[2152,8019],[2107,7947],[2056,7905],[2018,7938],[2080,7998]]],[[[2409,8435],[2407,8419],[2429,8388],[2432,8366],[2400,8348],[2374,8389],[2366,8415],[2409,8435]]],[[[2455,7135],[2440,7151],[2456,7141],[2455,7135]]],[[[2461,7182],[2459,7164],[2453,7173],[2461,7182]]],[[[2462,7192],[2433,7215],[2424,7255],[2469,7244],[2462,7192]]],[[[2551,7896],[2549,7901],[2552,7904],[2551,7896]]],[[[2561,7976],[2543,7995],[2547,8025],[2569,8035],[2561,7976]]],[[[2542,7820],[2522,7664],[2480,7651],[2483,7639],[2412,7598],[2362,7586],[2326,7588],[2288,7606],[2254,7668],[2269,7682],[2316,7692],[2362,7718],[2436,7712],[2479,7761],[2452,7750],[2394,7744],[2400,7762],[2353,7745],[2299,7750],[2320,7807],[2346,7821],[2306,7816],[2270,7754],[2236,7738],[2224,7748],[2230,7786],[2192,7747],[2166,7775],[2173,7808],[2145,7794],[2101,7822],[2107,7857],[2134,7880],[2199,7866],[2229,7883],[2248,7883],[2265,7905],[2199,7888],[2139,7901],[2167,7944],[2282,7938],[2284,7947],[2209,7954],[2183,7967],[2199,7980],[2191,8002],[2206,8023],[2228,8028],[2290,8009],[2277,8026],[2250,8031],[2248,8058],[2275,8078],[2333,8076],[2344,8067],[2345,8001],[2401,8010],[2427,7982],[2426,7950],[2456,7926],[2429,7907],[2469,7899],[2464,7847],[2470,7825],[2514,7831],[2542,7820]]],[[[2616,8406],[2611,8367],[2568,8359],[2571,8334],[2600,8333],[2600,8301],[2587,8270],[2552,8253],[2532,8261],[2487,8243],[2470,8256],[2466,8279],[2440,8298],[2453,8385],[2504,8402],[2582,8412],[2616,8406]]],[[[2633,8543],[2632,8539],[2622,8460],[2606,8452],[2583,8462],[2570,8481],[2553,8456],[2537,8458],[2522,8485],[2477,8468],[2467,8485],[2475,8500],[2530,8527],[2545,8522],[2580,8553],[2616,8564],[2633,8543]]],[[[2454,7126],[2386,6581],[2197,6608],[2195,6575],[2163,6576],[2167,6613],[1852,6678],[1845,6654],[1870,6589],[1854,6597],[1830,6629],[1828,6681],[1870,6703],[1944,6707],[2084,6700],[2135,6683],[2198,6653],[2234,6665],[2224,6686],[2270,6667],[2241,6712],[2190,6732],[2150,6770],[2115,6785],[2099,6777],[1900,6779],[1915,6802],[1876,6814],[1869,6799],[1820,6878],[1816,6921],[1865,6943],[1889,6941],[1994,6960],[1989,6972],[2026,6984],[2046,6966],[2047,6986],[2022,6993],[1893,6983],[1851,6995],[1846,7017],[1862,7029],[1897,7028],[1873,7055],[1844,7043],[1844,7061],[1804,7064],[1807,7098],[1822,7131],[1859,7169],[1900,7178],[1905,7196],[1881,7230],[1919,7268],[1944,7277],[1987,7317],[2021,7320],[2073,7343],[2117,7353],[2188,7380],[2206,7366],[2217,7315],[2199,7243],[2153,7209],[2168,7196],[2186,7209],[2211,7199],[2236,7221],[2225,7230],[2245,7261],[2274,7280],[2330,7244],[2381,7196],[2371,7162],[2327,7126],[2337,7105],[2361,7127],[2380,7097],[2380,7125],[2409,7158],[2432,7152],[2454,7126]]],[[[1858,7705],[1894,7660],[1950,7628],[1948,7581],[1976,7624],[2018,7627],[2055,7606],[2080,7566],[2120,7474],[2135,7459],[2146,7411],[2113,7390],[2063,7378],[2005,7347],[1855,7284],[1827,7225],[1792,7208],[1760,7220],[1761,7196],[1731,7163],[1718,7106],[1688,7066],[1627,7058],[1614,7083],[1569,7048],[1492,7032],[1481,7075],[1483,7124],[1472,7185],[1440,7221],[1413,7267],[1371,7285],[1390,7313],[1452,7380],[1480,7389],[1497,7458],[1537,7454],[1526,7497],[1543,7506],[1577,7558],[1609,7575],[1619,7601],[1644,7617],[1628,7643],[1626,7698],[1636,7752],[1630,7762],[1722,7754],[1762,7744],[1829,7745],[1852,7727],[1858,7705]]],[[[2284,8338],[2321,8279],[2322,8269],[2263,8239],[2267,8218],[2287,8195],[2270,8183],[2267,8137],[2238,8115],[2196,8112],[2195,8072],[2167,8056],[2141,8096],[2161,8160],[2176,8177],[2144,8183],[2133,8173],[2135,8137],[2095,8129],[2108,8091],[2089,8081],[2080,8057],[2058,8049],[2060,8106],[2043,8090],[2040,8036],[2009,8002],[1996,8015],[1975,8009],[1988,8035],[1975,8047],[1985,8077],[1977,8092],[1960,8065],[1955,8036],[1936,8036],[1916,8074],[1901,8078],[1877,8060],[1870,8076],[1886,8098],[1882,8117],[1861,8108],[1878,8133],[1913,8163],[1958,8156],[1998,8200],[2044,8221],[2070,8259],[2117,8291],[2127,8311],[2155,8321],[2204,8316],[2229,8285],[2263,8301],[2242,8323],[2284,8338]]]]}},{"type":"Feature","id":"CA.AB","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.5,"hc-key":"ca-ab","hc-a2":"AB","labelrank":"2","hasc":"CA.AB","alt-name":null,"woe-id":"2344915","subregion":"Prairies","fips":"CA01","postal-code":"AB","name":"Alberta","country":"Canada","type-en":"Province","region":"Western Canada","longitude":"-115","woe-name":"Alberta","latitude":"55.2816","woe-label":"Alberta, CA, Canada","type":"Province"},"geometry":{"type":"Polygon","coordinates":[[[1038,4617],[2110,4398],[1807,1997],[1807,1996],[1439,2049],[1220,2088],[1205,2135],[1184,2143],[1148,2235],[1173,2275],[1177,2404],[1155,2456],[1128,2458],[1115,2502],[1079,2537],[1088,2562],[1042,2611],[985,2775],[947,2764],[920,2872],[881,2873],[859,2912],[874,2937],[845,2962],[812,2944],[817,3013],[789,3066],[783,3123],[759,3156],[749,3135],[723,3157],[717,3194],[673,3220],[664,3269],[685,3260],[669,3324],[1038,4617]]]}},{"type":"Feature","id":"CA.NL","properties":{"hc-group":"admin1","hc-middle-x":0.31,"hc-middle-y":0.61,"hc-key":"ca-nl","hc-a2":"NL","labelrank":"2","hasc":"CA.NF","alt-name":"Newfoundland|Terre-Neuve|Terre-Neuve-et-Labrador","woe-id":"2344919","subregion":"Atlantic Canada","fips":"CA05","postal-code":"NL","name":"Newfoundland and Labrador","country":"Canada","type-en":"Province","region":"Eastern Canada","longitude":"-56.2169","woe-name":"Newfoundland and Labrador","latitude":"48.6598","woe-label":"Newfoundland and Labrador, CA, Canada","type":"Province"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8200,4847],[8202,4804],[8177,4783],[8143,4695],[8100,4667],[8087,4637],[8112,4591],[8050,4595],[8007,4583],[8120,4589],[8111,4538],[8128,4533],[8146,4604],[8205,4711],[8189,4721],[8192,4764],[8245,4849],[8210,4833],[8217,4865],[8299,4919],[8396,4868],[8372,4816],[8398,4825],[8413,4795],[8421,4834],[8401,4854],[8455,4929],[8457,4900],[8549,4916],[8570,4936],[8593,4889],[8619,4882],[8608,4832],[8642,4837],[8691,4797],[8656,4739],[8699,4770],[8729,4772],[8727,4738],[8772,4713],[8773,4659],[8734,4549],[8740,4507],[8720,4471],[8639,4571],[7908,4040],[7863,4100],[7812,4103],[7814,4132],[7866,4191],[7828,4195],[7780,4146],[7788,4113],[7817,4083],[7853,4000],[7838,3998],[7877,3952],[7865,3906],[7817,3920],[7768,3892],[7694,3930],[7641,3888],[7579,3910],[7587,3877],[7553,3906],[7565,3920],[7533,3960],[7544,3972],[7480,4043],[7469,4011],[7476,3993],[7481,3982],[7472,3942],[7398,3952],[7363,3992],[7410,4013],[7385,4084],[7319,4084],[7271,4119],[7213,4142],[7215,4182],[7177,4221],[7197,4248],[7187,4269],[7224,4262],[7217,4321],[7143,4362],[7258,4347],[7205,4438],[7213,4452],[7278,4425],[7334,4432],[7370,4410],[7395,4431],[7407,4493],[7460,4490],[7495,4506],[7551,4500],[7591,4529],[7556,4542],[7546,4577],[7573,4585],[7540,4648],[7523,4653],[7540,4697],[7495,4674],[7462,4735],[7427,4755],[7456,4799],[7391,4772],[7376,4810],[7350,4807],[7334,4831],[7360,4851],[7306,4879],[7308,4932],[7280,5002],[7233,5085],[7185,5082],[7103,5138],[7123,5229],[7097,5223],[7079,5252],[7121,5290],[7085,5306],[7061,5258],[7028,5271],[6968,5246],[6961,5269],[7007,5283],[6959,5332],[6943,5384],[6928,5354],[6893,5362],[6871,5414],[6871,5445],[6836,5451],[6856,5482],[6817,5495],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6870,5504],[6872,5484],[6914,5484],[6949,5428],[6984,5432],[7013,5402],[6991,5380],[7047,5404],[7082,5385],[7066,5331],[7090,5368],[7167,5346],[7193,5323],[7178,5260],[7207,5269],[7239,5310],[7271,5246],[7233,5215],[7247,5183],[7251,5221],[7292,5258],[7347,5227],[7375,5246],[7415,5242],[7416,5222],[7372,5223],[7408,5188],[7452,5193],[7438,5158],[7446,5121],[7482,5119],[7526,5141],[7537,5065],[7515,5049],[7539,5020],[7450,5001],[7534,5012],[7627,5033],[7544,4990],[7543,4968],[7615,5005],[7607,4973],[7560,4945],[7584,4940],[7643,4982],[7672,4958],[7674,4991],[7704,4968],[7718,4935],[7803,4972],[7800,4943],[7860,4922],[7865,4814],[7884,4902],[7901,4889],[7914,4937],[7941,4897],[7974,4930],[7967,4851],[7983,4915],[7982,4956],[8012,4964],[8064,4919],[8187,4982],[8219,4978],[8239,4998],[8277,4987],[8253,4933],[8204,4889],[8213,4869],[8200,4847]],[[8200,4847],[8199,4852],[8195,4838],[8195,4838],[8195,4838],[8195,4838],[8178,4810],[8121,4740],[8135,4742],[8184,4808],[8195,4838],[8195,4838],[8195,4838],[8195,4838],[8200,4847]]],[[[7544,5104],[7556,5073],[7588,5051],[7548,5053],[7544,5104]]],[[[9596,4050],[9596,4048],[9593,4049],[9593,4049],[9596,4050],[9596,4050],[9596,4050]]],[[[9596,4050],[9585,4112],[9611,4057],[9596,4050],[9596,4050],[9596,4050]]],[[[6842,5539],[6842,5529],[6840,5524],[6838,5533],[6842,5539]]],[[[6841,5520],[6861,5518],[6833,5512],[6833,5512],[6841,5520]]],[[[6833,5512],[6832,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512]]],[[[9495,3972],[9518,4014],[9512,4048],[9484,3998],[9436,4001],[9464,3949],[9411,3900],[9412,3939],[9356,3908],[9291,3823],[9216,3790],[9171,3751],[9127,3740],[9018,3617],[8988,3609],[8941,3648],[8960,3801],[8975,3847],[8932,3830],[8878,3766],[8891,3825],[8928,3840],[8913,3864],[8889,3960],[8948,3962],[8920,3984],[8936,4012],[8890,3998],[8872,4033],[8896,4076],[8864,4101],[8837,4210],[8791,4352],[8808,4401],[8775,4487],[8827,4618],[8838,4591],[8877,4647],[8894,4582],[8839,4559],[8864,4532],[8901,4553],[8914,4532],[8954,4264],[9008,4174],[8999,4252],[9013,4276],[9000,4339],[9028,4306],[9046,4342],[9073,4337],[9092,4376],[9106,4359],[9074,4269],[9101,4289],[9105,4217],[9122,4257],[9165,4256],[9164,4285],[9210,4294],[9232,4260],[9273,4314],[9273,4395],[9300,4381],[9328,4423],[9426,4440],[9439,4392],[9417,4354],[9477,4284],[9528,4307],[9523,4342],[9556,4343],[9548,4387],[9573,4381],[9588,4320],[9565,4307],[9566,4266],[9611,4146],[9669,4148],[9645,4188],[9629,4255],[9658,4306],[9690,4193],[9725,4168],[9736,4230],[9716,4266],[9777,4241],[9792,4180],[9851,4087],[9844,4033],[9822,4045],[9807,3995],[9769,4016],[9724,4083],[9722,3976],[9693,3974],[9653,4089],[9578,4147],[9549,4142],[9575,4053],[9593,4049],[9593,4049],[9580,4044],[9558,3998],[9541,3999],[9547,3932],[9566,3873],[9518,3814],[9486,3802],[9471,3839],[9507,3888],[9495,3972]]]]}},{"type":"Feature","id":"CA.SK","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.51,"hc-key":"ca-sk","hc-a2":"SK","labelrank":"2","hasc":"CA.SK","alt-name":null,"woe-id":"2344925","subregion":"Prairies","fips":"CA11","postal-code":"SK","name":"Saskatchewan","country":"Canada","type-en":"Province","region":"Western Canada","longitude":"-105.682","woe-name":"Saskatchewan","latitude":"54.4965","woe-label":"Saskatchewan, CA, Canada","type":"Province"},"geometry":{"type":"Polygon","coordinates":[[[2110,4398],[2984,4342],[2981,3426],[3068,1920],[2912,1920],[1807,1996],[1807,1997],[2110,4398]]]}},{"type":"Feature","id":"CA.MB","properties":{"hc-group":"admin1","hc-middle-x":0.37,"hc-middle-y":0.43,"hc-key":"ca-mb","hc-a2":"MB","labelrank":"2","hasc":"CA.MB","alt-name":null,"woe-id":"2344917","subregion":"Prairies","fips":"CA03","postal-code":"MB","name":"Manitoba","country":"Canada","type-en":"Province","region":"Western Canada","longitude":"-97.3828","woe-name":"Manitoba","latitude":"54.85","woe-label":"Manitoba, CA, Canada","type":"Province"},"geometry":{"type":"Polygon","coordinates":[[[2984,4342],[3772,4382],[3772,4382],[3772,4382],[3778,4305],[3796,4240],[3794,4168],[3843,4109],[3867,4130],[3987,4131],[3996,4084],[4046,3991],[4058,3946],[4112,3841],[4091,3749],[4114,3771],[4146,3772],[4278,3846],[4332,3848],[4430,3809],[4539,3802],[4442,3641],[4305,3418],[4179,3213],[4056,3018],[3891,2811],[3966,2051],[3972,1968],[3068,1920],[2981,3426],[2984,4317],[2984,4342]]]}},{"type":"Feature","id":"CA.QC","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.41,"hc-key":"ca-qc","hc-a2":"QC","labelrank":"2","hasc":"CA.QC","alt-name":"Lower Canada","woe-id":"2344924","subregion":"Québec","fips":"CA10","postal-code":"QC","name":"Québec","country":"Canada","type-en":"Province","region":"Eastern Canada","longitude":"-73.71680000000001","woe-name":"Québec","latitude":"52.2593","woe-label":"Quebec, CA, Canada","type":"Province"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7476,3993],[7480,4043],[7544,3972],[7533,3960],[7565,3920],[7553,3906],[7587,3877],[7579,3910],[7641,3888],[7694,3930],[7768,3892],[7817,3920],[7865,3906],[7877,3952],[7817,4083],[7780,4146],[7828,4195],[7866,4191],[7814,4132],[7812,4103],[7863,4100],[7908,4040],[8639,4571],[8720,4471],[8691,4474],[8648,4432],[8637,4380],[8605,4355],[8572,4240],[8597,4210],[8572,4144],[8565,4047],[8545,4000],[8459,3950],[8376,3849],[8343,3861],[8181,3767],[8158,3734],[8103,3723],[8056,3680],[8023,3673],[7979,3632],[7928,3614],[7843,3528],[7795,3518],[7777,3486],[7755,3383],[7782,3303],[7779,3271],[7698,3213],[7678,3176],[7701,3171],[7655,3128],[7626,3037],[7626,2920],[7594,2868],[7557,2879],[7405,2848],[7449,2842],[7484,2861],[7554,2871],[7606,2866],[7616,2783],[7604,2707],[7576,2679],[7578,2598],[7555,2562],[7529,2478],[7461,2433],[7426,2382],[7398,2306],[7351,2261],[7345,2221],[7392,2272],[7407,2325],[7468,2431],[7489,2432],[7535,2483],[7564,2568],[7561,2525],[7613,2589],[7634,2716],[7684,2935],[7750,3076],[7898,3284],[7939,3331],[8014,3391],[8094,3428],[8159,3437],[8224,3425],[8246,3405],[8187,3399],[8263,3380],[8265,3324],[8228,3280],[8237,3251],[8178,3162],[8120,3156],[8093,3168],[8082,3128],[8027,3098],[7997,3052],[7938,2986],[7897,2994],[7832,2957],[7805,2924],[7844,2851],[7835,2815],[7783,2750],[7770,2775],[7740,2764],[7717,2566],[7737,2504],[7741,2418],[7759,2399],[7762,2343],[7739,2291],[7742,2210],[7716,2222],[7677,2188],[7680,2121],[7216,1901],[7245,1931],[7326,2057],[7346,2062],[7335,2140],[7344,2209],[7331,2127],[7334,2063],[7276,2039],[7293,2023],[7249,1970],[7221,1982],[7211,2040],[7167,2041],[7081,1985],[7009,1912],[6975,1926],[6935,1899],[6882,1904],[6835,1956],[6818,1928],[6684,1972],[6521,1947],[6467,1975],[6358,2067],[6309,2137],[6310,2164],[6061,2872],[6096,2849],[6059,2877],[6030,2960],[6022,2981],[6031,3030],[6051,3006],[6090,3003],[6118,2961],[6106,3045],[6062,3066],[6068,3110],[6094,3157],[6087,3213],[6062,3248],[6028,3263],[6017,3298],[5975,3330],[5954,3405],[5923,3424],[5902,3536],[5882,3566],[5840,3554],[5807,3605],[5760,3633],[5896,3770],[5949,3847],[5995,3959],[5987,3964],[6015,4061],[6010,4111],[5974,4213],[5925,4308],[5868,4381],[5816,4427],[5735,4468],[5679,4475],[5599,4512],[5585,4560],[5604,4586],[5608,4640],[5632,4668],[5610,4705],[5604,4749],[5647,4793],[5625,4811],[5636,4837],[5590,4834],[5608,4857],[5551,4903],[5562,4935],[5526,4944],[5539,4976],[5511,4964],[5475,4977],[5493,5036],[5467,5112],[5488,5127],[5447,5162],[5433,5155],[5404,5189],[5366,5271],[5406,5354],[5459,5364],[5611,5361],[5632,5382],[5698,5372],[5696,5394],[5723,5406],[5772,5482],[5830,5468],[5855,5450],[5901,5455],[5920,5421],[5961,5426],[6002,5396],[6037,5406],[6035,5354],[6112,5321],[6210,5342],[6240,5364],[6278,5330],[6291,5397],[6335,5350],[6315,5311],[6321,5275],[6347,5239],[6373,5228],[6379,5177],[6326,5154],[6304,5131],[6383,5171],[6414,5161],[6432,5095],[6465,5049],[6477,5070],[6511,5058],[6492,5019],[6533,5045],[6542,5026],[6501,5011],[6525,4979],[6489,4932],[6521,4904],[6523,4945],[6544,4991],[6588,5020],[6645,5017],[6687,4981],[6715,4896],[6712,4869],[6670,4825],[6655,4792],[6715,4865],[6721,4893],[6695,4980],[6765,4991],[6780,4932],[6816,5043],[6839,5067],[6832,5142],[6903,5123],[6867,5144],[6879,5227],[6847,5257],[6881,5281],[6839,5310],[6847,5325],[6813,5355],[6830,5394],[6829,5429],[6804,5513],[6841,5520],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6833,5512],[6817,5495],[6856,5482],[6836,5451],[6871,5445],[6871,5414],[6893,5362],[6928,5354],[6943,5384],[6959,5332],[7007,5283],[6961,5269],[6968,5246],[7028,5271],[7061,5258],[7085,5306],[7121,5290],[7079,5252],[7097,5223],[7123,5229],[7103,5138],[7185,5082],[7233,5085],[7280,5002],[7308,4932],[7306,4879],[7360,4851],[7334,4831],[7376,4810],[7391,4772],[7456,4799],[7427,4755],[7462,4735],[7495,4674],[7540,4697],[7523,4653],[7540,4648],[7573,4585],[7546,4577],[7556,4542],[7591,4529],[7551,4500],[7495,4506],[7460,4490],[7407,4493],[7395,4431],[7370,4410],[7334,4432],[7278,4425],[7213,4452],[7205,4438],[7258,4347],[7143,4362],[7217,4321],[7224,4262],[7187,4269],[7177,4221],[7215,4182],[7213,4142],[7271,4119],[7319,4084],[7385,4084],[7410,4013],[7363,3992],[7398,3952],[7472,3942],[7476,3993]]],[[[8074,3597],[8108,3629],[8214,3666],[8342,3692],[8405,3684],[8451,3700],[8505,3667],[8443,3617],[8321,3578],[8242,3568],[8220,3587],[8166,3594],[8090,3580],[8074,3597]]]]}},{"type":"Feature","id":"CA.ON","properties":{"hc-group":"admin1","hc-middle-x":0.29,"hc-middle-y":0.37,"hc-key":"ca-on","hc-a2":"ON","labelrank":"2","hasc":"CA.ON","alt-name":"Upper Canada","woe-id":"2344922","subregion":"Ontario","fips":"CA08","postal-code":"ON","name":"Ontario","country":"Canada","type-en":"Province","region":"Eastern Canada","longitude":"-84.79430000000001","woe-name":"Ontario","latitude":"50.5244","woe-label":"Ontario, CA, Canada","type":"Province"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6059,2877],[6012,2914],[6005,2956],[6022,2981],[6030,2960],[6059,2877]]],[[[7249,1970],[7235,1932],[7216,1901],[7192,1894],[7146,1838],[7087,1700],[7052,1656],[6996,1623],[6958,1543],[6890,1512],[6866,1525],[6722,1440],[6655,1394],[6609,1335],[6586,1250],[6605,1236],[6666,1245],[6701,1279],[6713,1237],[6748,1215],[6709,1185],[6629,1154],[6560,1112],[6525,1047],[6451,1046],[6384,1020],[6331,945],[6331,914],[6255,857],[6248,802],[6221,823],[6176,798],[6137,807],[6129,860],[6231,898],[6224,934],[6195,928],[6196,1050],[6227,1076],[6274,1160],[6225,1311],[6231,1371],[6261,1446],[6225,1523],[6153,1568],[6213,1584],[6237,1532],[6285,1541],[6272,1495],[6299,1507],[6314,1460],[6332,1496],[6449,1478],[6451,1530],[6414,1542],[6445,1570],[6486,1565],[6403,1619],[6399,1663],[6350,1660],[6248,1755],[6187,1737],[6105,1756],[6029,1731],[5989,1732],[5899,1705],[5751,1699],[5776,1681],[5760,1642],[5707,1710],[5709,1733],[5636,1717],[5623,1792],[5583,1806],[5593,1882],[5512,1933],[5520,2004],[5505,2012],[5435,1984],[5369,1981],[5328,2012],[5278,2097],[5245,2132],[5201,2130],[5121,2104],[5005,2128],[4971,2120],[5001,2085],[5020,2103],[5077,2091],[5022,2077],[4995,2036],[4947,2002],[4975,2054],[4946,2083],[4932,1975],[4911,2013],[4858,1974],[4855,1900],[4822,1865],[4764,1858],[4731,1876],[4642,1857],[4617,1882],[4550,1828],[4508,1835],[4449,1879],[4402,1849],[4354,1911],[4262,1920],[4192,1885],[4171,1910],[4118,1907],[4044,1934],[4016,2039],[3966,2051],[3891,2811],[4056,3018],[4179,3213],[4305,3418],[4442,3641],[4539,3802],[4628,3749],[4671,3737],[4738,3662],[4815,3654],[4908,3629],[4986,3621],[5026,3591],[5065,3586],[5066,3559],[5093,3578],[5137,3578],[5215,3618],[5252,3611],[5429,3633],[5454,3575],[5456,3472],[5464,3439],[5498,3412],[5529,3363],[5531,3316],[5564,3251],[5553,3235],[5561,3179],[5689,3100],[5696,3070],[5739,3035],[5795,3029],[5865,2985],[5911,2918],[5958,2919],[6018,2899],[6061,2872],[6310,2164],[6309,2137],[6358,2067],[6467,1975],[6521,1947],[6684,1972],[6818,1928],[6835,1956],[6882,1904],[6935,1899],[6975,1926],[7009,1912],[7081,1985],[7167,2041],[7211,2040],[7221,1982],[7249,1970]]],[[[6115,1619],[5968,1636],[5841,1622],[5854,1651],[5897,1645],[5936,1673],[5953,1644],[6017,1704],[6046,1674],[6065,1711],[6102,1678],[6133,1676],[6115,1619]]]]}},{"type":"Feature","id":"CA.NB","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.51,"hc-key":"ca-nb","hc-a2":"NB","labelrank":"2","hasc":"CA.NB","alt-name":"Nouveau-Brunswick|Acadia","woe-id":"2344918","subregion":"Atlantic Canada","fips":"CA04","postal-code":"NB","name":"New Brunswick","country":"Canada","type-en":"Province","region":"Eastern Canada","longitude":"-66.4558","woe-name":"New Brunswick","latitude":"46.5822","woe-label":"New Brunswick, CA, Canada","type":"Province"},"geometry":{"type":"Polygon","coordinates":[[[8598,2894],[8586,2879],[8586,2845],[8572,2807],[8544,2836],[8547,2765],[8492,2686],[8441,2589],[8415,2586],[8385,2522],[8368,2531],[8324,2480],[8302,2501],[8248,2463],[8218,2476],[8197,2529],[8117,2548],[8100,2585],[7978,2793],[7893,2823],[7815,2741],[7783,2750],[7835,2815],[7844,2851],[7805,2924],[7832,2957],[7897,2994],[7938,2986],[7997,3052],[8047,3101],[8063,3094],[8139,3113],[8191,3083],[8228,3144],[8303,3182],[8291,3240],[8314,3205],[8295,3149],[8311,3108],[8312,3034],[8293,2993],[8363,3037],[8377,2992],[8506,2901],[8618,2941],[8598,2894]]]}},{"type":"Feature","id":"CA.NS","properties":{"hc-group":"admin1","hc-middle-x":0.23,"hc-middle-y":0.8,"hc-key":"ca-ns","hc-a2":"NS","labelrank":"2","hasc":"CA.NS","alt-name":"Acadia|Nouvelle-Écosse","woe-id":"2344921","subregion":"Atlantic Canada","fips":"CA07","postal-code":"NS","name":"Nova Scotia","country":"Canada","type-en":"Province","region":"Eastern Canada","longitude":"-62.8113","woe-name":"Nova Scotia","latitude":"45.2293","woe-label":"Nova Scotia, CA, Canada","type":"Province"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8586,2845],[8586,2879],[8598,2894],[8641,2895],[8683,2921],[8730,2909],[8744,2941],[8816,2965],[8851,2960],[8887,3059],[8914,3028],[8961,3036],[8972,3062],[9029,3037],[9017,3003],[9078,3041],[9078,3008],[9008,2946],[8986,2878],[8940,2827],[8891,2732],[8871,2748],[8866,2703],[8821,2683],[8850,2650],[8736,2601],[8765,2548],[8752,2414],[8730,2359],[8700,2346],[8709,2320],[8667,2276],[8604,2320],[8583,2287],[8530,2346],[8514,2404],[8526,2468],[8502,2460],[8591,2663],[8639,2741],[8662,2699],[8713,2786],[8765,2834],[8730,2820],[8597,2740],[8560,2693],[8551,2715],[8586,2845]]],[[[9021,3144],[9006,3113],[9066,3131],[9054,3151],[9067,3218],[9042,3169],[9025,3175],[9027,3253],[9039,3288],[9119,3303],[9144,3278],[9115,3153],[9063,3076],[9004,3053],[8970,3069],[8916,3122],[8920,3237],[8903,3321],[8906,3387],[8935,3404],[8992,3334],[9010,3250],[9026,3267],[9014,3198],[9021,3144]]]]}},{"type":"Feature","id":"CA.PE","properties":{"hc-group":"admin1","hc-middle-x":0.76,"hc-middle-y":0.48,"hc-key":"ca-pe","hc-a2":"PE","labelrank":"2","hasc":"CA.PE","alt-name":"Île de Saint-Jean|Île du Prince-Édouard","woe-id":"2344923","subregion":"Atlantic Canada","fips":"CA09","postal-code":"PE","name":"Prince Edward Island","country":"Canada","type-en":"Province","region":"Eastern Canada","longitude":"-63.3862","woe-name":"Prince Edward Island","latitude":"46.3417","woe-label":"Prince Edward Island, CA, Canada","type":"Province"},"geometry":{"type":"Polygon","coordinates":[[[8756,2995],[8726,2997],[8716,3026],[8678,2988],[8624,2973],[8588,2996],[8536,2966],[8512,3001],[8465,2993],[8473,3101],[8495,3039],[8586,3011],[8580,3037],[8652,3041],[8736,3116],[8808,3159],[8771,3108],[8796,3020],[8756,2995]]]}},{"type":"Feature","id":"CA.YT","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.52,"hc-key":"ca-yt","hc-a2":"YT","labelrank":"2","hasc":"CA.YT","alt-name":"Yukon Territory|Territoire du Yukon|Yukon|Yuk¢n","woe-id":"2344926","subregion":null,"fips":"CA12","postal-code":"YT","name":"Yukon","country":"Canada","type-en":"Territory","region":"Northern Canada","longitude":"-135.7","woe-name":"Yukon","latitude":"63.6088","woe-label":"Yukon Territory, CA, Canada","type":"Territoire"},"geometry":{"type":"Polygon","coordinates":[[[639,4744],[-860,5470],[-861,5470],[-863,5491],[-824,5537],[-873,5565],[-926,5561],[-950,5605],[-969,5598],[-999,5645],[153,7343],[197,7300],[220,7291],[257,7238],[257,7210],[283,7124],[322,7050],[350,7015],[369,7013],[237,6786],[238,6745],[223,6706],[193,6675],[178,6637],[354,6539],[337,6544],[338,6497],[325,6485],[326,6443],[283,6404],[300,6391],[268,6353],[277,6316],[325,6311],[309,6294],[354,6297],[363,6271],[335,6261],[341,6194],[272,6153],[255,6133],[274,6092],[229,6052],[265,6015],[279,5965],[254,5942],[299,5942],[316,5923],[308,5817],[347,5753],[337,5739],[343,5681],[301,5662],[306,5605],[326,5592],[292,5554],[295,5494],[313,5455],[286,5429],[285,5381],[314,5354],[340,5358],[357,5247],[384,5194],[418,5169],[405,5077],[388,5020],[476,4991],[495,5005],[544,4961],[630,4971],[629,4930],[607,4913],[639,4744]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/north_america/us-all.geo.json
const us_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"United States of America","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:102004"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=33 +lat_2=45 +lat_0=39 +lon_0=-96 +x_0=0 +y_0=0 +datum=NAD83 +units=m +no_defs","scale":0.000151481324748,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-2361356.09818,"yoffset":1398996.77886},"us-all-hawaii":{"xpan":190,"ypan":417,"hitZone":{"type":"Polygon","coordinates":[[[1747,3920],[3651,2950],[3651,-999],[1747,-999],[1747,3920]]]},"crs":"+proj=aea +lat_1=8 +lat_2=18 +lat_0=13 +lon_0=-157 +x_0=0 +y_0=0 +datum=NAD83 +units=m +no_defs","scale":0.000123090941806,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-338610.47557,"yoffset":1022754.31736},"us-all-alaska":{"rotation":-0.0174532925199,"xpan":5,"ypan":357,"hitZone":{"type":"Polygon","coordinates":[[[-999,5188],[-707,5188],[1747,3920],[1747,-999],[-999,-999],[-999,5188]]]},"crs":"+proj=tmerc +lat_0=54 +lon_0=-142 +k=0.9999 +x_0=500000 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","scale":0.0000584397059179,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-1566154.00853,"yoffset":1992671.14918}},"features":[{"type":"Feature","id":"US.MA","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.47,"hc-key":"us-ma","hc-a2":"MA","labelrank":"0","hasc":"US.MA","woe-id":"2347580","state-fips":"25","fips":"US25","postal-code":"MA","name":"Massachusetts","country":"United States of America","region":"Northeast","longitude":"-71.99930000000001","woe-name":"Massachusetts","latitude":"42.3739","woe-label":"Massachusetts, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9430,7889],[9476,7878],[9436,7864],[9417,7844],[9430,7889]]],[[[9314,7915],[9312,7927],[9304,7921],[9278,7938],[9254,7990],[9177,7968],[8997,7925],[8860,7896],[8853,7901],[8856,8080],[8922,8096],[9005,8115],[9005,8115],[9222,8166],[9242,8201],[9300,8236],[9318,8197],[9357,8186],[9312,8147],[9299,8081],[9324,8091],[9365,8074],[9428,7985],[9483,7974],[9525,8007],[9501,8067],[9535,8028],[9549,7982],[9504,7965],[9420,7906],[9411,7955],[9371,7921],[9373,7898],[9339,7878],[9327,7915],[9314,7915]]]]}},{"type":"Feature","id":"US.WA","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.52,"hc-key":"us-wa","hc-a2":"WA","labelrank":"0","hasc":"US.WA","woe-id":"2347606","state-fips":"53","fips":"US53","postal-code":"WA","name":"Washington","country":"United States of America","region":"West","longitude":"-120.361","woe-name":"Washington","latitude":"47.4865","woe-label":"Washington, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-77,9797],[-56,9768],[-91,9757],[-86,9712],[-136,9751],[-111,9756],[-77,9797]]],[[[-52,9689],[-85,9658],[-66,9645],[-43,9568],[-77,9588],[-74,9635],[-89,9664],[-52,9690],[-60,9697],[-61,9737],[-31,9701],[-12,9731],[-9,9774],[-33,9788],[-46,9839],[-32,9851],[926,9593],[767,8925],[779,8870],[774,8822],[398,8914],[378,8905],[289,8922],[163,8905],[94,8923],[38,8914],[-10,8925],[-22,8950],[-113,8979],[-207,8965],[-283,9014],[-271,9096],[-280,9134],[-321,9167],[-357,9171],[-365,9207],[-400,9226],[-436,9219],[-460,9259],[-436,9333],[-441,9279],[-416,9297],[-401,9347],[-434,9357],[-429,9395],[-369,9396],[-424,9436],[-424,9523],[-410,9624],[-433,9678],[-428,9749],[-385,9790],[-313,9713],[-183,9655],[-161,9666],[-146,9623],[-100,9637],[-95,9567],[-135,9518],[-77,9566],[-112,9491],[-89,9426],[-154,9433],[-175,9394],[-167,9449],[-222,9394],[-157,9376],[-124,9418],[-82,9426],[-82,9476],[-66,9527],[-18,9570],[-37,9644],[-24,9661],[-52,9689]]]]}},{"type":"Feature","id":"US.CA","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.67,"hc-key":"us-ca","hc-a2":"CA","labelrank":"0","hasc":"US.CA","woe-id":"2347563","state-fips":"6","fips":"US06","postal-code":"CA","name":"California","country":"United States of America","region":"West","longitude":"-119.591","woe-name":"California","latitude":"36.7496","woe-label":"California, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[-833,8186],[-50,7955],[-253,7203],[32,6779],[261,6430],[593,5936],[620,5788],[660,5730],[598,5702],[559,5661],[555,5605],[510,5537],[489,5536],[476,5452],[519,5416],[492,5355],[451,5357],[-76,5426],[-69,5467],[-95,5476],[-84,5583],[-110,5649],[-224,5792],[-276,5799],[-265,5822],[-284,5881],[-342,5885],[-417,5946],[-422,5975],[-484,6035],[-539,6046],[-588,6077],[-659,6091],[-686,6135],[-647,6273],[-691,6316],[-672,6333],[-720,6428],[-742,6442],[-793,6601],[-820,6637],[-816,6709],[-775,6726],[-761,6756],[-778,6807],[-821,6819],[-855,6888],[-842,6929],[-853,6979],[-833,7041],[-810,7042],[-816,6985],[-764,6931],[-772,6991],[-797,7030],[-787,7089],[-738,7083],[-782,7126],[-806,7122],[-833,7050],[-892,7126],[-903,7243],[-983,7395],[-967,7420],[-969,7507],[-943,7553],[-936,7629],[-964,7712],[-999,7766],[-993,7813],[-890,7943],[-849,8038],[-844,8118],[-860,8134],[-833,8186]]]}},{"type":"Feature","id":"US.OR","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.52,"hc-key":"us-or","hc-a2":"OR","labelrank":"0","hasc":"US.OR","woe-id":"2347596","state-fips":"41","fips":"US41","postal-code":"OR","name":"Oregon","country":"United States of America","region":"West","longitude":"-120.386","woe-name":"Oregon","latitude":"43.8333","woe-label":"Oregon, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[-50,7955],[-833,8186],[-851,8223],[-847,8281],[-817,8362],[-827,8415],[-793,8455],[-756,8527],[-714,8570],[-672,8648],[-594,8829],[-582,8877],[-494,9051],[-493,9108],[-468,9158],[-460,9216],[-396,9192],[-367,9202],[-359,9169],[-321,9167],[-280,9134],[-271,9096],[-283,9014],[-207,8965],[-113,8979],[-22,8950],[-10,8925],[38,8914],[94,8923],[163,8905],[289,8922],[378,8905],[398,8914],[774,8822],[785,8775],[821,8744],[823,8698],[776,8646],[718,8545],[624,8450],[615,8403],[662,8361],[616,8265],[510,7813],[-50,7955]]]}},{"type":"Feature","id":"US.WI","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.38,"hc-key":"us-wi","hc-a2":"WI","labelrank":"0","hasc":"US.WI","woe-id":"2347608","state-fips":"55","fips":"US55","postal-code":"WI","name":"Wisconsin","country":"United States of America","region":"Midwest","longitude":"-89.5831","woe-name":"Wisconsin","latitude":"44.3709","woe-label":"Wisconsin, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6206,8297],[6197,8237],[6159,8156],[6136,8180],[6161,8249],[6206,8297]]],[[[5575,7508],[5561,7544],[5494,7563],[5465,7670],[5479,7702],[5445,7758],[5431,7866],[5405,7892],[5360,7903],[5273,7994],[5217,8029],[5181,8035],[5136,8072],[5146,8117],[5144,8214],[5158,8253],[5117,8285],[5116,8322],[5147,8375],[5220,8422],[5214,8573],[5245,8603],[5303,8589],[5410,8635],[5449,8660],[5489,8656],[5481,8617],[5508,8583],[5554,8572],[5588,8553],[5611,8510],[5795,8473],[5849,8447],[5968,8437],[5993,8394],[6045,8372],[6042,8286],[6080,8287],[6071,8242],[6096,8224],[6058,8180],[6028,8078],[6049,8076],[6099,8156],[6129,8170],[6153,8151],[6124,8019],[6136,7996],[6101,7916],[6110,7860],[6082,7742],[6089,7679],[6116,7626],[6119,7543],[5780,7519],[5606,7509],[5575,7508]]]]}},{"type":"Feature","id":"US.ME","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.4,"hc-key":"us-me","hc-a2":"ME","labelrank":"0","hasc":"US.ME","woe-id":"2347578","state-fips":"23","fips":"US23","postal-code":"ME","name":"Maine","country":"United States of America","region":"Northeast","longitude":"-69.1973","woe-name":"Maine","latitude":"45.148","woe-label":"Maine, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9623,8727],[9643,8763],[9665,8747],[9641,8690],[9623,8727]]],[[[9225,8399],[9079,8830],[9115,8824],[9130,8917],[9168,8971],[9177,9035],[9160,9062],[9160,9140],[9176,9161],[9166,9236],[9238,9459],[9272,9467],[9292,9423],[9319,9415],[9428,9491],[9519,9435],[9630,9097],[9697,9099],[9717,9017],[9747,8995],[9778,9009],[9851,8939],[9818,8875],[9789,8883],[9784,8851],[9706,8811],[9712,8773],[9690,8747],[9669,8782],[9611,8766],[9590,8707],[9615,8647],[9554,8716],[9552,8761],[9517,8719],[9529,8622],[9505,8581],[9483,8586],[9467,8544],[9433,8531],[9420,8493],[9387,8524],[9346,8471],[9362,8439],[9314,8347],[9298,8291],[9235,8354],[9225,8399]]]]}},{"type":"Feature","id":"US.MI","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.67,"hc-key":"us-mi","hc-a2":"MI","labelrank":"0","hasc":"US.MI","woe-id":"2347581","state-fips":"26","fips":"US26","postal-code":"MI","name":"Michigan","country":"United States of America","region":"Midwest","longitude":"-84.9479","woe-name":"Michigan","latitude":"43.4343","woe-label":"Michigan, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6802,8561],[6808,8523],[6764,8521],[6774,8565],[6802,8561]]],[[[5863,9010],[5834,8966],[5759,8913],[5758,8947],[5863,9010]]],[[[6976,7443],[6815,7415],[6718,7400],[6716,7416],[6323,7372],[6364,7423],[6399,7509],[6417,7630],[6409,7695],[6330,7861],[6345,7903],[6322,7979],[6361,8059],[6352,8141],[6381,8159],[6381,8204],[6423,8217],[6453,8283],[6469,8252],[6460,8196],[6479,8180],[6501,8221],[6497,8298],[6533,8342],[6567,8348],[6542,8410],[6593,8461],[6646,8436],[6627,8469],[6669,8467],[6654,8434],[6698,8433],[6726,8400],[6837,8377],[6863,8359],[6884,8307],[6860,8285],[6902,8213],[6903,8115],[6872,8094],[6868,8040],[6821,8014],[6824,7934],[6868,7920],[6900,7950],[6937,8030],[6993,8059],[7042,8027],[7097,7866],[7128,7802],[7124,7704],[7066,7697],[7061,7631],[7021,7590],[7008,7500],[6976,7443]]],[[[5874,8741],[5900,8700],[5901,8651],[5938,8693],[6017,8689],[6049,8673],[6107,8596],[6174,8609],[6192,8589],[6244,8596],[6318,8663],[6430,8674],[6485,8705],[6529,8713],[6518,8645],[6560,8631],[6591,8646],[6609,8627],[6633,8653],[6688,8665],[6692,8589],[6745,8536],[6723,8521],[6631,8516],[6606,8530],[6598,8476],[6541,8514],[6480,8529],[6444,8521],[6426,8490],[6320,8470],[6302,8429],[6244,8388],[6264,8448],[6227,8437],[6192,8395],[6185,8444],[6096,8224],[6071,8242],[6080,8287],[6042,8286],[6045,8372],[5993,8394],[5968,8437],[5849,8447],[5795,8473],[5611,8510],[5588,8553],[5554,8572],[5623,8604],[5661,8642],[5731,8656],[5776,8696],[5805,8702],[5860,8764],[5868,8750],[5893,8802],[5958,8837],[6017,8829],[5931,8757],[5903,8703],[5900,8738],[5874,8741]]]]}},{"type":"Feature","id":"US.NV","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.38,"hc-key":"us-nv","hc-a2":"NV","labelrank":"0","hasc":"US.NV","woe-id":"2347587","state-fips":"32","fips":"US32","postal-code":"NV","name":"Nevada","country":"United States of America","region":"West","longitude":"-117.02","woe-name":"Nevada","latitude":"39.4299","woe-label":"Nevada, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[-50,7955],[510,7813],[897,7727],[1073,7690],[929,6975],[818,6420],[777,6221],[752,6180],[669,6227],[631,6217],[631,6159],[611,6068],[614,5982],[593,5936],[261,6430],[32,6779],[-253,7203],[-50,7955]]]}},{"type":"Feature","id":"US.NM","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.5,"hc-key":"us-nm","hc-a2":"NM","labelrank":"0","hasc":"US.NM","woe-id":"2347590","state-fips":"35","fips":"US35","postal-code":"NM","name":"New Mexico","country":"United States of America","region":"West","longitude":"-106.024","woe-name":"New Mexico","latitude":"34.5002","woe-label":"New Mexico, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1841,6242],[3091,6104],[3083,6007],[3081,5975],[3072,5970],[2976,4810],[2181,4887],[2208,4823],[1830,4873],[1815,4756],[1630,4782],[1736,5514],[1841,6242]]]}},{"type":"Feature","id":"US.CO","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.5,"hc-key":"us-co","hc-a2":"CO","labelrank":"0","hasc":"US.CO","woe-id":"2347564","state-fips":"8","fips":"US08","postal-code":"CO","name":"Colorado","country":"United States of America","region":"West","longitude":"-105.543","woe-name":"Colorado","latitude":"38.9998","woe-label":"Colorado, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3091,6104],[1841,6242],[1966,7108],[1990,7269],[2964,7155],[3357,7124],[3339,6866],[3329,6696],[3290,6089],[3091,6104]]]}},{"type":"Feature","id":"US.WY","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.5,"hc-key":"us-wy","hc-a2":"WY","labelrank":"0","hasc":"US.WY","woe-id":"2347609","state-fips":"56","fips":"US56","postal-code":"WY","name":"Wyoming","country":"United States of America","region":"West","longitude":"-107.552","woe-name":"Wyoming","latitude":"42.9999","woe-label":"Wyoming, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2964,7155],[1990,7269],[1600,7329],[1643,7585],[1677,7785],[1750,8226],[1772,8355],[3056,8191],[3019,7770],[3010,7672],[3002,7575],[2964,7155]]]}},{"type":"Feature","id":"US.KS","properties":{"hc-group":"admin1","hc-middle-x":0.3,"hc-middle-y":0.49,"hc-key":"us-ks","hc-a2":"KS","labelrank":"0","hasc":"US.KS","woe-id":"2347575","state-fips":"20","fips":"US20","postal-code":"KS","name":"Kansas","country":"United States of America","region":"Midwest","longitude":"-98.3309","woe-name":"Kansas","latitude":"38.5","woe-label":"Kansas, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3339,6866],[4682,6826],[4769,6780],[4726,6705],[4767,6667],[4781,6624],[4824,6600],[4833,6050],[3290,6089],[3329,6696],[3339,6866]]]}},{"type":"Feature","id":"US.NE","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.5,"hc-key":"us-ne","hc-a2":"NE","labelrank":"0","hasc":"US.NE","woe-id":"2347586","state-fips":"31","fips":"US31","postal-code":"NE","name":"Nebraska","country":"United States of America","region":"Midwest","longitude":"-99.68550000000001","woe-name":"Nebraska","latitude":"41.5002","woe-label":"Nebraska, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4682,6826],[3339,6866],[3357,7124],[2964,7155],[3002,7575],[3010,7672],[4071,7611],[4148,7558],[4194,7574],[4297,7577],[4330,7551],[4409,7521],[4453,7479],[4469,7474],[4478,7398],[4515,7341],[4533,7291],[4529,7228],[4559,7206],[4571,7165],[4579,7031],[4592,6986],[4592,6981],[4592,6981],[4591,6981],[4591,6981],[4619,6915],[4682,6826]]]}},{"type":"Feature","id":"US.OK","properties":{"hc-group":"admin1","hc-middle-x":0.78,"hc-middle-y":0.52,"hc-key":"us-ok","hc-a2":"OK","labelrank":"0","hasc":"US.OK","woe-id":"2347595","state-fips":"40","fips":"US40","postal-code":"OK","name":"Oklahoma","country":"United States of America","region":"South","longitude":"-97.1309","woe-name":"Oklahoma","latitude":"35.452","woe-label":"Oklahoma, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3290,6089],[4833,6050],[4833,6017],[4835,5920],[4877,5632],[4875,5180],[4790,5207],[4714,5260],[4685,5235],[4632,5257],[4595,5233],[4559,5242],[4474,5191],[4405,5248],[4360,5237],[4347,5258],[4312,5234],[4304,5199],[4283,5247],[4248,5227],[4181,5268],[4121,5246],[4093,5310],[4007,5296],[3908,5334],[3856,5341],[3842,5388],[3753,5388],[3686,5437],[3707,5936],[3081,5975],[3083,6007],[3091,6104],[3290,6089]]]}},{"type":"Feature","id":"US.MO","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.51,"hc-key":"us-mo","hc-a2":"MO","labelrank":"0","hasc":"US.MO","woe-id":"2347584","state-fips":"29","fips":"US29","postal-code":"MO","name":"Missouri","country":"United States of America","region":"Midwest","longitude":"-92.446","woe-name":"Missouri","latitude":"38.5487","woe-label":"Missouri, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4835,5920],[4833,6017],[4833,6050],[4824,6600],[4781,6624],[4767,6667],[4726,6705],[4769,6780],[4682,6826],[4619,6915],[4591,6981],[4591,6981],[4592,6981],[4846,6977],[5120,6985],[5389,7006],[5449,6947],[5449,6947],[5449,6947],[5436,6893],[5454,6813],[5475,6774],[5540,6711],[5588,6679],[5616,6596],[5642,6567],[5672,6592],[5735,6561],[5692,6420],[5752,6350],[5792,6336],[5873,6276],[5898,6211],[5886,6165],[5918,6121],[5975,6097],[5976,6033],[5956,5988],[5932,6005],[5921,5968],[5911,5955],[5907,5967],[5890,5980],[5893,5966],[5901,5936],[5869,5898],[5888,5872],[5868,5834],[5731,5821],[5790,5904],[5767,5957],[4835,5920]]]}},{"type":"Feature","id":"US.IL","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.45,"hc-key":"us-il","hc-a2":"IL","labelrank":"0","hasc":"US.IL","woe-id":"2347572","state-fips":"17","fips":"US17","postal-code":"IL","name":"Illinois","country":"United States of America","region":"Midwest","longitude":"-89.1991","woe-name":"Illinois","latitude":"39.946","woe-label":"Illinois, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6119,7543],[6121,7488],[6192,7351],[6247,6739],[6226,6674],[6254,6638],[6266,6585],[6244,6520],[6222,6503],[6194,6422],[6176,6404],[6179,6328],[6159,6283],[6171,6241],[6102,6218],[6105,6131],[6015,6162],[5987,6157],[5962,6117],[5975,6097],[5918,6121],[5886,6165],[5898,6211],[5873,6276],[5792,6336],[5752,6350],[5692,6420],[5735,6561],[5672,6592],[5642,6567],[5616,6596],[5588,6679],[5540,6711],[5475,6774],[5454,6813],[5436,6893],[5449,6947],[5449,6947],[5449,6947],[5458,7004],[5496,7020],[5535,7098],[5536,7132],[5509,7160],[5523,7224],[5579,7232],[5646,7276],[5671,7332],[5672,7411],[5625,7441],[5575,7508],[5575,7508],[5606,7509],[5848,7523],[6119,7543]]]}},{"type":"Feature","id":"US.IN","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.43,"hc-key":"us-in","hc-a2":"IN","labelrank":"0","hasc":"US.IN","woe-id":"2347573","state-fips":"18","fips":"US18","postal-code":"IN","name":"Indiana","country":"United States of America","region":"Midwest","longitude":"-86.1396","woe-name":"Indiana","latitude":"39.8874","woe-label":"Indiana, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6192,7351],[6239,7329],[6323,7372],[6716,7416],[6718,7400],[6732,7296],[6797,6730],[6792,6683],[6808,6651],[6737,6617],[6682,6619],[6693,6572],[6657,6540],[6652,6507],[6622,6498],[6608,6438],[6583,6411],[6531,6450],[6485,6413],[6485,6390],[6444,6379],[6426,6401],[6359,6356],[6303,6376],[6269,6350],[6209,6363],[6179,6328],[6176,6404],[6194,6422],[6222,6503],[6244,6520],[6266,6585],[6254,6638],[6226,6674],[6247,6739],[6192,7351]]]}},{"type":"Feature","id":"US.VT","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.43,"hc-key":"us-vt","hc-a2":"VT","labelrank":"0","hasc":"US.VT","woe-id":"2347604","state-fips":"50","fips":"US50","postal-code":"VT","name":"Vermont","country":"United States of America","region":"Northeast","longitude":"-72.7317","woe-name":"Vermont","latitude":"44.0886","woe-label":"Vermont, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8922,8096],[8856,8080],[8807,8284],[8772,8287],[8772,8328],[8740,8402],[8748,8453],[8739,8514],[8720,8537],[8695,8646],[8811,8677],[9024,8736],[9020,8661],[9045,8629],[9033,8585],[8978,8526],[8986,8490],[8981,8392],[8964,8320],[8979,8261],[8979,8148],[9005,8115],[9005,8115],[8922,8096]]]}},{"type":"Feature","id":"US.AR","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.43,"hc-key":"us-ar","hc-a2":"AR","labelrank":"0","hasc":"US.AR","woe-id":"2347562","state-fips":"5","fips":"US05","postal-code":"AR","name":"Arkansas","country":"United States of America","region":"South","longitude":"-92.14279999999999","woe-name":"Arkansas","latitude":"34.7563","woe-label":"Arkansas, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4975,5016],[4971,5157],[4910,5157],[4875,5180],[4877,5632],[4835,5920],[5767,5957],[5790,5904],[5731,5821],[5868,5834],[5871,5791],[5827,5763],[5835,5714],[5798,5670],[5802,5602],[5762,5567],[5770,5547],[5730,5520],[5706,5470],[5709,5414],[5635,5340],[5647,5309],[5609,5297],[5620,5250],[5583,5215],[5607,5162],[5598,5120],[5618,5077],[5605,5041],[5563,5038],[4975,5016]]]}},{"type":"Feature","id":"US.TX","properties":{"hc-group":"admin1","hc-middle-x":0.69,"hc-middle-y":0.52,"hc-key":"us-tx","hc-a2":"TX","labelrank":"0","hasc":"US.TX","woe-id":"2347602","state-fips":"48","fips":"US48","postal-code":"TX","name":"Texas","country":"United States of America","region":"South","longitude":"-98.7607","woe-name":"Texas","latitude":"31.131","woe-label":"Texas, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4875,5180],[4910,5157],[4971,5157],[4975,5016],[4980,4752],[5033,4679],[5031,4646],[5105,4506],[5093,4447],[5059,4380],[5065,4253],[5047,4228],[5018,4172],[5032,4146],[4989,4147],[4854,4084],[4875,4116],[4831,4102],[4842,4162],[4778,4141],[4769,4106],[4839,4052],[4789,4023],[4801,4063],[4739,3976],[4638,3901],[4557,3881],[4544,3857],[4451,3804],[4448,3787],[4381,3749],[4308,3672],[4340,3735],[4307,3756],[4261,3721],[4306,3712],[4263,3655],[4221,3658],[4249,3617],[4213,3527],[4195,3545],[4141,3510],[4206,3511],[4178,3442],[4232,3206],[4272,3164],[4203,3135],[4114,3192],[4013,3198],[3979,3230],[3915,3245],[3878,3279],[3810,3292],[3795,3375],[3727,3467],[3715,3534],[3721,3603],[3677,3628],[3595,3762],[3548,3801],[3525,3881],[3477,3970],[3469,4021],[3393,4097],[3411,4119],[3365,4132],[3310,4204],[3150,4220],[3103,4248],[3082,4218],[3018,4214],[2959,4096],[2967,4083],[2896,4024],[2861,4031],[2754,4113],[2695,4134],[2651,4187],[2595,4230],[2567,4305],[2573,4370],[2512,4503],[2437,4557],[2309,4714],[2275,4731],[2239,4806],[2208,4823],[2181,4887],[2976,4810],[3072,5970],[3081,5975],[3707,5936],[3686,5437],[3753,5388],[3842,5388],[3856,5341],[3908,5334],[4007,5296],[4093,5310],[4121,5246],[4181,5268],[4248,5227],[4283,5247],[4304,5199],[4312,5234],[4347,5258],[4360,5237],[4405,5248],[4474,5191],[4559,5242],[4595,5233],[4632,5257],[4685,5235],[4714,5260],[4790,5207],[4875,5180]]],[[[4269,3610],[4220,3493],[4219,3420],[4245,3297],[4214,3394],[4222,3530],[4269,3610]]]]}},{"type":"Feature","id":"US.RI","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.78,"hc-key":"us-ri","hc-a2":"RI","labelrank":"0","hasc":"US.RI","woe-id":"2347598","state-fips":"44","fips":"US44","postal-code":"RI","name":"Rhode Island","country":"United States of America","region":"Northeast","longitude":"-71.5082","woe-name":"Rhode Island","latitude":"41.6242","woe-label":"Rhode Island, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9339,7878],[9325,7871],[9314,7915],[9327,7915],[9339,7878]]],[[[9177,7968],[9254,7990],[9278,7938],[9304,7921],[9320,7866],[9285,7851],[9279,7822],[9216,7790],[9212,7845],[9177,7968]]]]}},{"type":"Feature","id":"US.AL","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.42,"hc-key":"us-al","hc-a2":"AL","labelrank":"0","hasc":"US.AL","woe-id":"2347559","state-fips":"1","fips":"US01","postal-code":"AL","name":"Alabama","country":"United States of America","region":"South","longitude":"-86.7184","woe-name":"Alabama","latitude":"32.8551","woe-label":"Alabama, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6487,4443],[6440,4378],[6291,4361],[6336,4375],[6317,4398],[6267,4399],[6216,4788],[6236,5574],[6215,5600],[6213,5603],[6762,5652],[6912,5135],[6947,5053],[6998,4970],[6970,4930],[6958,4846],[6990,4774],[6983,4704],[7015,4637],[6436,4574],[6431,4541],[6487,4486],[6487,4443]]]}},{"type":"Feature","id":"US.MS","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.48,"hc-key":"us-ms","hc-a2":"MS","labelrank":"0","hasc":"US.MS","woe-id":"2347583","state-fips":"28","fips":"US28","postal-code":"MS","name":"Mississippi","country":"United States of America","region":"South","longitude":"-89.71890000000001","woe-name":"Mississippi","latitude":"32.8657","woe-label":"Mississippi, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6267,4399],[6164,4396],[6059,4360],[6017,4328],[5936,4451],[5955,4536],[5523,4510],[5540,4526],[5522,4581],[5545,4585],[5545,4642],[5565,4662],[5584,4738],[5636,4781],[5670,4868],[5629,4895],[5611,4977],[5627,5018],[5605,5041],[5618,5077],[5598,5120],[5607,5162],[5583,5215],[5620,5250],[5609,5297],[5647,5309],[5635,5340],[5709,5414],[5706,5470],[5730,5520],[5770,5547],[5762,5567],[6122,5592],[6215,5600],[6236,5574],[6216,4788],[6267,4399]]]}},{"type":"Feature","id":"US.NC","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.5,"hc-key":"us-nc","hc-a2":"NC","labelrank":"0","hasc":"US.NC","woe-id":"2347592","state-fips":"37","fips":"US37","postal-code":"NC","name":"North Carolina","country":"United States of America","region":"South","longitude":"-78.866","woe-name":"North Carolina","latitude":"35.6152","woe-label":"North Carolina, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8716,6394],[8720,6381],[8694,6389],[8694,6389],[8704,6391],[8705,6390],[8709,6392],[8712,6393],[8716,6394]]],[[[8727,6396],[8756,6332],[8852,6203],[8782,6278],[8722,6395],[8724,6396],[8727,6396]]],[[[7532,6183],[7623,6187],[7858,6219],[8691,6388],[8768,6281],[8670,6318],[8707,6291],[8620,6230],[8584,6234],[8581,6204],[8719,6244],[8742,6161],[8737,6222],[8760,6252],[8795,6220],[8797,6153],[8772,6164],[8750,6091],[8709,6073],[8638,6097],[8638,6070],[8551,6078],[8664,6053],[8635,6009],[8661,6003],[8610,5957],[8551,5988],[8590,5949],[8631,5940],[8676,5955],[8686,5995],[8721,5956],[8670,5890],[8565,5865],[8469,5764],[8443,5714],[8432,5616],[8368,5624],[8302,5600],[8029,5790],[7791,5756],[7782,5790],[7714,5830],[7457,5802],[7290,5724],[7210,5711],[7034,5685],[7038,5756],[7073,5762],[7085,5807],[7131,5847],[7188,5859],[7269,5928],[7298,5973],[7352,6010],[7365,5989],[7437,6050],[7464,6038],[7490,6093],[7523,6123],[7532,6183]]]]}},{"type":"Feature","id":"US.VA","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.54,"hc-key":"us-va","hc-a2":"VA","labelrank":"0","hasc":"US.VA","woe-id":"2347605","state-fips":"51","fips":"US51","postal-code":"VA","name":"Virginia","country":"United States of America","region":"South","longitude":"-78.2431","woe-name":"Virginia","latitude":"37.7403","woe-label":"Virginia, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8722,6395],[8696,6432],[8704,6391],[8694,6389],[8694,6389],[8686,6398],[8691,6388],[7858,6219],[7623,6187],[7532,6183],[7472,6170],[7116,6120],[7221,6173],[7268,6217],[7309,6294],[7363,6332],[7431,6411],[7470,6351],[7530,6341],[7567,6378],[7595,6360],[7649,6382],[7664,6419],[7690,6412],[7773,6459],[7767,6505],[7840,6674],[7857,6759],[7932,6729],[7974,6848],[7998,6837],[8048,6900],[8072,6952],[8076,7028],[8188,6969],[8198,7020],[8256,7009],[8251,6984],[8341,6945],[8347,6939],[8353,6939],[8367,6892],[8334,6870],[8323,6802],[8347,6786],[8385,6812],[8429,6763],[8484,6768],[8507,6740],[8571,6721],[8572,6647],[8536,6648],[8499,6683],[8431,6711],[8532,6636],[8597,6606],[8561,6578],[8558,6548],[8577,6545],[8611,6494],[8586,6478],[8526,6534],[8449,6533],[8518,6510],[8580,6459],[8619,6482],[8679,6482],[8727,6396],[8724,6396],[8722,6395]],[[8558,6548],[8552,6548],[8552,6548],[8552,6548],[8484,6605],[8532,6551],[8552,6548],[8552,6548],[8552,6548],[8557,6544],[8558,6548]]],[[[8709,6392],[8713,6400],[8716,6394],[8712,6393],[8709,6392]]],[[[8765,6797],[8756,6760],[8761,6796],[8765,6797]]],[[[8688,6764],[8691,6772],[8739,6789],[8726,6737],[8674,6599],[8696,6561],[8678,6528],[8652,6583],[8652,6652],[8688,6764]]]]}},{"type":"Feature","id":"US.IA","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.49,"hc-key":"us-ia","hc-a2":"IA","labelrank":"0","hasc":"US.IA","woe-id":"2347574","state-fips":"19","fips":"US19","postal-code":"IA","name":"Iowa","country":"United States of America","region":"Midwest","longitude":"-93.3891","woe-name":"Iowa","latitude":"42.0423","woe-label":"Iowa, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[5575,7508],[5625,7441],[5672,7411],[5671,7332],[5646,7276],[5579,7232],[5523,7224],[5509,7160],[5536,7132],[5535,7098],[5496,7020],[5458,7004],[5449,6947],[5449,6947],[5449,6947],[5389,7006],[5120,6985],[4846,6977],[4592,6981],[4591,6981],[4579,7031],[4571,7165],[4559,7206],[4529,7228],[4533,7291],[4515,7341],[4478,7398],[4469,7474],[4453,7479],[4423,7540],[4459,7636],[4438,7663],[4433,7734],[4459,7735],[5137,7745],[5445,7758],[5479,7702],[5465,7670],[5494,7563],[5561,7544],[5577,7513],[5575,7508],[5575,7508]]]}},{"type":"Feature","id":"US.MD","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.27,"hc-key":"us-md","hc-a2":"MD","labelrank":"0","hasc":"US.MD","woe-id":"2347579","state-fips":"24","fips":"US24","postal-code":"MD","name":"Maryland","country":"United States of America","region":"South","longitude":"-77.0454","woe-name":"Maryland","latitude":"39.3874","woe-label":"Maryland, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8761,6796],[8769,6819],[8765,6797],[8761,6796]]],[[[8779,6915],[8779,6884],[8777,6914],[8777,6914],[8779,6915]]],[[[8739,6789],[8691,6772],[8688,6764],[8647,6746],[8650,6806],[8590,6833],[8592,6815],[8525,6862],[8581,6899],[8555,6926],[8511,6936],[8544,6974],[8512,6986],[8496,7036],[8530,7108],[8537,7165],[8497,7093],[8472,7099],[8469,7056],[8432,7052],[8471,7014],[8458,6959],[8483,6868],[8513,6820],[8462,6849],[8543,6778],[8548,6753],[8491,6782],[8433,6785],[8382,6834],[8354,6797],[8335,6827],[8370,6891],[8367,6916],[8385,6943],[8341,6945],[8251,6984],[8256,7009],[8198,7020],[8162,7087],[8101,7099],[8046,7067],[8043,7043],[8000,7038],[7977,7057],[7949,7003],[7928,7007],[7857,6922],[7835,7053],[8176,7119],[8559,7201],[8650,6887],[8771,6913],[8770,6856],[8753,6848],[8739,6789]]]]}},{"type":"Feature","id":"US.DE","properties":{"hc-group":"admin1","hc-middle-x":0.91,"hc-middle-y":0.77,"hc-key":"us-de","hc-a2":"DE","labelrank":"0","hasc":"US.DE","woe-id":"2347566","state-fips":"10","fips":"US10","postal-code":"DE","name":"Delaware","country":"United States of America","region":"South","longitude":"-75.41119999999999","woe-name":"Delaware","latitude":"38.8657","woe-label":"Delaware, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8777,6914],[8771,6915],[8771,6913],[8650,6887],[8559,7201],[8589,7239],[8625,7239],[8601,7183],[8613,7145],[8652,7114],[8675,7051],[8735,6995],[8751,6999],[8779,6915],[8777,6914],[8777,6914]]]}},{"type":"Feature","id":"US.PA","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.49,"hc-key":"us-pa","hc-a2":"PA","labelrank":"0","hasc":"US.PA","woe-id":"2347597","state-fips":"42","fips":"US42","postal-code":"PA","name":"Pennsylvania","country":"United States of America","region":"Northeast","longitude":"-77.60939999999999","woe-name":"Pennsylvania","latitude":"40.8601","woe-label":"Pennsylvania, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8611,7549],[8632,7530],[8615,7490],[8627,7443],[8646,7444],[8739,7361],[8691,7310],[8673,7276],[8625,7239],[8589,7239],[8559,7201],[8176,7119],[7835,7053],[7630,7017],[7589,7253],[7589,7253],[7530,7595],[7556,7610],[7662,7693],[7674,7625],[8514,7797],[8573,7765],[8588,7712],[8673,7663],[8673,7663],[8611,7549]]]}},{"type":"Feature","id":"US.NJ","properties":{"hc-group":"admin1","hc-middle-x":0.68,"hc-middle-y":0.64,"hc-key":"us-nj","hc-a2":"NJ","labelrank":"0","hasc":"US.NJ","woe-id":"2347589","state-fips":"34","fips":"US34","postal-code":"NJ","name":"New Jersey","country":"United States of America","region":"Northeast","longitude":"-74.4653","woe-name":"New Jersey","latitude":"40.0449","woe-label":"New Jersey, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8611,7549],[8673,7663],[8759,7635],[8846,7608],[8840,7532],[8810,7504],[8805,7466],[8866,7456],[8875,7438],[8886,7281],[8853,7228],[8849,7172],[8812,7122],[8784,7047],[8766,7040],[8769,7097],[8716,7095],[8623,7151],[8610,7186],[8624,7231],[8676,7269],[8691,7310],[8739,7361],[8646,7444],[8627,7443],[8615,7490],[8632,7530],[8611,7549]]]}},{"type":"Feature","id":"US.NY","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.49,"hc-key":"us-ny","hc-a2":"NY","labelrank":"0","hasc":"US.NY","woe-id":"2347591","state-fips":"36","fips":"US36","postal-code":"NY","name":"New York","country":"United States of America","region":"Northeast","longitude":"-75.32420000000001","woe-name":"New York","latitude":"43.1988","woe-label":"New York, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8673,7663],[8588,7712],[8573,7765],[8514,7797],[7674,7625],[7662,7693],[7763,7795],[7803,7872],[7754,7932],[7747,7976],[7812,8010],[7918,8040],[7988,8041],[8031,8026],[8061,8043],[8133,8055],[8180,8080],[8224,8141],[8264,8164],[8243,8232],[8257,8274],[8225,8259],[8202,8296],[8230,8345],[8280,8379],[8297,8437],[8358,8526],[8422,8581],[8453,8585],[8695,8646],[8720,8537],[8739,8514],[8748,8453],[8740,8402],[8772,8328],[8772,8287],[8807,8284],[8856,8080],[8853,7901],[8860,7896],[8896,7702],[8912,7685],[8874,7645],[8896,7623],[8881,7575],[8930,7617],[8982,7620],[9002,7641],[9094,7671],[9134,7722],[9173,7697],[9177,7721],[9184,7702],[9231,7730],[9141,7649],[9083,7619],[9032,7570],[8936,7519],[8857,7498],[8812,7468],[8814,7503],[8840,7506],[8858,7554],[8843,7544],[8846,7608],[8759,7635],[8695,7656],[8673,7663],[8673,7663]]]}},{"type":"Feature","id":"US.ID","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.75,"hc-key":"us-id","hc-a2":"ID","labelrank":"0","hasc":"US.ID","woe-id":"2347571","state-fips":"16","fips":"US16","postal-code":"ID","name":"Idaho","country":"United States of America","region":"West","longitude":"-114.133","woe-name":"Idaho","latitude":"43.7825","woe-label":"Idaho, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[926,9593],[1093,9555],[1036,9301],[1076,9210],[1061,9142],[1117,9085],[1172,8979],[1170,8959],[1219,8896],[1258,8897],[1253,8859],[1219,8796],[1204,8727],[1211,8698],[1177,8675],[1167,8620],[1200,8590],[1278,8630],[1303,8596],[1303,8522],[1338,8434],[1326,8419],[1347,8377],[1374,8375],[1391,8331],[1392,8280],[1415,8254],[1451,8281],[1508,8261],[1536,8282],[1614,8258],[1671,8261],[1686,8296],[1713,8295],[1750,8226],[1677,7785],[1643,7585],[1393,7629],[1073,7690],[897,7727],[510,7813],[616,8265],[662,8361],[615,8403],[624,8450],[718,8545],[776,8646],[823,8698],[821,8744],[785,8775],[774,8822],[779,8870],[767,8925],[926,9593]]]}},{"type":"Feature","id":"US.SD","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.44,"hc-key":"us-sd","hc-a2":"SD","labelrank":"0","hasc":"US.SD","woe-id":"2347600","state-fips":"46","fips":"US46","postal-code":"SD","name":"South Dakota","country":"United States of America","region":"Midwest","longitude":"-100.255","woe-name":"South Dakota","latitude":"44.4711","woe-label":"South Dakota, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3010,7672],[3019,7770],[3056,8191],[3059,8191],[3080,8436],[4231,8374],[4444,8372],[4429,8325],[4387,8283],[4419,8232],[4462,8203],[4459,7735],[4433,7734],[4438,7663],[4459,7636],[4423,7540],[4453,7479],[4409,7521],[4330,7551],[4297,7577],[4194,7574],[4148,7558],[4071,7611],[3010,7672]]]}},{"type":"Feature","id":"US.CT","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.5,"hc-key":"us-ct","hc-a2":"CT","labelrank":"0","hasc":"US.CT","woe-id":"2347565","state-fips":"9","fips":"US09","postal-code":"CT","name":"Connecticut","country":"United States of America","region":"Northeast","longitude":"-72.7594","woe-name":"Connecticut","latitude":"41.6486","woe-label":"Connecticut, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[9216,7790],[9204,7796],[9095,7743],[9023,7721],[8972,7689],[8896,7623],[8874,7645],[8912,7685],[8896,7702],[8860,7896],[8997,7925],[9177,7968],[9212,7845],[9216,7790]]]}},{"type":"Feature","id":"US.NH","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.57,"hc-key":"us-nh","hc-a2":"NH","labelrank":"0","hasc":"US.NH","woe-id":"2347588","state-fips":"33","fips":"US33","postal-code":"NH","name":"New Hampshire","country":"United States of America","region":"Northeast","longitude":"-71.6301","woe-name":"New Hampshire","latitude":"43.5993","woe-label":"New Hampshire, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[9298,8291],[9306,8288],[9300,8236],[9242,8201],[9222,8166],[9005,8115],[9005,8115],[8979,8148],[8979,8261],[8964,8320],[8981,8392],[8986,8490],[8978,8526],[9033,8585],[9045,8629],[9020,8661],[9024,8736],[9036,8814],[9079,8830],[9225,8399],[9235,8354],[9298,8291]]]}},{"type":"Feature","id":"US.KY","properties":{"hc-group":"admin1","hc-middle-x":0.65,"hc-middle-y":0.5,"hc-key":"us-ky","hc-a2":"KY","labelrank":"0","hasc":"US.KY","woe-id":"2347576","state-fips":"21","fips":"US21","postal-code":"KY","name":"Kentucky","country":"United States of America","region":"South","longitude":"-85.5729","woe-name":"Kentucky","latitude":"37.3994","woe-label":"Kentucky, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5893,5966],[5890,5980],[5907,5967],[5893,5966]]],[[[5921,5968],[5932,6005],[5956,5988],[5976,6033],[5975,6097],[5962,6117],[5987,6157],[6015,6162],[6105,6131],[6102,6218],[6171,6241],[6159,6283],[6179,6328],[6209,6363],[6269,6350],[6303,6376],[6359,6356],[6426,6401],[6444,6379],[6485,6390],[6485,6413],[6531,6450],[6583,6411],[6608,6438],[6622,6498],[6652,6507],[6657,6540],[6693,6572],[6682,6619],[6737,6617],[6808,6651],[6792,6683],[6797,6730],[6873,6741],[6900,6725],[6933,6672],[7001,6669],[7036,6641],[7069,6664],[7119,6643],[7198,6692],[7216,6653],[7270,6617],[7270,6617],[7270,6617],[7272,6548],[7358,6439],[7431,6411],[7363,6332],[7309,6294],[7268,6217],[7221,6173],[7116,6120],[7104,6113],[6814,6086],[6751,6077],[6516,6061],[6250,6032],[6200,6040],[6210,5991],[5921,5968]]],[[[7270,6617],[7271,6617],[7270,6617],[7270,6617],[7270,6617],[7270,6617]]]]}},{"type":"Feature","id":"US.OH","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.53,"hc-key":"us-oh","hc-a2":"OH","labelrank":"0","hasc":"US.OH","woe-id":"2347594","state-fips":"39","fips":"US39","postal-code":"OH","name":"Ohio","country":"United States of America","region":"Midwest","longitude":"-82.67189999999999","woe-name":"Ohio","latitude":"40.0924","woe-label":"Ohio, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6718,7400],[6815,7415],[6976,7443],[7095,7408],[7082,7394],[7173,7383],[7258,7426],[7329,7440],[7383,7503],[7530,7595],[7589,7253],[7561,7233],[7587,7158],[7558,7018],[7564,6981],[7504,6911],[7454,6903],[7419,6863],[7399,6809],[7416,6775],[7391,6755],[7354,6783],[7333,6723],[7346,6679],[7321,6631],[7271,6617],[7270,6617],[7216,6653],[7198,6692],[7119,6643],[7069,6664],[7036,6641],[7001,6669],[6933,6672],[6900,6725],[6873,6741],[6797,6730],[6732,7296],[6718,7400]]]}},{"type":"Feature","id":"US.TN","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.54,"hc-key":"us-tn","hc-a2":"TN","labelrank":"0","hasc":"US.TN","woe-id":"2347601","state-fips":"47","fips":"US47","postal-code":"TN","name":"Tennessee","country":"United States of America","region":"South","longitude":"-86.3415","woe-name":"Tennessee","latitude":"35.7514","woe-label":"Tennessee, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6215,5600],[6122,5592],[5762,5567],[5802,5602],[5798,5670],[5835,5714],[5827,5763],[5871,5791],[5868,5834],[5888,5872],[5869,5898],[5901,5936],[5893,5966],[5907,5967],[5911,5955],[5921,5968],[6210,5991],[6200,6040],[6250,6032],[6516,6061],[6751,6077],[6814,6086],[7104,6113],[7116,6120],[7472,6170],[7532,6183],[7523,6123],[7490,6093],[7464,6038],[7437,6050],[7365,5989],[7352,6010],[7298,5973],[7269,5928],[7188,5859],[7131,5847],[7085,5807],[7073,5762],[7038,5756],[7034,5685],[6918,5671],[6762,5652],[6213,5603],[6215,5600]]]}},{"type":"Feature","id":"US.WV","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.56,"hc-key":"us-wv","hc-a2":"WV","labelrank":"0","hasc":"US.WV","woe-id":"2347607","state-fips":"54","fips":"US54","postal-code":"WV","name":"West Virginia","country":"United States of America","region":"South","longitude":"-80.7128","woe-name":"West Virginia","latitude":"38.6422","woe-label":"West Virginia, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[7270,6617],[7271,6617],[7321,6631],[7346,6679],[7333,6723],[7354,6783],[7391,6755],[7416,6775],[7399,6809],[7419,6863],[7454,6903],[7504,6911],[7564,6981],[7558,7018],[7587,7158],[7561,7233],[7589,7253],[7630,7017],[7835,7053],[7857,6922],[7928,7007],[7949,7003],[7977,7057],[8000,7038],[8043,7043],[8046,7067],[8101,7099],[8162,7087],[8198,7020],[8188,6969],[8076,7028],[8072,6952],[8048,6900],[7998,6837],[7974,6848],[7932,6729],[7857,6759],[7840,6674],[7767,6505],[7773,6459],[7690,6412],[7664,6419],[7649,6382],[7595,6360],[7567,6378],[7530,6341],[7470,6351],[7431,6411],[7358,6439],[7272,6548],[7270,6617],[7270,6617],[7270,6617],[7270,6617],[7270,6617]]]}},{"type":"Feature","id":"US.DC","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.14,"hc-key":"us-dc","hc-a2":"DC","labelrank":"9","hasc":"US.DC","woe-id":"2347567","state-fips":"11","fips":"US11","postal-code":"DC","name":"District of Columbia","country":"United States of America","region":"South","longitude":"-77.01130000000001","woe-name":"District of Columbia","latitude":"38.8922","woe-label":"District of Columbia, US, United States","type":"Federal District"},"geometry":{"type":"Polygon","coordinates":[[[8367,6916],[8366,6929],[8353,6939],[8347,6939],[8341,6945],[8385,6943],[8367,6916]]]}},{"type":"Feature","id":"US.LA","properties":{"hc-group":"admin1","hc-middle-x":0.34,"hc-middle-y":0.46,"hc-key":"us-la","hc-a2":"LA","labelrank":"0","hasc":"US.LA","woe-id":"2347577","state-fips":"22","fips":"US22","postal-code":"LA","name":"Louisiana","country":"United States of America","region":"South","longitude":"-91.9991","woe-name":"Louisiana","latitude":"30.5274","woe-label":"Louisiana, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6017,4328],[5915,4340],[5856,4368],[5812,4302],[5834,4283],[5904,4280],[5937,4313],[5992,4313],[5957,4259],[6001,4245],[6035,4298],[6067,4259],[5982,4181],[6027,4123],[6107,4114],[6148,4081],[6125,4035],[6070,4042],[6042,4077],[5966,4094],[5980,4115],[5902,4141],[5913,4064],[5876,4028],[5860,4066],[5811,4082],[5780,4036],[5724,4031],[5620,4068],[5631,4121],[5569,4128],[5532,4184],[5493,4173],[5494,4203],[5430,4175],[5437,4145],[5478,4154],[5526,4139],[5500,4112],[5431,4136],[5399,4121],[5305,4135],[5186,4176],[5128,4173],[5042,4153],[5047,4228],[5065,4253],[5059,4380],[5093,4447],[5105,4506],[5031,4646],[5033,4679],[4980,4752],[4975,5016],[5563,5038],[5605,5041],[5627,5018],[5611,4977],[5629,4895],[5670,4868],[5636,4781],[5584,4738],[5565,4662],[5545,4642],[5545,4585],[5522,4581],[5540,4526],[5523,4510],[5955,4536],[5936,4451],[6017,4328]]]}},{"type":"Feature","id":"US.FL","properties":{"hc-group":"admin1","hc-middle-x":0.77,"hc-middle-y":0.5,"hc-key":"us-fl","hc-a2":"FL","labelrank":"0","hasc":"US.FL","woe-id":"2347568","state-fips":"12","fips":"US12","postal-code":"FL","name":"Florida","country":"United States of America","region":"South","longitude":"-81.6228","woe-name":"Florida","latitude":"28.1568","woe-label":"Florida, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6487,4443],[6487,4486],[6431,4541],[6436,4574],[7015,4637],[7055,4568],[7649,4609],[7670,4559],[7699,4566],[7687,4660],[7713,4686],[7808,4673],[7822,4672],[7849,4570],[7908,4430],[8008,4269],[8125,4130],[8113,4109],[8144,4012],[8198,3936],[8297,3758],[8321,3651],[8331,3476],[8302,3361],[8313,3273],[8270,3209],[8291,3273],[8273,3290],[8230,3255],[8194,3260],[8141,3234],[8115,3258],[8115,3303],[8070,3379],[7979,3429],[7953,3420],[7907,3543],[7846,3536],[7839,3654],[7796,3674],[7819,3634],[7779,3640],[7675,3779],[7722,3884],[7712,3915],[7671,3899],[7670,3851],[7622,3872],[7618,3966],[7635,4045],[7626,4157],[7576,4229],[7525,4222],[7473,4277],[7425,4302],[7349,4395],[7265,4433],[7186,4403],[7198,4370],[7162,4370],[7148,4336],[7067,4277],[6979,4284],[6986,4316],[6958,4349],[6892,4391],[6798,4429],[6694,4444],[6468,4388],[6505,4431],[6487,4443]]]}},{"type":"Feature","id":"US.GA","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.52,"hc-key":"us-ga","hc-a2":"GA","labelrank":"0","hasc":"US.GA","woe-id":"2347569","state-fips":"13","fips":"US13","postal-code":"GA","name":"Georgia","country":"United States of America","region":"South","longitude":"-83.4078","woe-name":"Georgia","latitude":"32.8547","woe-label":"Georgia, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[7713,4686],[7687,4660],[7699,4566],[7670,4559],[7649,4609],[7055,4568],[7015,4637],[6983,4704],[6990,4774],[6958,4846],[6970,4930],[6998,4970],[6947,5053],[6912,5135],[6762,5652],[6918,5671],[7034,5685],[7210,5711],[7290,5724],[7249,5641],[7323,5596],[7364,5593],[7401,5526],[7444,5475],[7523,5430],[7538,5402],[7600,5369],[7606,5340],[7651,5293],[7708,5272],[7750,5169],[7800,5140],[7844,5042],[7887,5035],[7901,5029],[7811,4893],[7836,4826],[7798,4798],[7817,4730],[7808,4673],[7713,4686]]]}},{"type":"Feature","id":"US.SC","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.35,"hc-key":"us-sc","hc-a2":"SC","labelrank":"0","hasc":"US.SC","woe-id":"2347599","state-fips":"45","fips":"US45","postal-code":"SC","name":"South Carolina","country":"United States of America","region":"South","longitude":"-80.6471","woe-name":"South Carolina","latitude":"33.8578","woe-label":"South Carolina, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8302,5600],[8236,5523],[8205,5458],[8206,5396],[8173,5348],[8140,5346],[8131,5311],[8056,5219],[7989,5173],[7913,5166],[7971,5149],[7887,5035],[7844,5042],[7800,5140],[7750,5169],[7708,5272],[7651,5293],[7606,5340],[7600,5369],[7538,5402],[7523,5430],[7444,5475],[7401,5526],[7364,5593],[7323,5596],[7249,5641],[7290,5724],[7457,5802],[7714,5830],[7782,5790],[7791,5756],[8029,5790],[8302,5600]]]}},{"type":"Feature","id":"US.MN","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.6,"hc-key":"us-mn","hc-a2":"MN","labelrank":"0","hasc":"US.MN","woe-id":"2347582","state-fips":"27","fips":"US27","postal-code":"MN","name":"Minnesota","country":"United States of America","region":"Midwest","longitude":"-93.364","woe-name":"Minnesota","latitude":"46.0592","woe-label":"Minnesota, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4333,9174],[4688,9173],[4690,9272],[4748,9253],[4770,9125],[4791,9104],[4854,9085],[4916,9083],[4938,9052],[4984,9060],[5024,9084],[5073,9082],[5132,9063],[5181,8985],[5194,9006],[5240,9014],[5304,8955],[5351,8941],[5438,8996],[5463,8964],[5570,8974],[5607,8949],[5668,8950],[5592,8895],[5514,8864],[5432,8802],[5349,8700],[5245,8603],[5214,8573],[5220,8422],[5147,8375],[5116,8322],[5117,8285],[5158,8253],[5144,8214],[5146,8117],[5136,8072],[5181,8035],[5217,8029],[5273,7994],[5360,7903],[5405,7892],[5431,7866],[5445,7758],[5137,7745],[4459,7735],[4462,8203],[4419,8232],[4387,8283],[4429,8325],[4444,8372],[4436,8472],[4402,8555],[4409,8628],[4397,8650],[4394,8777],[4347,8957],[4343,9053],[4353,9083],[4333,9174]]]}},{"type":"Feature","id":"US.MT","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.53,"hc-key":"us-mt","hc-a2":"MT","labelrank":"0","hasc":"US.MT","woe-id":"2347585","state-fips":"30","fips":"US30","postal-code":"MT","name":"Montana","country":"United States of America","region":"West","longitude":"-110.044","woe-name":"Montana","latitude":"46.9965","woe-label":"Montana, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1093,9555],[1689,9433],[3150,9234],[3084,8486],[3080,8436],[3059,8191],[3056,8191],[1772,8355],[1750,8226],[1713,8295],[1686,8296],[1671,8261],[1614,8258],[1536,8282],[1508,8261],[1451,8281],[1415,8254],[1392,8280],[1391,8331],[1374,8375],[1347,8377],[1326,8419],[1338,8434],[1303,8522],[1303,8596],[1278,8630],[1200,8590],[1167,8620],[1177,8675],[1211,8698],[1204,8727],[1219,8796],[1253,8859],[1258,8897],[1219,8896],[1170,8959],[1172,8979],[1117,9085],[1061,9142],[1076,9210],[1036,9301],[1093,9555]]]}},{"type":"Feature","id":"US.ND","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.5,"hc-key":"us-nd","hc-a2":"ND","labelrank":"0","hasc":"US.ND","woe-id":"2347593","state-fips":"38","fips":"US38","postal-code":"ND","name":"North Dakota","country":"United States of America","region":"Midwest","longitude":"-100.302","woe-name":"North Dakota","latitude":"47.4675","woe-label":"North Dakota, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3080,8436],[3084,8486],[3150,9234],[3468,9209],[4333,9174],[4353,9083],[4343,9053],[4347,8957],[4394,8777],[4397,8650],[4409,8628],[4402,8555],[4436,8472],[4444,8372],[4231,8374],[3080,8436]]]}},{"type":"Feature","id":"US.AZ","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.45,"hc-key":"us-az","hc-a2":"AZ","labelrank":"0","hasc":"US.AZ","woe-id":"2347561","state-fips":"4","fips":"US04","postal-code":"AZ","name":"Arizona","country":"United States of America","region":"West","longitude":"-111.935","woe-name":"Arizona","latitude":"34.3046","woe-label":"Arizona, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1630,4782],[1196,4850],[1092,4906],[418,5307],[451,5357],[492,5355],[519,5416],[476,5452],[489,5536],[510,5537],[555,5605],[559,5661],[598,5702],[660,5730],[620,5788],[593,5936],[614,5982],[611,6068],[631,6159],[631,6217],[669,6227],[752,6180],[777,6221],[818,6420],[1488,6297],[1841,6242],[1736,5514],[1630,4782]]]}},{"type":"Feature","id":"US.UT","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.59,"hc-key":"us-ut","hc-a2":"UT","labelrank":"0","hasc":"US.UT","woe-id":"2347603","state-fips":"49","fips":"US49","postal-code":"UT","name":"Utah","country":"United States of America","region":"West","longitude":"-111.544","woe-name":"Utah","latitude":"39.5007","woe-label":"Utah, US, United States","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1841,6242],[1488,6297],[818,6420],[929,6975],[1073,7690],[1393,7629],[1643,7585],[1600,7329],[1990,7269],[1966,7108],[1841,6242]]]}},{"type":"Feature","id":"US.HI","properties":{"hc-group":"admin1","hc-middle-x":0.87,"hc-middle-y":0.79,"hc-key":"us-hi","hc-a2":"HI","labelrank":"0","hasc":"US.HI","woe-id":"2347570","state-fips":"15","fips":"US15","postal-code":"HI","name":"Hawaii","country":"United States of America","region":"West","longitude":"-157.999","woe-name":"Hawaii","latitude":"21.4919","woe-label":"Hawaii, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2871.1,2945.9],[2875.2,2942.7],[2879.9,2943.9],[2887,2943.5],[2908.4,2936],[2926.2,2927],[2959.3,2906.2],[2969.8,2895.8],[2975.6,2888.1],[2975.6,2868.8],[2976.2,2860.2],[2981.8,2860.4],[2989.5,2864.1],[2995.3,2860.2],[2998,2855.8],[2997.4,2846.7],[3000.1,2841.1],[3003.5,2836],[3013.7,2826.7],[3024.4,2822.1],[3028.7,2818.5],[3031,2814.1],[3030.4,2808.4],[3019,2794.3],[3010.1,2790.9],[2997.5,2778.6],[2988.9,2776],[2988.6,2773.6],[2981.4,2771.8],[2975.3,2767.2],[2953.3,2760.6],[2944.8,2762.6],[2939.9,2762.7],[2935.5,2761.3],[2924.6,2753.9],[2920.9,2749.4],[2913.7,2747.3],[2906.4,2742.2],[2896.2,2736.4],[2893.2,2735.4],[2884.5,2727],[2883,2723.6],[2883.3,2715.9],[2873.3,2705.7],[2870.1,2696.8],[2867.2,2693.6],[2858.8,2686.4],[2857,2687.4],[2857.1,2692],[2852.9,2695.4],[2844.7,2699.6],[2830,2708.8],[2817.8,2712.1],[2815.1,2719.8],[2812.5,2720.6],[2810.9,2726.2],[2809.3,2735.1],[2811.5,2745.8],[2816,2776.4],[2815.6,2781.7],[2812.9,2786.6],[2805.6,2807.3],[2801.6,2814.3],[2802.1,2818.9],[2799.7,2823.2],[2796.3,2833.9],[2792.8,2839.1],[2789.8,2841.4],[2785.4,2846.6],[2780.6,2859.9],[2784.8,2870.8],[2795.1,2879.5],[2796.2,2883.5],[2799,2885.8],[2807.4,2888.9],[2813.4,2898.4],[2817.9,2906.3],[2822.3,2911.4],[2825.4,2911.5],[2827.7,2920.9],[2826.3,2924.9],[2822.9,2928.1],[2815.9,2938.7],[2813,2947.9],[2812.4,2962.2],[2816.2,2969.6],[2818.8,2972],[2826,2972],[2844.7,2968],[2850,2958],[2857.7,2955],[2862.8,2952.2],[2866.3,2948],[2871.1,2945.9]]],[[[2685.2,3028],[2683.1,3024.1],[2677.4,3024.1],[2672.1,3025],[2662.7,3023],[2656.2,3022.3],[2651.9,3026.6],[2654.3,3029.7],[2658.6,3033.4],[2670.2,3040.4],[2675.5,3042.3],[2679.6,3041.9],[2684.7,3036.2],[2682.1,3030],[2685.2,3028]]],[[[2609.3,3070.6],[2599.6,3070.1],[2595.6,3075.8],[2594.6,3080.7],[2594.3,3089.5],[2593.6,3094],[2590.2,3096],[2581.9,3099.3],[2579.4,3103.3],[2581,3107.7],[2585.7,3110.1],[2594,3111.1],[2613.5,3108.3],[2622.3,3100.4],[2628.7,3093.1],[2631.3,3086.9],[2630,3083.4],[2625.7,3076.7],[2616.7,3072.6],[2609.3,3070.6]]],[[[2673.9,3132.2],[2675.6,3130.2],[2683.4,3127.1],[2684.3,3124.4],[2686.7,3123.7],[2687.2,3118.4],[2690,3115.9],[2695.5,3106.3],[2699,3106.6],[2701.3,3109.2],[2705.1,3109.1],[2716.1,3110.5],[2722.5,3115.1],[2725.7,3116.2],[2732.1,3116.5],[2743.2,3114.2],[2746.4,3112.2],[2747.4,3109.8],[2752.3,3104.5],[2758.6,3099.6],[2758.8,3097.7],[2762.9,3098.7],[2765.5,3096.6],[2767.9,3092.2],[2774.8,3091.2],[2781.6,3088],[2791.4,3084.8],[2795.9,3075.7],[2794.9,3067.4],[2791.3,3060.7],[2786.3,3059.3],[2782.2,3053.3],[2776.8,3053.2],[2766,3047.7],[2754.9,3048.2],[2751.2,3048],[2731.5,3038.5],[2721.5,3040.8],[2718.9,3040.1],[2710.5,3039.7],[2704.9,3044.9],[2701.6,3049.9],[2703.3,3051.3],[2703.4,3055.1],[2701.8,3068.9],[2700.2,3072.7],[2700.3,3077],[2699,3080.5],[2694.8,3083.7],[2688.7,3082.3],[2687.7,3079.4],[2685.2,3078.9],[2679.4,3082.6],[2675,3083.4],[2670.7,3086.1],[2667.9,3085.8],[2660.5,3094.3],[2655,3101.5],[2654.7,3106.1],[2652.7,3108.6],[2654.7,3118.8],[2656.5,3123.8],[2658.6,3127.1],[2661.1,3127.3],[2664.7,3132],[2668.7,3131.6],[2672.3,3133.2],[2673.9,3132.2]]],[[[2542.4,3172.8],[2550.3,3172.5],[2552.8,3171.9],[2554.4,3169.4],[2557.4,3169.4],[2586.4,3165],[2594.1,3164.7],[2596.9,3170.6],[2598.9,3171.1],[2601.5,3167.6],[2602.5,3163.6],[2612.6,3161],[2622.6,3161.3],[2627,3161.9],[2631.9,3163.6],[2637.2,3163.5],[2642.1,3162.2],[2644.1,3162.6],[2646.1,3160.1],[2650.7,3159.2],[2646.9,3152.3],[2640.8,3146.4],[2633.3,3142.2],[2625.8,3139.1],[2618.1,3137.5],[2610.3,3138.3],[2602.5,3139.8],[2587.1,3143.9],[2577.6,3147.2],[2554.7,3145.6],[2547.6,3144.5],[2537.6,3144.7],[2533.7,3146.2],[2531.4,3149.3],[2531.3,3153.2],[2535.1,3159.1],[2538.7,3160.4],[2541.9,3164.2],[2542.9,3168.2],[2540.2,3172.9],[2542.4,3172.8]]],[[[2414.1,3252.1],[2415.3,3248.5],[2417.5,3247.3],[2418.6,3243.6],[2422.1,3243.3],[2425.5,3238.6],[2425.5,3233.8],[2422.8,3232.6],[2424.3,3223.3],[2428.6,3221.7],[2432,3216.6],[2435,3215.5],[2437.4,3213.2],[2440.6,3217.4],[2437.6,3219.4],[2437.9,3221.8],[2440.1,3222.8],[2448,3221.2],[2445.1,3218.3],[2444.8,3211.6],[2448.1,3209.6],[2451.4,3205.2],[2450.5,3202.8],[2453.3,3197.1],[2461.8,3192],[2463,3190.8],[2453.8,3181.6],[2451.7,3180.9],[2451.1,3184.2],[2449.4,3185.6],[2439.8,3183.8],[2433.5,3180],[2429,3180.6],[2426.4,3184.7],[2416.6,3189.1],[2413.7,3194.2],[2413.7,3196.2],[2409.6,3193],[2411.6,3190.7],[2403.3,3190.2],[2404.6,3191.8],[2399.9,3193],[2399.1,3199.7],[2405.5,3202.8],[2406.3,3204.6],[2400.6,3208.2],[2398.9,3204.7],[2394.5,3208.7],[2395.9,3202.7],[2394.8,3202],[2388.7,3207.1],[2390.1,3203.7],[2397.6,3196.7],[2396.6,3193.5],[2393,3192],[2373.9,3188.4],[2369.7,3190.8],[2368,3197.9],[2365.9,3203.5],[2361.4,3209.6],[2357.7,3211.5],[2356.8,3217.1],[2355.5,3220.1],[2349.9,3224.5],[2347.5,3228.2],[2347.2,3238.6],[2345.9,3240.5],[2337.4,3247.6],[2345.9,3249.6],[2354.3,3250],[2368.8,3249.7],[2370.5,3253.5],[2374.1,3255.5],[2379.9,3260.1],[2379.6,3261.3],[2382.9,3267.5],[2390.2,3273.8],[2396.5,3275.6],[2400.5,3274.5],[2406.2,3268.8],[2409.8,3262],[2408.9,3258.2],[2414.1,3252.1]]],[[[1955.8,3294.7],[1953.2,3293.9],[1948.4,3296.6],[1946,3304.1],[1946.6,3308.8],[1948.8,3313.7],[1956.7,3321.5],[1963,3326.1],[1971.1,3330.6],[1973.3,3335.9],[1973.1,3339.8],[1976.7,3341.3],[1980.1,3341.2],[1983.8,3339.7],[1985.5,3336],[1981.3,3331.1],[1979.8,3326.6],[1981.2,3321],[1978.5,3317.4],[1972.1,3314.3],[1968.3,3313.2],[1961.2,3308.2],[1959.7,3305],[1955.8,3294.7]]],[[[2117.8,3386.1],[2120.7,3384.6],[2123.8,3384.8],[2127.6,3382.7],[2129.1,3379.5],[2132.9,3376.7],[2134.9,3369.7],[2136.6,3368.7],[2136.1,3360.5],[2134.2,3358],[2131.3,3350.1],[2128.4,3348.5],[2128,3342.6],[2128.8,3334.9],[2128,3329.3],[2123,3328.3],[2125.2,3324.9],[2121.7,3323.7],[2118.3,3320.9],[2116.9,3318.4],[2109.4,3313],[2107.3,3310.8],[2098.5,3314],[2089,3314.5],[2078.6,3316.4],[2076.9,3318],[2074,3315.9],[2073.1,3317.6],[2068.2,3320.6],[2065.1,3326.1],[2062.8,3326.7],[2060,3329.4],[2056.1,3330],[2050.6,3332.5],[2043.4,3334.4],[2041.2,3340.1],[2038.1,3343],[2038.3,3352.8],[2040.3,3353.5],[2048.5,3363],[2049.2,3368.3],[2052.4,3371.8],[2062.1,3374.2],[2067.8,3377.5],[2071.4,3380.6],[2076.1,3382.7],[2077.8,3384.8],[2086,3386.8],[2088.1,3384.2],[2095.7,3382.1],[2095.7,3385.2],[2099.3,3386.6],[2107.5,3385.9],[2111.6,3384.7],[2115.5,3387.5],[2117.8,3386.1]]]]}},{"type":"Feature","id":"US.AK","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.33,"hc-key":"us-ak","hc-a2":"AK","labelrank":"0","hasc":"US.AK","woe-id":"2347560","state-fips":"2","fips":"US02","postal-code":"AK","name":"Alaska","country":"United States of America","region":"West","longitude":"-151.604","woe-name":"Alaska","latitude":"65.3609","woe-label":"Alaska, US, United States","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[322,4275],[321,4280],[339,4292],[360,4283],[392,4281],[424,4297],[443,4318],[478,4297],[476,4285],[459,4279],[461,4263],[472,4263],[490,4288],[507,4272],[503,4256],[519,4248],[528,4258],[548,4257],[582,4240],[564,4217],[594,4212],[584,4202],[611,4198],[655,4200],[684,4194],[704,4174],[712,4178],[723,4165],[746,4156],[788,4155],[808,4136],[832,4134],[851,4144],[877,4147],[901,4136],[913,4120],[929,4117],[943,4100],[957,4101],[989,3159],[1039,3148],[1057,3163],[1084,3166],[1081,3138],[1107,3121],[1113,3108],[1167,3060],[1180,3028],[1208,3055],[1220,3056],[1229,3102],[1271,3127],[1297,3104],[1295,3091],[1335,3059],[1347,3039],[1367,3031],[1397,3002],[1477,2890],[1491,2875],[1490,2858],[1504,2853],[1511,2833],[1523,2836],[1613,2802],[1622,2783],[1617,2766],[1636,2722],[1622,2680],[1606,2663],[1592,2664],[1577,2702],[1585,2718],[1577,2755],[1555,2778],[1526,2764],[1520,2723],[1499,2746],[1510,2753],[1513,2796],[1473,2829],[1468,2844],[1424,2880],[1406,2878],[1414,2903],[1397,2917],[1390,2938],[1366,2963],[1364,2998],[1355,2976],[1348,2979],[1354,2974],[1334,2977],[1331,2984],[1344,2982],[1324,2991],[1283,3075],[1286,3041],[1310,2985],[1307,2971],[1288,2985],[1264,2982],[1266,2998],[1249,3031],[1245,3018],[1199,3046],[1202,3028],[1224,3026],[1254,2995],[1255,2977],[1229,2976],[1225,2963],[1169,2999],[1134,3041],[1085,3062],[1050,3083],[1069,3102],[1060,3119],[1025,3098],[969,3113],[977,3128],[953,3122],[899,3136],[842,3125],[826,3141],[792,3157],[802,3194],[788,3179],[783,3158],[761,3173],[742,3174],[759,3196],[727,3195],[706,3205],[716,3212],[705,3227],[679,3222],[658,3229],[636,3221],[637,3247],[620,3199],[631,3213],[642,3184],[628,3167],[614,3132],[576,3140],[552,3130],[545,3108],[537,3114],[509,3089],[521,3115],[493,3078],[478,3071],[455,3077],[433,3070],[426,3086],[455,3099],[483,3126],[457,3115],[438,3133],[464,3170],[478,3204],[473,3223],[491,3228],[524,3249],[543,3235],[554,3240],[588,3228],[544,3260],[549,3268],[527,3271],[524,3284],[490,3256],[469,3252],[424,3205],[428,3196],[407,3182],[408,3170],[377,3133],[343,3131],[339,3114],[317,3109],[309,3075],[334,3075],[352,3048],[305,3020],[308,3008],[287,2998],[271,2977],[246,2981],[222,2955],[212,2964],[200,2941],[186,2947],[152,2925],[163,2924],[146,2893],[133,2901],[107,2879],[96,2891],[89,2869],[73,2877],[24,2852],[40,2842],[7,2817],[-44,2808],[-61,2821],[-118,2794],[-130,2803],[-155,2792],[-167,2799],[-155,2816],[-167,2823],[-200,2781],[-223,2772],[-230,2808],[-252,2775],[-262,2795],[-286,2772],[-278,2800],[-223,2823],[-171,2853],[-115,2850],[-113,2838],[-84,2825],[-99,2845],[-80,2870],[-38,2892],[12,2907],[27,2896],[31,2922],[57,2946],[97,2964],[126,3051],[154,3072],[156,3089],[95,3074],[79,3099],[90,3123],[60,3099],[61,3072],[44,3066],[28,3121],[8,3111],[-6,3123],[-7,3147],[-37,3132],[-62,3132],[-69,3120],[-112,3131],[-85,3135],[-82,3162],[-87,3191],[-63,3208],[-76,3277],[-72,3305],[-89,3269],[-149,3267],[-172,3278],[-167,3295],[-184,3332],[-198,3342],[-212,3370],[-166,3383],[-134,3368],[-125,3345],[-109,3358],[-131,3376],[-161,3385],[-185,3401],[-173,3407],[-186,3433],[-191,3419],[-205,3460],[-194,3469],[-211,3484],[-189,3485],[-198,3504],[-175,3498],[-170,3526],[-130,3555],[-118,3553],[-108,3582],[-85,3606],[-61,3612],[-46,3602],[-34,3577],[-22,3576],[7,3591],[28,3609],[31,3600],[76,3594],[100,3613],[106,3664],[92,3688],[125,3701],[117,3734],[102,3721],[73,3725],[45,3711],[20,3709],[8,3729],[-28,3742],[-59,3740],[-101,3771],[-108,3789],[-98,3804],[-111,3837],[-95,3829],[-73,3837],[-119,3868],[-138,3897],[-124,3909],[-95,3914],[-87,3908],[-68,3921],[-2,3935],[36,3937],[67,3929],[47,3893],[52,3877],[111,3858],[119,3845],[140,3868],[162,3859],[147,3882],[128,3880],[135,3893],[119,3943],[132,3945],[139,3923],[133,3914],[145,3887],[163,3891],[175,3870],[196,3867],[201,3879],[179,3900],[152,3894],[142,3915],[154,3949],[129,3950],[86,3976],[89,4000],[86,4032],[55,4092],[40,4106],[27,4135],[45,4151],[57,4180],[76,4171],[124,4160],[156,4170],[182,4190],[189,4216],[201,4233],[224,4253],[229,4246],[253,4268],[256,4258],[287,4258],[317,4277],[322,4275]],[[322,4275],[323,4272],[323,4272],[323,4272],[311,4248],[326,4263],[323,4272],[323,4272],[323,4272],[324,4274],[322,4275]]],[[[-905,2721],[-922,2724],[-904,2733],[-898,2724],[-905,2721]]],[[[-739,2715],[-724,2712],[-729,2702],[-734,2709],[-739,2715]]],[[[-645,2693],[-651,2700],[-684,2693],[-643,2725],[-634,2718],[-623,2738],[-597,2740],[-595,2719],[-626,2714],[-645,2693]]],[[[-439,2748],[-458,2742],[-469,2755],[-457,2762],[-439,2748]]],[[[-268,2722],[-267,2733],[-255,2724],[-252,2715],[-268,2722]]],[[[-303,2804],[-293,2800],[-290,2768],[-309,2757],[-338,2767],[-359,2754],[-385,2761],[-386,2779],[-369,2783],[-354,2800],[-335,2796],[-303,2804]]],[[[-59,2737],[-58,2733],[-70,2740],[-62,2746],[-59,2737]]],[[[1485,2651],[1482,2635],[1455,2672],[1458,2688],[1473,2659],[1485,2651]]],[[[1568,2687],[1567,2665],[1547,2678],[1548,2705],[1568,2687]]],[[[-81,2759],[-83,2747],[-107,2735],[-88,2750],[-81,2759]]],[[[-100,2783],[-114,2781],[-119,2759],[-135,2762],[-131,2784],[-100,2783]]],[[[1530,2716],[1542,2706],[1538,2690],[1528,2711],[1530,2716]]],[[[1427,2708],[1429,2706],[1439,2711],[1430,2683],[1427,2708]]],[[[1439,2743],[1430,2731],[1420,2735],[1421,2742],[1439,2743]]],[[[1555,2775],[1573,2753],[1578,2721],[1569,2699],[1529,2721],[1537,2731],[1531,2760],[1555,2775]]],[[[1408,2747],[1414,2765],[1435,2776],[1437,2763],[1408,2747]]],[[[1480,2788],[1503,2783],[1494,2762],[1468,2778],[1475,2803],[1480,2788]]],[[[1467,2811],[1469,2795],[1445,2798],[1451,2810],[1467,2811]]],[[[1495,2807],[1510,2793],[1504,2784],[1485,2797],[1482,2819],[1495,2807]]],[[[253,2834],[251,2826],[235,2816],[239,2829],[253,2834]]],[[[276,2825],[279,2820],[259,2824],[263,2832],[276,2825]]],[[[1448,2845],[1470,2828],[1458,2816],[1449,2816],[1448,2845]]],[[[333,2880],[345,2878],[321,2864],[319,2872],[333,2880]]],[[[1295,2870],[1295,2846],[1283,2843],[1288,2862],[1295,2870]]],[[[1246,2943],[1241,2926],[1234,2942],[1237,2951],[1246,2943]]],[[[345,2973],[360,2960],[353,2961],[333,2971],[345,2973]]],[[[370,2989],[380,3007],[393,2992],[407,2995],[413,2978],[404,2970],[365,2959],[347,2974],[353,2990],[370,2989]]],[[[389,3006],[380,3014],[397,3021],[396,3012],[389,3006]]],[[[-42,3112],[-58,3105],[-53,3120],[-31,3126],[-42,3112]]],[[[643,3141],[641,3133],[628,3129],[639,3150],[643,3141]]],[[[683,3167],[692,3162],[662,3126],[639,3113],[651,3133],[678,3156],[683,3167]]],[[[-250,3366],[-233,3350],[-243,3328],[-239,3312],[-272,3312],[-294,3323],[-315,3350],[-321,3371],[-293,3362],[-286,3369],[-250,3366]]],[[[712,3177],[732,3173],[708,3154],[714,3166],[712,3177]]],[[[655,3184],[659,3177],[651,3159],[646,3171],[655,3184]]],[[[-553,3496],[-557,3490],[-570,3515],[-566,3524],[-553,3496]]],[[[735,3177],[725,3175],[725,3181],[752,3187],[735,3177]]],[[[-478,2741],[-509,2724],[-476,2727],[-492,2716],[-574,2704],[-597,2711],[-551,2713],[-526,2758],[-501,2752],[-507,2737],[-487,2749],[-478,2741]]],[[[1452,2689],[1461,2728],[1438,2724],[1443,2751],[1435,2778],[1419,2778],[1414,2794],[1439,2796],[1449,2769],[1468,2766],[1516,2700],[1532,2652],[1522,2641],[1495,2679],[1475,2669],[1476,2693],[1452,2689]]],[[[1292,2882],[1302,2902],[1330,2883],[1354,2825],[1358,2769],[1323,2816],[1325,2832],[1311,2830],[1320,2852],[1308,2856],[1308,2872],[1292,2882]]],[[[362,2955],[355,2938],[381,2954],[386,2936],[380,2918],[395,2917],[382,2900],[349,2913],[366,2899],[363,2889],[337,2894],[303,2868],[278,2838],[275,2849],[298,2883],[281,2883],[271,2862],[256,2873],[259,2892],[247,2904],[253,2919],[284,2939],[295,2933],[298,2909],[306,2934],[302,2950],[318,2956],[321,2936],[329,2963],[348,2946],[340,2965],[362,2955]]],[[[1277,2920],[1294,2891],[1278,2884],[1270,2906],[1243,2925],[1247,2941],[1271,2972],[1321,2953],[1323,2931],[1299,2928],[1309,2919],[1325,2926],[1333,2899],[1320,2896],[1277,2920]]],[[[1355,2884],[1341,2912],[1326,2962],[1314,2989],[1331,2969],[1358,2968],[1379,2937],[1376,2926],[1357,2961],[1361,2939],[1379,2919],[1383,2888],[1350,2853],[1347,2875],[1355,2884]]],[[[-347,3767],[-339,3759],[-322,3764],[-307,3758],[-307,3734],[-290,3713],[-256,3692],[-266,3681],[-286,3692],[-315,3679],[-313,3698],[-337,3738],[-353,3750],[-371,3746],[-381,3757],[-379,3773],[-362,3796],[-362,3776],[-347,3767]]],[[[1402,2834],[1394,2792],[1400,2779],[1385,2761],[1377,2790],[1389,2804],[1373,2811],[1364,2838],[1379,2842],[1395,2828],[1402,2835],[1401,2839],[1383,2863],[1396,2866],[1441,2858],[1445,2825],[1422,2845],[1441,2817],[1439,2809],[1410,2805],[1402,2834]]]]}},{"type":"Feature","properties":{"hc-group":"__separator_lines__"},"geometry":{"type":"MultiLineString","coordinates":[[[-707,5188],[3651,2950]],[[1747,2584],[1747,3799]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/north_america/mx-all.geo.json
const mx_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Mexico","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:102312"}},"hc-transform":{"default":{"crs":"+proj=tmerc +lat_0=31 +lon_0=-104.3333333333333 +k=0.9999090909090909 +x_0=165000 +y_0=0 +ellps=GRS80 +units=m +no_defs","scale":0.000216858136017,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-1207535.62717,"yoffset":242949.955442}},"features":[{"type":"Feature","id":"MX.3622","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"mx-3622","hc-a2":"NU","labelrank":"20","hasc":"-99","alt-name":null,"woe-id":"-99","subregion":null,"fips":null,"postal-code":null,"name":null,"country":"Mexico","type-en":null,"region":null,"longitude":"-89.66330000000001","woe-name":null,"latitude":"22.3858","woe-label":null,"type":null},"geometry":{"type":"Polygon","coordinates":[[[8715,6148],[8748,6110],[8743,6078],[8718,6091],[8732,6113],[8715,6148]]]}},{"type":"Feature","id":"MX.BC","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.23,"hc-key":"mx-bc","hc-a2":"BC","labelrank":"4","hasc":"MX.BN","alt-name":null,"woe-id":"2346265","subregion":null,"fips":"MX02","postal-code":"BC","name":"Baja California","country":"Mexico","type-en":"State","region":null,"longitude":"-115.209","woe-name":"Baja California","latitude":"30.3399","woe-label":"Baja California, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[19,8114],[17,8088],[-21,8117],[-40,8114],[5,8168],[18,8221],[31,8176],[19,8114]]],[[[-963,8529],[-983,8523],[-999,8592],[-996,8623],[-957,8585],[-963,8529]]],[[[341,8050],[368,8080],[361,8048],[341,8050]]],[[[377,8047],[375,8059],[386,8046],[377,8047]]],[[[295,9758],[253,9748],[216,9681],[238,9628],[236,9539],[266,9491],[276,9440],[248,9393],[243,9342],[223,9258],[243,9213],[236,9197],[270,9169],[273,9095],[266,9055],[281,8973],[263,8883],[297,8798],[329,8772],[337,8725],[396,8705],[444,8645],[529,8567],[573,8505],[561,8493],[595,8427],[594,8367],[626,8390],[648,8328],[680,8341],[699,8303],[723,8211],[755,8190],[806,8181],[793,8123],[819,8088],[809,8060],[822,8013],[585,8031],[389,8046],[376,8093],[397,8123],[376,8144],[410,8218],[375,8292],[340,8299],[281,8407],[244,8423],[235,8473],[206,8484],[133,8590],[64,8615],[35,8657],[-16,8696],[-32,8694],[-92,8755],[-88,8808],[-121,8834],[-107,8884],[-115,8982],[-179,9039],[-165,9133],[-172,9165],[-205,9187],[-225,9226],[-253,9228],[-237,9300],[-244,9328],[-296,9418],[-338,9465],[-325,9504],[-353,9543],[-326,9529],[-307,9578],[-348,9603],[-373,9635],[-395,9737],[-418,9751],[-440,9822],[-439,9851],[333,9835],[303,9793],[295,9758]]],[[[659,8467],[589,8562],[598,8614],[618,8613],[666,8547],[657,8519],[718,8507],[732,8391],[659,8467]]]]}},{"type":"Feature","id":"MX.BS","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.21,"hc-key":"mx-bs","hc-a2":"BS","labelrank":"4","hasc":"MX.BS","alt-name":null,"woe-id":"2346266","subregion":null,"fips":"MX03","postal-code":"BS","name":"Baja California Sur","country":"Mexico","type-en":"State","region":null,"longitude":"-111.452","woe-name":"Baja California Sur","latitude":"25.0656","woe-label":"Baja California Sur, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1746,6522],[1724,6519],[1712,6539],[1703,6605],[1746,6522]]],[[[1008,6693],[1045,6691],[1101,6633],[1094,6606],[1008,6693]]],[[[1560,6676],[1583,6646],[1569,6621],[1541,6685],[1560,6676]]],[[[1488,6862],[1509,6803],[1466,6830],[1447,6862],[1488,6862]]],[[[953,6872],[927,6799],[900,6802],[938,6884],[967,6976],[972,6959],[948,6894],[953,6872]]],[[[1350,7257],[1287,7167],[1295,7206],[1309,7249],[1350,7257]]],[[[341,8050],[361,8048],[373,8020],[377,8047],[386,8046],[387,8045],[389,8046],[585,8031],[822,8013],[815,7963],[868,7880],[941,7842],[965,7765],[993,7720],[986,7706],[1026,7674],[1071,7656],[1046,7615],[1092,7555],[1078,7521],[1115,7458],[1152,7459],[1108,7512],[1100,7575],[1111,7580],[1193,7500],[1188,7455],[1229,7431],[1220,7387],[1242,7360],[1239,7331],[1262,7263],[1246,7222],[1260,7152],[1290,7121],[1320,7054],[1352,7048],[1349,7023],[1384,6907],[1432,6856],[1463,6778],[1438,6732],[1430,6685],[1447,6611],[1485,6554],[1556,6514],[1575,6552],[1563,6589],[1600,6598],[1619,6563],[1674,6526],[1679,6484],[1734,6488],[1734,6431],[1775,6387],[1779,6331],[1848,6295],[1864,6257],[1862,6197],[1823,6127],[1759,6101],[1694,6045],[1674,6045],[1626,6101],[1607,6215],[1562,6299],[1471,6356],[1319,6521],[1177,6615],[1128,6669],[1109,6713],[1102,6694],[1066,6700],[1053,6741],[1015,6790],[973,6790],[956,6829],[967,6941],[987,6972],[993,7046],[983,7048],[989,7148],[963,7250],[932,7273],[918,7322],[886,7355],[867,7346],[792,7402],[686,7495],[689,7514],[656,7569],[667,7636],[614,7557],[589,7576],[542,7579],[527,7552],[495,7557],[467,7587],[441,7645],[394,7667],[378,7661],[345,7712],[306,7733],[286,7724],[224,7771],[223,7835],[195,7864],[150,7885],[115,7948],[99,7943],[57,7983],[53,8022],[202,7976],[237,7973],[298,8006],[308,7953],[350,7924],[364,7898],[386,7921],[416,7914],[429,7937],[394,7951],[367,7937],[347,7984],[353,8030],[318,8009],[341,8050]]]]}},{"type":"Feature","id":"MX.SO","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.4,"hc-key":"mx-so","hc-a2":"SO","labelrank":"4","hasc":"MX.SO","alt-name":null,"woe-id":"2346289","subregion":null,"fips":"MX26","postal-code":"SO","name":"Sonora","country":"Mexico","type-en":"State","region":null,"longitude":"-110.485","woe-name":"Sonora","latitude":"29.5293","woe-label":"Sonora, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[997,8275],[905,8337],[939,8371],[937,8411],[961,8456],[1013,8462],[1013,8429],[1036,8383],[997,8275]]],[[[314,9461],[298,9452],[274,9478],[289,9492],[314,9461]]],[[[2219,7493],[2001,7326],[1963,7333],[1964,7389],[1876,7487],[1874,7462],[1830,7460],[1795,7474],[1767,7510],[1734,7605],[1629,7647],[1592,7685],[1550,7707],[1585,7706],[1534,7764],[1524,7824],[1541,7846],[1532,7900],[1564,7911],[1470,7947],[1457,7970],[1442,7915],[1407,7964],[1387,7955],[1326,8001],[1259,8129],[1183,8163],[1169,8210],[1111,8279],[1120,8295],[1086,8320],[1049,8370],[1048,8416],[1030,8447],[1029,8494],[998,8489],[971,8521],[987,8553],[898,8727],[878,8734],[884,8832],[852,8866],[853,8926],[818,8968],[792,9022],[780,9076],[817,9203],[761,9241],[660,9269],[642,9292],[631,9347],[596,9375],[544,9394],[512,9355],[470,9360],[369,9439],[343,9473],[313,9477],[236,9539],[238,9628],[216,9681],[253,9748],[295,9758],[1321,9287],[1458,9225],[1478,9221],[2131,9188],[2099,9002],[2175,8927],[2208,8913],[2243,8876],[2251,8701],[2245,8686],[2218,8467],[2187,8465],[2206,8229],[2196,8169],[2227,8060],[2193,8031],[2115,8053],[2052,8050],[2025,8014],[2063,7912],[2100,7884],[2110,7854],[2145,7822],[2139,7803],[2179,7759],[2182,7686],[2167,7638],[2200,7584],[2233,7563],[2233,7563],[2235,7559],[2235,7559],[2219,7493]]],[[[1948,7292],[1959,7317],[1951,7293],[1950,7293],[1948,7292]]],[[[1969,7301],[1972,7328],[1995,7317],[1984,7310],[1969,7301]]]]}},{"type":"Feature","id":"MX.CL","properties":{"hc-group":"admin1","hc-middle-x":0.96,"hc-middle-y":0.45,"hc-key":"mx-cl","hc-a2":"CL","labelrank":"7","hasc":"MX.CL","alt-name":null,"woe-id":"2346271","subregion":null,"fips":"MX08","postal-code":"CL","name":"Colima","country":"Mexico","type-en":"State","region":null,"longitude":"-103.915","woe-name":"Colima","latitude":"19.1325","woe-label":"Colima, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1274,4509],[1224,4526],[1249,4562],[1279,4521],[1274,4509]]],[[[3824,4452],[3740,4520],[3615,4575],[3625,4597],[3523,4622],[3543,4659],[3564,4652],[3656,4686],[3689,4742],[3714,4754],[3791,4715],[3861,4748],[3873,4719],[3910,4685],[3900,4602],[3917,4555],[3872,4527],[3865,4494],[3824,4452]]]]}},{"type":"Feature","id":"MX.NA","properties":{"hc-group":"admin1","hc-middle-x":0.66,"hc-middle-y":0.5,"hc-key":"mx-na","hc-a2":"NA","labelrank":"4","hasc":"MX.NA","alt-name":null,"woe-id":"2346281","subregion":null,"fips":"MX18","postal-code":"NA","name":"Nayarit","country":"Mexico","type-en":"State","region":null,"longitude":"-104.824","woe-name":"Nayarit","latitude":"21.7934","woe-label":"Nayarit, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2811,5576],[2849,5561],[2844,5525],[2815,5540],[2811,5576]]],[[[3622,5802],[3620,5791],[3616,5781],[3592,5715],[3696,5603],[3675,5533],[3657,5504],[3750,5451],[3737,5412],[3702,5387],[3653,5374],[3657,5301],[3636,5259],[3631,5202],[3564,5253],[3548,5276],[3514,5282],[3477,5315],[3452,5318],[3408,5286],[3348,5281],[3279,5195],[3255,5224],[3214,5220],[3222,5263],[3273,5323],[3300,5334],[3306,5388],[3297,5439],[3313,5495],[3238,5536],[3164,5668],[3155,5702],[3157,5780],[3134,5875],[3172,5889],[3223,5869],[3231,5889],[3216,5939],[3187,5979],[3229,6020],[3222,6051],[3251,6069],[3340,6062],[3403,6024],[3423,5977],[3386,5935],[3394,5885],[3462,5935],[3499,5916],[3527,5854],[3565,5838],[3614,5860],[3622,5802]]]]}},{"type":"Feature","id":"MX.CM","properties":{"hc-group":"admin1","hc-middle-x":0.69,"hc-middle-y":0.6,"hc-key":"mx-cm","hc-a2":"CM","labelrank":"6","hasc":"MX.CM","alt-name":null,"woe-id":"2346267","subregion":null,"fips":"MX04","postal-code":"CM","name":"Campeche","country":"Mexico","type-en":"State","region":null,"longitude":"-90.2807","woe-name":"Campeche","latitude":"18.6624","woe-label":"Campeche, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8184,4646],[8137,4614],[8079,4603],[8172,4655],[8184,4646]]],[[[9074,4403],[9073,4350],[8415,4300],[8404,4294],[8400,4357],[8357,4355],[8279,4383],[8186,4393],[8167,4334],[8085,4329],[8045,4348],[7972,4403],[7966,4515],[7891,4508],[7869,4524],[7842,4578],[7992,4608],[8033,4606],[8067,4578],[8013,4575],[8093,4535],[8168,4521],[8198,4550],[8259,4578],[8279,4641],[8222,4672],[8215,4692],[8308,4751],[8386,4813],[8453,4900],[8451,5019],[8464,5056],[8527,5115],[8515,5170],[8513,5300],[8503,5347],[8511,5428],[8532,5461],[8538,5355],[8595,5346],[8622,5316],[8660,5314],[8674,5337],[8706,5284],[8735,5266],[8760,5218],[8829,5178],[8860,5131],[8901,5092],[8920,5045],[8937,5024],[9030,4960],[9080,4892],[9084,4821],[9064,4792],[9063,4687],[9106,4503],[9069,4434],[9074,4403]]]]}},{"type":"Feature","id":"MX.QR","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.63,"hc-key":"mx-qr","hc-a2":"QR","labelrank":"4","hasc":"MX.QR","alt-name":null,"woe-id":"2346286","subregion":null,"fips":"MX23","postal-code":"QR","name":"Quintana Roo","country":"Mexico","type-en":"State","region":null,"longitude":"-88.34399999999999","woe-name":"Quintana Roo","latitude":"19.3861","woe-label":"Quintana Roo, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9851,5494],[9797,5389],[9774,5366],[9763,5433],[9784,5478],[9851,5494]]],[[[9526,5821],[9544,5811],[9636,5811],[9661,5825],[9669,5860],[9619,5855],[9666,5883],[9717,5868],[9749,5825],[9785,5824],[9799,5737],[9828,5724],[9804,5665],[9793,5599],[9733,5501],[9678,5445],[9614,5321],[9616,5199],[9556,5118],[9529,5115],[9529,5089],[9560,5073],[9558,5049],[9595,5077],[9641,5076],[9646,5053],[9569,4999],[9563,4947],[9581,4941],[9604,4980],[9635,4985],[9601,4865],[9590,4765],[9570,4730],[9563,4623],[9548,4595],[9544,4540],[9531,4589],[9501,4631],[9447,4648],[9468,4724],[9449,4794],[9416,4747],[9372,4638],[9297,4629],[9259,4529],[9231,4504],[9221,4455],[9174,4387],[9108,4425],[9074,4403],[9069,4434],[9106,4503],[9063,4687],[9064,4792],[9084,4821],[9080,4892],[9030,4960],[8937,5024],[8920,5045],[8931,5111],[8990,5125],[9040,5164],[9092,5175],[9161,5233],[9252,5282],[9273,5329],[9308,5349],[9344,5398],[9398,5394],[9436,5417],[9512,5488],[9550,5612],[9525,5670],[9539,5744],[9526,5821]]]]}},{"type":"Feature","id":"MX.MX","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.45,"hc-key":"mx-mx","hc-a2":"MX","labelrank":"4","hasc":"MX.MX","alt-name":null,"woe-id":"2346278","subregion":null,"fips":"MX15","postal-code":"MX","name":"México","country":"Mexico","type-en":"State","region":null,"longitude":"-99.74160000000001","woe-name":"México","latitude":"19.3275","woe-label":"Mexico, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5629,4608],[5608,4587],[5570,4588],[5560,4614],[5516,4629],[5523,4641],[5504,4721],[5454,4807],[5408,4727],[5390,4727],[5383,4681],[5401,4645],[5385,4603],[5396,4568],[5338,4516],[5331,4469],[5303,4472],[5272,4500],[5229,4446],[5206,4461],[5127,4439],[5101,4395],[5057,4357],[5024,4379],[5029,4408],[4999,4450],[4989,4523],[4929,4532],[5041,4679],[5029,4703],[5089,4741],[5068,4794],[5097,4934],[5155,5023],[5159,5053],[5192,5075],[5265,5010],[5297,5022],[5320,4986],[5310,4946],[5336,4930],[5359,4873],[5421,4959],[5486,4984],[5518,4944],[5506,4902],[5525,4896],[5552,4928],[5601,4916],[5635,4876],[5618,4818],[5600,4816],[5626,4772],[5616,4745],[5632,4670],[5629,4608]]]}},{"type":"Feature","id":"MX.MO","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.52,"hc-key":"mx-mo","hc-a2":"MO","labelrank":"4","hasc":"MX.MR","alt-name":null,"woe-id":"2346280","subregion":null,"fips":"MX17","postal-code":"MO","name":"Morelos","country":"Mexico","type-en":"State","region":null,"longitude":"-99.07850000000001","woe-name":"Morelos","latitude":"18.742","woe-label":"Morelos, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5516,4629],[5560,4614],[5570,4588],[5608,4587],[5629,4608],[5627,4558],[5601,4528],[5624,4481],[5596,4483],[5626,4385],[5578,4409],[5494,4352],[5439,4428],[5423,4389],[5392,4388],[5363,4415],[5331,4469],[5338,4516],[5396,4568],[5385,4603],[5401,4645],[5488,4616],[5516,4629]]]}},{"type":"Feature","id":"MX.DF","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.59,"hc-key":"mx-df","hc-a2":"DF","labelrank":"4","hasc":"MX.DF","alt-name":null,"woe-id":"2346272","subregion":null,"fips":"MX09","postal-code":"DF","name":"Distrito Federal","country":"Mexico","type-en":"Federal District","region":null,"longitude":"-99.1369","woe-name":"Distrito Federal","latitude":"19.3266","woe-label":"Distrito Federal, MX, Mexico","type":"Distrito Federal"},"geometry":{"type":"Polygon","coordinates":[[[5516,4629],[5488,4616],[5401,4645],[5383,4681],[5390,4727],[5408,4727],[5454,4807],[5504,4721],[5523,4641],[5516,4629]]]}},{"type":"Feature","id":"MX.QT","properties":{"hc-group":"admin1","hc-middle-x":0.32,"hc-middle-y":0.57,"hc-key":"mx-qt","hc-a2":"QT","labelrank":"4","hasc":"MX.QE","alt-name":null,"woe-id":"2346285","subregion":null,"fips":"MX22","postal-code":"QT","name":"Querétaro","country":"Mexico","type-en":"State","region":null,"longitude":"-99.9663","woe-name":"Querétaro","latitude":"20.7392","woe-label":"Queretaro de Arteaga, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5192,5075],[5159,5053],[5155,5023],[5097,4934],[5078,4949],[5077,4989],[5037,5035],[5006,5057],[4965,5117],[4962,5157],[4934,5229],[4969,5315],[5018,5290],[5042,5304],[5067,5284],[5094,5299],[5110,5390],[5142,5407],[5189,5392],[5230,5426],[5199,5442],[5199,5490],[5222,5526],[5276,5482],[5342,5499],[5403,5581],[5441,5483],[5437,5449],[5462,5442],[5463,5407],[5399,5384],[5351,5379],[5356,5348],[5336,5298],[5310,5275],[5300,5237],[5312,5210],[5264,5174],[5198,5151],[5192,5075]]]}},{"type":"Feature","id":"MX.TB","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.45,"hc-key":"mx-tb","hc-a2":"TB","labelrank":"4","hasc":"MX.TB","alt-name":null,"woe-id":"2346290","subregion":null,"fips":"MX32","postal-code":"TB","name":"Tabasco","country":"Mexico","type-en":"State","region":null,"longitude":"-92.8274","woe-name":"Tabasco","latitude":"18.1252","woe-label":"Tabasco, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[8404,4294],[8419,4084],[8258,4074],[8272,4105],[8230,4133],[8231,4150],[8180,4168],[8149,4242],[8114,4245],[8101,4304],[8036,4307],[7984,4259],[7906,4219],[7883,4184],[7795,4093],[7741,4103],[7714,4142],[7684,4154],[7672,4224],[7672,4294],[7641,4280],[7600,4307],[7558,4299],[7528,4174],[7497,4140],[7471,4071],[7450,4087],[7458,4135],[7412,4180],[7337,4209],[7323,4236],[7284,4252],[7291,4295],[7255,4374],[7352,4417],[7347,4398],[7387,4409],[7415,4439],[7448,4437],[7451,4464],[7499,4477],[7623,4485],[7711,4499],[7765,4559],[7842,4578],[7869,4524],[7891,4508],[7966,4515],[7972,4403],[8045,4348],[8085,4329],[8167,4334],[8186,4393],[8279,4383],[8357,4355],[8400,4357],[8404,4294]]]}},{"type":"Feature","id":"MX.CS","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.43,"hc-key":"mx-cs","hc-a2":"CS","labelrank":"4","hasc":"MX.CP","alt-name":null,"woe-id":"2346268","subregion":null,"fips":"MX05","postal-code":"CS","name":"Chiapas","country":"Mexico","type-en":"State","region":null,"longitude":"-92.581","woe-name":"Chiapas","latitude":"16.527","woe-label":"Chiapas, MX, Mexico","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7313,3580],[7362,3544],[7306,3564],[7313,3580]]],[[[8258,4074],[8312,4053],[8400,3956],[8526,3899],[8568,3842],[8571,3801],[8604,3806],[8667,3763],[8645,3739],[8656,3684],[8636,3647],[8181,3617],[8171,3608],[8021,3311],[8023,3291],[8074,3232],[8046,3200],[8037,3131],[8050,3089],[8022,3028],[7845,3191],[7790,3257],[7736,3286],[7641,3371],[7478,3490],[7370,3549],[7402,3556],[7385,3580],[7316,3599],[7330,3647],[7294,3734],[7323,3793],[7323,3850],[7364,3878],[7377,3928],[7372,3980],[7455,4042],[7471,4071],[7497,4140],[7528,4174],[7558,4299],[7600,4307],[7641,4280],[7672,4294],[7672,4224],[7684,4154],[7714,4142],[7741,4103],[7795,4093],[7883,4184],[7906,4219],[7984,4259],[8036,4307],[8101,4304],[8114,4245],[8149,4242],[8180,4168],[8231,4150],[8230,4133],[8272,4105],[8258,4074]]]]}},{"type":"Feature","id":"MX.NL","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.51,"hc-key":"mx-nl","hc-a2":"NL","labelrank":"4","hasc":"MX.NL","alt-name":null,"woe-id":"2346282","subregion":null,"fips":"MX19","postal-code":"NL","name":"Nuevo León","country":"Mexico","type-en":"State","region":null,"longitude":"-99.83069999999999","woe-name":"Nuevo León","latitude":"25.6178","woe-label":"Nuevo Leon, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5115,7859],[5138,7842],[5148,7823],[5083,7784],[5086,7757],[5129,7752],[5166,7623],[5152,7570],[5162,7534],[5209,7513],[5181,7455],[5209,7457],[5262,7436],[5273,7416],[5262,7376],[5273,7340],[5293,7352],[5321,7315],[5348,7311],[5365,7228],[5403,7243],[5449,7199],[5474,7234],[5556,7214],[5561,7204],[5570,7020],[5607,7002],[5463,6869],[5412,6879],[5363,6831],[5373,6749],[5328,6767],[5266,6732],[5244,6696],[5209,6692],[5181,6666],[5191,6630],[5226,6646],[5239,6583],[5227,6506],[5236,6479],[5282,6440],[5237,6368],[5155,6355],[5119,6274],[5137,6218],[5089,6232],[5061,6209],[5086,6194],[5086,6166],[4993,6169],[4989,6145],[4955,6158],[4942,6228],[4947,6264],[4931,6319],[4932,6379],[4899,6419],[4890,6454],[4886,6550],[4808,6653],[4826,6722],[4816,6776],[4837,6802],[4801,6830],[4822,6870],[4860,6895],[4904,6903],[4954,6891],[4995,6898],[5015,6924],[4979,6949],[4928,6946],[4887,6972],[4854,7014],[4886,7003],[4856,7044],[4834,7046],[4790,7108],[4788,7171],[4762,7187],[4758,7217],[4722,7244],[4697,7291],[4661,7323],[4812,7461],[4827,7419],[4867,7475],[4876,7575],[4835,7599],[4822,7569],[4793,7583],[4791,7640],[4848,7685],[4911,7706],[4925,7790],[4942,7827],[4990,7863],[5063,7808],[5115,7859]]]}},{"type":"Feature","id":"MX.SI","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.33,"hc-key":"mx-si","hc-a2":"SI","labelrank":"4","hasc":"MX.SI","alt-name":null,"woe-id":"2346288","subregion":null,"fips":"MX25","postal-code":"SI","name":"Sinaloa","country":"Mexico","type-en":"State","region":null,"longitude":"-108.001","woe-name":"Sinaloa","latitude":"25.6041","woe-label":"Sinaloa, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[1951,7293],[1951,7263],[1969,7301],[1984,7310],[1995,7317],[2009,7282],[2001,7326],[2219,7493],[2233,7563],[2233,7563],[2267,7595],[2306,7580],[2325,7553],[2383,7532],[2389,7493],[2442,7411],[2453,7279],[2463,7260],[2579,7233],[2602,7215],[2629,7134],[2673,7105],[2736,7047],[2692,6996],[2680,6966],[2668,6880],[2697,6779],[2731,6733],[2757,6729],[2790,6696],[2835,6613],[2843,6571],[2873,6542],[2908,6540],[2953,6577],[2979,6577],[3028,6536],[3062,6458],[3092,6454],[3073,6408],[3078,6324],[3102,6269],[3140,6230],[3149,6168],[3196,6117],[3250,6112],[3251,6069],[3222,6051],[3229,6020],[3187,5979],[3216,5939],[3231,5889],[3223,5869],[3172,5889],[3134,5875],[3108,5923],[3059,5977],[3028,5995],[2964,6079],[2893,6146],[2862,6212],[2832,6236],[2764,6323],[2735,6378],[2690,6429],[2575,6516],[2566,6533],[2441,6620],[2520,6576],[2542,6588],[2529,6630],[2493,6611],[2388,6681],[2422,6642],[2368,6685],[2355,6737],[2377,6734],[2358,6816],[2351,6751],[2316,6774],[2275,6859],[2322,6808],[2324,6840],[2365,6817],[2335,6861],[2298,6883],[2258,6880],[2250,6920],[2241,6881],[2220,6921],[2141,6972],[2101,6964],[1998,7028],[2047,7043],[2073,7087],[1993,7046],[1981,7071],[1937,7077],[1942,7098],[1892,7128],[1897,7214],[1948,7292],[1950,7293],[1951,7293]]]}},{"type":"Feature","id":"MX.CH","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.49,"hc-key":"mx-ch","hc-a2":"CH","labelrank":"6","hasc":"MX.CH","alt-name":null,"woe-id":"2346269","subregion":null,"fips":"MX06","postal-code":"CH","name":"Chihuahua","country":"Mexico","type-en":"State","region":null,"longitude":"-106.232","woe-name":"Chihuahua","latitude":"28.973","woe-label":"Chihuahua, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[2233,7563],[2233,7563],[2200,7584],[2167,7638],[2182,7686],[2179,7759],[2139,7803],[2145,7822],[2110,7854],[2100,7884],[2063,7912],[2025,8014],[2052,8050],[2115,8053],[2193,8031],[2227,8060],[2196,8169],[2206,8229],[2187,8465],[2218,8467],[2245,8686],[2251,8701],[2243,8876],[2208,8913],[2175,8927],[2099,9002],[2131,9188],[2372,9178],[2378,9346],[2919,9330],[2969,9308],[2991,9256],[3029,9206],[3080,9186],[3155,9104],[3211,9063],[3222,9037],[3283,8980],[3326,8965],[3397,8915],[3436,8868],[3447,8816],[3502,8734],[3502,8640],[3538,8583],[3550,8538],[3609,8489],[3636,8485],[3705,8416],[3791,8393],[3830,8354],[3873,8346],[3929,8299],[3949,8300],[3737,7887],[3851,7412],[3745,7455],[3687,7460],[3648,7441],[3552,7310],[3526,7303],[3447,7353],[3395,7360],[3382,7344],[3352,7378],[3281,7344],[3205,7387],[3164,7435],[3121,7433],[3048,7488],[3026,7450],[3004,7453],[3000,7404],[2981,7385],[2979,7336],[2910,7312],[2929,7240],[2920,7203],[2877,7175],[2869,7096],[2808,7043],[2736,7047],[2673,7105],[2629,7134],[2602,7215],[2579,7233],[2463,7260],[2453,7279],[2442,7411],[2389,7493],[2383,7532],[2325,7553],[2306,7580],[2267,7595],[2235,7559],[2233,7563]]]}},{"type":"Feature","id":"MX.VE","properties":{"hc-group":"admin1","hc-middle-x":0.75,"hc-middle-y":0.88,"hc-key":"mx-ve","hc-a2":"VE","labelrank":"7","hasc":"MX.VE","alt-name":null,"woe-id":"2346293","subregion":null,"fips":"MX30","postal-code":"VE","name":"Veracruz","country":"Mexico","type-en":"State","region":null,"longitude":"-96.5953","woe-name":"Veracruz","latitude":"19.0926","woe-label":"Veracruz-Llave, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[7255,4374],[7291,4295],[7284,4252],[7323,4236],[7337,4209],[7412,4180],[7458,4135],[7450,4087],[7471,4071],[7455,4042],[7372,3980],[6986,3985],[6961,4039],[6933,4049],[6865,4118],[6879,4175],[6737,4086],[6670,4091],[6625,4182],[6670,4264],[6645,4310],[6602,4324],[6548,4314],[6504,4333],[6495,4364],[6447,4416],[6433,4457],[6365,4482],[6340,4502],[6353,4453],[6322,4404],[6294,4456],[6184,4432],[6172,4488],[6109,4498],[6100,4545],[6136,4585],[6119,4677],[6174,4686],[6217,4729],[6130,4744],[6064,4782],[6094,4796],[6067,4831],[6089,4876],[6091,4950],[6143,5023],[6143,5048],[6052,5086],[6029,5077],[6005,5038],[5952,5056],[5921,5086],[5920,5148],[5947,5159],[5967,5141],[5994,5176],[5982,5204],[5941,5210],[5925,5275],[5881,5291],[5858,5255],[5855,5187],[5839,5162],[5828,5228],[5797,5237],[5721,5139],[5706,5150],[5687,5114],[5664,5110],[5639,5150],[5658,5208],[5682,5228],[5695,5303],[5751,5288],[5750,5329],[5784,5380],[5754,5408],[5728,5404],[5732,5440],[5703,5408],[5654,5447],[5671,5481],[5645,5497],[5638,5544],[5597,5574],[5603,5602],[5657,5638],[5620,5685],[5658,5715],[5688,5780],[5682,5822],[5595,5876],[5656,5884],[5706,5876],[5708,5899],[5740,5905],[5778,5867],[5847,5845],[5860,5813],[5887,5834],[5898,5768],[5954,5673],[5992,5632],[6062,5575],[6053,5521],[6031,5466],[6009,5526],[6037,5541],[6040,5571],[6001,5600],[5948,5661],[5914,5715],[5941,5598],[5971,5548],[6003,5542],[6001,5512],[6063,5385],[6116,5296],[6135,5235],[6178,5188],[6311,5060],[6394,4955],[6434,4832],[6467,4750],[6512,4719],[6538,4679],[6579,4659],[6594,4615],[6630,4577],[6589,4584],[6645,4547],[6732,4526],[6673,4551],[6758,4536],[6860,4542],[6937,4488],[7007,4480],[7096,4358],[7138,4343],[7255,4374]]]}},{"type":"Feature","id":"MX.ZA","properties":{"hc-group":"admin1","hc-middle-x":0.37,"hc-middle-y":0.46,"hc-key":"mx-za","hc-a2":"ZA","labelrank":"6","hasc":"MX.ZA","alt-name":null,"woe-id":"2346295","subregion":null,"fips":"MX32","postal-code":"ZA","name":"Zacatecas","country":"Mexico","type-en":"State","region":null,"longitude":"-102.579","woe-name":"Zacatecas","latitude":"23.3785","woe-label":"Zacatecas, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[3616,5781],[3620,5791],[3622,5802],[3658,5922],[3664,6099],[3683,6125],[3692,6217],[3749,6266],[3757,6298],[3786,6290],[3795,6313],[3770,6343],[3780,6372],[3761,6400],[3783,6407],[3781,6454],[3841,6488],[3893,6555],[3923,6559],[3933,6587],[3985,6612],[4137,6583],[4243,6608],[4240,6738],[4179,6832],[4208,6850],[4347,6866],[4453,6835],[4486,6785],[4546,6765],[4538,6718],[4591,6717],[4630,6750],[4681,6736],[4716,6679],[4808,6653],[4795,6616],[4754,6579],[4671,6436],[4530,6327],[4512,6298],[4474,6279],[4437,6231],[4392,6193],[4351,6211],[4333,6159],[4314,6146],[4340,6098],[4332,6054],[4380,5970],[4437,5930],[4480,5870],[4504,5858],[4550,5877],[4565,5910],[4645,5913],[4664,5872],[4637,5827],[4658,5726],[4592,5633],[4556,5665],[4507,5677],[4478,5696],[4431,5735],[4423,5792],[4396,5797],[4365,5827],[4349,5820],[4321,5861],[4303,5835],[4246,5800],[4208,5800],[4199,5765],[4132,5660],[4128,5630],[4161,5592],[4156,5540],[4204,5525],[4189,5463],[4146,5422],[4064,5420],[4060,5329],[3999,5341],[3903,5384],[3873,5383],[3857,5406],[3823,5396],[3834,5454],[3823,5506],[3847,5493],[3898,5535],[3895,5616],[3938,5657],[3977,5679],[4023,5684],[4046,5712],[4032,5737],[4061,5778],[4057,5799],[4011,5804],[4012,5826],[3947,5876],[3928,5836],[3952,5814],[3921,5774],[3907,5734],[3842,5734],[3840,5803],[3865,5879],[3848,5903],[3812,5892],[3781,5750],[3768,5811],[3781,5895],[3801,5915],[3806,5957],[3735,5970],[3733,5897],[3755,5865],[3744,5819],[3684,5811],[3616,5781]]]}},{"type":"Feature","id":"MX.AG","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.6,"hc-key":"mx-ag","hc-a2":"AG","labelrank":"9","hasc":"MX.AG","alt-name":null,"woe-id":"2346264","subregion":null,"fips":"MX01","postal-code":"AG","name":"Aguascalientes","country":"Mexico","type-en":"State","region":null,"longitude":"-102.351","woe-name":"Aguascalientes","latitude":"22.0375","woe-label":"Aguascalientes, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[4478,5696],[4462,5673],[4408,5639],[4398,5602],[4346,5568],[4247,5577],[4207,5602],[4161,5592],[4128,5630],[4132,5660],[4199,5765],[4208,5800],[4246,5800],[4303,5835],[4321,5861],[4349,5820],[4365,5827],[4396,5797],[4423,5792],[4431,5735],[4478,5696]]]}},{"type":"Feature","id":"MX.JA","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.62,"hc-key":"mx-ja","hc-a2":"JA","labelrank":"4","hasc":"MX.JA","alt-name":null,"woe-id":"2346277","subregion":null,"fips":"MX14","postal-code":"JA","name":"Jalisco","country":"Mexico","type-en":"State","region":null,"longitude":"-103.602","woe-name":"Jalisco","latitude":"20.3026","woe-label":"Jalisco, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[4161,5592],[4207,5602],[4247,5577],[4346,5568],[4398,5602],[4408,5639],[4462,5673],[4478,5696],[4507,5677],[4556,5665],[4592,5633],[4572,5609],[4587,5556],[4554,5511],[4577,5449],[4538,5406],[4508,5404],[4480,5373],[4415,5269],[4402,5215],[4440,5179],[4439,5151],[4398,5088],[4348,5070],[4329,5078],[4259,5059],[4196,5023],[4056,4979],[4058,4939],[4164,4925],[4187,4890],[4151,4874],[4156,4825],[4177,4786],[4175,4746],[4221,4752],[4245,4714],[4207,4655],[4182,4665],[4127,4644],[4090,4590],[4027,4554],[3981,4585],[3963,4559],[3917,4555],[3900,4602],[3910,4685],[3873,4719],[3861,4748],[3791,4715],[3714,4754],[3689,4742],[3656,4686],[3564,4652],[3543,4659],[3523,4622],[3473,4652],[3447,4652],[3373,4704],[3348,4776],[3291,4815],[3195,4952],[3186,5015],[3135,5092],[3179,5122],[3266,5131],[3296,5157],[3279,5195],[3348,5281],[3408,5286],[3452,5318],[3477,5315],[3514,5282],[3548,5276],[3564,5253],[3631,5202],[3636,5259],[3657,5301],[3653,5374],[3702,5387],[3737,5412],[3750,5451],[3657,5504],[3675,5533],[3696,5603],[3592,5715],[3616,5781],[3684,5811],[3744,5819],[3755,5865],[3733,5897],[3735,5970],[3806,5957],[3801,5915],[3781,5895],[3768,5811],[3781,5750],[3812,5892],[3848,5903],[3865,5879],[3840,5803],[3842,5734],[3907,5734],[3921,5774],[3952,5814],[3928,5836],[3947,5876],[4012,5826],[4011,5804],[4057,5799],[4061,5778],[4032,5737],[4046,5712],[4023,5684],[3977,5679],[3938,5657],[3895,5616],[3898,5535],[3847,5493],[3823,5506],[3834,5454],[3823,5396],[3857,5406],[3873,5383],[3903,5384],[3999,5341],[4060,5329],[4064,5420],[4146,5422],[4189,5463],[4204,5525],[4156,5540],[4161,5592]]]}},{"type":"Feature","id":"MX.MI","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.49,"hc-key":"mx-mi","hc-a2":"MI","labelrank":"4","hasc":"MX.MC","alt-name":null,"woe-id":"2346279","subregion":null,"fips":"MX16","postal-code":"MI","name":"Michoacán","country":"Mexico","type-en":"State","region":null,"longitude":"-101.936","woe-name":"Michoacán","latitude":"19.2458","woe-label":"Michoacan de Ocampo, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5037,5035],[5077,4989],[5078,4949],[5097,4934],[5068,4794],[5089,4741],[5029,4703],[5041,4679],[4929,4532],[4908,4503],[4897,4526],[4871,4498],[4893,4396],[4937,4364],[4910,4329],[4908,4359],[4863,4392],[4811,4392],[4789,4406],[4707,4404],[4624,4380],[4568,4417],[4500,4415],[4481,4371],[4488,4310],[4469,4278],[4388,4260],[4385,4170],[4232,4216],[4181,4222],[4080,4265],[4048,4267],[3960,4295],[3911,4319],[3884,4378],[3836,4419],[3824,4452],[3865,4494],[3872,4527],[3917,4555],[3963,4559],[3981,4585],[4027,4554],[4090,4590],[4127,4644],[4182,4665],[4207,4655],[4245,4714],[4221,4752],[4175,4746],[4177,4786],[4156,4825],[4151,4874],[4187,4890],[4164,4925],[4058,4939],[4056,4979],[4196,5023],[4259,5059],[4329,5078],[4348,5070],[4398,5088],[4451,5081],[4468,5021],[4543,5021],[4568,5062],[4623,5072],[4653,5048],[4639,4968],[4719,4962],[4729,4987],[4787,4984],[4782,4932],[4818,4923],[4848,4942],[4867,4919],[4943,4934],[4949,4921],[5000,4942],[4999,4983],[5037,5035]]]}},{"type":"Feature","id":"MX.OA","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.52,"hc-key":"mx-oa","hc-a2":"OA","labelrank":"6","hasc":"MX.OA","alt-name":null,"woe-id":"2346283","subregion":null,"fips":"MX20","postal-code":"OA","name":"Oaxaca","country":"Mexico","type-en":"State","region":null,"longitude":"-96.20869999999999","woe-name":"Oaxaca","latitude":"16.94","woe-label":"Oaxaca, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[7316,3599],[7293,3627],[7264,3617],[7192,3647],[7186,3620],[7262,3602],[7313,3580],[7306,3564],[7185,3607],[7090,3605],[7130,3640],[7104,3669],[7066,3641],[7031,3691],[6957,3627],[7051,3619],[6897,3582],[6855,3551],[6827,3511],[6639,3447],[6540,3389],[6469,3391],[6424,3376],[6378,3393],[6318,3399],[6253,3425],[6202,3459],[6163,3470],[5979,3480],[5832,3562],[5693,3599],[5751,3620],[5776,3645],[5770,3693],[5805,3699],[5802,3745],[5831,3747],[5861,3776],[5884,3869],[5829,3938],[5801,3940],[5762,3982],[5762,4035],[5738,4094],[5757,4176],[5749,4189],[5787,4198],[5810,4238],[5899,4248],[5912,4211],[5942,4211],[5968,4238],[5936,4287],[5967,4350],[6009,4373],[5998,4313],[6034,4278],[6054,4237],[6078,4237],[6116,4296],[6161,4310],[6220,4292],[6269,4340],[6302,4356],[6322,4404],[6353,4453],[6340,4502],[6365,4482],[6433,4457],[6447,4416],[6495,4364],[6504,4333],[6548,4314],[6602,4324],[6645,4310],[6670,4264],[6625,4182],[6670,4091],[6737,4086],[6879,4175],[6865,4118],[6933,4049],[6961,4039],[6986,3985],[7372,3980],[7377,3928],[7364,3878],[7323,3850],[7323,3793],[7294,3734],[7330,3647],[7316,3599]]]}},{"type":"Feature","id":"MX.PU","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.73,"hc-key":"mx-pu","hc-a2":"PU","labelrank":"7","hasc":"MX.PU","alt-name":null,"woe-id":"2346284","subregion":null,"fips":"MX21","postal-code":"PU","name":"Puebla","country":"Mexico","type-en":"State","region":null,"longitude":"-97.88890000000001","woe-name":"Puebla","latitude":"18.549","woe-label":"Puebla, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5629,4608],[5632,4670],[5616,4745],[5626,4772],[5688,4765],[5731,4693],[5789,4644],[5839,4685],[5882,4667],[5911,4688],[5916,4726],[5973,4718],[5989,4748],[5939,4778],[5909,4772],[5908,4812],[5838,4844],[5840,4865],[5799,4857],[5761,4930],[5809,5012],[5795,5058],[5756,5053],[5758,5095],[5785,5102],[5839,5162],[5855,5187],[5858,5255],[5881,5291],[5925,5275],[5941,5210],[5982,5204],[5994,5176],[5967,5141],[5947,5159],[5920,5148],[5921,5086],[5952,5056],[6005,5038],[6029,5077],[6052,5086],[6143,5048],[6143,5023],[6091,4950],[6089,4876],[6067,4831],[6094,4796],[6064,4782],[6130,4744],[6217,4729],[6174,4686],[6119,4677],[6136,4585],[6100,4545],[6109,4498],[6172,4488],[6184,4432],[6294,4456],[6322,4404],[6302,4356],[6269,4340],[6220,4292],[6161,4310],[6116,4296],[6078,4237],[6054,4237],[6034,4278],[5998,4313],[6009,4373],[5967,4350],[5936,4287],[5968,4238],[5942,4211],[5912,4211],[5899,4248],[5810,4238],[5787,4198],[5749,4189],[5724,4213],[5675,4209],[5590,4237],[5575,4267],[5542,4275],[5501,4310],[5494,4352],[5578,4409],[5626,4385],[5596,4483],[5624,4481],[5601,4528],[5627,4558],[5629,4608]]]}},{"type":"Feature","id":"MX.GR","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.44,"hc-key":"mx-gr","hc-a2":"GR","labelrank":"4","hasc":"MX.GR","alt-name":null,"woe-id":"2346275","subregion":null,"fips":"MX12","postal-code":"GR","name":"Guerrero","country":"Mexico","type-en":"State","region":null,"longitude":"-100.091","woe-name":"Guerrero","latitude":"17.7608","woe-label":"Guerrero, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5494,4352],[5501,4310],[5542,4275],[5575,4267],[5590,4237],[5675,4209],[5724,4213],[5749,4189],[5757,4176],[5738,4094],[5762,4035],[5762,3982],[5801,3940],[5829,3938],[5884,3869],[5861,3776],[5831,3747],[5802,3745],[5805,3699],[5770,3693],[5776,3645],[5751,3620],[5693,3599],[5610,3685],[5582,3674],[5394,3721],[5311,3725],[5262,3741],[5170,3806],[4785,3931],[4786,3945],[4740,3985],[4642,4026],[4627,4059],[4574,4078],[4563,4105],[4513,4160],[4432,4196],[4385,4170],[4388,4260],[4469,4278],[4488,4310],[4481,4371],[4500,4415],[4568,4417],[4624,4380],[4707,4404],[4789,4406],[4811,4392],[4863,4392],[4908,4359],[4910,4329],[4937,4364],[4893,4396],[4871,4498],[4897,4526],[4908,4503],[4929,4532],[4989,4523],[4999,4450],[5029,4408],[5024,4379],[5057,4357],[5101,4395],[5127,4439],[5206,4461],[5229,4446],[5272,4500],[5303,4472],[5331,4469],[5363,4415],[5392,4388],[5423,4389],[5439,4428],[5494,4352]]]}},{"type":"Feature","id":"MX.TL","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.43,"hc-key":"mx-tl","hc-a2":"TL","labelrank":"7","hasc":"MX.TL","alt-name":null,"woe-id":"2346292","subregion":null,"fips":"MX29","postal-code":"TL","name":"Tlaxcala","country":"Mexico","type-en":"State","region":null,"longitude":"-98.161","woe-name":"Tlaxcala","latitude":"19.3956","woe-label":"Tlaxcala, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5626,4772],[5600,4816],[5618,4818],[5648,4837],[5729,4825],[5755,4871],[5799,4857],[5840,4865],[5838,4844],[5908,4812],[5909,4772],[5939,4778],[5989,4748],[5973,4718],[5916,4726],[5911,4688],[5882,4667],[5839,4685],[5789,4644],[5731,4693],[5688,4765],[5626,4772]]]}},{"type":"Feature","id":"MX.TM","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.73,"hc-key":"mx-tm","hc-a2":"TM","labelrank":"4","hasc":"MX.TM","alt-name":null,"woe-id":"2346291","subregion":null,"fips":"MX28","postal-code":"TM","name":"Tamaulipas","country":"Mexico","type-en":"State","region":null,"longitude":"-98.5197","woe-name":"Tamaulipas","latitude":"24.0808","woe-label":"Tamaulipas, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5086,6166],[5086,6194],[5061,6209],[5089,6232],[5137,6218],[5119,6274],[5155,6355],[5237,6368],[5282,6440],[5236,6479],[5227,6506],[5239,6583],[5226,6646],[5191,6630],[5181,6666],[5209,6692],[5244,6696],[5266,6732],[5328,6767],[5373,6749],[5363,6831],[5412,6879],[5463,6869],[5607,7002],[5570,7020],[5561,7204],[5556,7214],[5474,7234],[5449,7199],[5403,7243],[5365,7228],[5348,7311],[5321,7315],[5293,7352],[5273,7340],[5262,7376],[5273,7416],[5262,7436],[5209,7457],[5181,7455],[5209,7513],[5162,7534],[5152,7570],[5166,7623],[5129,7752],[5086,7757],[5083,7784],[5148,7823],[5185,7815],[5217,7789],[5231,7735],[5216,7691],[5248,7654],[5238,7593],[5261,7576],[5282,7518],[5313,7508],[5320,7422],[5364,7403],[5376,7360],[5474,7349],[5528,7304],[5548,7313],[5620,7290],[5672,7248],[5814,7251],[5876,7234],[5945,7179],[5997,7222],[6040,7226],[6036,7135],[5990,7007],[5947,6926],[5894,6675],[5881,6484],[5883,6383],[5876,6203],[5890,6096],[5856,6005],[5860,5931],[5887,5834],[5860,5813],[5847,5845],[5778,5867],[5740,5905],[5708,5899],[5706,5876],[5656,5884],[5595,5876],[5544,5870],[5528,5853],[5484,5855],[5375,5884],[5327,5966],[5314,5949],[5268,5979],[5276,5943],[5232,5952],[5115,5994],[5096,6028],[5138,6062],[5138,6085],[5099,6141],[5077,6121],[5086,6166]],[[5849,6690],[5834,6641],[5867,6651],[5871,6555],[5862,6465],[5875,6413],[5879,6574],[5888,6690],[5921,6879],[5958,6968],[5958,7018],[5923,7033],[5926,7006],[5907,6976],[5865,6993],[5857,6952],[5871,6915],[5852,6845],[5894,6831],[5862,6804],[5883,6715],[5870,6660],[5849,6690]]]}},{"type":"Feature","id":"MX.CO","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.42,"hc-key":"mx-co","hc-a2":"CO","labelrank":"4","hasc":"MX.CA","alt-name":null,"woe-id":"2346270","subregion":null,"fips":"MX07","postal-code":"CO","name":"Coahuila","country":"Mexico","type-en":"State","region":null,"longitude":"-101.885","woe-name":"Coahuila","latitude":"27.4473","woe-label":"Coahuila de Zaragoza, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[3949,8300],[4003,8286],[4017,8313],[4096,8378],[4083,8395],[4120,8513],[4151,8570],[4205,8586],[4241,8584],[4268,8628],[4337,8595],[4493,8588],[4520,8606],[4529,8586],[4566,8591],[4581,8554],[4622,8532],[4615,8484],[4689,8476],[4697,8450],[4764,8407],[4782,8372],[4814,8351],[4831,8280],[4866,8237],[4876,8201],[4909,8159],[4950,8050],[4980,8017],[5021,7999],[5056,7940],[5089,7907],[5115,7859],[5063,7808],[4990,7863],[4942,7827],[4925,7790],[4911,7706],[4848,7685],[4791,7640],[4793,7583],[4822,7569],[4835,7599],[4876,7575],[4867,7475],[4827,7419],[4812,7461],[4661,7323],[4697,7291],[4722,7244],[4758,7217],[4762,7187],[4788,7171],[4790,7108],[4834,7046],[4856,7044],[4886,7003],[4854,7014],[4887,6972],[4928,6946],[4979,6949],[5015,6924],[4995,6898],[4954,6891],[4904,6903],[4860,6895],[4822,6870],[4801,6830],[4837,6802],[4816,6776],[4826,6722],[4808,6653],[4716,6679],[4681,6736],[4630,6750],[4591,6717],[4538,6718],[4546,6765],[4486,6785],[4453,6835],[4347,6866],[4208,6850],[4179,6832],[4122,6765],[4121,6701],[4077,6730],[4020,6745],[3982,6772],[3973,6828],[3935,6853],[3893,6911],[3922,6956],[3900,7002],[3956,7061],[3947,7219],[3968,7271],[3966,7309],[3851,7412],[3737,7887],[3949,8300]]]}},{"type":"Feature","id":"MX.YU","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.43,"hc-key":"mx-yu","hc-a2":"YU","labelrank":"4","hasc":"MX.YU","alt-name":null,"woe-id":"2346294","subregion":null,"fips":"MX31","postal-code":"YU","name":"Yucatán","country":"Mexico","type-en":"State","region":null,"longitude":"-88.9836","woe-name":"Yucatán","latitude":"20.663","woe-label":"Yucatan, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[8532,5461],[8518,5458],[8543,5542],[8621,5600],[8729,5656],[8963,5709],[9110,5760],[9142,5793],[9197,5814],[9256,5814],[9309,5842],[9370,5843],[9463,5828],[9427,5818],[9526,5821],[9539,5744],[9525,5670],[9550,5612],[9512,5488],[9436,5417],[9398,5394],[9344,5398],[9308,5349],[9273,5329],[9252,5282],[9161,5233],[9092,5175],[9040,5164],[8990,5125],[8931,5111],[8920,5045],[8901,5092],[8860,5131],[8829,5178],[8760,5218],[8735,5266],[8706,5284],[8674,5337],[8660,5314],[8622,5316],[8595,5346],[8538,5355],[8532,5461]]]}},{"type":"Feature","id":"MX.DG","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.48,"hc-key":"mx-dg","hc-a2":"DG","labelrank":"6","hasc":"MX.DU","alt-name":null,"woe-id":"2346273","subregion":null,"fips":"MX10","postal-code":"DG","name":"Durango","country":"Mexico","type-en":"State","region":null,"longitude":"-104.808","woe-name":"Durango","latitude":"24.566","woe-label":"Durango, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[2736,7047],[2808,7043],[2869,7096],[2877,7175],[2920,7203],[2929,7240],[2910,7312],[2979,7336],[2981,7385],[3000,7404],[3004,7453],[3026,7450],[3048,7488],[3121,7433],[3164,7435],[3205,7387],[3281,7344],[3352,7378],[3382,7344],[3395,7360],[3447,7353],[3526,7303],[3552,7310],[3648,7441],[3687,7460],[3745,7455],[3851,7412],[3966,7309],[3968,7271],[3947,7219],[3956,7061],[3900,7002],[3922,6956],[3893,6911],[3935,6853],[3973,6828],[3982,6772],[4020,6745],[4077,6730],[4121,6701],[4122,6765],[4179,6832],[4240,6738],[4243,6608],[4137,6583],[3985,6612],[3933,6587],[3923,6559],[3893,6555],[3841,6488],[3781,6454],[3783,6407],[3761,6400],[3780,6372],[3770,6343],[3795,6313],[3786,6290],[3757,6298],[3749,6266],[3692,6217],[3683,6125],[3664,6099],[3658,5922],[3622,5802],[3614,5860],[3565,5838],[3527,5854],[3499,5916],[3462,5935],[3394,5885],[3386,5935],[3423,5977],[3403,6024],[3340,6062],[3251,6069],[3250,6112],[3196,6117],[3149,6168],[3140,6230],[3102,6269],[3078,6324],[3073,6408],[3092,6454],[3062,6458],[3028,6536],[2979,6577],[2953,6577],[2908,6540],[2873,6542],[2843,6571],[2835,6613],[2790,6696],[2757,6729],[2731,6733],[2697,6779],[2668,6880],[2680,6966],[2692,6996],[2736,7047]]]}},{"type":"Feature","id":"MX.GJ","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.43,"hc-key":"mx-gj","hc-a2":"GJ","labelrank":"7","hasc":"MX.GJ","alt-name":null,"woe-id":"2346274","subregion":null,"fips":"MX11","postal-code":"GJ","name":"Guanajuato","country":"Mexico","type-en":"State","region":null,"longitude":"-100.904","woe-name":"Guanajuato","latitude":"20.8141","woe-label":"Guanajuato, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5199,5490],[5199,5442],[5230,5426],[5189,5392],[5142,5407],[5110,5390],[5094,5299],[5067,5284],[5042,5304],[5018,5290],[4969,5315],[4934,5229],[4962,5157],[4965,5117],[5006,5057],[5037,5035],[4999,4983],[5000,4942],[4949,4921],[4943,4934],[4867,4919],[4848,4942],[4818,4923],[4782,4932],[4787,4984],[4729,4987],[4719,4962],[4639,4968],[4653,5048],[4623,5072],[4568,5062],[4543,5021],[4468,5021],[4451,5081],[4398,5088],[4439,5151],[4440,5179],[4402,5215],[4415,5269],[4480,5373],[4508,5404],[4538,5406],[4577,5449],[4554,5511],[4587,5556],[4572,5609],[4592,5633],[4617,5626],[4660,5646],[4683,5609],[4787,5603],[4906,5509],[4950,5518],[4964,5569],[4982,5580],[5098,5537],[5140,5503],[5199,5490]]]}},{"type":"Feature","id":"MX.SL","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.59,"hc-key":"mx-sl","hc-a2":"SL","labelrank":"7","hasc":"MX.SL","alt-name":null,"woe-id":"2346287","subregion":null,"fips":"MX24","postal-code":"SL","name":"San Luis Potosí","country":"Mexico","type-en":"State","region":null,"longitude":"-100.324","woe-name":"San Luis Potosí","latitude":"22.4465","woe-label":"San Luis Potosi, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5086,6166],[5077,6121],[5099,6141],[5138,6085],[5138,6062],[5096,6028],[5115,5994],[5232,5952],[5276,5943],[5268,5979],[5314,5949],[5327,5966],[5375,5884],[5484,5855],[5528,5853],[5544,5870],[5595,5876],[5682,5822],[5688,5780],[5658,5715],[5620,5685],[5657,5638],[5603,5602],[5597,5574],[5638,5544],[5645,5497],[5621,5488],[5620,5426],[5540,5410],[5498,5451],[5462,5442],[5437,5449],[5441,5483],[5403,5581],[5342,5499],[5276,5482],[5222,5526],[5199,5490],[5140,5503],[5098,5537],[4982,5580],[4964,5569],[4950,5518],[4906,5509],[4787,5603],[4683,5609],[4660,5646],[4617,5626],[4592,5633],[4658,5726],[4637,5827],[4664,5872],[4645,5913],[4565,5910],[4550,5877],[4504,5858],[4480,5870],[4437,5930],[4380,5970],[4332,6054],[4340,6098],[4314,6146],[4333,6159],[4351,6211],[4392,6193],[4437,6231],[4474,6279],[4512,6298],[4530,6327],[4671,6436],[4754,6579],[4795,6616],[4808,6653],[4886,6550],[4890,6454],[4899,6419],[4932,6379],[4931,6319],[4947,6264],[4942,6228],[4955,6158],[4989,6145],[4993,6169],[5086,6166]]]}},{"type":"Feature","id":"MX.HG","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.57,"hc-key":"mx-hg","hc-a2":"HG","labelrank":"4","hasc":"MX.HI","alt-name":null,"woe-id":"2346276","subregion":null,"fips":"MX13","postal-code":"HG","name":"Hidalgo","country":"Mexico","type-en":"State","region":null,"longitude":"-98.9221","woe-name":"Hidalgo","latitude":"20.5354","woe-label":"Hidalgo, MX, Mexico","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5645,5497],[5671,5481],[5654,5447],[5703,5408],[5732,5440],[5728,5404],[5754,5408],[5784,5380],[5750,5329],[5751,5288],[5695,5303],[5682,5228],[5658,5208],[5639,5150],[5664,5110],[5687,5114],[5706,5150],[5721,5139],[5797,5237],[5828,5228],[5839,5162],[5785,5102],[5758,5095],[5756,5053],[5795,5058],[5809,5012],[5761,4930],[5799,4857],[5755,4871],[5729,4825],[5648,4837],[5618,4818],[5635,4876],[5601,4916],[5552,4928],[5525,4896],[5506,4902],[5518,4944],[5486,4984],[5421,4959],[5359,4873],[5336,4930],[5310,4946],[5320,4986],[5297,5022],[5265,5010],[5192,5075],[5198,5151],[5264,5174],[5312,5210],[5300,5237],[5310,5275],[5336,5298],[5356,5348],[5351,5379],[5399,5384],[5463,5407],[5462,5442],[5498,5451],[5540,5410],[5620,5426],[5621,5488],[5645,5497]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/north_america/gt-all.geo.json
const gt_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Guatemala","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32061"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=16.81666666666667 +lat_0=16.81666666666667 +lon_0=-90.33333333333333 +k_0=0.99992226 +x_0=500000 +y_0=292209.579 +datum=NAD27 +units=m +no_defs","scale":0.00154682528648,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":293695.446797,"yoffset":402981.175857}},"features":[{"type":"Feature","id":"GT.QC","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.48,"hc-key":"gt-qc","hc-a2":"QC","labelrank":"9","hasc":"GT.QC","alt-name":null,"woe-id":"2345565","subregion":null,"fips":"GT14","postal-code":"QC","name":"Quiché","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.8819","woe-name":"Quiché","latitude":"15.5049","woe-label":"Quiche, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2250,5217],[3556,5216],[3653,5239],[3695,5202],[3684,5119],[3598,5057],[3552,5076],[3502,5045],[3406,5057],[3371,5023],[3288,5078],[3249,5143],[3211,5112],[3175,5149],[3109,5135],[2999,5076],[3019,5040],[2973,4967],[2947,5004],[2843,4949],[2913,4877],[2868,4820],[2843,4732],[2907,4725],[2922,4680],[2895,4628],[2833,4604],[2788,4495],[2702,4369],[2765,4369],[2807,4332],[2770,4296],[2823,4258],[2778,4203],[2797,4178],[2893,4161],[3033,4113],[3101,4125],[3103,4094],[3178,4029],[3157,3948],[3196,3920],[3269,3771],[3252,3740],[3137,3640],[3158,3593],[3024,3567],[2978,3508],[2996,3423],[3050,3371],[3130,3339],[3535,3277],[3576,3254],[3573,3200],[3508,3071],[3411,2939],[3326,2933],[3024,2946],[2597,3048],[2576,3059],[2559,2771],[2751,2522],[2983,2377],[2970,2306],[3070,2214],[3110,2121],[2863,2186],[2730,2186],[2607,2223],[2501,2210],[2286,2215],[2163,2157],[2088,1967],[2000,1918],[1958,1933],[1925,1874],[1885,1888],[1920,2009],[1823,2049],[1786,2128],[1754,2143],[1673,2207],[1693,2268],[1643,2329],[1601,2427],[1528,2479],[1521,2527],[1556,2573],[1608,2582],[1624,2638],[1590,2674],[1549,2799],[1417,2917],[1404,2958],[1417,3080],[1450,3116],[1620,3155],[1769,3155],[1739,3263],[1756,3406],[1653,3447],[1553,3440],[1474,3527],[1454,3617],[1403,3680],[1377,3754],[1404,3868],[1453,4003],[1566,4046],[1739,4205],[1908,4544],[2250,5217]]]}},{"type":"Feature","id":"GT.PE","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.42,"hc-key":"gt-pe","hc-a2":"PE","labelrank":"7","hasc":"GT.PE","alt-name":null,"woe-id":"2345563","subregion":null,"fips":"GT12","postal-code":"PE","name":"Petén","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.0321","woe-name":"Petén","latitude":"16.888","woe-label":"Peten, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3654,5240],[3688,5313],[3634,5293],[3624,5339],[3686,5390],[3653,5438],[3709,5461],[3618,5530],[3626,5617],[3688,5656],[3628,5690],[3653,5748],[3706,5728],[3671,5786],[3725,5814],[3661,5847],[3727,5872],[3780,5951],[3754,6016],[3828,6003],[3790,6141],[3723,6130],[3582,6171],[3566,6239],[3498,6279],[3436,6249],[3409,6329],[3304,6303],[3180,6311],[3232,6404],[3142,6434],[3179,6600],[3144,6621],[3093,6587],[3127,6665],[3092,6761],[2920,7010],[2754,7117],[2763,7167],[2674,7167],[2498,7222],[2377,7325],[2324,7351],[2359,7415],[2280,7422],[2262,7351],[2202,7406],[2074,7468],[2048,7551],[1959,7660],[1936,7734],[1809,7760],[1718,7860],[1671,7971],[1585,8017],[1556,8123],[1506,8189],[1316,8192],[1296,8255],[1119,8321],[1149,8366],[2268,8353],[2276,9812],[2349,9849],[6929,9851],[6961,8542],[6970,7787],[6888,6353],[6831,5531],[6769,4917],[6765,4788],[6688,4810],[6451,4804],[6394,4694],[6354,4666],[6225,4634],[6182,4657],[6054,4617],[6047,4755],[5920,4746],[5743,4766],[5687,4732],[5626,4745],[5464,4847],[5381,4833],[5337,4797],[5165,4807],[5092,4931],[4912,4990],[4906,5050],[4832,5016],[4765,5053],[4683,5028],[4246,5167],[3723,5247],[3654,5240]]]}},{"type":"Feature","id":"GT.HU","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.42,"hc-key":"gt-hu","hc-a2":"HU","labelrank":"9","hasc":"GT.HU","alt-name":null,"woe-id":"2345559","subregion":null,"fips":"GT08","postal-code":"HU","name":"Huehuetenango","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.5504","woe-name":"Huehuetenango","latitude":"15.6369","woe-label":"Huehuetenango, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-615,3602],[308,5164],[380,5224],[2250,5217],[1908,4544],[1739,4205],[1566,4046],[1453,4003],[1404,3868],[1377,3754],[1403,3680],[1454,3617],[1474,3527],[1553,3440],[1653,3447],[1756,3406],[1739,3263],[1769,3155],[1620,3155],[1450,3116],[1417,3080],[1351,3085],[1218,3023],[1081,2990],[1007,2888],[999,2813],[892,2798],[815,2926],[642,2972],[629,3008],[527,3094],[438,3205],[388,3317],[207,3278],[153,3282],[43,3349],[-114,3267],[-233,3239],[-328,3131],[-459,3138],[-488,3160],[-517,3475],[-599,3546],[-615,3602]]]}},{"type":"Feature","id":"GT.QZ","properties":{"hc-group":"admin1","hc-middle-x":0.72,"hc-middle-y":0.5,"hc-key":"gt-qz","hc-a2":"QZ","labelrank":"9","hasc":"GT.QZ","alt-name":null,"woe-id":"2345564","subregion":null,"fips":"GT13","postal-code":"QZ","name":"Quezaltenango","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.78310000000001","woe-name":"Quezaltenango","latitude":"14.7269","woe-label":"Quetzaltenango, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[642,2972],[815,2926],[892,2798],[714,2733],[710,2628],[782,2348],[844,2283],[842,2203],[890,2144],[1012,2145],[1042,2014],[1120,1899],[1088,1795],[1012,1692],[906,1622],[818,1638],[737,1591],[672,1608],[597,1527],[550,1538],[503,1490],[416,1516],[462,1650],[432,1696],[351,1627],[258,1583],[206,1458],[159,1389],[117,1275],[10,1125],[-98,1102],[-203,1101],[-365,1170],[-406,1149],[-489,1376],[-670,1402],[-707,1446],[-617,1547],[-546,1603],[-233,1692],[28,1671],[76,1696],[109,1757],[172,1813],[275,2019],[326,2212],[443,2306],[474,2362],[491,2475],[432,2559],[402,2633],[426,2712],[524,2834],[630,2922],[642,2972]]]}},{"type":"Feature","id":"GT.RE","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.51,"hc-key":"gt-re","hc-a2":"RE","labelrank":"9","hasc":"GT.RE","alt-name":null,"woe-id":"2345566","subregion":null,"fips":"GT15","postal-code":"RE","name":"Retalhuleu","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.8364","woe-name":"Retalhuleu","latitude":"14.3957","woe-label":"Retalhuleu, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[513,44],[245,212],[-130,490],[-494,823],[-784,1036],[-709,1048],[-663,1085],[-562,1076],[-506,1120],[-406,1149],[-365,1170],[-203,1101],[-98,1102],[10,1125],[117,1275],[159,1389],[206,1458],[258,1583],[351,1627],[432,1696],[462,1650],[416,1516],[503,1490],[550,1538],[597,1527],[672,1608],[737,1591],[818,1638],[906,1622],[828,1554],[754,1462],[754,1365],[650,1157],[629,969],[673,848],[658,610],[596,469],[571,280],[497,171],[513,44]]]}},{"type":"Feature","id":"GT.SM","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.48,"hc-key":"gt-sm","hc-a2":"SM","labelrank":"9","hasc":"GT.SM","alt-name":null,"woe-id":"2345568","subregion":null,"fips":"GT17","postal-code":"SM","name":"San Marcos","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.9311","woe-name":"San Marcos","latitude":"15.0311","woe-label":"San Marcos, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[642,2972],[630,2922],[524,2834],[426,2712],[402,2633],[432,2559],[491,2475],[474,2362],[443,2306],[326,2212],[275,2019],[172,1813],[109,1757],[76,1696],[28,1671],[-233,1692],[-546,1603],[-617,1547],[-707,1446],[-670,1402],[-489,1376],[-406,1149],[-506,1120],[-562,1076],[-663,1085],[-709,1048],[-784,1036],[-999,1195],[-947,1202],[-900,1258],[-841,1414],[-785,1516],[-777,1607],[-821,1738],[-820,1817],[-849,1905],[-838,1992],[-784,2054],[-754,2134],[-760,2299],[-750,2386],[-719,2416],[-620,2443],[-541,2591],[-871,3027],[-890,3070],[-873,3166],[-615,3602],[-599,3546],[-517,3475],[-488,3160],[-459,3138],[-328,3131],[-233,3239],[-114,3267],[43,3349],[153,3282],[207,3278],[388,3317],[438,3205],[527,3094],[629,3008],[642,2972]]]}},{"type":"Feature","id":"GT.BV","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.5,"hc-key":"gt-bv","hc-a2":"BV","labelrank":"7","hasc":"GT.BV","alt-name":null,"woe-id":"2345553","subregion":null,"fips":"GT02","postal-code":"BV","name":"Baja Verapaz","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.3946","woe-name":"Baja Verapaz","latitude":"15.0766","woe-label":"Baja Verapaz, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3110,2121],[3070,2214],[2970,2306],[2983,2377],[2751,2522],[2559,2771],[2576,3059],[2597,3048],[3024,2946],[3326,2933],[3411,2939],[3508,3071],[3774,3068],[3830,3050],[3999,2927],[4043,2940],[4114,3026],[4146,3142],[4200,3158],[4324,3128],[4605,3089],[4706,3093],[4814,3132],[4929,3142],[5008,3084],[5017,3032],[4990,2955],[4876,2791],[4807,2753],[4487,2538],[4078,2254],[4025,2082],[3893,2061],[3808,2076],[3775,2107],[3744,2155],[3664,2103],[3575,2095],[3543,2131],[3417,2084],[3274,2067],[3110,2121]]]}},{"type":"Feature","id":"GT.AV","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.44,"hc-key":"gt-av","hc-a2":"AV","labelrank":"7","hasc":"GT.AV","alt-name":null,"woe-id":"2345552","subregion":null,"fips":"GT01","postal-code":"AV","name":"Alta Verapaz","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.10720000000001","woe-name":"Alta Verapaz","latitude":"15.6455","woe-label":"Alta Verapaz, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4876,2791],[4990,2955],[5017,3032],[5008,3084],[4929,3142],[4814,3132],[4706,3093],[4605,3089],[4324,3128],[4200,3158],[4146,3142],[4114,3026],[4043,2940],[3999,2927],[3830,3050],[3774,3068],[3508,3071],[3573,3200],[3576,3254],[3535,3277],[3130,3339],[3050,3371],[2996,3423],[2978,3508],[3024,3567],[3158,3593],[3137,3640],[3252,3740],[3269,3771],[3196,3920],[3157,3948],[3178,4029],[3103,4094],[3101,4125],[3033,4113],[2893,4161],[2797,4178],[2778,4203],[2823,4258],[2770,4296],[2807,4332],[2765,4369],[2702,4369],[2788,4495],[2833,4604],[2895,4628],[2922,4680],[2907,4725],[2843,4732],[2868,4820],[2913,4877],[2843,4949],[2947,5004],[2973,4967],[3019,5040],[2999,5076],[3109,5135],[3175,5149],[3211,5112],[3249,5143],[3288,5078],[3371,5023],[3406,5057],[3502,5045],[3552,5076],[3598,5057],[3684,5119],[3695,5202],[3653,5239],[3654,5240],[3723,5247],[4246,5167],[4683,5028],[4765,5053],[4832,5016],[4906,5050],[4912,4990],[5092,4931],[5165,4807],[5337,4797],[5381,4833],[5464,4847],[5626,4745],[5687,4732],[5743,4766],[5920,4746],[6047,4755],[6054,4617],[6182,4657],[6225,4634],[6354,4666],[6284,4572],[6193,4536],[6146,4447],[6018,4370],[5694,3911],[5694,3858],[5865,3656],[5805,3541],[5736,3501],[5715,3150],[5766,3055],[5760,2960],[5823,2856],[5645,2814],[5563,2819],[5399,2794],[5278,2834],[5192,2832],[5121,2801],[5003,2777],[4876,2791]]]}},{"type":"Feature","id":"GT.ES","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.52,"hc-key":"gt-es","hc-a2":"ES","labelrank":"9","hasc":"GT.ES","alt-name":null,"woe-id":"2345557","subregion":null,"fips":"GT06","postal-code":"ES","name":"Escuintla","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.0243","woe-name":"Escuintla","latitude":"14.1674","woe-label":"Escuintla, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3185,-490],[2977,-467],[2746,-495],[2450,-513],[2104,-506],[1788,-470],[1397,-391],[849,-145],[846,-52],[1037,233],[1025,446],[1035,526],[1061,543],[1108,487],[1151,516],[1126,622],[1150,672],[1224,726],[1278,726],[1300,676],[1276,628],[1292,543],[1376,502],[1445,567],[1473,539],[1460,475],[1778,448],[1835,545],[1843,673],[1934,867],[1989,829],[2101,861],[2181,809],[2246,843],[2267,754],[2296,749],[2365,894],[2506,1022],[2603,933],[2687,797],[2836,941],[2932,962],[2961,900],[3127,966],[3160,867],[3198,833],[3267,823],[3294,651],[3292,563],[3348,401],[3309,365],[3290,285],[3382,273],[3423,288],[3475,259],[3377,165],[3312,149],[3312,112],[3370,35],[3302,-23],[3274,-86],[3186,-130],[3185,-490]]]}},{"type":"Feature","id":"GT.CM","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.37,"hc-key":"gt-cm","hc-a2":"CM","labelrank":"9","hasc":"GT.CM","alt-name":null,"woe-id":"2345554","subregion":null,"fips":"GT03","postal-code":"CM","name":"Chimaltenango","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.88590000000001","woe-name":"Chimaltenango","latitude":"14.7313","woe-label":"Chimaltenango, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2506,1022],[2365,894],[2296,749],[2267,754],[2246,843],[2181,809],[2101,861],[1989,829],[1934,867],[1971,966],[1972,1086],[1928,1133],[1951,1404],[2033,1584],[2047,1702],[2000,1918],[2088,1967],[2163,2157],[2286,2215],[2501,2210],[2607,2223],[2730,2186],[2863,2186],[3110,2121],[3091,2052],[2990,1988],[2946,1984],[2903,1939],[2879,1859],[2832,1787],[2784,1680],[2814,1503],[2756,1396],[2691,1349],[2574,1220],[2518,1113],[2506,1022]]]}},{"type":"Feature","id":"GT.GU","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.36,"hc-key":"gt-gu","hc-a2":"GU","labelrank":"9","hasc":"GT.GU","alt-name":null,"woe-id":"2345558","subregion":null,"fips":"GT07","postal-code":"GU","name":"Guatemala","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.4872","woe-name":"Guatemala","latitude":"14.6006","woe-label":"Guatemala, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3348,401],[3292,563],[3294,651],[3267,823],[3198,833],[3160,867],[3127,966],[3149,1065],[3168,1278],[3204,1335],[3208,1440],[3148,1509],[3126,1585],[3022,1709],[2926,1712],[2832,1787],[2879,1859],[2903,1939],[2946,1984],[2990,1988],[3091,2052],[3110,2121],[3274,2067],[3417,2084],[3543,2131],[3575,2095],[3664,2103],[3744,2155],[3775,2107],[3730,2033],[3758,1983],[3904,1990],[3953,1829],[3921,1766],[3933,1714],[4012,1638],[4197,1566],[4268,1511],[4233,1433],[4122,1344],[4106,1239],[4076,1168],[4072,1086],[3997,1064],[3905,990],[3879,1055],[3805,1039],[3699,872],[3651,751],[3661,593],[3588,527],[3491,487],[3422,428],[3348,401]]]}},{"type":"Feature","id":"GT.SU","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.44,"hc-key":"gt-su","hc-a2":"SU","labelrank":"7","hasc":"GT.SU","alt-name":null,"woe-id":"2345571","subregion":null,"fips":"GT20","postal-code":"SU","name":"Suchitepéquez","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.38030000000001","woe-name":"Suchitepéquez","latitude":"14.5182","woe-label":"Suchitepequez, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1928,1133],[1972,1086],[1971,966],[1934,867],[1843,673],[1835,545],[1778,448],[1460,475],[1473,539],[1445,567],[1376,502],[1292,543],[1276,628],[1300,676],[1278,726],[1224,726],[1150,672],[1126,622],[1151,516],[1108,487],[1061,543],[1035,526],[1025,446],[1037,233],[846,-52],[849,-145],[788,-118],[513,44],[497,171],[571,280],[596,469],[658,610],[673,848],[629,969],[650,1157],[754,1365],[754,1462],[828,1554],[906,1622],[1012,1692],[1063,1579],[1054,1518],[992,1401],[1030,1365],[1182,1338],[1197,1436],[1232,1472],[1306,1456],[1338,1420],[1442,1427],[1555,1317],[1559,1206],[1632,1205],[1704,1242],[1768,1241],[1928,1133]]]}},{"type":"Feature","id":"GT.SA","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.57,"hc-key":"gt-sa","hc-a2":"SA","labelrank":"7","hasc":"GT.SA","alt-name":null,"woe-id":"2345567","subregion":null,"fips":"GT16","postal-code":"SA","name":"Sacatepéquez","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.75449999999999","woe-name":"Sacatepéquez","latitude":"14.6139","woe-label":"Sacatepequez, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3127,966],[2961,900],[2932,962],[2836,941],[2687,797],[2603,933],[2506,1022],[2518,1113],[2574,1220],[2691,1349],[2756,1396],[2814,1503],[2784,1680],[2832,1787],[2926,1712],[3022,1709],[3126,1585],[3148,1509],[3208,1440],[3204,1335],[3168,1278],[3149,1065],[3127,966]]]}},{"type":"Feature","id":"GT.SO","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.44,"hc-key":"gt-so","hc-a2":"SO","labelrank":"9","hasc":"GT.SO","alt-name":null,"woe-id":"2345570","subregion":null,"fips":"GT19","postal-code":"SO","name":"Sololá","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.2727","woe-name":"Sololá","latitude":"14.7372","woe-label":"Solola, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2000,1918],[2047,1702],[2033,1584],[1951,1404],[1928,1133],[1768,1241],[1704,1242],[1632,1205],[1559,1206],[1555,1317],[1442,1427],[1338,1420],[1306,1456],[1232,1472],[1197,1436],[1182,1338],[1030,1365],[992,1401],[1054,1518],[1063,1579],[1012,1692],[1088,1795],[1120,1899],[1249,2008],[1302,2019],[1418,1994],[1471,2017],[1591,1998],[1633,2009],[1754,2143],[1786,2128],[1823,2049],[1920,2009],[1885,1888],[1925,1874],[1958,1933],[2000,1918]]]}},{"type":"Feature","id":"GT.TO","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.53,"hc-key":"gt-to","hc-a2":"TO","labelrank":"9","hasc":"GT.TO","alt-name":null,"woe-id":"2345572","subregion":null,"fips":"GT21","postal-code":"TO","name":"Totonicapán","country":"Guatemala","type-en":"Department","region":null,"longitude":"-91.3884","woe-name":"Totonicapán","latitude":"15.0474","woe-label":"Totonicapan, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1754,2143],[1633,2009],[1591,1998],[1471,2017],[1418,1994],[1302,2019],[1249,2008],[1120,1899],[1042,2014],[1012,2145],[890,2144],[842,2203],[844,2283],[782,2348],[710,2628],[714,2733],[892,2798],[999,2813],[1007,2888],[1081,2990],[1218,3023],[1351,3085],[1417,3080],[1404,2958],[1417,2917],[1549,2799],[1590,2674],[1624,2638],[1608,2582],[1556,2573],[1521,2527],[1528,2479],[1601,2427],[1643,2329],[1693,2268],[1673,2207],[1754,2143]]]}},{"type":"Feature","id":"GT.PR","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.52,"hc-key":"gt-pr","hc-a2":"PR","labelrank":"9","hasc":"GT.PR","alt-name":"Guastatoya","woe-id":"2345556","subregion":null,"fips":"GT05","postal-code":"PR","name":"El Progreso","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.0911","woe-name":"El Progreso","latitude":"14.9038","woe-label":"El Progreso, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4268,1511],[4197,1566],[4012,1638],[3933,1714],[3921,1766],[3953,1829],[3904,1990],[3758,1983],[3730,2033],[3775,2107],[3808,2076],[3893,2061],[4025,2082],[4078,2254],[4487,2538],[4807,2753],[4876,2791],[5003,2777],[5121,2801],[5332,2492],[5334,2456],[5210,2453],[5196,2424],[5331,2240],[5415,2202],[5405,2137],[5294,2114],[5236,2049],[5163,2051],[5098,2010],[5008,1897],[4855,1827],[4709,1799],[4628,1649],[4607,1633],[4515,1660],[4360,1604],[4333,1544],[4268,1511]]]}},{"type":"Feature","id":"GT.SR","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.44,"hc-key":"gt-sr","hc-a2":"SR","labelrank":"7","hasc":"GT.SR","alt-name":null,"woe-id":"2345569","subregion":null,"fips":"GT18","postal-code":"SR","name":"Santa Rosa","country":"Guatemala","type-en":"Department","region":null,"longitude":"-90.3389","woe-name":"Santa Rosa","latitude":"14.1651","woe-label":"Santa Rosa, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4188,-840],[3771,-655],[3514,-559],[3306,-509],[3185,-490],[3186,-130],[3274,-86],[3302,-23],[3370,35],[3312,112],[3312,149],[3377,165],[3475,259],[3423,288],[3382,273],[3290,285],[3309,365],[3348,401],[3422,428],[3491,487],[3588,527],[3661,593],[3651,751],[3699,872],[3805,1039],[3879,1055],[3905,990],[3997,1064],[4072,1086],[4125,1034],[4478,1099],[4515,1000],[4676,872],[4629,726],[4593,722],[4592,661],[4538,673],[4448,655],[4408,621],[4316,392],[4353,365],[4473,332],[4660,172],[4681,-18],[4657,-94],[4597,-175],[4503,-207],[4446,-313],[4405,-341],[4245,-303],[4122,-219],[4052,-269],[4089,-347],[4108,-456],[4150,-511],[4209,-664],[4214,-738],[4188,-840]]]}},{"type":"Feature","id":"GT.IZ","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.47,"hc-key":"gt-iz","hc-a2":"IZ","labelrank":"7","hasc":"GT.IZ","alt-name":null,"woe-id":"2345560","subregion":null,"fips":"GT09","postal-code":"IZ","name":"Izabal","country":"Guatemala","type-en":"Department","region":null,"longitude":"-88.9414","woe-name":"Izabal","latitude":"15.5246","woe-label":"Izabal, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[5823,2856],[5760,2960],[5766,3055],[5715,3150],[5736,3501],[5805,3541],[5865,3656],[5694,3858],[5694,3911],[6018,4370],[6146,4447],[6193,4536],[6284,4572],[6354,4666],[6394,4694],[6451,4804],[6688,4810],[6765,4788],[6785,4720],[6915,4773],[7112,4765],[7267,4779],[7495,4722],[7592,4760],[7715,4672],[7804,4695],[7918,4670],[8006,4620],[8016,4564],[8074,4555],[8335,4395],[8309,4257],[8407,4268],[8388,4366],[8447,4372],[8467,4438],[8528,4514],[8527,4623],[8573,4643],[8685,4644],[8544,4745],[8489,4823],[8378,4885],[8346,4924],[8382,4967],[8525,4896],[8600,4818],[8654,4788],[8789,4677],[9055,4555],[9285,4368],[9376,4330],[9308,4249],[9186,4193],[9131,4192],[9041,4038],[8922,3919],[8665,3713],[7453,2760],[7363,2717],[7102,2628],[7007,2574],[6918,2656],[6897,2746],[6875,2942],[6927,2972],[6943,3074],[6930,3115],[6841,3173],[6736,3187],[6639,3155],[6572,3104],[6272,2981],[5967,2877],[5823,2856]]]}},{"type":"Feature","id":"GT.CQ","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.47,"hc-key":"gt-cq","hc-a2":"CQ","labelrank":"9","hasc":"GT.CQ","alt-name":null,"woe-id":"2345555","subregion":null,"fips":"GT04","postal-code":"CQ","name":"Chiquimula","country":"Guatemala","type-en":"Department","region":null,"longitude":"-89.43989999999999","woe-name":"Chiquimula","latitude":"14.6668","woe-label":"Chiquimula, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6900,2153],[6792,2031],[6802,1944],[6902,1808],[6951,1691],[7019,1610],[7017,1544],[6981,1498],[6993,1364],[6980,1273],[6920,1241],[6823,1269],[6759,1250],[6724,1200],[6607,1090],[6561,1021],[6477,989],[6456,912],[6462,830],[6367,909],[6282,838],[6183,855],[6113,848],[6074,898],[6109,1032],[6105,1076],[6052,1121],[5858,1113],[5783,1210],[5726,1246],[5622,1257],[5586,1257],[5595,1313],[5686,1570],[5667,1624],[5668,1741],[5645,1791],[5489,1793],[5550,1904],[5556,2025],[5658,2115],[5689,2112],[5860,2027],[6036,2016],[6075,2026],[6231,2152],[6302,2166],[6436,2125],[6563,2169],[6631,2131],[6681,2143],[6749,2212],[6839,2249],[6900,2153]]]}},{"type":"Feature","id":"GT.JA","properties":{"hc-group":"admin1","hc-middle-x":0.63,"hc-middle-y":0.52,"hc-key":"gt-ja","hc-a2":"JA","labelrank":"9","hasc":"GT.JA","alt-name":null,"woe-id":"2345561","subregion":null,"fips":"GT10","postal-code":"JA","name":"Jalapa","country":"Guatemala","type-en":"Department","region":null,"longitude":"-89.9727","woe-name":"Jalapa","latitude":"14.6255","woe-label":"Jalapa, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[5489,1793],[5645,1791],[5668,1741],[5667,1624],[5686,1570],[5595,1313],[5586,1257],[5622,1257],[5641,1163],[5424,1051],[5355,1112],[5286,1102],[5142,1004],[5107,881],[4991,971],[4929,975],[4839,874],[4676,872],[4515,1000],[4478,1099],[4125,1034],[4072,1086],[4076,1168],[4106,1239],[4122,1344],[4233,1433],[4268,1511],[4333,1544],[4360,1604],[4515,1660],[4607,1633],[4628,1649],[4709,1799],[4855,1827],[5008,1897],[5098,2010],[5163,2051],[5236,2049],[5216,2005],[5341,1808],[5489,1793]]]}},{"type":"Feature","id":"GT.JU","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.39,"hc-key":"gt-ju","hc-a2":"JU","labelrank":"9","hasc":"GT.JU","alt-name":null,"woe-id":"2345562","subregion":null,"fips":"GT11","postal-code":"JU","name":"Jutiapa","country":"Guatemala","type-en":"Department","region":null,"longitude":"-89.8946","woe-name":"Jutiapa","latitude":"14.2384","woe-label":"Jutiapa, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4188,-840],[4214,-738],[4209,-664],[4150,-511],[4108,-456],[4089,-347],[4052,-269],[4122,-219],[4245,-303],[4405,-341],[4446,-313],[4503,-207],[4597,-175],[4657,-94],[4681,-18],[4660,172],[4473,332],[4353,365],[4316,392],[4408,621],[4448,655],[4538,673],[4592,661],[4593,722],[4629,726],[4676,872],[4839,874],[4929,975],[4991,971],[5107,881],[5142,1004],[5286,1102],[5355,1112],[5424,1051],[5641,1163],[5622,1257],[5726,1246],[5783,1210],[5858,1113],[6052,1121],[6105,1076],[6109,1032],[6074,898],[6113,848],[5997,738],[5989,787],[5923,818],[5870,749],[5907,662],[5850,595],[5866,557],[5920,551],[5976,490],[5989,420],[6042,382],[6026,324],[5748,256],[5680,225],[5563,118],[5453,-77],[5466,-177],[5428,-198],[5322,-130],[5237,-121],[5122,-165],[5040,-238],[4752,-446],[4689,-560],[4555,-655],[4521,-735],[4516,-820],[4571,-999],[4188,-840]]]}},{"type":"Feature","id":"GT.ZA","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.55,"hc-key":"gt-za","hc-a2":"ZA","labelrank":"9","hasc":"GT.ZA","alt-name":null,"woe-id":"2345573","subregion":null,"fips":"GT22","postal-code":"ZA","name":"Zacapa","country":"Guatemala","type-en":"Department","region":null,"longitude":"-89.5127","woe-name":"Zacapa","latitude":"15.0329","woe-label":"Zacapa, GT, Guatemala","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[5489,1793],[5341,1808],[5216,2005],[5236,2049],[5294,2114],[5405,2137],[5415,2202],[5331,2240],[5196,2424],[5210,2453],[5334,2456],[5332,2492],[5121,2801],[5192,2832],[5278,2834],[5399,2794],[5563,2819],[5645,2814],[5823,2856],[5967,2877],[6272,2981],[6572,3104],[6639,3155],[6736,3187],[6841,3173],[6930,3115],[6943,3074],[6927,2972],[6875,2942],[6897,2746],[6918,2656],[7007,2574],[6941,2496],[6901,2373],[6951,2327],[6951,2257],[6900,2153],[6839,2249],[6749,2212],[6681,2143],[6631,2131],[6563,2169],[6436,2125],[6302,2166],[6231,2152],[6075,2026],[6036,2016],[5860,2027],[5689,2112],[5658,2115],[5556,2025],[5550,1904],[5489,1793]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/north_america/hn-all.geo.json
const hn_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Honduras","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32616"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=16 +datum=WGS84 +units=m +no_defs","scale":0.00104303423467,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":245169.248459,"yoffset":1826497.99594}},"features":[{"type":"Feature","id":"HN.IB","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.34,"hc-key":"hn-ib","hc-a2":"IB","labelrank":"7","hasc":"HN.IB","alt-name":"Islas de Bahia","woe-id":"2345633","subregion":null,"fips":"HO01","postal-code":"IB","name":"Islas de la Bahía","country":"Honduras","type-en":"Department","region":null,"longitude":"-86.9319","woe-name":"Islas de la Bahía","latitude":"16.1048","woe-label":"Islas de la Bahía, HN, Honduras","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3326,9107],[3298,9088],[3184,9039],[3125,9071],[3140,9091],[3217,9129],[3310,9149],[3341,9137],[3326,9107]]],[[[4498,9679],[4461,9660],[4427,9670],[4375,9658],[4308,9660],[4222,9627],[4128,9573],[4065,9550],[4000,9504],[3901,9481],[3811,9403],[3813,9474],[3931,9558],[4087,9631],[4274,9690],[4326,9697],[4533,9689],[4498,9679]]],[[[5027,9706],[4939,9646],[4932,9662],[4973,9739],[4999,9752],[5046,9825],[5103,9851],[5162,9818],[5115,9791],[5084,9735],[5050,9732],[5027,9706]]]]}},{"type":"Feature","id":"HN.VA","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.48,"hc-key":"hn-va","hc-a2":"VA","labelrank":"7","hasc":"HN.VA","alt-name":null,"woe-id":"2345639","subregion":null,"fips":"HO17","postal-code":"VA","name":"Valle","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.5992","woe-name":"Valle","latitude":"13.5753","woe-label":"Valle, HN, Honduras","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2027,4010],[1988,4003],[1941,4065],[2044,4076],[2027,4010]]],[[[2031,4217],[2122,4222],[2091,4197],[2112,4127],[2085,4102],[2005,4128],[1967,4151],[1972,4182],[2010,4225],[2031,4217]]],[[[2457,4260],[2420,4292],[2369,4289],[2338,4309],[2290,4260],[2294,4213],[2277,4199],[2162,4192],[2171,4222],[2073,4245],[2038,4223],[2061,4285],[2037,4294],[2038,4364],[2007,4387],[1966,4346],[1981,4295],[1956,4248],[1908,4213],[1859,4200],[1753,4242],[1744,4272],[1691,4285],[1829,4348],[1859,4382],[1851,4450],[1812,4476],[1757,4470],[1739,4511],[1749,4560],[1792,4661],[1801,4792],[1842,4849],[1831,4879],[1891,5015],[1811,5070],[1910,5077],[1953,5049],[1990,5049],[1986,4919],[2070,4850],[2156,4842],[2283,4752],[2315,4755],[2383,4697],[2379,4626],[2421,4532],[2483,4485],[2478,4448],[2509,4367],[2512,4331],[2493,4287],[2457,4260]]]]}},{"type":"Feature","id":"HN.AT","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.6,"hc-key":"hn-at","hc-a2":"AT","labelrank":"7","hasc":"HN.AT","alt-name":null,"woe-id":"2345623","subregion":null,"fips":"HO01","postal-code":"AT","name":"Atlántida","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.0783","woe-name":"Atlántida","latitude":"15.6343","woe-label":"Atlántida, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1860,8781],[1931,8770],[2008,8724],[2020,8750],[2098,8806],[2053,8733],[2238,8561],[2291,8539],[2346,8549],[2382,8597],[2444,8596],[2463,8634],[2524,8653],[2702,8612],[2858,8557],[3019,8540],[3203,8497],[3331,8499],[3468,8535],[3518,8575],[3568,8549],[3642,8543],[3980,8573],[4038,8571],[4094,8548],[4078,8527],[4088,8475],[4145,8411],[4170,8358],[4224,8336],[4227,8254],[4203,8215],[4125,8176],[4039,8200],[3957,8185],[3906,8196],[3843,8192],[3751,8214],[3694,8198],[3585,8141],[3504,8117],[3392,8121],[3371,8150],[3247,8117],[3137,8114],[3044,8024],[2996,7993],[2883,7953],[2804,7895],[2733,7896],[2526,7949],[2469,7922],[2398,7957],[2374,7992],[2361,8079],[2306,8096],[2239,8058],[2063,8036],[2036,8047],[1957,8144],[1930,8287],[1912,8321],[1757,8424],[1797,8439],[1808,8478],[1745,8553],[1754,8588],[1794,8634],[1820,8694],[1866,8739],[1860,8781]]]}},{"type":"Feature","id":"HN.GD","properties":{"hc-group":"admin1","hc-middle-x":0.3,"hc-middle-y":0.55,"hc-key":"hn-gd","hc-a2":"GD","labelrank":"7","hasc":"HN.GD","alt-name":null,"woe-id":"2345631","subregion":null,"fips":"HO09","postal-code":"GD","name":"Gracias a Dios","country":"Honduras","type-en":"Department","region":null,"longitude":"-84.37009999999999","woe-name":"Gracias a Dios","latitude":"15.1219","woe-label":"Gracias a Dios, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6581,8915],[6667,8888],[6834,8814],[7143,8721],[7168,8703],[7137,8647],[7137,8575],[7174,8540],[7251,8549],[7261,8602],[7320,8558],[7364,8565],[7490,8551],[7533,8582],[7496,8597],[7315,8627],[7219,8670],[7204,8698],[7512,8643],[7771,8624],[7806,8613],[8030,8434],[8509,8039],[8676,7941],[8784,7911],[8798,7879],[8761,7866],[8663,7929],[8564,7975],[8489,7979],[8492,8010],[8418,8096],[8387,8086],[8317,8130],[8281,8125],[8229,8081],[8169,8105],[8196,8151],[8144,8152],[8151,8102],[8194,8044],[8170,8030],[8117,8130],[8077,8154],[8025,8139],[7954,8149],[7979,8095],[8011,8084],[8003,8028],[8055,8072],[8070,8122],[8102,8118],[8155,8013],[8166,7973],[8111,7935],[8125,7890],[8185,7810],[8267,7779],[8284,7796],[8266,7848],[8311,7806],[8306,7750],[8330,7720],[8448,7727],[8401,7702],[8416,7661],[8467,7613],[8503,7606],[8575,7621],[8640,7657],[8543,7716],[8517,7749],[8483,7754],[8349,7799],[8266,7885],[8337,7922],[8493,7856],[8528,7802],[8582,7772],[8632,7762],[8686,7706],[8651,7681],[8679,7664],[8722,7685],[8736,7632],[8733,7566],[8750,7535],[8784,7573],[8800,7538],[8843,7600],[8905,7627],[8967,7636],[8985,7707],[9122,7682],[9151,7689],[9144,7558],[9104,7554],[9073,7599],[9029,7595],[8989,7528],[8991,7493],[9022,7503],[9035,7553],[9051,7477],[9107,7480],[9155,7538],[9233,7567],[9196,7621],[9169,7699],[9147,7719],[9115,7702],[9037,7737],[9007,7723],[9007,7760],[8903,7790],[8869,7821],[8805,7847],[8843,7895],[8895,7857],[9124,7745],[9360,7660],[9451,7596],[9472,7562],[9502,7448],[9534,7376],[9581,7309],[9635,7267],[9851,7186],[9769,7184],[9699,7157],[9615,7156],[9581,7172],[9603,7192],[9460,7202],[9397,7239],[9355,7177],[9279,7150],[9232,7199],[9191,7201],[9185,7124],[9158,7132],[9162,7087],[9028,7015],[9010,6949],[8949,6977],[8876,6973],[8838,6937],[8855,6886],[8782,6909],[8786,6881],[8750,6867],[8653,6859],[8688,6821],[8622,6809],[8570,6772],[8534,6795],[8523,6777],[8473,6818],[8474,6746],[8302,6734],[8259,6756],[8212,6757],[8160,6796],[8129,6779],[8177,6706],[8165,6685],[8119,6689],[8093,6666],[8025,6651],[7933,6723],[7887,6729],[7878,6708],[7888,6624],[7879,6585],[7844,6565],[7755,6578],[7712,6650],[7634,6531],[7505,6476],[7441,6509],[7415,6501],[7426,6548],[7299,6551],[7192,6587],[7127,6571],[7081,6662],[7045,6685],[7042,6731],[7007,6735],[7027,6761],[7001,6803],[6917,6844],[6767,6822],[6660,6727],[6602,6686],[6602,6688],[6597,7271],[6581,8915]]]}},{"type":"Feature","id":"HN.CL","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.4,"hc-key":"hn-cl","hc-a2":"CL","labelrank":"7","hasc":"HN.CL","alt-name":null,"woe-id":"2345625","subregion":null,"fips":"HO03","postal-code":"CL","name":"Colón","country":"Honduras","type-en":"Department","region":null,"longitude":"-85.72360000000001","woe-name":"Colón","latitude":"15.7786","woe-label":"Colón, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4125,8176],[4203,8215],[4227,8254],[4224,8336],[4170,8358],[4145,8411],[4088,8475],[4078,8527],[4094,8548],[4134,8522],[4204,8512],[4267,8531],[4431,8634],[4493,8698],[4613,8737],[4860,8747],[4900,8762],[4967,8812],[5003,8853],[5018,8896],[4990,8932],[4828,8960],[4837,8980],[4882,8984],[5108,8941],[5173,8934],[5384,8877],[5393,8812],[5417,8837],[5529,8762],[5606,8730],[5737,8697],[5956,8719],[6143,8726],[6243,8768],[6367,8861],[6450,8911],[6581,8915],[6597,7271],[6492,7392],[6434,7445],[6190,7550],[6161,7568],[6059,7689],[5966,7824],[5904,7874],[5714,7945],[5535,8096],[5395,8171],[5358,8179],[5312,8161],[5263,8184],[5225,8165],[5209,8119],[5138,8067],[5075,8087],[5013,8003],[4908,7899],[4808,7845],[4746,7845],[4598,7802],[4558,7811],[4452,7867],[4436,7947],[4446,8027],[4438,8066],[4310,8103],[4200,8104],[4125,8176]]]}},{"type":"Feature","id":"HN.OL","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"hn-ol","hc-a2":"OL","labelrank":"7","hasc":"HN.OL","alt-name":null,"woe-id":"2345637","subregion":null,"fips":"HO15","postal-code":"OL","name":"Olancho","country":"Honduras","type-en":"Department","region":null,"longitude":"-85.9937","woe-name":"Olancho","latitude":"14.8052","woe-label":"Olancho, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6597,7271],[6602,6688],[6602,6686],[6559,6633],[6545,6556],[6509,6544],[6568,6492],[6520,6442],[6565,6442],[6553,6412],[6491,6349],[6454,6332],[6397,6384],[6365,6392],[6344,6316],[6341,6226],[6295,6171],[6296,6121],[6248,6084],[6308,6038],[6332,5962],[6277,5910],[6190,5887],[6124,5887],[6048,5858],[6003,5800],[5976,5801],[5923,5731],[5911,5685],[5858,5591],[5783,5538],[5720,5520],[5691,5443],[5629,5427],[5607,5486],[5554,5525],[5537,5615],[5482,5679],[5438,5667],[5288,5705],[5250,5654],[5208,5649],[5136,5675],[5090,5645],[5080,5603],[5018,5586],[4963,5648],[4896,5678],[4831,5803],[4794,5828],[4749,5833],[4725,5800],[4617,5828],[4542,5944],[4459,5957],[4344,5912],[4279,5866],[4247,5858],[4118,5865],[4067,5923],[3994,5958],[3952,5997],[3855,6024],[3805,6026],[3764,6074],[3694,6071],[3619,6102],[3589,6239],[3559,6312],[3567,6373],[3457,6488],[3424,6497],[3385,6535],[3310,6707],[3282,6792],[3273,6860],[3237,6949],[3284,7025],[3188,7092],[3143,7161],[3167,7205],[3258,7229],[3319,7278],[3372,7439],[3359,7547],[3366,7586],[3441,7643],[3522,7660],[3575,7617],[3654,7613],[3700,7637],[3758,7742],[3795,7743],[3942,7824],[3983,7829],[4072,7789],[4146,7721],[4211,7723],[4352,7803],[4452,7867],[4558,7811],[4598,7802],[4746,7845],[4808,7845],[4908,7899],[5013,8003],[5075,8087],[5138,8067],[5209,8119],[5225,8165],[5263,8184],[5312,8161],[5358,8179],[5395,8171],[5535,8096],[5714,7945],[5904,7874],[5966,7824],[6059,7689],[6161,7568],[6190,7550],[6434,7445],[6492,7392],[6597,7271]]]}},{"type":"Feature","id":"HN.FM","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.56,"hc-key":"hn-fm","hc-a2":"FM","labelrank":"7","hasc":"HN.FM","alt-name":"Tegucigalpa","woe-id":"2345630","subregion":null,"fips":"HO08","postal-code":"FM","name":"Francisco Morazán","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.1815","woe-name":"Francisco Morazán","latitude":"14.3474","woe-label":"Francisco Morazán, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3143,7161],[3188,7092],[3284,7025],[3237,6949],[3273,6860],[3282,6792],[3310,6707],[3385,6535],[3424,6497],[3457,6488],[3567,6373],[3559,6312],[3589,6239],[3619,6102],[3489,6003],[3432,5948],[3419,5889],[3386,5830],[3301,5755],[3259,5657],[3292,5632],[3274,5596],[3185,5596],[3148,5581],[3204,5488],[3266,5445],[3268,5343],[3249,5307],[3200,5270],[3140,5281],[3147,5227],[3134,5186],[3129,5069],[3097,4987],[3059,4942],[2974,4957],[2908,5005],[2891,4970],[2896,4901],[2927,4851],[2893,4736],[2801,4774],[2746,4756],[2660,4787],[2600,4780],[2562,4799],[2491,4791],[2434,4846],[2445,4907],[2380,4917],[2327,4910],[2307,4805],[2315,4755],[2283,4752],[2156,4842],[2070,4850],[1986,4919],[1990,5049],[2039,5111],[2062,5172],[2079,5269],[2047,5504],[2049,5541],[2110,5602],[2177,5608],[2247,5643],[2278,5705],[2379,5754],[2371,5784],[2325,5820],[2312,5920],[2320,5949],[2390,5952],[2454,6051],[2405,6098],[2403,6153],[2335,6207],[2309,6279],[2398,6367],[2427,6465],[2525,6431],[2551,6477],[2554,6535],[2577,6559],[2658,6602],[2687,6707],[2673,6823],[2694,6856],[2759,6881],[2739,6920],[2693,6950],[2756,7047],[2790,7077],[2800,7153],[2831,7179],[2913,7189],[2991,7170],[3084,7173],[3143,7161]]]}},{"type":"Feature","id":"HN.YO","properties":{"hc-group":"admin1","hc-middle-x":0.29,"hc-middle-y":0.6,"hc-key":"hn-yo","hc-a2":"YO","labelrank":"9","hasc":"HN.YO","alt-name":null,"woe-id":"2345640","subregion":null,"fips":"HO18","postal-code":"YO","name":"Yoro","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.206","woe-name":"Yoro","latitude":"15.233","woe-label":"Yoro, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4125,8176],[4200,8104],[4310,8103],[4438,8066],[4446,8027],[4436,7947],[4452,7867],[4352,7803],[4211,7723],[4146,7721],[4072,7789],[3983,7829],[3942,7824],[3795,7743],[3758,7742],[3700,7637],[3654,7613],[3575,7617],[3522,7660],[3441,7643],[3366,7586],[3359,7547],[3372,7439],[3319,7278],[3258,7229],[3167,7205],[3143,7161],[3084,7173],[2991,7170],[2913,7189],[2831,7179],[2800,7153],[2790,7077],[2756,7047],[2693,6950],[2647,6992],[2604,6983],[2573,7004],[2469,7023],[2393,6969],[2348,6974],[2315,7083],[2258,7121],[2241,7174],[2187,7230],[2157,7233],[2100,7180],[2024,7163],[1842,7164],[1833,7244],[1849,7280],[1838,7333],[1787,7384],[1742,7384],[1732,7409],[1657,7422],[1614,7474],[1518,7477],[1528,7561],[1497,7573],[1512,7599],[1514,7666],[1536,7714],[1611,7757],[1698,7879],[1692,7904],[1642,7943],[1653,7958],[1705,7942],[1710,7974],[1680,8044],[1717,8089],[1745,8168],[1773,8161],[1800,8226],[1774,8267],[1701,8336],[1725,8365],[1694,8372],[1757,8424],[1912,8321],[1930,8287],[1957,8144],[2036,8047],[2063,8036],[2239,8058],[2306,8096],[2361,8079],[2374,7992],[2398,7957],[2469,7922],[2526,7949],[2733,7896],[2804,7895],[2883,7953],[2996,7993],[3044,8024],[3137,8114],[3247,8117],[3371,8150],[3392,8121],[3504,8117],[3585,8141],[3694,8198],[3751,8214],[3843,8192],[3906,8196],[3957,8185],[4039,8200],[4125,8176]]]}},{"type":"Feature","id":"HN.CM","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.34,"hc-key":"hn-cm","hc-a2":"CM","labelrank":"9","hasc":"HN.CM","alt-name":null,"woe-id":"2345626","subregion":null,"fips":"HO04","postal-code":"CM","name":"Comayagua","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.678","woe-name":"Comayagua","latitude":"14.6577","woe-label":"Comayagua, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2693,6950],[2739,6920],[2759,6881],[2694,6856],[2673,6823],[2687,6707],[2658,6602],[2577,6559],[2554,6535],[2551,6477],[2525,6431],[2427,6465],[2398,6367],[2309,6279],[2335,6207],[2403,6153],[2405,6098],[2454,6051],[2390,5952],[2320,5949],[2312,5920],[2325,5820],[2371,5784],[2379,5754],[2278,5705],[2247,5643],[2177,5608],[2110,5602],[2049,5541],[2047,5504],[1985,5498],[1917,5437],[1915,5497],[1893,5532],[1825,5580],[1758,5602],[1765,5660],[1741,5689],[1681,5714],[1681,5762],[1852,5783],[1928,5821],[2006,5835],[2028,5879],[2020,5947],[1986,6013],[1907,5981],[1762,6023],[1745,6044],[1676,6063],[1634,6114],[1630,6162],[1553,6253],[1555,6288],[1482,6336],[1464,6395],[1433,6444],[1372,6477],[1273,6504],[1250,6537],[1272,6574],[1245,6638],[1259,6685],[1342,6754],[1404,6765],[1406,6843],[1446,6784],[1584,6882],[1654,6959],[1725,6984],[1833,7067],[1842,7164],[2024,7163],[2100,7180],[2157,7233],[2187,7230],[2241,7174],[2258,7121],[2315,7083],[2348,6974],[2393,6969],[2469,7023],[2573,7004],[2604,6983],[2647,6992],[2693,6950]]]}},{"type":"Feature","id":"HN.CR","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.35,"hc-key":"hn-cr","hc-a2":"CR","labelrank":"7","hasc":"HN.CR","alt-name":"Cortez","woe-id":"2345628","subregion":null,"fips":"HO06","postal-code":"CR","name":"Cortés","country":"Honduras","type-en":"Department","region":null,"longitude":"-88.0359","woe-name":"Cortés","latitude":"15.5336","woe-label":"Cortés, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1757,8424],[1694,8372],[1725,8365],[1701,8336],[1774,8267],[1800,8226],[1773,8161],[1745,8168],[1717,8089],[1680,8044],[1710,7974],[1705,7942],[1653,7958],[1642,7943],[1692,7904],[1698,7879],[1611,7757],[1536,7714],[1514,7666],[1512,7599],[1497,7573],[1528,7561],[1518,7477],[1614,7474],[1657,7422],[1732,7409],[1742,7384],[1787,7384],[1838,7333],[1849,7280],[1833,7244],[1842,7164],[1833,7067],[1725,6984],[1654,6959],[1584,6882],[1446,6784],[1406,6843],[1403,6917],[1390,6959],[1335,7008],[1289,7013],[1296,7117],[1330,7212],[1352,7236],[1309,7271],[1220,7318],[1187,7371],[1196,7405],[1268,7481],[1278,7508],[1207,7545],[1170,7621],[1158,7795],[1092,7821],[992,7890],[968,7934],[969,8016],[932,8040],[769,8092],[676,8107],[576,8072],[696,8164],[777,8243],[840,8346],[876,8346],[959,8383],[970,8369],[986,8428],[1016,8431],[1094,8375],[1137,8362],[1182,8382],[1283,8488],[1326,8515],[1335,8549],[1403,8539],[1504,8600],[1520,8642],[1475,8687],[1548,8688],[1657,8734],[1805,8743],[1860,8781],[1866,8739],[1820,8694],[1794,8634],[1754,8588],[1745,8553],[1808,8478],[1797,8439],[1757,8424]]]}},{"type":"Feature","id":"HN.IN","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.29,"hc-key":"hn-in","hc-a2":"IN","labelrank":"7","hasc":"HN.IN","alt-name":null,"woe-id":"2345632","subregion":null,"fips":"HO10","postal-code":"IN","name":"Intibucá","country":"Honduras","type-en":"Department","region":null,"longitude":"-88.1754","woe-name":"Intibucá","latitude":"14.3981","woe-label":"Intibucá, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1250,6537],[1273,6504],[1372,6477],[1433,6444],[1464,6395],[1482,6336],[1555,6288],[1553,6253],[1630,6162],[1634,6114],[1514,6036],[1461,6044],[1459,5956],[1431,5903],[1373,5863],[1353,5802],[1280,5799],[1192,5721],[1157,5659],[1107,5634],[970,5490],[1008,5427],[995,5333],[947,5331],[962,5239],[914,5230],[876,5182],[816,5167],[804,5145],[754,5156],[745,5123],[687,5136],[617,5121],[552,5088],[506,5086],[520,5140],[497,5204],[506,5297],[507,5298],[536,5338],[720,5442],[789,5488],[817,5569],[806,5648],[804,5736],[773,5755],[700,5762],[642,5795],[659,5886],[641,5976],[586,6002],[516,6080],[504,6155],[539,6187],[582,6200],[702,6204],[751,6229],[783,6313],[818,6376],[798,6488],[781,6521],[917,6510],[1096,6527],[1205,6510],[1250,6537]]]}},{"type":"Feature","id":"HN.LP","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.66,"hc-key":"hn-lp","hc-a2":"LP","labelrank":"9","hasc":"HN.LP","alt-name":null,"woe-id":"2345634","subregion":null,"fips":"HO12","postal-code":"LP","name":"La Paz","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.9144","woe-name":"La Paz","latitude":"14.138","woe-label":"La Paz, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2047,5504],[2079,5269],[2062,5172],[2039,5111],[1990,5049],[1953,5049],[1910,5077],[1811,5070],[1740,5115],[1709,5183],[1666,5195],[1617,5150],[1549,5158],[1504,5132],[1467,5152],[1427,5148],[1347,5109],[1333,5153],[1247,5247],[1222,5314],[1156,5333],[1065,5323],[995,5333],[1008,5427],[970,5490],[1107,5634],[1157,5659],[1192,5721],[1280,5799],[1353,5802],[1373,5863],[1431,5903],[1459,5956],[1461,6044],[1514,6036],[1634,6114],[1676,6063],[1745,6044],[1762,6023],[1907,5981],[1986,6013],[2020,5947],[2028,5879],[2006,5835],[1928,5821],[1852,5783],[1681,5762],[1681,5714],[1741,5689],[1765,5660],[1758,5602],[1825,5580],[1893,5532],[1915,5497],[1917,5437],[1985,5498],[2047,5504]]]}},{"type":"Feature","id":"HN.SB","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.52,"hc-key":"hn-sb","hc-a2":"SB","labelrank":"9","hasc":"HN.SB","alt-name":null,"woe-id":"2345638","subregion":null,"fips":"HO16","postal-code":"SB","name":"Santa Bárbara","country":"Honduras","type-en":"Department","region":null,"longitude":"-88.33","woe-name":"Santa Bárbara","latitude":"15.0527","woe-label":"Santa Bárbara, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1406,6843],[1404,6765],[1342,6754],[1259,6685],[1245,6638],[1272,6574],[1250,6537],[1205,6510],[1096,6527],[917,6510],[781,6521],[819,6583],[818,6658],[742,6674],[704,6732],[754,6816],[718,6838],[672,6837],[647,6872],[612,6879],[575,6832],[533,6804],[454,6924],[417,7025],[336,7038],[261,7013],[200,7002],[161,7058],[220,7244],[263,7281],[263,7317],[230,7393],[247,7434],[204,7457],[137,7532],[142,7582],[64,7681],[520,8028],[576,8072],[676,8107],[769,8092],[932,8040],[969,8016],[968,7934],[992,7890],[1092,7821],[1158,7795],[1170,7621],[1207,7545],[1278,7508],[1268,7481],[1196,7405],[1187,7371],[1220,7318],[1309,7271],[1352,7236],[1330,7212],[1296,7117],[1289,7013],[1335,7008],[1390,6959],[1403,6917],[1406,6843]]]}},{"type":"Feature","id":"HN.CP","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.49,"hc-key":"hn-cp","hc-a2":"CP","labelrank":"9","hasc":"HN.CP","alt-name":null,"woe-id":"2345627","subregion":null,"fips":"HO05","postal-code":"CP","name":"Copán","country":"Honduras","type-en":"Department","region":null,"longitude":"-88.9362","woe-name":"Copán","latitude":"14.8909","woe-label":"Copán, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-615,6633],[-657,6683],[-689,6763],[-755,6856],[-761,6914],[-703,6972],[-651,7065],[-650,7112],[-684,7144],[-656,7226],[-599,7287],[-545,7313],[-368,7371],[-307,7399],[64,7681],[142,7582],[137,7532],[204,7457],[247,7434],[230,7393],[263,7317],[263,7281],[220,7244],[161,7058],[200,7002],[261,7013],[270,6956],[263,6909],[204,6812],[203,6762],[232,6702],[239,6649],[113,6630],[26,6641],[0,6632],[16,6552],[69,6502],[102,6445],[106,6337],[17,6340],[-57,6314],[-57,6260],[-101,6256],[-176,6293],[-229,6362],[-241,6447],[-352,6532],[-379,6611],[-405,6649],[-509,6664],[-615,6633]]]}},{"type":"Feature","id":"HN.LE","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.46,"hc-key":"hn-le","hc-a2":"LE","labelrank":"7","hasc":"HN.LE","alt-name":"Gracias","woe-id":"2345635","subregion":null,"fips":"HO13","postal-code":"LE","name":"Lempira","country":"Honduras","type-en":"Department","region":null,"longitude":"-88.6478","woe-name":"Lempira","latitude":"14.4408","woe-label":"Lempira, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[781,6521],[798,6488],[818,6376],[783,6313],[751,6229],[702,6204],[582,6200],[539,6187],[504,6155],[516,6080],[586,6002],[641,5976],[659,5886],[642,5795],[700,5762],[773,5755],[804,5736],[806,5648],[817,5569],[789,5488],[720,5442],[536,5338],[508,5298],[507,5298],[477,5330],[400,5337],[268,5380],[168,5373],[136,5426],[72,5449],[85,5534],[73,5554],[19,5534],[-89,5536],[-125,5640],[-162,5687],[-232,5715],[-294,5689],[-316,5734],[-317,5840],[-328,5898],[-261,5974],[-175,6003],[-148,6083],[-126,6086],[-80,6048],[-35,6048],[-57,6078],[-47,6120],[2,6106],[82,6146],[133,6299],[106,6337],[102,6445],[69,6502],[16,6552],[0,6632],[26,6641],[113,6630],[239,6649],[232,6702],[203,6762],[204,6812],[263,6909],[270,6956],[261,7013],[336,7038],[417,7025],[454,6924],[533,6804],[575,6832],[612,6879],[647,6872],[672,6837],[718,6838],[754,6816],[704,6732],[742,6674],[818,6658],[819,6583],[781,6521]]]}},{"type":"Feature","id":"HN.OC","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.46,"hc-key":"hn-oc","hc-a2":"OC","labelrank":"9","hasc":"HN.OC","alt-name":null,"woe-id":"2345636","subregion":null,"fips":"HO14","postal-code":"OC","name":"Ocotepeque","country":"Honduras","type-en":"Department","region":null,"longitude":"-89.0399","woe-name":"Ocotepeque","latitude":"14.5248","woe-label":"Ocotepeque, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[106,6337],[133,6299],[82,6146],[2,6106],[-47,6120],[-57,6078],[-35,6048],[-80,6048],[-126,6086],[-148,6083],[-175,6003],[-261,5974],[-328,5898],[-317,5840],[-316,5734],[-355,5811],[-399,5845],[-424,5938],[-511,5960],[-531,5977],[-522,6013],[-553,6069],[-579,6067],[-635,5990],[-715,6014],[-759,6046],[-848,6066],[-902,6092],[-996,6108],[-999,6164],[-984,6215],[-927,6236],[-895,6282],[-815,6355],[-791,6388],[-748,6400],[-683,6381],[-642,6401],[-632,6463],[-639,6553],[-609,6598],[-615,6633],[-509,6664],[-405,6649],[-379,6611],[-352,6532],[-241,6447],[-229,6362],[-176,6293],[-101,6256],[-57,6260],[-57,6314],[17,6340],[106,6337]]]}},{"type":"Feature","id":"HN.CH","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.58,"hc-key":"hn-ch","hc-a2":"CH","labelrank":"9","hasc":"HN.CH","alt-name":null,"woe-id":"2345624","subregion":null,"fips":"HO02","postal-code":"CH","name":"Choluteca","country":"Honduras","type-en":"Department","region":null,"longitude":"-87.1074","woe-name":"Choluteca","latitude":"13.2587","woe-label":"Choluteca, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2457,4260],[2493,4287],[2512,4331],[2509,4367],[2478,4448],[2483,4485],[2421,4532],[2379,4626],[2383,4697],[2315,4755],[2307,4805],[2327,4910],[2380,4917],[2445,4907],[2434,4846],[2491,4791],[2562,4799],[2600,4780],[2660,4787],[2746,4756],[2729,4680],[2786,4625],[2799,4569],[2823,4554],[2904,4549],[2934,4487],[2965,4463],[2999,4465],[3052,4496],[3092,4541],[3102,4582],[3180,4632],[3229,4698],[3238,4737],[3311,4735],[3318,4722],[3385,4766],[3454,4775],[3481,4808],[3521,4822],[3516,4727],[3555,4673],[3547,4556],[3603,4342],[3578,4265],[3582,4221],[3616,4203],[3643,4118],[3626,4067],[3576,4028],[3544,4029],[3443,4078],[3413,4081],[3361,4057],[3277,3985],[3251,3943],[3238,3877],[3255,3844],[3239,3750],[3261,3728],[3211,3681],[3150,3595],[3069,3549],[3059,3520],[2972,3549],[2570,3524],[2606,3576],[2649,3609],[2566,3618],[2539,3633],[2502,3686],[2506,3715],[2588,3732],[2487,3759],[2386,3756],[2381,3825],[2357,3895],[2272,4040],[2242,4039],[2224,4070],[2242,4101],[2302,4138],[2350,4199],[2373,4193],[2457,4222],[2457,4260]]]}},{"type":"Feature","id":"HN.EP","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.4,"hc-key":"hn-ep","hc-a2":"EP","labelrank":"7","hasc":"HN.EP","alt-name":"Paraiso","woe-id":"2345629","subregion":null,"fips":"HO07","postal-code":"EP","name":"El Paraíso","country":"Honduras","type-en":"Department","region":null,"longitude":"-86.5592","woe-name":"El Paraíso","latitude":"14.037","woe-label":"El Paraíso, HN, Honduras","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2746,4756],[2801,4774],[2893,4736],[2927,4851],[2896,4901],[2891,4970],[2908,5005],[2974,4957],[3059,4942],[3097,4987],[3129,5069],[3134,5186],[3147,5227],[3140,5281],[3200,5270],[3249,5307],[3268,5343],[3266,5445],[3204,5488],[3148,5581],[3185,5596],[3274,5596],[3292,5632],[3259,5657],[3301,5755],[3386,5830],[3419,5889],[3432,5948],[3489,6003],[3619,6102],[3694,6071],[3764,6074],[3805,6026],[3855,6024],[3952,5997],[3994,5958],[4067,5923],[4118,5865],[4247,5858],[4279,5866],[4344,5912],[4459,5957],[4542,5944],[4617,5828],[4725,5800],[4749,5833],[4794,5828],[4831,5803],[4896,5678],[4963,5648],[5018,5586],[5080,5603],[5090,5645],[5136,5675],[5208,5649],[5250,5654],[5288,5705],[5438,5667],[5482,5679],[5537,5615],[5554,5525],[5607,5486],[5629,5427],[5576,5411],[5543,5369],[5482,5350],[5392,5281],[5343,5287],[5309,5150],[5342,5127],[5348,5078],[5318,5035],[5290,5062],[5214,5064],[5175,5077],[5109,5178],[5071,5195],[5015,5183],[4979,5202],[4941,5252],[4817,5341],[4812,5388],[4831,5446],[4698,5426],[4654,5396],[4606,5319],[4546,5287],[4486,5193],[4372,5070],[4344,5026],[4320,4946],[4300,4923],[4242,4903],[4152,4897],[4085,4939],[4011,4915],[3922,4955],[3853,4951],[3710,4924],[3598,4930],[3529,4889],[3521,4822],[3481,4808],[3454,4775],[3385,4766],[3318,4722],[3311,4735],[3238,4737],[3229,4698],[3180,4632],[3102,4582],[3092,4541],[3052,4496],[2999,4465],[2965,4463],[2934,4487],[2904,4549],[2823,4554],[2799,4569],[2786,4625],[2729,4680],[2746,4756]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/br-all.geo.json
const br_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Brazil","version":"1.1.3","type":"FeatureCollection","copyright":"Copyright (c) 2020 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:29101"}},"hc-transform":{"default":{"crs":"+proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=aust_SA +towgs84=-57,1,-41,0,0,0,0 +units=m +no_defs","scale":0.000161701268187,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":2791531.40873,"yoffset":10585904.489}},"features":[{"type":"Feature","id":"BR.SP","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.34,"hc-key":"br-sp","hc-a2":"SP","labelrank":"2","hasc":"BR.SP","alt-name":null,"woe-id":"2344868","subregion":null,"fips":"BR32","postal-code":"SP","name":"São Paulo","country":"Brazil","type-en":"State","region":null,"longitude":"-48.5206","woe-name":"São Paulo","latitude":"-22.2267","woe-label":"Sao Paulo, BR, Brazil","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6776,1722],[6767,1687],[6733,1678],[6718,1696],[6752,1736],[6776,1722]]],[[[4751,2087],[4803,2154],[4835,2165],[4878,2200],[4919,2219],[4958,2253],[4973,2297],[5015,2352],[5044,2372],[5028,2404],[5091,2461],[5089,2509],[5154,2590],[5158,2639],[5236,2731],[5286,2749],[5324,2802],[5357,2831],[5414,2852],[5440,2882],[5475,2885],[5497,2863],[5617,2843],[5705,2842],[5747,2826],[5776,2829],[5770,2774],[5788,2738],[5806,2737],[5835,2778],[5853,2754],[5852,2706],[5879,2704],[5875,2745],[5887,2771],[6051,2780],[6089,2768],[6112,2802],[6128,2777],[6142,2807],[6185,2814],[6200,2798],[6249,2816],[6256,2794],[6308,2744],[6290,2684],[6326,2654],[6336,2624],[6307,2576],[6303,2547],[6322,2527],[6326,2485],[6343,2466],[6355,2408],[6404,2418],[6482,2386],[6485,2368],[6436,2289],[6446,2241],[6424,2219],[6449,2199],[6421,2147],[6435,2122],[6499,2085],[6475,2044],[6501,2024],[6501,1997],[6556,1982],[6617,1998],[6630,1986],[6660,2002],[6646,2030],[6688,2059],[6717,2040],[6748,2039],[6842,2085],[6901,2098],[6916,2092],[6948,2041],[6972,2033],[7056,2036],[7067,2005],[7037,1973],[6985,1968],[6900,1934],[6895,1893],[6879,1874],[6911,1831],[6869,1837],[6827,1815],[6821,1791],[6801,1800],[6786,1777],[6761,1778],[6725,1755],[6730,1711],[6614,1736],[6541,1715],[6533,1677],[6489,1683],[6423,1653],[6325,1599],[6315,1569],[6267,1537],[6171,1483],[6109,1435],[6082,1404],[6099,1444],[6070,1406],[6082,1399],[6064,1360],[6029,1332],[6043,1353],[6013,1356],[5996,1415],[5950,1432],[5924,1398],[5910,1406],[5919,1475],[5934,1492],[5902,1512],[5860,1509],[5798,1529],[5782,1514],[5730,1522],[5727,1560],[5750,1613],[5706,1685],[5659,1748],[5673,1790],[5649,1848],[5659,1875],[5655,1916],[5633,1960],[5587,1980],[5572,2015],[5490,2006],[5403,2017],[5363,2012],[5339,2046],[5280,2062],[5218,2096],[5168,2087],[5084,2109],[5035,2135],[4996,2101],[4808,2123],[4751,2087]]]]}},{"type":"Feature","id":"BR.MA","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.42,"hc-key":"br-ma","hc-a2":"MA","labelrank":"2","hasc":"BR.MA","alt-name":"São Luíz de Maranhão","woe-id":"2344854","subregion":null,"fips":"BR13","postal-code":"MA","name":"Maranhão","country":"Brazil","type-en":"State","region":null,"longitude":"-45.389","woe-name":"Maranhão","latitude":"-5.01897","woe-label":"Maranhao, BR, Brazil","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7179,7589],[7184,7554],[7156,7523],[7171,7612],[7179,7589]]],[[[7924,7599],[7924,7523],[7878,7467],[7818,7411],[7751,7399],[7739,7407],[7689,7337],[7692,7312],[7672,7274],[7600,7186],[7610,7143],[7634,7112],[7609,7067],[7608,7034],[7635,6989],[7647,6925],[7639,6882],[7577,6803],[7562,6796],[7567,6674],[7597,6636],[7629,6617],[7625,6552],[7608,6500],[7590,6479],[7529,6477],[7456,6454],[7397,6495],[7296,6479],[7234,6413],[7220,6384],[7180,6374],[7106,6305],[7077,6316],[7019,6281],[6943,6264],[6894,6232],[6874,6178],[6863,6099],[6817,6021],[6792,5947],[6762,5923],[6746,5884],[6766,5813],[6768,5772],[6794,5734],[6782,5714],[6773,5583],[6746,5534],[6747,5495],[6709,5527],[6638,5539],[6605,5586],[6596,5627],[6552,5659],[6590,5712],[6584,5728],[6531,5754],[6511,5783],[6507,5822],[6481,5850],[6443,5860],[6492,5916],[6500,5986],[6526,6026],[6606,6035],[6595,6058],[6618,6127],[6611,6156],[6589,6173],[6506,6160],[6466,6137],[6429,6190],[6376,6246],[6335,6304],[6332,6352],[6295,6345],[6269,6377],[6297,6386],[6333,6428],[6341,6514],[6364,6575],[6374,6643],[6360,6680],[6364,6745],[6346,6781],[6350,6824],[6331,6854],[6280,6879],[6248,6882],[6241,6911],[6204,6924],[6161,6918],[6110,6944],[6065,6939],[6034,6899],[6002,6892],[6000,6897],[6260,7101],[6301,7098],[6322,7114],[6357,7172],[6378,7190],[6404,7244],[6467,7310],[6479,7378],[6501,7434],[6535,7453],[6579,7518],[6586,7574],[6605,7586],[6580,7617],[6647,7681],[6652,7757],[6683,7774],[6707,7843],[6707,7877],[6680,7898],[6711,7913],[6712,7967],[6744,8044],[6778,8085],[6768,8046],[6794,8054],[6831,8029],[6846,8065],[6864,8026],[6858,8000],[6895,8027],[6899,7986],[6916,7999],[6910,7961],[6960,8011],[6964,7986],[6944,7970],[6956,7893],[6983,7911],[6990,7955],[7021,7972],[7059,7961],[7083,7984],[7071,7948],[7101,7904],[7179,7864],[7184,7812],[7131,7746],[7148,7745],[7186,7779],[7213,7765],[7223,7733],[7214,7707],[7182,7718],[7181,7689],[7147,7625],[7132,7537],[7149,7526],[7104,7485],[7104,7470],[7143,7492],[7202,7554],[7221,7666],[7304,7708],[7310,7664],[7285,7632],[7229,7600],[7271,7607],[7267,7576],[7290,7607],[7306,7601],[7320,7641],[7345,7666],[7389,7671],[7376,7692],[7396,7703],[7412,7745],[7434,7747],[7427,7718],[7476,7663],[7488,7690],[7476,7723],[7516,7721],[7683,7659],[7754,7604],[7807,7602],[7814,7581],[7857,7590],[7896,7579],[7876,7606],[7851,7598],[7811,7608],[7814,7624],[7850,7600],[7855,7624],[7924,7599]]]]}},{"type":"Feature","id":"BR.PA","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.55,"hc-key":"br-pa","hc-a2":"PA","labelrank":"2","hasc":"BR.PA","alt-name":null,"woe-id":"2344857","subregion":null,"fips":"BR16","postal-code":"PA","name":"Pará","country":"Brazil","type-en":"State","region":null,"longitude":"-52.6491","woe-name":"Pará","latitude":"-4.44313","woe-label":"Para, BR, Brazil","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6148,8097],[6123,8117],[6156,8154],[6165,8126],[6148,8097]]],[[[5421,8221],[5417,8184],[5347,8153],[5355,8195],[5421,8221]]],[[[5311,8228],[5331,8206],[5293,8096],[5281,8102],[5252,8053],[5154,7980],[5124,7971],[5107,7988],[5130,8038],[5187,8089],[5185,8148],[5232,8214],[5287,8239],[5311,8228]]],[[[5269,8255],[5300,8322],[5327,8344],[5332,8309],[5317,8287],[5269,8255]]],[[[5403,8298],[5363,8317],[5388,8379],[5439,8395],[5477,8359],[5403,8298]]],[[[5796,8402],[5834,8380],[5809,8349],[5732,8342],[5699,8354],[5756,8399],[5796,8402]]],[[[5530,8383],[5496,8382],[5475,8402],[5482,8434],[5528,8418],[5530,8383]]],[[[5592,8456],[5622,8444],[5642,8466],[5674,8464],[5750,8490],[5775,8490],[5784,8466],[5738,8440],[5700,8386],[5651,8368],[5633,8387],[5556,8396],[5550,8442],[5592,8456]]],[[[5556,8529],[5562,8477],[5533,8429],[5508,8441],[5538,8499],[5532,8535],[5550,8555],[5556,8529]]],[[[5644,8545],[5640,8524],[5574,8482],[5568,8530],[5585,8547],[5634,8562],[5644,8545]]],[[[5784,7914],[5744,7890],[5701,7878],[5651,7898],[5645,7921],[5609,7888],[5589,7900],[5586,7932],[5569,7882],[5539,7874],[5483,7893],[5488,7915],[5428,7987],[5431,8081],[5496,8054],[5431,8100],[5435,8199],[5470,8309],[5490,8329],[5538,8337],[5550,8353],[5626,8346],[5749,8316],[5803,8321],[5871,8343],[5965,8337],[5962,8323],[6036,8320],[6091,8310],[6106,8279],[6083,8247],[6060,8134],[6025,8103],[6031,8081],[5975,8045],[5989,8026],[5978,7989],[5947,8022],[5936,8012],[5976,7981],[5913,7956],[5889,7993],[5878,7935],[5849,7933],[5821,7958],[5827,7925],[5790,7942],[5784,7914]]],[[[6744,8044],[6712,7967],[6711,7913],[6680,7898],[6707,7877],[6707,7843],[6683,7774],[6652,7757],[6647,7681],[6580,7617],[6605,7586],[6586,7574],[6579,7518],[6535,7453],[6501,7434],[6479,7378],[6467,7310],[6404,7244],[6378,7190],[6357,7172],[6322,7114],[6301,7098],[6260,7101],[6000,6897],[6002,6892],[6049,6876],[6101,6878],[6163,6810],[6122,6787],[6140,6735],[6109,6718],[6122,6684],[6082,6664],[6092,6611],[6061,6614],[6032,6591],[6010,6528],[5919,6496],[5866,6463],[5860,6446],[5869,6373],[5816,6297],[5811,6270],[5833,6238],[5873,6212],[5863,6141],[5831,6052],[5811,6037],[5759,5933],[5706,5903],[5623,5794],[5595,5688],[5571,5648],[5279,5666],[4236,5731],[3859,5756],[3799,5781],[3774,5775],[3755,5809],[3698,5821],[3681,5870],[3627,5896],[3576,5941],[3549,5951],[3520,6040],[3531,6097],[3492,6148],[3460,6246],[3413,6323],[3392,6343],[3369,6407],[3320,6449],[3299,6520],[3346,6577],[3768,7499],[3870,7720],[3868,7752],[3840,7783],[3802,7766],[3770,7779],[3772,7813],[3698,7846],[3675,7880],[3606,7903],[3517,7941],[3469,7982],[3376,8039],[3312,8091],[3297,8143],[3245,8170],[3211,8210],[3214,8263],[3182,8285],[3177,8445],[3149,8748],[3170,8721],[3205,8717],[3230,8739],[3276,8735],[3277,8783],[3313,8797],[3328,8825],[3379,8805],[3413,8804],[3425,8843],[3479,8856],[3543,8857],[3580,8910],[3605,8929],[3633,8923],[3671,8944],[3697,8915],[3754,8902],[3800,8920],[3876,8918],[3973,8891],[4000,8906],[4002,8948],[3946,9030],[3975,9048],[3982,9082],[4056,9047],[4088,9057],[4146,9056],[4173,9081],[4264,9087],[4291,9061],[4320,9064],[4337,9011],[4315,8940],[4331,8874],[4434,8871],[4489,8842],[4515,8800],[4535,8805],[4567,8772],[4631,8776],[4660,8761],[4665,8727],[4693,8732],[4685,8703],[4699,8644],[4742,8599],[4784,8582],[4780,8490],[4804,8451],[4811,8398],[4839,8329],[4864,8333],[4919,8273],[4918,8228],[4947,8203],[4950,8140],[4983,8142],[4994,8086],[5079,8046],[5121,8062],[5116,8015],[5076,7993],[5040,8010],[4962,7971],[4904,7954],[4897,7939],[4976,7948],[5016,7962],[5025,7910],[5060,7934],[5118,7947],[5186,7994],[5298,8044],[5328,8076],[5364,8095],[5371,8123],[5423,8123],[5420,8089],[5385,8069],[5423,8041],[5424,7984],[5460,7935],[5469,7900],[5421,7847],[5456,7853],[5468,7882],[5528,7845],[5532,7810],[5573,7857],[5607,7851],[5621,7869],[5658,7875],[5687,7860],[5691,7814],[5705,7854],[5748,7849],[5777,7885],[5781,7865],[5836,7906],[5853,7891],[5828,7856],[5806,7775],[5776,7712],[5778,7683],[5738,7641],[5783,7652],[5809,7696],[5811,7724],[5838,7770],[5866,7841],[5896,7891],[5940,7938],[5961,7938],[5939,7886],[5983,7931],[6031,7997],[6061,7942],[6092,7925],[6075,7962],[6119,7973],[6069,7979],[6075,8026],[6115,8016],[6125,8052],[6081,8058],[6093,8082],[6155,8096],[6171,8132],[6167,8165],[6200,8198],[6221,8165],[6219,8206],[6260,8197],[6284,8232],[6323,8194],[6326,8221],[6351,8169],[6383,8168],[6360,8217],[6469,8194],[6468,8149],[6501,8184],[6519,8163],[6540,8184],[6573,8137],[6601,8140],[6599,8115],[6628,8136],[6634,8097],[6678,8097],[6720,8125],[6706,8063],[6742,8082],[6744,8044]]]]}},{"type":"Feature","id":"BR.SC","properties":{"hc-group":"admin1","hc-middle-x":0.73,"hc-middle-y":0.33,"hc-key":"br-sc","hc-a2":"SC","labelrank":"2","hasc":"BR.SC","alt-name":"Santa Catharina","woe-id":"2344867","subregion":null,"fips":"BR26","postal-code":"SC","name":"Santa Catarina","country":"Brazil","type-en":"State","region":null,"longitude":"-51.1586","woe-name":"Santa Catarina","latitude":"-27.0392","woe-label":"Santa Catarina, BR, Brazil","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5884,638],[5879,659],[5895,707],[5895,746],[5918,756],[5929,736],[5918,698],[5884,638]]],[[[5891,1027],[5862,1058],[5902,1097],[5916,1077],[5891,1027]]],[[[5896,1149],[5894,1100],[5855,1083],[5843,1128],[5848,1065],[5884,1023],[5868,990],[5862,945],[5887,928],[5876,911],[5876,837],[5899,831],[5905,806],[5875,804],[5886,770],[5862,733],[5878,700],[5860,686],[5877,626],[5851,529],[5817,454],[5815,486],[5796,494],[5799,458],[5817,443],[5807,420],[5776,411],[5674,338],[5621,283],[5580,230],[5522,268],[5492,255],[5497,224],[5469,245],[5471,269],[5495,297],[5511,294],[5526,336],[5526,379],[5567,425],[5590,432],[5578,468],[5547,474],[5478,467],[5465,477],[5366,501],[5330,563],[5308,572],[5304,600],[5273,626],[5257,658],[5221,674],[5166,730],[5142,730],[5115,756],[5086,744],[5056,752],[5028,799],[4988,817],[4975,803],[4938,812],[4922,832],[4859,817],[4817,848],[4791,833],[4772,866],[4707,840],[4716,861],[4693,874],[4661,859],[4660,841],[4617,852],[4576,849],[4608,929],[4600,979],[4605,1068],[4621,1100],[4672,1092],[4698,1105],[4756,1069],[4833,1077],[4876,1059],[4986,1044],[5034,1007],[5067,1001],[5160,1000],[5179,972],[5226,996],[5214,1047],[5224,1068],[5269,1099],[5312,1086],[5354,1097],[5377,1142],[5425,1153],[5460,1144],[5552,1153],[5640,1091],[5716,1121],[5763,1151],[5896,1149]]]]}},{"type":"Feature","id":"BR.BA","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.35,"hc-key":"br-ba","hc-a2":"BA","labelrank":"2","hasc":"BR.BA","alt-name":"Ba¡a","woe-id":"2344848","subregion":null,"fips":"BR05","postal-code":"BA","name":"Bahia","country":"Brazil","type-en":"State","region":null,"longitude":"-41.8027","woe-name":"Bahia","latitude":"-12.3651","woe-label":"Bahia, BR, Brazil","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8631,4546],[8615,4470],[8613,4516],[8597,4547],[8631,4546]]],[[[8195,3262],[8199,3323],[8130,3387],[8133,3413],[8100,3437],[8115,3473],[8114,3509],[8131,3566],[8147,3582],[8193,3576],[8211,3665],[8242,3669],[8266,3710],[8299,3731],[8323,3787],[8229,3877],[8166,3893],[8150,3888],[8115,3913],[8090,3909],[8042,3930],[7983,3903],[7938,3924],[7934,3987],[7821,4103],[7783,4088],[7743,4087],[7614,4165],[7601,4163],[7517,4241],[7444,4256],[7371,4217],[7314,4234],[7271,4258],[7268,4285],[7295,4345],[7283,4354],[7154,4379],[7087,4354],[7011,4308],[6998,4287],[6937,4255],[6904,4250],[6877,4219],[6838,4197],[6813,4199],[6768,4148],[6711,4149],[6670,4117],[6699,4190],[6687,4223],[6719,4271],[6707,4315],[6720,4366],[6666,4415],[6633,4504],[6631,4564],[6657,4633],[6682,4648],[6686,4675],[6662,4686],[6670,4739],[6688,4769],[6649,4804],[6671,4857],[6672,4885],[6630,4909],[6626,4991],[6661,5026],[6699,5045],[6678,5072],[6653,5070],[6655,5103],[6694,5119],[6700,5137],[6671,5154],[6607,5168],[6569,5220],[6599,5258],[6626,5316],[6664,5339],[6646,5374],[6706,5421],[6770,5452],[6799,5490],[6841,5489],[6876,5444],[6884,5407],[6917,5361],[6990,5326],[7062,5335],[7071,5356],[7131,5397],[7164,5407],[7219,5394],[7246,5405],[7282,5442],[7304,5447],[7365,5556],[7373,5622],[7362,5638],[7340,5728],[7372,5723],[7398,5753],[7441,5761],[7459,5729],[7513,5726],[7529,5738],[7583,5712],[7604,5686],[7631,5693],[7668,5680],[7680,5702],[7704,5697],[7755,5750],[7799,5752],[7829,5776],[7882,5761],[7915,5794],[7916,5837],[7981,5848],[8019,5910],[8077,5909],[8150,5864],[8147,5813],[8157,5780],[8197,5760],[8200,5724],[8180,5693],[8217,5682],[8278,5717],[8300,5718],[8317,5788],[8361,5786],[8423,5821],[8424,5862],[8481,5873],[8483,5909],[8563,5941],[8595,5932],[8612,5898],[8664,5880],[8680,5863],[8712,5868],[8752,5846],[8764,5809],[8801,5850],[8804,5813],[8831,5787],[8856,5799],[8876,5700],[8885,5676],[8935,5655],[8939,5640],[8924,5618],[8943,5540],[8990,5478],[8986,5414],[8970,5381],[8982,5321],[8929,5287],[8869,5301],[8855,5250],[8887,5211],[8897,5170],[8919,5148],[8910,5114],[8951,5088],[8965,5063],[9001,5051],[9050,5060],[9082,5071],[9062,5045],[8994,4910],[8876,4746],[8798,4667],[8745,4645],[8755,4675],[8751,4731],[8719,4738],[8694,4763],[8676,4711],[8653,4701],[8701,4690],[8725,4656],[8620,4583],[8619,4552],[8596,4555],[8610,4466],[8604,4420],[8569,4454],[8595,4408],[8579,4393],[8597,4374],[8616,4401],[8616,4371],[8594,4312],[8594,4284],[8565,4182],[8574,4141],[8572,4021],[8583,3882],[8596,3844],[8533,3679],[8504,3576],[8505,3548],[8477,3475],[8474,3349],[8484,3326],[8444,3275],[8381,3240],[8344,3190],[8328,3154],[8200,3253],[8195,3262]]]]}},{"type":"Feature","id":"BR.AP","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.58,"hc-key":"br-ap","hc-a2":"AP","labelrank":"2","hasc":"BR.AP","alt-name":null,"woe-id":"2344846","subregion":null,"fips":"BR03","postal-code":"AP","name":"Amapá","country":"Brazil","type-en":"State","region":null,"longitude":"-51.6842","woe-name":"Amapá","latitude":"1.41157","woe-label":"Amapa, BR, Brazil","type":"Estado"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5632,8641],[5624,8649],[5673,8680],[5623,8593],[5575,8590],[5589,8621],[5632,8641]]],[[[5524,8971],[5522,8990],[5565,8923],[5524,8905],[5506,8938],[5524,8971]]],[[[5121,8062],[5079,8046],[4994,8086],[4983,8142],[4950,8140],[4947,8203],[4918,8228],[4919,8273],[4864,8333],[4839,8329],[4811,8398],[4804,8451],[4780,8490],[4784,8582],[4742,8599],[4699,8644],[4685,8703],[4693,8732],[4665,8727],[4660,8761],[4631,8776],[4567,8772],[4535,8805],[4515,8800],[4489,8842],[4434,8871],[4331,8874],[4315,8940],[4337,9011],[4320,9064],[4340,9061],[4340,9027],[4379,9024],[4403,8996],[4499,8968],[4583,9023],[4667,9005],[4719,9034],[4750,9007],[4826,8986],[4849,9009],[4897,9037],[4940,9096],[4934,9114],[4995,9231],[4993,9251],[5030,9287],[5090,9386],[5096,9410],[5139,9455],[5153,9487],[5195,9511],[5205,9552],[5233,9521],[5215,9591],[5227,9615],[5263,9592],[5309,9538],[5321,9500],[5323,9395],[5339,9467],[5349,9460],[5346,9320],[5388,9166],[5399,9158],[5444,9043],[5462,8985],[5522,8887],[5601,8888],[5651,8869],[5677,8845],[5687,8760],[5676,8736],[5614,8714],[5674,8721],[5683,8706],[5605,8637],[5565,8610],[5522,8562],[5482,8486],[5432,8430],[5393,8426],[5354,8377],[5285,8357],[5303,8347],[5283,8323],[5249,8252],[5179,8175],[5171,8094],[5121,8062]]]]}},{"type":"Feature","id":"BR.MS","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.47,"hc-key":"br-ms","hc-a2":"MS","labelrank":"2","hasc":"BR.MS","alt-name":null,"woe-id":"2344853","subregion":null,"fips":"BR11","postal-code":"MS","name":"Mato Grosso do Sul","country":"Brazil","type-en":"State","region":null,"longitude":"-54.5502","woe-name":"Mato Grosso do Sul","latitude":"-20.6756","woe-label":"Mato Grosso do Sul, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[4517,1742],[4474,1713],[4428,1751],[4373,1781],[4296,1735],[4230,1721],[4180,1732],[4167,1799],[4145,1835],[4148,1898],[4143,1939],[4116,2003],[4109,2053],[4116,2106],[4087,2131],[4082,2171],[4052,2192],[3969,2201],[3938,2220],[3910,2257],[3887,2252],[3848,2204],[3835,2217],[3802,2195],[3706,2222],[3662,2214],[3602,2222],[3591,2242],[3543,2230],[3505,2259],[3520,2296],[3512,2311],[3526,2356],[3514,2374],[3515,2422],[3534,2456],[3533,2538],[3541,2561],[3516,2574],[3530,2590],[3508,2605],[3529,2620],[3497,2633],[3493,2705],[3468,2720],[3447,2778],[3524,2831],[3453,2899],[3537,3088],[3556,3092],[3538,3129],[3595,3332],[3545,3425],[3546,3456],[3579,3434],[3628,3422],[3704,3445],[3744,3481],[3747,3504],[3777,3530],[3802,3576],[3916,3587],[3937,3606],[3976,3615],[4060,3570],[4108,3559],[4128,3529],[4222,3479],[4297,3489],[4351,3526],[4396,3527],[4424,3509],[4432,3483],[4498,3496],[4549,3543],[4584,3585],[4621,3599],[4603,3492],[4574,3479],[4539,3420],[4609,3390],[4720,3393],[4787,3387],[4786,3311],[4804,3284],[4825,3296],[4859,3283],[4829,3215],[4835,3203],[4902,3191],[4934,3195],[4974,3164],[4993,3165],[5049,3128],[5158,3075],[5220,3063],[5245,3039],[5290,3030],[5336,2977],[5317,2899],[5324,2802],[5286,2749],[5236,2731],[5158,2639],[5154,2590],[5089,2509],[5091,2461],[5028,2404],[5044,2372],[5015,2352],[4973,2297],[4958,2253],[4919,2219],[4878,2200],[4835,2165],[4803,2154],[4751,2087],[4670,2052],[4640,2027],[4628,1976],[4607,1923],[4550,1887],[4519,1778],[4517,1742]]]}},{"type":"Feature","id":"BR.MG","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.45,"hc-key":"br-mg","hc-a2":"MG","labelrank":"2","hasc":"BR.MG","alt-name":"Minas|Minas Geraes","woe-id":"2344856","subregion":null,"fips":"BR15","postal-code":"MG","name":"Minas Gerais","country":"Brazil","type-en":"State","region":null,"longitude":"-44.4808","woe-name":"Minas Gerais","latitude":"-18.5895","woe-label":"Minas Gerais, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5324,2802],[5317,2899],[5336,2977],[5361,2973],[5368,3026],[5419,3076],[5447,3076],[5460,3125],[5508,3184],[5596,3210],[5648,3207],[5730,3239],[5763,3203],[5825,3262],[5874,3283],[6068,3268],[6091,3254],[6151,3241],[6218,3274],[6246,3305],[6320,3343],[6303,3394],[6326,3452],[6322,3486],[6258,3515],[6268,3549],[6364,3644],[6336,3733],[6288,3782],[6318,3835],[6332,3907],[6332,3907],[6332,3907],[6333,3907],[6332,3907],[6352,3909],[6380,3939],[6394,3934],[6460,3958],[6453,4029],[6436,4074],[6459,4103],[6440,4130],[6452,4180],[6494,4187],[6520,4172],[6544,4180],[6538,4248],[6556,4271],[6590,4253],[6613,4214],[6672,4208],[6687,4223],[6699,4190],[6670,4117],[6711,4149],[6768,4148],[6813,4199],[6838,4197],[6877,4219],[6904,4250],[6937,4255],[6998,4287],[7011,4308],[7087,4354],[7154,4379],[7283,4354],[7295,4345],[7268,4285],[7271,4258],[7314,4234],[7371,4217],[7444,4256],[7517,4241],[7601,4163],[7614,4165],[7743,4087],[7783,4088],[7821,4103],[7934,3987],[7938,3924],[7983,3903],[8042,3930],[8090,3909],[8115,3913],[8150,3888],[8166,3893],[8229,3877],[8323,3787],[8299,3731],[8266,3710],[8242,3669],[8211,3665],[8193,3576],[8147,3582],[8131,3566],[8114,3509],[8115,3473],[8100,3437],[8133,3413],[8130,3387],[8199,3323],[8195,3262],[8138,3291],[8073,3278],[8008,3278],[8041,3241],[8005,3241],[7965,3222],[7941,3190],[7975,3143],[7964,3091],[7990,3074],[7986,3042],[7905,3034],[7939,3022],[7950,2980],[7976,2946],[7977,2903],[7965,2854],[7909,2805],[7897,2747],[7864,2725],[7843,2660],[7832,2653],[7751,2661],[7712,2618],[7726,2601],[7717,2539],[7700,2503],[7672,2468],[7637,2467],[7596,2352],[7575,2334],[7551,2271],[7573,2247],[7371,2174],[7292,2186],[7260,2173],[7170,2177],[7095,2151],[7062,2132],[7004,2134],[6945,2106],[6901,2098],[6842,2085],[6748,2039],[6717,2040],[6688,2059],[6646,2030],[6660,2002],[6630,1986],[6617,1998],[6556,1982],[6501,1997],[6501,2024],[6475,2044],[6499,2085],[6435,2122],[6421,2147],[6449,2199],[6424,2219],[6446,2241],[6436,2289],[6485,2368],[6482,2386],[6404,2418],[6355,2408],[6343,2466],[6326,2485],[6322,2527],[6303,2547],[6307,2576],[6336,2624],[6326,2654],[6290,2684],[6308,2744],[6256,2794],[6249,2816],[6200,2798],[6185,2814],[6142,2807],[6128,2777],[6112,2802],[6089,2768],[6051,2780],[5887,2771],[5875,2745],[5879,2704],[5852,2706],[5853,2754],[5835,2778],[5806,2737],[5788,2738],[5770,2774],[5776,2829],[5747,2826],[5705,2842],[5617,2843],[5497,2863],[5475,2885],[5440,2882],[5414,2852],[5357,2831],[5324,2802]]]}},{"type":"Feature","id":"BR.GO","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.54,"hc-key":"br-go","hc-a2":"GO","labelrank":"2","hasc":"BR.GO","alt-name":"Goiáz|Goyáz","woe-id":"2344852","subregion":null,"fips":"BR29","postal-code":"GO","name":"Goiás","country":"Brazil","type-en":"State","region":null,"longitude":"-49.5786","woe-name":"Goiás","latitude":"-15.863","woe-label":"Goias, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[6318,3835],[6288,3782],[6336,3733],[6364,3644],[6268,3549],[6258,3515],[6322,3486],[6326,3452],[6303,3394],[6320,3343],[6246,3305],[6218,3274],[6151,3241],[6091,3254],[6068,3268],[5874,3283],[5825,3262],[5763,3203],[5730,3239],[5648,3207],[5596,3210],[5508,3184],[5460,3125],[5447,3076],[5419,3076],[5368,3026],[5361,2973],[5336,2977],[5290,3030],[5245,3039],[5220,3063],[5158,3075],[5049,3128],[4993,3165],[4974,3164],[4934,3195],[4902,3191],[4835,3203],[4829,3215],[4859,3283],[4825,3296],[4804,3284],[4786,3311],[4787,3387],[4738,3513],[4749,3591],[4791,3653],[4798,3706],[4855,3740],[4902,3799],[4907,3828],[4893,3865],[4929,3883],[4928,3899],[4985,3935],[5006,3969],[5105,3999],[5161,4116],[5167,4163],[5206,4203],[5259,4232],[5298,4226],[5318,4251],[5355,4353],[5348,4386],[5369,4463],[5387,4468],[5387,4576],[5405,4586],[5416,4623],[5442,4656],[5468,4709],[5464,4751],[5489,4786],[5493,4816],[5504,4856],[5530,4899],[5586,4938],[5589,4916],[5550,4831],[5559,4790],[5709,4720],[5790,4699],[5815,4767],[5860,4840],[5893,4862],[5898,4836],[5944,4800],[5958,4738],[5955,4667],[5980,4670],[5988,4714],[6067,4710],[6129,4740],[6121,4711],[6252,4659],[6242,4716],[6265,4726],[6291,4674],[6414,4727],[6486,4732],[6536,4771],[6649,4804],[6688,4769],[6670,4739],[6662,4686],[6686,4675],[6682,4648],[6657,4633],[6631,4564],[6633,4504],[6666,4415],[6720,4366],[6707,4315],[6719,4271],[6687,4223],[6672,4208],[6613,4214],[6590,4253],[6556,4271],[6538,4248],[6544,4180],[6520,4172],[6494,4187],[6452,4180],[6440,4130],[6459,4103],[6436,4074],[6453,4029],[6460,3958],[6394,3934],[6380,3939],[6352,3909],[6332,3907],[6318,3923],[6335,4033],[6305,4059],[6102,4067],[6084,4011],[6093,3999],[6072,3971],[6097,3914],[6332,3907],[6332,3907],[6332,3907],[6318,3835]]]}},{"type":"Feature","id":"BR.RS","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.36,"hc-key":"br-rs","hc-a2":"RS","labelrank":"2","hasc":"BR.RS","alt-name":null,"woe-id":"2344864","subregion":null,"fips":"BR23","postal-code":"RS","name":"Rio Grande do Sul","country":"Brazil","type-en":"State","region":null,"longitude":"-53.656","woe-name":"Rio Grande do Sul","latitude":"-29.7277","woe-label":"Rio Grande do Sul, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[5580,230],[5555,198],[5494,96],[5423,-82],[5321,-241],[5215,-359],[5115,-439],[5043,-481],[4989,-539],[5007,-485],[4990,-459],[4999,-445],[5029,-463],[5081,-443],[5152,-368],[5193,-354],[5209,-325],[5217,-244],[5252,-246],[5265,-205],[5320,-170],[5334,-129],[5334,-49],[5353,-86],[5371,-41],[5356,-5],[5339,-31],[5284,-35],[5279,-70],[5251,-53],[5256,-26],[5204,4],[5193,51],[5181,-9],[5214,-47],[5187,-120],[5165,-129],[5169,-191],[5146,-193],[5138,-227],[5148,-246],[5104,-260],[5100,-294],[5032,-307],[5013,-340],[5010,-401],[5003,-379],[4989,-413],[4963,-422],[4955,-465],[4975,-473],[4954,-489],[4959,-522],[4991,-508],[4988,-545],[4949,-576],[4919,-636],[4895,-720],[4859,-803],[4812,-864],[4707,-961],[4681,-979],[4643,-953],[4666,-918],[4662,-838],[4695,-790],[4710,-800],[4733,-762],[4742,-718],[4772,-725],[4799,-752],[4833,-735],[4868,-658],[4868,-634],[4841,-588],[4854,-546],[4837,-551],[4813,-593],[4825,-603],[4775,-634],[4771,-657],[4731,-679],[4674,-652],[4619,-589],[4614,-558],[4590,-508],[4520,-461],[4504,-469],[4426,-404],[4421,-379],[4395,-348],[4341,-338],[4291,-293],[4277,-309],[4235,-282],[4212,-234],[4155,-177],[4090,-242],[4055,-244],[4054,-165],[3999,-101],[3965,-80],[3901,-15],[3852,24],[3793,22],[3762,-30],[3684,-28],[3665,-3],[3690,8],[3732,55],[3739,101],[3786,120],[3885,244],[3898,287],[3947,319],[3952,346],[3974,366],[3977,395],[4002,405],[4041,450],[4043,475],[4070,485],[4084,517],[4117,501],[4127,523],[4100,549],[4141,582],[4181,593],[4212,639],[4246,656],[4283,660],[4269,677],[4311,689],[4314,720],[4404,759],[4450,785],[4465,775],[4492,827],[4514,815],[4545,852],[4576,849],[4617,852],[4660,841],[4661,859],[4693,874],[4716,861],[4707,840],[4772,866],[4791,833],[4817,848],[4859,817],[4922,832],[4938,812],[4975,803],[4988,817],[5028,799],[5056,752],[5086,744],[5115,756],[5142,730],[5166,730],[5221,674],[5257,658],[5273,626],[5304,600],[5308,572],[5330,563],[5366,501],[5465,477],[5478,467],[5547,474],[5578,468],[5590,432],[5567,425],[5526,379],[5526,336],[5511,294],[5495,297],[5471,269],[5469,245],[5497,224],[5492,255],[5522,268],[5580,230]]]}},{"type":"Feature","id":"BR.TO","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.58,"hc-key":"br-to","hc-a2":"TO","labelrank":"2","hasc":"BR.TO","alt-name":null,"woe-id":"2344870","subregion":null,"fips":"BR31","postal-code":"TO","name":"Tocantins","country":"Brazil","type-en":"State","region":null,"longitude":"-48.2502","woe-name":"Tocantins","latitude":"-10.223","woe-label":"Tocantins, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[6747,5495],[6780,5490],[6799,5490],[6770,5452],[6706,5421],[6646,5374],[6664,5339],[6626,5316],[6599,5258],[6569,5220],[6607,5168],[6671,5154],[6700,5137],[6694,5119],[6655,5103],[6653,5070],[6678,5072],[6699,5045],[6661,5026],[6626,4991],[6630,4909],[6672,4885],[6671,4857],[6649,4804],[6536,4771],[6486,4732],[6414,4727],[6291,4674],[6265,4726],[6242,4716],[6252,4659],[6121,4711],[6129,4740],[6067,4710],[5988,4714],[5980,4670],[5955,4667],[5958,4738],[5944,4800],[5898,4836],[5893,4862],[5860,4840],[5815,4767],[5790,4699],[5709,4720],[5559,4790],[5550,4831],[5589,4916],[5586,4938],[5530,4899],[5504,4856],[5493,4816],[5463,4826],[5444,4876],[5460,4931],[5444,4998],[5442,5051],[5451,5085],[5436,5131],[5452,5160],[5427,5190],[5464,5320],[5458,5346],[5469,5424],[5491,5451],[5517,5511],[5531,5576],[5552,5599],[5571,5648],[5595,5688],[5623,5794],[5706,5903],[5759,5933],[5811,6037],[5831,6052],[5863,6141],[5873,6212],[5833,6238],[5811,6270],[5816,6297],[5869,6373],[5860,6446],[5866,6463],[5919,6496],[6010,6528],[6032,6591],[6061,6614],[6092,6611],[6082,6664],[6122,6684],[6109,6718],[6140,6735],[6122,6787],[6163,6810],[6101,6878],[6049,6876],[6002,6892],[6034,6899],[6065,6939],[6110,6944],[6161,6918],[6204,6924],[6241,6911],[6248,6882],[6280,6879],[6331,6854],[6350,6824],[6346,6781],[6364,6745],[6360,6680],[6374,6643],[6364,6575],[6341,6514],[6333,6428],[6297,6386],[6269,6377],[6295,6345],[6332,6352],[6335,6304],[6376,6246],[6429,6190],[6466,6137],[6506,6160],[6589,6173],[6611,6156],[6618,6127],[6595,6058],[6606,6035],[6526,6026],[6500,5986],[6492,5916],[6443,5860],[6481,5850],[6507,5822],[6511,5783],[6531,5754],[6584,5728],[6590,5712],[6552,5659],[6596,5627],[6605,5586],[6638,5539],[6709,5527],[6747,5495]]]}},{"type":"Feature","id":"BR.PI","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.66,"hc-key":"br-pi","hc-a2":"PI","labelrank":"2","hasc":"BR.PI","alt-name":"Piauhy","woe-id":"2344861","subregion":null,"fips":"BR20","postal-code":"PI","name":"Piauí","country":"Brazil","type-en":"State","region":null,"longitude":"-43.1974","woe-name":"Piauí","latitude":"-8.086980000000001","woe-label":"Piaui, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[6799,5490],[6780,5490],[6747,5495],[6746,5534],[6773,5583],[6782,5714],[6794,5734],[6768,5772],[6766,5813],[6746,5884],[6762,5923],[6792,5947],[6817,6021],[6863,6099],[6874,6178],[6894,6232],[6943,6264],[7019,6281],[7077,6316],[7106,6305],[7180,6374],[7220,6384],[7234,6413],[7296,6479],[7397,6495],[7456,6454],[7529,6477],[7590,6479],[7608,6500],[7625,6552],[7629,6617],[7597,6636],[7567,6674],[7562,6796],[7577,6803],[7639,6882],[7647,6925],[7635,6989],[7608,7034],[7609,7067],[7634,7112],[7610,7143],[7600,7186],[7672,7274],[7692,7312],[7689,7337],[7739,7407],[7751,7399],[7818,7411],[7878,7467],[7924,7523],[7924,7599],[7934,7605],[7971,7566],[8063,7553],[8089,7527],[8087,7509],[8039,7440],[8032,7407],[8057,7330],[8076,7301],[8090,7234],[8120,7196],[8133,7153],[8086,7094],[8098,6986],[8132,6914],[8128,6874],[8161,6842],[8174,6673],[8196,6603],[8203,6535],[8219,6487],[8283,6464],[8299,6442],[8251,6334],[8261,6278],[8218,6268],[8236,6208],[8224,6174],[8255,6152],[8253,6096],[8240,6070],[8195,6037],[8145,5985],[8119,5989],[8064,5930],[8019,5910],[7981,5848],[7916,5837],[7915,5794],[7882,5761],[7829,5776],[7799,5752],[7755,5750],[7704,5697],[7680,5702],[7668,5680],[7631,5693],[7604,5686],[7583,5712],[7529,5738],[7513,5726],[7459,5729],[7441,5761],[7398,5753],[7372,5723],[7340,5728],[7362,5638],[7373,5622],[7365,5556],[7304,5447],[7282,5442],[7246,5405],[7219,5394],[7164,5407],[7131,5397],[7071,5356],[7062,5335],[6990,5326],[6917,5361],[6884,5407],[6876,5444],[6841,5489],[6799,5490]]]}},{"type":"Feature","id":"BR.AL","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.61,"hc-key":"br-al","hc-a2":"AL","labelrank":"2","hasc":"BR.AL","alt-name":null,"woe-id":"2344845","subregion":null,"fips":"BR02","postal-code":"AL","name":"Alagoas","country":"Brazil","type-en":"State","region":null,"longitude":"-36.6917","woe-name":"Alagoas","latitude":"-9.773910000000001","woe-label":"Alagoas, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[9731,5780],[9683,5700],[9638,5658],[9569,5567],[9542,5594],[9538,5551],[9469,5458],[9407,5408],[9361,5337],[9347,5365],[9319,5366],[9306,5412],[9288,5407],[9251,5426],[9222,5460],[9221,5486],[9148,5523],[9127,5551],[9054,5577],[8939,5640],[8935,5655],[8885,5676],[8876,5700],[8917,5740],[8951,5750],[8996,5796],[9015,5829],[9032,5794],[9078,5802],[9167,5712],[9232,5676],[9263,5701],[9332,5689],[9397,5713],[9461,5764],[9493,5797],[9552,5801],[9573,5786],[9643,5807],[9664,5792],[9731,5780]]]}},{"type":"Feature","id":"BR.PB","properties":{"hc-group":"admin1","hc-middle-x":0.73,"hc-middle-y":0.46,"hc-key":"br-pb","hc-a2":"PB","labelrank":"2","hasc":"BR.PB","alt-name":"Parahyba","woe-id":"2344858","subregion":null,"fips":"BR17","postal-code":"PB","name":"Paraíba","country":"Brazil","type-en":"State","region":null,"longitude":"-36.2726","woe-name":"Paraíba","latitude":"-7.34234","woe-label":"Paraiba, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[9813,6481],[9809,6448],[9825,6368],[9837,6360],[9819,6297],[9842,6337],[9851,6288],[9841,6176],[9820,6176],[9774,6218],[9718,6228],[9688,6207],[9654,6209],[9635,6152],[9551,6125],[9547,6111],[9393,6112],[9386,6088],[9352,6085],[9326,6061],[9334,6040],[9290,6002],[9239,5986],[9195,6022],[9191,6076],[9138,6072],[9189,6139],[9183,6194],[9234,6211],[9234,6241],[9170,6282],[9119,6262],[9086,6225],[9042,6206],[8965,6145],[8917,6147],[8887,6125],[8862,6169],[8814,6152],[8768,6196],[8817,6288],[8778,6328],[8766,6405],[8798,6442],[8790,6461],[8827,6550],[8893,6512],[8935,6506],[8956,6527],[9016,6555],[9041,6602],[9180,6642],[9203,6614],[9140,6537],[9129,6501],[9107,6491],[9104,6455],[9153,6448],[9184,6410],[9250,6442],[9304,6422],[9307,6375],[9323,6361],[9362,6374],[9384,6415],[9376,6458],[9401,6461],[9383,6503],[9390,6533],[9421,6553],[9446,6552],[9456,6520],[9546,6502],[9618,6511],[9674,6497],[9717,6477],[9789,6472],[9813,6481]]]}},{"type":"Feature","id":"BR.CE","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.43,"hc-key":"br-ce","hc-a2":"CE","labelrank":"2","hasc":"BR.CE","alt-name":null,"woe-id":"2344849","subregion":null,"fips":"BR06","postal-code":"CE","name":"Ceará","country":"Brazil","type-en":"State","region":null,"longitude":"-39.3429","woe-name":"Ceará","latitude":"-5.37602","woe-label":"Ceara, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[8827,6550],[8790,6461],[8798,6442],[8766,6405],[8778,6328],[8817,6288],[8768,6196],[8734,6184],[8690,6133],[8661,6132],[8652,6162],[8615,6184],[8588,6223],[8537,6245],[8505,6275],[8452,6284],[8392,6269],[8261,6278],[8251,6334],[8299,6442],[8283,6464],[8219,6487],[8203,6535],[8196,6603],[8174,6673],[8161,6842],[8128,6874],[8132,6914],[8098,6986],[8086,7094],[8133,7153],[8120,7196],[8090,7234],[8076,7301],[8057,7330],[8032,7407],[8039,7440],[8087,7509],[8089,7527],[8083,7565],[8120,7563],[8276,7577],[8299,7589],[8442,7569],[8519,7514],[8543,7514],[8580,7483],[8615,7471],[8692,7415],[8718,7409],[8737,7377],[8767,7365],[8807,7327],[8858,7320],[8885,7270],[8920,7243],[8959,7186],[9028,7122],[9051,7115],[9067,7080],[9095,7053],[9173,7026],[9197,6987],[9111,6960],[9060,6923],[9003,6809],[8965,6766],[8941,6691],[8892,6636],[8860,6641],[8812,6584],[8804,6546],[8827,6550]]]}},{"type":"Feature","id":"BR.SE","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.73,"hc-key":"br-se","hc-a2":"SE","labelrank":"2","hasc":"BR.SE","alt-name":null,"woe-id":"2344869","subregion":null,"fips":"BR28","postal-code":"SE","name":"Sergipe","country":"Brazil","type-en":"State","region":null,"longitude":"-37.3836","woe-name":"Sergipe","latitude":"-10.5918","woe-label":"Sergipe, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[9361,5337],[9314,5325],[9221,5266],[9180,5217],[9145,5150],[9114,5126],[9097,5090],[9066,5092],[9050,5060],[9001,5051],[8965,5063],[8951,5088],[8910,5114],[8919,5148],[8897,5170],[8887,5211],[8855,5250],[8869,5301],[8929,5287],[8982,5321],[8970,5381],[8986,5414],[8990,5478],[8943,5540],[8924,5618],[8939,5640],[9054,5577],[9127,5551],[9148,5523],[9221,5486],[9222,5460],[9251,5426],[9288,5407],[9306,5412],[9319,5366],[9347,5365],[9361,5337]]]}},{"type":"Feature","id":"BR.RR","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.51,"hc-key":"br-rr","hc-a2":"RR","labelrank":"2","hasc":"BR.RR","alt-name":"Rio Branco","woe-id":"2344866","subregion":null,"fips":"BR25","postal-code":"RR","name":"Roraima","country":"Brazil","type-en":"State","region":null,"longitude":"-61.3325","woe-name":"Roraima","latitude":"1.93803","woe-label":"Roraima, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[1919,9011],[1920,9063],[1796,9066],[1736,9078],[1750,9144],[1720,9212],[1688,9262],[1683,9345],[1695,9395],[1662,9432],[1605,9469],[1569,9510],[1528,9582],[1547,9592],[1589,9544],[1652,9552],[1719,9533],[1735,9483],[1754,9475],[1788,9494],[1858,9489],[1889,9466],[1913,9497],[1952,9484],[2031,9392],[2049,9382],[2087,9391],[2100,9409],[2090,9476],[2097,9510],[2154,9514],[2161,9539],[2203,9552],[2256,9529],[2300,9547],[2329,9543],[2389,9572],[2431,9570],[2462,9618],[2508,9625],[2507,9647],[2547,9637],[2586,9644],[2617,9695],[2656,9710],[2698,9750],[2702,9777],[2682,9837],[2742,9826],[2810,9851],[2874,9800],[2859,9700],[2826,9641],[2883,9638],[2954,9603],[2943,9546],[2997,9477],[2955,9414],[2911,9388],[2915,9320],[2876,9237],[2864,9133],[2890,9068],[2891,9040],[2936,9013],[2933,8898],[2962,8895],[2952,8874],[2982,8864],[3074,8766],[3149,8748],[3177,8445],[2927,8447],[2855,8445],[2827,8419],[2776,8317],[2753,8238],[2774,8210],[2768,8186],[2732,8176],[2719,8151],[2657,8146],[2635,8191],[2603,8228],[2553,8245],[2455,8204],[2435,8179],[2422,8118],[2427,8097],[2411,8026],[2416,7986],[2372,8002],[2339,8000],[2297,8062],[2247,8090],[2187,8151],[2163,8166],[2171,8188],[2199,8182],[2217,8203],[2201,8252],[2201,8287],[2171,8320],[2143,8387],[2158,8409],[2146,8432],[2156,8503],[2169,8534],[2155,8588],[2180,8608],[2131,8779],[2086,8832],[2106,8870],[2108,8929],[2069,8949],[2026,8950],[1986,8994],[1942,8990],[1919,9011]]]}},{"type":"Feature","id":"BR.PE","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.52,"hc-key":"br-pe","hc-a2":"PE","labelrank":"2","hasc":"BR.PE","alt-name":"Pernambouc","woe-id":"2344860","subregion":null,"fips":"BR30","postal-code":"PE","name":"Pernambuco","country":"Brazil","type-en":"State","region":null,"longitude":"-37.2958","woe-name":"Pernambuco","latitude":"-8.47283","woe-label":"Pernambuco, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[9731,5780],[9664,5792],[9643,5807],[9573,5786],[9552,5801],[9493,5797],[9461,5764],[9397,5713],[9332,5689],[9263,5701],[9232,5676],[9167,5712],[9078,5802],[9032,5794],[9015,5829],[8996,5796],[8951,5750],[8917,5740],[8876,5700],[8856,5799],[8831,5787],[8804,5813],[8801,5850],[8764,5809],[8752,5846],[8712,5868],[8680,5863],[8664,5880],[8612,5898],[8595,5932],[8563,5941],[8483,5909],[8481,5873],[8424,5862],[8423,5821],[8361,5786],[8317,5788],[8300,5718],[8278,5717],[8217,5682],[8180,5693],[8200,5724],[8197,5760],[8157,5780],[8147,5813],[8150,5864],[8077,5909],[8019,5910],[8064,5930],[8119,5989],[8145,5985],[8195,6037],[8240,6070],[8253,6096],[8255,6152],[8224,6174],[8236,6208],[8218,6268],[8261,6278],[8392,6269],[8452,6284],[8505,6275],[8537,6245],[8588,6223],[8615,6184],[8652,6162],[8661,6132],[8690,6133],[8734,6184],[8768,6196],[8814,6152],[8862,6169],[8887,6125],[8917,6147],[8965,6145],[9042,6206],[9086,6225],[9119,6262],[9170,6282],[9234,6241],[9234,6211],[9183,6194],[9189,6139],[9138,6072],[9191,6076],[9195,6022],[9239,5986],[9290,6002],[9334,6040],[9326,6061],[9352,6085],[9386,6088],[9393,6112],[9547,6111],[9551,6125],[9635,6152],[9654,6209],[9688,6207],[9718,6228],[9774,6218],[9820,6176],[9843,6152],[9829,6094],[9838,6069],[9800,5973],[9796,5941],[9738,5811],[9731,5780]]]}},{"type":"Feature","id":"BR.PR","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.5,"hc-key":"br-pr","hc-a2":"PR","labelrank":"2","hasc":"BR.PR","alt-name":null,"woe-id":"2344859","subregion":null,"fips":"BR18","postal-code":"PR","name":"Paraná","country":"Brazil","type-en":"State","region":null,"longitude":"-51.3228","woe-name":"Paraná","latitude":"-24.6618","woe-label":"Parana, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[4621,1100],[4595,1164],[4580,1180],[4577,1225],[4559,1275],[4505,1297],[4509,1311],[4435,1286],[4420,1271],[4385,1290],[4383,1330],[4431,1347],[4422,1367],[4494,1386],[4441,1393],[4440,1413],[4465,1435],[4436,1448],[4442,1490],[4465,1474],[4453,1505],[4467,1527],[4499,1528],[4469,1546],[4465,1585],[4479,1646],[4461,1682],[4474,1713],[4517,1742],[4519,1778],[4550,1887],[4607,1923],[4628,1976],[4640,2027],[4670,2052],[4751,2087],[4808,2123],[4996,2101],[5035,2135],[5084,2109],[5168,2087],[5218,2096],[5280,2062],[5339,2046],[5363,2012],[5403,2017],[5490,2006],[5572,2015],[5587,1980],[5633,1960],[5655,1916],[5659,1875],[5649,1848],[5673,1790],[5659,1748],[5706,1685],[5750,1613],[5727,1560],[5730,1522],[5782,1514],[5798,1529],[5860,1509],[5902,1512],[5934,1492],[5919,1475],[5910,1406],[5924,1398],[5950,1432],[5996,1415],[6013,1356],[6043,1353],[6029,1332],[5996,1291],[5955,1274],[5969,1356],[5958,1335],[5936,1352],[5945,1307],[5932,1290],[5888,1299],[5863,1322],[5892,1275],[5916,1279],[5956,1261],[5937,1248],[5896,1149],[5763,1151],[5716,1121],[5640,1091],[5552,1153],[5460,1144],[5425,1153],[5377,1142],[5354,1097],[5312,1086],[5269,1099],[5224,1068],[5214,1047],[5226,996],[5179,972],[5160,1000],[5067,1001],[5034,1007],[4986,1044],[4876,1059],[4833,1077],[4756,1069],[4698,1105],[4672,1092],[4621,1100]]]}},{"type":"Feature","id":"BR.ES","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.81,"hc-key":"br-es","hc-a2":"ES","labelrank":"2","hasc":"BR.ES","alt-name":"Espiritu Santo","woe-id":"2344851","subregion":null,"fips":"BR08","postal-code":"ES","name":"Espírito Santo","country":"Brazil","type-en":"State","region":null,"longitude":"-40.5436","woe-name":"Espírito Santo","latitude":"-19.6916","woe-label":"Espirito Santo, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[7700,2503],[7717,2539],[7726,2601],[7712,2618],[7751,2661],[7832,2653],[7843,2660],[7864,2725],[7897,2747],[7909,2805],[7965,2854],[7977,2903],[7976,2946],[7950,2980],[7939,3022],[7905,3034],[7986,3042],[7990,3074],[7964,3091],[7975,3143],[7941,3190],[7965,3222],[8005,3241],[8041,3241],[8008,3278],[8073,3278],[8138,3291],[8195,3262],[8200,3253],[8328,3154],[8301,3053],[8297,2991],[8301,2894],[8294,2844],[8255,2778],[8203,2752],[8156,2676],[8134,2611],[8102,2626],[8101,2601],[8129,2599],[8101,2550],[8021,2460],[7994,2461],[7968,2408],[7923,2344],[7898,2363],[7846,2362],[7802,2375],[7733,2406],[7731,2488],[7700,2503]]]}},{"type":"Feature","id":"BR.RJ","properties":{"hc-group":"admin1","hc-middle-x":0.72,"hc-middle-y":0.56,"hc-key":"br-rj","hc-a2":"RJ","labelrank":"2","hasc":"BR.RJ","alt-name":null,"woe-id":"2344862","subregion":null,"fips":"BR21","postal-code":"RJ","name":"Rio de Janeiro","country":"Brazil","type-en":"State","region":null,"longitude":"-43.1152","woe-name":"Rio de Janeiro","latitude":"-22.4049","woe-label":"Rio de Janeiro, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[6911,1831],[6879,1874],[6895,1893],[6900,1934],[6985,1968],[7037,1973],[7067,2005],[7056,2036],[6972,2033],[6948,2041],[6916,2092],[6901,2098],[6945,2106],[7004,2134],[7062,2132],[7095,2151],[7170,2177],[7260,2173],[7292,2186],[7371,2174],[7573,2247],[7551,2271],[7575,2334],[7596,2352],[7637,2467],[7672,2468],[7700,2503],[7731,2488],[7733,2406],[7802,2375],[7846,2362],[7898,2363],[7923,2344],[7921,2319],[7890,2276],[7907,2154],[7898,2136],[7831,2104],[7719,2074],[7636,2009],[7625,1963],[7649,1938],[7623,1928],[7603,1893],[7458,1909],[7439,1902],[7353,1907],[7329,1931],[7356,1963],[7348,1995],[7296,1975],[7321,1932],[7304,1905],[7101,1892],[7205,1908],[7141,1941],[7114,1938],[7044,1900],[7080,1871],[7017,1861],[7007,1877],[7042,1902],[7042,1922],[6992,1926],[6922,1899],[6919,1869],[6968,1850],[6948,1828],[6911,1831]]]}},{"type":"Feature","id":"BR.RN","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.53,"hc-key":"br-rn","hc-a2":"RN","labelrank":"2","hasc":"BR.RN","alt-name":null,"woe-id":"2344863","subregion":null,"fips":"BR22","postal-code":"RN","name":"Rio Grande do Norte","country":"Brazil","type-en":"State","region":null,"longitude":"-36.5472","woe-name":"Rio Grande do Norte","latitude":"-5.66157","woe-label":"Rio Grande do Norte, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[8827,6550],[8804,6546],[8812,6584],[8860,6641],[8892,6636],[8941,6691],[8965,6766],[9003,6809],[9060,6923],[9111,6960],[9197,6987],[9224,6957],[9290,6953],[9319,6919],[9382,6897],[9421,6908],[9502,6902],[9539,6915],[9674,6883],[9698,6862],[9740,6782],[9767,6653],[9778,6631],[9780,6575],[9795,6560],[9813,6481],[9789,6472],[9717,6477],[9674,6497],[9618,6511],[9546,6502],[9456,6520],[9446,6552],[9421,6553],[9390,6533],[9383,6503],[9401,6461],[9376,6458],[9384,6415],[9362,6374],[9323,6361],[9307,6375],[9304,6422],[9250,6442],[9184,6410],[9153,6448],[9104,6455],[9107,6491],[9129,6501],[9140,6537],[9203,6614],[9180,6642],[9041,6602],[9016,6555],[8956,6527],[8935,6506],[8893,6512],[8827,6550]]]}},{"type":"Feature","id":"BR.AM","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.56,"hc-key":"br-am","hc-a2":"AM","labelrank":"2","hasc":"BR.AM","alt-name":"Amazone","woe-id":"2344847","subregion":null,"fips":"BR04","postal-code":"AM","name":"Amazonas","country":"Brazil","type-en":"State","region":null,"longitude":"-63.7853","woe-name":"Amazonas","latitude":"-4.21774","woe-label":"Amazonas, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[1919,9011],[1942,8990],[1986,8994],[2026,8950],[2069,8949],[2108,8929],[2106,8870],[2086,8832],[2131,8779],[2180,8608],[2155,8588],[2169,8534],[2156,8503],[2146,8432],[2158,8409],[2143,8387],[2171,8320],[2201,8287],[2201,8252],[2217,8203],[2199,8182],[2171,8188],[2163,8166],[2187,8151],[2247,8090],[2297,8062],[2339,8000],[2372,8002],[2416,7986],[2411,8026],[2427,8097],[2422,8118],[2435,8179],[2455,8204],[2553,8245],[2603,8228],[2635,8191],[2657,8146],[2719,8151],[2732,8176],[2768,8186],[2774,8210],[2753,8238],[2776,8317],[2827,8419],[2855,8445],[2927,8447],[3177,8445],[3182,8285],[3214,8263],[3211,8210],[3245,8170],[3297,8143],[3312,8091],[3376,8039],[3469,7982],[3517,7941],[3606,7903],[3675,7880],[3698,7846],[3772,7813],[3770,7779],[3802,7766],[3840,7783],[3868,7752],[3870,7720],[3768,7499],[3346,6577],[3299,6520],[3320,6449],[3369,6407],[3392,6343],[3372,6321],[3372,6273],[3326,6209],[3346,6127],[3338,6088],[3312,6044],[3317,6008],[3283,5950],[2438,5931],[2408,5953],[2375,5936],[2365,5905],[2294,5928],[2282,5972],[2245,5982],[2225,6034],[2179,6039],[2126,6122],[2076,6136],[1901,6135],[1887,6088],[1851,6080],[1844,6053],[1798,6038],[1779,6008],[1799,5982],[1779,5941],[1743,5938],[1748,5867],[1650,5860],[1616,5839],[1566,5848],[1527,5809],[1533,5783],[1484,5719],[1446,5768],[1393,5729],[1335,5710],[1299,5676],[1253,5717],[1124,5715],[1124,5682],[1097,5649],[1033,5615],[1010,5588],[175,5951],[16,6030],[-624,6168],[-946,6292],[-937,6356],[-916,6384],[-831,6454],[-784,6467],[-767,6500],[-799,6603],[-775,6663],[-738,6713],[-733,6785],[-713,6842],[-720,6883],[-640,6917],[-538,6997],[-489,7043],[-407,7081],[-377,7074],[-333,7092],[-293,7090],[-273,7113],[-184,7114],[-147,7174],[-92,7193],[-78,7171],[-36,7190],[-2,7180],[-1,7154],[28,7131],[41,7152],[88,7140],[99,7173],[241,8043],[226,8096],[201,8118],[176,8172],[189,8197],[175,8237],[88,8295],[52,8347],[57,8552],[179,8570],[211,8592],[250,8567],[313,8569],[299,8588],[309,8632],[271,8681],[249,8688],[114,8688],[114,8874],[191,8891],[255,8877],[586,8874],[554,8905],[577,8956],[604,8932],[633,8882],[691,8900],[746,8968],[789,8992],[817,8978],[878,8869],[890,8821],[883,8739],[892,8716],[945,8730],[1075,8610],[1145,8590],[1196,8611],[1260,8658],[1305,8659],[1323,8627],[1304,8592],[1311,8568],[1342,8578],[1376,8640],[1411,8644],[1430,8701],[1462,8704],[1513,8741],[1543,8734],[1593,8783],[1633,8807],[1637,8775],[1711,8827],[1725,8846],[1733,8916],[1749,8934],[1814,8941],[1855,8973],[1912,8986],[1919,9011]]]}},{"type":"Feature","id":"BR.MT","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.55,"hc-key":"br-mt","hc-a2":"MT","labelrank":"2","hasc":"BR.MT","alt-name":"Matto Grosso","woe-id":"2344855","subregion":null,"fips":"BR14","postal-code":"MT","name":"Mato Grosso","country":"Brazil","type-en":"State","region":null,"longitude":"-55.9235","woe-name":"Mato Grosso","latitude":"-13.3926","woe-label":"Mato Grosso, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[3392,6343],[3413,6323],[3460,6246],[3492,6148],[3531,6097],[3520,6040],[3549,5951],[3576,5941],[3627,5896],[3681,5870],[3698,5821],[3755,5809],[3774,5775],[3799,5781],[3859,5756],[4236,5731],[5279,5666],[5571,5648],[5552,5599],[5531,5576],[5517,5511],[5491,5451],[5469,5424],[5458,5346],[5464,5320],[5427,5190],[5452,5160],[5436,5131],[5451,5085],[5442,5051],[5444,4998],[5460,4931],[5444,4876],[5463,4826],[5493,4816],[5489,4786],[5464,4751],[5468,4709],[5442,4656],[5416,4623],[5405,4586],[5387,4576],[5387,4468],[5369,4463],[5348,4386],[5355,4353],[5318,4251],[5298,4226],[5259,4232],[5206,4203],[5167,4163],[5161,4116],[5105,3999],[5006,3969],[4985,3935],[4928,3899],[4929,3883],[4893,3865],[4907,3828],[4902,3799],[4855,3740],[4798,3706],[4791,3653],[4749,3591],[4738,3513],[4787,3387],[4720,3393],[4609,3390],[4539,3420],[4574,3479],[4603,3492],[4621,3599],[4584,3585],[4549,3543],[4498,3496],[4432,3483],[4424,3509],[4396,3527],[4351,3526],[4297,3489],[4222,3479],[4128,3529],[4108,3559],[4060,3570],[3976,3615],[3937,3606],[3916,3587],[3802,3576],[3777,3530],[3747,3504],[3744,3481],[3704,3445],[3628,3422],[3579,3434],[3546,3456],[3528,3506],[3469,3521],[3409,3566],[3369,3582],[3344,3688],[3339,3744],[3371,3793],[3374,3855],[3341,3842],[2894,3847],[2881,3861],[2859,4061],[2763,4171],[2846,4174],[2838,4304],[2788,4400],[2786,4449],[2807,4482],[2782,4534],[2713,4570],[2804,4640],[2832,4739],[2852,4766],[2882,4779],[2903,4835],[2927,4867],[2949,4932],[2930,4971],[2930,5003],[2903,5062],[2882,5065],[2869,5150],[2919,5211],[2893,5277],[2817,5293],[2789,5287],[2772,5314],[2490,5309],[2476,5321],[2486,5466],[2460,5514],[2457,5570],[2469,5626],[2456,5663],[2478,5689],[2441,5777],[2462,5804],[2455,5830],[2473,5891],[2438,5931],[3283,5950],[3317,6008],[3312,6044],[3338,6088],[3346,6127],[3326,6209],[3372,6273],[3372,6321],[3392,6343]]]}},{"type":"Feature","id":"BR.DF","properties":{"hc-group":"admin1","hc-middle-x":0.89,"hc-middle-y":0.52,"hc-key":"br-df","hc-a2":"DF","labelrank":"7","hasc":"BR.DF","alt-name":null,"woe-id":"2344850","subregion":null,"fips":"BR07","postal-code":"DF","name":"Distrito Federal","country":"Brazil","type-en":"Federal District","region":null,"longitude":"-47.7902","woe-name":"Distrito Federal","latitude":"-15.7665","woe-label":"Distrito Federal, BR, Brazil","type":"Distrito Federal"},"geometry":{"type":"Polygon","coordinates":[[[6332,3907],[6332,3907],[6332,3907],[6097,3914],[6072,3971],[6093,3999],[6084,4011],[6102,4067],[6305,4059],[6335,4033],[6318,3923],[6332,3907],[6332,3907],[6332,3907]]]}},{"type":"Feature","id":"BR.AC","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.52,"hc-key":"br-ac","hc-a2":"AC","labelrank":"2","hasc":"BR.","alt-name":null,"woe-id":"2344844","subregion":null,"fips":"BR01","postal-code":"AC","name":"Acre","country":"Brazil","type-en":"State","region":null,"longitude":"-70.2976","woe-name":"Acre","latitude":"-8.9285","woe-label":"Acre, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[1060,5568],[993,5515],[950,5467],[913,5445],[876,5444],[836,5403],[810,5391],[775,5332],[736,5343],[672,5329],[622,5247],[536,5204],[489,5198],[496,5231],[320,5244],[232,5231],[167,5241],[78,5194],[37,5200],[9,5227],[-19,5204],[-36,5538],[-12,5576],[-36,5621],[-11,5661],[-104,5590],[-140,5543],[-179,5524],[-188,5505],[-240,5483],[-461,5471],[-453,5506],[-484,5541],[-499,5605],[-534,5620],[-640,5635],[-750,5630],[-685,5728],[-691,5757],[-750,5831],[-800,5865],[-803,5899],[-852,5928],[-896,6032],[-927,6048],[-933,6071],[-911,6097],[-947,6115],[-999,6165],[-969,6216],[-918,6239],[-946,6292],[-624,6168],[16,6030],[175,5951],[1010,5588],[1060,5568]]]}},{"type":"Feature","id":"BR.RO","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.58,"hc-key":"br-ro","hc-a2":"RO","labelrank":"2","hasc":"BR.","alt-name":"Guaporé","woe-id":"2344865","subregion":"Guaporé","fips":"BR24","postal-code":"RO","name":"Rondônia","country":"Brazil","type-en":"State","region":null,"longitude":"-63.1439","woe-name":"Rondônia","latitude":"-10.9712","woe-label":"Rondonia, BR, Brazil","type":"Estado"},"geometry":{"type":"Polygon","coordinates":[[[2713,4570],[2666,4599],[2631,4603],[2624,4623],[2597,4607],[2543,4612],[2513,4598],[2478,4607],[2407,4598],[2364,4644],[2316,4711],[2246,4706],[2238,4719],[2187,4731],[2175,4749],[2142,4741],[2108,4780],[2095,4777],[2066,4833],[2023,4818],[1979,4826],[1950,4856],[1906,4877],[1866,4881],[1835,4855],[1773,4859],[1754,4872],[1704,4874],[1678,4897],[1682,4929],[1614,4958],[1592,4990],[1535,4998],[1514,5065],[1478,5067],[1469,5130],[1449,5133],[1418,5231],[1441,5278],[1435,5313],[1413,5327],[1416,5360],[1401,5380],[1406,5430],[1437,5497],[1422,5578],[1429,5607],[1410,5639],[1387,5646],[1352,5601],[1317,5623],[1185,5605],[1114,5578],[1060,5568],[1010,5588],[1033,5615],[1097,5649],[1124,5682],[1124,5715],[1253,5717],[1299,5676],[1335,5710],[1393,5729],[1446,5768],[1484,5719],[1533,5783],[1527,5809],[1566,5848],[1616,5839],[1650,5860],[1748,5867],[1743,5938],[1779,5941],[1799,5982],[1779,6008],[1798,6038],[1844,6053],[1851,6080],[1887,6088],[1901,6135],[2076,6136],[2126,6122],[2179,6039],[2225,6034],[2245,5982],[2282,5972],[2294,5928],[2365,5905],[2375,5936],[2408,5953],[2438,5931],[2473,5891],[2455,5830],[2462,5804],[2441,5777],[2478,5689],[2456,5663],[2469,5626],[2457,5570],[2460,5514],[2486,5466],[2476,5321],[2490,5309],[2772,5314],[2789,5287],[2817,5293],[2893,5277],[2919,5211],[2869,5150],[2882,5065],[2903,5062],[2930,5003],[2930,4971],[2949,4932],[2927,4867],[2903,4835],[2882,4779],[2852,4766],[2832,4739],[2804,4640],[2713,4570]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/ar-all.geo.json
const ar_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Argentina","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:22173"}},"hc-transform":{"default":{"crs":"+proj=tmerc +lat_0=-90 +lon_0=-66 +k=1 +x_0=3500000 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","scale":0.000189588229007,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":2951044.94643,"yoffset":7591131.55463}},"features":[{"type":"Feature","id":"AR.TF","properties":{"hc-group":"admin1","hc-middle-x":0.22,"hc-middle-y":0.73,"hc-key":"ar-tf","hc-a2":"TF","labelrank":"3","hasc":"AR.TF","alt-name":"Feuerland|Terra del Fuoco|Terre de Feu|Terra do Fogo|Tierra del Fuego|Antártida e Islas del Atlántico Sur","woe-id":"2344697","subregion":null,"fips":"AR23","postal-code":"TF","name":"Tierra del Fuego","country":"Argentina","type-en":"National Territory","region":null,"longitude":"-67.5329","woe-name":"Tierra del Fuego","latitude":"-54.3887","woe-label":"Tierra del Fuego, AR, Argentina","type":"Territorio Nacional|Provincia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[928,-893],[1028,-900],[998,-927],[996,-908],[943,-932],[934,-913],[864,-953],[849,-929],[928,-893]]],[[[127,-943],[116,-943],[92,-219],[163,-316],[164,-340],[118,-376],[114,-415],[134,-433],[201,-446],[228,-530],[266,-570],[313,-605],[311,-628],[364,-675],[467,-737],[522,-807],[644,-867],[671,-872],[745,-860],[774,-865],[740,-954],[722,-944],[673,-972],[667,-952],[617,-953],[615,-973],[555,-980],[513,-999],[463,-964],[420,-952],[222,-937],[179,-921],[175,-938],[127,-943]]]]}},{"type":"Feature","id":"AR.BA","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.41,"hc-key":"ar-ba","hc-a2":"BA","labelrank":"3","hasc":"AR.BA","alt-name":null,"woe-id":"2344675","subregion":null,"fips":"AR01","postal-code":"BA","name":"Buenos Aires","country":"Argentina","type-en":"Federal District","region":null,"longitude":"-60.1133","woe-name":null,"latitude":"-36.6734","woe-label":"Buenos Aires","type":"Distrito Federal"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1602,3739],[1583,3713],[1551,3732],[1569,3776],[1602,3739]]],[[[1610,3789],[1582,3839],[1586,3855],[1612,3839],[1610,3789]]],[[[1651,4172],[1663,4143],[1629,4159],[1606,4195],[1651,4172]]],[[[2667,5797],[2681,5737],[2626,5708],[2656,5680],[2647,5630],[2628,5616],[2624,5569],[2649,5546],[2687,5582],[2727,5548],[2802,5516],[2891,5448],[2958,5365],[2984,5307],[2979,5285],[2916,5210],[2905,5126],[2931,5063],[3010,4992],[3053,4994],[3070,4975],[3064,4826],[3056,4801],[2995,4730],[2943,4652],[2870,4582],[2811,4513],[2798,4444],[2781,4423],[2628,4345],[2389,4278],[2174,4246],[1922,4216],[1851,4212],[1779,4222],[1755,4213],[1627,4243],[1595,4286],[1536,4287],[1551,4239],[1540,4193],[1564,4142],[1621,4104],[1612,4089],[1578,4125],[1556,4124],[1611,4077],[1592,3956],[1544,3961],[1523,3831],[1491,3801],[1508,3750],[1530,3736],[1551,3684],[1521,3615],[1422,3564],[1404,3564],[1391,3599],[1330,3664],[1263,3678],[1276,4129],[1306,5219],[1316,5540],[1324,5732],[1333,5742],[1465,5738],[1774,5728],[1987,5947],[2004,5984],[2067,5976],[2103,5953],[2124,5962],[2141,6008],[2181,6059],[2178,6075],[2223,6028],[2292,5981],[2314,5951],[2359,5926],[2382,5932],[2415,5903],[2451,5905],[2476,5869],[2511,5867],[2603,5794],[2667,5797]]]]}},{"type":"Feature","id":"AR.SJ","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.65,"hc-key":"ar-sj","hc-a2":"SJ","labelrank":"6","hasc":"AR.SJ","alt-name":null,"woe-id":"2344692","subregion":null,"fips":"AR18","postal-code":"SJ","name":"San Juan","country":"Argentina","type-en":"Province","region":null,"longitude":"-68.66119999999999","woe-name":"San Juan","latitude":"-30.97","woe-label":"San Juan, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[-564,6402],[-583,6412],[-600,6493],[-565,6517],[-586,6542],[-618,6545],[-668,6647],[-665,6728],[-642,6796],[-614,6789],[-584,6822],[-605,6850],[-601,6895],[-565,7038],[-524,7029],[-489,7058],[-476,7119],[-512,7130],[-499,7180],[-503,7252],[-540,7366],[-537,7395],[-505,7439],[-474,7455],[-477,7500],[-458,7549],[-461,7605],[-443,7631],[-438,7684],[-346,7659],[-295,7616],[-276,7565],[-223,7498],[-244,7455],[-226,7395],[-245,7329],[-233,7287],[-155,7300],[-48,7272],[18,7216],[68,7162],[152,7095],[172,7052],[281,6941],[311,6883],[300,6849],[317,6825],[305,6736],[321,6681],[373,6648],[382,6607],[411,6567],[340,6562],[240,6575],[228,6558],[228,6439],[208,6454],[107,6445],[53,6500],[-50,6471],[-130,6409],[-189,6410],[-197,6492],[-225,6490],[-260,6527],[-298,6497],[-343,6495],[-388,6470],[-392,6434],[-488,6407],[-564,6402]]]}},{"type":"Feature","id":"AR.MZ","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.51,"hc-key":"ar-mz","hc-a2":"MZ","labelrank":"6","hasc":"AR.MZ","alt-name":null,"woe-id":"2344687","subregion":null,"fips":"AR08","postal-code":"MZ","name":"Mendoza","country":"Argentina","type-en":"Province","region":null,"longitude":"-68.5423","woe-name":"Mendoza","latitude":"-34.8484","woe-label":"Mendoza, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[-558,5155],[-546,5182],[-559,5240],[-543,5258],[-563,5308],[-561,5358],[-602,5454],[-561,5469],[-555,5539],[-536,5591],[-526,5661],[-483,5725],[-479,5764],[-424,5777],[-433,5861],[-448,5870],[-448,5966],[-422,6059],[-456,6104],[-484,6083],[-510,6119],[-515,6167],[-486,6221],[-526,6255],[-539,6353],[-564,6402],[-488,6407],[-392,6434],[-388,6470],[-343,6495],[-298,6497],[-260,6527],[-225,6490],[-197,6492],[-189,6410],[-130,6409],[-50,6471],[53,6500],[107,6445],[208,6454],[228,6439],[267,6312],[286,6277],[277,6227],[302,6052],[336,5999],[361,5927],[412,5854],[392,5800],[395,5749],[415,5674],[460,5597],[478,5503],[474,5381],[447,5240],[451,5223],[19,5217],[8,5175],[18,5126],[30,4709],[-16,4714],[-43,4745],[-103,4766],[-172,4773],[-192,4817],[-237,4833],[-294,4823],[-332,4830],[-382,4874],[-379,4922],[-415,4948],[-455,5001],[-484,5014],[-513,5080],[-533,5076],[-537,5129],[-558,5155]]]}},{"type":"Feature","id":"AR.NQ","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.51,"hc-key":"ar-nq","hc-a2":"NQ","labelrank":"3","hasc":"AR.NQ","alt-name":"Neuquém","woe-id":"2344689","subregion":null,"fips":"AR15","postal-code":"NQ","name":"Neuquén","country":"Argentina","type-en":"Province","region":null,"longitude":"-69.9833","woe-name":"Neuquén","latitude":"-38.3579","woe-label":"Neuquen, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[-837,3540],[-834,3564],[-865,3634],[-846,3659],[-834,3732],[-804,3762],[-843,3802],[-840,3845],[-810,3841],[-799,3909],[-826,3962],[-820,4014],[-779,4002],[-786,4028],[-768,4062],[-757,4127],[-766,4225],[-721,4269],[-632,4313],[-629,4366],[-663,4398],[-676,4450],[-678,4515],[-730,4630],[-719,4717],[-743,4765],[-716,4828],[-748,4913],[-738,4963],[-719,4961],[-714,5031],[-675,5060],[-630,5058],[-628,5109],[-595,5150],[-558,5155],[-537,5129],[-533,5076],[-513,5080],[-484,5014],[-455,5001],[-415,4948],[-379,4922],[-382,4874],[-332,4830],[-294,4823],[-237,4833],[-192,4817],[-172,4773],[-103,4766],[-43,4745],[-16,4714],[30,4709],[38,4349],[92,4271],[97,4249],[39,4239],[23,4250],[-40,4201],[-98,4134],[-135,4073],[-210,4035],[-234,3995],[-277,3958],[-312,3957],[-382,3905],[-405,3758],[-435,3718],[-492,3706],[-526,3718],[-560,3692],[-622,3675],[-659,3627],[-631,3580],[-658,3538],[-709,3522],[-759,3538],[-837,3540]]]}},{"type":"Feature","id":"AR.LP","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.54,"hc-key":"ar-lp","hc-a2":"LP","labelrank":"3","hasc":"AR.LP","alt-name":"El Pampa|Eva Perln","woe-id":"2344685","subregion":null,"fips":"AR11","postal-code":"LP","name":"La Pampa","country":"Argentina","type-en":"Province","region":null,"longitude":"-65.8386","woe-name":"La Pampa","latitude":"-37.3861","woe-label":"La Pampa, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[30,4709],[18,5126],[8,5175],[19,5217],[451,5223],[856,5223],[859,5548],[1162,5544],[1316,5540],[1306,5219],[1276,4129],[1253,4132],[1195,4172],[1125,4236],[1004,4290],[915,4305],[840,4308],[776,4297],[719,4317],[693,4304],[624,4329],[559,4337],[514,4332],[471,4342],[448,4389],[340,4436],[311,4497],[214,4483],[175,4534],[138,4548],[137,4597],[171,4639],[161,4675],[134,4697],[30,4709]]]}},{"type":"Feature","id":"AR.RN","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.63,"hc-key":"ar-rn","hc-a2":"RN","labelrank":"3","hasc":"AR.RN","alt-name":null,"woe-id":"2344690","subregion":null,"fips":"AR16","postal-code":"RN","name":"Río Negro","country":"Argentina","type-en":"Province","region":null,"longitude":"-67.36409999999999","woe-name":"Río Negro","latitude":"-40.1261","woe-label":"Rio Negro, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1404,3564],[1330,3530],[1162,3534],[1093,3587],[1066,3585],[1006,3618],[928,3646],[919,3676],[890,3687],[832,3646],[818,3588],[845,3445],[861,3411],[850,3374],[858,3332],[844,3261],[827,3265],[-791,3219],[-800,3262],[-837,3339],[-821,3359],[-838,3423],[-837,3540],[-759,3538],[-709,3522],[-658,3538],[-631,3580],[-659,3627],[-622,3675],[-560,3692],[-526,3718],[-492,3706],[-435,3718],[-405,3758],[-382,3905],[-312,3957],[-277,3958],[-234,3995],[-210,4035],[-135,4073],[-98,4134],[-40,4201],[23,4250],[39,4239],[97,4249],[92,4271],[38,4349],[30,4709],[134,4697],[161,4675],[171,4639],[137,4597],[138,4548],[175,4534],[214,4483],[311,4497],[340,4436],[448,4389],[471,4342],[514,4332],[559,4337],[624,4329],[693,4304],[719,4317],[776,4297],[840,4308],[915,4305],[1004,4290],[1125,4236],[1195,4172],[1253,4132],[1276,4129],[1263,3678],[1330,3664],[1391,3599],[1404,3564]]]}},{"type":"Feature","id":"AR.SL","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.35,"hc-key":"ar-sl","hc-a2":"SL","labelrank":"6","hasc":"AR.SL","alt-name":null,"woe-id":"2344693","subregion":null,"fips":"AR19","postal-code":"SL","name":"San Luis","country":"Argentina","type-en":"Province","region":null,"longitude":"-66.13500000000001","woe-name":"San Luis","latitude":"-33.9469","woe-label":"San Luis, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[451,5223],[447,5240],[474,5381],[478,5503],[460,5597],[415,5674],[395,5749],[392,5800],[412,5854],[361,5927],[336,5999],[302,6052],[277,6227],[286,6277],[267,6312],[228,6439],[228,6558],[240,6575],[340,6562],[411,6567],[447,6555],[554,6552],[599,6569],[681,6565],[728,6555],[821,6490],[836,6422],[912,6428],[925,6348],[880,6164],[852,6134],[862,5887],[859,5548],[856,5223],[451,5223]]]}},{"type":"Feature","id":"AR.CB","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.51,"hc-key":"ar-cb","hc-a2":"CB","labelrank":"3","hasc":"AR.CB","alt-name":"Cordova","woe-id":"2344679","subregion":null,"fips":"AR05","postal-code":"CB","name":"Córdoba","country":"Argentina","type-en":"Province","region":null,"longitude":"-63.7501","woe-name":"Córdoba","latitude":"-32.3275","woe-label":"Cordoba, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1316,5540],[1162,5544],[859,5548],[862,5887],[852,6134],[880,6164],[925,6348],[912,6428],[836,6422],[821,6490],[728,6555],[681,6565],[679,6822],[749,7047],[784,7133],[858,7158],[914,7217],[910,7305],[932,7322],[1101,7363],[1168,7347],[1170,7329],[1238,7287],[1336,7283],[1364,7244],[1669,7235],[1682,7225],[1722,7109],[1708,7011],[1781,6919],[1696,6636],[1667,6605],[1674,6523],[1663,6464],[1702,6425],[1717,6381],[1743,6355],[1764,6283],[1789,6234],[1778,6178],[1734,6143],[1465,5738],[1333,5742],[1324,5732],[1316,5540]]]}},{"type":"Feature","id":"AR.CT","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.32,"hc-key":"ar-ct","hc-a2":"CT","labelrank":"6","hasc":"AR.CT","alt-name":null,"woe-id":"2344676","subregion":null,"fips":"AR02","postal-code":"CT","name":"Catamarca","country":"Argentina","type-en":"Province","region":null,"longitude":"-67.0086","woe-name":"Catamarca","latitude":"-26.7709","woe-label":"Catamarca, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[932,7322],[910,7305],[914,7217],[858,7158],[784,7133],[737,7230],[691,7341],[673,7423],[579,7514],[518,7545],[517,7591],[478,7630],[446,7698],[333,7742],[298,7718],[251,7712],[123,7716],[89,7702],[63,7743],[56,7786],[12,7775],[-93,7830],[-91,7906],[-211,7888],[-294,7893],[-261,7999],[-238,8017],[-202,8110],[-139,8095],[-120,8124],[-65,8135],[-63,8192],[-139,8295],[-142,8375],[-97,8417],[-123,8554],[-141,8584],[-156,8657],[-126,8748],[79,8711],[436,8719],[451,8716],[476,8651],[463,8601],[397,8587],[376,8570],[384,8515],[432,8450],[458,8397],[491,8359],[509,8362],[548,8426],[598,8399],[569,8320],[657,8246],[651,8183],[558,8052],[619,8028],[635,7943],[666,7894],[701,7888],[711,7848],[742,7812],[758,7841],[807,7874],[855,7859],[880,7740],[879,7673],[850,7619],[872,7603],[890,7408],[932,7322]]]}},{"type":"Feature","id":"AR.LR","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.36,"hc-key":"ar-lr","hc-a2":"LR","labelrank":"6","hasc":"AR.LR","alt-name":null,"woe-id":"2344686","subregion":null,"fips":"AR12","postal-code":"LR","name":"La Rioja","country":"Argentina","type-en":"Province","region":null,"longitude":"-67.5283","woe-name":"La Rioja","latitude":"-29.3762","woe-label":"La Rioja, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[681,6565],[599,6569],[554,6552],[447,6555],[411,6567],[382,6607],[373,6648],[321,6681],[305,6736],[317,6825],[300,6849],[311,6883],[281,6941],[172,7052],[152,7095],[68,7162],[18,7216],[-48,7272],[-155,7300],[-233,7287],[-245,7329],[-226,7395],[-244,7455],[-223,7498],[-276,7565],[-295,7616],[-346,7659],[-438,7684],[-373,7747],[-341,7818],[-304,7843],[-294,7893],[-211,7888],[-91,7906],[-93,7830],[12,7775],[56,7786],[63,7743],[89,7702],[123,7716],[251,7712],[298,7718],[333,7742],[446,7698],[478,7630],[517,7591],[518,7545],[579,7514],[673,7423],[691,7341],[737,7230],[784,7133],[749,7047],[679,6822],[681,6565]]]}},{"type":"Feature","id":"AR.SA","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.67,"hc-key":"ar-sa","hc-a2":"SA","labelrank":"6","hasc":"AR.SA","alt-name":null,"woe-id":"2344691","subregion":null,"fips":"AR17","postal-code":"SA","name":"Salta","country":"Argentina","type-en":"Province","region":null,"longitude":"-64.47150000000001","woe-name":"Salta","latitude":"-25.0203","woe-label":"Salta, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[598,8399],[548,8426],[509,8362],[491,8359],[458,8397],[432,8450],[384,8515],[376,8570],[397,8587],[463,8601],[476,8651],[451,8716],[436,8719],[79,8711],[-126,8748],[-91,8756],[-122,8833],[-151,8875],[-131,8927],[-55,9002],[207,9121],[239,9218],[287,9188],[358,9112],[413,9067],[464,9055],[509,9119],[513,9222],[493,9277],[508,9338],[563,9321],[618,9281],[607,9205],[614,9152],[686,9108],[686,9082],[737,9001],[830,8969],[860,8984],[902,8948],[941,8938],[967,8982],[1023,8931],[1060,8974],[1116,8995],[1164,9069],[1158,9288],[1110,9291],[1083,9254],[1017,9308],[951,9298],[926,9360],[902,9375],[904,9456],[857,9464],[835,9508],[835,9578],[812,9592],[844,9677],[860,9751],[911,9751],[1042,9712],[1046,9670],[1089,9605],[1081,9572],[1107,9543],[1114,9500],[1143,9604],[1171,9637],[1237,9777],[1300,9762],[1331,9779],[1584,9772],[1588,9736],[1639,9689],[1634,9676],[1721,9616],[1713,9263],[1708,9079],[1707,8987],[1382,8585],[1227,8590],[1142,8607],[1077,8470],[1059,8407],[976,8411],[918,8393],[829,8428],[816,8456],[778,8442],[713,8457],[699,8385],[598,8399]]]}},{"type":"Feature","id":"AR.SE","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.46,"hc-key":"ar-se","hc-a2":"SE","labelrank":"6","hasc":"AR.SE","alt-name":null,"woe-id":"2344696","subregion":null,"fips":"AR22","postal-code":"SE","name":"Santiago del Estero","country":"Argentina","type-en":"Province","region":null,"longitude":"-63.445","woe-name":"Santiago del Estero","latitude":"-27.6882","woe-label":"Santiago del Estero, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[932,7322],[890,7408],[872,7603],[850,7619],[879,7673],[880,7740],[855,7859],[884,7866],[904,7901],[884,7952],[913,7987],[886,8001],[940,8054],[985,8158],[1000,8213],[1027,8255],[1051,8257],[1047,8334],[1059,8407],[1077,8470],[1142,8607],[1227,8590],[1382,8585],[1868,8572],[1876,8544],[1874,8376],[1855,7808],[1800,7511],[1722,7109],[1682,7225],[1669,7235],[1364,7244],[1336,7283],[1238,7287],[1170,7329],[1168,7347],[1101,7363],[932,7322]]]}},{"type":"Feature","id":"AR.TM","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.35,"hc-key":"ar-tm","hc-a2":"TM","labelrank":"3","hasc":"AR.TM","alt-name":"Tucumão","woe-id":"2344698","subregion":null,"fips":"AR24","postal-code":"TM","name":"Tucumán","country":"Argentina","type-en":"Province","region":null,"longitude":"-65.3387","woe-name":"Tucumán","latitude":"-26.9711","woe-label":"Tucuman, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[855,7859],[807,7874],[758,7841],[742,7812],[711,7848],[701,7888],[666,7894],[635,7943],[619,8028],[558,8052],[651,8183],[657,8246],[569,8320],[598,8399],[699,8385],[713,8457],[778,8442],[816,8456],[829,8428],[918,8393],[976,8411],[1059,8407],[1047,8334],[1051,8257],[1027,8255],[1000,8213],[985,8158],[940,8054],[886,8001],[913,7987],[884,7952],[904,7901],[884,7866],[855,7859]]]}},{"type":"Feature","id":"AR.CC","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.59,"hc-key":"ar-cc","hc-a2":"CC","labelrank":"3","hasc":"AR.CC","alt-name":"El Chaco|Presidente Juan Per¢n","woe-id":"2344677","subregion":null,"fips":"AR03","postal-code":"CC","name":"Chaco","country":"Argentina","type-en":"Province","region":null,"longitude":"-60.8752","woe-name":"Chaco","latitude":"-26.509","woe-label":"Chaco, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1382,8585],[1707,8987],[1708,9079],[1794,9048],[1837,9011],[1875,9002],[1908,8957],[1935,8952],[1969,8909],[2025,8898],[2059,8871],[2072,8821],[2204,8721],[2245,8706],[2284,8654],[2334,8553],[2376,8539],[2425,8497],[2478,8432],[2477,8398],[2552,8370],[2558,8337],[2587,8317],[2628,8331],[2683,8293],[2708,8259],[2789,8194],[2851,8125],[2819,8113],[2801,8071],[2757,8042],[2769,7989],[2683,7941],[2698,7843],[2680,7770],[2134,7797],[1855,7808],[1874,8376],[1876,8544],[1868,8572],[1382,8585]]]}},{"type":"Feature","id":"AR.FM","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.56,"hc-key":"ar-fm","hc-a2":"FM","labelrank":"6","hasc":"AR.FM","alt-name":null,"woe-id":"2344683","subregion":null,"fips":"AR09","postal-code":"FM","name":"Formosa","country":"Argentina","type-en":"Province","region":null,"longitude":"-59.9494","woe-name":"Formosa","latitude":"-24.9146","woe-label":"Formosa, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1708,9079],[1713,9263],[1721,9616],[1753,9588],[1771,9535],[1833,9430],[1866,9409],[1895,9363],[1936,9344],[1969,9302],[2027,9278],[2082,9235],[2111,9170],[2161,9146],[2233,9132],[2238,9120],[2312,9093],[2400,9092],[2567,8970],[2601,8926],[2700,8870],[2755,8823],[2854,8793],[2899,8744],[2927,8760],[2996,8712],[3024,8709],[3062,8673],[3115,8578],[3092,8528],[3052,8512],[3035,8461],[3001,8418],[3010,8403],[2944,8369],[2917,8324],[2884,8165],[2851,8125],[2789,8194],[2708,8259],[2683,8293],[2628,8331],[2587,8317],[2558,8337],[2552,8370],[2477,8398],[2478,8432],[2425,8497],[2376,8539],[2334,8553],[2284,8654],[2245,8706],[2204,8721],[2072,8821],[2059,8871],[2025,8898],[1969,8909],[1935,8952],[1908,8957],[1875,9002],[1837,9011],[1794,9048],[1708,9079]]]}},{"type":"Feature","id":"AR.CN","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.44,"hc-key":"ar-cn","hc-a2":"CN","labelrank":"6","hasc":"AR.CN","alt-name":null,"woe-id":"2344680","subregion":null,"fips":"AR06","postal-code":"CN","name":"Corrientes","country":"Argentina","type-en":"Province","region":null,"longitude":"-57.6482","woe-name":"Corrientes","latitude":"-28.8387","woe-label":"Corrientes, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[2680,7770],[2698,7843],[2683,7941],[2769,7989],[2797,8000],[2940,7997],[3033,7967],[3079,7939],[3138,7934],[3181,7906],[3264,7922],[3300,7891],[3368,7902],[3417,7857],[3447,7918],[3495,7944],[3541,7930],[3523,7891],[3558,7801],[3563,7738],[3588,7683],[3619,7654],[3573,7629],[3602,7595],[3587,7570],[3549,7593],[3530,7557],[3496,7548],[3490,7519],[3439,7471],[3409,7462],[3402,7429],[3364,7376],[3303,7344],[3282,7296],[3151,7161],[3093,7145],[3079,7091],[3023,7042],[2983,7029],[2977,6984],[2918,6937],[2905,6904],[2923,6851],[2876,6902],[2857,6963],[2807,7029],[2704,7062],[2632,7042],[2596,7051],[2526,7010],[2485,7025],[2407,7019],[2431,7124],[2414,7169],[2440,7254],[2445,7320],[2470,7386],[2515,7404],[2564,7441],[2567,7474],[2599,7557],[2614,7642],[2614,7722],[2653,7735],[2680,7770]]]}},{"type":"Feature","id":"AR.ER","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.47,"hc-key":"ar-er","hc-a2":"ER","labelrank":"3","hasc":"AR.ER","alt-name":"Entre-Rios","woe-id":"2344682","subregion":null,"fips":"AR08","postal-code":"ER","name":"Entre Ríos","country":"Argentina","type-en":"Province","region":null,"longitude":"-59.2824","woe-name":"Entre Ríos","latitude":"-32.0275","woe-label":"Entre Rios, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[2407,7019],[2485,7025],[2526,7010],[2596,7051],[2632,7042],[2704,7062],[2807,7029],[2857,6963],[2876,6902],[2923,6851],[2919,6798],[2889,6787],[2902,6750],[2884,6691],[2830,6618],[2853,6590],[2827,6508],[2795,6499],[2796,6427],[2783,6399],[2803,6345],[2766,6289],[2772,6104],[2745,6091],[2707,6101],[2693,6028],[2660,5981],[2647,5905],[2665,5852],[2667,5797],[2603,5794],[2511,5867],[2476,5869],[2451,5905],[2415,5903],[2382,5932],[2359,5926],[2314,5951],[2292,5981],[2223,6028],[2178,6075],[2125,6122],[2080,6215],[2060,6315],[2081,6434],[2095,6475],[2081,6509],[2106,6583],[2172,6594],[2267,6694],[2400,6889],[2417,6982],[2407,7019]]]}},{"type":"Feature","id":"AR.CH","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.5,"hc-key":"ar-ch","hc-a2":"CH","labelrank":"3","hasc":"AR.CH","alt-name":null,"woe-id":"2344678","subregion":null,"fips":"AR04","postal-code":"CH","name":"Chubut","country":"Argentina","type-en":"Province","region":null,"longitude":"-67.8642","woe-name":"Chubut","latitude":"-43.9995","woe-label":"Chubut, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[-672,1915],[-678,1952],[-712,1997],[-708,2052],[-655,2073],[-653,2110],[-610,2148],[-681,2249],[-722,2261],[-752,2254],[-795,2266],[-793,2314],[-747,2306],[-665,2327],[-626,2311],[-605,2330],[-607,2359],[-582,2402],[-605,2435],[-659,2440],[-749,2433],[-749,2492],[-764,2529],[-743,2545],[-722,2591],[-760,2654],[-738,2674],[-744,2699],[-781,2714],[-798,2740],[-793,2785],[-757,2796],[-758,2830],[-823,2849],[-859,2886],[-854,2931],[-869,3019],[-846,3054],[-871,3127],[-853,3167],[-830,3161],[-781,3192],[-791,3219],[827,3265],[844,3261],[892,3201],[980,3182],[952,3126],[990,3117],[1067,3120],[1086,3139],[1082,3173],[1027,3178],[1147,3236],[1171,3215],[1198,3146],[1198,3064],[1187,3013],[1158,2990],[1068,2973],[1035,3009],[1049,3051],[991,3097],[949,3095],[868,3051],[855,3009],[939,2961],[990,2944],[1018,2952],[986,2914],[909,2889],[845,2841],[845,2815],[772,2719],[775,2667],[799,2567],[777,2534],[798,2493],[770,2462],[755,2419],[721,2411],[687,2380],[680,2329],[713,2320],[703,2266],[672,2279],[622,2273],[568,2289],[478,2241],[493,2216],[414,2209],[369,2171],[309,2084],[300,2025],[282,2014],[254,1956],[75,1952],[-672,1915]]]}},{"type":"Feature","id":"AR.SF","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.39,"hc-key":"ar-sf","hc-a2":"SF","labelrank":"6","hasc":"AR.SF","alt-name":"Santa Fé","woe-id":"2344695","subregion":null,"fips":"AR21","postal-code":"SF","name":"Santa Fe","country":"Argentina","type-en":"Province","region":null,"longitude":"-60.8593","woe-name":"Santa Fe","latitude":"-30.7764","woe-label":"Santa Fe, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1465,5738],[1734,6143],[1778,6178],[1789,6234],[1764,6283],[1743,6355],[1717,6381],[1702,6425],[1663,6464],[1674,6523],[1667,6605],[1696,6636],[1781,6919],[1708,7011],[1722,7109],[1800,7511],[1855,7808],[2134,7797],[2680,7770],[2653,7735],[2614,7722],[2614,7642],[2599,7557],[2567,7474],[2564,7441],[2515,7404],[2470,7386],[2445,7320],[2440,7254],[2414,7169],[2431,7124],[2407,7019],[2417,6982],[2400,6889],[2267,6694],[2172,6594],[2106,6583],[2081,6509],[2095,6475],[2081,6434],[2060,6315],[2080,6215],[2125,6122],[2178,6075],[2181,6059],[2141,6008],[2124,5962],[2103,5953],[2067,5976],[2004,5984],[1987,5947],[1774,5728],[1465,5738]]]}},{"type":"Feature","id":"AR.MN","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.55,"hc-key":"ar-mn","hc-a2":"MN","labelrank":"3","hasc":"AR.MN","alt-name":"Missões","woe-id":"2344688","subregion":null,"fips":"AR14","postal-code":"MN","name":"Misiones","country":"Argentina","type-en":"Province","region":null,"longitude":"-54.8406","woe-name":"Misiones","latitude":"-27.1262","woe-label":"Misiones, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3541,7930],[3600,7888],[3651,7922],[3653,7975],[3695,7994],[3707,8027],[3753,8043],[3795,8033],[3801,8063],[3848,8084],[3873,8124],[3906,8126],[3910,8164],[3937,8191],[3965,8270],[3964,8342],[3991,8395],[3978,8437],[3994,8474],[4034,8448],[4053,8463],[4144,8485],[4137,8468],[4199,8437],[4215,8376],[4213,8321],[4253,8235],[4231,8185],[4214,8081],[4219,8021],[4171,7929],[4135,7935],[4093,7896],[4069,7912],[4031,7854],[4014,7867],[3957,7842],[3846,7807],[3838,7770],[3788,7761],[3802,7739],[3715,7722],[3674,7671],[3619,7654],[3588,7683],[3563,7738],[3558,7801],[3523,7891],[3541,7930]]]}},{"type":"Feature","id":"AR.DF","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.48,"hc-key":"ar-df","hc-a2":"DF","labelrank":"3","hasc":"AR.DF","alt-name":"BUENOS AIRES D.F.|Capital Federal|Distretto Federale|Distrito Federal|Federal Capital","woe-id":"2344681","subregion":null,"fips":"AR07","postal-code":"DF","name":"Ciudad de Buenos Aires","country":"Argentina","type-en":"Federal District","region":null,"longitude":"-58.4527","woe-name":"Ciudad de Buenos Aires","latitude":"-34.6202","woe-label":"Buenos Aires, AR, Argentina","type":"Distrito Federal"},"geometry":{"type":"Polygon","coordinates":[[[2647,5630],[2671,5611],[2687,5582],[2649,5546],[2624,5569],[2628,5616],[2647,5630]]]}},{"type":"Feature","id":"AR.SC","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.45,"hc-key":"ar-sc","hc-a2":"SC","labelrank":"3","hasc":"AR.SC","alt-name":null,"woe-id":"2344694","subregion":null,"fips":"AR20","postal-code":"SC","name":"Santa Cruz","country":"Argentina","type-en":"Province","region":null,"longitude":"-69.6596","woe-name":"Santa Cruz","latitude":"-49.0428","woe-label":"Santa Cruz, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[254,1956],[246,1903],[271,1814],[294,1772],[360,1727],[438,1630],[569,1604],[619,1612],[671,1567],[673,1467],[648,1391],[646,1346],[621,1291],[635,1281],[585,1262],[549,1224],[540,1191],[473,1165],[426,1113],[373,1085],[356,1037],[311,1008],[280,971],[269,918],[227,847],[246,848],[264,895],[248,720],[228,663],[178,618],[125,606],[82,664],[52,722],[66,653],[121,597],[103,579],[12,533],[-26,457],[-39,397],[-34,344],[-84,294],[-40,319],[-13,208],[9,150],[7,127],[-21,115],[-55,128],[-122,104],[-59,117],[17,103],[72,-12],[140,-109],[48,-91],[-32,-60],[-87,-61],[-183,-25],[-580,-46],[-591,-7],[-617,20],[-661,42],[-679,79],[-700,87],[-682,114],[-670,196],[-702,239],[-683,261],[-682,325],[-699,348],[-695,385],[-739,397],[-760,374],[-795,386],[-856,330],[-874,336],[-897,397],[-919,490],[-967,527],[-960,567],[-983,594],[-966,653],[-999,725],[-979,801],[-912,808],[-922,829],[-893,913],[-838,944],[-809,986],[-815,1097],[-757,1141],[-775,1226],[-823,1274],[-788,1379],[-789,1437],[-754,1446],[-726,1493],[-692,1529],[-726,1568],[-717,1649],[-664,1688],[-668,1744],[-692,1833],[-728,1860],[-697,1876],[-672,1915],[75,1952],[254,1956]]]}},{"type":"Feature","id":"AR.JY","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.36,"hc-key":"ar-jy","hc-a2":"JY","labelrank":"3","hasc":"AR.JY","alt-name":null,"woe-id":"2344684","subregion":null,"fips":"AR10","postal-code":"JY","name":"Jujuy","country":"Argentina","type-en":"Province","region":null,"longitude":"-65.7054","woe-name":"Jujuy","latitude":"-23.1764","woe-label":"Jujuy, AR, Argentina","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[239,9218],[309,9457],[254,9514],[301,9569],[302,9612],[377,9644],[391,9710],[500,9742],[524,9767],[541,9851],[585,9838],[600,9810],[635,9802],[692,9746],[742,9755],[860,9751],[844,9677],[812,9592],[835,9578],[835,9508],[857,9464],[904,9456],[902,9375],[926,9360],[951,9298],[1017,9308],[1083,9254],[1110,9291],[1158,9288],[1164,9069],[1116,8995],[1060,8974],[1023,8931],[967,8982],[941,8938],[902,8948],[860,8984],[830,8969],[737,9001],[686,9082],[686,9108],[614,9152],[607,9205],[618,9281],[563,9321],[508,9338],[493,9277],[513,9222],[509,9119],[464,9055],[413,9067],[358,9112],[287,9188],[239,9218]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/co-all.geo.json
const co_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Colombia","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:21897"}},"hc-transform":{"default":{"crs":"+proj=tmerc +lat_0=4.599047222222222 +lon_0=-74.08091666666667 +k=1 +x_0=1000000 +y_0=1000000 +ellps=intl +towgs84=307,304,-318,0,0,0,0 +units=m +no_defs","scale":0.000373487703631,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":160358.413635,"yoffset":1896317.09739}},"features":[{"type":"Feature","id":"CO.SA","properties":{"hc-group":"admin1","hc-middle-x":0.31,"hc-middle-y":0.47,"hc-key":"co-sa","hc-a2":"SA","labelrank":"5","hasc":"CO.SA","alt-name":"Saint Andrew and Providence","woe-id":"2345070","subregion":null,"fips":"CO17","postal-code":"SA","name":"San Andrés y Providencia","country":"Colombia","type-en":"Department","region":null,"longitude":"-81.7049","woe-name":"San Andrés y Providencia","latitude":"12.5429","woe-label":"San Andres y Providencia, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-951,9795],[-957,9833],[-940,9851],[-938,9844],[-951,9795]]]}},{"type":"Feature","id":"CO.CA","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.26,"hc-key":"co-ca","hc-a2":"CA","labelrank":"5","hasc":"CO.CA","alt-name":null,"woe-id":"2345055","subregion":null,"fips":"CO09","postal-code":"CA","name":"Cauca","country":"Colombia","type-en":"Department","region":null,"longitude":"-77.277","woe-name":"Cauca","latitude":"2.61609","woe-label":"Cauca, CO, Colombia","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1458,3374],[1407,3384],[1420,3414],[1473,3384],[1458,3374]]],[[[2576,3778],[2552,3702],[2596,3664],[2604,3596],[2749,3462],[2765,3430],[2738,3340],[2756,3305],[2724,3275],[2646,3315],[2591,3270],[2524,3240],[2445,3229],[2380,3270],[2371,3236],[2394,3185],[2377,3137],[2330,3074],[2278,3084],[2258,3066],[2259,3011],[2237,2983],[2251,2924],[2298,2888],[2360,2800],[2399,2770],[2529,2729],[2477,2658],[2439,2570],[2431,2486],[2458,2449],[2520,2445],[2584,2388],[2487,2343],[2396,2346],[2305,2376],[2277,2409],[2273,2492],[2290,2537],[2244,2622],[2191,2639],[2142,2572],[2035,2562],[2027,2683],[2072,2718],[2078,2750],[2017,2827],[1828,2786],[1769,2803],[1796,2910],[1850,2977],[1766,3047],[1777,3112],[1701,3144],[1576,3104],[1499,3096],[1437,3117],[1367,3248],[1378,3296],[1365,3360],[1287,3418],[1367,3436],[1407,3410],[1396,3375],[1478,3373],[1492,3400],[1433,3419],[1418,3461],[1433,3468],[1492,3400],[1495,3405],[1465,3440],[1473,3513],[1523,3555],[1522,3592],[1565,3579],[1578,3632],[1515,3633],[1612,3732],[1681,3837],[1746,3749],[1775,3756],[1812,3723],[1910,3766],[1971,3751],[2053,3704],[2102,3723],[2123,3760],[2179,3717],[2268,3713],[2324,3756],[2343,3846],[2460,3823],[2576,3778]]]]}},{"type":"Feature","id":"CO.NA","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.41,"hc-key":"co-na","hc-a2":"NA","labelrank":"5","hasc":"CO.NA","alt-name":null,"woe-id":"2345065","subregion":null,"fips":"CO20","postal-code":"NA","name":"Nariño","country":"Colombia","type-en":"Department","region":null,"longitude":"-77.9777","woe-name":"Nariño","latitude":"1.60168","woe-label":"Narino, CO, Colombia","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1203,3445],[1241,3436],[1272,3371],[1265,3332],[1233,3336],[1195,3387],[1203,3445]]],[[[1911,1947],[1844,1934],[1744,1960],[1704,1982],[1676,2137],[1627,2141],[1561,2179],[1543,2246],[1508,2261],[1430,2239],[1391,2274],[1255,2311],[1171,2374],[1092,2409],[1031,2477],[964,2488],[944,2531],[903,2533],[835,2615],[797,2641],[773,2722],[752,2713],[673,2773],[787,2890],[843,2896],[964,2864],[979,2953],[951,2938],[955,3004],[934,3024],[904,2993],[880,3126],[973,3293],[1056,3381],[1119,3419],[1155,3352],[1160,3411],[1215,3334],[1278,3331],[1267,3416],[1287,3418],[1365,3360],[1378,3296],[1367,3248],[1437,3117],[1499,3096],[1576,3104],[1701,3144],[1777,3112],[1766,3047],[1850,2977],[1796,2910],[1769,2803],[1828,2786],[2017,2827],[2078,2750],[2072,2718],[2027,2683],[2035,2562],[1993,2513],[1921,2480],[1922,2408],[1957,2387],[1920,2287],[1824,2167],[1907,2095],[1897,2073],[1923,1974],[1911,1947]]]]}},{"type":"Feature","id":"CO.CH","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.68,"hc-key":"co-ch","hc-a2":"CH","labelrank":"5","hasc":"CO.CH","alt-name":null,"woe-id":"2345057","subregion":null,"fips":"CO11","postal-code":"CH","name":"Chocó","country":"Colombia","type-en":"Department","region":null,"longitude":"-76.7263","woe-name":"Chocó","latitude":"5.38283","woe-label":"Choco, CO, Colombia","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[1756,4455],[1768,4442],[1632,4434],[1716,4490],[1756,4455]]],[[[1702,4383],[1759,4429],[1799,4420],[1757,4410],[1702,4383]]],[[[2579,4945],[2537,4904],[2518,4852],[2440,4778],[2432,4731],[2352,4655],[2342,4582],[2321,4542],[2275,4536],[2307,4488],[2307,4435],[2343,4411],[2243,4315],[2197,4320],[2156,4282],[2051,4310],[2010,4362],[1940,4351],[1902,4391],[1844,4391],[1819,4440],[1766,4457],[1734,4507],[1752,4533],[1778,4635],[1774,4767],[1810,4756],[1766,4806],[1749,4925],[1754,5088],[1724,5224],[1689,5248],[1631,5242],[1671,5308],[1727,5329],[1758,5316],[1819,5375],[1829,5430],[1761,5584],[1752,5566],[1678,5689],[1683,5760],[1722,5721],[1744,5760],[1733,5816],[1770,5916],[1724,5975],[1727,6012],[1694,6030],[1645,5993],[1623,6082],[1554,6130],[1548,6176],[1573,6195],[1550,6245],[1419,6362],[1469,6516],[1498,6515],[1524,6564],[1501,6640],[1521,6671],[1566,6633],[1601,6554],[1623,6548],[1668,6590],[1777,6662],[1752,6705],[1790,6773],[1823,6797],[1887,6807],[1849,6912],[1790,7017],[1765,7024],[1728,7143],[1686,7154],[1765,7285],[1823,7167],[1912,7110],[1963,7025],[2006,7012],[2026,6903],[1994,6848],[1981,6783],[1918,6747],[1925,6691],[2073,6569],[2190,6433],[2257,6400],[2294,6365],[2309,6253],[2282,6199],[2194,6222],[2100,6206],[2121,6135],[2096,6104],[2008,6085],[2030,5999],[2051,6010],[2058,5939],[2125,5875],[2116,5768],[2181,5673],[2265,5668],[2381,5685],[2452,5684],[2490,5586],[2558,5548],[2544,5475],[2573,5389],[2566,5335],[2601,5292],[2568,5214],[2522,5185],[2512,5121],[2565,5035],[2579,4945]]]]}},{"type":"Feature","id":"CO.3653","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.44,"hc-key":"co-3653","hc-a2":"NU","labelrank":"20","hasc":"-99","alt-name":null,"woe-id":"-99","subregion":null,"fips":null,"postal-code":null,"name":null,"country":"Colombia","type-en":null,"region":null,"longitude":"-81.5928","woe-name":null,"latitude":"3.97794","woe-label":null,"type":null},"geometry":{"type":"Polygon","coordinates":[[[-977,4297],[-975,4289],[-999,4280],[-989,4295],[-977,4297]]]}},{"type":"Feature","id":"CO.TO","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.47,"hc-key":"co-to","hc-a2":"TO","labelrank":"5","hasc":"CO.TO","alt-name":null,"woe-id":"2345073","subregion":null,"fips":"CO28","postal-code":"TO","name":"Tolima","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.2073","woe-name":"Tolima","latitude":"3.93749","woe-label":"Tolima, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3431,5107],[3439,4990],[3422,4898],[3422,4793],[3380,4743],[3401,4691],[3386,4670],[3387,4579],[3341,4479],[3346,4453],[3408,4462],[3491,4415],[3555,4453],[3598,4389],[3570,4271],[3582,4248],[3549,4135],[3480,4073],[3417,3977],[3415,3931],[3327,3826],[3290,3819],[3222,3840],[3245,3919],[3182,3918],[3154,3890],[3102,3880],[3065,3904],[2961,3872],[2920,3819],[2852,3685],[2718,3571],[2641,3608],[2604,3596],[2596,3664],[2552,3702],[2576,3778],[2596,3843],[2593,3925],[2627,4000],[2650,4098],[2717,4198],[2779,4332],[2882,4471],[2895,4555],[2959,4662],[2990,4678],[3018,4740],[3026,4793],[3058,4854],[3042,4882],[3066,4939],[3046,4960],[3081,5006],[3160,5032],[3183,5024],[3229,5093],[3308,5119],[3377,5122],[3431,5107]]]}},{"type":"Feature","id":"CO.CQ","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.57,"hc-key":"co-cq","hc-a2":"CQ","labelrank":"5","hasc":"CO.CQ","alt-name":null,"woe-id":"2345054","subregion":null,"fips":"CO08","postal-code":"CQ","name":"Caquetá","country":"Colombia","type-en":"Intendancy","region":null,"longitude":"-73.80970000000001","woe-name":"Caquetá","latitude":"0.615494","woe-label":"Caqueta, CO, Colombia","type":"Intendencia"},"geometry":{"type":"Polygon","coordinates":[[[2584,2388],[2520,2445],[2458,2449],[2431,2486],[2439,2570],[2477,2658],[2529,2729],[2649,2727],[2726,2796],[2864,2978],[2913,3022],[2996,3159],[3046,3195],[3089,3254],[3127,3349],[3168,3336],[3244,3384],[3271,3420],[3231,3480],[3283,3572],[3334,3609],[3442,3581],[3528,3462],[3492,3298],[3496,3204],[3561,3117],[3515,3028],[3521,2976],[3583,2900],[3965,2766],[4121,2760],[4193,2640],[4270,2554],[4282,2494],[4443,2340],[4503,2312],[4549,2327],[4625,2390],[4639,2461],[4673,2487],[4710,2458],[4724,2487],[4768,2483],[4850,2427],[4895,2415],[4931,2377],[4941,2327],[4999,2286],[5000,2241],[5047,2192],[5132,2175],[5178,2145],[5204,2089],[5248,2066],[5242,2032],[5302,1987],[5296,1956],[5338,1959],[5401,1885],[5498,1834],[5574,1843],[5638,1805],[5594,1763],[5442,1692],[5377,1637],[5346,1576],[5301,1562],[5177,1554],[5118,1511],[5051,1421],[5045,1344],[4992,1317],[4929,1364],[4846,1282],[4804,1299],[4736,1354],[4698,1359],[4630,1335],[4558,1383],[4504,1340],[4424,1333],[4342,1395],[4247,1379],[4191,1391],[4172,1424],[4087,1473],[3999,1468],[3904,1505],[3836,1562],[3757,1574],[3724,1629],[3665,1635],[3645,1662],[3609,1639],[3530,1655],[3484,1685],[3463,1768],[3472,1817],[3433,1848],[3360,1862],[3291,1893],[3270,2021],[3137,2051],[3130,2117],[3104,2180],[3063,2201],[2971,2200],[2881,2263],[2807,2263],[2722,2290],[2676,2373],[2584,2388]]]}},{"type":"Feature","id":"CO.HU","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.69,"hc-key":"co-hu","hc-a2":"HU","labelrank":"5","hasc":"CO.HU","alt-name":null,"woe-id":"2345061","subregion":null,"fips":"CO16","postal-code":"HU","name":"Huila","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.5471","woe-name":"Huila","latitude":"2.65469","woe-label":"Huila, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3334,3609],[3283,3572],[3231,3480],[3271,3420],[3244,3384],[3168,3336],[3127,3349],[3089,3254],[3046,3195],[2996,3159],[2913,3022],[2864,2978],[2726,2796],[2649,2727],[2529,2729],[2399,2770],[2360,2800],[2298,2888],[2251,2924],[2237,2983],[2259,3011],[2258,3066],[2278,3084],[2330,3074],[2377,3137],[2394,3185],[2371,3236],[2380,3270],[2445,3229],[2524,3240],[2591,3270],[2646,3315],[2724,3275],[2756,3305],[2738,3340],[2765,3430],[2749,3462],[2604,3596],[2641,3608],[2718,3571],[2852,3685],[2920,3819],[2961,3872],[3065,3904],[3102,3880],[3154,3890],[3182,3918],[3245,3919],[3222,3840],[3290,3819],[3327,3826],[3415,3931],[3417,3977],[3480,4073],[3549,4135],[3570,4108],[3594,4091],[3563,4014],[3515,3951],[3492,3807],[3473,3775],[3381,3709],[3334,3609]]]}},{"type":"Feature","id":"CO.PU","properties":{"hc-group":"admin1","hc-middle-x":0.3,"hc-middle-y":0.36,"hc-key":"co-pu","hc-a2":"PU","labelrank":"5","hasc":"CO.PU","alt-name":null,"woe-id":"2345067","subregion":null,"fips":"CO22","postal-code":"PU","name":"Putumayo","country":"Colombia","type-en":"Intendancy","region":null,"longitude":"-75.5514","woe-name":"Putumayo","latitude":"0.420217","woe-label":"Putumayo, CO, Colombia","type":"Intendencia"},"geometry":{"type":"Polygon","coordinates":[[[2584,2388],[2676,2373],[2722,2290],[2807,2263],[2881,2263],[2971,2200],[3063,2201],[3104,2180],[3130,2117],[3137,2051],[3270,2021],[3291,1893],[3360,1862],[3433,1848],[3472,1817],[3463,1768],[3484,1685],[3530,1655],[3609,1639],[3645,1662],[3665,1635],[3724,1629],[3757,1574],[3836,1562],[3904,1505],[3999,1468],[3644,1359],[3644,1359],[3566,1426],[3498,1502],[3402,1520],[3425,1542],[3380,1611],[3349,1578],[3310,1586],[3235,1634],[3176,1692],[3124,1699],[3085,1651],[2996,1680],[2850,1775],[2758,1774],[2670,1836],[2588,1953],[2546,1945],[2529,1976],[2478,1981],[2422,2014],[2354,1977],[2359,1883],[2246,1863],[2155,1898],[2149,1869],[2044,1877],[2013,1904],[1949,1916],[1911,1947],[1923,1974],[1897,2073],[1907,2095],[1824,2167],[1920,2287],[1957,2387],[1922,2408],[1921,2480],[1993,2513],[2035,2562],[2142,2572],[2191,2639],[2244,2622],[2290,2537],[2273,2492],[2277,2409],[2305,2376],[2396,2346],[2487,2343],[2584,2388]]]}},{"type":"Feature","id":"CO.AM","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.31,"hc-key":"co-am","hc-a2":"AM","labelrank":"5","hasc":"CO.AM","alt-name":null,"woe-id":"2345047","subregion":null,"fips":"CO01","postal-code":"AM","name":"Amazonas","country":"Colombia","type-en":"Commissiary","region":null,"longitude":"-71.91710000000001","woe-name":"Amazonas","latitude":"-1.26032","woe-label":"Amazonas, CO, Colombia","type":"Comisaría"},"geometry":{"type":"Polygon","coordinates":[[[3999,1468],[4087,1473],[4172,1424],[4191,1391],[4247,1379],[4342,1395],[4424,1333],[4504,1340],[4558,1383],[4630,1335],[4698,1359],[4736,1354],[4804,1299],[4846,1282],[4929,1364],[4992,1317],[5045,1344],[5051,1421],[5118,1511],[5177,1554],[5301,1562],[5346,1576],[5377,1637],[5442,1692],[5594,1763],[5638,1805],[5673,1783],[5734,1794],[5756,1744],[5819,1718],[5848,1726],[5883,1684],[5885,1627],[5941,1520],[5973,1512],[6001,1540],[6168,1489],[6202,1421],[6263,1415],[6311,1460],[6352,1448],[6295,1363],[6336,1347],[6340,1258],[6315,1237],[6354,1173],[6311,1121],[6347,1088],[6371,1107],[6370,1057],[6402,1033],[6445,1050],[6411,1095],[6558,1127],[6525,1059],[6624,1050],[6665,1083],[6710,1052],[6730,972],[6763,991],[6837,962],[6865,924],[6857,807],[6835,717],[6519,-976],[6507,-999],[6446,-916],[6364,-865],[6346,-798],[6285,-737],[6242,-730],[6203,-761],[6135,-759],[6013,-705],[6456,-22],[6428,31],[6397,9],[6337,36],[6298,93],[6257,77],[6258,125],[6194,121],[6116,177],[6071,148],[6034,227],[5981,240],[5926,290],[5849,311],[5831,272],[5752,270],[5703,219],[5641,224],[5573,197],[5550,275],[5523,237],[5497,296],[5407,330],[5373,317],[5368,350],[5302,317],[5221,228],[5142,227],[5096,179],[5044,186],[5017,162],[4944,153],[4915,180],[4837,194],[4785,225],[4737,171],[4681,197],[4592,171],[4575,211],[4519,248],[4502,219],[4453,252],[4428,303],[4484,393],[4447,466],[4436,568],[4397,605],[4337,573],[4214,649],[4244,713],[4236,774],[4180,823],[4193,842],[4146,916],[4070,962],[4039,937],[3989,958],[3963,1007],[3901,1021],[3870,1079],[3835,1066],[3757,1088],[3690,1170],[3722,1178],[3717,1217],[3668,1248],[3677,1287],[3644,1359],[3644,1359],[3999,1468]]]}},{"type":"Feature","id":"CO.BL","properties":{"hc-group":"admin1","hc-middle-x":0.79,"hc-middle-y":0.75,"hc-key":"co-bl","hc-a2":"BL","labelrank":"5","hasc":"CO.BL","alt-name":null,"woe-id":"2345051","subregion":null,"fips":"CO35","postal-code":"BL","name":"Bolívar","country":"Colombia","type-en":"Department","region":null,"longitude":"-74.1807","woe-name":"Bolívar","latitude":"8.57823","woe-label":"Bolivar, CO, Colombia","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2907,8183],[2902,8206],[2940,8278],[2868,8223],[2830,8210],[2901,8296],[2950,8328],[2945,8375],[2916,8396],[2958,8436],[2954,8499],[3022,8559],[3115,8577],[3133,8525],[3108,8463],[3123,8436],[3168,8428],[3193,8381],[3228,8388],[3329,8294],[3312,8211],[3366,8185],[3398,8144],[3395,8113],[3354,8082],[3353,8039],[3393,7974],[3383,7934],[3414,7886],[3403,7769],[3455,7757],[3585,7636],[3637,7653],[3648,7627],[3718,7612],[3786,7541],[3853,7500],[3883,7517],[3921,7475],[3992,7464],[3994,7410],[4034,7364],[4020,7253],[4063,7135],[4067,7052],[4042,6981],[4048,6945],[4003,6909],[3993,6846],[4029,6700],[4017,6582],[3970,6528],[3975,6465],[3956,6394],[3750,6199],[3691,6208],[3657,6309],[3655,6407],[3689,6478],[3678,6514],[3612,6433],[3552,6472],[3536,6537],[3553,6605],[3592,6635],[3601,6673],[3572,6714],[3565,6778],[3529,6840],[3379,6963],[3400,7002],[3398,7021],[3477,7040],[3545,7098],[3560,7138],[3527,7307],[3566,7358],[3491,7460],[3386,7531],[3338,7595],[3313,7704],[3339,7758],[3312,7783],[3256,7792],[3270,7823],[3232,7828],[3159,7894],[3086,7917],[3038,7893],[3068,8047],[2972,8070],[2974,8149],[2938,8148],[2968,8215],[2907,8183]]],[[[3132,8612],[3107,8609],[3133,8642],[3137,8622],[3132,8612]]]]}},{"type":"Feature","id":"CO.VC","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.67,"hc-key":"co-vc","hc-a2":"VC","labelrank":"5","hasc":"CO.VC","alt-name":"Valle","woe-id":"2345074","subregion":null,"fips":"CO11","postal-code":"VC","name":"Valle del Cauca","country":"Colombia","type-en":"Department","region":null,"longitude":"-76.59229999999999","woe-name":"Valle del Cauca","latitude":"3.58331","woe-label":"Valle del Cauca, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2779,4332],[2717,4198],[2650,4098],[2627,4000],[2593,3925],[2596,3843],[2576,3778],[2460,3823],[2343,3846],[2324,3756],[2268,3713],[2179,3717],[2123,3760],[2102,3723],[2053,3704],[1971,3751],[1910,3766],[1812,3723],[1775,3756],[1746,3749],[1681,3837],[1686,3872],[1744,3901],[1798,4016],[1838,4028],[1871,4077],[1856,4129],[1889,4130],[1895,4173],[1962,4234],[1901,4239],[1903,4211],[1819,4182],[1781,4226],[1789,4265],[1825,4270],[1860,4327],[1812,4354],[1790,4328],[1759,4239],[1708,4288],[1719,4314],[1702,4383],[1757,4410],[1799,4420],[1812,4431],[1819,4440],[1844,4391],[1902,4391],[1940,4351],[2010,4362],[2051,4310],[2156,4282],[2197,4320],[2243,4315],[2343,4411],[2307,4435],[2307,4488],[2275,4536],[2321,4542],[2342,4582],[2352,4655],[2432,4731],[2440,4778],[2518,4852],[2537,4904],[2579,4945],[2686,4771],[2811,4738],[2814,4709],[2739,4707],[2706,4636],[2697,4553],[2749,4536],[2761,4466],[2736,4416],[2735,4352],[2779,4332]]]}},{"type":"Feature","id":"CO.SU","properties":{"hc-group":"admin1","hc-middle-x":0.67,"hc-middle-y":0.78,"hc-key":"co-su","hc-a2":"SU","labelrank":"5","hasc":"CO.SU","alt-name":null,"woe-id":"2345072","subregion":null,"fips":"CO27","postal-code":"SU","name":"Sucre","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.1319","woe-name":"Sucre","latitude":"9.012359999999999","woe-label":"Sucre, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2831,7751],[2881,7774],[2909,7881],[2883,7925],[2828,7933],[2863,7968],[2902,8101],[2907,8183],[2968,8215],[2938,8148],[2974,8149],[2972,8070],[3068,8047],[3038,7893],[3086,7917],[3159,7894],[3232,7828],[3270,7823],[3256,7792],[3312,7783],[3339,7758],[3313,7704],[3338,7595],[3386,7531],[3491,7460],[3566,7358],[3527,7307],[3560,7138],[3545,7098],[3477,7040],[3398,7021],[3395,7066],[3310,7153],[3224,7132],[3157,7100],[3086,7150],[3045,7357],[3085,7417],[3141,7434],[3139,7509],[3001,7581],[2979,7636],[2830,7711],[2831,7751]]]}},{"type":"Feature","id":"CO.AT","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.18,"hc-key":"co-at","hc-a2":"AT","labelrank":"5","hasc":"CO.AT","alt-name":null,"woe-id":"2345050","subregion":null,"fips":"CO04","postal-code":"AT","name":"Atlántico","country":"Colombia","type-en":"Department","region":null,"longitude":"-74.9941","woe-name":"Atlántico","latitude":"10.6712","woe-label":"Atlantico, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3115,8577],[3137,8594],[3132,8612],[3137,8622],[3133,8642],[3255,8710],[3263,8747],[3375,8819],[3426,8760],[3452,8699],[3449,8496],[3400,8449],[3381,8382],[3329,8294],[3228,8388],[3193,8381],[3168,8428],[3123,8436],[3108,8463],[3133,8525],[3115,8577]]]}},{"type":"Feature","id":"CO.CE","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.26,"hc-key":"co-ce","hc-a2":"CE","labelrank":"5","hasc":"CO.CE","alt-name":"El Cesar","woe-id":"2345056","subregion":null,"fips":"CO10","postal-code":"CE","name":"Cesar","country":"Colombia","type-en":"Department","region":null,"longitude":"-73.43389999999999","woe-name":"Cesar","latitude":"9.848929999999999","woe-label":"Cesar, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4048,6945],[4042,6981],[4067,7052],[4063,7135],[4020,7253],[4034,7364],[3994,7410],[4038,7517],[3988,7600],[3941,7607],[3939,7670],[3910,7737],[3824,7801],[3894,7860],[3990,7846],[4048,7864],[4011,7955],[4011,7987],[3906,8095],[3869,8156],[3879,8231],[3978,8361],[4056,8372],[4178,8444],[4155,8539],[4188,8590],[4135,8616],[4160,8663],[4258,8677],[4372,8663],[4386,8592],[4466,8557],[4497,8526],[4430,8415],[4462,8379],[4537,8380],[4598,8397],[4586,8235],[4553,8123],[4560,8019],[4468,7842],[4433,7817],[4371,7714],[4349,7659],[4306,7619],[4316,7588],[4282,7578],[4263,7396],[4276,7349],[4195,7247],[4190,7218],[4235,7138],[4212,7093],[4258,7049],[4290,7081],[4278,7126],[4310,7132],[4323,7094],[4288,6987],[4289,6923],[4318,6852],[4365,6833],[4326,6775],[4322,6720],[4274,6655],[4233,6636],[4150,6671],[4070,6675],[4073,6727],[4117,6773],[4118,6807],[4084,6833],[4048,6945]]]}},{"type":"Feature","id":"CO.LG","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.5,"hc-key":"co-lg","hc-a2":"LG","labelrank":"5","hasc":"CO.LG","alt-name":"Guajira|Goagira|La Goajira","woe-id":"2345062","subregion":null,"fips":"CO17","postal-code":"LG","name":"La Guajira","country":"Colombia","type-en":"Department","region":null,"longitude":"-72.67019999999999","woe-name":"La Guajira","latitude":"11.4245","woe-label":"La Guajira, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4175,8885],[4185,8940],[4288,8940],[4358,8951],[4508,9080],[4584,9120],[4693,9211],[4887,9272],[5006,9333],[5084,9474],[5063,9557],[5190,9571],[5161,9532],[5192,9506],[5254,9542],[5238,9586],[5195,9589],[5253,9642],[5294,9616],[5363,9683],[5360,9707],[5465,9697],[5648,9622],[5730,9473],[5715,9423],[5615,9360],[5597,9315],[5520,9279],[5192,9191],[5168,9167],[5013,8873],[4860,8842],[4812,8737],[4730,8643],[4700,8556],[4644,8482],[4598,8397],[4537,8380],[4462,8379],[4430,8415],[4497,8526],[4466,8557],[4386,8592],[4372,8663],[4258,8677],[4160,8663],[4132,8757],[4140,8851],[4175,8885]]]}},{"type":"Feature","id":"CO.MA","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.34,"hc-key":"co-ma","hc-a2":"MA","labelrank":"5","hasc":"CO.MA","alt-name":"La Magdalena","woe-id":"2345063","subregion":null,"fips":"CO18","postal-code":"MA","name":"Magdalena","country":"Colombia","type-en":"Department","region":null,"longitude":"-74.34739999999999","woe-name":"Magdalena","latitude":"10.3731","woe-label":"Magdalena, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4160,8663],[4135,8616],[4188,8590],[4155,8539],[4178,8444],[4056,8372],[3978,8361],[3879,8231],[3869,8156],[3906,8095],[4011,7987],[4011,7955],[4048,7864],[3990,7846],[3894,7860],[3824,7801],[3910,7737],[3939,7670],[3941,7607],[3988,7600],[4038,7517],[3994,7410],[3992,7464],[3921,7475],[3883,7517],[3853,7500],[3786,7541],[3718,7612],[3648,7627],[3637,7653],[3585,7636],[3455,7757],[3403,7769],[3414,7886],[3383,7934],[3393,7974],[3353,8039],[3354,8082],[3395,8113],[3398,8144],[3366,8185],[3312,8211],[3329,8294],[3381,8382],[3400,8449],[3449,8496],[3452,8699],[3426,8760],[3375,8819],[3377,8833],[3580,8760],[3682,8744],[3593,8746],[3583,8715],[3606,8667],[3538,8689],[3528,8627],[3601,8661],[3622,8601],[3681,8619],[3733,8756],[3773,8813],[3758,8890],[3792,8965],[3908,8990],[4021,8939],[4185,8940],[4175,8885],[4140,8851],[4132,8757],[4160,8663]]]}},{"type":"Feature","id":"CO.AR","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.42,"hc-key":"co-ar","hc-a2":"AR","labelrank":"7","hasc":"CO.AR","alt-name":null,"woe-id":"2345049","subregion":null,"fips":"CO03","postal-code":"AR","name":"Arauca","country":"Colombia","type-en":"Intendancy","region":null,"longitude":"-70.8913","woe-name":"Arauca","latitude":"6.64307","woe-label":"Arauca, CO, Colombia","type":"Intendencia"},"geometry":{"type":"Polygon","coordinates":[[[5214,6208],[5298,6196],[5335,6223],[5434,6239],[5650,6218],[5655,6196],[5713,6183],[5856,6214],[5893,6248],[6021,6273],[6101,6264],[6138,6220],[6176,6215],[6268,6171],[6371,6198],[6410,6176],[6834,5652],[6842,5652],[6752,5608],[6615,5612],[6570,5588],[6503,5651],[6460,5667],[6400,5730],[6354,5743],[6236,5746],[6152,5712],[6009,5702],[5921,5705],[5701,5741],[5538,5692],[5444,5699],[5371,5692],[5285,5663],[5227,5660],[5093,5610],[5027,5651],[4971,5731],[4987,5788],[5023,5843],[5092,5867],[5112,5908],[5127,6030],[5158,6064],[5214,6208]]]}},{"type":"Feature","id":"CO.NS","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.48,"hc-key":"co-ns","hc-a2":"NS","labelrank":"5","hasc":"CO.NS","alt-name":"Santander del Norte","woe-id":"2345066","subregion":null,"fips":"CO21","postal-code":"NS","name":"Norte de Santander","country":"Colombia","type-en":"Department","region":null,"longitude":"-72.8175","woe-name":"Norte de Santander","latitude":"8.086","woe-label":"Norte de Santander, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4150,6671],[4233,6636],[4274,6655],[4322,6720],[4326,6775],[4365,6833],[4318,6852],[4289,6923],[4288,6987],[4323,7094],[4310,7132],[4278,7126],[4290,7081],[4258,7049],[4212,7093],[4235,7138],[4190,7218],[4195,7247],[4276,7349],[4263,7396],[4282,7578],[4316,7588],[4412,7593],[4541,7672],[4561,7579],[4588,7546],[4658,7574],[4686,7521],[4755,7260],[4768,7239],[4940,7060],[4934,7008],[4973,6910],[4964,6871],[4928,6871],[4877,6811],[4900,6736],[4880,6619],[4893,6568],[4881,6528],[4901,6485],[4984,6453],[5058,6448],[5085,6414],[5092,6327],[5139,6246],[5195,6212],[5075,6229],[5030,6188],[5007,6207],[4946,6125],[4868,6148],[4841,6129],[4822,6205],[4714,6195],[4624,6249],[4659,6306],[4626,6366],[4651,6431],[4612,6507],[4566,6543],[4556,6595],[4412,6605],[4384,6550],[4313,6555],[4228,6590],[4150,6671]]]}},{"type":"Feature","id":"CO.CS","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.51,"hc-key":"co-cs","hc-a2":"CS","labelrank":"5","hasc":"CO.CS","alt-name":null,"woe-id":"2345077","subregion":null,"fips":"CO32","postal-code":"CS","name":"Casanare","country":"Colombia","type-en":"Intendancy","region":null,"longitude":"-71.4622","woe-name":"Casanare","latitude":"5.46249","woe-label":"Casanare, CO, Colombia","type":"Intendencia"},"geometry":{"type":"Polygon","coordinates":[[[4987,5788],[4971,5731],[5027,5651],[5093,5610],[5227,5660],[5285,5663],[5371,5692],[5444,5699],[5538,5692],[5701,5741],[5921,5705],[6009,5702],[6152,5712],[6236,5746],[6354,5743],[6400,5730],[6460,5667],[6503,5651],[6570,5588],[6543,5552],[6498,5448],[6435,5358],[6360,5305],[6259,5292],[6191,5269],[6044,5176],[6038,5134],[5910,5025],[5864,5001],[5800,4873],[5701,4806],[5662,4801],[5476,4720],[5399,4672],[5313,4648],[5263,4593],[5189,4538],[5152,4535],[5100,4571],[4989,4544],[4961,4502],[4918,4509],[4872,4487],[4837,4509],[4819,4480],[4716,4482],[4713,4505],[4601,4617],[4520,4751],[4510,4800],[4534,4912],[4570,4908],[4614,4975],[4583,5015],[4593,5075],[4676,5167],[4740,5101],[4816,5149],[4925,5279],[4990,5246],[5020,5338],[5042,5360],[4969,5436],[4907,5469],[4942,5499],[4975,5613],[4927,5693],[4966,5777],[4987,5788]]]}},{"type":"Feature","id":"CO.GV","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.44,"hc-key":"co-gv","hc-a2":"GV","labelrank":"6","hasc":"CO.GV","alt-name":null,"woe-id":"2345059","subregion":null,"fips":"CO14","postal-code":"GV","name":"Guaviare","country":"Colombia","type-en":"Commissiary","region":null,"longitude":"-71.8348","woe-name":"Guaviare","latitude":"1.85144","woe-label":"Guavaire, CO, Colombia","type":"Comisaría"},"geometry":{"type":"Polygon","coordinates":[[[5178,2145],[5132,2175],[5047,2192],[5000,2241],[4999,2286],[4941,2327],[4931,2377],[4895,2415],[4850,2427],[4768,2483],[4724,2487],[4710,2458],[4673,2487],[4639,2461],[4625,2390],[4549,2327],[4503,2312],[4443,2340],[4282,2494],[4270,2554],[4193,2640],[4121,2760],[4130,2771],[4134,3188],[4170,3248],[4281,3212],[4400,3225],[4417,3249],[4457,3232],[4542,3264],[4602,3306],[4616,3351],[4690,3385],[4725,3359],[4746,3390],[4792,3363],[4807,3398],[4928,3445],[4963,3473],[5037,3448],[5040,3484],[5075,3496],[5072,3535],[5121,3556],[5204,3513],[5304,3534],[5333,3553],[5354,3525],[5370,3566],[5442,3524],[5482,3550],[5597,3544],[5648,3582],[5698,3550],[5735,3569],[5802,3559],[5868,3557],[5959,3513],[6106,3543],[6166,3506],[5911,3400],[5909,3382],[6007,3342],[6053,3283],[6088,3213],[6165,3180],[6293,3148],[6466,3181],[6490,3130],[6422,3068],[6360,3023],[6203,2995],[6168,2972],[6037,2939],[6009,2950],[5902,2948],[5866,2908],[5742,2846],[5675,2792],[5593,2830],[5584,2744],[5566,2722],[5496,2540],[5496,2462],[5452,2388],[5411,2349],[5358,2342],[5338,2307],[5178,2145]]]}},{"type":"Feature","id":"CO.ME","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.43,"hc-key":"co-me","hc-a2":"ME","labelrank":"5","hasc":"CO.ME","alt-name":null,"woe-id":"2345064","subregion":null,"fips":"CO19","postal-code":"ME","name":"Meta","country":"Colombia","type-en":"Department","region":null,"longitude":"-72.9789","woe-name":"Meta","latitude":"3.5302","woe-label":"Meta, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[5802,3559],[5735,3569],[5698,3550],[5648,3582],[5597,3544],[5482,3550],[5442,3524],[5370,3566],[5354,3525],[5333,3553],[5304,3534],[5204,3513],[5121,3556],[5072,3535],[5075,3496],[5040,3484],[5037,3448],[4963,3473],[4928,3445],[4807,3398],[4792,3363],[4746,3390],[4725,3359],[4690,3385],[4616,3351],[4602,3306],[4542,3264],[4457,3232],[4417,3249],[4400,3225],[4281,3212],[4170,3248],[4134,3188],[4130,2771],[4121,2760],[3965,2766],[3583,2900],[3521,2976],[3515,3028],[3561,3117],[3496,3204],[3492,3298],[3528,3462],[3442,3581],[3334,3609],[3381,3709],[3473,3775],[3492,3807],[3515,3951],[3563,4014],[3594,4091],[3636,4075],[3695,4159],[3713,4208],[3778,4293],[3812,4285],[3832,4284],[3908,4346],[4031,4411],[4071,4410],[4048,4468],[4044,4565],[4106,4614],[4154,4590],[4208,4477],[4241,4464],[4319,4487],[4398,4467],[4469,4434],[4514,4740],[4520,4751],[4601,4617],[4713,4505],[4716,4482],[4819,4480],[4837,4509],[4872,4487],[4918,4509],[4961,4502],[4989,4544],[5100,4571],[5152,4535],[5189,4538],[5263,4593],[5313,4648],[5399,4672],[5476,4720],[5662,4801],[5701,4806],[5800,4873],[5802,3875],[5802,3559]]]}},{"type":"Feature","id":"CO.VP","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.38,"hc-key":"co-vp","hc-a2":"VP","labelrank":"5","hasc":"CO.VP","alt-name":null,"woe-id":"2345075","subregion":null,"fips":"CO30","postal-code":"VP","name":"Vaupés","country":"Colombia","type-en":"Commissiary","region":null,"longitude":"-70.5869","woe-name":"Vaupés","latitude":"0.790971","woe-label":"Vaupes, CO, Colombia","type":"Comisaría"},"geometry":{"type":"Polygon","coordinates":[[[5638,1805],[5574,1843],[5498,1834],[5401,1885],[5338,1959],[5296,1956],[5302,1987],[5242,2032],[5248,2066],[5204,2089],[5178,2145],[5338,2307],[5358,2342],[5411,2349],[5452,2388],[5496,2462],[5496,2540],[5566,2722],[5584,2744],[5593,2830],[5675,2792],[5742,2846],[5866,2908],[5902,2948],[6009,2950],[6037,2939],[6168,2972],[6203,2995],[6360,3023],[6422,3068],[6389,2919],[6458,2863],[6593,2816],[6588,2791],[6587,2400],[6645,2420],[6675,2400],[6737,2409],[6828,2401],[6867,2381],[6898,2403],[6951,2387],[7039,2278],[7016,2179],[7049,2138],[6992,2115],[6904,2132],[6854,2180],[6812,2189],[6738,2138],[6689,2149],[6617,2110],[6457,2097],[6444,1640],[6448,1617],[6528,1524],[6583,1501],[6655,1429],[6729,1395],[6760,1306],[6732,1249],[6768,1198],[6789,1129],[6847,1080],[6848,1019],[6879,960],[6865,924],[6837,962],[6763,991],[6730,972],[6710,1052],[6665,1083],[6624,1050],[6525,1059],[6558,1127],[6411,1095],[6445,1050],[6402,1033],[6370,1057],[6371,1107],[6347,1088],[6311,1121],[6354,1173],[6315,1237],[6340,1258],[6336,1347],[6295,1363],[6352,1448],[6311,1460],[6263,1415],[6202,1421],[6168,1489],[6001,1540],[5973,1512],[5941,1520],[5885,1627],[5883,1684],[5848,1726],[5819,1718],[5756,1744],[5734,1794],[5673,1783],[5638,1805]]]}},{"type":"Feature","id":"CO.VD","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.46,"hc-key":"co-vd","hc-a2":"VD","labelrank":"5","hasc":"CO.VD","alt-name":null,"woe-id":"2345076","subregion":null,"fips":"CO31","postal-code":"VD","name":"Vichada","country":"Colombia","type-en":"Commissiary","region":null,"longitude":"-69.2414","woe-name":"Vichada","latitude":"4.89224","woe-label":"Vichada, CO, Colombia","type":"Comisaría"},"geometry":{"type":"Polygon","coordinates":[[[6166,3506],[6106,3543],[5959,3513],[5868,3557],[5802,3559],[5802,3875],[5800,4873],[5864,5001],[5910,5025],[6038,5134],[6044,5176],[6191,5269],[6259,5292],[6360,5305],[6435,5358],[6498,5448],[6543,5552],[6570,5588],[6615,5612],[6752,5608],[6842,5652],[6919,5668],[6961,5626],[7080,5716],[7229,5698],[7354,5666],[7386,5688],[7474,5705],[7567,5694],[7668,5726],[7750,5719],[7811,5734],[7866,5782],[7935,5780],[8037,5757],[8091,5716],[8091,5660],[8132,5612],[8129,5566],[8097,5550],[8023,5470],[7997,5421],[7993,5364],[8016,5298],[7996,5252],[7891,5184],[7870,5131],[7890,5060],[7883,5011],[7904,4981],[7883,4857],[7892,4837],[7861,4625],[7884,4612],[7915,4514],[7901,4469],[7914,4408],[7959,4322],[7908,4266],[7856,4246],[7808,4268],[7785,4253],[7716,4298],[7667,4243],[7655,4277],[7613,4257],[7603,4296],[7546,4306],[7530,4240],[7424,4161],[7332,4162],[7258,4092],[7167,4100],[7156,4060],[7105,4069],[7083,4042],[7041,4081],[7018,4067],[6943,4114],[6853,4087],[6825,4106],[6742,4091],[6711,3994],[6676,4011],[6555,4009],[6511,3969],[6433,3982],[6443,3918],[6410,3912],[6390,3868],[6404,3776],[6359,3771],[6289,3698],[6311,3619],[6241,3546],[6166,3506]]]}},{"type":"Feature","id":"CO.AN","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.62,"hc-key":"co-an","hc-a2":"AN","labelrank":"5","hasc":"CO.AN","alt-name":null,"woe-id":"2345048","subregion":null,"fips":"CO02","postal-code":"AN","name":"Antioquia","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.50709999999999","woe-name":"Antioquia","latitude":"6.70366","woe-label":"Antioquia, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3379,6963],[3529,6840],[3565,6778],[3572,6714],[3601,6673],[3592,6635],[3553,6605],[3536,6537],[3552,6472],[3612,6433],[3678,6514],[3689,6478],[3655,6407],[3657,6309],[3691,6208],[3750,6199],[3956,6394],[3961,6269],[3983,6214],[3907,6159],[3842,6067],[3724,5980],[3664,5962],[3651,5865],[3669,5832],[3579,5742],[3540,5699],[3524,5639],[3542,5602],[3533,5509],[3501,5473],[3487,5415],[3455,5417],[3413,5362],[3356,5397],[3276,5378],[3212,5343],[3211,5303],[3178,5261],[3145,5252],[3093,5199],[3066,5218],[3052,5297],[3023,5353],[2968,5351],[2877,5393],[2890,5359],[2894,5254],[2796,5279],[2719,5236],[2654,5247],[2601,5292],[2566,5335],[2573,5389],[2544,5475],[2558,5548],[2490,5586],[2452,5684],[2381,5685],[2265,5668],[2181,5673],[2116,5768],[2125,5875],[2058,5939],[2051,6010],[2030,5999],[2008,6085],[2096,6104],[2121,6135],[2100,6206],[2194,6222],[2282,6199],[2309,6253],[2294,6365],[2257,6400],[2190,6433],[2073,6569],[1925,6691],[1918,6747],[1981,6783],[1994,6848],[2026,6903],[2006,7012],[2038,6966],[2033,6930],[2104,6935],[2103,6865],[2055,6876],[2038,6825],[2089,6791],[2151,6798],[2167,6898],[2144,7013],[2144,7102],[2101,7168],[2032,7197],[2067,7245],[2207,7283],[2224,7325],[2280,7343],[2354,7403],[2389,7319],[2425,7268],[2490,7215],[2497,7108],[2433,7025],[2367,6909],[2358,6802],[2311,6680],[2315,6589],[2372,6448],[2717,6436],[2781,6523],[2895,6567],[2923,6644],[2980,6720],[3042,6768],[3127,6872],[3200,6885],[3310,6888],[3379,6963]]]}},{"type":"Feature","id":"CO.CO","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.45,"hc-key":"co-co","hc-a2":"CO","labelrank":"5","hasc":"CO.CO","alt-name":null,"woe-id":"2345058","subregion":null,"fips":"CO12","postal-code":"CO","name":"Córdoba","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.65219999999999","woe-name":"Córdoba","latitude":"8.438940000000001","woe-label":"Cordoba, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3379,6963],[3310,6888],[3200,6885],[3127,6872],[3042,6768],[2980,6720],[2923,6644],[2895,6567],[2781,6523],[2717,6436],[2372,6448],[2315,6589],[2311,6680],[2358,6802],[2367,6909],[2433,7025],[2497,7108],[2490,7215],[2425,7268],[2389,7319],[2354,7403],[2365,7429],[2431,7448],[2475,7490],[2476,7531],[2519,7581],[2532,7644],[2564,7655],[2589,7705],[2696,7759],[2755,7770],[2759,7735],[2831,7751],[2830,7711],[2979,7636],[3001,7581],[3139,7509],[3141,7434],[3085,7417],[3045,7357],[3086,7150],[3157,7100],[3224,7132],[3310,7153],[3395,7066],[3398,7021],[3400,7002],[3379,6963]]]}},{"type":"Feature","id":"CO.BY","properties":{"hc-group":"admin1","hc-middle-x":0.7,"hc-middle-y":0.58,"hc-key":"co-by","hc-a2":"BY","labelrank":"5","hasc":"CO.BY","alt-name":null,"woe-id":"2345052","subregion":null,"fips":"CO36","postal-code":"BY","name":"Boyacá","country":"Colombia","type-en":"Department","region":null,"longitude":"-72.93300000000001","woe-name":"Boyacá","latitude":"5.68515","woe-label":"Boyaca, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4868,6148],[4946,6125],[5007,6207],[5030,6188],[5075,6229],[5195,6212],[5214,6208],[5158,6064],[5127,6030],[5112,5908],[5092,5867],[5023,5843],[4987,5788],[4966,5777],[4927,5693],[4975,5613],[4942,5499],[4907,5469],[4969,5436],[5042,5360],[5020,5338],[4990,5246],[4925,5279],[4816,5149],[4740,5101],[4676,5167],[4593,5075],[4583,5015],[4614,4975],[4570,4908],[4534,4912],[4510,4800],[4520,4751],[4494,4715],[4414,4715],[4407,4744],[4358,4753],[4295,4839],[4218,4849],[4203,4878],[4221,4936],[4246,4954],[4218,5073],[4178,5116],[4174,5168],[4134,5216],[4045,5246],[4026,5278],[3911,5160],[3855,5189],[3849,5212],[3755,5230],[3719,5296],[3725,5349],[3711,5426],[3689,5450],[3629,5412],[3569,5427],[3497,5403],[3489,5410],[3487,5415],[3501,5473],[3533,5509],[3542,5602],[3524,5639],[3540,5699],[3579,5742],[3629,5622],[3683,5586],[3725,5606],[3758,5549],[3738,5486],[3762,5462],[3800,5497],[3840,5478],[3929,5390],[4080,5408],[4143,5383],[4159,5511],[4182,5566],[4232,5630],[4298,5582],[4296,5511],[4250,5464],[4294,5405],[4325,5470],[4369,5469],[4412,5550],[4530,5524],[4620,5641],[4669,5660],[4709,5709],[4723,5854],[4683,5903],[4704,5929],[4738,5901],[4769,5840],[4797,5843],[4845,5884],[4873,5976],[4885,6103],[4868,6148]]]}},{"type":"Feature","id":"CO.ST","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.6,"hc-key":"co-st","hc-a2":"ST","labelrank":"5","hasc":"CO.ST","alt-name":null,"woe-id":"2345071","subregion":null,"fips":"CO26","postal-code":"ST","name":"Santander","country":"Colombia","type-en":"Department","region":null,"longitude":"-73.49809999999999","woe-name":"Santander","latitude":"6.85402","woe-label":"Santander, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4868,6148],[4885,6103],[4873,5976],[4845,5884],[4797,5843],[4769,5840],[4738,5901],[4704,5929],[4683,5903],[4723,5854],[4709,5709],[4669,5660],[4620,5641],[4530,5524],[4412,5550],[4369,5469],[4325,5470],[4294,5405],[4250,5464],[4296,5511],[4298,5582],[4232,5630],[4182,5566],[4159,5511],[4143,5383],[4080,5408],[3929,5390],[3840,5478],[3800,5497],[3762,5462],[3738,5486],[3758,5549],[3725,5606],[3683,5586],[3629,5622],[3579,5742],[3669,5832],[3651,5865],[3664,5962],[3724,5980],[3842,6067],[3907,6159],[3983,6214],[3961,6269],[3956,6394],[3975,6465],[3970,6528],[4017,6582],[4029,6700],[3993,6846],[4003,6909],[4048,6945],[4084,6833],[4118,6807],[4117,6773],[4073,6727],[4070,6675],[4150,6671],[4228,6590],[4313,6555],[4384,6550],[4412,6605],[4556,6595],[4566,6543],[4612,6507],[4651,6431],[4626,6366],[4659,6306],[4624,6249],[4714,6195],[4822,6205],[4841,6129],[4868,6148]]]}},{"type":"Feature","id":"CO.CL","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.46,"hc-key":"co-cl","hc-a2":"CL","labelrank":"5","hasc":"CO.CL","alt-name":null,"woe-id":"2345053","subregion":null,"fips":"CO37","postal-code":"CL","name":"Caldas","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.27930000000001","woe-name":"Caldas","latitude":"5.29037","woe-label":"Caldas, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3487,5415],[3489,5410],[3497,5403],[3503,5333],[3477,5273],[3488,5214],[3431,5107],[3377,5122],[3308,5119],[3229,5093],[3183,5024],[3160,5032],[3081,5006],[3046,4960],[3066,4939],[3042,4882],[3058,4854],[3026,4793],[2953,4870],[2877,4879],[2860,4905],[2814,4892],[2789,4951],[2758,4883],[2718,4879],[2674,4950],[2697,5000],[2732,4993],[2751,5045],[2745,5097],[2825,5087],[2857,5117],[2809,5176],[2720,5162],[2719,5236],[2796,5279],[2894,5254],[2890,5359],[2877,5393],[2968,5351],[3023,5353],[3052,5297],[3066,5218],[3093,5199],[3145,5252],[3178,5261],[3211,5303],[3212,5343],[3276,5378],[3356,5397],[3413,5362],[3455,5417],[3487,5415]]]}},{"type":"Feature","id":"CO.CU","properties":{"hc-group":"admin1","hc-middle-x":0.26,"hc-middle-y":0.35,"hc-key":"co-cu","hc-a2":"CU","labelrank":"5","hasc":"CO.CU","alt-name":null,"woe-id":"2345078","subregion":null,"fips":null,"postal-code":"CU","name":"Cundinamarca","country":"Colombia","type-en":"Department","region":null,"longitude":"-74.0613","woe-name":"Cundinamarca","latitude":"5.11121","woe-label":"Cundinamarca, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3431,5107],[3488,5214],[3477,5273],[3503,5333],[3497,5403],[3569,5427],[3629,5412],[3689,5450],[3711,5426],[3725,5349],[3719,5296],[3755,5230],[3849,5212],[3855,5189],[3911,5160],[4026,5278],[4045,5246],[4134,5216],[4174,5168],[4178,5116],[4218,5073],[4246,4954],[4221,4936],[4203,4878],[4218,4849],[4295,4839],[4358,4753],[4407,4744],[4414,4715],[4494,4715],[4520,4751],[4514,4740],[4469,4434],[4398,4467],[4319,4487],[4241,4464],[4208,4477],[4154,4590],[4106,4614],[4044,4565],[4048,4468],[4071,4410],[4031,4411],[3908,4346],[3832,4284],[3812,4285],[3851,4371],[3816,4458],[3842,4500],[3837,4540],[3915,4685],[3901,4710],[3905,4802],[3859,4815],[3808,4713],[3767,4683],[3796,4601],[3774,4444],[3736,4344],[3701,4361],[3673,4302],[3679,4245],[3641,4156],[3594,4091],[3570,4108],[3549,4135],[3582,4248],[3570,4271],[3598,4389],[3555,4453],[3491,4415],[3408,4462],[3346,4453],[3341,4479],[3387,4579],[3386,4670],[3401,4691],[3380,4743],[3422,4793],[3422,4898],[3439,4990],[3431,5107],[3431,5107]]]}},{"type":"Feature","id":"CO.1136","properties":{"hc-group":"admin1","hc-middle-x":0.67,"hc-middle-y":0.38,"hc-key":"co-1136","hc-a2":"BO","labelrank":"9","hasc":"CO.CU","alt-name":"Bogota Capital District","woe-id":"2345079","subregion":null,"fips":"CO34","postal-code":null,"name":"Bogota","country":"Colombia","type-en":"Federal District","region":null,"longitude":"-74.2443","woe-name":"Bogota","latitude":"4.08564","woe-label":"Distrito Especial, CO, Colombia","type":"Distrito Federal"},"geometry":{"type":"Polygon","coordinates":[[[3594,4091],[3641,4156],[3679,4245],[3673,4302],[3701,4361],[3736,4344],[3774,4444],[3796,4601],[3767,4683],[3808,4713],[3859,4815],[3905,4802],[3901,4710],[3915,4685],[3837,4540],[3842,4500],[3816,4458],[3851,4371],[3812,4285],[3778,4293],[3713,4208],[3695,4159],[3636,4075],[3594,4091]]]}},{"type":"Feature","id":"CO.RI","properties":{"hc-group":"admin1","hc-middle-x":0.28,"hc-middle-y":0.62,"hc-key":"co-ri","hc-a2":"RI","labelrank":"5","hasc":"CO.RI","alt-name":null,"woe-id":"2345069","subregion":null,"fips":"CO24","postal-code":"RI","name":"Risaralda","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.6743","woe-name":"Risaralda","latitude":"4.82682","woe-label":"Risaralda, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2719,5236],[2720,5162],[2809,5176],[2857,5117],[2825,5087],[2745,5097],[2751,5045],[2732,4993],[2697,5000],[2674,4950],[2718,4879],[2758,4883],[2789,4951],[2814,4892],[2860,4905],[2877,4879],[2953,4870],[3026,4793],[3018,4740],[2950,4712],[2927,4729],[2811,4738],[2686,4771],[2579,4945],[2565,5035],[2512,5121],[2522,5185],[2568,5214],[2601,5292],[2654,5247],[2719,5236]]]}},{"type":"Feature","id":"CO.QD","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.39,"hc-key":"co-qd","hc-a2":"QD","labelrank":"5","hasc":"CO.QD","alt-name":null,"woe-id":"2345068","subregion":null,"fips":"CO23","postal-code":"QD","name":"Quindío","country":"Colombia","type-en":"Department","region":null,"longitude":"-75.64","woe-name":"Quindío","latitude":"4.47197","woe-label":"Quindio, CO, Colombia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2811,4738],[2927,4729],[2950,4712],[3018,4740],[2990,4678],[2959,4662],[2895,4555],[2882,4471],[2779,4332],[2735,4352],[2736,4416],[2761,4466],[2749,4536],[2697,4553],[2706,4636],[2739,4707],[2814,4709],[2811,4738]]]}},{"type":"Feature","id":"CO.GN","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.49,"hc-key":"co-gn","hc-a2":"GN","labelrank":"5","hasc":"CO.GN","alt-name":"Guania","woe-id":"2345060","subregion":null,"fips":"CO15","postal-code":"GN","name":"Guainía","country":"Colombia","type-en":"Commissiary","region":null,"longitude":"-68.8925","woe-name":"Guainía","latitude":"2.70535","woe-label":"Guainia, CO, Colombia","type":"Comisaría"},"geometry":{"type":"Polygon","coordinates":[[[6593,2816],[6458,2863],[6389,2919],[6422,3068],[6490,3130],[6466,3181],[6293,3148],[6165,3180],[6088,3213],[6053,3283],[6007,3342],[5909,3382],[5911,3400],[6166,3506],[6241,3546],[6311,3619],[6289,3698],[6359,3771],[6404,3776],[6390,3868],[6410,3912],[6443,3918],[6433,3982],[6511,3969],[6555,4009],[6676,4011],[6711,3994],[6742,4091],[6825,4106],[6853,4087],[6943,4114],[7018,4067],[7041,4081],[7083,4042],[7105,4069],[7156,4060],[7167,4100],[7258,4092],[7332,4162],[7424,4161],[7530,4240],[7546,4306],[7603,4296],[7613,4257],[7655,4277],[7667,4243],[7716,4298],[7785,4253],[7808,4268],[7856,4246],[7908,4266],[7959,4322],[7974,4251],[8015,4143],[8077,4127],[8120,4092],[8164,3979],[8229,3928],[8226,3901],[8171,3825],[8134,3810],[7885,3579],[7874,3516],[7942,3551],[8023,3532],[8056,3454],[8115,3435],[8219,3315],[8302,3269],[8318,3227],[8290,3193],[8321,3101],[8353,3087],[8344,3012],[8389,2942],[8445,2795],[8476,2689],[8477,2639],[8510,2576],[8515,2509],[8391,2476],[8370,2528],[8385,2714],[8356,2823],[8331,2873],[8260,2966],[8210,3067],[8146,3099],[8047,3044],[7920,2887],[7874,2854],[7785,2847],[7746,2889],[7718,2958],[7653,3012],[7602,2897],[7678,2828],[6909,2825],[6762,2857],[6717,2836],[6593,2816]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/cl-all.geo.json
const cl_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Chile","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32719"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=19 +south +datum=WGS84 +units=m +no_defs","scale":0.000164224477601,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-13081.6806785,"yoffset":8064329.73848}},"features":[{"type":"Feature","id":"CL.2730","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.53,"hc-key":"cl-2730","hc-a2":"LA","labelrank":"3","hasc":"CL.AR","alt-name":"IX","woe-id":"2345021","subregion":null,"fips":"CI04","postal-code":null,"name":"La Araucanía","country":"Chile","type-en":"Region","region":null,"longitude":"-72.3806","woe-name":"La Araucanía","latitude":"-38.738","woe-label":"Araucania Region, CL, Chile","type":"Región"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-780,3927],[-793,3938],[-796,3954],[-779,3942],[-780,3927]]],[[[-143,4027],[-142,3993],[-132,3948],[-126,3938],[-103,3919],[-100,3903],[-110,3886],[-108,3873],[-128,3856],[-146,3856],[-169,3841],[-185,3838],[-197,3826],[-216,3815],[-226,3801],[-229,3775],[-224,3754],[-221,3716],[-224,3686],[-236,3674],[-232,3660],[-249,3632],[-239,3623],[-244,3608],[-261,3607],[-270,3612],[-280,3641],[-295,3652],[-306,3649],[-334,3585],[-346,3573],[-362,3568],[-395,3567],[-411,3575],[-429,3569],[-443,3586],[-468,3599],[-521,3607],[-560,3604],[-563,3612],[-557,3656],[-561,3664],[-578,3667],[-601,3659],[-624,3659],[-619,3672],[-623,3698],[-636,3746],[-656,3791],[-675,3855],[-672,3829],[-679,3841],[-696,3900],[-698,3913],[-668,3928],[-659,3928],[-646,3913],[-641,3924],[-647,3944],[-646,3957],[-631,3972],[-606,4013],[-608,4024],[-623,4038],[-618,4082],[-603,4106],[-604,4117],[-615,4134],[-605,4152],[-585,4148],[-555,4158],[-523,4157],[-480,4148],[-472,4126],[-443,4096],[-413,4084],[-383,4056],[-359,4061],[-342,4050],[-309,4052],[-300,4043],[-306,4034],[-299,4026],[-293,4002],[-284,3994],[-275,4003],[-242,4020],[-226,4040],[-206,4049],[-185,4047],[-152,4034],[-143,4027]]]]}},{"type":"Feature","id":"CL.BI","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.35,"hc-key":"cl-bi","hc-a2":"BI","labelrank":"3","hasc":"CL.BI","alt-name":"Bíobío|VIII","woe-id":"2345023","subregion":null,"fips":"CI06","postal-code":"BI","name":"Bío-Bío","country":"Chile","type-en":"Region","region":null,"longitude":"-72.3475","woe-name":"Bío-Bío","latitude":"-36.9791","woe-label":"Biobio Region, CL, Chile","type":"Región"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-705,4321],[-716,4308],[-724,4322],[-717,4329],[-705,4321]]],[[[-155,4496],[-163,4485],[-164,4462],[-160,4443],[-164,4435],[-181,4437],[-182,4417],[-191,4394],[-178,4367],[-183,4356],[-177,4332],[-166,4320],[-178,4306],[-178,4289],[-191,4266],[-188,4252],[-171,4224],[-175,4196],[-172,4183],[-184,4172],[-183,4150],[-160,4084],[-142,4049],[-143,4027],[-152,4034],[-185,4047],[-206,4049],[-226,4040],[-242,4020],[-275,4003],[-284,3994],[-293,4002],[-299,4026],[-306,4034],[-300,4043],[-309,4052],[-342,4050],[-359,4061],[-383,4056],[-413,4084],[-443,4096],[-472,4126],[-480,4148],[-523,4157],[-555,4158],[-585,4148],[-605,4152],[-615,4134],[-604,4117],[-603,4106],[-618,4082],[-623,4038],[-608,4024],[-606,4013],[-631,3972],[-646,3957],[-647,3944],[-641,3924],[-646,3913],[-659,3928],[-668,3928],[-698,3913],[-703,3929],[-697,3958],[-700,3972],[-692,3987],[-689,4023],[-692,4045],[-701,4067],[-730,4115],[-740,4125],[-746,4153],[-745,4165],[-729,4185],[-732,4213],[-746,4226],[-742,4253],[-742,4272],[-735,4286],[-702,4265],[-687,4265],[-660,4272],[-644,4288],[-637,4312],[-640,4337],[-635,4348],[-634,4381],[-649,4397],[-631,4414],[-631,4448],[-625,4443],[-618,4416],[-603,4417],[-594,4443],[-602,4469],[-588,4475],[-569,4533],[-572,4569],[-566,4580],[-569,4591],[-564,4605],[-541,4617],[-495,4606],[-489,4602],[-392,4591],[-330,4568],[-321,4567],[-239,4525],[-207,4513],[-174,4518],[-165,4514],[-155,4496]]]]}},{"type":"Feature","id":"CL.LL","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.22,"hc-key":"cl-ll","hc-a2":"LL","labelrank":"3","hasc":"CL.LL","alt-name":"X","woe-id":"2345026","subregion":null,"fips":"CI09","postal-code":"LL","name":"Los Lagos","country":"Chile","type-en":"Region","region":null,"longitude":"-72.90430000000001","woe-name":"Los Lagos","latitude":"-41.0592","woe-label":"Los Lagos Region, CL, Chile","type":"Región"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-654,2568],[-669,2571],[-668,2581],[-656,2577],[-654,2568]]],[[[-603,2644],[-599,2639],[-616,2637],[-628,2646],[-651,2651],[-646,2658],[-603,2644]]],[[[-523,2715],[-512,2719],[-509,2701],[-516,2695],[-534,2720],[-526,2725],[-523,2715]]],[[[-655,2740],[-678,2735],[-686,2745],[-658,2755],[-655,2740]]],[[[-617,2762],[-628,2776],[-661,2791],[-667,2810],[-645,2810],[-639,2797],[-617,2772],[-617,2762]]],[[[-547,2843],[-562,2832],[-563,2842],[-555,2853],[-547,2843]]],[[[-431,2888],[-452,2895],[-446,2910],[-432,2906],[-431,2888]]],[[[-540,2963],[-554,2964],[-558,2993],[-551,2994],[-540,2963]]],[[[-309,3339],[-311,3315],[-328,3293],[-318,3257],[-304,3232],[-307,3215],[-303,3199],[-306,3144],[-311,3111],[-305,3091],[-307,3073],[-299,3055],[-313,3038],[-313,3030],[-300,3013],[-297,2993],[-283,2970],[-279,2937],[-270,2924],[-269,2909],[-282,2896],[-313,2884],[-319,2896],[-332,2890],[-336,2875],[-349,2856],[-348,2842],[-334,2826],[-337,2808],[-329,2792],[-346,2780],[-351,2763],[-344,2727],[-340,2686],[-346,2648],[-335,2626],[-316,2614],[-285,2612],[-266,2605],[-260,2597],[-261,2567],[-292,2558],[-299,2538],[-298,2520],[-284,2519],[-284,2497],[-269,2496],[-253,2482],[-248,2461],[-268,2445],[-271,2436],[-259,2433],[-259,2419],[-236,2389],[-238,2380],[-253,2355],[-264,2367],[-299,2377],[-324,2377],[-335,2382],[-349,2401],[-362,2411],[-361,2421],[-379,2439],[-399,2436],[-413,2426],[-466,2437],[-478,2462],[-487,2446],[-502,2445],[-522,2433],[-522,2443],[-511,2452],[-509,2464],[-498,2474],[-520,2474],[-540,2508],[-535,2531],[-536,2550],[-531,2558],[-502,2574],[-508,2613],[-495,2636],[-482,2638],[-479,2627],[-467,2620],[-473,2640],[-472,2668],[-492,2687],[-499,2727],[-492,2740],[-500,2748],[-499,2767],[-493,2782],[-478,2786],[-463,2783],[-437,2767],[-437,2778],[-463,2790],[-475,2816],[-481,2817],[-489,2838],[-500,2845],[-493,2856],[-465,2866],[-454,2874],[-441,2867],[-417,2803],[-409,2804],[-422,2851],[-410,2861],[-423,2864],[-424,2878],[-414,2886],[-424,2888],[-428,2909],[-423,2932],[-435,2941],[-447,2918],[-470,2926],[-481,2921],[-498,2930],[-514,2949],[-499,2960],[-498,2968],[-465,3004],[-449,3003],[-417,3015],[-401,3034],[-401,3075],[-395,3097],[-405,3082],[-409,3044],[-417,3025],[-457,3009],[-472,3018],[-476,3035],[-489,3053],[-512,3066],[-518,3062],[-534,3069],[-547,3060],[-550,3048],[-565,3038],[-553,3008],[-582,2981],[-630,2981],[-644,2972],[-679,2984],[-700,2985],[-689,3005],[-683,3024],[-659,3027],[-648,3056],[-663,3032],[-689,3030],[-711,3037],[-716,3056],[-726,3077],[-724,3102],[-738,3143],[-744,3152],[-753,3203],[-734,3220],[-743,3234],[-738,3262],[-727,3280],[-735,3290],[-718,3308],[-712,3326],[-725,3356],[-722,3369],[-721,3403],[-703,3397],[-656,3400],[-601,3386],[-571,3391],[-556,3388],[-546,3376],[-531,3341],[-494,3316],[-475,3307],[-452,3302],[-424,3302],[-354,3309],[-341,3312],[-316,3330],[-309,3339]]],[[[-737,2973],[-726,2963],[-733,2957],[-747,2962],[-746,2949],[-721,2944],[-713,2954],[-700,2942],[-702,2954],[-685,2969],[-673,2963],[-661,2973],[-652,2962],[-649,2943],[-659,2932],[-649,2927],[-635,2909],[-629,2895],[-639,2888],[-637,2876],[-615,2863],[-611,2846],[-615,2831],[-623,2833],[-639,2825],[-652,2825],[-674,2811],[-674,2787],[-657,2771],[-677,2763],[-695,2771],[-697,2742],[-681,2729],[-673,2728],[-658,2706],[-633,2694],[-628,2672],[-654,2665],[-672,2670],[-660,2662],[-653,2644],[-643,2643],[-631,2619],[-644,2624],[-623,2606],[-630,2597],[-643,2603],[-670,2592],[-674,2602],[-682,2598],[-675,2584],[-674,2568],[-659,2554],[-656,2545],[-670,2542],[-657,2533],[-668,2521],[-683,2529],[-682,2515],[-698,2511],[-710,2526],[-722,2519],[-730,2525],[-741,2514],[-751,2526],[-786,2535],[-795,2545],[-809,2550],[-801,2581],[-792,2590],[-799,2596],[-778,2619],[-780,2649],[-767,2660],[-763,2729],[-773,2760],[-779,2764],[-780,2787],[-772,2820],[-778,2834],[-774,2848],[-756,2874],[-756,2895],[-759,2930],[-751,2937],[-764,2966],[-759,2976],[-740,2965],[-737,2973]]]]}},{"type":"Feature","id":"CL.LI","properties":{"hc-group":"admin1","hc-middle-x":0.93,"hc-middle-y":0.51,"hc-key":"cl-li","hc-a2":"LI","labelrank":"3","hasc":"CL.LI","alt-name":"Libertador","woe-id":"2345025","subregion":null,"fips":"CI08","postal-code":"LI","name":"Libertador General Bernardo O\'Higgins","country":"Chile","type-en":"Region","region":null,"longitude":"-71.07559999999999","woe-name":"Libertador General Bernardo O\'Higgins","latitude":"-34.5255","woe-label":"O\'Higgins Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[61,5120],[58,5112],[59,5089],[46,5074],[38,5054],[20,5035],[15,5004],[0,4989],[10,4975],[-8,4931],[-12,4910],[-45,4917],[-68,4912],[-83,4916],[-103,4935],[-114,4940],[-148,4939],[-202,4965],[-222,4955],[-234,4957],[-251,4937],[-261,4932],[-307,4934],[-329,4925],[-349,4945],[-378,4952],[-389,4962],[-416,4976],[-406,5005],[-404,5054],[-406,5077],[-394,5087],[-395,5131],[-403,5145],[-388,5170],[-369,5211],[-347,5210],[-332,5201],[-310,5183],[-294,5188],[-272,5181],[-246,5166],[-233,5171],[-205,5150],[-178,5144],[-159,5148],[-120,5190],[-119,5210],[-88,5217],[-66,5217],[-36,5228],[-15,5209],[-5,5187],[4,5180],[24,5180],[31,5173],[38,5151],[51,5141],[61,5120]]]}},{"type":"Feature","id":"CL.AI","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.41,"hc-key":"cl-ai","hc-a2":"AI","labelrank":"3","hasc":"CL.AI","alt-name":"Aisén|Aysén|Aysén del General Carlos Ibáñez del Campo","woe-id":"2345019","subregion":null,"fips":"CI02","postal-code":"AI","name":"Aisén del General Carlos Ibáñez del Campo","country":"Chile","type-en":"Region","region":null,"longitude":"-73.3899","woe-name":"Aisén del General Carlos Ibáñez del Campo","latitude":"-46.8716","woe-label":"Aisen Region, CL, Chile","type":"Región"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-708,1061],[-713,1061],[-731,1093],[-711,1091],[-691,1078],[-691,1073],[-708,1061]]],[[[-644,1086],[-646,1078],[-668,1087],[-681,1100],[-672,1110],[-645,1094],[-644,1086]]],[[[-693,1108],[-676,1086],[-685,1081],[-698,1091],[-722,1100],[-729,1110],[-722,1113],[-703,1106],[-711,1121],[-702,1130],[-693,1130],[-693,1108]]],[[[-724,1155],[-708,1138],[-713,1128],[-737,1113],[-743,1139],[-737,1153],[-750,1137],[-750,1161],[-746,1173],[-724,1155]]],[[[-744,1254],[-744,1245],[-758,1245],[-766,1228],[-776,1245],[-777,1258],[-770,1264],[-746,1261],[-744,1254]]],[[[-853,1285],[-852,1264],[-841,1257],[-846,1251],[-878,1239],[-873,1253],[-895,1262],[-902,1257],[-906,1270],[-895,1281],[-885,1276],[-870,1281],[-861,1290],[-853,1285]]],[[[-824,1266],[-843,1275],[-849,1288],[-840,1297],[-821,1291],[-811,1276],[-824,1266]]],[[[-743,1446],[-753,1458],[-744,1475],[-729,1480],[-721,1468],[-743,1446]]],[[[-683,1488],[-675,1491],[-655,1484],[-671,1458],[-686,1447],[-703,1466],[-693,1492],[-683,1488]]],[[[-884,1545],[-890,1543],[-912,1558],[-927,1563],[-904,1573],[-889,1568],[-884,1545]]],[[[-637,1771],[-626,1772],[-615,1764],[-614,1754],[-631,1727],[-640,1731],[-645,1746],[-666,1762],[-660,1777],[-646,1779],[-637,1771]]],[[[-630,1805],[-622,1806],[-616,1779],[-643,1783],[-644,1791],[-632,1815],[-630,1805]]],[[[-623,1822],[-620,1816],[-639,1818],[-651,1791],[-666,1789],[-668,1807],[-656,1823],[-642,1829],[-631,1842],[-623,1822]]],[[[-685,1852],[-668,1853],[-676,1846],[-675,1821],[-679,1808],[-686,1807],[-700,1832],[-701,1846],[-685,1852]]],[[[-836,1854],[-857,1867],[-857,1882],[-847,1881],[-832,1856],[-836,1854]]],[[[-804,1843],[-822,1848],[-822,1871],[-817,1884],[-793,1892],[-798,1871],[-793,1866],[-804,1843]]],[[[-675,1862],[-692,1860],[-705,1880],[-708,1896],[-693,1912],[-668,1897],[-668,1867],[-675,1862]]],[[[-669,1932],[-653,1938],[-654,1920],[-660,1906],[-693,1917],[-715,1904],[-709,1928],[-701,1943],[-686,1942],[-669,1932]]],[[[-785,1897],[-790,1892],[-800,1908],[-792,1931],[-777,1936],[-786,1915],[-785,1897]]],[[[-678,1960],[-655,1960],[-661,1946],[-673,1942],[-691,1947],[-691,1955],[-678,1960]]],[[[-758,1945],[-787,1956],[-796,1967],[-791,1976],[-769,1979],[-751,1949],[-758,1945]]],[[[-698,1991],[-689,1987],[-656,1990],[-648,1971],[-656,1967],[-692,1963],[-716,1970],[-725,1990],[-707,2005],[-698,1991]]],[[[-752,1976],[-758,1974],[-775,1988],[-776,2001],[-765,2014],[-746,1999],[-752,1976]]],[[[-707,2104],[-735,2112],[-733,2117],[-693,2126],[-694,2110],[-707,2104]]],[[[-662,2112],[-650,2086],[-665,2077],[-683,2095],[-676,2109],[-687,2117],[-677,2131],[-667,2126],[-662,2112]]],[[[-915,2070],[-932,2071],[-931,2085],[-941,2098],[-931,2114],[-924,2114],[-913,2096],[-904,2093],[-905,2076],[-915,2070]]],[[[-621,2140],[-624,2116],[-645,2117],[-648,2136],[-630,2142],[-621,2140]]],[[[-765,2102],[-778,2099],[-794,2106],[-806,2126],[-800,2136],[-787,2137],[-782,2121],[-768,2114],[-765,2102]]],[[[-793,2150],[-799,2142],[-836,2145],[-828,2162],[-797,2159],[-793,2150]]],[[[-862,2179],[-851,2168],[-853,2148],[-864,2145],[-869,2156],[-869,2177],[-862,2179]]],[[[-639,2196],[-627,2169],[-633,2159],[-619,2151],[-651,2139],[-669,2160],[-668,2180],[-663,2192],[-639,2196]]],[[[-741,2201],[-735,2186],[-769,2178],[-779,2193],[-764,2201],[-741,2201]]],[[[-696,2191],[-718,2189],[-728,2200],[-712,2205],[-735,2215],[-709,2217],[-697,2211],[-696,2191]]],[[[-751,2211],[-790,2198],[-783,2186],[-810,2190],[-816,2204],[-808,2217],[-795,2216],[-790,2207],[-780,2225],[-769,2231],[-759,2226],[-751,2211]]],[[[-669,2218],[-686,2221],[-687,2240],[-663,2229],[-669,2218]]],[[[-641,2227],[-664,2240],[-637,2251],[-645,2237],[-641,2227]]],[[[-713,2245],[-692,2247],[-694,2219],[-723,2236],[-731,2252],[-713,2245]]],[[[-555,2267],[-540,2249],[-557,2245],[-565,2250],[-564,2262],[-555,2267]]],[[[-669,2270],[-669,2256],[-687,2253],[-700,2258],[-701,2266],[-678,2264],[-669,2270]]],[[[-767,2258],[-769,2255],[-792,2260],[-784,2271],[-771,2269],[-767,2258]]],[[[-641,2275],[-652,2264],[-659,2269],[-648,2281],[-641,2275]]],[[[-718,2300],[-707,2287],[-688,2280],[-711,2273],[-706,2254],[-717,2255],[-728,2265],[-736,2288],[-720,2290],[-718,2300]]],[[[-765,2293],[-779,2288],[-789,2296],[-771,2302],[-765,2293]]],[[[-686,2303],[-677,2303],[-684,2292],[-701,2294],[-714,2305],[-695,2319],[-686,2303]]],[[[-637,2315],[-643,2313],[-648,2330],[-656,2335],[-664,2353],[-659,2366],[-642,2353],[-643,2340],[-633,2327],[-637,2315]]],[[[-544,2348],[-566,2356],[-566,2377],[-555,2387],[-539,2383],[-544,2348]]],[[[-854,2464],[-834,2444],[-858,2439],[-878,2428],[-888,2438],[-891,2459],[-874,2459],[-873,2469],[-854,2464]]],[[[-883,1019],[-881,1009],[-874,1011],[-871,991],[-880,988],[-886,998],[-904,977],[-929,967],[-936,971],[-937,993],[-920,989],[-903,996],[-883,1019]]],[[[-910,1023],[-935,1013],[-946,1026],[-945,1054],[-936,1068],[-920,1060],[-905,1073],[-903,1065],[-893,1067],[-887,1075],[-889,1043],[-881,1040],[-882,1022],[-911,997],[-924,995],[-929,1006],[-911,1007],[-901,1022],[-920,1013],[-910,1023]]],[[[-746,1011],[-771,1027],[-779,1024],[-808,1027],[-821,1035],[-827,1058],[-813,1084],[-794,1093],[-789,1090],[-780,1067],[-769,1077],[-788,1101],[-788,1129],[-783,1145],[-784,1162],[-777,1168],[-772,1161],[-774,1143],[-763,1131],[-765,1120],[-753,1112],[-745,1093],[-761,1088],[-750,1082],[-744,1048],[-730,1032],[-730,1043],[-722,1037],[-729,1017],[-746,1011]]],[[[-855,1111],[-849,1126],[-856,1125],[-867,1138],[-863,1143],[-879,1178],[-862,1177],[-853,1170],[-834,1178],[-796,1163],[-791,1155],[-795,1133],[-794,1106],[-828,1075],[-855,1111]]],[[[-863,1003],[-861,1018],[-868,1016],[-876,1033],[-875,1044],[-881,1057],[-874,1079],[-885,1085],[-884,1098],[-892,1087],[-909,1076],[-924,1075],[-928,1086],[-901,1098],[-891,1111],[-902,1106],[-900,1118],[-912,1105],[-924,1101],[-930,1110],[-911,1130],[-910,1138],[-925,1127],[-935,1144],[-941,1168],[-922,1187],[-917,1176],[-911,1187],[-899,1195],[-897,1179],[-879,1150],[-877,1137],[-863,1103],[-840,1068],[-848,1061],[-838,1058],[-832,1032],[-842,1015],[-858,998],[-863,1003]]],[[[-852,1203],[-860,1192],[-878,1186],[-873,1222],[-852,1237],[-824,1235],[-812,1255],[-804,1257],[-796,1257],[-790,1237],[-798,1221],[-791,1208],[-801,1201],[-787,1199],[-778,1175],[-791,1182],[-811,1184],[-838,1192],[-840,1204],[-852,1203]]],[[[-717,1226],[-739,1232],[-721,1255],[-715,1258],[-692,1247],[-709,1261],[-693,1267],[-659,1257],[-640,1255],[-622,1250],[-614,1257],[-608,1242],[-612,1230],[-626,1228],[-630,1240],[-648,1228],[-665,1229],[-703,1216],[-717,1226]]],[[[-873,1773],[-891,1770],[-882,1776],[-894,1780],[-900,1797],[-889,1805],[-872,1800],[-860,1790],[-849,1790],[-871,1804],[-856,1802],[-846,1809],[-846,1824],[-824,1825],[-830,1773],[-857,1739],[-870,1735],[-888,1739],[-895,1752],[-873,1765],[-858,1764],[-873,1773]]],[[[-762,1931],[-746,1924],[-738,1914],[-741,1899],[-731,1896],[-743,1883],[-726,1881],[-736,1866],[-751,1864],[-748,1857],[-763,1841],[-776,1838],[-783,1850],[-775,1866],[-776,1879],[-783,1884],[-775,1891],[-779,1911],[-772,1929],[-762,1931]]],[[[-605,1932],[-606,1905],[-610,1893],[-622,1891],[-609,1876],[-607,1866],[-620,1854],[-628,1867],[-649,1884],[-634,1894],[-644,1905],[-642,1921],[-633,1937],[-622,1944],[-605,1932]]],[[[-742,2018],[-744,2029],[-737,2049],[-726,2055],[-710,2053],[-679,2066],[-665,2065],[-651,2055],[-649,2044],[-637,2034],[-634,2015],[-645,1986],[-658,1997],[-684,1993],[-715,2023],[-730,2013],[-742,2018]]],[[[-726,2099],[-692,2091],[-680,2077],[-691,2068],[-710,2073],[-709,2063],[-734,2063],[-752,2052],[-767,2055],[-763,2069],[-751,2076],[-736,2098],[-726,2099]]],[[[-763,2164],[-757,2172],[-708,2175],[-688,2169],[-676,2151],[-703,2143],[-719,2132],[-756,2115],[-772,2125],[-776,2136],[-769,2142],[-783,2144],[-783,2164],[-763,2164]]],[[[-467,2158],[-492,2135],[-508,2114],[-526,2098],[-548,2089],[-555,2091],[-580,2120],[-560,2132],[-549,2124],[-540,2129],[-559,2140],[-571,2130],[-579,2133],[-595,2171],[-578,2187],[-572,2180],[-564,2184],[-549,2174],[-559,2201],[-550,2203],[-534,2194],[-530,2204],[-551,2210],[-556,2220],[-546,2239],[-531,2230],[-524,2235],[-510,2220],[-521,2248],[-505,2255],[-490,2240],[-490,2230],[-498,2213],[-493,2212],[-477,2235],[-456,2227],[-446,2211],[-463,2179],[-481,2180],[-497,2187],[-480,2171],[-466,2167],[-467,2158]]],[[[-741,2398],[-726,2403],[-710,2395],[-689,2407],[-688,2414],[-674,2397],[-667,2380],[-684,2378],[-697,2383],[-688,2391],[-702,2392],[-711,2384],[-699,2376],[-714,2364],[-722,2376],[-743,2375],[-750,2385],[-741,2398]]],[[[-641,1004],[-646,1011],[-661,1014],[-686,1005],[-684,1015],[-700,1021],[-705,1040],[-684,1067],[-671,1079],[-642,1059],[-630,1046],[-627,1055],[-636,1064],[-638,1091],[-619,1097],[-623,1104],[-634,1098],[-656,1104],[-665,1112],[-679,1112],[-675,1119],[-652,1125],[-672,1125],[-685,1117],[-690,1136],[-698,1151],[-723,1158],[-738,1183],[-731,1201],[-752,1185],[-760,1190],[-761,1205],[-741,1220],[-721,1214],[-705,1201],[-693,1163],[-681,1147],[-671,1151],[-683,1165],[-683,1175],[-705,1211],[-681,1215],[-654,1214],[-648,1205],[-634,1202],[-621,1210],[-614,1203],[-615,1190],[-598,1210],[-593,1195],[-571,1187],[-562,1180],[-564,1161],[-554,1150],[-545,1171],[-532,1171],[-516,1160],[-516,1168],[-503,1184],[-506,1187],[-526,1176],[-542,1186],[-564,1208],[-579,1244],[-563,1245],[-554,1230],[-533,1225],[-512,1228],[-496,1222],[-502,1230],[-521,1235],[-544,1231],[-553,1240],[-551,1249],[-572,1258],[-560,1274],[-584,1277],[-591,1282],[-598,1302],[-585,1319],[-592,1323],[-588,1341],[-600,1349],[-607,1332],[-598,1325],[-607,1291],[-603,1282],[-608,1272],[-631,1260],[-652,1265],[-659,1279],[-684,1272],[-702,1277],[-707,1270],[-724,1275],[-715,1283],[-738,1276],[-766,1272],[-788,1289],[-777,1305],[-754,1303],[-770,1314],[-767,1329],[-750,1332],[-749,1320],[-741,1336],[-731,1333],[-728,1322],[-721,1326],[-715,1313],[-735,1302],[-740,1294],[-716,1304],[-699,1287],[-706,1302],[-689,1307],[-698,1316],[-683,1321],[-663,1319],[-677,1330],[-693,1330],[-704,1323],[-713,1328],[-717,1346],[-726,1341],[-739,1356],[-726,1363],[-740,1373],[-749,1358],[-754,1371],[-746,1385],[-733,1396],[-719,1432],[-701,1427],[-698,1437],[-689,1435],[-686,1416],[-676,1401],[-683,1433],[-679,1442],[-660,1447],[-651,1426],[-655,1450],[-669,1453],[-651,1481],[-650,1494],[-665,1504],[-684,1500],[-702,1521],[-688,1545],[-710,1533],[-720,1544],[-716,1556],[-750,1558],[-780,1566],[-757,1556],[-766,1547],[-786,1552],[-794,1531],[-770,1537],[-758,1530],[-747,1533],[-755,1519],[-783,1525],[-795,1521],[-803,1533],[-825,1552],[-830,1539],[-851,1553],[-862,1555],[-863,1563],[-878,1584],[-863,1614],[-853,1622],[-853,1644],[-867,1620],[-875,1621],[-885,1599],[-901,1586],[-903,1595],[-914,1583],[-937,1575],[-947,1576],[-970,1566],[-987,1539],[-981,1535],[-966,1561],[-942,1558],[-951,1541],[-934,1540],[-941,1516],[-929,1521],[-924,1507],[-935,1497],[-962,1490],[-969,1502],[-984,1512],[-984,1521],[-996,1533],[-999,1575],[-987,1595],[-964,1602],[-970,1613],[-953,1616],[-935,1650],[-921,1660],[-910,1649],[-909,1679],[-879,1665],[-874,1670],[-896,1676],[-889,1704],[-881,1707],[-862,1692],[-863,1702],[-855,1726],[-846,1726],[-831,1711],[-824,1720],[-838,1734],[-830,1759],[-819,1775],[-823,1787],[-818,1816],[-810,1824],[-801,1816],[-792,1822],[-790,1801],[-769,1790],[-773,1772],[-766,1772],[-759,1795],[-769,1805],[-773,1827],[-753,1835],[-743,1824],[-739,1829],[-713,1836],[-702,1825],[-719,1811],[-704,1808],[-708,1798],[-696,1802],[-692,1790],[-711,1777],[-694,1771],[-696,1756],[-709,1740],[-692,1752],[-691,1785],[-674,1772],[-671,1757],[-680,1738],[-712,1716],[-740,1705],[-758,1714],[-772,1728],[-771,1721],[-750,1705],[-741,1702],[-711,1710],[-683,1724],[-682,1710],[-688,1688],[-678,1699],[-662,1695],[-654,1687],[-642,1686],[-663,1706],[-665,1716],[-678,1718],[-673,1737],[-653,1742],[-647,1730],[-629,1717],[-627,1706],[-632,1681],[-653,1649],[-666,1622],[-653,1613],[-635,1619],[-621,1665],[-608,1683],[-591,1698],[-582,1737],[-564,1767],[-549,1781],[-566,1779],[-572,1761],[-592,1728],[-596,1715],[-612,1693],[-615,1701],[-606,1730],[-602,1756],[-609,1770],[-612,1791],[-603,1813],[-586,1821],[-595,1830],[-590,1841],[-565,1872],[-556,1876],[-525,1881],[-525,1886],[-545,1888],[-552,1896],[-570,1886],[-582,1864],[-602,1847],[-599,1890],[-592,1939],[-584,1949],[-574,1951],[-564,1967],[-554,1959],[-556,1975],[-533,1987],[-523,1969],[-492,1948],[-461,1944],[-456,1958],[-462,1966],[-486,1961],[-506,1973],[-527,1993],[-543,2002],[-557,1991],[-576,1989],[-584,1994],[-580,2016],[-559,2021],[-554,2030],[-577,2063],[-575,2074],[-566,2083],[-543,2082],[-520,2088],[-497,2114],[-480,2118],[-460,2142],[-444,2145],[-441,2157],[-445,2172],[-437,2207],[-421,2218],[-426,2229],[-422,2262],[-439,2222],[-449,2220],[-451,2229],[-491,2255],[-490,2267],[-516,2279],[-538,2282],[-545,2291],[-535,2296],[-531,2311],[-547,2300],[-565,2305],[-564,2323],[-553,2319],[-553,2333],[-544,2339],[-534,2328],[-538,2360],[-525,2381],[-515,2421],[-505,2408],[-482,2427],[-484,2449],[-487,2431],[-508,2425],[-522,2433],[-502,2445],[-487,2446],[-478,2462],[-466,2437],[-413,2426],[-399,2436],[-379,2439],[-361,2421],[-362,2411],[-349,2401],[-335,2382],[-324,2377],[-299,2377],[-264,2367],[-253,2355],[-275,2336],[-264,2304],[-268,2291],[-263,2273],[-274,2265],[-265,2253],[-248,2256],[-229,2254],[-187,2256],[-141,2250],[-133,2243],[-122,2221],[-124,2210],[-135,2206],[-145,2185],[-144,2159],[-163,2144],[-196,2159],[-223,2148],[-254,2153],[-268,2143],[-307,2152],[-315,2144],[-311,2110],[-298,2110],[-273,2099],[-247,2104],[-235,2093],[-213,2092],[-206,2084],[-193,2055],[-160,2021],[-154,2003],[-173,1980],[-193,1971],[-186,1950],[-195,1940],[-232,1934],[-242,1923],[-238,1915],[-245,1903],[-247,1875],[-237,1862],[-235,1842],[-220,1835],[-208,1811],[-229,1786],[-238,1770],[-261,1763],[-266,1758],[-235,1733],[-231,1691],[-217,1656],[-219,1636],[-216,1607],[-248,1577],[-263,1575],[-268,1536],[-257,1519],[-273,1506],[-270,1495],[-252,1484],[-245,1471],[-254,1452],[-273,1461],[-279,1460],[-276,1441],[-281,1429],[-302,1401],[-332,1394],[-339,1380],[-330,1374],[-333,1344],[-353,1302],[-359,1272],[-367,1254],[-353,1233],[-342,1229],[-337,1217],[-327,1212],[-319,1172],[-321,1151],[-315,1138],[-330,1133],[-340,1118],[-366,1102],[-372,1085],[-365,1056],[-363,1026],[-365,1006],[-391,970],[-406,960],[-424,957],[-440,946],[-451,926],[-454,908],[-467,888],[-465,870],[-641,1004],[-641,1004]]]]}},{"type":"Feature","id":"CL.MA","properties":{"hc-group":"admin1","hc-middle-x":0.3,"hc-middle-y":0.33,"hc-key":"cl-ma","hc-a2":"MA","labelrank":"3","hasc":"CL.MA","alt-name":"Magalhães|Magellan et Antarctique Chilienne|Región de Magallanes y de la Antártica Chilena","woe-id":"2345027","subregion":null,"fips":"CI10","postal-code":"MA","name":"Magallanes y Antártica Chilena","country":"Chile","type-en":"Region","region":null,"longitude":"-71.39749999999999","woe-name":"Magallanes y Antártica Chilena","latitude":"-53.4723","woe-label":"Magallanes and Antartica Chilena Region, CL, Chile","type":"Región"},"geometry":{"type":"MultiPolygon","coordinates":[[[[585,-974],[591,-981],[590,-994],[572,-984],[569,-969],[585,-974]]],[[[611,-999],[599,-989],[607,-969],[614,-996],[611,-999]]],[[[513,-913],[512,-905],[518,-894],[516,-883],[522,-877],[529,-883],[534,-904],[513,-913]]],[[[201,-840],[199,-850],[178,-852],[182,-844],[178,-831],[201,-840]]],[[[154,-822],[145,-843],[141,-828],[143,-824],[154,-822]]],[[[647,-835],[620,-833],[618,-819],[632,-805],[651,-807],[656,-827],[647,-835]]],[[[717,-795],[725,-801],[716,-805],[711,-816],[697,-823],[688,-817],[691,-801],[707,-789],[717,-795]]],[[[660,-759],[663,-774],[644,-759],[622,-747],[625,-738],[654,-748],[660,-759]]],[[[76,-696],[78,-702],[49,-710],[33,-710],[22,-702],[36,-698],[44,-691],[76,-696]]],[[[-188,-645],[-173,-671],[-182,-677],[-184,-661],[-192,-648],[-196,-655],[-203,-647],[-188,-645]]],[[[-346,-598],[-350,-612],[-369,-610],[-362,-601],[-346,-598]]],[[[-246,-560],[-240,-569],[-252,-566],[-266,-588],[-279,-565],[-260,-560],[-259,-553],[-246,-560]]],[[[77,-508],[93,-508],[105,-521],[97,-531],[65,-522],[54,-505],[59,-497],[77,-508]]],[[[92,-474],[87,-497],[73,-498],[55,-481],[68,-479],[88,-470],[92,-474]]],[[[-400,-486],[-401,-494],[-391,-489],[-388,-509],[-397,-505],[-410,-509],[-414,-496],[-438,-497],[-423,-483],[-400,-486]]],[[[-484,-344],[-499,-349],[-500,-359],[-510,-364],[-507,-349],[-518,-347],[-509,-340],[-514,-328],[-484,-344]]],[[[-572,-295],[-582,-288],[-567,-270],[-554,-265],[-560,-288],[-572,-295]]],[[[12,-149],[1,-145],[27,-125],[25,-138],[12,-149]]],[[[-614,-97],[-634,-89],[-640,-79],[-630,-64],[-624,-68],[-614,-97]]],[[[-638,-46],[-652,-38],[-652,-16],[-643,-10],[-643,-33],[-637,-34],[-638,-46]]],[[[-678,40],[-680,29],[-697,21],[-703,37],[-670,58],[-678,40]]],[[[-690,50],[-689,67],[-663,99],[-655,91],[-653,79],[-690,50]]],[[[-539,128],[-529,135],[-520,130],[-515,113],[-515,94],[-521,83],[-533,91],[-540,109],[-559,115],[-566,129],[-553,140],[-539,128]]],[[[-744,138],[-742,134],[-748,107],[-759,98],[-765,103],[-764,123],[-757,147],[-742,145],[-744,138]]],[[[-550,175],[-543,161],[-535,161],[-534,139],[-542,138],[-554,163],[-560,167],[-561,182],[-550,175]]],[[[-733,200],[-749,203],[-747,217],[-736,220],[-733,200]]],[[[-632,244],[-648,245],[-647,266],[-640,265],[-631,251],[-632,244]]],[[[-610,283],[-598,258],[-597,244],[-620,248],[-618,256],[-625,263],[-625,281],[-610,283]]],[[[-537,285],[-540,266],[-560,270],[-549,283],[-566,281],[-557,295],[-544,296],[-537,285]]],[[[-739,310],[-761,303],[-765,307],[-756,324],[-740,324],[-739,310]]],[[[-666,348],[-676,343],[-676,333],[-654,327],[-652,314],[-657,303],[-685,315],[-692,336],[-675,354],[-666,348]]],[[[-628,295],[-640,331],[-645,353],[-644,372],[-650,383],[-641,380],[-635,356],[-617,314],[-628,295]]],[[[-777,446],[-770,450],[-770,406],[-784,413],[-791,430],[-779,435],[-786,445],[-777,446]]],[[[-703,482],[-715,477],[-716,498],[-700,492],[-703,482]]],[[[-703,535],[-696,531],[-710,524],[-712,514],[-726,501],[-737,500],[-730,523],[-735,526],[-724,538],[-703,535]]],[[[-773,514],[-784,501],[-808,503],[-800,526],[-775,555],[-760,554],[-772,535],[-773,514]]],[[[-685,752],[-692,756],[-694,778],[-700,782],[-696,806],[-680,796],[-667,771],[-685,752]]],[[[-888,797],[-886,784],[-878,780],[-881,765],[-900,782],[-897,803],[-888,797]]],[[[-829,941],[-824,926],[-846,917],[-858,936],[-857,952],[-867,959],[-872,972],[-853,969],[-836,959],[-829,941]]],[[[-836,968],[-861,976],[-858,985],[-834,1020],[-828,1003],[-836,968]]],[[[-812,1017],[-799,1021],[-785,1018],[-813,992],[-824,993],[-818,1012],[-812,1017]]],[[[498,-968],[536,-976],[536,-967],[551,-977],[541,-977],[539,-990],[531,-989],[523,-997],[525,-982],[515,-990],[507,-978],[498,-992],[482,-985],[480,-974],[498,-968]]],[[[562,-937],[561,-905],[571,-907],[576,-924],[569,-939],[584,-942],[584,-960],[572,-963],[572,-954],[562,-950],[539,-947],[541,-925],[546,-924],[562,-937]]],[[[617,-794],[594,-822],[586,-826],[564,-822],[557,-814],[562,-800],[559,-790],[550,-787],[532,-792],[526,-812],[501,-813],[492,-803],[511,-805],[491,-795],[486,-785],[471,-800],[456,-803],[444,-792],[450,-786],[439,-766],[443,-752],[440,-731],[416,-734],[414,-714],[436,-711],[480,-710],[502,-713],[515,-719],[527,-716],[584,-719],[603,-731],[622,-761],[623,-775],[617,-794]]],[[[101,-770],[90,-774],[83,-763],[71,-768],[85,-784],[73,-788],[65,-798],[62,-783],[56,-799],[53,-784],[61,-769],[51,-756],[29,-774],[22,-754],[13,-764],[5,-757],[-8,-761],[-18,-742],[-5,-738],[-18,-734],[-17,-726],[-4,-726],[15,-733],[14,-721],[29,-731],[52,-730],[44,-726],[63,-710],[87,-708],[92,-712],[62,-725],[59,-738],[47,-740],[27,-735],[25,-743],[38,-748],[56,-744],[78,-753],[94,-746],[99,-752],[89,-758],[101,-770]]],[[[226,-738],[211,-737],[203,-743],[181,-746],[174,-741],[158,-748],[158,-733],[152,-724],[170,-722],[159,-716],[158,-705],[170,-701],[179,-710],[181,-724],[191,-722],[191,-707],[183,-699],[197,-699],[223,-706],[224,-710],[221,-721],[237,-708],[280,-723],[265,-728],[249,-724],[253,-730],[238,-735],[226,-730],[226,-738]]],[[[-65,-704],[-71,-726],[-78,-726],[-77,-714],[-85,-726],[-95,-709],[-88,-696],[-76,-694],[-53,-698],[-44,-696],[-32,-707],[-21,-700],[-11,-704],[-14,-714],[-29,-727],[-42,-719],[-39,-711],[-53,-715],[-54,-704],[-65,-704]]],[[[-241,-498],[-258,-493],[-245,-484],[-235,-494],[-226,-505],[-240,-521],[-240,-537],[-254,-530],[-261,-539],[-274,-536],[-277,-525],[-264,-515],[-253,-514],[-247,-506],[-257,-503],[-241,-498]]],[[[-38,-476],[-28,-486],[-35,-515],[-26,-505],[-23,-533],[-35,-540],[-36,-549],[-48,-566],[-53,-551],[-58,-563],[-82,-540],[-65,-537],[-63,-520],[-74,-533],[-81,-518],[-84,-529],[-97,-521],[-99,-512],[-87,-503],[-107,-498],[-108,-520],[-114,-523],[-114,-537],[-124,-526],[-116,-512],[-126,-518],[-128,-528],[-135,-524],[-142,-508],[-126,-483],[-131,-483],[-136,-456],[-132,-448],[-120,-444],[-114,-456],[-105,-443],[-92,-477],[-90,-451],[-77,-457],[-70,-480],[-65,-506],[-56,-483],[-54,-501],[-48,-499],[-45,-478],[-38,-476]]],[[[-136,-490],[-153,-508],[-160,-504],[-181,-474],[-185,-477],[-178,-496],[-164,-508],[-157,-521],[-151,-524],[-151,-536],[-163,-533],[-169,-543],[-162,-546],[-164,-558],[-188,-553],[-175,-528],[-184,-521],[-198,-519],[-210,-508],[-199,-503],[-213,-502],[-199,-496],[-210,-481],[-220,-494],[-231,-482],[-227,-464],[-238,-445],[-216,-446],[-204,-459],[-201,-445],[-188,-433],[-194,-425],[-186,-421],[-172,-430],[-166,-440],[-165,-454],[-161,-435],[-149,-433],[-136,-440],[-158,-464],[-144,-457],[-143,-470],[-154,-476],[-149,-486],[-137,-482],[-136,-490]]],[[[52,-500],[43,-516],[27,-509],[4,-489],[6,-484],[-7,-465],[-10,-442],[-5,-434],[-11,-421],[-8,-412],[9,-407],[34,-420],[39,-407],[22,-396],[19,-372],[43,-350],[48,-331],[59,-332],[62,-345],[59,-361],[69,-399],[69,-419],[64,-423],[84,-457],[76,-469],[67,-472],[58,-465],[38,-441],[28,-447],[46,-474],[44,-484],[52,-500]]],[[[-504,-315],[-485,-328],[-464,-331],[-473,-324],[-460,-323],[-470,-315],[-464,-309],[-446,-304],[-436,-310],[-451,-321],[-434,-343],[-453,-355],[-460,-339],[-461,-347],[-478,-341],[-488,-330],[-501,-324],[-504,-315]]],[[[-494,-153],[-481,-157],[-484,-144],[-473,-153],[-469,-148],[-452,-155],[-444,-163],[-446,-179],[-461,-175],[-456,-167],[-464,-161],[-486,-161],[-512,-172],[-506,-159],[-494,-153]]],[[[-561,-185],[-536,-198],[-540,-204],[-529,-209],[-526,-199],[-514,-215],[-499,-216],[-481,-237],[-488,-212],[-468,-228],[-471,-248],[-458,-268],[-452,-256],[-459,-247],[-456,-231],[-433,-250],[-427,-260],[-434,-269],[-421,-266],[-386,-290],[-389,-294],[-409,-295],[-424,-292],[-443,-273],[-449,-284],[-466,-286],[-475,-280],[-455,-276],[-470,-271],[-477,-248],[-484,-254],[-492,-240],[-503,-239],[-505,-227],[-516,-228],[-525,-214],[-530,-221],[-552,-216],[-548,-224],[-559,-230],[-574,-227],[-589,-213],[-585,-223],[-595,-231],[-601,-217],[-616,-213],[-617,-196],[-633,-197],[-637,-189],[-650,-185],[-648,-165],[-655,-157],[-680,-140],[-668,-129],[-654,-142],[-635,-148],[-636,-156],[-624,-168],[-613,-168],[-618,-180],[-609,-189],[-604,-182],[-594,-191],[-578,-186],[-571,-198],[-561,-185]]],[[[-549,-90],[-535,-75],[-540,-74],[-560,-103],[-574,-118],[-575,-106],[-585,-102],[-587,-85],[-564,-77],[-547,-52],[-563,-52],[-563,-38],[-540,-31],[-522,-35],[-511,-28],[-502,-47],[-504,-57],[-518,-73],[-510,-81],[-518,-108],[-541,-119],[-545,-111],[-531,-88],[-547,-102],[-549,-90]]],[[[-719,5],[-716,19],[-707,11],[-675,17],[-665,16],[-654,0],[-661,-36],[-681,-35],[-681,-24],[-690,-29],[-701,-26],[-701,-7],[-719,5]]],[[[-579,30],[-577,41],[-566,38],[-554,28],[-530,18],[-523,8],[-525,-8],[-516,-15],[-529,-26],[-538,-16],[-529,-12],[-562,11],[-579,30]]],[[[-598,17],[-585,12],[-584,17],[-601,28],[-588,27],[-615,38],[-622,32],[-636,42],[-617,56],[-606,50],[-584,31],[-552,-3],[-554,-14],[-580,-30],[-592,-23],[-593,-10],[-603,-9],[-595,2],[-603,10],[-598,17]]],[[[-559,70],[-582,80],[-586,91],[-582,105],[-571,105],[-528,69],[-512,42],[-509,19],[-542,58],[-559,70]]],[[[-713,69],[-705,110],[-701,121],[-697,112],[-685,112],[-674,122],[-678,110],[-695,79],[-686,84],[-701,50],[-711,47],[-715,33],[-720,40],[-715,56],[-703,71],[-713,69]]],[[[-648,135],[-660,160],[-637,152],[-636,144],[-627,147],[-625,132],[-612,132],[-598,122],[-608,117],[-586,117],[-593,97],[-610,97],[-623,108],[-633,110],[-646,122],[-648,135]]],[[[-753,71],[-737,91],[-749,92],[-738,123],[-733,112],[-720,106],[-715,119],[-726,138],[-719,140],[-722,155],[-730,156],[-735,169],[-733,179],[-724,175],[-716,176],[-704,135],[-714,102],[-713,88],[-724,70],[-720,60],[-730,40],[-731,55],[-741,41],[-739,59],[-753,71]]],[[[-593,213],[-587,211],[-580,196],[-571,175],[-574,168],[-560,157],[-558,148],[-567,141],[-579,141],[-613,163],[-611,174],[-597,176],[-600,194],[-587,194],[-593,213]]],[[[-805,170],[-807,197],[-793,211],[-793,247],[-796,263],[-780,275],[-783,248],[-777,267],[-757,256],[-758,236],[-767,239],[-777,220],[-783,230],[-775,200],[-780,189],[-789,194],[-787,180],[-805,170]]],[[[-716,235],[-753,219],[-755,231],[-733,248],[-720,266],[-742,251],[-750,260],[-742,272],[-729,277],[-723,296],[-702,301],[-689,300],[-678,279],[-692,284],[-675,256],[-683,246],[-693,247],[-702,277],[-716,235]]],[[[-719,345],[-707,355],[-724,358],[-724,345],[-733,334],[-744,341],[-736,363],[-750,365],[-755,359],[-758,375],[-748,377],[-754,386],[-745,387],[-699,380],[-693,391],[-703,391],[-704,401],[-691,406],[-712,429],[-710,435],[-689,430],[-675,417],[-659,398],[-665,382],[-655,367],[-658,355],[-655,337],[-668,360],[-698,347],[-696,334],[-716,328],[-719,345]]],[[[-763,430],[-742,426],[-752,435],[-754,446],[-741,438],[-741,450],[-725,439],[-726,426],[-718,413],[-729,412],[-717,396],[-707,408],[-712,388],[-755,396],[-743,405],[-763,419],[-763,430]]],[[[-824,408],[-834,415],[-853,413],[-853,427],[-845,440],[-861,438],[-855,457],[-840,457],[-838,463],[-853,484],[-860,489],[-846,499],[-842,493],[-836,499],[-826,490],[-793,494],[-810,465],[-822,465],[-829,474],[-837,472],[-822,456],[-825,449],[-820,414],[-824,408]]],[[[-646,419],[-646,406],[-656,410],[-667,428],[-662,433],[-684,436],[-697,463],[-686,479],[-678,482],[-679,492],[-671,494],[-696,499],[-705,507],[-717,506],[-697,522],[-684,509],[-665,515],[-654,482],[-642,469],[-635,455],[-654,456],[-635,444],[-622,426],[-624,407],[-631,408],[-638,423],[-646,419]]],[[[-751,605],[-746,591],[-752,576],[-772,574],[-773,564],[-791,551],[-811,525],[-817,509],[-835,510],[-836,520],[-825,529],[-816,547],[-836,534],[-832,542],[-847,537],[-857,525],[-863,530],[-862,551],[-855,581],[-847,589],[-830,584],[-847,574],[-831,561],[-808,563],[-811,571],[-806,595],[-818,587],[-831,597],[-840,596],[-855,608],[-859,619],[-846,630],[-840,623],[-835,613],[-829,623],[-810,626],[-810,610],[-800,611],[-794,600],[-777,614],[-776,606],[-796,584],[-771,588],[-751,605]]],[[[-861,709],[-863,701],[-890,682],[-890,674],[-903,665],[-908,695],[-889,701],[-889,711],[-902,715],[-908,729],[-886,751],[-861,741],[-848,714],[-831,691],[-822,666],[-833,669],[-843,680],[-838,664],[-852,670],[-861,687],[-855,692],[-861,709]]],[[[-850,882],[-838,902],[-824,907],[-808,896],[-804,910],[-787,893],[-789,843],[-807,851],[-823,872],[-843,867],[-836,880],[-850,874],[-850,882]]],[[[-909,869],[-885,895],[-891,896],[-883,913],[-873,916],[-877,901],[-861,890],[-865,876],[-871,878],[-878,862],[-891,861],[-895,836],[-901,835],[-922,844],[-919,866],[-906,879],[-909,869]]],[[[-906,902],[-901,925],[-911,914],[-931,918],[-933,939],[-928,949],[-922,944],[-914,957],[-901,956],[-907,936],[-887,961],[-892,946],[-879,936],[-884,955],[-870,952],[-862,941],[-848,906],[-854,894],[-863,903],[-870,927],[-888,919],[-895,901],[-906,902]]],[[[366,-679],[364,-704],[319,-673],[313,-677],[326,-682],[330,-689],[350,-707],[342,-713],[296,-721],[286,-720],[261,-707],[224,-697],[201,-686],[197,-674],[204,-672],[204,-649],[198,-667],[189,-651],[189,-679],[181,-678],[182,-659],[177,-658],[177,-677],[169,-686],[158,-686],[148,-669],[148,-646],[144,-656],[147,-687],[131,-695],[121,-680],[117,-694],[104,-697],[93,-692],[90,-681],[106,-651],[90,-666],[85,-691],[43,-677],[20,-694],[9,-689],[6,-680],[16,-672],[41,-663],[53,-653],[68,-635],[53,-632],[39,-645],[47,-651],[29,-663],[21,-660],[10,-669],[-9,-666],[-3,-655],[12,-647],[-15,-652],[-13,-661],[-22,-676],[-28,-669],[-21,-660],[-21,-645],[-13,-635],[-32,-626],[-30,-644],[-39,-638],[-48,-656],[-71,-644],[-53,-636],[-64,-633],[-66,-620],[-80,-606],[-77,-619],[-88,-617],[-90,-644],[-94,-639],[-104,-654],[-107,-641],[-119,-641],[-113,-626],[-120,-625],[-126,-645],[-132,-645],[-135,-633],[-146,-629],[-146,-638],[-156,-638],[-156,-648],[-179,-646],[-183,-637],[-168,-623],[-187,-625],[-188,-605],[-177,-608],[-188,-593],[-175,-594],[-162,-615],[-133,-623],[-146,-606],[-126,-616],[-118,-615],[-131,-606],[-141,-592],[-162,-594],[-164,-580],[-151,-573],[-143,-576],[-124,-603],[-104,-600],[-108,-592],[-123,-588],[-122,-574],[-113,-586],[-112,-576],[-87,-589],[-77,-580],[-95,-573],[-84,-565],[-54,-580],[-37,-603],[-46,-586],[-44,-581],[-25,-585],[-18,-590],[-12,-575],[-16,-553],[9,-546],[18,-554],[31,-548],[41,-552],[22,-577],[25,-592],[15,-611],[17,-626],[21,-612],[30,-624],[38,-626],[27,-607],[34,-577],[45,-566],[70,-591],[88,-601],[101,-618],[104,-611],[92,-595],[121,-609],[100,-592],[71,-579],[66,-564],[57,-557],[57,-546],[46,-533],[32,-531],[7,-533],[-3,-527],[-8,-508],[4,-512],[-9,-501],[-15,-489],[52,-528],[88,-547],[101,-556],[119,-575],[118,-565],[126,-556],[114,-553],[109,-545],[129,-525],[146,-538],[147,-561],[156,-561],[163,-573],[161,-596],[171,-586],[178,-591],[175,-606],[179,-611],[185,-592],[172,-573],[173,-562],[161,-542],[165,-533],[192,-543],[202,-560],[219,-578],[213,-559],[224,-550],[267,-578],[270,-588],[247,-612],[238,-629],[245,-646],[246,-627],[252,-623],[266,-602],[281,-611],[278,-588],[283,-580],[308,-585],[309,-575],[292,-564],[279,-561],[261,-544],[218,-525],[205,-516],[160,-499],[131,-479],[123,-446],[115,-432],[108,-401],[110,-387],[116,-380],[153,-358],[171,-359],[197,-350],[246,-317],[253,-297],[247,-270],[193,-272],[146,-284],[134,-294],[118,-294],[104,-304],[95,-302],[79,-283],[63,-275],[57,-260],[58,-235],[63,-220],[62,-202],[65,-175],[80,-162],[78,-173],[81,-189],[95,-189],[113,-174],[121,-146],[117,-139],[98,-133],[84,-147],[92,-134],[87,-114],[78,-109],[64,-109],[64,-103],[88,-97],[113,-95],[135,-126],[151,-127],[166,-109],[181,-106],[205,-69],[199,-46],[206,-31],[235,-14],[242,-20],[268,-67],[283,-80],[304,-70],[321,-68],[339,-54],[345,-42],[351,-44],[371,-68],[366,-679]]],[[[-465,870],[-452,867],[-460,856],[-518,851],[-517,832],[-533,812],[-530,799],[-538,787],[-523,760],[-526,742],[-511,723],[-514,709],[-523,698],[-528,673],[-514,661],[-510,649],[-518,631],[-517,615],[-477,581],[-467,554],[-461,500],[-447,477],[-443,446],[-428,441],[-413,452],[-395,473],[-373,487],[-352,474],[-344,475],[-324,495],[-302,490],[-287,483],[-293,464],[-292,451],[-278,430],[-277,395],[-281,375],[-289,373],[-298,357],[-295,337],[-272,319],[-281,299],[-282,273],[-285,248],[-302,226],[-298,219],[-284,218],[-276,193],[-270,185],[-253,180],[-232,165],[-211,140],[-211,111],[-203,106],[141,110],[222,76],[270,74],[306,63],[338,45],[373,39],[402,28],[403,15],[382,17],[357,27],[325,28],[306,38],[284,55],[266,56],[247,44],[230,42],[223,31],[221,4],[213,0],[210,-15],[191,-37],[172,-35],[161,-25],[144,-38],[108,-54],[99,-72],[79,-69],[46,-94],[40,-88],[49,-81],[35,-80],[37,-88],[12,-99],[11,-89],[-12,-98],[-3,-102],[7,-116],[-4,-123],[-8,-146],[-3,-153],[-3,-171],[-11,-188],[-14,-206],[-26,-237],[-26,-267],[-30,-283],[-28,-307],[-20,-342],[-26,-367],[-24,-388],[-34,-404],[-66,-423],[-84,-425],[-108,-412],[-136,-411],[-174,-387],[-176,-377],[-187,-385],[-196,-372],[-206,-381],[-216,-375],[-229,-359],[-246,-347],[-249,-338],[-267,-319],[-277,-299],[-270,-286],[-273,-277],[-250,-251],[-219,-257],[-214,-280],[-219,-292],[-224,-286],[-236,-307],[-216,-301],[-203,-292],[-202,-279],[-206,-250],[-200,-243],[-178,-243],[-174,-250],[-167,-308],[-200,-330],[-200,-339],[-168,-326],[-159,-312],[-163,-269],[-159,-242],[-139,-233],[-133,-225],[-113,-214],[-99,-212],[-88,-201],[-78,-180],[-69,-154],[-56,-152],[-56,-141],[-65,-122],[-79,-116],[-97,-122],[-105,-99],[-104,-129],[-119,-127],[-127,-139],[-189,-183],[-206,-214],[-218,-219],[-231,-212],[-240,-197],[-258,-192],[-250,-202],[-270,-197],[-289,-200],[-275,-208],[-267,-202],[-259,-220],[-242,-224],[-238,-239],[-259,-237],[-265,-246],[-280,-237],[-281,-249],[-272,-256],[-281,-264],[-293,-261],[-287,-273],[-289,-288],[-312,-282],[-295,-303],[-282,-300],[-260,-335],[-287,-338],[-303,-329],[-311,-319],[-322,-317],[-330,-296],[-334,-311],[-338,-296],[-361,-288],[-385,-270],[-406,-259],[-425,-235],[-404,-243],[-370,-234],[-359,-242],[-330,-255],[-334,-267],[-323,-268],[-320,-254],[-339,-236],[-327,-239],[-334,-228],[-315,-229],[-324,-221],[-341,-220],[-347,-230],[-363,-218],[-354,-198],[-361,-198],[-368,-167],[-365,-156],[-375,-143],[-339,-121],[-330,-103],[-313,-112],[-313,-121],[-327,-137],[-329,-149],[-309,-127],[-309,-138],[-289,-129],[-281,-143],[-276,-122],[-262,-112],[-255,-98],[-243,-95],[-237,-83],[-212,-88],[-210,-80],[-183,-93],[-145,-88],[-138,-81],[-120,-77],[-122,-67],[-137,-53],[-147,-57],[-169,-56],[-195,-50],[-219,-55],[-226,-45],[-260,-45],[-268,-48],[-275,-67],[-282,-72],[-281,-84],[-305,-69],[-298,-57],[-280,-51],[-278,-44],[-298,-47],[-309,-59],[-324,-50],[-345,-57],[-358,-46],[-366,-83],[-379,-105],[-376,-108],[-359,-78],[-351,-70],[-348,-78],[-329,-82],[-326,-90],[-344,-117],[-356,-128],[-369,-131],[-381,-144],[-370,-158],[-371,-177],[-368,-195],[-394,-217],[-411,-210],[-408,-220],[-431,-212],[-452,-188],[-436,-191],[-439,-180],[-431,-173],[-418,-180],[-414,-159],[-427,-164],[-438,-160],[-444,-149],[-463,-144],[-476,-137],[-472,-132],[-452,-131],[-445,-137],[-430,-130],[-433,-111],[-424,-107],[-421,-92],[-410,-89],[-400,-46],[-386,-46],[-366,-55],[-368,-45],[-394,-40],[-405,-46],[-418,-40],[-425,-48],[-415,-53],[-411,-67],[-423,-83],[-428,-99],[-440,-87],[-436,-74],[-445,-76],[-451,-64],[-450,-90],[-460,-98],[-469,-96],[-486,-124],[-501,-115],[-495,-103],[-480,-90],[-497,-95],[-501,-82],[-493,-72],[-479,-67],[-491,-59],[-476,-40],[-478,-29],[-485,-38],[-500,-33],[-500,-21],[-491,-21],[-484,-3],[-494,10],[-489,29],[-521,68],[-513,80],[-497,47],[-491,50],[-481,34],[-471,42],[-481,50],[-465,47],[-446,29],[-436,31],[-428,41],[-424,63],[-415,57],[-406,70],[-389,75],[-388,51],[-397,52],[-403,30],[-388,42],[-375,35],[-375,28],[-360,28],[-355,60],[-348,75],[-351,82],[-364,60],[-366,40],[-380,48],[-379,84],[-374,77],[-367,110],[-358,114],[-339,102],[-342,86],[-326,66],[-321,66],[-308,43],[-313,11],[-317,2],[-331,6],[-341,-9],[-352,-13],[-366,-32],[-332,-18],[-314,-23],[-307,-30],[-300,-24],[-322,-17],[-300,10],[-298,46],[-332,87],[-335,108],[-324,105],[-318,115],[-310,111],[-297,124],[-308,145],[-302,159],[-312,180],[-333,195],[-348,215],[-368,218],[-386,224],[-394,237],[-412,241],[-417,257],[-425,249],[-444,243],[-440,231],[-425,238],[-409,235],[-406,225],[-417,211],[-415,205],[-399,228],[-373,210],[-362,211],[-344,183],[-319,176],[-317,167],[-330,147],[-346,143],[-366,162],[-391,160],[-394,173],[-409,180],[-423,177],[-430,195],[-443,204],[-450,199],[-439,192],[-431,171],[-408,172],[-394,154],[-404,157],[-403,142],[-409,135],[-430,127],[-407,130],[-396,142],[-384,144],[-380,135],[-418,110],[-421,70],[-429,66],[-439,80],[-439,100],[-446,120],[-447,139],[-453,168],[-465,189],[-456,161],[-440,62],[-440,45],[-458,52],[-463,62],[-485,73],[-493,82],[-492,93],[-500,107],[-494,109],[-508,136],[-500,138],[-486,119],[-481,103],[-468,86],[-461,86],[-477,114],[-487,145],[-499,159],[-494,179],[-504,167],[-512,176],[-518,148],[-539,174],[-523,189],[-535,187],[-557,195],[-543,217],[-560,218],[-566,254],[-558,264],[-545,258],[-539,246],[-521,230],[-507,193],[-506,207],[-512,219],[-506,226],[-516,230],[-513,244],[-523,253],[-529,269],[-530,288],[-543,306],[-539,314],[-529,302],[-524,317],[-534,319],[-529,331],[-543,336],[-540,323],[-560,301],[-576,312],[-585,333],[-585,312],[-591,306],[-605,312],[-611,350],[-600,369],[-605,375],[-618,355],[-627,353],[-633,380],[-623,396],[-607,402],[-579,397],[-575,406],[-565,399],[-562,387],[-551,380],[-550,392],[-567,413],[-564,425],[-549,418],[-553,458],[-545,467],[-527,472],[-511,454],[-500,468],[-514,477],[-528,479],[-545,494],[-541,507],[-525,517],[-518,540],[-523,540],[-532,519],[-552,506],[-561,459],[-557,442],[-580,415],[-597,416],[-613,432],[-601,443],[-613,454],[-617,441],[-636,475],[-630,489],[-641,495],[-649,510],[-634,516],[-619,483],[-623,511],[-605,501],[-576,495],[-578,500],[-598,507],[-598,520],[-611,516],[-620,528],[-601,546],[-613,547],[-614,539],[-630,530],[-639,532],[-642,521],[-656,536],[-646,556],[-655,572],[-662,543],[-684,546],[-696,559],[-688,573],[-700,570],[-696,580],[-713,575],[-710,587],[-725,581],[-727,593],[-717,609],[-701,614],[-693,608],[-694,621],[-687,616],[-667,620],[-655,608],[-661,596],[-651,598],[-639,587],[-635,573],[-618,584],[-592,568],[-577,573],[-596,577],[-602,592],[-630,590],[-637,594],[-649,623],[-658,629],[-672,647],[-672,658],[-664,665],[-642,658],[-632,644],[-625,647],[-613,638],[-596,642],[-583,629],[-589,648],[-606,652],[-597,671],[-589,674],[-590,691],[-597,677],[-605,676],[-612,659],[-626,661],[-633,672],[-660,676],[-667,682],[-673,704],[-663,703],[-646,718],[-627,719],[-622,729],[-656,723],[-668,725],[-671,749],[-656,769],[-624,779],[-616,757],[-610,776],[-600,772],[-592,747],[-576,740],[-562,724],[-559,714],[-553,732],[-569,746],[-584,749],[-592,784],[-599,789],[-629,789],[-639,811],[-633,857],[-620,854],[-611,839],[-604,842],[-616,855],[-621,868],[-616,884],[-630,908],[-613,926],[-596,918],[-590,922],[-603,931],[-629,925],[-634,928],[-628,891],[-635,875],[-644,866],[-651,873],[-646,854],[-653,781],[-658,780],[-678,805],[-689,810],[-695,822],[-690,833],[-696,865],[-689,875],[-704,901],[-709,921],[-699,934],[-704,945],[-693,947],[-705,954],[-712,974],[-699,1007],[-692,998],[-666,1009],[-641,1004],[-641,1004],[-465,870]]],[[[240,-780],[260,-784],[264,-801],[246,-805],[229,-803],[233,-823],[239,-817],[251,-825],[262,-826],[257,-838],[268,-841],[259,-853],[270,-863],[285,-861],[279,-867],[281,-882],[271,-869],[259,-875],[251,-868],[251,-852],[245,-851],[243,-869],[237,-875],[234,-852],[225,-852],[226,-844],[243,-838],[205,-838],[207,-830],[180,-823],[199,-814],[201,-804],[219,-795],[225,-785],[200,-795],[191,-806],[170,-810],[165,-800],[172,-794],[161,-790],[170,-784],[140,-781],[153,-762],[163,-755],[201,-751],[211,-748],[219,-777],[218,-747],[236,-741],[237,-751],[254,-751],[245,-741],[255,-734],[334,-731],[350,-722],[376,-720],[386,-716],[398,-719],[414,-736],[415,-754],[409,-758],[400,-749],[399,-759],[386,-768],[372,-755],[377,-775],[369,-779],[335,-769],[325,-758],[308,-751],[299,-741],[298,-753],[306,-754],[315,-767],[342,-783],[370,-786],[378,-791],[402,-787],[416,-804],[435,-811],[430,-819],[399,-821],[388,-824],[369,-823],[364,-811],[359,-820],[367,-829],[378,-829],[374,-838],[396,-829],[413,-834],[416,-850],[425,-844],[445,-851],[443,-870],[459,-870],[451,-886],[461,-901],[471,-904],[462,-924],[469,-928],[456,-940],[444,-927],[443,-906],[433,-911],[421,-909],[427,-885],[415,-879],[411,-871],[399,-879],[381,-870],[379,-856],[371,-867],[350,-868],[339,-855],[344,-876],[329,-879],[312,-858],[322,-846],[344,-843],[342,-830],[315,-844],[324,-829],[328,-805],[335,-789],[314,-803],[312,-810],[301,-810],[288,-794],[287,-778],[282,-784],[289,-805],[273,-797],[267,-777],[255,-776],[240,-780]]],[[[-469,-379],[-465,-359],[-448,-360],[-442,-353],[-423,-359],[-417,-371],[-400,-379],[-361,-378],[-359,-367],[-368,-374],[-379,-373],[-373,-359],[-380,-360],[-392,-374],[-410,-371],[-416,-363],[-411,-349],[-425,-347],[-438,-332],[-434,-323],[-419,-328],[-412,-336],[-397,-331],[-381,-340],[-391,-328],[-397,-307],[-375,-299],[-376,-312],[-370,-327],[-368,-311],[-372,-304],[-355,-309],[-358,-335],[-346,-339],[-351,-367],[-346,-380],[-336,-339],[-345,-320],[-331,-323],[-323,-332],[-325,-340],[-315,-351],[-311,-376],[-304,-372],[-310,-337],[-288,-352],[-280,-346],[-265,-363],[-279,-375],[-271,-383],[-270,-396],[-260,-378],[-255,-384],[-236,-388],[-242,-397],[-221,-407],[-234,-418],[-237,-431],[-250,-420],[-253,-446],[-263,-436],[-256,-452],[-264,-458],[-248,-463],[-248,-476],[-265,-479],[-269,-464],[-280,-462],[-283,-496],[-298,-485],[-297,-476],[-310,-492],[-310,-498],[-323,-496],[-332,-508],[-346,-505],[-340,-494],[-356,-499],[-363,-493],[-348,-487],[-325,-486],[-340,-480],[-337,-475],[-320,-478],[-331,-469],[-323,-463],[-334,-459],[-319,-439],[-303,-429],[-324,-433],[-317,-423],[-331,-430],[-332,-419],[-345,-433],[-357,-429],[-363,-436],[-370,-418],[-379,-447],[-376,-459],[-368,-465],[-374,-481],[-394,-471],[-406,-470],[-417,-462],[-406,-455],[-401,-445],[-415,-431],[-406,-414],[-416,-402],[-406,-394],[-411,-390],[-454,-407],[-463,-409],[-446,-392],[-449,-382],[-469,-379]]],[[[-834,718],[-843,722],[-849,744],[-841,758],[-853,756],[-846,775],[-858,769],[-859,784],[-875,792],[-889,817],[-883,833],[-874,833],[-854,797],[-829,774],[-834,792],[-849,801],[-862,825],[-864,839],[-852,840],[-833,812],[-838,834],[-823,827],[-824,840],[-811,844],[-817,858],[-790,831],[-782,817],[-783,863],[-777,870],[-781,889],[-771,892],[-801,917],[-784,927],[-776,919],[-778,935],[-786,936],[-799,924],[-808,928],[-803,942],[-815,943],[-813,951],[-790,965],[-815,954],[-825,964],[-819,976],[-804,969],[-817,982],[-785,1009],[-777,993],[-776,1010],[-757,1012],[-753,1000],[-744,999],[-744,976],[-751,964],[-741,969],[-743,991],[-736,1006],[-727,1004],[-725,963],[-729,948],[-720,952],[-713,941],[-717,914],[-707,892],[-709,884],[-702,866],[-701,835],[-705,796],[-713,781],[-705,764],[-714,749],[-714,739],[-721,728],[-719,720],[-710,736],[-709,748],[-693,745],[-687,716],[-708,714],[-692,708],[-688,697],[-690,676],[-693,685],[-703,683],[-693,669],[-692,659],[-703,654],[-718,666],[-703,644],[-724,626],[-732,632],[-728,642],[-744,624],[-763,633],[-756,648],[-735,666],[-747,666],[-766,649],[-773,661],[-772,672],[-754,673],[-741,684],[-761,684],[-750,704],[-759,704],[-770,694],[-768,711],[-779,724],[-777,730],[-766,725],[-776,737],[-776,746],[-753,740],[-744,746],[-775,757],[-777,769],[-759,786],[-751,776],[-754,793],[-739,817],[-741,823],[-754,810],[-754,802],[-771,780],[-778,786],[-784,769],[-791,769],[-797,783],[-800,769],[-797,727],[-787,738],[-797,708],[-785,697],[-799,684],[-793,682],[-791,664],[-815,674],[-830,700],[-834,718]]]]}},{"type":"Feature","id":"CL.CO","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.39,"hc-key":"cl-co","hc-a2":"CO","labelrank":"3","hasc":"CL.CO","alt-name":null,"woe-id":"2345024","subregion":null,"fips":"CI07","postal-code":"CO","name":"Coquimbo","country":"Chile","type-en":"Region","region":null,"longitude":"-70.7749","woe-name":"Coquimbo","latitude":"-30.5838","woe-label":"Coquimbo Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-253,6542],[-237,6513],[-218,6514],[-205,6499],[-193,6506],[-182,6550],[-137,6563],[-124,6574],[-121,6585],[-107,6589],[-83,6577],[-77,6560],[-56,6476],[-44,6454],[-28,6443],[-7,6416],[14,6412],[39,6400],[60,6400],[78,6409],[82,6384],[80,6346],[68,6304],[82,6305],[99,6294],[99,6273],[90,6267],[86,6241],[71,6224],[55,6217],[26,6229],[20,6226],[26,6199],[10,6183],[-3,6143],[-4,6124],[-14,6103],[-19,6064],[-1,6040],[-18,6034],[-28,6012],[-41,6006],[-52,6019],[-66,5997],[-68,5971],[-73,5960],[-69,5943],[-74,5929],[-77,5890],[-61,5853],[-51,5840],[-51,5821],[-37,5800],[-9,5797],[8,5775],[0,5754],[-23,5755],[-26,5746],[-14,5725],[-12,5705],[-24,5702],[-44,5706],[-56,5723],[-88,5737],[-107,5754],[-134,5758],[-164,5769],[-175,5755],[-185,5753],[-207,5764],[-223,5759],[-255,5738],[-276,5749],[-303,5704],[-296,5765],[-301,5783],[-295,5790],[-305,5805],[-299,5822],[-314,5874],[-314,5894],[-324,5922],[-335,5984],[-340,5998],[-337,6021],[-338,6047],[-344,6063],[-352,6102],[-351,6122],[-355,6149],[-351,6169],[-348,6226],[-338,6256],[-332,6245],[-309,6245],[-293,6278],[-285,6271],[-277,6283],[-278,6311],[-285,6326],[-255,6350],[-254,6367],[-265,6385],[-268,6406],[-257,6437],[-269,6458],[-263,6488],[-273,6517],[-281,6527],[-308,6546],[-285,6554],[-271,6552],[-253,6542]]]}},{"type":"Feature","id":"CL.AT","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.4,"hc-key":"cl-at","hc-a2":"AT","labelrank":"3","hasc":"CL.AT","alt-name":null,"woe-id":"2345022","subregion":null,"fips":"CI05","postal-code":"AT","name":"Atacama","country":"Chile","type-en":"Region","region":null,"longitude":"-69.9123","woe-name":null,"latitude":"-27.4469","woe-label":null,"type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-253,6542],[-285,6554],[-308,6546],[-310,6596],[-319,6623],[-311,6650],[-287,6663],[-279,6684],[-266,6699],[-263,6718],[-268,6730],[-258,6737],[-259,6752],[-244,6763],[-235,6788],[-241,6806],[-235,6814],[-232,6849],[-236,6863],[-230,6876],[-228,6905],[-219,6925],[-221,6935],[-207,6968],[-205,6984],[-183,6986],[-173,6997],[-175,7019],[-169,7034],[-183,7068],[-180,7089],[-186,7104],[-187,7127],[-183,7141],[-165,7140],[-160,7159],[-145,7174],[-154,7205],[-145,7233],[-132,7244],[-138,7254],[-131,7263],[-122,7302],[-126,7316],[-121,7327],[-124,7345],[-107,7359],[-120,7370],[-112,7389],[-118,7410],[-116,7435],[-109,7448],[-88,7478],[-50,7506],[-17,7506],[14,7531],[38,7536],[48,7525],[82,7529],[125,7553],[162,7557],[194,7548],[287,7557],[291,7573],[307,7600],[303,7627],[307,7632],[349,7635],[380,7633],[412,7655],[421,7658],[408,7617],[409,7596],[421,7579],[420,7553],[435,7527],[438,7504],[455,7431],[455,7407],[422,7382],[415,7372],[410,7329],[416,7303],[479,7212],[483,7197],[476,7163],[464,7163],[429,7154],[411,7130],[395,7134],[378,7146],[357,7144],[337,7114],[336,7093],[324,7065],[304,7050],[300,7021],[284,6991],[288,6980],[276,6969],[264,6916],[253,6903],[231,6894],[215,6857],[202,6834],[188,6841],[180,6819],[144,6782],[139,6765],[139,6735],[123,6713],[119,6694],[124,6665],[107,6623],[108,6584],[81,6571],[63,6553],[66,6543],[52,6533],[49,6509],[55,6497],[68,6447],[67,6423],[78,6409],[60,6400],[39,6400],[14,6412],[-7,6416],[-28,6443],[-44,6454],[-56,6476],[-77,6560],[-83,6577],[-107,6589],[-121,6585],[-124,6574],[-137,6563],[-182,6550],[-193,6506],[-205,6499],[-218,6514],[-237,6513],[-253,6542]]]}},{"type":"Feature","id":"CL.VS","properties":{"hc-group":"admin1","hc-middle-x":0.83,"hc-middle-y":0.21,"hc-key":"cl-vs","hc-a2":"VS","labelrank":"3","hasc":"CL.VS","alt-name":"Aconcagua","woe-id":"2345018","subregion":null,"fips":"CI01","postal-code":"VS","name":"Valparaíso","country":"Chile","type-en":"Region","region":null,"longitude":"-70.93600000000001","woe-name":null,"latitude":"-32.4884","woe-label":null,"type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-332,5201],[-347,5210],[-369,5211],[-355,5256],[-327,5272],[-320,5291],[-313,5323],[-317,5335],[-333,5353],[-334,5366],[-326,5375],[-327,5391],[-335,5406],[-339,5428],[-349,5447],[-332,5452],[-322,5471],[-304,5476],[-301,5496],[-293,5513],[-300,5534],[-289,5543],[-291,5558],[-281,5562],[-277,5578],[-285,5608],[-277,5623],[-271,5655],[-283,5665],[-287,5681],[-303,5704],[-276,5749],[-255,5738],[-223,5759],[-207,5764],[-185,5753],[-175,5755],[-164,5769],[-134,5758],[-107,5754],[-88,5737],[-56,5723],[-44,5706],[-24,5702],[-12,5705],[-10,5685],[9,5671],[9,5650],[27,5633],[30,5612],[25,5587],[35,5548],[56,5525],[69,5518],[61,5489],[48,5480],[44,5468],[34,5466],[-2,5434],[-27,5457],[-47,5462],[-77,5488],[-92,5477],[-108,5492],[-149,5484],[-184,5463],[-272,5382],[-273,5355],[-253,5333],[-252,5287],[-264,5271],[-259,5252],[-286,5241],[-304,5218],[-332,5201]]]}},{"type":"Feature","id":"CL.RM","properties":{"hc-group":"admin1","hc-middle-x":0.75,"hc-middle-y":0.51,"hc-key":"cl-rm","hc-a2":"RM","labelrank":"7","hasc":"CL.RM","alt-name":"Región Metropolitana|Région Metropolitaine de Santiago|Región Metropolitana|RM","woe-id":"2345029","subregion":null,"fips":"CI12","postal-code":"RM","name":"Región Metropolitana de Santiago","country":"Chile","type-en":"Region","region":null,"longitude":"-70.7527","woe-name":"Región Metropolitana de Santiago","latitude":"-33.4568","woe-label":"Santiago Metropolitan Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-332,5201],[-304,5218],[-286,5241],[-259,5252],[-264,5271],[-252,5287],[-253,5333],[-273,5355],[-272,5382],[-184,5463],[-149,5484],[-108,5492],[-92,5477],[-77,5488],[-47,5462],[-27,5457],[-2,5434],[34,5466],[44,5468],[48,5457],[46,5430],[58,5419],[68,5398],[84,5414],[92,5416],[114,5401],[121,5376],[110,5354],[108,5333],[99,5326],[96,5296],[104,5278],[93,5268],[96,5237],[93,5213],[106,5205],[102,5161],[112,5132],[93,5120],[75,5125],[61,5120],[51,5141],[38,5151],[31,5173],[24,5180],[4,5180],[-5,5187],[-15,5209],[-36,5228],[-66,5217],[-88,5217],[-119,5210],[-120,5190],[-159,5148],[-178,5144],[-205,5150],[-233,5171],[-246,5166],[-272,5181],[-294,5188],[-310,5183],[-332,5201]]]}},{"type":"Feature","id":"CL.AR","properties":{"hc-group":"admin1","hc-middle-x":0.72,"hc-middle-y":0.52,"hc-key":"cl-ar","hc-a2":"AR","labelrank":"3","hasc":"CL.AR","alt-name":"XIV","woe-id":"56043703","subregion":null,"fips":"CI09","postal-code":"AR","name":"Los Ríos","country":"Chile","type-en":"Region","region":null,"longitude":"-72.6829","woe-name":"Los Ríos","latitude":"-40.1186","woe-label":"Los Rios Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-270,3612],[-284,3616],[-286,3599],[-281,3591],[-285,3576],[-274,3539],[-263,3529],[-264,3519],[-276,3494],[-275,3471],[-301,3475],[-305,3438],[-288,3416],[-278,3419],[-272,3403],[-282,3379],[-298,3377],[-309,3339],[-316,3330],[-341,3312],[-354,3309],[-424,3302],[-452,3302],[-475,3307],[-494,3316],[-531,3341],[-546,3376],[-556,3388],[-571,3391],[-601,3386],[-656,3400],[-703,3397],[-721,3403],[-716,3423],[-719,3431],[-704,3450],[-708,3472],[-718,3486],[-710,3499],[-701,3500],[-676,3514],[-664,3530],[-655,3528],[-652,3513],[-646,3524],[-652,3539],[-648,3557],[-655,3570],[-633,3603],[-622,3630],[-619,3650],[-624,3659],[-601,3659],[-578,3667],[-561,3664],[-557,3656],[-563,3612],[-560,3604],[-521,3607],[-468,3599],[-443,3586],[-429,3569],[-411,3575],[-395,3567],[-362,3568],[-346,3573],[-334,3585],[-306,3649],[-295,3652],[-280,3641],[-270,3612]]]}},{"type":"Feature","id":"CL.ML","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.47,"hc-key":"cl-ml","hc-a2":"ML","labelrank":"3","hasc":"CL.ML","alt-name":"VII","woe-id":"2345028","subregion":null,"fips":"CI06","postal-code":"ML","name":"Maule","country":"Chile","type-en":"Region","region":null,"longitude":"-71.58110000000001","woe-name":"Maule","latitude":"-35.6067","woe-label":"Maule Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-12,4910],[-10,4890],[-14,4870],[-50,4858],[-59,4843],[-54,4832],[-34,4828],[-23,4816],[-33,4810],[-27,4787],[-18,4774],[-20,4731],[-5,4687],[-19,4672],[-12,4661],[-17,4644],[-9,4622],[-25,4592],[-36,4588],[-52,4595],[-61,4578],[-82,4560],[-88,4536],[-85,4517],[-105,4511],[-124,4520],[-134,4499],[-155,4496],[-165,4514],[-174,4518],[-207,4513],[-239,4525],[-321,4567],[-330,4568],[-392,4591],[-489,4602],[-495,4606],[-541,4617],[-564,4605],[-566,4623],[-561,4634],[-540,4654],[-536,4665],[-521,4676],[-518,4687],[-522,4709],[-534,4732],[-534,4744],[-508,4766],[-499,4787],[-498,4803],[-487,4811],[-480,4840],[-455,4859],[-442,4875],[-437,4896],[-435,4940],[-416,4976],[-389,4962],[-378,4952],[-349,4945],[-329,4925],[-307,4934],[-261,4932],[-251,4937],[-234,4957],[-222,4955],[-202,4965],[-148,4939],[-114,4940],[-103,4935],[-83,4916],[-68,4912],[-45,4917],[-12,4910]]]}},{"type":"Feature","id":"CL.TA","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.5,"hc-key":"cl-ta","hc-a2":"TA","labelrank":"3","hasc":"CL.TA","alt-name":"Tarapaca","woe-id":"2345030","subregion":null,"fips":"CI13","postal-code":"TA","name":"Tarapacá","country":"Chile","type-en":"Region","region":null,"longitude":"-69.36830000000001","woe-name":"Tarapacá","latitude":"-20.2427","woe-label":"Tarapaca Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[27,8740],[18,8769],[25,8780],[22,8801],[8,8831],[9,8841],[-2,8867],[9,8884],[1,8907],[-9,8918],[-12,8939],[-10,8966],[-13,8999],[-3,9022],[-10,9044],[3,9055],[6,9073],[-2,9086],[1,9109],[8,9128],[8,9148],[-2,9199],[0,9227],[-9,9252],[-17,9261],[-13,9279],[-21,9314],[-37,9345],[-33,9381],[-17,9386],[36,9417],[96,9433],[130,9434],[157,9423],[183,9421],[227,9405],[255,9402],[271,9405],[286,9417],[310,9446],[329,9415],[356,9399],[388,9370],[397,9353],[443,9324],[455,9308],[442,9301],[406,9250],[390,9235],[387,9220],[426,9189],[429,9171],[417,9133],[399,9134],[367,9124],[363,9113],[380,9106],[379,9084],[392,9056],[377,9051],[368,9039],[379,9014],[390,9003],[418,8990],[445,8973],[420,8940],[420,8903],[431,8887],[427,8860],[421,8846],[399,8839],[386,8828],[372,8808],[361,8799],[275,8772],[216,8750],[188,8741],[174,8742],[145,8756],[92,8757],[73,8750],[66,8739],[27,8740]]]}},{"type":"Feature","id":"CL.2740","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.51,"hc-key":"cl-2740","hc-a2":"AY","labelrank":"7","hasc":"CL.","alt-name":null,"woe-id":"56043702","subregion":null,"fips":null,"postal-code":null,"name":"Arica y Parinacota","country":"Chile","type-en":"Region","region":null,"longitude":"-69.68040000000001","woe-name":"Arica y Parinacota","latitude":"-18.3207","woe-label":"Arica and Parinacota Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[-33,9381],[-35,9399],[-45,9423],[-44,9437],[-57,9493],[-52,9521],[-56,9532],[-43,9586],[-68,9616],[-47,9620],[-19,9618],[2,9621],[46,9641],[74,9671],[96,9717],[83,9767],[76,9787],[86,9808],[122,9809],[135,9817],[169,9851],[170,9829],[179,9810],[210,9780],[217,9767],[219,9736],[226,9719],[236,9722],[244,9714],[269,9704],[282,9706],[283,9689],[265,9673],[280,9646],[286,9600],[298,9578],[296,9543],[306,9514],[304,9502],[319,9471],[310,9446],[286,9417],[271,9405],[255,9402],[227,9405],[183,9421],[157,9423],[130,9434],[96,9433],[36,9417],[-17,9386],[-33,9381]]]}},{"type":"Feature","id":"CL.AN","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.5,"hc-key":"cl-an","hc-a2":"AN","labelrank":"6","hasc":"CL.AN","alt-name":null,"woe-id":"2345020","subregion":null,"fips":"CI03","postal-code":"AN","name":"Antofagasta","country":"Chile","type-en":"Region","region":null,"longitude":"-68.87390000000001","woe-name":"Antofagasta","latitude":"-23.3178","woe-label":"Antofagasta Region, CL, Chile","type":"Región"},"geometry":{"type":"Polygon","coordinates":[[[421,7658],[412,7655],[380,7633],[349,7635],[307,7632],[303,7627],[307,7600],[291,7573],[287,7557],[194,7548],[162,7557],[125,7553],[82,7529],[48,7525],[38,7536],[14,7531],[-17,7506],[-50,7506],[-88,7478],[-109,7448],[-113,7471],[-137,7503],[-127,7519],[-125,7542],[-111,7561],[-115,7585],[-108,7595],[-85,7609],[-81,7629],[-68,7630],[-63,7641],[-62,7684],[-77,7709],[-71,7745],[-84,7761],[-99,7813],[-99,7835],[-94,7849],[-101,7872],[-91,7903],[-94,7917],[-82,7973],[-81,7992],[-88,8021],[-82,8044],[-85,8060],[-82,8081],[-58,8119],[-54,8139],[-60,8158],[-82,8169],[-93,8152],[-117,8156],[-105,8182],[-110,8201],[-110,8233],[-101,8245],[-105,8271],[-100,8285],[-86,8299],[-80,8278],[-71,8274],[-51,8288],[-32,8325],[-29,8339],[-36,8361],[-25,8410],[-28,8427],[-18,8444],[-21,8455],[-12,8561],[-1,8603],[-6,8617],[5,8623],[4,8679],[16,8695],[27,8740],[66,8739],[73,8750],[92,8757],[145,8756],[174,8742],[188,8741],[216,8750],[275,8772],[361,8799],[372,8808],[386,8828],[399,8839],[421,8846],[427,8860],[431,8887],[461,8878],[516,8787],[520,8774],[518,8706],[537,8666],[542,8644],[545,8598],[572,8568],[581,8549],[576,8540],[586,8514],[583,8485],[596,8460],[606,8425],[597,8383],[601,8350],[612,8348],[628,8334],[686,8332],[779,8351],[825,8300],[824,8291],[737,8019],[731,8011],[563,7938],[502,7913],[484,7884],[462,7881],[448,7844],[435,7849],[417,7805],[421,7779],[441,7768],[451,7749],[450,7734],[469,7711],[466,7701],[442,7699],[431,7688],[421,7658]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/pe-all.geo.json
const pe_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Peru","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:24892"}},"hc-transform":{"default":{"crs":"+proj=tmerc +lat_0=-9.5 +lon_0=-76 +k=0.99932994 +x_0=720000 +y_0=1039979.159 +ellps=intl +towgs84=-288,175,-376,0,0,0,0 +units=m +no_defs","scale":0.000344388016314,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":127569.914462,"yoffset":2086634.05039}},"features":[{"type":"Feature","id":"PE.IC","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.52,"hc-key":"pe-ic","hc-a2":"IC","labelrank":"7","hasc":"PE.IC","alt-name":null,"woe-id":"2346478","subregion":null,"fips":"PE11","postal-code":"IC","name":"Ica","country":"Peru","type-en":"Department","region":null,"longitude":"-75.6773","woe-name":"Ica","latitude":"-14.2257","woe-label":"Ica, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2694,761],[2629,808],[2642,836],[2587,872],[2600,898],[2531,934],[2477,1021],[2423,1088],[2257,1182],[2205,1227],[2203,1268],[2176,1338],[2082,1417],[2103,1430],[2079,1478],[2021,1523],[2009,1492],[1997,1563],[2005,1643],[1938,1665],[1956,1727],[1994,1732],[2014,1692],[2060,1882],[2037,1990],[2021,2011],[2083,2091],[2166,2159],[2196,2201],[2243,2182],[2337,2191],[2376,2211],[2373,2176],[2330,2136],[2336,2073],[2307,2048],[2280,1971],[2354,1960],[2463,1925],[2426,1856],[2445,1803],[2418,1758],[2441,1670],[2540,1632],[2620,1565],[2669,1556],[2702,1525],[2705,1456],[2664,1374],[2712,1314],[2709,1251],[2746,1250],[2797,1281],[2827,1218],[2870,1178],[2881,1124],[2915,1068],[2895,966],[2760,878],[2694,761]]]}},{"type":"Feature","id":"PE.CS","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.49,"hc-key":"pe-cs","hc-a2":"CS","labelrank":"6","hasc":"PE.CS","alt-name":"Cuzco|Qosqo","woe-id":"2346475","subregion":null,"fips":"PE08","postal-code":"CS","name":"Cusco","country":"Peru","type-en":"Department","region":null,"longitude":"-72.2479","woe-name":"Cusco","latitude":"-13.1633","woe-label":"Cusco, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4391,3182],[4377,3115],[4300,2974],[4268,2835],[4293,2763],[4389,2706],[4415,2622],[4495,2579],[4549,2443],[4535,2378],[4568,2313],[4708,2257],[4773,2257],[4872,2211],[4960,2185],[5041,2131],[5247,2094],[5338,2107],[5307,2142],[5321,2162],[5436,2150],[5417,2063],[5420,1998],[5395,1952],[5304,1847],[5236,1702],[5157,1681],[5136,1571],[5159,1521],[5144,1443],[5108,1336],[5056,1317],[5045,1236],[4970,1177],[5006,1133],[5040,1125],[5046,1026],[5028,994],[5028,929],[5047,863],[5039,802],[5015,790],[4930,866],[4935,919],[4900,948],[4868,925],[4742,982],[4740,951],[4651,929],[4540,972],[4544,1034],[4572,1077],[4533,1091],[4482,1176],[4452,1196],[4448,1123],[4423,1072],[4365,1120],[4270,1095],[4220,1113],[4185,1159],[4185,1197],[4176,1260],[4191,1290],[4250,1331],[4307,1347],[4405,1464],[4423,1526],[4424,1629],[4378,1720],[4317,1774],[4258,1787],[4227,1833],[4126,1855],[4012,1932],[3920,1955],[3842,1920],[3771,1943],[3724,1981],[3662,2069],[3574,2139],[3583,2156],[3511,2385],[3462,2415],[3407,2488],[3405,2526],[3348,2623],[3428,2626],[3525,2658],[3551,2705],[3558,2779],[3615,2862],[3619,2947],[3513,2990],[3593,3060],[3659,3183],[3835,3199],[3876,3211],[3918,3254],[3950,3189],[4016,3152],[4081,3160],[4133,3121],[4178,3118],[4257,3172],[4329,3193],[4381,3186],[4391,3182],[4391,3182]]]}},{"type":"Feature","id":"PE.UC","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.79,"hc-key":"pe-uc","hc-a2":"UC","labelrank":"4","hasc":"PE.UC","alt-name":null,"woe-id":"2346492","subregion":null,"fips":"PE25","postal-code":"UC","name":"Ucayali","country":"Peru","type-en":"Department","region":null,"longitude":"-73.24930000000001","woe-name":"Ucayali","latitude":"-9.99816","woe-label":"Ucayali, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4391,3182],[4329,3193],[4257,3172],[4178,3118],[4133,3121],[4081,3160],[4016,3152],[3950,3189],[3918,3254],[3876,3211],[3835,3199],[3659,3183],[3612,3272],[3625,3376],[3585,3454],[3545,3497],[3472,3519],[3397,3412],[3106,3349],[3054,3384],[3035,3468],[3091,3508],[3162,3578],[3231,3612],[3211,3650],[3158,3675],[3118,3783],[3124,3887],[3079,3996],[3077,4059],[3021,4176],[2925,4315],[2915,4355],[2938,4430],[2939,4519],[2969,4579],[2977,4657],[3034,4702],[3032,4751],[3008,4776],[2941,4784],[2868,4761],[2729,4656],[2659,4560],[2577,4425],[2495,4393],[2424,4334],[2371,4322],[2296,4416],[2283,4507],[2232,4568],[2224,4671],[2180,4770],[2239,4798],[2375,4920],[2407,4922],[2500,4867],[2503,4897],[2453,4979],[2461,5012],[2517,5032],[2540,5082],[2644,5082],[2801,5149],[2934,5171],[2998,5203],[3016,5237],[3011,5401],[2985,5515],[2996,5546],[3037,5547],[3093,5512],[3207,5493],[3303,5457],[3352,5426],[3331,5418],[3437,5313],[3511,5272],[3510,5226],[3462,5222],[3471,5175],[3536,5139],[3575,5066],[3572,5033],[3618,4927],[3718,4863],[3721,4793],[3768,4743],[3824,4720],[3885,4617],[3939,4562],[3949,4503],[3896,4418],[3871,4410],[3797,4313],[4033,4310],[4257,4266],[4329,4230],[4355,4155],[4352,4099],[4393,4073],[4413,4024],[4391,3955],[4863,3948],[4978,3986],[4999,4024],[5085,4057],[5169,4149],[5284,4226],[5340,4277],[5377,4282],[5345,4216],[5317,4203],[5363,4106],[5312,4057],[5305,3972],[5198,3887],[5167,3726],[5091,3633],[4965,3541],[4880,3508],[4618,3378],[4517,3371],[4430,3406],[4414,3383],[4447,3316],[4403,3240],[4391,3182]]]}},{"type":"Feature","id":"PE.MD","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.58,"hc-key":"pe-md","hc-a2":"MD","labelrank":"4","hasc":"PE.MD","alt-name":null,"woe-id":"2346484","subregion":null,"fips":"PE17","postal-code":"MD","name":"Madre de Dios","country":"Peru","type-en":"Department","region":null,"longitude":"-70.6831","woe-name":"Madre de Dios","latitude":"-11.8726","woe-label":"Madre de Dios, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4403,3240],[4447,3316],[4414,3383],[4430,3406],[4517,3371],[4618,3378],[4880,3508],[4965,3541],[5091,3633],[5167,3726],[5198,3887],[5305,3972],[5293,3347],[5356,3388],[5412,3329],[5498,3311],[5552,3324],[5695,3393],[5782,3387],[5833,3363],[5917,3369],[6417,2435],[6352,2367],[6380,2339],[6361,2308],[6313,2296],[6238,2223],[6239,2125],[5867,1951],[5842,1952],[5456,2155],[5436,2150],[5321,2162],[5307,2142],[5338,2107],[5247,2094],[5041,2131],[4960,2185],[4872,2211],[4773,2257],[4708,2257],[4568,2313],[4535,2378],[4549,2443],[4495,2579],[4415,2622],[4389,2706],[4293,2763],[4268,2835],[4300,2974],[4377,3115],[4391,3182],[4391,3182],[4403,3240]]]}},{"type":"Feature","id":"PE.SM","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.6,"hc-key":"pe-sm","hc-a2":"SM","labelrank":"4","hasc":"PE.SM","alt-name":"San Mart","woe-id":"2346489","subregion":null,"fips":"PE22","postal-code":"SM","name":"San Martín","country":"Peru","type-en":"Department","region":null,"longitude":"-76.6238","woe-name":"San Martín","latitude":"-7.30853","woe-label":"San Martin, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1137,5743],[1118,5763],[1139,5947],[1179,5990],[1241,5965],[1311,5965],[1372,5991],[1392,6044],[1463,6110],[1477,6148],[1424,6259],[1363,6289],[1263,6315],[1223,6353],[1151,6493],[1156,6649],[1195,6693],[1249,6649],[1357,6603],[1430,6535],[1470,6519],[1593,6513],[1672,6469],[1731,6344],[1767,6313],[1852,6314],[1938,6375],[1978,6377],[2071,6282],[2115,6261],[2256,6267],[2361,6244],[2415,6219],[2456,6178],[2480,6120],[2462,5951],[2445,5860],[2384,5776],[2352,5785],[2301,5849],[2219,5887],[2158,5868],[2110,5777],[2100,5735],[2115,5677],[2107,5547],[2131,5445],[2273,5143],[2293,5083],[2283,5022],[2227,4954],[2192,4816],[2149,4782],[2118,4729],[2063,4740],[2045,4812],[1973,4927],[1955,4909],[1951,4826],[1896,4797],[1711,4833],[1662,4823],[1648,4849],[1629,5005],[1561,5069],[1440,5108],[1365,5110],[1339,5152],[1341,5209],[1299,5289],[1311,5402],[1226,5502],[1205,5573],[1210,5639],[1173,5667],[1137,5743]]]}},{"type":"Feature","id":"PE.AM","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.48,"hc-key":"pe-am","hc-a2":"AM","labelrank":"4","hasc":"PE.AM","alt-name":null,"woe-id":"2346468","subregion":null,"fips":"PE01","postal-code":"AM","name":"Amazonas","country":"Peru","type-en":"Department","region":null,"longitude":"-77.9695","woe-name":"Amazonas","latitude":"-5.0485","woe-label":"Amazonas, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1195,6693],[1156,6649],[1151,6493],[1223,6353],[1263,6315],[1363,6289],[1424,6259],[1477,6148],[1463,6110],[1392,6044],[1372,5991],[1311,5965],[1241,5965],[1179,5990],[1139,5947],[1118,5763],[1137,5743],[1060,5747],[991,5731],[973,5775],[970,5892],[914,6009],[881,6057],[778,6121],[718,6239],[617,6292],[526,6425],[556,6521],[623,6621],[623,6699],[597,6831],[634,6919],[635,6980],[610,7022],[592,7099],[561,7162],[603,7251],[576,7315],[638,7449],[644,7511],[685,7538],[700,7609],[734,7643],[727,7692],[764,7810],[764,7858],[819,7863],[845,7800],[882,7818],[862,7885],[953,7987],[1013,8067],[1091,8119],[1122,7930],[1175,7816],[1202,7635],[1240,7568],[1256,7497],[1241,7451],[1230,7251],[1179,7149],[1134,7095],[1113,7008],[1153,6785],[1195,6693]]]}},{"type":"Feature","id":"PE.LO","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.48,"hc-key":"pe-lo","hc-a2":"LO","labelrank":"4","hasc":"PE.LO","alt-name":null,"woe-id":"2346483","subregion":null,"fips":"PE16","postal-code":"LO","name":"Loreto","country":"Peru","type-en":"Department","region":null,"longitude":"-73.88679999999999","woe-name":"Loreto","latitude":"-4.27471","woe-label":"Loreto, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2192,4816],[2227,4954],[2283,5022],[2293,5083],[2273,5143],[2131,5445],[2107,5547],[2115,5677],[2100,5735],[2110,5777],[2158,5868],[2219,5887],[2301,5849],[2352,5785],[2384,5776],[2445,5860],[2462,5951],[2480,6120],[2456,6178],[2415,6219],[2361,6244],[2256,6267],[2115,6261],[2071,6282],[1978,6377],[1938,6375],[1852,6314],[1767,6313],[1731,6344],[1672,6469],[1593,6513],[1470,6519],[1430,6535],[1357,6603],[1249,6649],[1195,6693],[1153,6785],[1113,7008],[1134,7095],[1179,7149],[1230,7251],[1241,7451],[1256,7497],[1240,7568],[1202,7635],[1175,7816],[1122,7930],[1091,8119],[1759,8352],[1794,8373],[2111,8614],[2426,8984],[2513,9325],[2551,9295],[2623,9298],[2582,9429],[2607,9502],[2597,9560],[2501,9632],[2471,9724],[2391,9763],[2380,9804],[2488,9775],[2570,9789],[2627,9851],[2674,9844],[2728,9791],[2834,9739],[2863,9770],[2904,9706],[2883,9686],[2971,9670],[3107,9532],[3136,9471],[3128,9435],[3173,9407],[3148,9363],[3210,9288],[3281,9268],[3314,9279],[3342,9226],[3400,9213],[3423,9167],[3470,9148],[3498,9172],[3568,9129],[3612,9060],[3600,9043],[3651,8997],[3658,8942],[3631,8882],[3744,8812],[3799,8841],[3835,8807],[3846,8713],[3880,8646],[3828,8563],[3851,8516],[3896,8485],[3912,8512],[3963,8478],[3979,8441],[4062,8465],[4113,8440],[4157,8491],[4205,8462],[4277,8449],[4304,8424],[4444,8448],[4487,8492],[4560,8493],[4635,8575],[4696,8606],[4815,8555],[4839,8500],[4864,8536],[4884,8464],[4947,8489],[5004,8484],[5050,8531],[5123,8533],[5140,8569],[5210,8550],[5262,8503],[5310,8491],[5345,8418],[5386,8445],[5458,8393],[5518,8396],[5516,8352],[5554,8367],[5590,8314],[5646,8289],[5674,8309],[5700,8260],[5289,7630],[5402,7580],[5465,7578],[5501,7607],[5541,7600],[5597,7543],[5613,7481],[5689,7434],[5747,7341],[5710,7297],[5667,7340],[5631,7338],[5602,7295],[5542,7345],[5540,7398],[5469,7420],[5376,7385],[5349,7430],[5301,7399],[5229,7395],[5223,7360],[5148,7273],[5028,7287],[5002,7259],[4958,7277],[4913,7231],[4828,7238],[4817,7216],[4733,7204],[4669,7219],[4600,7201],[4546,7160],[4492,7147],[4459,7103],[4385,7057],[4298,7030],[4294,6998],[4161,6902],[4145,6878],[4090,6883],[3988,6838],[4001,6756],[3955,6641],[3962,6586],[3937,6498],[3855,6398],[3798,6281],[3832,6207],[3858,6069],[3818,6004],[3716,5982],[3530,5849],[3482,5794],[3454,5677],[3512,5558],[3401,5518],[3353,5528],[3375,5473],[3352,5426],[3303,5457],[3207,5493],[3093,5512],[3037,5547],[2996,5546],[2985,5515],[3011,5401],[3016,5237],[2998,5203],[2934,5171],[2801,5149],[2644,5082],[2540,5082],[2517,5032],[2461,5012],[2453,4979],[2503,4897],[2500,4867],[2407,4922],[2375,4920],[2239,4798],[2180,4770],[2192,4816]]]}},{"type":"Feature","id":"PE.AY","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.57,"hc-key":"pe-ay","hc-a2":"AY","labelrank":"7","hasc":"PE.AY","alt-name":null,"woe-id":"2346472","subregion":null,"fips":"PE09","postal-code":"AY","name":"Ayacucho","country":"Peru","type-en":"Department","region":null,"longitude":"-73.9838","woe-name":"Ayacucho","latitude":"-13.9245","woe-label":"Ayacucho, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2895,966],[2915,1068],[2881,1124],[2870,1178],[2827,1218],[2797,1281],[2746,1250],[2709,1251],[2712,1314],[2664,1374],[2705,1456],[2702,1525],[2746,1556],[2882,1574],[2894,1597],[2896,1697],[2862,1784],[2861,1848],[2784,1937],[2801,1992],[2858,2014],[2890,1984],[2948,1969],[2970,1998],[2925,2028],[2987,2087],[3066,2087],[3090,2112],[3083,2174],[3116,2189],[3159,2172],[3128,2294],[3150,2339],[3124,2436],[3075,2512],[3035,2517],[3004,2557],[3033,2639],[3101,2701],[3125,2660],[3224,2602],[3281,2632],[3348,2623],[3405,2526],[3407,2488],[3462,2415],[3511,2385],[3583,2156],[3574,2139],[3662,2069],[3724,1981],[3771,1943],[3753,1910],[3630,1933],[3581,1972],[3433,2067],[3407,1972],[3436,1823],[3473,1798],[3498,1753],[3466,1727],[3530,1603],[3550,1518],[3582,1469],[3588,1394],[3580,1307],[3602,1265],[3589,1202],[3559,1194],[3589,1118],[3639,1128],[3680,1185],[3731,1177],[3858,1210],[3871,1229],[3976,1166],[3982,1128],[3889,1112],[3867,1062],[3883,1031],[3866,932],[3786,834],[3723,842],[3721,777],[3621,796],[3554,767],[3361,743],[3321,680],[3259,664],[3250,746],[3179,724],[3140,739],[3113,789],[3080,804],[3043,902],[2903,943],[2895,966]]]}},{"type":"Feature","id":"PE.145","properties":{"hc-group":"admin1","hc-middle-x":0.33,"hc-middle-y":0.33,"hc-key":"pe-145","hc-a2":"LP","labelrank":"9","hasc":"PE.LR","alt-name":"Federal capital","woe-id":"28358302","subregion":null,"fips":null,"postal-code":null,"name":"Lima Province","country":"Peru","type-en":"Captial District","region":null,"longitude":"-76.92359999999999","woe-name":"Lima Province","latitude":"-12.1124","woe-label":"Lima Metropolitan Area, PE, Peru","type":"Distrito Capital"},"geometry":{"type":"Polygon","coordinates":[[[1701,2490],[1706,2565],[1669,2611],[1562,2669],[1553,2722],[1517,2742],[1518,2779],[1502,2790],[1469,2926],[1468,2978],[1500,2994],[1536,3052],[1560,3029],[1557,2988],[1603,2946],[1667,2947],[1610,2890],[1619,2826],[1667,2828],[1715,2873],[1760,2820],[1728,2775],[1762,2752],[1739,2731],[1791,2648],[1770,2570],[1729,2546],[1701,2490]]]}},{"type":"Feature","id":"PE.HV","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.48,"hc-key":"pe-hv","hc-a2":"HV","labelrank":"7","hasc":"PE.HV","alt-name":null,"woe-id":"2346476","subregion":null,"fips":"PE09","postal-code":"HV","name":"Huancavelica","country":"Peru","type-en":"Department","region":null,"longitude":"-75.0416","woe-name":"Huancavelica","latitude":"-13.0523","woe-label":"Huancavelica, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3101,2701],[3033,2639],[3004,2557],[3035,2517],[3075,2512],[3124,2436],[3150,2339],[3128,2294],[3159,2172],[3116,2189],[3083,2174],[3090,2112],[3066,2087],[2987,2087],[2925,2028],[2970,1998],[2948,1969],[2890,1984],[2858,2014],[2801,1992],[2784,1937],[2861,1848],[2862,1784],[2896,1697],[2894,1597],[2882,1574],[2746,1556],[2702,1525],[2669,1556],[2620,1565],[2540,1632],[2441,1670],[2418,1758],[2445,1803],[2426,1856],[2463,1925],[2354,1960],[2280,1971],[2307,2048],[2336,2073],[2330,2136],[2373,2176],[2376,2211],[2400,2286],[2445,2321],[2473,2385],[2522,2464],[2622,2553],[2673,2569],[2649,2617],[2675,2625],[2709,2678],[2677,2764],[2710,2803],[2763,2764],[2871,2766],[2932,2799],[3028,2766],[3101,2701]]]}},{"type":"Feature","id":"PE.JU","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.43,"hc-key":"pe-ju","hc-a2":"JU","labelrank":"4","hasc":"PE.JU","alt-name":"Junnn","woe-id":"2346479","subregion":null,"fips":"PE12","postal-code":"JU","name":"Junín","country":"Peru","type-en":"Department","region":null,"longitude":"-74.96420000000001","woe-name":"Junín","latitude":"-11.3744","woe-label":"Junín, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3035,3468],[3054,3384],[3106,3349],[3397,3412],[3472,3519],[3545,3497],[3585,3454],[3625,3376],[3612,3272],[3659,3183],[3593,3060],[3513,2990],[3619,2947],[3615,2862],[3558,2779],[3551,2705],[3525,2658],[3428,2626],[3348,2623],[3281,2632],[3224,2602],[3125,2660],[3101,2701],[3028,2766],[2932,2799],[2871,2766],[2763,2764],[2710,2803],[2677,2764],[2709,2678],[2675,2625],[2649,2617],[2673,2569],[2622,2553],[2522,2464],[2473,2385],[2415,2424],[2433,2545],[2369,2685],[2379,2706],[2345,2744],[2229,2798],[2157,2782],[2122,2848],[2086,2875],[2043,2946],[2036,3030],[1992,3036],[1945,3084],[1916,3168],[1888,3196],[1880,3323],[2002,3332],[2005,3437],[2092,3437],[2144,3469],[2169,3446],[2308,3449],[2488,3502],[2545,3503],[2676,3538],[2734,3568],[2801,3536],[2876,3483],[2932,3467],[3035,3468]]]}},{"type":"Feature","id":"PE.LR","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.37,"hc-key":"pe-lr","hc-a2":"LR","labelrank":"4","hasc":"PE.LR","alt-name":"Lima province","woe-id":"2346482","subregion":null,"fips":"PE15","postal-code":"LR","name":"Lima","country":"Peru","type-en":"Department","region":null,"longitude":"-77.07559999999999","woe-name":"Lima","latitude":"-11.0602","woe-label":"Lima, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1880,3323],[1888,3196],[1916,3168],[1945,3084],[1992,3036],[2036,3030],[2043,2946],[2086,2875],[2122,2848],[2157,2782],[2229,2798],[2345,2744],[2379,2706],[2369,2685],[2433,2545],[2415,2424],[2473,2385],[2445,2321],[2400,2286],[2376,2211],[2337,2191],[2243,2182],[2196,2201],[2166,2159],[2083,2091],[2021,2011],[1885,2179],[1866,2277],[1800,2347],[1770,2425],[1701,2490],[1729,2546],[1770,2570],[1791,2648],[1739,2731],[1762,2752],[1728,2775],[1760,2820],[1715,2873],[1667,2828],[1619,2826],[1610,2890],[1667,2947],[1603,2946],[1557,2988],[1560,3029],[1536,3052],[1500,2994],[1468,2978],[1417,3040],[1396,3088],[1205,3206],[1209,3252],[1235,3281],[1196,3370],[1190,3421],[1142,3487],[1135,3519],[1061,3612],[1112,3662],[1121,3747],[1171,3753],[1188,3728],[1145,3656],[1190,3652],[1233,3618],[1238,3529],[1284,3527],[1342,3553],[1362,3591],[1465,3664],[1493,3743],[1620,3801],[1638,3766],[1674,3762],[1690,3724],[1727,3709],[1786,3570],[1792,3533],[1831,3481],[1832,3397],[1880,3323]]]}},{"type":"Feature","id":"PE.LB","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.44,"hc-key":"pe-lb","hc-a2":"LB","labelrank":"4","hasc":"PE.LB","alt-name":null,"woe-id":"2346481","subregion":null,"fips":"PE14","postal-code":"LB","name":"Lambayeque","country":"Peru","type-en":"Department","region":null,"longitude":"-79.8994","woe-name":"Lambayeque","latitude":"-6.2514","woe-label":"Lambayeque, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-12,5637],[-22,5669],[-155,5800],[-175,5857],[-267,5937],[-373,5999],[-571,6096],[-488,6207],[-466,6261],[-380,6355],[-197,6409],[-171,6428],[-169,6590],[-91,6529],[-53,6474],[-56,6413],[-7,6396],[9,6367],[79,6364],[125,6331],[177,6316],[209,6335],[262,6309],[222,6248],[242,6211],[219,6160],[132,6128],[119,6097],[130,6017],[175,5991],[196,5938],[297,5901],[297,5873],[206,5795],[190,5728],[101,5752],[-12,5637]]]}},{"type":"Feature","id":"PE.TU","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.59,"hc-key":"pe-tu","hc-a2":"TU","labelrank":"7","hasc":"PE.TU","alt-name":"Tumbez","woe-id":"2346491","subregion":null,"fips":"PE24","postal-code":"TU","name":"Tumbes","country":"Peru","type-en":"Department","region":null,"longitude":"-80.6135","woe-name":"Tumbes","latitude":"-3.88493","woe-label":"Tumbes, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-837,7452],[-797,7518],[-723,7577],[-714,7616],[-666,7674],[-572,7730],[-527,7796],[-427,7820],[-411,7863],[-366,7843],[-370,7808],[-342,7746],[-339,7641],[-305,7576],[-388,7501],[-449,7514],[-493,7504],[-511,7465],[-616,7378],[-693,7404],[-758,7402],[-837,7452]]]}},{"type":"Feature","id":"PE.AP","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.55,"hc-key":"pe-ap","hc-a2":"AP","labelrank":"4","hasc":"PE.AP","alt-name":"Apuromac","woe-id":"2346470","subregion":null,"fips":"PE03","postal-code":"AP","name":"Apurímac","country":"Peru","type-en":"Department","region":null,"longitude":"-72.9662","woe-name":"Apurímac","latitude":"-14.0317","woe-label":"Apurímac, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3976,1166],[3871,1229],[3858,1210],[3731,1177],[3680,1185],[3639,1128],[3589,1118],[3559,1194],[3589,1202],[3602,1265],[3580,1307],[3588,1394],[3582,1469],[3550,1518],[3530,1603],[3466,1727],[3498,1753],[3473,1798],[3436,1823],[3407,1972],[3433,2067],[3581,1972],[3630,1933],[3753,1910],[3771,1943],[3842,1920],[3920,1955],[4012,1932],[4126,1855],[4227,1833],[4258,1787],[4317,1774],[4378,1720],[4424,1629],[4423,1526],[4405,1464],[4307,1347],[4250,1331],[4191,1290],[4176,1260],[4185,1197],[4136,1185],[4026,1208],[3976,1166]]]}},{"type":"Feature","id":"PE.AR","properties":{"hc-group":"admin1","hc-middle-x":0.68,"hc-middle-y":0.49,"hc-key":"pe-ar","hc-a2":"AR","labelrank":"6","hasc":"PE.AR","alt-name":null,"woe-id":"2346471","subregion":null,"fips":"PE04","postal-code":"AR","name":"Arequipa","country":"Peru","type-en":"Department","region":null,"longitude":"-72.4209","woe-name":"Arequipa","latitude":"-15.8757","woe-label":"Arequipa, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3976,1166],[4026,1208],[4136,1185],[4185,1197],[4185,1159],[4220,1113],[4270,1095],[4365,1120],[4423,1072],[4448,1123],[4452,1196],[4482,1176],[4533,1091],[4572,1077],[4544,1034],[4540,972],[4651,929],[4740,951],[4742,982],[4868,925],[4900,948],[4935,919],[4930,866],[5015,790],[5023,652],[5081,584],[5062,521],[5114,448],[5109,400],[5090,238],[5049,196],[5034,117],[4934,119],[4888,94],[4837,23],[4837,-36],[4766,-81],[4753,-111],[4775,-179],[4818,-219],[4757,-354],[4725,-378],[4639,-325],[4546,-299],[4467,-228],[4376,-196],[4327,-132],[4273,-110],[4235,-38],[4164,5],[4107,24],[4048,24],[3997,44],[3937,89],[3840,126],[3765,179],[3706,186],[3694,219],[3636,248],[3477,292],[3396,337],[3288,417],[3280,448],[3055,546],[3043,588],[2824,684],[2812,701],[2694,761],[2760,878],[2895,966],[2903,943],[3043,902],[3080,804],[3113,789],[3140,739],[3179,724],[3250,746],[3259,664],[3321,680],[3361,743],[3554,767],[3621,796],[3721,777],[3723,842],[3786,834],[3866,932],[3883,1031],[3867,1062],[3889,1112],[3982,1128],[3976,1166]]]}},{"type":"Feature","id":"PE.CL","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.41,"hc-key":"pe-cl","hc-a2":"CL","labelrank":"4","hasc":"PE.CL","alt-name":"El Callao","woe-id":"2346488","subregion":null,"fips":"PE21","postal-code":"CL","name":"Callao","country":"Peru","type-en":"Department","region":null,"longitude":"-69.9802","woe-name":"Callao","latitude":"-15.1677","woe-label":"Puno, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6239,2125],[6242,1976],[6224,1818],[6200,1768],[6155,1750],[6203,1697],[6218,1567],[6256,1534],[6281,1455],[6271,1423],[6198,1405],[6207,1325],[6104,1255],[6099,1210],[6054,1202],[6039,1109],[5985,1089],[5965,984],[6021,901],[6100,820],[6064,804],[6011,744],[5967,654],[5927,670],[5909,709],[5849,757],[5812,762],[5778,822],[5773,798],[5671,786],[5718,767],[5644,751],[5635,729],[5709,590],[5718,538],[5638,636],[5641,604],[5610,553],[5581,555],[5590,466],[5655,450],[5664,422],[5710,426],[5669,461],[5709,500],[5733,440],[5766,441],[5777,393],[5920,363],[5926,317],[5873,263],[5923,261],[5996,210],[6077,213],[6129,238],[6187,230],[6165,200],[6117,206],[6143,177],[6137,118],[6105,70],[6137,36],[6152,-14],[6135,-35],[6045,-75],[6025,-119],[5916,-233],[5903,-275],[5856,-288],[5790,-330],[5764,-390],[5720,-390],[5566,-294],[5479,-133],[5486,-85],[5567,-38],[5421,101],[5389,188],[5402,238],[5365,292],[5348,358],[5270,383],[5201,357],[5109,400],[5114,448],[5062,521],[5081,584],[5023,652],[5015,790],[5039,802],[5047,863],[5028,929],[5028,994],[5046,1026],[5040,1125],[5006,1133],[4970,1177],[5045,1236],[5056,1317],[5108,1336],[5144,1443],[5159,1521],[5136,1571],[5157,1681],[5236,1702],[5304,1847],[5395,1952],[5420,1998],[5417,2063],[5436,2150],[5456,2155],[5842,1952],[5867,1951],[6239,2125]]]}},{"type":"Feature","id":"PE.MQ","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.42,"hc-key":"pe-mq","hc-a2":"MQ","labelrank":"7","hasc":"PE.MQ","alt-name":null,"woe-id":"2346485","subregion":null,"fips":"PE18","postal-code":"MQ","name":"Moquegua","country":"Peru","type-en":"Department","region":null,"longitude":"-70.7546","woe-name":"Moquegua","latitude":"-16.6807","woe-label":"Moquegua, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4896,-664],[4824,-610],[4779,-598],[4794,-566],[4774,-428],[4725,-378],[4757,-354],[4818,-219],[4775,-179],[4753,-111],[4766,-81],[4837,-36],[4837,23],[4888,94],[4934,119],[5034,117],[5049,196],[5090,238],[5109,400],[5201,357],[5270,383],[5348,358],[5365,292],[5402,238],[5389,188],[5421,101],[5567,-38],[5486,-85],[5479,-133],[5450,-173],[5426,-167],[5397,-111],[5357,-98],[5313,-135],[5298,-188],[5305,-240],[5234,-323],[5175,-349],[5122,-422],[5106,-471],[5037,-567],[4925,-622],[4896,-664]]]}},{"type":"Feature","id":"PE.TA","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.54,"hc-key":"pe-ta","hc-a2":"TA","labelrank":"7","hasc":"PE.TA","alt-name":null,"woe-id":"2346490","subregion":null,"fips":"PE23","postal-code":"TA","name":"Tacna","country":"Peru","type-en":"Department","region":null,"longitude":"-70.34229999999999","woe-name":"Tacna","latitude":"-17.5742","woe-label":"Tacna, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[5479,-133],[5566,-294],[5720,-390],[5764,-390],[5802,-398],[5843,-441],[5848,-522],[5746,-608],[5669,-607],[5645,-651],[5683,-799],[5633,-894],[5571,-955],[5477,-993],[5329,-999],[5237,-929],[5169,-890],[5090,-813],[5054,-794],[5042,-759],[4945,-710],[4896,-664],[4925,-622],[5037,-567],[5106,-471],[5122,-422],[5175,-349],[5234,-323],[5305,-240],[5298,-188],[5313,-135],[5357,-98],[5397,-111],[5426,-167],[5450,-173],[5479,-133]]]}},{"type":"Feature","id":"PE.AN","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.56,"hc-key":"pe-an","hc-a2":"AN","labelrank":"4","hasc":"PE.AN","alt-name":"Ancachs","woe-id":"2346469","subregion":null,"fips":"PE02","postal-code":"AN","name":"Ancash","country":"Peru","type-en":"Department","region":null,"longitude":"-77.6571","woe-name":"Ancash","latitude":"-9.539960000000001","woe-label":"Ancash, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1061,3612],[963,3762],[934,3848],[898,3883],[891,3942],[857,3995],[860,4088],[777,4193],[777,4228],[742,4308],[749,4342],[683,4397],[700,4444],[664,4447],[668,4412],[633,4451],[658,4494],[615,4522],[610,4577],[629,4589],[640,4659],[675,4700],[841,4759],[851,4828],[895,4894],[924,4970],[1014,5047],[1049,5110],[1101,5104],[1196,5143],[1221,5059],[1293,5002],[1372,4893],[1388,4835],[1407,4746],[1452,4703],[1452,4673],[1498,4620],[1535,4607],[1580,4553],[1707,4480],[1730,4440],[1661,4368],[1602,4231],[1594,4181],[1537,4094],[1580,4001],[1591,3929],[1636,3896],[1620,3801],[1493,3743],[1465,3664],[1362,3591],[1342,3553],[1284,3527],[1238,3529],[1233,3618],[1190,3652],[1145,3656],[1188,3728],[1171,3753],[1121,3747],[1112,3662],[1061,3612]]]}},{"type":"Feature","id":"PE.CJ","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.71,"hc-key":"pe-cj","hc-a2":"CJ","labelrank":"7","hasc":"PE.CJ","alt-name":"Caxamarca","woe-id":"2346473","subregion":null,"fips":"PE06","postal-code":"CJ","name":"Cajamarca","country":"Peru","type-en":"Department","region":null,"longitude":"-78.6091","woe-name":"Cajamarca","latitude":"-6.81775","woe-label":"Cajamarca, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[190,5728],[206,5795],[297,5873],[297,5901],[196,5938],[175,5991],[130,6017],[119,6097],[132,6128],[219,6160],[242,6211],[222,6248],[262,6309],[209,6335],[177,6316],[125,6331],[182,6380],[143,6486],[159,6621],[198,6620],[195,6713],[174,6740],[164,6824],[226,6890],[251,6936],[327,6928],[351,6910],[383,6940],[400,6991],[448,7009],[431,7066],[475,7122],[561,7162],[592,7099],[610,7022],[635,6980],[634,6919],[597,6831],[623,6699],[623,6621],[556,6521],[526,6425],[617,6292],[718,6239],[778,6121],[881,6057],[914,6009],[970,5892],[973,5775],[991,5731],[1024,5645],[1063,5601],[1081,5516],[1131,5462],[1067,5459],[1035,5438],[1026,5348],[937,5328],[904,5341],[847,5291],[815,5284],[809,5321],[749,5358],[698,5359],[642,5398],[577,5391],[532,5409],[433,5377],[400,5320],[362,5345],[361,5405],[341,5444],[281,5497],[190,5522],[169,5541],[194,5594],[184,5638],[190,5728]]]}},{"type":"Feature","id":"PE.HC","properties":{"hc-group":"admin1","hc-middle-x":0.34,"hc-middle-y":0.5,"hc-key":"pe-hc","hc-a2":"HC","labelrank":"7","hasc":"PE.HC","alt-name":"Huknuco","woe-id":"2346477","subregion":null,"fips":"PE10","postal-code":"HC","name":"Huánuco","country":"Peru","type-en":"Department","region":null,"longitude":"-75.9161","woe-name":"Huánuco","latitude":"-9.592029999999999","woe-label":"Huánuco, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1620,3801],[1636,3896],[1591,3929],[1580,4001],[1537,4094],[1594,4181],[1602,4231],[1661,4368],[1730,4440],[1707,4480],[1580,4553],[1535,4607],[1498,4620],[1452,4673],[1452,4703],[1407,4746],[1388,4835],[1479,4836],[1556,4856],[1581,4795],[1645,4794],[1662,4823],[1711,4833],[1896,4797],[1951,4826],[1955,4909],[1973,4927],[2045,4812],[2063,4740],[2118,4729],[2149,4782],[2192,4816],[2180,4770],[2224,4671],[2232,4568],[2283,4507],[2296,4416],[2371,4322],[2424,4334],[2495,4393],[2577,4425],[2659,4560],[2729,4656],[2868,4761],[2941,4784],[3008,4776],[3032,4751],[3034,4702],[2977,4657],[2969,4579],[2939,4519],[2938,4430],[2915,4355],[2925,4315],[3021,4176],[2889,4115],[2760,4093],[2672,4102],[2560,4049],[2460,4031],[2389,4034],[2321,4022],[2282,3994],[2265,3914],[2299,3776],[2196,3720],[2144,3748],[2031,3756],[1983,3803],[1865,3817],[1819,3800],[1781,3747],[1727,3709],[1690,3724],[1674,3762],[1638,3766],[1620,3801]]]}},{"type":"Feature","id":"PE.3341","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.48,"hc-key":"pe-3341","hc-a2":"CA","labelrank":"9","hasc":"PE.","alt-name":"Region","woe-id":"2346474","subregion":null,"fips":null,"postal-code":null,"name":"Callao","country":"Peru","type-en":"Departamento","region":null,"longitude":"-77.2248","woe-name":"Callao","latitude":"-12.0859","woe-label":"Provincia Constitucional del Callao, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1517,2742],[1482,2747],[1502,2790],[1518,2779],[1517,2742]]]}},{"type":"Feature","id":"PE.LL","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.57,"hc-key":"pe-ll","hc-a2":"LL","labelrank":"4","hasc":"PE.LL","alt-name":"Libertad","woe-id":"2346480","subregion":null,"fips":"PE13","postal-code":"LL","name":"La Libertad","country":"Peru","type-en":"Department","region":null,"longitude":"-78.2813","woe-name":"La Libertad","latitude":"-8.213340000000001","woe-label":"La Libertad, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[190,5728],[184,5638],[194,5594],[169,5541],[190,5522],[281,5497],[341,5444],[361,5405],[362,5345],[400,5320],[433,5377],[532,5409],[577,5391],[642,5398],[698,5359],[749,5358],[809,5321],[815,5284],[847,5291],[904,5341],[937,5328],[1026,5348],[1035,5438],[1067,5459],[1131,5462],[1081,5516],[1063,5601],[1024,5645],[991,5731],[1060,5747],[1137,5743],[1173,5667],[1210,5639],[1205,5573],[1226,5502],[1311,5402],[1299,5289],[1341,5209],[1339,5152],[1365,5110],[1440,5108],[1561,5069],[1629,5005],[1648,4849],[1662,4823],[1645,4794],[1581,4795],[1556,4856],[1479,4836],[1388,4835],[1372,4893],[1293,5002],[1221,5059],[1196,5143],[1101,5104],[1049,5110],[1014,5047],[924,4970],[895,4894],[851,4828],[841,4759],[675,4700],[640,4659],[629,4589],[610,4577],[590,4625],[542,4688],[554,4709],[544,4786],[508,4833],[437,4888],[459,4922],[409,5016],[327,5091],[326,5106],[223,5179],[124,5310],[142,5335],[54,5459],[59,5504],[35,5575],[-12,5637],[101,5752],[190,5728]]]}},{"type":"Feature","id":"PE.PA","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.43,"hc-key":"pe-pa","hc-a2":"PA","labelrank":"7","hasc":"PE.PA","alt-name":null,"woe-id":"2346486","subregion":null,"fips":"PE19","postal-code":"PA","name":"Pasco","country":"Peru","type-en":"Department","region":null,"longitude":"-75.4586","woe-name":"Pasco","latitude":"-10.3457","woe-label":"Pasco, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1727,3709],[1781,3747],[1819,3800],[1865,3817],[1983,3803],[2031,3756],[2144,3748],[2196,3720],[2299,3776],[2265,3914],[2282,3994],[2321,4022],[2389,4034],[2460,4031],[2560,4049],[2672,4102],[2760,4093],[2889,4115],[3021,4176],[3077,4059],[3079,3996],[3124,3887],[3118,3783],[3158,3675],[3211,3650],[3231,3612],[3162,3578],[3091,3508],[3035,3468],[2932,3467],[2876,3483],[2801,3536],[2734,3568],[2676,3538],[2545,3503],[2488,3502],[2308,3449],[2169,3446],[2144,3469],[2092,3437],[2005,3437],[2002,3332],[1880,3323],[1832,3397],[1831,3481],[1792,3533],[1786,3570],[1727,3709]]]}},{"type":"Feature","id":"PE.PI","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.46,"hc-key":"pe-pi","hc-a2":"PI","labelrank":"7","hasc":"PE.PI","alt-name":null,"woe-id":"2346487","subregion":null,"fips":"PE20","postal-code":"PI","name":"Piura","country":"Peru","type-en":"Department","region":null,"longitude":"-80.2868","woe-name":"Piura","latitude":"-5.09955","woe-label":"Piura, PE, Peru","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[251,6936],[226,6890],[164,6824],[174,6740],[195,6713],[198,6620],[159,6621],[143,6486],[182,6380],[125,6331],[79,6364],[9,6367],[-7,6396],[-56,6413],[-53,6474],[-91,6529],[-169,6590],[-171,6428],[-197,6409],[-380,6355],[-466,6261],[-488,6207],[-571,6096],[-666,6141],[-704,6176],[-852,6274],[-882,6331],[-882,6386],[-838,6443],[-757,6406],[-713,6470],[-709,6525],[-754,6635],[-838,6720],[-874,6731],[-914,6785],[-898,6857],[-846,6862],[-835,6896],[-931,7023],[-999,7098],[-980,7119],[-995,7218],[-966,7266],[-975,7312],[-950,7359],[-837,7452],[-758,7402],[-693,7404],[-616,7378],[-511,7465],[-485,7377],[-411,7386],[-496,7269],[-448,7221],[-348,7285],[-328,7328],[-289,7337],[-195,7275],[-149,7269],[-106,7222],[-3,7246],[87,7192],[75,7141],[122,7028],[209,6939],[251,6936]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/ec-all.geo.json
const ec_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Ecuador","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32717"}},"hc-transform":{"default":{"xpan":180,"crs":"+proj=utm +zone=17 +south +datum=WGS84 +units=m +no_defs","scale":0.000981919472868,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":498553.31656,"yoffset":10158651.1115},"ec-all-galapagos":{"xpan":5,"ypan":5,"hitZone":{"type":"Polygon","coordinates":[[[2455,9999],[2455,8025],[1375,6315],[-999,6315],[-999,9999],[2455,9999]]]},"crs":"+proj=utm +zone=15 +south +datum=WGS84 +units=m +no_defs","scale":0.000471723602976,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":609945.430887,"yoffset":10183991.7178}},"features":[{"type":"Feature","id":"EC.GU","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.45,"hc-key":"ec-gu","hc-a2":"GU","labelrank":"7","hasc":"EC.GU","alt-name":null,"woe-id":"2345211","subregion":null,"fips":"EC10","postal-code":"GU","name":"Guayas","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.8608","woe-name":"Guayas","latitude":"-1.98384","woe-label":"Guayas, EC, Ecuador","type":"Provincia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3310,2392],[3283,2354],[3222,2360],[3160,2332],[3055,2358],[3061,2657],[3148,2852],[3404,2956],[3480,2954],[3597,2882],[3669,2864],[3627,2802],[3542,2766],[3466,2653],[3395,2516],[3345,2480],[3310,2392]]],[[[3787,3001],[3713,2978],[3705,3016],[3764,3172],[3810,3254],[3828,3210],[3890,3159],[3854,3106],[3795,3075],[3787,3001]]],[[[3680,2312],[3716,2379],[3699,2409],[3785,2714],[3841,2824],[3883,2961],[3953,3042],[3970,3112],[3931,3256],[3875,3255],[3841,3293],[3777,3437],[3763,3659],[3777,3719],[3729,3821],[3739,3889],[3813,3937],[3834,3995],[3902,4063],[3791,3998],[3786,3953],[3706,3930],[3674,3809],[3682,3712],[3733,3622],[3737,3571],[3711,3244],[3693,3175],[3634,3106],[3532,3053],[3431,3080],[3388,3128],[3462,3188],[3485,3249],[3548,3268],[3616,3242],[3542,3303],[3447,3274],[3445,3335],[3490,3468],[3543,3487],[3590,3554],[3534,3521],[3484,3522],[3450,3489],[3376,3301],[3261,3141],[3209,3084],[3097,3014],[3048,3054],[3032,2979],[3084,2928],[3090,2858],[3034,2848],[2962,2876],[2834,2980],[2713,3032],[2587,3181],[2709,3296],[2810,3371],[2955,3406],[3037,3453],[3113,3567],[3140,3737],[3144,3886],[3078,3986],[3017,4042],[2918,4103],[2784,4135],[2696,4188],[2648,4266],[2632,4340],[2751,4343],[2785,4425],[2848,4514],[2963,4604],[2998,4580],[3041,4606],[3108,4602],[3140,4626],[3119,4719],[3052,4753],[3026,4799],[3130,4813],[3195,4878],[3165,4945],[3191,5042],[3275,5078],[3296,5192],[3433,5297],[3518,5537],[3612,5513],[3668,5536],[3755,5605],[3847,5731],[3854,5782],[3977,5954],[4042,5988],[4151,6006],[4293,6027],[4324,5988],[4289,5860],[4298,5822],[4249,5776],[4225,5686],[4159,5643],[4097,5569],[4059,5561],[4037,5507],[3950,5443],[3933,5358],[3838,5180],[3765,5082],[3737,5006],[3725,4880],[3750,4789],[3751,4676],[3890,4604],[4003,4428],[4099,4228],[4196,4229],[4282,4261],[4349,4260],[4517,4160],[4588,4099],[4714,3889],[4800,3811],[4908,3798],[4946,3825],[4983,3796],[4978,3727],[4936,3661],[4800,3596],[4601,3560],[4477,3464],[4478,3361],[4327,3237],[4369,3199],[4457,3234],[4491,3172],[4478,3136],[4399,3066],[4028,2682],[4006,2599],[4021,2460],[3929,2349],[3909,2280],[3823,2304],[3680,2312]]]]}},{"type":"Feature","id":"EC.ES","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.47,"hc-key":"ec-es","hc-a2":"ES","labelrank":"7","hasc":"EC.ES","alt-name":null,"woe-id":"2345210","subregion":null,"fips":"EC09","postal-code":"ES","name":"Esmeraldas","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.9448","woe-name":"Esmeraldas","latitude":"1.29253","woe-label":"Esmeraldas, EC, Ecuador","type":"Provincia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5371,9577],[5348,9533],[5308,9552],[5273,9517],[5213,9571],[5233,9639],[5366,9750],[5379,9646],[5371,9577]]],[[[4584,7515],[4551,7474],[4438,7435],[4486,7370],[4467,7352],[4366,7393],[4192,7413],[4153,7513],[4239,7632],[4137,7697],[4108,7681],[4083,7732],[4011,7762],[4090,7859],[4084,7888],[3989,7960],[4020,8011],[3985,8060],[3945,8066],[3821,7979],[3690,7970],[3632,7877],[3572,7884],[3507,8017],[3518,8073],[3445,8175],[3433,8280],[3478,8377],[3445,8488],[3354,8534],[3323,8606],[3323,8678],[3378,8810],[3428,8849],[3482,8832],[3563,8844],[3597,8875],[3740,8911],[3857,8987],[3903,9044],[4045,9094],[4089,9125],[4099,9092],[4065,8987],[4124,8917],[4102,8973],[4114,9072],[4159,9113],[4232,9092],[4312,9137],[4427,9241],[4582,9241],[4739,9276],[4780,9254],[4951,9304],[5078,9472],[5145,9471],[5199,9410],[5214,9321],[5272,9395],[5277,9469],[5320,9529],[5382,9532],[5390,9575],[5446,9611],[5412,9634],[5421,9699],[5484,9762],[5490,9851],[5590,9783],[5675,9694],[5709,9628],[5768,9569],[5874,9564],[5929,9450],[5979,9466],[6084,9435],[6055,9409],[6057,9290],[5996,9156],[5989,9060],[6008,9000],[6146,8905],[6132,8765],[6028,8726],[6117,8507],[6177,8424],[6152,8355],[6036,8342],[5982,8304],[5833,8121],[5751,8063],[5676,8114],[5438,8148],[5366,8087],[5349,8040],[5295,7992],[5222,7887],[5183,7887],[5133,7933],[4955,7971],[4825,7968],[4613,7839],[4610,7805],[4681,7749],[4584,7515]]]]}},{"type":"Feature","id":"EC.CR","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.63,"hc-key":"ec-cr","hc-a2":"CR","labelrank":"7","hasc":"EC.CR","alt-name":null,"woe-id":"2345206","subregion":null,"fips":"EC05","postal-code":"CR","name":"Carchi","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.0243","woe-name":"Carchi","latitude":"0.686611","woe-label":"Carchi, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6084,9435],[6263,9245],[6336,9199],[6471,9154],[6692,8988],[6763,8954],[6884,8949],[7051,8892],[7060,8838],[7153,8800],[7222,8806],[7357,8857],[7399,8857],[7450,8818],[7461,8696],[7497,8643],[7608,8567],[7670,8543],[7720,8550],[7653,8496],[7462,8518],[7448,8487],[7487,8436],[7471,8400],[7394,8340],[7253,8148],[7256,8083],[7211,8019],[7141,8077],[6895,8226],[6771,8251],[6674,8288],[6646,8342],[6645,8436],[6610,8533],[6499,8694],[6406,8787],[6265,8878],[6146,8905],[6008,9000],[5989,9060],[5996,9156],[6057,9290],[6055,9409],[6084,9435]]]}},{"type":"Feature","id":"EC.IM","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.66,"hc-key":"ec-im","hc-a2":"IM","labelrank":"7","hasc":"EC.IM","alt-name":null,"woe-id":"2345212","subregion":null,"fips":"EC11","postal-code":"IM","name":"Imbabura","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.41240000000001","woe-name":"Imbabura","latitude":"0.55271","woe-label":"Imbabura, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6146,8905],[6265,8878],[6406,8787],[6499,8694],[6610,8533],[6645,8436],[6646,8342],[6674,8288],[6771,8251],[6895,8226],[7141,8077],[7211,8019],[7158,7951],[7175,7890],[7111,7810],[7048,7771],[6989,7708],[6764,7769],[6599,7673],[6512,7661],[6434,7690],[6353,7754],[6277,7717],[6287,7783],[6269,7834],[6194,7850],[5790,7799],[5577,7839],[5431,7823],[5283,7792],[5211,7822],[5183,7887],[5222,7887],[5295,7992],[5349,8040],[5366,8087],[5438,8148],[5676,8114],[5751,8063],[5833,8121],[5982,8304],[6036,8342],[6152,8355],[6177,8424],[6117,8507],[6028,8726],[6132,8765],[6146,8905]]]}},{"type":"Feature","id":"EC.SU","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.54,"hc-key":"ec-su","hc-a2":"SU","labelrank":"7","hasc":"EC.SU","alt-name":null,"woe-id":"2345222","subregion":null,"fips":"EC22","postal-code":"SU","name":"Sucumbios","country":"Ecuador","type-en":"Province","region":null,"longitude":"-76.6135","woe-name":"Sucumbios","latitude":"-0.085516","woe-label":"Sucumbios, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6989,7708],[7048,7771],[7111,7810],[7175,7890],[7158,7951],[7211,8019],[7256,8083],[7253,8148],[7394,8340],[7471,8400],[7487,8436],[7448,8487],[7462,8518],[7653,8496],[7720,8550],[7798,8533],[7821,8452],[7832,8275],[7872,8125],[7977,8068],[8158,8032],[8241,8000],[8393,8039],[8452,8025],[8517,7952],[8685,7920],[8768,7850],[8818,7840],[8936,7858],[9044,7830],[9061,7905],[9202,7880],[9299,7812],[9568,7846],[9598,7866],[9581,7978],[9584,8115],[9671,8123],[9762,8210],[9798,8208],[9911,8123],[10046,8112],[10088,8030],[10201,8050],[10224,8005],[10338,7862],[10355,7808],[10416,7742],[10649,7579],[10787,7560],[10893,7581],[11023,7501],[11103,7430],[11276,7331],[11371,7313],[11511,7255],[11407,7184],[11308,7190],[11218,7164],[11098,7228],[10908,7248],[10907,7181],[10939,7131],[11008,7128],[11168,7018],[11222,6827],[11254,6755],[11353,6647],[11392,6646],[11530,6548],[11555,6486],[11558,6381],[11539,6350],[11499,6391],[11456,6384],[11341,6419],[11315,6474],[11227,6503],[11124,6503],[11039,6547],[11015,6600],[10879,6668],[10782,6662],[10719,6722],[10578,6699],[10515,6730],[10429,6739],[10381,6722],[10375,6678],[10398,6488],[10301,6502],[10149,6601],[10117,6690],[9956,6701],[9825,6688],[9703,6643],[9594,6575],[9565,6617],[9470,6621],[9349,6704],[9313,6753],[9235,6720],[9193,6776],[9078,6860],[8935,7056],[8733,7304],[8641,7318],[8546,7269],[8468,7264],[8343,7296],[8277,7280],[8111,7357],[8085,7338],[7977,7199],[7835,7226],[7839,7335],[7804,7397],[7659,7320],[7593,7268],[7505,7300],[7337,7304],[7283,7325],[7261,7414],[7271,7463],[7180,7490],[7102,7576],[6946,7638],[6989,7708]]]}},{"type":"Feature","id":"EC.SE","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.61,"hc-key":"ec-se","hc-a2":"SE","labelrank":"7","hasc":"EC.SE","alt-name":null,"woe-id":"56189815","subregion":null,"fips":"EC25","postal-code":"SE","name":"Santa Elena","country":"Ecuador","type-en":"Province","region":null,"longitude":"-80.57720000000001","woe-name":null,"latitude":"-2.15487","woe-label":"Santa Elena","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[2587,3181],[2534,3243],[2394,3372],[2290,3414],[2235,3412],[2114,3455],[2043,3518],[1959,3536],[1896,3672],[1810,3746],[1791,3791],[1899,3759],[1929,3706],[2032,3730],[2118,3799],[2184,3832],[2245,3899],[2257,3999],[2215,4116],[2265,4150],[2265,4233],[2218,4412],[2182,4514],[2121,4615],[2234,4630],[2356,4624],[2448,4651],[2528,4644],[2561,4617],[2592,4530],[2553,4412],[2570,4361],[2632,4340],[2648,4266],[2696,4188],[2784,4135],[2918,4103],[3017,4042],[3078,3986],[3144,3886],[3140,3737],[3113,3567],[3037,3453],[2955,3406],[2810,3371],[2709,3296],[2587,3181]]]}},{"type":"Feature","id":"EC.SD","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.52,"hc-key":"ec-sd","hc-a2":"SD","labelrank":"7","hasc":"EC.SD","alt-name":null,"woe-id":"56189814","subregion":null,"fips":"EC26","postal-code":"SD","name":"Santo Domingo de los Tsáchilas","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.2525","woe-name":null,"latitude":"-0.34834","woe-label":"Santo Domingo de los Tsáchilas","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[4192,7413],[4366,7393],[4467,7352],[4486,7370],[4438,7435],[4551,7474],[4584,7515],[4676,7448],[5020,7437],[5031,7298],[5332,7309],[5385,7255],[5546,7170],[5632,7074],[5600,6957],[5385,6935],[5334,6855],[5272,6819],[5253,6771],[5189,6722],[5144,6628],[5207,6577],[5210,6536],[5159,6509],[5138,6459],[5079,6468],[5054,6507],[4978,6501],[4853,6377],[4687,6266],[4606,6288],[4590,6333],[4612,6389],[4595,6465],[4621,6504],[4567,6518],[4387,6521],[4435,6607],[4440,6658],[4511,6791],[4501,7092],[4481,7140],[4359,7164],[4272,7257],[4186,7316],[4172,7368],[4192,7413]]]}},{"type":"Feature","id":"EC.AZ","properties":{"hc-group":"admin1","hc-middle-x":0.35,"hc-middle-y":0.47,"hc-key":"ec-az","hc-a2":"AZ","labelrank":"7","hasc":"EC.AZ","alt-name":null,"woe-id":"2345203","subregion":null,"fips":"EC02","postal-code":"AZ","name":"Azuay","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.09090000000001","woe-name":"Azuay","latitude":"-3.15279","woe-label":"Azuay, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3909,2280],[3929,2349],[4021,2460],[4006,2599],[4028,2682],[4399,3066],[4478,3136],[4491,3172],[4457,3234],[4514,3231],[4560,3194],[4590,3128],[4700,3081],[4746,3009],[4896,2854],[4938,2833],[4964,2886],[5075,2976],[5116,2955],[5212,2846],[5280,2787],[5315,2694],[5403,2679],[5501,2682],[5515,2750],[5558,2812],[5546,2859],[5593,2912],[5662,2906],[5752,2970],[5834,3003],[5857,3063],[5935,3123],[5961,3121],[5959,3037],[5987,3018],[6044,3098],[6102,3107],[6166,3056],[6151,2982],[5963,2887],[5878,2757],[5918,2688],[5914,2632],[5834,2500],[5778,2371],[5752,2233],[5666,2152],[5544,2100],[5301,1902],[5298,1843],[5117,1715],[5091,1661],[5116,1588],[5100,1517],[5109,1457],[5074,1331],[5021,1316],[4990,1359],[4986,1449],[4892,1633],[4761,1612],[4688,1674],[4686,1761],[4638,1814],[4509,1812],[4421,1836],[4313,1862],[4155,1833],[4096,1835],[4076,1871],[4126,1899],[4182,2022],[4180,2116],[4116,2171],[3909,2280]]]}},{"type":"Feature","id":"EC.EO","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.53,"hc-key":"ec-eo","hc-a2":"EO","labelrank":"7","hasc":"EC.EO","alt-name":null,"woe-id":"2345209","subregion":null,"fips":"EC08","postal-code":"EO","name":"El Oro","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.8552","woe-name":"El Oro","latitude":"-3.43657","woe-label":"El Oro, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3909,2280],[4116,2171],[4180,2116],[4182,2022],[4126,1899],[4076,1871],[4096,1835],[4155,1833],[4313,1862],[4421,1836],[4423,1688],[4473,1651],[4472,1612],[4414,1545],[4372,1368],[4380,1319],[4444,1381],[4489,1391],[4552,1344],[4575,1288],[4564,1236],[4511,1162],[4524,1117],[4491,1052],[4439,1033],[4333,1056],[4227,1059],[4154,1121],[4062,1074],[4001,1007],[3940,987],[3830,981],[3742,1002],[3580,986],[3480,938],[3373,915],[3224,907],[3184,946],[3177,1007],[3128,1095],[3123,1244],[3138,1327],[3123,1393],[3081,1430],[3097,1524],[3044,1572],[3054,1672],[2928,1727],[2927,1769],[2993,1772],[3019,1850],[3066,1804],[3211,1838],[3275,1838],[3321,1890],[3403,2046],[3441,2038],[3436,1918],[3489,1982],[3583,2057],[3617,2195],[3680,2312],[3823,2304],[3909,2280]]]}},{"type":"Feature","id":"EC.LJ","properties":{"hc-group":"admin1","hc-middle-x":0.66,"hc-middle-y":0.56,"hc-key":"ec-lj","hc-a2":"LJ","labelrank":"7","hasc":"EC.LJ","alt-name":null,"woe-id":"2345213","subregion":null,"fips":"EC12","postal-code":"LJ","name":"Loja","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.8079","woe-name":"Loja","latitude":"-4.15948","woe-label":"Loja, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[4421,1836],[4509,1812],[4638,1814],[4686,1761],[4688,1674],[4761,1612],[4892,1633],[4986,1449],[4990,1359],[5021,1316],[4951,1248],[4944,1202],[4866,1157],[4914,1043],[4983,944],[4992,900],[4957,792],[4963,650],[4936,530],[4939,449],[5012,384],[5021,262],[4999,17],[4917,-97],[4844,-143],[4723,-96],[4653,-160],[4651,-258],[4630,-319],[4499,-507],[4411,-592],[4367,-507],[4348,-407],[4298,-335],[4339,-230],[4334,-190],[4211,-140],[4126,-56],[4079,-33],[3846,-110],[3784,-100],[3664,35],[3532,52],[3452,101],[3367,186],[3265,230],[3156,205],[3097,85],[2940,-43],[2855,-94],[2812,-96],[2708,-43],[2677,41],[2900,336],[2919,373],[2768,342],[2709,348],[2673,423],[2679,486],[2634,567],[2690,709],[2746,736],[2815,736],[2921,687],[2988,698],[3065,801],[3197,862],[3224,907],[3373,915],[3480,938],[3580,986],[3742,1002],[3830,981],[3940,987],[4001,1007],[4062,1074],[4154,1121],[4227,1059],[4333,1056],[4439,1033],[4491,1052],[4524,1117],[4511,1162],[4564,1236],[4575,1288],[4552,1344],[4489,1391],[4444,1381],[4380,1319],[4372,1368],[4414,1545],[4472,1612],[4473,1651],[4423,1688],[4421,1836]]]}},{"type":"Feature","id":"EC.ZC","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.52,"hc-key":"ec-zc","hc-a2":"ZC","labelrank":"7","hasc":"EC.ZC","alt-name":null,"woe-id":"2345221","subregion":null,"fips":"EC20","postal-code":"ZC","name":"Zamora Chinchipe","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.8595","woe-name":"Zamora Chinchipe","latitude":"-3.93679","woe-label":"Zamora-Chinchipe, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5021,1316],[5074,1331],[5109,1457],[5100,1517],[5116,1588],[5091,1661],[5117,1715],[5298,1843],[5439,1743],[5451,1698],[5409,1629],[5425,1549],[5495,1465],[5728,1410],[5779,1473],[5914,1473],[6038,1494],[6250,1493],[6201,1351],[6208,1240],[6165,1223],[6185,1085],[6175,1052],[6089,987],[6059,922],[6042,786],[5950,753],[5925,708],[5926,607],[5908,533],[5804,319],[5773,212],[5728,151],[5743,26],[5804,-31],[5748,-129],[5743,-226],[5664,-295],[5509,-356],[5438,-396],[5361,-466],[5310,-555],[5311,-602],[5357,-718],[5339,-751],[5222,-768],[5173,-913],[5080,-999],[5012,-946],[4950,-951],[4835,-920],[4676,-914],[4613,-817],[4565,-795],[4521,-722],[4428,-659],[4411,-592],[4499,-507],[4630,-319],[4651,-258],[4653,-160],[4723,-96],[4844,-143],[4917,-97],[4999,17],[5021,262],[5012,384],[4939,449],[4936,530],[4963,650],[4957,792],[4992,900],[4983,944],[4914,1043],[4866,1157],[4944,1202],[4951,1248],[5021,1316]]]}},{"type":"Feature","id":"EC.CN","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.55,"hc-key":"ec-cn","hc-a2":"CN","labelrank":"7","hasc":"EC.CN","alt-name":null,"woe-id":"2345205","subregion":null,"fips":"EC04","postal-code":"CN","name":"Cañar","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.9978","woe-name":"Cañar","latitude":"-2.54413","woe-label":"Canar, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5961,3121],[5935,3123],[5857,3063],[5834,3003],[5752,2970],[5662,2906],[5593,2912],[5546,2859],[5558,2812],[5515,2750],[5501,2682],[5403,2679],[5315,2694],[5280,2787],[5212,2846],[5116,2955],[5075,2976],[4964,2886],[4938,2833],[4896,2854],[4746,3009],[4700,3081],[4590,3128],[4560,3194],[4514,3231],[4457,3234],[4369,3199],[4327,3237],[4478,3361],[4477,3464],[4601,3560],[4800,3596],[4936,3661],[4978,3727],[4984,3683],[5096,3564],[5150,3489],[5291,3401],[5431,3413],[5490,3443],[5557,3506],[5663,3535],[5878,3559],[5910,3544],[5912,3525],[6040,3465],[6076,3428],[6072,3298],[6055,3204],[5984,3114],[5961,3121]]]}},{"type":"Feature","id":"EC.BO","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.31,"hc-key":"ec-bo","hc-a2":"BO","labelrank":"7","hasc":"EC.BO","alt-name":null,"woe-id":"2345204","subregion":null,"fips":"EC03","postal-code":"BO","name":"Bolivar","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.12050000000001","woe-name":"Bolivar","latitude":"-1.67621","woe-label":"Bolivar, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[4978,3727],[4983,3796],[4946,3825],[4908,3798],[4800,3811],[4851,3947],[4840,3984],[4728,4148],[4761,4200],[4811,4368],[4778,4427],[4775,4514],[4693,4643],[4622,4690],[4704,4768],[4748,4767],[4776,4843],[4660,4966],[4656,5131],[4705,5191],[4619,5263],[4560,5205],[4546,5239],[4645,5374],[4725,5412],[4803,5417],[4927,5479],[5061,5492],[5142,5427],[5216,5401],[5283,5411],[5378,5467],[5427,5453],[5390,5386],[5383,5300],[5342,5193],[5329,5085],[5402,4980],[5414,4907],[5449,4842],[5437,4635],[5384,4540],[5325,4487],[5241,4473],[5191,4421],[5184,4316],[5200,4207],[5155,3991],[5174,3921],[5130,3836],[5069,3775],[4978,3727]]]}},{"type":"Feature","id":"EC.CT","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.62,"hc-key":"ec-ct","hc-a2":"CT","labelrank":"7","hasc":"EC.CT","alt-name":"Le¢n","woe-id":"2345208","subregion":null,"fips":"EC07","postal-code":"CT","name":"Cotopaxi","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.8554","woe-name":"Cotopaxi","latitude":"-0.813335","woe-label":"Cotopaxi, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5427,5453],[5378,5467],[5283,5411],[5216,5401],[5142,5427],[5061,5492],[4927,5479],[4803,5417],[4725,5412],[4713,5466],[4653,5550],[4684,5750],[4686,5839],[4708,5898],[4779,5972],[4825,6056],[4883,6101],[4919,6159],[5035,6432],[5054,6507],[5079,6468],[5138,6459],[5159,6509],[5210,6536],[5207,6577],[5144,6628],[5189,6722],[5253,6771],[5272,6819],[5334,6855],[5358,6802],[5466,6643],[5490,6568],[5621,6473],[5696,6332],[5864,6417],[5896,6390],[5959,6420],[6065,6419],[6112,6400],[6223,6284],[6209,6223],[6238,6066],[6195,5973],[6184,5909],[6147,5857],[6232,5814],[6183,5772],[6159,5678],[6123,5627],[6060,5614],[5992,5653],[5940,5635],[5932,5589],[5843,5565],[5747,5513],[5595,5531],[5521,5511],[5427,5453]]]}},{"type":"Feature","id":"EC.LR","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.52,"hc-key":"ec-lr","hc-a2":"LR","labelrank":"7","hasc":"EC.LR","alt-name":null,"woe-id":"2345214","subregion":null,"fips":"EC13","postal-code":"LR","name":"Los Rios","country":"Ecuador","type-en":"Province","region":null,"longitude":"-79.4787","woe-name":"Los Rios","latitude":"-1.22191","woe-label":"Los Rios, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5054,6507],[5035,6432],[4919,6159],[4883,6101],[4825,6056],[4779,5972],[4708,5898],[4686,5839],[4684,5750],[4653,5550],[4713,5466],[4725,5412],[4645,5374],[4546,5239],[4560,5205],[4619,5263],[4705,5191],[4656,5131],[4660,4966],[4776,4843],[4748,4767],[4704,4768],[4622,4690],[4693,4643],[4775,4514],[4778,4427],[4811,4368],[4761,4200],[4728,4148],[4840,3984],[4851,3947],[4800,3811],[4714,3889],[4588,4099],[4517,4160],[4349,4260],[4282,4261],[4196,4229],[4099,4228],[4003,4428],[3890,4604],[3751,4676],[3750,4789],[3725,4880],[3737,5006],[3765,5082],[3838,5180],[3933,5358],[3950,5443],[4037,5507],[4059,5561],[4097,5569],[4159,5643],[4225,5686],[4249,5776],[4298,5822],[4289,5860],[4324,5988],[4293,6027],[4151,6006],[4184,6075],[4207,6191],[4237,6239],[4287,6264],[4365,6443],[4387,6521],[4567,6518],[4621,6504],[4595,6465],[4612,6389],[4590,6333],[4606,6288],[4687,6266],[4853,6377],[4978,6501],[5054,6507]]]}},{"type":"Feature","id":"EC.MN","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.48,"hc-key":"ec-mn","hc-a2":"MN","labelrank":"7","hasc":"EC.MN","alt-name":null,"woe-id":"2345215","subregion":null,"fips":"EC14","postal-code":"MN","name":"Manabi","country":"Ecuador","type-en":"Province","region":null,"longitude":"-80.1619","woe-name":"Manabi","latitude":"-0.727203","woe-label":"Manabi, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[4387,6521],[4365,6443],[4287,6264],[4237,6239],[4207,6191],[4184,6075],[4151,6006],[4042,5988],[3977,5954],[3854,5782],[3847,5731],[3755,5605],[3668,5536],[3612,5513],[3518,5537],[3433,5297],[3296,5192],[3275,5078],[3191,5042],[3165,4945],[3195,4878],[3130,4813],[3026,4799],[3052,4753],[3119,4719],[3140,4626],[3108,4602],[3041,4606],[2998,4580],[2963,4604],[2848,4514],[2785,4425],[2751,4343],[2632,4340],[2570,4361],[2553,4412],[2592,4530],[2561,4617],[2528,4644],[2448,4651],[2356,4624],[2234,4630],[2121,4615],[2068,4718],[2064,4784],[2124,4825],[2117,4913],[2201,4950],[2219,5121],[2246,5176],[2095,5365],[2013,5509],[1955,5644],[1966,5679],[2124,5844],[2217,5861],[2336,5839],[2401,5884],[2463,5853],[2505,5869],[2580,5942],[2633,6188],[2723,6397],[2792,6428],[2819,6350],[2865,6330],[3000,6322],[3000,6342],[2843,6384],[2803,6471],[2766,6498],[2741,6634],[2686,6724],[2666,6795],[2774,6866],[2844,6975],[2878,7061],[2914,7074],[2958,7145],[2989,7118],[3114,7201],[3215,7310],[3324,7448],[3339,7502],[3394,7524],[3434,7644],[3444,7732],[3425,7972],[3445,8037],[3485,7982],[3507,8017],[3572,7884],[3632,7877],[3690,7970],[3821,7979],[3945,8066],[3985,8060],[4020,8011],[3989,7960],[4084,7888],[4090,7859],[4011,7762],[4083,7732],[4108,7681],[4137,7697],[4239,7632],[4153,7513],[4192,7413],[4172,7368],[4186,7316],[4272,7257],[4359,7164],[4481,7140],[4501,7092],[4511,6791],[4440,6658],[4435,6607],[4387,6521]]]}},{"type":"Feature","id":"EC.CB","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.51,"hc-key":"ec-cb","hc-a2":"CB","labelrank":"7","hasc":"EC.CB","alt-name":null,"woe-id":"2345207","subregion":null,"fips":"EC06","postal-code":"CB","name":"Chimborazo","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.74169999999999","woe-name":"Chimborazo","latitude":"-1.88915","woe-label":"Chimborazo, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5910,3544],[5878,3559],[5663,3535],[5557,3506],[5490,3443],[5431,3413],[5291,3401],[5150,3489],[5096,3564],[4984,3683],[4978,3727],[5069,3775],[5130,3836],[5174,3921],[5155,3991],[5200,4207],[5184,4316],[5191,4421],[5241,4473],[5325,4487],[5384,4540],[5437,4635],[5449,4842],[5414,4907],[5402,4980],[5539,5038],[5669,4964],[5800,4929],[5946,4948],[6021,4944],[6062,5008],[6269,4922],[6295,4866],[6275,4803],[6285,4705],[6201,4643],[6131,4545],[6140,4453],[6172,4405],[6184,4292],[6116,4217],[6064,4128],[6108,4057],[6137,3942],[6044,3855],[6040,3701],[5994,3664],[5969,3586],[5910,3544]]]}},{"type":"Feature","id":"EC.MS","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.45,"hc-key":"ec-ms","hc-a2":"MS","labelrank":"7","hasc":"EC.MS","alt-name":null,"woe-id":"2345216","subregion":null,"fips":"EC15","postal-code":"MS","name":"Morona Santiago","country":"Ecuador","type-en":"Province","region":null,"longitude":"-77.80710000000001","woe-name":"Morona Santiago","latitude":"-2.4505","woe-label":"Morona-Santiago, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5298,1843],[5301,1902],[5544,2100],[5666,2152],[5752,2233],[5778,2371],[5834,2500],[5914,2632],[5918,2688],[5878,2757],[5963,2887],[6151,2982],[6166,3056],[6102,3107],[6044,3098],[5987,3018],[5959,3037],[5961,3121],[5984,3114],[6055,3204],[6072,3298],[6076,3428],[6040,3465],[5912,3525],[5910,3544],[5969,3586],[5994,3664],[6040,3701],[6044,3855],[6137,3942],[6108,4057],[6064,4128],[6116,4217],[6184,4292],[6172,4405],[6140,4453],[6131,4545],[6201,4643],[6285,4705],[6275,4803],[6295,4866],[6375,4936],[6499,4933],[6602,4999],[6675,4984],[6776,4875],[6858,4647],[6879,4626],[6981,4647],[7040,4626],[7082,4478],[7113,4429],[7123,4354],[7157,4288],[7167,4214],[7212,4177],[7312,4149],[7362,4048],[7936,3805],[8325,3553],[8379,3535],[8430,3455],[8528,3339],[8558,3259],[8656,3173],[8725,3152],[8872,3169],[8922,3136],[9051,3089],[9146,3110],[9121,3094],[7145,2415],[6988,2290],[6816,2063],[6710,1970],[6637,1840],[6555,1771],[6555,1734],[6622,1660],[6610,1580],[6504,1530],[6464,1669],[6431,1711],[6322,1736],[6275,1696],[6287,1652],[6250,1493],[6038,1494],[5914,1473],[5779,1473],[5728,1410],[5495,1465],[5425,1549],[5409,1629],[5451,1698],[5439,1743],[5298,1843]]]}},{"type":"Feature","id":"EC.PI","properties":{"hc-group":"admin1","hc-middle-x":0.61,"hc-middle-y":0.46,"hc-key":"ec-pi","hc-a2":"PI","labelrank":"7","hasc":"EC.PI","alt-name":null,"woe-id":"2345219","subregion":null,"fips":"EC19","postal-code":"PI","name":"Pichincha","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.50449999999999","woe-name":"Pichincha","latitude":"-0.087133","woe-label":"Pichincha, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6223,6284],[6112,6400],[6065,6419],[5959,6420],[5896,6390],[5864,6417],[5696,6332],[5621,6473],[5490,6568],[5466,6643],[5358,6802],[5334,6855],[5385,6935],[5600,6957],[5632,7074],[5546,7170],[5385,7255],[5332,7309],[5031,7298],[5020,7437],[4676,7448],[4584,7515],[4681,7749],[4610,7805],[4613,7839],[4825,7968],[4955,7971],[5133,7933],[5183,7887],[5211,7822],[5283,7792],[5431,7823],[5577,7839],[5790,7799],[6194,7850],[6269,7834],[6287,7783],[6277,7717],[6353,7754],[6434,7690],[6512,7661],[6599,7673],[6764,7769],[6989,7708],[6946,7638],[7102,7576],[7180,7490],[7159,7453],[7018,7377],[6956,7356],[6929,7267],[6883,7214],[6800,7213],[6735,7126],[6668,7151],[6595,7132],[6578,6937],[6545,6858],[6471,6738],[6496,6692],[6435,6508],[6359,6406],[6323,6315],[6223,6284]]]}},{"type":"Feature","id":"EC.PA","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.46,"hc-key":"ec-pa","hc-a2":"PA","labelrank":"7","hasc":"EC.PA","alt-name":null,"woe-id":"2345218","subregion":null,"fips":"EC17","postal-code":"PA","name":"Pastaza","country":"Ecuador","type-en":"Province","region":null,"longitude":"-76.8768","woe-name":"Pastaza","latitude":"-1.84655","woe-label":"Pastaza, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[11001,4823],[10881,4705],[10131,3842],[9222,3155],[9146,3110],[9051,3089],[8922,3136],[8872,3169],[8725,3152],[8656,3173],[8558,3259],[8528,3339],[8430,3455],[8379,3535],[8325,3553],[7936,3805],[7362,4048],[7312,4149],[7212,4177],[7167,4214],[7157,4288],[7123,4354],[7113,4429],[7082,4478],[7040,4626],[6981,4647],[6879,4626],[6858,4647],[6776,4875],[6675,4984],[6602,4999],[6643,5037],[6701,5175],[6697,5359],[6831,5356],[6952,5375],[7069,5352],[7105,5392],[7156,5373],[7411,5496],[7520,5499],[7663,5522],[7854,5610],[7959,5617],[8120,5667],[8195,5709],[8504,5733],[8465,5683],[8515,5583],[8652,5551],[8816,5484],[8858,5499],[8913,5598],[8997,5584],[9160,5618],[9206,5653],[9335,5671],[9387,5651],[9415,5607],[9408,5493],[9421,5432],[9502,5325],[9673,5305],[9681,5271],[9803,5237],[9873,5272],[10031,5254],[10065,5286],[10157,5271],[10281,5224],[10374,5166],[10449,5159],[10496,5193],[10573,5099],[10718,5062],[10769,4977],[10880,4948],[10975,4893],[11001,4823]]]}},{"type":"Feature","id":"EC.1076","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.57,"hc-key":"ec-1076","hc-a2":"NA","labelrank":"7","hasc":"EC.","alt-name":null,"woe-id":"2345220","subregion":null,"fips":null,"postal-code":null,"name":"Napo","country":"Ecuador","type-en":"Province","region":null,"longitude":"-78.5209","woe-name":"Napo","latitude":"-1.2733","woe-label":"Tungurahua, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6697,5359],[6701,5175],[6643,5037],[6602,4999],[6499,4933],[6375,4936],[6295,4866],[6269,4922],[6062,5008],[6021,4944],[5946,4948],[5800,4929],[5669,4964],[5539,5038],[5402,4980],[5329,5085],[5342,5193],[5383,5300],[5390,5386],[5427,5453],[5521,5511],[5595,5531],[5747,5513],[5843,5565],[5932,5589],[5940,5635],[5992,5653],[6060,5614],[6123,5627],[6159,5678],[6183,5772],[6232,5814],[6311,5706],[6333,5652],[6321,5475],[6380,5511],[6520,5516],[6597,5442],[6680,5425],[6697,5359]]]}},{"type":"Feature","id":"EC.NA","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.55,"hc-key":"ec-na","hc-a2":"NA","labelrank":"7","hasc":"EC.NA","alt-name":null,"woe-id":"20070099","subregion":null,"fips":"EC24","postal-code":"NA","name":"Orellana","country":"Ecuador","type-en":"Province","region":null,"longitude":"-76.42480000000001","woe-name":"Orellana","latitude":"-0.875888","woe-label":"Orellano, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[8085,7338],[8111,7357],[8277,7280],[8343,7296],[8468,7264],[8546,7269],[8641,7318],[8733,7304],[8935,7056],[9078,6860],[9193,6776],[9235,6720],[9313,6753],[9349,6704],[9470,6621],[9565,6617],[9594,6575],[9703,6643],[9825,6688],[9956,6701],[10117,6690],[10149,6601],[10301,6502],[10398,6488],[10375,6678],[10381,6722],[10429,6739],[10515,6730],[10578,6699],[10719,6722],[10782,6662],[10879,6668],[11015,6600],[11039,6547],[11124,6503],[11227,6503],[11315,6474],[11341,6419],[11456,6384],[11499,6391],[11539,6350],[11500,6327],[11487,6173],[11562,5918],[11563,5858],[11605,5797],[11398,5788],[11300,5889],[11290,5875],[11037,4897],[11001,4823],[10975,4893],[10880,4948],[10769,4977],[10718,5062],[10573,5099],[10496,5193],[10449,5159],[10374,5166],[10281,5224],[10157,5271],[10065,5286],[10031,5254],[9873,5272],[9803,5237],[9681,5271],[9673,5305],[9502,5325],[9421,5432],[9408,5493],[9415,5607],[9387,5651],[9335,5671],[9206,5653],[9160,5618],[8997,5584],[8913,5598],[8858,5499],[8816,5484],[8652,5551],[8515,5583],[8465,5683],[8504,5733],[8519,5770],[8491,5822],[8521,5884],[8399,5912],[8275,5986],[8262,6054],[8292,6110],[8397,6225],[8357,6244],[8237,6147],[8173,6038],[8097,6009],[7745,5843],[7670,5833],[7609,5852],[7695,6019],[7697,6152],[7746,6233],[7727,6331],[7598,6480],[7540,6532],[7619,6590],[7657,6664],[7832,6580],[7922,6599],[7987,6719],[8039,6732],[8044,6783],[8129,6829],[8161,6939],[8152,7021],[8087,7116],[8102,7219],[8085,7338]]]}},{"type":"Feature","id":"EC.TU","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.55,"hc-key":"ec-tu","hc-a2":"TU","labelrank":"7","hasc":"EC.TU","alt-name":null,"woe-id":"2345217","subregion":null,"fips":"EC23","postal-code":"TU","name":"Tungurahua","country":"Ecuador","type-en":"Province","region":null,"longitude":"-77.73820000000001","woe-name":"Tungurahua","latitude":"-0.624499","woe-label":"Napo, EC, Ecuador","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[8085,7338],[8102,7219],[8087,7116],[8152,7021],[8161,6939],[8129,6829],[8044,6783],[8039,6732],[7987,6719],[7922,6599],[7832,6580],[7657,6664],[7619,6590],[7540,6532],[7598,6480],[7727,6331],[7746,6233],[7697,6152],[7695,6019],[7609,5852],[7670,5833],[7745,5843],[8097,6009],[8173,6038],[8237,6147],[8357,6244],[8397,6225],[8292,6110],[8262,6054],[8275,5986],[8399,5912],[8521,5884],[8491,5822],[8519,5770],[8504,5733],[8195,5709],[8120,5667],[7959,5617],[7854,5610],[7663,5522],[7520,5499],[7411,5496],[7156,5373],[7105,5392],[7069,5352],[6952,5375],[6831,5356],[6697,5359],[6680,5425],[6597,5442],[6520,5516],[6380,5511],[6321,5475],[6333,5652],[6311,5706],[6232,5814],[6147,5857],[6184,5909],[6195,5973],[6238,6066],[6209,6223],[6223,6284],[6323,6315],[6359,6406],[6435,6508],[6496,6692],[6471,6738],[6545,6858],[6578,6937],[6595,7132],[6668,7151],[6735,7126],[6800,7213],[6883,7214],[6929,7267],[6956,7356],[7018,7377],[7159,7453],[7180,7490],[7271,7463],[7261,7414],[7283,7325],[7337,7304],[7505,7300],[7593,7268],[7659,7320],[7804,7397],[7839,7335],[7835,7226],[7977,7199],[8085,7338]]]}},{"type":"Feature","id":"EC.GA","properties":{"hc-group":"admin1","hc-middle-x":0.32,"hc-middle-y":0.81,"hc-key":"ec-ga","hc-a2":"GA","labelrank":"7","hasc":"EC.GA","alt-name":null,"woe-id":"2345202","subregion":null,"fips":"EC01","postal-code":"GA","name":"Galápagos","country":"Ecuador","type-en":"Province","region":null,"longitude":"-89.685","woe-name":"Galápagos","latitude":"-1.36804","woe-label":"Galapagos, EC, Ecuador","type":"Provincia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[992,7343],[1014,7336],[1030,7319],[1031,7302],[1006,7294],[980,7297],[914,7327],[931,7343],[943,7341],[982,7341],[992,7343]]],[[[332,7444],[339,7432],[355,7437],[378,7432],[397,7423],[408,7411],[415,7405],[417,7394],[410,7383],[395,7378],[395,7361],[391,7356],[364,7339],[359,7338],[329,7343],[317,7351],[306,7362],[289,7372],[304,7391],[309,7402],[314,7427],[322,7439],[332,7444]]],[[[1280,7873],[1290,7867],[1301,7867],[1322,7876],[1324,7846],[1309,7813],[1285,7784],[1261,7765],[1232,7756],[1216,7720],[1200,7695],[1189,7684],[1177,7676],[1164,7672],[1152,7670],[1124,7671],[1116,7668],[1099,7656],[1087,7654],[1079,7656],[1054,7671],[1025,7675],[1018,7679],[1017,7686],[1022,7695],[1038,7713],[1071,7729],[1082,7737],[1090,7765],[1099,7766],[1133,7774],[1142,7783],[1155,7809],[1162,7818],[1184,7838],[1195,7850],[1224,7861],[1233,7870],[1245,7870],[1270,7877],[1280,7873]]],[[[520,8018],[520,8001],[527,7998],[560,7993],[569,7984],[567,7965],[557,7931],[557,7922],[562,7910],[563,7901],[554,7881],[554,7877],[541,7871],[531,7859],[522,7844],[512,7832],[501,7825],[461,7826],[457,7824],[453,7808],[442,7800],[427,7797],[412,7798],[385,7808],[367,7811],[347,7826],[330,7852],[323,7860],[311,7858],[296,7862],[282,7869],[273,7877],[271,7887],[273,7927],[278,7948],[287,7967],[299,7984],[311,7998],[319,8003],[341,8013],[360,8015],[384,8009],[392,8012],[406,8020],[484,8029],[501,8037],[515,8030],[520,8018]]],[[[-469,8220],[-440,8191],[-423,8179],[-421,8162],[-424,8132],[-424,8062],[-432,8058],[-489,8035],[-511,8032],[-519,8034],[-536,8046],[-551,8050],[-575,8059],[-592,8059],[-596,8062],[-597,8071],[-611,8085],[-622,8102],[-629,8120],[-634,8157],[-644,8188],[-642,8198],[-571,8196],[-541,8211],[-503,8220],[-484,8227],[-469,8220]]],[[[84,8309],[100,8297],[155,8279],[175,8276],[201,8265],[244,8218],[267,8203],[256,8198],[267,8191],[262,8177],[245,8151],[239,8134],[224,8129],[205,8131],[171,8142],[114,8142],[98,8147],[84,8156],[68,8161],[50,8154],[39,8167],[34,8188],[25,8205],[5,8209],[39,8256],[41,8267],[36,8281],[43,8295],[57,8306],[72,8309],[78,8304],[84,8309]]],[[[-374,8553],[-361,8541],[-355,8522],[-352,8505],[-349,8497],[-338,8490],[-329,8455],[-316,8444],[-305,8429],[-299,8425],[-282,8424],[-268,8420],[-262,8405],[-261,8386],[-263,8348],[-248,8258],[-239,8243],[-202,8209],[-202,8195],[-199,8186],[-185,8178],[-102,8126],[-89,8103],[-75,8090],[-62,8087],[-67,8071],[-60,8040],[-57,8007],[-61,7991],[-83,7973],[-90,7960],[-72,7972],[-66,7965],[-66,7950],[-62,7937],[-28,7931],[-11,7922],[-12,7904],[-1,7903],[9,7898],[16,7891],[22,7881],[16,7870],[27,7866],[56,7837],[71,7831],[72,7818],[68,7814],[41,7802],[16,7722],[19,7703],[17,7688],[-1,7693],[-10,7680],[-31,7657],[-40,7644],[-54,7650],[-67,7651],[-93,7649],[-109,7645],[-135,7626],[-228,7595],[-246,7600],[-259,7596],[-332,7606],[-423,7605],[-441,7610],[-453,7622],[-458,7639],[-458,7658],[-461,7667],[-487,7672],[-507,7704],[-499,7740],[-477,7775],[-453,7799],[-358,7860],[-351,7876],[-338,7877],[-317,7886],[-289,7893],[-271,7891],[-258,7882],[-244,7877],[-235,7876],[-226,7879],[-214,7896],[-210,7899],[-210,7907],[-202,7924],[-191,7937],[-179,7932],[-169,7945],[-169,7957],[-175,7968],[-185,7976],[-196,7982],[-220,7989],[-229,7993],[-249,8011],[-268,8036],[-283,8065],[-291,8092],[-290,8116],[-292,8124],[-302,8132],[-324,8137],[-335,8154],[-384,8180],[-403,8200],[-402,8226],[-418,8235],[-429,8253],[-427,8270],[-408,8276],[-422,8297],[-428,8309],[-430,8322],[-430,8350],[-435,8378],[-442,8405],[-461,8418],[-486,8419],[-514,8409],[-542,8389],[-556,8386],[-572,8395],[-589,8417],[-590,8429],[-524,8466],[-508,8482],[-503,8514],[-483,8508],[-466,8512],[-451,8520],[-424,8527],[-408,8547],[-398,8550],[-383,8549],[-374,8553]]],[[[346,8645],[329,8641],[319,8644],[309,8655],[290,8660],[282,8667],[273,8680],[275,8698],[288,8712],[306,8720],[323,8724],[341,8718],[361,8709],[377,8696],[384,8680],[379,8668],[365,8655],[346,8645]]],[[[110,8902],[97,8876],[61,8890],[66,8908],[61,8942],[67,8957],[100,8938],[110,8902]]],[[[-760,9538],[-768,9536],[-770,9546],[-761,9548],[-760,9538]]],[[[-912,9763],[-917,9762],[-922,9769],[-917,9774],[-912,9770],[-912,9763]]]]}},{"type":"Feature","properties":{"hc-group":"__separator_lines__"},"geometry":{"type":"LineString","coordinates":[[2454,8025],[1376,6314]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/do-all.geo.json
const do_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Dominican Republic","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32619"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=19 +datum=WGS84 +units=m +no_defs","scale":0.00180374020857,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":182743.599282,"yoffset":2205833.32034}},"features":[{"type":"Feature","id":"DO.PN","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.35,"hc-key":"do-pn","hc-a2":"PN","labelrank":"7","hasc":"DO.PN","alt-name":null,"woe-id":"2345185","subregion":null,"fips":"DR16","postal-code":"PN","name":"Pedernales","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.5201","woe-name":"Pedernales","latitude":"17.9396","woe-label":"Pedernales, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[429,2483],[378,2466],[329,2495],[329,2561],[391,2700],[475,2645],[550,2571],[504,2558],[429,2483]]],[[[1113,3409],[1081,3326],[1027,3296],[1007,3235],[959,3161],[855,2871],[824,2815],[699,2645],[614,2722],[415,3061],[366,3115],[266,3155],[29,3126],[-72,3153],[53,3271],[74,3310],[59,3424],[-17,3562],[-25,3617],[-3,3734],[-24,3788],[-75,3849],[-182,3940],[-347,4005],[-298,4152],[-307,4328],[-338,4417],[-333,4507],[-308,4565],[-174,4788],[75,4644],[326,4517],[433,4488],[535,4445],[706,4290],[797,4236],[801,4053],[778,3965],[717,3942],[696,3915],[758,3756],[902,3634],[977,3651],[1066,3646],[1112,3537],[1113,3409]]]]}},{"type":"Feature","id":"DO.AL","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.49,"hc-key":"do-al","hc-a2":"AL","labelrank":"9","hasc":"DO.AL","alt-name":null,"woe-id":"2345180","subregion":null,"fips":"DR10","postal-code":"AL","name":"La Altagracia","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-68.6413","woe-name":"La Altagracia","latitude":"18.608","woe-label":"La Altagracia, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8726,4365],[8864,4347],[9017,4351],[9057,4337],[9120,4237],[9137,4157],[8997,4210],[8894,4214],[8753,4177],[8649,4205],[8574,4271],[8527,4354],[8501,4431],[8545,4444],[8597,4434],[8726,4365]]],[[[8448,6782],[8503,6853],[8554,6821],[8637,6806],[8980,6489],[9106,6337],[9284,6202],[9411,6114],[9467,6086],[9600,5958],[9769,5856],[9851,5733],[9835,5611],[9559,5189],[9512,5122],[9517,5015],[9479,4931],[9430,4906],[9299,4899],[9245,4917],[9127,4993],[9085,5006],[9036,4973],[9060,4864],[8976,4700],[8931,4519],[8881,4475],[8631,4455],[8580,4473],[8573,4586],[8501,4736],[8402,4882],[8315,4982],[8222,5045],[8163,5071],[8268,5337],[8308,5426],[8304,5523],[8242,5600],[8168,5667],[8111,5770],[8062,5881],[8039,5945],[8051,6012],[8117,6051],[8195,6064],[8346,6184],[8407,6359],[8327,6511],[8364,6717],[8448,6782]]]]}},{"type":"Feature","id":"DO.PV","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.53,"hc-key":"do-pv","hc-a2":"PV","labelrank":"9","hasc":"DO.PV","alt-name":"José Trujillo Valdez","woe-id":"2345186","subregion":null,"fips":"DR35","postal-code":"PV","name":"Peravia","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.37990000000001","woe-name":"Peravia","latitude":"18.359","woe-label":"Peravia, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[4382,4557],[4262,4547],[4226,4527],[4174,4559],[4118,4571],[3740,4573],[3676,4553],[3554,4485],[3485,4471],[3280,4473],[3232,4492],[3229,4519],[3292,4576],[3284,4610],[3203,4683],[3368,4713],[3476,4833],[3469,4921],[3493,5004],[3522,5061],[3503,5118],[3584,5235],[3729,5276],[3803,5327],[3867,5395],[4009,5332],[4125,5218],[4219,5174],[4212,5099],[4136,5056],[4120,4976],[4233,4836],[4276,4758],[4352,4687],[4382,4557]]]}},{"type":"Feature","id":"DO.JO","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.5,"hc-key":"do-jo","hc-a2":"JO","labelrank":"9","hasc":"DO.JO","alt-name":"José Trujillo Valdez","woe-id":"28358195","subregion":null,"fips":"DR00","postal-code":"JO","name":"San José de Ocoa","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.52500000000001","woe-name":"San José de Ocoa","latitude":"18.6367","woe-label":"San Jose de Ocoa, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3867,5395],[3803,5327],[3729,5276],[3584,5235],[3503,5118],[3379,5353],[3284,5402],[3186,5467],[3118,5492],[3067,5542],[3045,5588],[3002,5615],[2942,5772],[2858,5939],[3122,5939],[3231,6045],[3308,6142],[3352,6279],[3475,6206],[3593,6118],[3667,6125],[3738,6150],[3816,6118],[3891,6065],[3835,5939],[3824,5806],[3836,5696],[3803,5587],[3823,5487],[3867,5395]]]}},{"type":"Feature","id":"DO.HM","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.6,"hc-key":"do-hm","hc-a2":"HM","labelrank":"7","hasc":"DO.HM","alt-name":"Hato Major","woe-id":"2345197","subregion":null,"fips":"DR29","postal-code":"HM","name":"Hato Mayor","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.40300000000001","woe-name":"Hato Mayor","latitude":"18.981","woe-label":"Hato Mayor, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6045,7234],[6081,7207],[6244,7232],[6300,7211],[6370,7233],[6508,7179],[6581,7187],[6539,7217],[6479,7232],[6479,7253],[6636,7261],[6681,7252],[6734,7214],[6774,7119],[6823,7081],[6975,7055],[7248,6981],[7232,6799],[7313,6653],[7070,6710],[6904,6681],[7009,6466],[7178,6291],[7223,6166],[7210,6034],[7159,5917],[7123,5803],[7022,5733],[6974,5617],[6827,5438],[6741,5642],[6607,5847],[6570,6101],[6518,6199],[6518,6306],[6571,6378],[6632,6442],[6749,6518],[6695,6572],[6588,6587],[6444,6666],[6129,6825],[5994,6946],[6034,7034],[6051,7129],[6045,7234]]]}},{"type":"Feature","id":"DO.MP","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.47,"hc-key":"do-mp","hc-a2":"MP","labelrank":"7","hasc":"DO.MP","alt-name":null,"woe-id":"2345200","subregion":null,"fips":"DR32","postal-code":"MP","name":"Monte Plata","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.816","woe-name":"Monte Plata","latitude":"18.8533","woe-label":"Monte Plata, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5994,6946],[6129,6825],[6444,6666],[6588,6587],[6695,6572],[6749,6518],[6632,6442],[6571,6378],[6518,6306],[6343,6124],[6174,5830],[6069,5870],[5969,5849],[5913,5813],[5849,5800],[5677,5737],[5540,5596],[5517,5683],[5455,5744],[5439,5805],[5332,5935],[5252,5998],[5116,6005],[5044,5992],[5022,5936],[4896,5879],[4757,5907],[4567,5969],[4513,6066],[4431,6096],[4284,6193],[4185,6315],[4205,6412],[4266,6478],[4544,6539],[4601,6589],[4679,6607],[4793,6586],[4829,6640],[4888,6629],[4983,6581],[5066,6644],[5118,6845],[5163,7044],[5242,7041],[5287,7099],[5298,7181],[5455,7199],[5648,7191],[5816,7063],[5909,7010],[5994,6946]]]}},{"type":"Feature","id":"DO.DU","properties":{"hc-group":"admin1","hc-middle-x":0.26,"hc-middle-y":0.5,"hc-key":"do-du","hc-a2":"DU","labelrank":"9","hasc":"DO.DU","alt-name":null,"woe-id":"2345177","subregion":null,"fips":"DR06","postal-code":"DU","name":"Duarte","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.0202","woe-name":"Duarte","latitude":"19.1987","woe-label":"Duarte, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5648,7191],[5455,7199],[5298,7181],[5287,7099],[5242,7041],[5163,7044],[5191,7129],[5201,7211],[5139,7252],[5066,7275],[4880,7283],[4811,7305],[4669,7372],[4457,7394],[4327,7393],[4266,7382],[4148,7410],[4103,7382],[3957,7480],[3863,7627],[3867,7758],[3909,7891],[3934,8036],[3993,8166],[4116,8225],[4201,8295],[4243,8473],[4275,8473],[4306,8467],[4509,8335],[4542,8236],[4550,8130],[4586,8000],[4687,7925],[4777,7913],[4816,7840],[4958,7719],[5160,7667],[5357,7573],[5560,7533],[5704,7601],[5882,7558],[5882,7474],[5757,7392],[5717,7343],[5706,7246],[5648,7191]]]}},{"type":"Feature","id":"DO.MT","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.41,"hc-key":"do-mt","hc-a2":"MT","labelrank":"9","hasc":"DO.MT","alt-name":"Maria Trinidad S|Trinidad S nchez Nagua","woe-id":"2345183","subregion":null,"fips":"DR14","postal-code":"MT","name":"María Trinidad Sánchez","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.99330000000001","woe-name":"María Trinidad Sánchez","latitude":"19.4682","woe-label":"Maria Trinidad Sanchéz, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5560,7533],[5357,7573],[5160,7667],[4958,7719],[4816,7840],[4777,7913],[4687,7925],[4586,8000],[4550,8130],[4542,8236],[4509,8335],[4306,8467],[4333,8634],[4464,8633],[4610,8716],[4666,8877],[4664,8895],[4761,8998],[4817,9023],[5095,9022],[5139,8996],[5239,8890],[5270,8818],[5268,8739],[5219,8569],[5277,8544],[5299,8489],[5298,8348],[5323,8237],[5517,7944],[5605,7858],[5587,7760],[5541,7606],[5560,7533]]]}},{"type":"Feature","id":"DO.SM","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.26,"hc-key":"do-sm","hc-a2":"SM","labelrank":"7","hasc":"DO.SM","alt-name":null,"woe-id":"2345189","subregion":null,"fips":"DR20","postal-code":"SM","name":"Samaná","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.4756","woe-name":"Samaná","latitude":"19.2717","woe-label":"Samana, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[5994,6946],[5909,7010],[5816,7063],[5648,7191],[5706,7246],[5717,7343],[5757,7392],[5882,7474],[5882,7558],[5704,7601],[5560,7533],[5541,7606],[5587,7760],[5605,7858],[5716,7806],[5776,7816],[5890,7859],[6081,7874],[6200,7910],[6287,7968],[6351,7968],[6451,7931],[6523,7948],[6586,7947],[6612,7904],[6665,7930],[6835,7860],[6885,7824],[6918,7891],[6973,7940],[7106,8014],[7192,8040],[7212,8004],[7189,7930],[7146,7843],[7204,7821],[7271,7821],[7388,7865],[7406,7797],[7315,7696],[7275,7587],[7241,7536],[7190,7499],[7125,7484],[6895,7526],[6642,7508],[6582,7525],[6474,7579],[6099,7627],[6057,7615],[6041,7574],[6030,7427],[6008,7301],[6017,7254],[6045,7234],[6051,7129],[6034,7034],[5994,6946]]]}},{"type":"Feature","id":"DO.CR","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.44,"hc-key":"do-cr","hc-a2":"CR","labelrank":"7","hasc":"DO.CR","alt-name":"Trujillo","woe-id":"2345201","subregion":null,"fips":"DR33","postal-code":"CR","name":"San Cristóbal","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.1914","woe-name":"San Cristóbal","latitude":"18.5126","woe-label":"San Cristobal, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[4906,5121],[4803,5045],[4752,4967],[4717,4849],[4648,4814],[4621,4757],[4520,4665],[4407,4549],[4382,4557],[4352,4687],[4276,4758],[4233,4836],[4120,4976],[4136,5056],[4212,5099],[4219,5174],[4125,5218],[4009,5332],[3867,5395],[3823,5487],[3803,5587],[3836,5696],[3824,5806],[3835,5939],[3891,6065],[4000,6062],[4041,6179],[4083,6267],[4185,6315],[4284,6193],[4431,6096],[4432,5958],[4511,5829],[4470,5684],[4501,5575],[4555,5476],[4627,5421],[4682,5354],[4689,5301],[4723,5265],[4856,5263],[4893,5208],[4906,5121]]]}},{"type":"Feature","id":"DO.NC","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.57,"hc-key":"do-nc","hc-a2":"NC","labelrank":"9","hasc":"DO.NC","alt-name":null,"woe-id":"2345176","subregion":null,"fips":"DR34","postal-code":"NC","name":"Distrito Nacional","country":"Dominican Republic","type-en":"National District","region":null,"longitude":"-69.9376","woe-name":"Distrito Nacional","latitude":"18.4746","woe-label":"Distrito Nacional, DO, Dominican Republic","type":"Distrito"},"geometry":{"type":"Polygon","coordinates":[[[5275,5286],[5215,5271],[5122,5227],[5045,5176],[4975,5149],[4992,5261],[4927,5358],[4935,5446],[5015,5490],[5086,5381],[5142,5376],[5198,5391],[5280,5378],[5275,5286]]]}},{"type":"Feature","id":"DO.SE","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.44,"hc-key":"do-se","hc-a2":"SE","labelrank":"7","hasc":"DO.SE","alt-name":"El Seibo","woe-id":"2345196","subregion":null,"fips":"DR28","postal-code":"SE","name":"El Seybo","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.0568","woe-name":"El Seybo","latitude":"18.7649","woe-label":"El Seibo, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[7123,5803],[7159,5917],[7210,6034],[7223,6166],[7178,6291],[7009,6466],[6904,6681],[7070,6710],[7313,6653],[7232,6799],[7248,6981],[7361,6950],[7408,6953],[7463,6984],[7408,7029],[7408,7059],[7460,7074],[7506,7032],[7568,6932],[7691,6879],[7711,6846],[7851,6932],[7829,6957],[7891,6972],[7932,7017],[8049,7012],[8110,7000],[8215,6953],[8235,6911],[8406,6869],[8503,6853],[8448,6782],[8364,6717],[8327,6511],[8407,6359],[8346,6184],[8195,6064],[8117,6051],[8051,6012],[8039,5945],[8062,5881],[7933,5831],[7859,5688],[7745,5545],[7597,5453],[7634,5605],[7548,5614],[7455,5601],[7371,5663],[7300,5741],[7202,5750],[7123,5803]]]}},{"type":"Feature","id":"DO.RO","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.57,"hc-key":"do-ro","hc-a2":"RO","labelrank":"7","hasc":"DO.RO","alt-name":null,"woe-id":"2345182","subregion":null,"fips":"DR12","postal-code":"RO","name":"La Romana","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-68.98690000000001","woe-name":"La Romana","latitude":"18.5221","woe-label":"Romana, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[8163,5071],[8100,5097],[7976,5115],[7834,5056],[7621,5047],[7603,5133],[7567,5222],[7511,5293],[7597,5453],[7745,5545],[7859,5688],[7933,5831],[8062,5881],[8111,5770],[8168,5667],[8242,5600],[8304,5523],[8308,5426],[8268,5337],[8163,5071]]]}},{"type":"Feature","id":"DO.ST","properties":{"hc-group":"admin1","hc-middle-x":0.42,"hc-middle-y":0.64,"hc-key":"do-st","hc-a2":"ST","labelrank":"7","hasc":"DO.ST","alt-name":null,"woe-id":"2345193","subregion":null,"fips":"DR25","postal-code":"ST","name":"Santiago","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.89740000000001","woe-name":"Santiago","latitude":"19.2636","woe-label":"Santiago, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1312,7484],[1329,7581],[1326,7675],[1278,7721],[1268,7787],[1289,7976],[1331,8031],[1421,8117],[1467,8146],[1578,8142],[1685,8191],[1798,8228],[1734,8286],[1741,8348],[1781,8400],[1947,8317],[2032,8312],[2087,8384],[2208,8331],[2337,8330],[2349,8385],[2283,8436],[2304,8525],[2308,8610],[2222,8658],[2199,8714],[2195,8776],[2267,8724],[2342,8733],[2386,8827],[2406,8930],[2578,8884],[2708,8768],[2840,8773],[2852,8955],[3008,8884],[3067,8736],[3152,8596],[3330,8538],[3317,8475],[3233,8361],[3215,8283],[3221,8145],[3132,8078],[2976,8030],[2828,7953],[2755,7934],[2734,7871],[2804,7816],[2894,7790],[2939,7709],[2917,7604],[2925,7514],[2848,7530],[2784,7527],[2748,7444],[2593,7329],[2225,7161],[2246,7095],[2232,7026],[2080,7076],[2008,7061],[1940,7028],[1808,7071],[1678,7157],[1622,7208],[1614,7285],[1590,7331],[1422,7417],[1312,7484]]]}},{"type":"Feature","id":"DO.SR","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.45,"hc-key":"do-sr","hc-a2":"SR","labelrank":"9","hasc":"DO.SR","alt-name":"Santiago Rodrigu","woe-id":"2345194","subregion":null,"fips":"DR26","postal-code":"SR","name":"Santiago Rodríguez","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.2919","woe-name":"Santiago Rodríguez","latitude":"19.3626","woe-label":"Santiago Rodriguez, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1781,8400],[1741,8348],[1734,8286],[1798,8228],[1685,8191],[1578,8142],[1467,8146],[1421,8117],[1331,8031],[1289,7976],[1268,7787],[1278,7721],[1326,7675],[1329,7581],[1312,7484],[1155,7487],[1029,7552],[770,7690],[681,7812],[560,7892],[511,7947],[483,8015],[628,8076],[666,8273],[690,8337],[684,8407],[722,8538],[792,8650],[832,8699],[882,8660],[970,8626],[1066,8633],[1123,8661],[1186,8668],[1277,8614],[1369,8604],[1413,8634],[1463,8616],[1565,8441],[1781,8400]]]}},{"type":"Feature","id":"DO.VA","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.53,"hc-key":"do-va","hc-a2":"VA","labelrank":"9","hasc":"DO.VA","alt-name":null,"woe-id":"2345195","subregion":null,"fips":"DR27","postal-code":"VA","name":"Valverde","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.02419999999999","woe-name":"Valverde","latitude":"19.5741","woe-label":"Valverde, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[2406,8930],[2386,8827],[2342,8733],[2267,8724],[2195,8776],[2199,8714],[2222,8658],[2308,8610],[2304,8525],[2283,8436],[2349,8385],[2337,8330],[2208,8331],[2087,8384],[2032,8312],[1947,8317],[1781,8400],[1565,8441],[1463,8616],[1498,8722],[1482,8835],[1501,8901],[1572,8892],[1559,9098],[1619,9280],[1719,9243],[1813,9196],[1878,9146],[2075,9085],[2173,9005],[2283,8948],[2406,8930]]]}},{"type":"Feature","id":"DO.JU","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.51,"hc-key":"do-ju","hc-a2":"JU","labelrank":"7","hasc":"DO.JU","alt-name":"Benefactor|San Juan de la Maguana","woe-id":"2345191","subregion":null,"fips":"DR23","postal-code":"JU","name":"San Juan","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.26220000000001","woe-name":"San Juan","latitude":"18.8948","woe-label":"San Juan, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1312,7484],[1422,7417],[1590,7331],[1614,7285],[1622,7208],[1678,7157],[1808,7071],[1940,7028],[2008,7061],[2080,7076],[2232,7026],[2280,6976],[2305,6909],[2279,6843],[2217,6814],[2205,6754],[2090,6665],[2054,6588],[2032,6435],[2029,6275],[2005,6223],[1965,6185],[1922,6203],[1898,6257],[1801,6228],[1819,6111],[1783,6030],[1809,5956],[1704,5913],[1625,5799],[1495,5766],[1389,5827],[1248,5787],[1167,5774],[1086,5784],[1017,5762],[953,5722],[809,5735],[678,5804],[532,5835],[394,5888],[437,5986],[405,6074],[325,6094],[271,6153],[273,6229],[252,6301],[127,6398],[165,6548],[115,6614],[142,6780],[217,6934],[283,6992],[367,6999],[458,7024],[506,7122],[542,7253],[603,7364],[703,7346],[794,7289],[906,7294],[1000,7363],[1007,7459],[1029,7552],[1155,7487],[1312,7484]]]}},{"type":"Feature","id":"DO.SD","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.51,"hc-key":"do-sd","hc-a2":"SD","labelrank":"7","hasc":"DO.SD","alt-name":null,"woe-id":"28358196","subregion":null,"fips":"DR00","postal-code":"SD","name":"Santo Domingo","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.84269999999999","woe-name":"Santo Domingo","latitude":"18.5664","woe-label":"Santo Domingo, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[6311,5093],[6159,5200],[6093,5235],[6050,5240],[6031,5211],[6038,5141],[6003,5104],[5907,5123],[5858,5208],[5812,5238],[5357,5289],[5275,5286],[5280,5378],[5198,5391],[5142,5376],[5086,5381],[5015,5490],[4935,5446],[4927,5358],[4992,5261],[4975,5149],[4937,5137],[4906,5121],[4893,5208],[4856,5263],[4723,5265],[4689,5301],[4682,5354],[4627,5421],[4555,5476],[4501,5575],[4470,5684],[4511,5829],[4432,5958],[4431,6096],[4513,6066],[4567,5969],[4757,5907],[4896,5879],[5022,5936],[5044,5992],[5116,6005],[5252,5998],[5332,5935],[5439,5805],[5455,5744],[5517,5683],[5540,5596],[5677,5737],[5849,5800],[5913,5813],[5969,5849],[6069,5870],[6174,5830],[6120,5742],[6153,5748],[6166,5670],[6160,5593],[6099,5514],[6051,5433],[6168,5309],[6341,5273],[6311,5093]]]}},{"type":"Feature","id":"DO.PM","properties":{"hc-group":"admin1","hc-middle-x":0.25,"hc-middle-y":0.62,"hc-key":"do-pm","hc-a2":"PM","labelrank":"7","hasc":"DO.PM","alt-name":null,"woe-id":"2345192","subregion":null,"fips":"DR24","postal-code":"PM","name":"San Pedro de Macorís","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-69.3484","woe-name":"San Pedro de Macorís","latitude":"18.4796","woe-label":"San Pedro de Marcoris, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[7621,5047],[7563,5057],[7433,5100],[7324,5127],[7238,5199],[7173,5216],[7058,5185],[7000,5181],[6941,5216],[6879,5159],[6495,5131],[6380,5089],[6311,5093],[6341,5273],[6168,5309],[6051,5433],[6099,5514],[6160,5593],[6166,5670],[6153,5748],[6120,5742],[6174,5830],[6343,6124],[6518,6306],[6518,6199],[6570,6101],[6607,5847],[6741,5642],[6827,5438],[6974,5617],[7022,5733],[7123,5803],[7202,5750],[7300,5741],[7371,5663],[7455,5601],[7548,5614],[7634,5605],[7597,5453],[7511,5293],[7567,5222],[7603,5133],[7621,5047]]]}},{"type":"Feature","id":"DO.MC","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.48,"hc-key":"do-mc","hc-a2":"MC","labelrank":"7","hasc":"DO.MC","alt-name":null,"woe-id":"2345184","subregion":null,"fips":"DR15","postal-code":"MC","name":"Monte Cristi","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.45269999999999","woe-name":"Monte Cristi","latitude":"19.7302","woe-label":"Monte Cristri, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1619,9280],[1559,9098],[1572,8892],[1501,8901],[1482,8835],[1498,8722],[1463,8616],[1413,8634],[1369,8604],[1277,8614],[1186,8668],[1123,8661],[1066,8633],[970,8626],[882,8660],[832,8699],[792,8650],[672,8708],[561,8784],[518,8865],[445,8887],[136,8854],[-147,8979],[-180,8988],[-176,9037],[-210,9178],[-102,9137],[-112,9198],[-163,9318],[-159,9372],[-237,9377],[-247,9411],[-167,9509],[-86,9527],[-35,9582],[52,9613],[86,9643],[64,9717],[118,9750],[197,9726],[239,9768],[540,9786],[616,9774],[691,9746],[969,9597],[1051,9579],[1129,9608],[1230,9545],[1365,9540],[1384,9435],[1441,9344],[1619,9280]]]}},{"type":"Feature","id":"DO.PP","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.56,"hc-key":"do-pp","hc-a2":"PP","labelrank":"7","hasc":"DO.PP","alt-name":null,"woe-id":"2345187","subregion":null,"fips":"DR18","postal-code":"PP","name":"Puerto Plata","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.7972","woe-name":"Puerto Plata","latitude":"19.7427","woe-label":"Puerto Plata, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3330,8538],[3152,8596],[3067,8736],[3008,8884],[2852,8955],[2840,8773],[2708,8768],[2578,8884],[2406,8930],[2283,8948],[2173,9005],[2075,9085],[1878,9146],[1813,9196],[1719,9243],[1619,9280],[1441,9344],[1384,9435],[1365,9540],[1394,9547],[1420,9635],[1454,9647],[1479,9618],[1510,9536],[1571,9603],[1532,9644],[1577,9625],[1703,9642],[1733,9664],[1788,9765],[1965,9845],[2016,9851],[2108,9811],[2132,9772],[2116,9723],[2194,9699],[2173,9765],[2314,9740],[2443,9763],[2512,9737],[2639,9581],[2634,9523],[2744,9521],[2786,9500],[2897,9405],[3002,9350],[3115,9309],[3245,9289],[3422,9286],[3488,9339],[3558,9368],[3672,9331],[3849,9141],[3817,9054],[3773,8971],[3566,8937],[3491,8947],[3445,8906],[3422,8845],[3397,8681],[3330,8538]]]}},{"type":"Feature","id":"DO.DA","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.48,"hc-key":"do-da","hc-a2":"DA","labelrank":"7","hasc":"DO.DA","alt-name":"Libertador","woe-id":"2345175","subregion":null,"fips":"DR04","postal-code":"DA","name":"Dajabón","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.59520000000001","woe-name":"Dajabón","latitude":"19.4319","woe-label":"Dajabon, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[792,8650],[722,8538],[684,8407],[690,8337],[666,8273],[628,8076],[483,8015],[511,7947],[560,7892],[509,7841],[449,7805],[307,7850],[271,7808],[248,7751],[126,7695],[76,7649],[-113,7744],[-221,7857],[-272,7932],[-286,7994],[-158,8078],[-119,8172],[-68,8260],[-64,8398],[-95,8641],[-174,8836],[-186,8907],[-180,8988],[-147,8979],[136,8854],[445,8887],[518,8865],[561,8784],[672,8708],[792,8650]]]}},{"type":"Feature","id":"DO.ES","properties":{"hc-group":"admin1","hc-middle-x":0.23,"hc-middle-y":0.62,"hc-key":"do-es","hc-a2":"ES","labelrank":"9","hasc":"DO.ES","alt-name":null,"woe-id":"2345178","subregion":null,"fips":"DR08","postal-code":"ES","name":"Espaillat","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.3537","woe-name":"Espaillat","latitude":"19.5998","woe-label":"Espaillat, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3132,8078],[3221,8145],[3215,8283],[3233,8361],[3317,8475],[3330,8538],[3397,8681],[3422,8845],[3445,8906],[3491,8947],[3566,8937],[3773,8971],[3817,9054],[3849,9141],[3955,9027],[4057,8964],[4117,8946],[4250,8931],[4357,8891],[4554,8851],[4627,8862],[4664,8895],[4666,8877],[4610,8716],[4464,8633],[4333,8634],[4306,8467],[4275,8473],[4243,8473],[4177,8582],[4092,8657],[4004,8608],[3943,8520],[3874,8474],[3840,8557],[3738,8601],[3639,8481],[3639,8274],[3626,8100],[3561,7920],[3478,7904],[3421,8053],[3294,8016],[3201,8025],[3132,8078]]]}},{"type":"Feature","id":"DO.1857","properties":{"hc-group":"admin1","hc-middle-x":0.33,"hc-middle-y":0.53,"hc-key":"do-1857","hc-a2":"HE","labelrank":"9","hasc":"DO.","alt-name":null,"woe-id":"2345188","subregion":null,"fips":null,"postal-code":null,"name":"Hermanas","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.352","woe-name":"Hermanas","latitude":"19.403","woe-label":"Salcedo, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3561,7920],[3626,8100],[3639,8274],[3639,8481],[3738,8601],[3840,8557],[3874,8474],[3943,8520],[4004,8608],[4092,8657],[4177,8582],[4243,8473],[4201,8295],[4116,8225],[3993,8166],[3934,8036],[3909,7891],[3867,7758],[3863,7627],[3743,7636],[3662,7716],[3604,7815],[3561,7920]]]}},{"type":"Feature","id":"DO.BR","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.45,"hc-key":"do-br","hc-a2":"BR","labelrank":"9","hasc":"DO.BR","alt-name":"Baoruco","woe-id":"2345173","subregion":null,"fips":"DR02","postal-code":"BR","name":"Bahoruco","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.307","woe-name":"Bahoruco","latitude":"18.5116","woe-label":"Bahoruco, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[394,5888],[532,5835],[678,5804],[809,5735],[953,5722],[1017,5762],[1086,5784],[1167,5774],[1248,5787],[1389,5827],[1495,5766],[1634,5623],[1817,5557],[1910,5539],[1988,5486],[1987,5431],[1924,5408],[1867,5482],[1779,5327],[1702,5272],[1611,5240],[1563,5202],[1529,5151],[1431,5089],[1378,5008],[1368,4908],[1262,4902],[1181,4971],[1106,5115],[964,5125],[851,5083],[736,5113],[630,5180],[518,5233],[216,5355],[137,5627],[171,5691],[203,5834],[394,5888]]]}},{"type":"Feature","id":"DO.BH","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.55,"hc-key":"do-bh","hc-a2":"BH","labelrank":"7","hasc":"DO.BH","alt-name":null,"woe-id":"2345174","subregion":null,"fips":"DR03","postal-code":"BH","name":"Barahona","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.1872","woe-name":"Barahona","latitude":"18.1674","woe-label":"Barahona, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[2061,4664],[2008,4748],[1946,4786],[1818,4815],[1759,4817],[1712,4799],[1660,4681],[1659,4607],[1713,4530],[1774,4296],[1716,4209],[1665,4085],[1380,3680],[1342,3586],[1255,3537],[1191,3477],[1152,3388],[1113,3409],[1112,3537],[1066,3646],[977,3651],[902,3634],[758,3756],[696,3915],[717,3942],[778,3965],[801,4053],[797,4236],[706,4290],[720,4373],[775,4430],[850,4409],[918,4417],[833,4765],[964,4792],[1113,4739],[1269,4779],[1368,4908],[1378,5008],[1431,5089],[1529,5151],[1563,5202],[1611,5240],[1702,5272],[1779,5327],[1867,5482],[1924,5408],[1953,5357],[1961,5259],[1901,5182],[1809,5105],[1837,5033],[1902,4997],[2082,4948],[2075,4903],[2106,4738],[2061,4664]]]}},{"type":"Feature","id":"DO.IN","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.45,"hc-key":"do-in","hc-a2":"IN","labelrank":"9","hasc":"DO.IN","alt-name":null,"woe-id":"2345179","subregion":null,"fips":"DR","postal-code":"IN","name":"Independencia","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.6057","woe-name":"Independencia","latitude":"18.3759","woe-label":"Independencia, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[394,5888],[203,5834],[171,5691],[137,5627],[216,5355],[518,5233],[630,5180],[736,5113],[851,5083],[964,5125],[1106,5115],[1181,4971],[1262,4902],[1368,4908],[1269,4779],[1113,4739],[964,4792],[833,4765],[918,4417],[850,4409],[775,4430],[720,4373],[706,4290],[535,4445],[433,4488],[326,4517],[75,4644],[-174,4788],[-136,4850],[-211,4912],[-369,4975],[-479,5050],[-571,5168],[-686,5198],[-730,5223],[-747,5281],[-697,5344],[-726,5425],[-832,5536],[-904,5668],[-972,5716],[-999,5757],[-959,5786],[-849,5807],[-627,5763],[-512,5800],[-473,5841],[-411,5943],[-342,6004],[-178,5982],[20,5948],[209,5930],[394,5888]]]}},{"type":"Feature","id":"DO.EP","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.36,"hc-key":"do-ep","hc-a2":"EP","labelrank":"9","hasc":"DO.EP","alt-name":"Elías Piña|San Rafael","woe-id":"2345181","subregion":null,"fips":"DR11","postal-code":"EP","name":"La Estrelleta","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-71.65000000000001","woe-name":"La Estrelleta","latitude":"19.037","woe-label":"Elias Piña, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[1029,7552],[1007,7459],[1000,7363],[906,7294],[794,7289],[703,7346],[603,7364],[542,7253],[506,7122],[458,7024],[367,6999],[283,6992],[217,6934],[142,6780],[115,6614],[165,6548],[127,6398],[252,6301],[273,6229],[271,6153],[325,6094],[405,6074],[437,5986],[394,5888],[209,5930],[20,5948],[-178,5982],[-342,6004],[-220,6085],[-184,6142],[-148,6251],[-142,6309],[-164,6431],[-165,6557],[-181,6614],[-295,6737],[-335,6826],[-362,6848],[-431,6851],[-558,6820],[-565,6874],[-514,6907],[-362,6945],[-323,6969],[-193,7108],[-103,7230],[43,7339],[81,7393],[97,7446],[113,7630],[76,7649],[126,7695],[248,7751],[271,7808],[307,7850],[449,7805],[509,7841],[560,7892],[681,7812],[770,7690],[1029,7552]]]}},{"type":"Feature","id":"DO.AZ","properties":{"hc-group":"admin1","hc-middle-x":0.41,"hc-middle-y":0.54,"hc-key":"do-az","hc-a2":"AZ","labelrank":"7","hasc":"DO.AZ","alt-name":null,"woe-id":"2345172","subregion":null,"fips":"DR01","postal-code":"AZ","name":"Azua","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.8169","woe-name":"Azua","latitude":"18.5981","woe-label":"Azua, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3203,4683],[3165,4708],[3160,4768],[3213,4813],[3227,4875],[3222,4998],[3142,5117],[3103,5145],[2977,5186],[2903,5192],[2840,5176],[2813,5122],[2814,5032],[2726,4946],[2669,4922],[2547,4946],[2482,4909],[2417,4908],[2366,4861],[2335,4798],[2281,4778],[2201,4686],[2159,4661],[2061,4664],[2106,4738],[2075,4903],[2082,4948],[1902,4997],[1837,5033],[1809,5105],[1901,5182],[1961,5259],[1953,5357],[1924,5408],[1987,5431],[1988,5486],[1910,5539],[1817,5557],[1634,5623],[1495,5766],[1625,5799],[1704,5913],[1809,5956],[1783,6030],[1819,6111],[1801,6228],[1898,6257],[1922,6203],[1965,6185],[2005,6223],[2029,6275],[2032,6435],[2054,6588],[2090,6665],[2205,6754],[2217,6814],[2279,6843],[2305,6909],[2458,6803],[2488,6517],[2612,6346],[2791,6252],[2902,6116],[2858,5939],[2942,5772],[3002,5615],[3045,5588],[3067,5542],[3118,5492],[3186,5467],[3284,5402],[3379,5353],[3503,5118],[3522,5061],[3493,5004],[3469,4921],[3476,4833],[3368,4713],[3203,4683]]]}},{"type":"Feature","id":"DO.VE","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.39,"hc-key":"do-ve","hc-a2":"VE","labelrank":"7","hasc":"DO.VE","alt-name":null,"woe-id":"2345198","subregion":null,"fips":"DR30","postal-code":"VE","name":"La Vega","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.6836","woe-name":"La Vega","latitude":"19.0453","woe-label":"La Vega, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3561,7920],[3604,7815],[3662,7716],[3743,7636],[3863,7627],[3957,7480],[4103,7382],[4114,7365],[4049,7342],[3859,7250],[3775,7155],[3754,7236],[3684,7278],[3626,7258],[3594,7201],[3453,7164],[3391,7050],[3387,6839],[3209,6696],[3181,6482],[3352,6279],[3308,6142],[3231,6045],[3122,5939],[2858,5939],[2902,6116],[2791,6252],[2612,6346],[2488,6517],[2458,6803],[2305,6909],[2280,6976],[2232,7026],[2246,7095],[2225,7161],[2593,7329],[2748,7444],[2784,7527],[2848,7530],[2925,7514],[2917,7604],[2939,7709],[2894,7790],[2804,7816],[2734,7871],[2755,7934],[2828,7953],[2976,8030],[3132,8078],[3201,8025],[3294,8016],[3421,8053],[3478,7904],[3561,7920]]]}},{"type":"Feature","id":"DO.SZ","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.44,"hc-key":"do-sz","hc-a2":"SZ","labelrank":"9","hasc":"DO.SZ","alt-name":null,"woe-id":"2345190","subregion":null,"fips":"DR21","postal-code":"SZ","name":"Sánchez Ramírez","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.15000000000001","woe-name":"Sánchez Ramírez","latitude":"19.0101","woe-label":"Sánchez Ramirez, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3775,7155],[3859,7250],[4049,7342],[4114,7365],[4103,7382],[4148,7410],[4266,7382],[4327,7393],[4457,7394],[4669,7372],[4811,7305],[4880,7283],[5066,7275],[5139,7252],[5201,7211],[5191,7129],[5163,7044],[5118,6845],[5066,6644],[4983,6581],[4888,6629],[4829,6640],[4793,6586],[4679,6607],[4601,6589],[4544,6539],[4266,6478],[4190,6612],[4003,6748],[3957,6809],[3922,6890],[3848,6926],[3834,7010],[3775,7155]]]}},{"type":"Feature","id":"DO.MN","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.51,"hc-key":"do-mn","hc-a2":"MN","labelrank":"9","hasc":"DO.MN","alt-name":"Monsenor Novel","woe-id":"2345199","subregion":null,"fips":"DR31","postal-code":"MN","name":"Monseñor Nouel","country":"Dominican Republic","type-en":"Province","region":null,"longitude":"-70.40810000000001","woe-name":"Monseñor Nouel","latitude":"18.9242","woe-label":"Monseñor Nouel, DO, Dominican Republic","type":"Provincia"},"geometry":{"type":"Polygon","coordinates":[[[3775,7155],[3834,7010],[3848,6926],[3922,6890],[3957,6809],[4003,6748],[4190,6612],[4266,6478],[4205,6412],[4185,6315],[4083,6267],[4041,6179],[4000,6062],[3891,6065],[3816,6118],[3738,6150],[3667,6125],[3593,6118],[3475,6206],[3352,6279],[3181,6482],[3209,6696],[3387,6839],[3391,7050],[3453,7164],[3594,7201],[3626,7258],[3684,7278],[3754,7236],[3775,7155]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/uy-all.geo.json
const uy_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Uruguay","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32721"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=21 +south +datum=WGS84 +units=m +no_defs","scale":0.00129121599571,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":366472.472468,"yoffset":6670479.73655}},"features":[{"type":"Feature","id":"UY.SA","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.57,"hc-key":"uy-sa","hc-a2":"SA","labelrank":"7","hasc":"UY.SA","alt-name":null,"woe-id":"2347654","subregion":null,"fips":"UY15","postal-code":"SA","name":"Salto","country":"Uruguay","type-en":"Department","region":null,"longitude":"-57.0428","woe-name":"Salto","latitude":"-31.4398","woe-label":"Salto, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3550,7675],[3561,7657],[3564,7658],[3511,7484],[3474,7406],[3430,7373],[3297,7335],[3223,7272],[3277,7166],[3220,6966],[3145,6887],[3076,6847],[3034,6767],[2963,6692],[2900,6514],[2932,6457],[2963,6239],[2959,6177],[2859,6152],[2730,5999],[2691,5927],[2602,5914],[2468,5956],[2333,5970],[2238,6031],[2122,6039],[1974,6088],[1810,6052],[1666,6093],[1544,6053],[1338,6085],[1247,6150],[1097,6193],[1014,6250],[972,6315],[809,6348],[543,6491],[263,6550],[231,6567],[161,6706],[35,6775],[-50,6797],[-120,6779],[-142,6729],[-236,6738],[-301,6710],[-371,6784],[-347,6853],[-211,6954],[-167,7142],[-109,7197],[-52,7306],[-66,7462],[-42,7561],[40,7711],[24,7814],[-70,7958],[-20,8021],[130,8047],[152,8158],[143,8305],[211,8392],[330,8365],[455,8273],[579,8148],[757,8122],[863,8043],[1116,7909],[1207,7880],[1340,7759],[1422,7709],[1537,7675],[1590,7683],[1673,7738],[1844,7751],[2061,7711],[2225,7731],[2287,7754],[2400,7847],[2503,7874],[2667,7982],[2724,8081],[2791,8096],[2932,8050],[3235,7981],[3318,7922],[3381,7833],[3550,7675]]]}},{"type":"Feature","id":"UY.SO","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.47,"hc-key":"uy-so","hc-a2":"SO","labelrank":"6","hasc":"UY.SO","alt-name":null,"woe-id":"2347656","subregion":null,"fips":"UY17","postal-code":"SO","name":"Soriano","country":"Uruguay","type-en":"Department","region":null,"longitude":"-57.7585","woe-name":"Soriano","latitude":"-33.4821","woe-label":"Soriano, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-947,1450],[-985,1651],[-996,1843],[-974,2033],[-999,2169],[-990,2222],[-903,2350],[-916,2452],[-739,2560],[-640,2692],[-606,2714],[-443,2717],[-435,2839],[-348,2916],[-264,2854],[-245,2947],[-285,2985],[-306,3081],[-256,3122],[-128,3112],[-119,3192],[-17,3237],[50,3306],[117,3311],[221,3271],[282,3286],[458,3219],[495,3227],[527,3293],[652,3352],[733,3355],[815,3312],[852,3207],[955,3243],[1104,3198],[1147,3085],[1225,3154],[1247,3071],[1289,3066],[1436,3138],[1399,3048],[1046,2623],[1032,2541],[1118,2457],[1140,2362],[1179,2302],[1193,2209],[1252,2132],[1350,2086],[1375,2044],[1356,1987],[1329,1770],[1333,1727],[1432,1541],[1482,1344],[1530,1274],[1337,1304],[1132,1311],[1055,1373],[946,1422],[627,1333],[463,1326],[210,1411],[99,1492],[-167,1489],[-252,1618],[-462,1669],[-524,1663],[-695,1542],[-861,1470],[-947,1450]]]}},{"type":"Feature","id":"UY.CL","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.6,"hc-key":"uy-cl","hc-a2":"CL","labelrank":"6","hasc":"UY.CL","alt-name":null,"woe-id":"2347642","subregion":null,"fips":"UY03","postal-code":"CL","name":"Cerro Largo","country":"Uruguay","type-en":"Department","region":null,"longitude":"-54.2281","woe-name":"Cerro Largo","latitude":"-32.2963","woe-label":"Cerro Largo, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6479,6319],[6837,5957],[6940,5880],[7031,5791],[7096,5760],[7150,5814],[7223,5821],[7290,5779],[7352,5707],[7474,5675],[7548,5612],[7570,5542],[7664,5461],[7774,5434],[7812,5385],[7812,5306],[7862,5175],[7953,5030],[7984,4892],[7987,4780],[8144,4528],[8303,4393],[8409,4265],[8514,4225],[8594,4173],[8686,4159],[8806,4088],[8859,4038],[8840,3938],[8681,3854],[8514,3843],[8588,3784],[8459,3762],[8384,3801],[8283,3817],[8237,3857],[8035,3839],[7923,3857],[7609,3842],[7546,3866],[7430,3966],[7361,3978],[7308,3950],[7230,3864],[7248,3790],[7211,3780],[7055,3879],[6763,3942],[6708,3980],[6528,3907],[6370,3900],[6319,3827],[6239,3824],[6176,3757],[6013,3776],[5925,3742],[5758,3728],[5646,3674],[5558,3596],[5402,3509],[5363,3459],[5393,3321],[5297,3336],[5114,3342],[5081,3387],[4905,3505],[4817,3628],[4829,3760],[4776,3883],[4838,3924],[4846,3970],[4798,4124],[4860,4334],[4854,4436],[4817,4509],[4985,4584],[5050,4587],[5235,4522],[5360,4556],[5451,4638],[5520,4731],[5587,4750],[5634,4816],[5744,4900],[5821,5059],[5796,5133],[5823,5208],[5884,5286],[5912,5360],[6033,5296],[6102,5309],[6226,5336],[6261,5408],[6243,5443],[6311,5506],[6318,5571],[6233,5611],[6300,5702],[6400,5925],[6403,6018],[6375,6170],[6479,6319]]]}},{"type":"Feature","id":"UY.DU","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.59,"hc-key":"uy-du","hc-a2":"DU","labelrank":"7","hasc":"UY.DU","alt-name":null,"woe-id":"2347644","subregion":null,"fips":"UY05","postal-code":"DU","name":"Durazno","country":"Uruguay","type-en":"Department","region":null,"longitude":"-56.0945","woe-name":"Durazno","latitude":"-33.1016","woe-label":"Durazno, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4817,4509],[4854,4436],[4860,4334],[4798,4124],[4846,3970],[4838,3924],[4776,3883],[4829,3760],[4817,3628],[4905,3505],[5081,3387],[5114,3342],[5297,3336],[5393,3321],[5338,3249],[5233,3183],[5200,3117],[5073,3046],[4922,2923],[4838,2950],[4651,2852],[4597,2789],[4239,2593],[4196,2576],[4061,2582],[3966,2504],[3851,2453],[3747,2434],[3654,2464],[3493,2440],[3440,2362],[3355,2311],[3213,2345],[3072,2350],[3029,2441],[2986,2458],[2873,2454],[2769,2517],[2754,2501],[2760,2367],[2689,2306],[2542,2310],[2494,2378],[2481,2477],[2268,2747],[2164,2787],[2030,2806],[1958,2872],[1935,2951],[1891,2984],[1722,3017],[1621,3002],[1524,3051],[1436,3138],[1430,3244],[1339,3266],[1452,3367],[1518,3397],[1629,3357],[1731,3355],[1701,3425],[1800,3441],[1832,3502],[1902,3445],[1928,3464],[1928,3548],[2019,3558],[2039,3657],[2081,3698],[2170,3715],[2228,3758],[2297,3758],[2353,3725],[2455,3774],[2665,3784],[2744,3720],[2784,3716],[2870,3819],[2993,3799],[3126,3799],[3138,3864],[3231,4013],[3392,4053],[3523,4068],[3688,4256],[3773,4282],[3869,4212],[3940,4268],[3979,4352],[3967,4450],[4026,4457],[4096,4400],[4162,4417],[4212,4512],[4372,4479],[4454,4494],[4503,4623],[4550,4661],[4599,4636],[4626,4563],[4758,4500],[4817,4509]]]}},{"type":"Feature","id":"UY.RV","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.54,"hc-key":"uy-rv","hc-a2":"RV","labelrank":"7","hasc":"UY.RV","alt-name":null,"woe-id":"2347652","subregion":null,"fips":"UY13","postal-code":"RV","name":"Rivera","country":"Uruguay","type-en":"Department","region":null,"longitude":"-55.3279","woe-name":"Rivera","latitude":"-31.4683","woe-label":"Rivera, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3277,7166],[3223,7272],[3297,7335],[3430,7373],[3474,7406],[3511,7484],[3564,7658],[3736,7655],[3842,7667],[4036,7816],[4098,7955],[4224,7945],[4249,7968],[4247,8101],[4288,8170],[4368,8167],[4421,8104],[4490,8063],[4650,7904],[4817,7700],[4845,7546],[4929,7482],[4990,7315],[5051,7259],[5161,7206],[5250,7122],[5316,7092],[5428,7218],[5539,7056],[5593,7000],[5670,6962],[5738,6882],[5820,6841],[6135,6789],[6200,6788],[6253,6753],[6306,6652],[6405,6569],[6453,6498],[6479,6319],[6375,6170],[6403,6018],[6400,5925],[6300,5702],[6233,5611],[6318,5571],[6311,5506],[6243,5443],[6261,5408],[6226,5336],[6102,5309],[6017,5450],[5842,5657],[5811,5716],[5673,5868],[5526,5929],[5381,5944],[5272,5991],[4988,6005],[4804,6054],[4508,6040],[4404,6060],[4321,6043],[4241,6130],[4213,6281],[4242,6410],[4197,6557],[4069,6616],[3979,6693],[3927,6821],[3928,6903],[3898,6977],[3849,7023],[3622,7134],[3467,7259],[3393,7273],[3323,7236],[3277,7166]]]}},{"type":"Feature","id":"UY.TA","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.51,"hc-key":"uy-ta","hc-a2":"TA","labelrank":"6","hasc":"UY.TA","alt-name":null,"woe-id":"2347657","subregion":null,"fips":"UY18","postal-code":"TA","name":"Tacuarembó","country":"Uruguay","type-en":"Department","region":null,"longitude":"-55.6607","woe-name":"Tacuarembó","latitude":"-32.1061","woe-label":"Tacuarembó, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6102,5309],[6033,5296],[5912,5360],[5884,5286],[5823,5208],[5796,5133],[5821,5059],[5744,4900],[5634,4816],[5587,4750],[5520,4731],[5451,4638],[5360,4556],[5235,4522],[5050,4587],[4985,4584],[4817,4509],[4758,4500],[4626,4563],[4599,4636],[4550,4661],[4503,4623],[4454,4494],[4372,4479],[4212,4512],[4162,4417],[4096,4400],[4026,4457],[3967,4450],[3979,4352],[3940,4268],[3869,4212],[3773,4282],[3688,4256],[3523,4068],[3392,4053],[3231,4013],[3138,3864],[3126,3799],[2993,3799],[2870,3819],[2784,3716],[2744,3720],[2665,3784],[2455,3774],[2353,3725],[2297,3758],[2366,3965],[2369,4077],[2425,4154],[2493,4434],[2502,4535],[2604,4837],[2636,4885],[2762,4987],[2883,5112],[2952,5397],[3006,5531],[3027,5773],[3102,5831],[3037,5946],[3038,6061],[2959,6177],[2963,6239],[2932,6457],[2900,6514],[2963,6692],[3034,6767],[3076,6847],[3145,6887],[3220,6966],[3277,7166],[3323,7236],[3393,7273],[3467,7259],[3622,7134],[3849,7023],[3898,6977],[3928,6903],[3927,6821],[3979,6693],[4069,6616],[4197,6557],[4242,6410],[4213,6281],[4241,6130],[4321,6043],[4404,6060],[4508,6040],[4804,6054],[4988,6005],[5272,5991],[5381,5944],[5526,5929],[5673,5868],[5811,5716],[5842,5657],[6017,5450],[6102,5309]]]}},{"type":"Feature","id":"UY.TT","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.47,"hc-key":"uy-tt","hc-a2":"TT","labelrank":"7","hasc":"UY.TT","alt-name":null,"woe-id":"2347658","subregion":null,"fips":"UY19","postal-code":"TT","name":"Treinta y Tres","country":"Uruguay","type-en":"Department","region":null,"longitude":"-54.1659","woe-name":"Treinta y Tres","latitude":"-33.1021","woe-label":"Treinta y Tres, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[8588,3784],[8632,3677],[8619,3597],[8551,3565],[8588,3520],[8508,3479],[8538,3398],[8321,3421],[8226,3366],[8066,3138],[8033,3112],[8020,3217],[7985,3182],[7998,3087],[7956,3069],[7991,2990],[7853,2936],[7703,2898],[7646,2792],[7554,2740],[7458,2624],[7329,2561],[7279,2464],[7149,2360],[7051,2338],[7020,2305],[6821,2414],[6727,2560],[6600,2556],[6497,2491],[6430,2388],[6316,2361],[6191,2404],[6134,2441],[5927,2486],[5814,2587],[5705,2620],[5572,2562],[5507,2563],[5400,2616],[5293,2600],[5165,2533],[5122,2618],[5200,2716],[5232,2819],[5200,3117],[5233,3183],[5338,3249],[5393,3321],[5363,3459],[5402,3509],[5558,3596],[5646,3674],[5758,3728],[5925,3742],[6013,3776],[6176,3757],[6239,3824],[6319,3827],[6370,3900],[6528,3907],[6708,3980],[6763,3942],[7055,3879],[7211,3780],[7248,3790],[7230,3864],[7308,3950],[7361,3978],[7430,3966],[7546,3866],[7609,3842],[7923,3857],[8035,3839],[8237,3857],[8283,3817],[8384,3801],[8459,3762],[8588,3784]]]}},{"type":"Feature","id":"UY.CA","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.49,"hc-key":"uy-ca","hc-a2":"CA","labelrank":"7","hasc":"UY.CA","alt-name":null,"woe-id":"2347641","subregion":null,"fips":"UY02","postal-code":"CA","name":"Canelones","country":"Uruguay","type-en":"Department","region":null,"longitude":"-55.9228","woe-name":"Canelones","latitude":"-34.5473","woe-label":"Canelones, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4651,-614],[4478,-594],[4402,-601],[4234,-540],[4152,-558],[4066,-520],[3950,-559],[3886,-539],[3707,-602],[3432,-782],[3407,-698],[3439,-546],[3367,-535],[3285,-472],[3263,-426],[3170,-455],[3134,-497],[3079,-503],[2992,-411],[2933,-395],[2838,-441],[2798,-385],[2673,-292],[2643,-134],[2779,19],[2762,107],[2774,228],[2826,375],[2955,407],[3021,395],[3102,349],[3264,376],[3319,496],[3353,534],[3519,641],[3599,629],[3696,580],[3811,593],[3988,685],[4219,714],[4290,439],[4365,295],[4372,242],[4348,64],[4436,-57],[4476,-147],[4475,-209],[4501,-272],[4582,-371],[4571,-459],[4631,-549],[4651,-614]]]}},{"type":"Feature","id":"UY.FD","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.54,"hc-key":"uy-fd","hc-a2":"FD","labelrank":"7","hasc":"UY.FD","alt-name":null,"woe-id":"2347646","subregion":null,"fips":"UY07","postal-code":"FD","name":"Florida","country":"Uruguay","type-en":"Department","region":null,"longitude":"-55.812","woe-name":"Florida","latitude":"-33.835","woe-label":"Florida, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4219,714],[3988,685],[3811,593],[3696,580],[3599,629],[3519,641],[3353,534],[3319,496],[3264,376],[3102,349],[3021,395],[2955,407],[2826,375],[2774,228],[2651,380],[2673,442],[2733,508],[2742,655],[2698,795],[2746,920],[2747,1066],[2693,1334],[2668,1406],[2734,1509],[2745,1715],[2674,1864],[2570,2251],[2542,2310],[2689,2306],[2760,2367],[2754,2501],[2769,2517],[2873,2454],[2986,2458],[3029,2441],[3072,2350],[3213,2345],[3355,2311],[3440,2362],[3493,2440],[3654,2464],[3747,2434],[3851,2453],[3966,2504],[4061,2582],[4196,2576],[4239,2593],[4597,2789],[4651,2852],[4838,2950],[4922,2923],[5073,3046],[5200,3117],[5232,2819],[5200,2716],[5122,2618],[5165,2533],[5190,2403],[5129,2321],[5018,2265],[4961,2132],[4888,2073],[4790,2032],[4776,1944],[4841,1815],[4828,1703],[4755,1538],[4732,1434],[4648,1367],[4608,1280],[4543,1199],[4530,1116],[4419,1013],[4348,878],[4219,714]]]}},{"type":"Feature","id":"UY.LA","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.42,"hc-key":"uy-la","hc-a2":"LA","labelrank":"6","hasc":"UY.LA","alt-name":null,"woe-id":"2347647","subregion":null,"fips":"UY08","postal-code":"LA","name":"Lavalleja","country":"Uruguay","type-en":"Department","region":null,"longitude":"-54.8724","woe-name":"Lavalleja","latitude":"-33.8788","woe-label":"Lavalleja, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4475,-209],[4476,-147],[4436,-57],[4348,64],[4372,242],[4365,295],[4290,439],[4219,714],[4348,878],[4419,1013],[4530,1116],[4543,1199],[4608,1280],[4648,1367],[4732,1434],[4755,1538],[4828,1703],[4841,1815],[4776,1944],[4790,2032],[4888,2073],[4961,2132],[5018,2265],[5129,2321],[5190,2403],[5165,2533],[5293,2600],[5400,2616],[5507,2563],[5572,2562],[5705,2620],[5814,2587],[5927,2486],[6134,2441],[6191,2404],[6316,2361],[6430,2388],[6497,2491],[6600,2556],[6727,2560],[6821,2414],[7020,2305],[6986,2280],[6864,2260],[6821,2124],[6749,2063],[6598,1980],[6557,1937],[6529,1857],[6544,1730],[6462,1575],[6436,1433],[6332,1299],[6253,1243],[6155,1051],[6021,1025],[5940,984],[5843,845],[5767,700],[5762,578],[5700,496],[5639,278],[5534,216],[5381,172],[5195,23],[5040,13],[4828,-159],[4722,-199],[4475,-209]]]}},{"type":"Feature","id":"UY.MA","properties":{"hc-group":"admin1","hc-middle-x":0.66,"hc-middle-y":0.64,"hc-key":"uy-ma","hc-a2":"MA","labelrank":"7","hasc":"UY.MA","alt-name":null,"woe-id":"2347648","subregion":null,"fips":"UY09","postal-code":"MA","name":"Maldonado","country":"Uruguay","type-en":"Department","region":null,"longitude":"-54.9671","woe-name":"Maldonado","latitude":"-34.6885","woe-label":"Maldonado, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6194,-654],[6059,-694],[5998,-742],[5882,-781],[5562,-927],[5486,-945],[5438,-999],[5374,-906],[5269,-878],[5256,-835],[5181,-803],[5094,-806],[4925,-842],[4855,-827],[4715,-650],[4651,-614],[4631,-549],[4571,-459],[4582,-371],[4501,-272],[4475,-209],[4722,-199],[4828,-159],[5040,13],[5195,23],[5381,172],[5534,216],[5639,278],[5700,496],[5762,578],[5767,700],[5843,845],[5940,984],[6021,1025],[6155,1051],[6253,1243],[6332,1299],[6362,923],[6320,811],[6298,689],[6308,463],[6287,268],[6224,256],[6200,159],[6232,-7],[6267,-77],[6217,-210],[6194,-317],[6196,-406],[6222,-514],[6193,-577],[6194,-654]]]}},{"type":"Feature","id":"UY.MO","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.46,"hc-key":"uy-mo","hc-a2":"MO","labelrank":"9","hasc":"UY.MO","alt-name":"Montevidéu","woe-id":"2347649","subregion":null,"fips":"UY10","postal-code":"MO","name":"Montevideo","country":"Uruguay","type-en":"Department","region":null,"longitude":"-56.2283","woe-name":"Montevideo","latitude":"-34.8267","woe-label":"Montevideo, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3432,-782],[3375,-815],[3310,-809],[3227,-857],[3216,-903],[3177,-847],[3112,-828],[3130,-783],[3081,-761],[3033,-824],[2933,-823],[2766,-708],[2733,-649],[2837,-572],[2856,-519],[2838,-441],[2933,-395],[2992,-411],[3079,-503],[3134,-497],[3170,-455],[3263,-426],[3285,-472],[3367,-535],[3439,-546],[3407,-698],[3432,-782]]]}},{"type":"Feature","id":"UY.RO","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.47,"hc-key":"uy-ro","hc-a2":"RO","labelrank":"7","hasc":"UY.RO","alt-name":null,"woe-id":"2347653","subregion":null,"fips":"UY14","postal-code":"RO","name":"Rocha","country":"Uruguay","type-en":"Department","region":null,"longitude":"-53.9584","woe-name":"Rocha","latitude":"-33.9106","woe-label":"Rocha, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6194,-654],[6193,-577],[6222,-514],[6196,-406],[6194,-317],[6217,-210],[6267,-77],[6232,-7],[6200,159],[6224,256],[6287,268],[6308,463],[6298,689],[6320,811],[6362,923],[6332,1299],[6436,1433],[6462,1575],[6544,1730],[6529,1857],[6557,1937],[6598,1980],[6749,2063],[6821,2124],[6864,2260],[6986,2280],[7020,2305],[7051,2338],[7149,2360],[7279,2464],[7329,2561],[7458,2624],[7554,2740],[7646,2792],[7703,2898],[7853,2936],[7991,2990],[7989,2949],[7933,2894],[7941,2827],[7996,2737],[8076,2699],[8021,2565],[8080,2499],[8027,2378],[8026,2307],[8090,2185],[8109,2061],[8097,1863],[8146,1770],[8248,1773],[8328,1648],[8388,1650],[8320,1599],[8206,1447],[8066,946],[7968,875],[7874,763],[7739,653],[7646,479],[7603,353],[7626,231],[7550,210],[7377,120],[7238,28],[6950,-238],[6908,-363],[6698,-398],[6750,-338],[6714,-276],[6742,-186],[6667,-135],[6579,-119],[6666,-167],[6620,-224],[6545,-271],[6557,-325],[6612,-310],[6660,-389],[6611,-444],[6194,-654]]]}},{"type":"Feature","id":"UY.CO","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.53,"hc-key":"uy-co","hc-a2":"CO","labelrank":"6","hasc":"UY.CO","alt-name":null,"woe-id":"2347643","subregion":null,"fips":"UY04","postal-code":"CO","name":"Colonia","country":"Uruguay","type-en":"Department","region":null,"longitude":"-57.6787","woe-name":"Colonia","latitude":"-34.1954","woe-label":"Colonia, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1365,197],[1300,211],[1036,207],[1002,236],[917,233],[870,204],[801,237],[685,183],[626,243],[526,234],[269,134],[101,140],[103,192],[52,207],[18,261],[22,350],[-201,621],[-261,650],[-313,756],[-391,805],[-533,826],[-601,982],[-760,1207],[-865,1277],[-922,1346],[-947,1450],[-861,1470],[-695,1542],[-524,1663],[-462,1669],[-252,1618],[-167,1489],[99,1492],[210,1411],[463,1326],[627,1333],[946,1422],[1055,1373],[1132,1311],[1337,1304],[1530,1274],[1587,1121],[1641,1089],[1769,909],[1781,865],[1680,771],[1579,736],[1506,688],[1484,598],[1537,508],[1494,407],[1478,295],[1365,197]]]}},{"type":"Feature","id":"UY.SJ","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.42,"hc-key":"uy-sj","hc-a2":"SJ","labelrank":"6","hasc":"UY.SJ","alt-name":null,"woe-id":"2347655","subregion":null,"fips":"UY16","postal-code":"SJ","name":"San José","country":"Uruguay","type-en":"Department","region":null,"longitude":"-56.7651","woe-name":"San José","latitude":"-34.3117","woe-label":"San José, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2668,1406],[2693,1334],[2747,1066],[2746,920],[2698,795],[2742,655],[2733,508],[2673,442],[2651,380],[2774,228],[2762,107],[2779,19],[2643,-134],[2673,-292],[2798,-385],[2838,-441],[2856,-519],[2837,-572],[2816,-548],[2684,-493],[2552,-485],[2512,-512],[2454,-494],[2321,-413],[2198,-378],[2049,-358],[1905,-295],[1849,-218],[1644,-33],[1568,22],[1571,53],[1453,165],[1365,197],[1478,295],[1494,407],[1537,508],[1484,598],[1506,688],[1579,736],[1680,771],[1781,865],[1769,909],[1641,1089],[1587,1121],[1530,1274],[1609,1270],[1876,1218],[2005,1265],[2126,1392],[2253,1424],[2333,1463],[2409,1524],[2466,1510],[2668,1406]]]}},{"type":"Feature","id":"UY.AR","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.54,"hc-key":"uy-ar","hc-a2":"AR","labelrank":"7","hasc":"UY.AR","alt-name":null,"woe-id":"2347640","subregion":null,"fips":"UY01","postal-code":"AR","name":"Artigas","country":"Uruguay","type-en":"Department","region":null,"longitude":"-56.9399","woe-name":"Artigas","latitude":"-30.5719","woe-label":"Artigas, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[143,8305],[106,8481],[46,8623],[-26,8751],[-35,8838],[-11,8918],[41,8983],[418,9332],[459,9404],[473,9490],[436,9634],[495,9657],[543,9610],[581,9495],[642,9455],[820,9467],[905,9401],[992,9462],[1103,9415],[1142,9449],[1202,9415],[1264,9428],[1358,9535],[1383,9661],[1476,9797],[1525,9831],[1600,9812],[1761,9851],[1854,9825],[1999,9839],[2068,9791],[2122,9708],[2302,9596],[2381,9516],[2383,9433],[2471,9407],[2589,9271],[2747,9157],[2879,8985],[2967,8935],[3079,8839],[3141,8807],[3240,8697],[3264,8628],[3351,8551],[3442,8390],[3566,8287],[3608,8159],[3564,8033],[3540,7739],[3550,7675],[3381,7833],[3318,7922],[3235,7981],[2932,8050],[2791,8096],[2724,8081],[2667,7982],[2503,7874],[2400,7847],[2287,7754],[2225,7731],[2061,7711],[1844,7751],[1673,7738],[1590,7683],[1537,7675],[1422,7709],[1340,7759],[1207,7880],[1116,7909],[863,8043],[757,8122],[579,8148],[455,8273],[330,8365],[211,8392],[143,8305]]]}},{"type":"Feature","id":"UY.FS","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.5,"hc-key":"uy-fs","hc-a2":"FS","labelrank":"6","hasc":"UY.FS","alt-name":null,"woe-id":"2347645","subregion":null,"fips":"UY06","postal-code":"FS","name":"Flores","country":"Uruguay","type-en":"Department","region":null,"longitude":"-56.8849","woe-name":"Flores","latitude":"-33.5902","woe-label":"Flores, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2542,2310],[2570,2251],[2674,1864],[2745,1715],[2734,1509],[2668,1406],[2466,1510],[2409,1524],[2333,1463],[2253,1424],[2126,1392],[2005,1265],[1876,1218],[1609,1270],[1530,1274],[1482,1344],[1432,1541],[1333,1727],[1329,1770],[1356,1987],[1375,2044],[1350,2086],[1252,2132],[1193,2209],[1179,2302],[1140,2362],[1118,2457],[1032,2541],[1046,2623],[1399,3048],[1436,3138],[1524,3051],[1621,3002],[1722,3017],[1891,2984],[1935,2951],[1958,2872],[2030,2806],[2164,2787],[2268,2747],[2481,2477],[2494,2378],[2542,2310]]]}},{"type":"Feature","id":"UY.PA","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.56,"hc-key":"uy-pa","hc-a2":"PA","labelrank":"6","hasc":"UY.PA","alt-name":null,"woe-id":"2347650","subregion":null,"fips":"UY11","postal-code":"PA","name":"Paysandú","country":"Uruguay","type-en":"Department","region":null,"longitude":"-57.224","woe-name":"Paysandú","latitude":"-32.0933","woe-label":"Paysandú, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2959,6177],[3038,6061],[3037,5946],[3102,5831],[3027,5773],[3006,5531],[2952,5397],[2883,5112],[2762,4987],[2636,4885],[2604,4837],[2502,4535],[2416,4585],[2293,4684],[2190,4716],[1938,4720],[1810,4731],[1648,4814],[1599,4824],[1481,4763],[1324,4748],[1201,4659],[1135,4641],[1058,4667],[918,4629],[789,4640],[660,4558],[577,4437],[251,4386],[200,4276],[131,4270],[-34,4285],[-197,4330],[-241,4415],[-358,4517],[-416,4544],[-567,4526],[-584,4630],[-520,4754],[-402,4928],[-413,5060],[-544,5231],[-566,5278],[-515,5393],[-496,5479],[-499,5673],[-519,5743],[-603,5854],[-540,5959],[-468,6001],[-333,6038],[-314,6070],[-203,6414],[-186,6511],[-201,6610],[-301,6710],[-236,6738],[-142,6729],[-120,6779],[-50,6797],[35,6775],[161,6706],[231,6567],[263,6550],[543,6491],[809,6348],[972,6315],[1014,6250],[1097,6193],[1247,6150],[1338,6085],[1544,6053],[1666,6093],[1810,6052],[1974,6088],[2122,6039],[2238,6031],[2333,5970],[2468,5956],[2602,5914],[2691,5927],[2730,5999],[2859,6152],[2959,6177]]]}},{"type":"Feature","id":"UY.RN","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.38,"hc-key":"uy-rn","hc-a2":"RN","labelrank":"6","hasc":"UY.RN","alt-name":null,"woe-id":"2347651","subregion":null,"fips":"UY12","postal-code":"RN","name":"Río Negro","country":"Uruguay","type-en":"Department","region":null,"longitude":"-57.4891","woe-name":"Río Negro","latitude":"-32.7441","woe-label":"Río Negro, UY, Uruguay","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2502,4535],[2493,4434],[2425,4154],[2369,4077],[2366,3965],[2297,3758],[2228,3758],[2170,3715],[2081,3698],[2039,3657],[2019,3558],[1928,3548],[1928,3464],[1902,3445],[1832,3502],[1800,3441],[1701,3425],[1731,3355],[1629,3357],[1518,3397],[1452,3367],[1339,3266],[1430,3244],[1436,3138],[1289,3066],[1247,3071],[1225,3154],[1147,3085],[1104,3198],[955,3243],[852,3207],[815,3312],[733,3355],[652,3352],[527,3293],[495,3227],[458,3219],[282,3286],[221,3271],[117,3311],[50,3306],[-17,3237],[-119,3192],[-128,3112],[-256,3122],[-306,3081],[-285,2985],[-245,2947],[-264,2854],[-348,2916],[-435,2839],[-443,2717],[-606,2714],[-640,2692],[-739,2560],[-916,2452],[-955,2485],[-957,2569],[-862,2672],[-841,2767],[-875,2960],[-878,3053],[-850,3125],[-773,3154],[-520,3154],[-452,3189],[-382,3255],[-339,3333],[-289,3597],[-306,3664],[-426,3801],[-459,3925],[-462,4130],[-501,4342],[-539,4408],[-567,4526],[-416,4544],[-358,4517],[-241,4415],[-197,4330],[-34,4285],[131,4270],[200,4276],[251,4386],[577,4437],[660,4558],[789,4640],[918,4629],[1058,4667],[1135,4641],[1201,4659],[1324,4748],[1481,4763],[1599,4824],[1648,4814],[1810,4731],[1938,4720],[2190,4716],[2293,4684],[2416,4585],[2502,4535]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/sv-all.geo.json
const sv_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"El Salvador","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:5460"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=13.78333333333333 +lat_0=13.78333333333333 +lon_0=-89 +k_0=0.99996704 +x_0=500000 +y_0=295809.184 +ellps=clrk66 +towgs84=213.11,9.37,-74.95,0,0,0,0 +units=m +no_defs","scale":0.00267011016602,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":379301.506642,"yoffset":369273.765499}},"features":[{"type":"Feature","id":"SV.UN","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.54,"hc-key":"sv-un","hc-a2":"UN","labelrank":"9","hasc":"SV.UN","alt-name":null,"woe-id":"2345298","subregion":null,"fips":"ES07","postal-code":"UN","name":"La Unión","country":"El Salvador","type-en":"Department","region":null,"longitude":"-87.9301","woe-name":"La Unión","latitude":"13.302","woe-label":"La Unión, SV, El Salvador","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9834,4062],[9851,4016],[9813,3995],[9755,4016],[9717,3998],[9717,4047],[9693,4097],[9697,4213],[9730,4237],[9792,4216],[9831,4132],[9834,4062]]],[[[9562,4256],[9533,4227],[9474,4279],[9459,4352],[9485,4378],[9559,4361],[9588,4294],[9562,4256]]],[[[8064,4030],[8087,4389],[8105,4469],[8190,4415],[8267,4396],[8298,4413],[8356,4604],[8350,4678],[8406,5008],[8343,5130],[8330,5211],[8327,5328],[8338,5376],[8390,5413],[8411,5464],[8393,5530],[8390,5668],[8400,5726],[8429,5765],[8567,5914],[8599,5964],[8607,6050],[8708,6314],[8735,6438],[8748,6632],[8699,6754],[8717,7032],[8707,7162],[8673,7326],[8795,7270],[8907,7337],[9040,7316],[9083,7319],[9126,7350],[9208,7435],[9275,7438],[9317,7405],[9361,7285],[9398,7231],[9511,7178],[9709,7010],[9788,6979],[9748,6912],[9659,6704],[9637,6629],[9666,6553],[9645,6504],[9561,6405],[9545,6324],[9550,6154],[9540,6071],[9434,5811],[9409,5685],[9456,5580],[9502,5564],[9597,5596],[9662,5571],[9697,5531],[9729,5415],[9718,5357],[9642,5269],[9289,5106],[9251,5127],[9194,5263],[9069,5044],[9037,4916],[9119,4859],[9172,4839],[9322,4698],[9407,4641],[9414,4559],[9378,4461],[9289,4391],[8957,4222],[8867,4150],[8851,4077],[8955,4005],[8797,3968],[8178,4008],[8064,4030]]]]}},{"type":"Feature","id":"SV.LI","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.44,"hc-key":"sv-li","hc-a2":"LI","labelrank":"9","hasc":"SV.LI","alt-name":null,"woe-id":"2345296","subregion":null,"fips":"ES05","postal-code":"LI","name":"La Libertad","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.35930000000001","woe-name":"La Libertad","latitude":"13.7727","woe-label":"La Libertad, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3379,5129],[3165,5260],[2861,5395],[2532,5473],[2379,5473],[2262,5501],[1626,5497],[1354,5565],[1257,5584],[1341,5759],[1455,5858],[1487,5899],[1501,5992],[1522,6029],[1638,6141],[1673,6194],[1668,6310],[1699,6442],[1717,6467],[1813,6505],[1890,6592],[2017,6678],[2035,6713],[2023,6747],[1944,6782],[1965,6910],[2044,7123],[2052,7220],[2055,7425],[2077,7466],[2138,7475],[2174,7532],[2250,7549],[2265,7576],[2279,7744],[2327,7997],[2361,8060],[2451,8084],[2536,8139],[2582,8130],[2663,8084],[2736,8073],[2793,8049],[2787,7895],[2763,7797],[2765,7756],[2792,7735],[2864,7602],[2940,7569],[3047,7561],[3110,7510],[3087,7446],[3029,7420],[3006,7165],[2995,7129],[2944,7101],[2916,7040],[2907,6960],[2883,6891],[2862,6745],[2812,6630],[2869,6569],[2868,6479],[2912,6426],[2932,6354],[3015,6300],[3072,6238],[3050,6154],[3094,6113],[3071,6007],[3079,5817],[3039,5691],[3040,5652],[3137,5483],[3181,5467],[3253,5489],[3341,5472],[3370,5378],[3468,5354],[3486,5325],[3405,5199],[3379,5129]]]}},{"type":"Feature","id":"SV.PA","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.44,"hc-key":"sv-pa","hc-a2":"PA","labelrank":"9","hasc":"SV.PA","alt-name":null,"woe-id":"2345297","subregion":null,"fips":"ES06","postal-code":"PA","name":"La Paz","country":"El Salvador","type-en":"Department","region":null,"longitude":"-88.9628","woe-name":"La Paz","latitude":"13.4872","woe-label":"La Paz, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4743,4450],[3697,4935],[3379,5129],[3405,5199],[3486,5325],[3468,5354],[3370,5378],[3341,5472],[3350,5510],[3396,5555],[3457,5717],[3469,5798],[3426,5881],[3405,5958],[3413,5993],[3464,5999],[3562,5973],[3585,5990],[3720,6161],[3882,6313],[4079,6241],[4157,6199],[4241,6172],[4295,6183],[4319,6222],[4397,6238],[4453,6265],[4486,6175],[4483,6023],[4496,5973],[4539,5974],[4646,6007],[4732,5977],[4842,5741],[4841,5660],[4800,5544],[4779,5421],[4797,5276],[4893,5198],[4953,5131],[4968,5088],[4951,5027],[4910,4988],[4904,4948],[4923,4735],[4892,4701],[4780,4642],[4754,4588],[4743,4450]]]}},{"type":"Feature","id":"SV.CU","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.56,"hc-key":"sv-cu","hc-a2":"CU","labelrank":"9","hasc":"SV.CU","alt-name":null,"woe-id":"2345295","subregion":null,"fips":"ES04","postal-code":"CU","name":"Cuscatlán","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.0055","woe-name":"Cuscatlán","latitude":"13.8166","woe-label":"Cuscatlán, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4453,6265],[4397,6238],[4319,6222],[4295,6183],[4241,6172],[4157,6199],[4079,6241],[3882,6313],[3878,6451],[3761,6672],[3762,6793],[3750,6826],[3703,6861],[3646,6943],[3584,6958],[3512,7030],[3393,7217],[3381,7252],[3449,7309],[3325,7506],[3282,7593],[3268,7666],[3306,7712],[3324,7788],[3312,7974],[3353,8073],[3356,8117],[3435,8158],[3635,8086],[3766,7992],[3793,7947],[3891,7831],[3902,7755],[3945,7674],[3982,7645],[4078,7600],[4159,7607],[4228,7580],[4302,7572],[4217,7438],[4126,7373],[4092,7311],[4125,7243],[4212,7120],[4298,7042],[4357,6879],[4463,6734],[4503,6710],[4658,6669],[4540,6351],[4453,6265]]]}},{"type":"Feature","id":"SV.SO","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.54,"hc-key":"sv-so","hc-a2":"SO","labelrank":"9","hasc":"SV.SO","alt-name":null,"woe-id":"2345304","subregion":null,"fips":"ES13","postal-code":"SO","name":"Sonsonate","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.69370000000001","woe-name":"Sonsonate","latitude":"13.7165","woe-label":"Sonsonate, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1944,6782],[2023,6747],[2035,6713],[2017,6678],[1890,6592],[1813,6505],[1717,6467],[1699,6442],[1668,6310],[1673,6194],[1638,6141],[1522,6029],[1501,5992],[1487,5899],[1455,5858],[1341,5759],[1257,5584],[1226,5590],[942,5684],[793,5654],[367,5650],[299,5697],[255,5866],[238,5971],[182,6017],[90,6074],[-282,6285],[-200,6413],[-143,6471],[-55,6485],[-5,6455],[95,6350],[258,6336],[317,6350],[351,6474],[409,6576],[415,6630],[489,6754],[447,6898],[458,6941],[550,7079],[523,7174],[512,7260],[540,7330],[693,7365],[772,7398],[876,7372],[969,7381],[1015,7352],[1088,7281],[1115,7230],[1186,7144],[1186,7095],[1143,7043],[1189,7008],[1248,6930],[1284,6920],[1332,6936],[1351,7024],[1406,7093],[1480,7054],[1574,6983],[1634,6928],[1674,6843],[1731,6823],[1944,6782]]]}},{"type":"Feature","id":"SV.SS","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.58,"hc-key":"sv-ss","hc-a2":"SS","labelrank":"9","hasc":"SV.SS","alt-name":null,"woe-id":"2345301","subregion":null,"fips":"ES10","postal-code":"SS","name":"San Salvador","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.14879999999999","woe-name":"San Salvador","latitude":"13.713","woe-label":"San Salvador, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3356,8117],[3353,8073],[3312,7974],[3324,7788],[3306,7712],[3268,7666],[3282,7593],[3325,7506],[3449,7309],[3381,7252],[3393,7217],[3512,7030],[3584,6958],[3646,6943],[3703,6861],[3750,6826],[3762,6793],[3761,6672],[3878,6451],[3882,6313],[3720,6161],[3585,5990],[3562,5973],[3464,5999],[3413,5993],[3405,5958],[3426,5881],[3469,5798],[3457,5717],[3396,5555],[3350,5510],[3341,5472],[3253,5489],[3181,5467],[3137,5483],[3040,5652],[3039,5691],[3079,5817],[3071,6007],[3094,6113],[3050,6154],[3072,6238],[3015,6300],[2932,6354],[2912,6426],[2868,6479],[2869,6569],[2812,6630],[2862,6745],[2883,6891],[2907,6960],[2916,7040],[2944,7101],[2995,7129],[3006,7165],[3029,7420],[3087,7446],[3110,7510],[3047,7561],[2940,7569],[2864,7602],[2792,7735],[2765,7756],[2763,7797],[2787,7895],[2793,8049],[2824,8045],[2935,8107],[3028,8067],[3090,8066],[3118,8123],[3181,8073],[3232,8060],[3356,8117]]]}},{"type":"Feature","id":"SV.MO","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"sv-mo","hc-a2":"MO","labelrank":"9","hasc":"SV.MO","alt-name":null,"woe-id":"2345299","subregion":null,"fips":"ES08","postal-code":"MO","name":"Morazán","country":"El Salvador","type-en":"Department","region":null,"longitude":"-88.10550000000001","woe-name":"Morazán","latitude":"13.7736","woe-label":"Morazán, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[7234,7445],[7281,7509],[7334,7532],[7403,7532],[7424,7595],[7366,7660],[7364,7766],[7408,7783],[7594,7750],[7665,7749],[7898,7777],[8016,7771],[8068,7729],[8134,7559],[8199,7482],[8281,7407],[8355,7321],[8393,7207],[8596,7310],[8673,7326],[8707,7162],[8717,7032],[8699,6754],[8748,6632],[8735,6438],[8708,6314],[8607,6050],[8599,5964],[8567,5914],[8429,5765],[8332,5781],[8286,5778],[8111,5723],[8056,5723],[8012,5778],[7936,5825],[7904,5950],[7868,6005],[7835,6021],[7662,6006],[7553,5963],[7582,6045],[7516,6104],[7480,6180],[7421,6228],[7397,6278],[7303,6376],[7295,6491],[7308,6522],[7455,6628],[7536,6674],[7531,6731],[7509,6761],[7340,6875],[7298,6915],[7298,7025],[7349,7081],[7360,7144],[7321,7236],[7311,7288],[7258,7411],[7234,7445]]]}},{"type":"Feature","id":"SV.SM","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.63,"hc-key":"sv-sm","hc-a2":"SM","labelrank":"9","hasc":"SV.SM","alt-name":null,"woe-id":"2345300","subregion":null,"fips":"ES09","postal-code":"SM","name":"San Miguel","country":"El Salvador","type-en":"Department","region":null,"longitude":"-88.1953","woe-name":"San Miguel","latitude":"13.4882","woe-label":"San Miguel, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[8064,4030],[8002,4036],[7970,4023],[7694,4340],[7655,4347],[7533,4328],[7514,4340],[7520,4392],[7553,4453],[7483,4526],[7476,4621],[7420,4651],[7355,4619],[7306,4622],[7234,4653],[7120,4756],[7031,4766],[6974,4787],[6924,4839],[6855,4960],[6831,5042],[6813,5160],[6754,5178],[6731,5354],[6742,5401],[6784,5383],[6801,5484],[6844,5538],[6821,5669],[6824,5733],[6770,5847],[6774,5935],[6826,5962],[6846,6003],[6816,6109],[6840,6209],[6798,6229],[6654,6254],[6584,6310],[6519,6403],[6466,6407],[6283,6385],[6231,6465],[6093,6603],[6081,6710],[6163,6855],[6153,6918],[6201,6949],[6233,6995],[6239,7049],[6211,7106],[6239,7131],[6358,7137],[6442,7188],[6523,7223],[6703,7263],[6746,7261],[6850,7230],[6872,7315],[6937,7311],[7002,7288],[7032,7346],[7184,7384],[7234,7445],[7258,7411],[7311,7288],[7321,7236],[7360,7144],[7349,7081],[7298,7025],[7298,6915],[7340,6875],[7509,6761],[7531,6731],[7536,6674],[7455,6628],[7308,6522],[7295,6491],[7303,6376],[7397,6278],[7421,6228],[7480,6180],[7516,6104],[7582,6045],[7553,5963],[7662,6006],[7835,6021],[7868,6005],[7904,5950],[7936,5825],[8012,5778],[8056,5723],[8111,5723],[8286,5778],[8332,5781],[8429,5765],[8400,5726],[8390,5668],[8393,5530],[8411,5464],[8390,5413],[8338,5376],[8327,5328],[8330,5211],[8343,5130],[8406,5008],[8350,4678],[8356,4604],[8298,4413],[8267,4396],[8190,4415],[8105,4469],[8087,4389],[8064,4030]]]}},{"type":"Feature","id":"SV.SV","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.27,"hc-key":"sv-sv","hc-a2":"SV","labelrank":"9","hasc":"SV.SV","alt-name":null,"woe-id":"2345303","subregion":null,"fips":"ES12","postal-code":"SV","name":"San Vicente","country":"El Salvador","type-en":"Department","region":null,"longitude":"-88.6917","woe-name":"San Vicente","latitude":"13.6291","woe-label":"San Vicente, SV, El Salvador","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6093,6603],[6231,6465],[6283,6385],[6002,6180],[5976,6100],[5910,6008],[5820,5951],[5722,5974],[5593,5815],[5587,5786],[5513,5774],[5488,5737],[5477,5598],[5440,5463],[5236,5075],[5206,4969],[5201,4827],[5190,4796],[5111,4720],[5042,4607],[5000,4573],[4912,4560],[4859,4540],[4825,4494],[4808,4420],[4743,4450],[4754,4588],[4780,4642],[4892,4701],[4923,4735],[4904,4948],[4910,4988],[4951,5027],[4968,5088],[4953,5131],[4893,5198],[4797,5276],[4779,5421],[4800,5544],[4841,5660],[4842,5741],[4732,5977],[4646,6007],[4539,5974],[4496,5973],[4483,6023],[4486,6175],[4453,6265],[4540,6351],[4658,6669],[4664,6800],[4685,6831],[4786,6808],[4860,6827],[5029,6897],[5087,6886],[5140,6942],[5171,6951],[5235,6905],[5288,6896],[5431,6898],[5581,6876],[5664,6815],[5794,6762],[5828,6699],[5853,6686],[6008,6661],[6080,6710],[6080,6710],[6080,6710],[6093,6603]]],[[[6080,6712],[6081,6710],[6080,6710],[6080,6710],[6080,6710],[6080,6712]]]]}},{"type":"Feature","id":"SV.US","properties":{"hc-group":"admin1","hc-middle-x":0.4,"hc-middle-y":0.48,"hc-key":"sv-us","hc-a2":"US","labelrank":"9","hasc":"SV.US","alt-name":null,"woe-id":"2345305","subregion":null,"fips":"ES14","postal-code":"US","name":"Usulután","country":"El Salvador","type-en":"Department","region":null,"longitude":"-88.52930000000001","woe-name":"Usulután","latitude":"13.4104","woe-label":"Usulután, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[7970,4023],[7927,4006],[7540,3972],[7124,4034],[7016,3998],[6894,4032],[6894,4061],[6995,4068],[7002,4138],[6947,4225],[6865,4282],[6958,4126],[6796,4131],[6716,4123],[6649,4094],[6692,4075],[6833,4094],[6833,4060],[6728,4017],[6613,4020],[6523,4075],[6495,4188],[6557,4156],[6618,4219],[6618,4247],[6541,4282],[6456,4400],[6400,4435],[6454,4266],[6434,4219],[6368,4255],[6179,4303],[6097,4346],[6022,4478],[5988,4499],[5787,4533],[5721,4533],[5540,4498],[5286,4491],[5231,4466],[5294,4425],[5356,4433],[5483,4403],[5843,4443],[5941,4405],[6028,4308],[6066,4280],[6066,4246],[5921,4272],[5788,4311],[5788,4280],[6156,4205],[6348,4143],[6434,4059],[6403,4005],[6322,4018],[6233,4064],[6107,4142],[4949,4355],[4808,4420],[4825,4494],[4859,4540],[4912,4560],[5000,4573],[5042,4607],[5111,4720],[5190,4796],[5201,4827],[5206,4969],[5236,5075],[5440,5463],[5477,5598],[5488,5737],[5513,5774],[5587,5786],[5593,5815],[5722,5974],[5820,5951],[5910,6008],[5976,6100],[6002,6180],[6283,6385],[6466,6407],[6519,6403],[6584,6310],[6654,6254],[6798,6229],[6840,6209],[6816,6109],[6846,6003],[6826,5962],[6774,5935],[6770,5847],[6824,5733],[6821,5669],[6844,5538],[6801,5484],[6784,5383],[6742,5401],[6731,5354],[6754,5178],[6813,5160],[6831,5042],[6855,4960],[6924,4839],[6974,4787],[7031,4766],[7120,4756],[7234,4653],[7306,4622],[7355,4619],[7420,4651],[7476,4621],[7483,4526],[7553,4453],[7520,4392],[7514,4340],[7533,4328],[7655,4347],[7694,4340],[7970,4023]]]}},{"type":"Feature","id":"SV.CH","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.41,"hc-key":"sv-ch","hc-a2":"CH","labelrank":"9","hasc":"SV.CH","alt-name":null,"woe-id":"2345294","subregion":null,"fips":"ES03","postal-code":"CH","name":"Chalatenango","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.0591","woe-name":"Chalatenango","latitude":"14.1895","woe-label":"Chalatenango, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[4302,7572],[4228,7580],[4159,7607],[4078,7600],[3982,7645],[3945,7674],[3902,7755],[3891,7831],[3793,7947],[3766,7992],[3635,8086],[3435,8158],[3356,8117],[3232,8060],[3181,8073],[3118,8123],[3090,8066],[3028,8067],[2935,8107],[2824,8045],[2793,8049],[2736,8073],[2663,8084],[2582,8130],[2536,8139],[2451,8084],[2361,8060],[2327,7997],[2275,7983],[2141,7996],[2092,8041],[2078,8140],[2164,8434],[2249,8428],[2289,8461],[2342,8556],[2394,8579],[2477,8592],[2512,8620],[2599,8739],[2609,8778],[2606,8920],[2772,8987],[2812,9031],[2829,9123],[2887,9289],[2805,9341],[2774,9377],[2682,9435],[2642,9511],[2442,9703],[2615,9675],[2753,9609],[2981,9560],[3094,9480],[3300,9419],[3342,9457],[3407,9581],[3442,9618],[3508,9623],[3555,9569],[3587,9481],[3566,9389],[3617,9346],[3769,9328],[3840,9292],[3869,9236],[3886,9095],[3907,9054],[4020,8968],[4101,8851],[4139,8686],[4179,8658],[4222,8668],[4338,8725],[4407,8724],[4518,8654],[4612,8536],[4679,8399],[4708,8270],[4787,8282],[4983,8267],[5082,8316],[5121,8321],[5153,8268],[5149,8191],[5122,8115],[5120,8051],[5190,8005],[5286,7993],[5361,7927],[5370,7865],[5164,7834],[5071,7789],[5038,7744],[4954,7696],[4551,7565],[4434,7575],[4302,7572]]]}},{"type":"Feature","id":"SV.SA","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.51,"hc-key":"sv-sa","hc-a2":"SA","labelrank":"9","hasc":"SV.SA","alt-name":null,"woe-id":"2345302","subregion":null,"fips":"ES11","postal-code":"SA","name":"Santa Ana","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.5013","woe-name":"Santa Ana","latitude":"14.1024","woe-label":"Santa Ana, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2442,9703],[2642,9511],[2682,9435],[2774,9377],[2805,9341],[2887,9289],[2829,9123],[2812,9031],[2772,8987],[2606,8920],[2609,8778],[2599,8739],[2512,8620],[2477,8592],[2394,8579],[2342,8556],[2289,8461],[2249,8428],[2164,8434],[2078,8140],[2092,8041],[2141,7996],[2275,7983],[2327,7997],[2279,7744],[2265,7576],[2250,7549],[2174,7532],[2138,7475],[2077,7466],[2055,7425],[2052,7220],[2044,7123],[1965,6910],[1944,6782],[1731,6823],[1674,6843],[1634,6928],[1574,6983],[1480,7054],[1406,7093],[1351,7024],[1332,6936],[1284,6920],[1248,6930],[1189,7008],[1143,7043],[1186,7095],[1186,7144],[1115,7230],[1088,7281],[1015,7352],[969,7381],[876,7372],[772,7398],[863,7704],[876,7786],[812,7862],[762,7954],[644,8021],[615,8087],[624,8160],[816,8496],[905,8593],[1018,8679],[1136,8732],[1616,8846],[1645,8874],[1644,8945],[1554,9012],[1532,9133],[1506,9182],[1437,9238],[1343,9250],[1316,9315],[1387,9386],[1416,9430],[1403,9484],[1351,9581],[1381,9653],[1444,9700],[1510,9694],[1558,9645],[1571,9560],[1632,9603],[1742,9736],[1822,9769],[1892,9760],[1993,9715],[2063,9729],[2165,9833],[2211,9851],[2216,9762],[2244,9808],[2374,9714],[2442,9703]]]}},{"type":"Feature","id":"SV.AH","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.5,"hc-key":"sv-ah","hc-a2":"AH","labelrank":"9","hasc":"SV.AH","alt-name":null,"woe-id":"2345292","subregion":null,"fips":"ES01","postal-code":"AH","name":"Ahuachapán","country":"El Salvador","type-en":"Department","region":null,"longitude":"-89.9057","woe-name":"Ahuachapán","latitude":"13.8657","woe-label":"Ahuachapán, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[-282,6285],[-584,6424],[-905,6580],[-999,6889],[-989,7035],[-929,7173],[-876,7228],[-753,7293],[-697,7336],[-656,7401],[-588,7531],[-521,7589],[-90,7887],[5,7982],[53,8013],[251,8087],[317,8091],[398,8070],[514,7980],[580,7953],[645,7988],[644,8021],[762,7954],[812,7862],[876,7786],[863,7704],[772,7398],[693,7365],[540,7330],[512,7260],[523,7174],[550,7079],[458,6941],[447,6898],[489,6754],[415,6630],[409,6576],[351,6474],[317,6350],[258,6336],[95,6350],[-5,6455],[-55,6485],[-143,6471],[-200,6413],[-282,6285]]]}},{"type":"Feature","id":"SV.CA","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.46,"hc-key":"sv-ca","hc-a2":"CA","labelrank":"9","hasc":"SV.CA","alt-name":null,"woe-id":"2345293","subregion":null,"fips":"ES02","postal-code":"CA","name":"Cabañas","country":"El Salvador","type-en":"Department","region":null,"longitude":"-88.73260000000001","woe-name":"Cabañas","latitude":"13.9079","woe-label":"Cabañas, SV, El Salvador","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[6239,7131],[6211,7106],[6239,7049],[6233,6995],[6201,6949],[6153,6918],[6163,6855],[6080,6712],[6081,6710],[6080,6710],[6080,6710],[6080,6710],[6080,6710],[6008,6661],[5853,6686],[5828,6699],[5794,6762],[5664,6815],[5581,6876],[5431,6898],[5288,6896],[5235,6905],[5171,6951],[5140,6942],[5087,6886],[5029,6897],[4860,6827],[4786,6808],[4685,6831],[4664,6800],[4658,6669],[4503,6710],[4463,6734],[4357,6879],[4298,7042],[4212,7120],[4125,7243],[4092,7311],[4126,7373],[4217,7438],[4302,7572],[4434,7575],[4551,7565],[4954,7696],[5038,7744],[5071,7789],[5164,7834],[5370,7865],[5511,7885],[5624,7878],[5963,7770],[6160,7756],[6244,7699],[6213,7670],[6241,7610],[6214,7433],[6275,7269],[6278,7196],[6239,7131]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/south_america/bo-all.geo.json
const bo_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Bolivia","version":"2.1.0","type":"FeatureCollection","copyright":"Copyright (c) 2023 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:32720"}},"hc-transform":{"default":{"crs":"+proj=utm +zone=20 +south +datum=WGS84 +units=m +no_defs","scale":0.000476842949293,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":-220160.175564,"yoffset":8928847.31172}},"features":[{"type":"Feature","id":"BO.LP","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.6,"hc-key":"bo-lp","hc-a2":"LP","labelrank":"6","hasc":"BO.LP","alt-name":null,"woe-id":"2344804","subregion":null,"fips":"BL04","postal-code":"LP","name":"La Paz","country":"Bolivia","type-en":"Department","region":null,"longitude":"-68.2128","woe-name":"La Paz","latitude":"-14.8335","woe-label":"La Paz, BO, Bolivia","type":"Departamento"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-393,4444],[-530,4463],[-491,4523],[-538,4572],[-439,4533],[-407,4489],[-298,4425],[-329,4410],[-393,4444]]],[[[1166,7628],[1168,7510],[1137,7464],[1153,7391],[1111,7202],[1074,7107],[1033,7102],[989,7031],[849,6867],[803,6786],[827,6632],[747,6532],[740,6429],[700,6295],[727,6069],[682,6038],[686,5991],[746,5875],[710,5803],[791,5690],[810,5502],[910,5465],[1003,5344],[1056,5243],[1055,5171],[1325,4913],[1208,4791],[1203,4602],[1262,4525],[1264,4489],[1321,4434],[1311,4270],[1353,4184],[1359,4046],[1331,4015],[1225,3980],[1191,3914],[1164,3805],[1259,3702],[1270,3607],[1307,3463],[1192,3392],[1116,3491],[1063,3513],[944,3474],[853,3417],[594,3225],[613,3163],[554,3124],[397,3236],[266,3289],[49,3281],[-26,3249],[-143,3115],[-275,3013],[-441,2948],[-616,2994],[-646,3133],[-762,3255],[-788,3310],[-797,3463],[-868,3541],[-923,3549],[-891,3635],[-804,3698],[-739,3721],[-725,3780],[-586,3947],[-562,4010],[-441,4073],[-420,4104],[-445,4171],[-305,4134],[-311,4241],[-358,4279],[-247,4283],[-165,4377],[-89,4366],[-87,4426],[-120,4459],[-181,4453],[-266,4479],[-294,4448],[-356,4572],[-308,4582],[-248,4634],[-268,4673],[-446,4688],[-447,4777],[-517,4845],[-588,4864],[-570,4893],[-651,4890],[-672,4972],[-734,5011],[-680,5138],[-612,5225],[-564,5251],[-679,5356],[-764,5467],[-745,5612],[-671,5645],[-658,5775],[-597,5790],[-594,5851],[-457,5957],[-476,6065],[-375,6096],[-365,6142],[-405,6249],[-460,6291],[-491,6470],[-562,6539],[-500,6567],[-471,6637],[-458,6857],[-474,6954],[-480,7198],[-382,7304],[-316,7324],[-292,7368],[-334,7405],[-252,7511],[-209,7510],[-148,7588],[-82,7577],[-15,7722],[100,7797],[110,7884],[147,7919],[285,7951],[331,8002],[1166,7628]]]]}},{"type":"Feature","id":"BO.CB","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"bo-cb","hc-a2":"CB","labelrank":"6","hasc":"BO.CB","alt-name":null,"woe-id":"2344802","subregion":null,"fips":"BL02","postal-code":"CB","name":"Cochabamba","country":"Bolivia","type-en":"Department","region":null,"longitude":"-65.61369999999999","woe-name":"Cochabamba","latitude":"-17.2884","woe-label":"Cochabamba, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3279,2517],[3221,2555],[3169,2512],[3089,2512],[2995,2620],[2889,2653],[2791,2616],[2722,2522],[2584,2544],[2568,2614],[2494,2701],[2421,2744],[2362,2827],[2295,2877],[2257,2938],[2098,3067],[2029,3053],[1959,3152],[1836,3146],[1712,3049],[1557,3051],[1486,3038],[1440,3141],[1323,3297],[1192,3392],[1307,3463],[1270,3607],[1259,3702],[1164,3805],[1191,3914],[1225,3980],[1331,4015],[1359,4046],[1353,4184],[1311,4270],[1321,4434],[1264,4489],[1262,4525],[1203,4602],[1208,4791],[1325,4913],[1551,4693],[1587,4610],[1765,4414],[1861,4350],[1962,4312],[2111,4298],[2385,4380],[2460,4418],[2483,4455],[2526,4625],[2588,4744],[2611,4761],[3012,4811],[2955,4751],[2994,4686],[3010,4592],[2994,4371],[2964,4286],[2932,4258],[2941,4182],[2900,4101],[2941,3973],[3027,3874],[3129,3796],[3242,3729],[3355,3612],[3362,3533],[3272,3528],[3234,3505],[3221,3446],[3098,3261],[2989,3148],[3081,2959],[3109,2934],[3196,2792],[3209,2720],[3308,2646],[3315,2576],[3279,2517]]]}},{"type":"Feature","id":"BO.CQ","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.46,"hc-key":"bo-cq","hc-a2":"CQ","labelrank":"4","hasc":"BO.CQ","alt-name":null,"woe-id":"2344801","subregion":null,"fips":"BL01","postal-code":"CQ","name":"Chuquisaca","country":"Bolivia","type-en":"Department","region":null,"longitude":"-63.9529","woe-name":"Chuquisaca","latitude":"-20.0848","woe-label":"Chuquisaca, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2494,2701],[2568,2614],[2584,2544],[2722,2522],[2791,2616],[2889,2653],[2995,2620],[3089,2512],[3169,2512],[3221,2555],[3279,2517],[3320,2389],[3373,2347],[3390,2296],[3496,2238],[3534,2107],[3593,2100],[3645,2217],[3747,2203],[3728,2017],[3763,1452],[3777,1418],[3811,1088],[3821,1054],[3940,1048],[4040,1130],[4103,1034],[4932,1036],[4880,947],[4883,603],[3656,604],[3569,605],[3555,648],[3420,690],[3400,503],[3295,487],[3214,532],[3148,526],[3056,646],[3004,650],[2955,532],[2919,517],[2851,576],[2760,595],[2736,624],[2662,636],[2613,155],[2549,201],[2439,316],[2423,371],[2426,507],[2457,621],[2460,724],[2554,974],[2497,1190],[2494,1244],[2535,1321],[2533,1371],[2583,1411],[2733,1439],[2878,1522],[2971,1635],[2881,1769],[2874,1861],[2799,1945],[2716,1923],[2651,1926],[2543,1975],[2480,2020],[2375,2150],[2347,2211],[2401,2305],[2374,2387],[2432,2445],[2408,2487],[2275,2429],[2291,2492],[2272,2669],[2219,2745],[2369,2728],[2494,2701]]]}},{"type":"Feature","id":"BO.EB","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.6,"hc-key":"bo-eb","hc-a2":"EB","labelrank":"4","hasc":"BO.EB","alt-name":null,"woe-id":"2344803","subregion":null,"fips":"BL03","postal-code":"EB","name":"El Beni","country":"Bolivia","type-en":"Department","region":null,"longitude":"-64.5806","woe-name":"El Beni","latitude":"-14.0358","woe-label":"El Beni, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2386,9270],[2342,9208],[2354,9079],[2399,9020],[2384,8926],[2450,8883],[2464,8781],[2434,8686],[2391,8647],[2396,8566],[2447,8505],[2426,8454],[2476,8361],[2532,8351],[2558,8264],[2555,8167],[2601,8190],[2660,8159],[2716,7961],[2881,7932],[2943,7839],[3043,7783],[3143,7747],[3127,7655],[3203,7587],[3348,7574],[3404,7536],[3485,7546],[3584,7517],[3630,7574],[3680,7591],[3795,7574],[3925,7511],[4008,7420],[4069,7389],[4134,7392],[4214,7445],[4264,7430],[4285,7353],[4344,7266],[4381,7272],[4478,7155],[4575,7174],[4611,7121],[4758,7082],[4782,7044],[4892,7029],[4987,7049],[5033,7022],[5034,6955],[5121,6850],[5229,6765],[5245,6710],[5335,6704],[5449,6729],[3870,5822],[3558,5724],[3576,5647],[3581,5487],[3569,5440],[3639,5266],[3723,5137],[3768,5110],[3830,4998],[3929,4945],[3984,4821],[4054,4761],[3012,4811],[2611,4761],[2588,4744],[2526,4625],[2483,4455],[2460,4418],[2385,4380],[2111,4298],[1962,4312],[1861,4350],[1765,4414],[1587,4610],[1551,4693],[1325,4913],[1055,5171],[1056,5243],[1003,5344],[910,5465],[810,5502],[791,5690],[710,5803],[746,5875],[686,5991],[682,6038],[727,6069],[700,6295],[740,6429],[747,6532],[827,6632],[803,6786],[849,6867],[989,7031],[1033,7102],[1074,7107],[1111,7202],[1153,7391],[1137,7464],[1168,7510],[1166,7628],[1195,7758],[1203,7888],[1186,7969],[1125,8064],[1200,8109],[1187,8165],[1232,8165],[1329,8225],[1324,8284],[1374,8402],[1503,8402],[1648,8450],[1707,8510],[1686,8539],[1731,8624],[1725,8687],[1782,8701],[1802,8794],[1837,8808],[1863,8876],[1812,8898],[1889,8941],[1984,8923],[1945,8998],[1971,9036],[2015,8996],[2098,9043],[2090,9127],[2161,9121],[2280,9192],[2330,9258],[2386,9270]]]}},{"type":"Feature","id":"BO.OR","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.56,"hc-key":"bo-or","hc-a2":"OR","labelrank":"6","hasc":"BO.OR","alt-name":null,"woe-id":"2344805","subregion":null,"fips":"BL05","postal-code":"OR","name":"Oruro","country":"Bolivia","type-en":"Department","region":null,"longitude":"-67.5984","woe-name":"Oruro","latitude":"-18.7151","woe-label":"Oruro, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1192,3392],[1323,3297],[1440,3141],[1486,3038],[1401,2985],[1402,2858],[1443,2835],[1571,2825],[1460,2750],[1443,2625],[1494,2531],[1592,2460],[1752,2418],[1778,2391],[1847,2222],[1946,2105],[1956,2063],[1917,2048],[1658,2024],[1607,1998],[1516,1911],[1430,1848],[797,1553],[693,1515],[580,1526],[221,1634],[-5,1708],[44,1786],[92,1818],[55,1864],[-80,1945],[-109,1992],[-203,2073],[-286,2119],[-344,2205],[-319,2279],[-366,2370],[-395,2488],[-392,2588],[-428,2652],[-450,2787],[-496,2863],[-441,2947],[-275,3013],[-143,3115],[-26,3249],[49,3281],[266,3289],[397,3236],[554,3124],[613,3163],[594,3225],[853,3417],[944,3474],[1063,3513],[1116,3491],[1192,3392]]]}},{"type":"Feature","id":"BO.PO","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.61,"hc-key":"bo-po","hc-a2":"PO","labelrank":"4","hasc":"BO.PO","alt-name":null,"woe-id":"2344807","subregion":null,"fips":"BL07","postal-code":"PO","name":"Potosí","country":"Bolivia","type-en":"Department","region":null,"longitude":"-66.7701","woe-name":"Potosí","latitude":"-20.9033","woe-label":"Potosí, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[1486,3038],[1557,3051],[1712,3049],[1836,3146],[1959,3152],[2029,3053],[2098,3067],[2257,2938],[2295,2877],[2362,2827],[2421,2744],[2494,2701],[2369,2728],[2219,2745],[2272,2669],[2291,2492],[2275,2429],[2408,2487],[2432,2445],[2374,2387],[2401,2305],[2347,2211],[2375,2150],[2480,2020],[2543,1975],[2651,1926],[2716,1923],[2799,1945],[2874,1861],[2881,1769],[2971,1635],[2878,1522],[2733,1439],[2583,1411],[2533,1371],[2535,1321],[2494,1244],[2497,1190],[2554,974],[2460,724],[2457,621],[2426,507],[2423,371],[2439,316],[2549,201],[2613,155],[2544,-65],[2636,-182],[2653,-306],[2450,-311],[2356,-301],[2231,-325],[2185,-303],[2085,-189],[1997,-169],[1959,-100],[1847,-69],[1808,-282],[1748,-346],[1477,-432],[1443,-599],[1257,-684],[1256,-790],[1200,-838],[1141,-931],[874,-997],[704,-999],[623,-956],[608,-860],[629,-737],[557,-565],[562,-481],[528,-406],[515,-323],[431,-240],[418,-106],[342,70],[339,270],[327,306],[157,567],[85,581],[35,635],[31,741],[98,840],[-63,924],[-131,1025],[-63,1078],[-105,1159],[-105,1223],[-145,1272],[-1,1305],[32,1417],[21,1468],[-95,1556],[-90,1598],[-5,1708],[221,1634],[580,1526],[693,1515],[797,1553],[1430,1848],[1516,1911],[1607,1998],[1658,2024],[1917,2048],[1956,2063],[1946,2105],[1847,2222],[1778,2391],[1752,2418],[1592,2460],[1494,2531],[1443,2625],[1460,2750],[1571,2825],[1443,2835],[1402,2858],[1401,2985],[1486,3038]]]}},{"type":"Feature","id":"BO.SC","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.49,"hc-key":"bo-sc","hc-a2":"SC","labelrank":"6","hasc":"BO.SC","alt-name":null,"woe-id":"2344808","subregion":null,"fips":"BL08","postal-code":"SC","name":"Santa Cruz","country":"Bolivia","type-en":"Department","region":null,"longitude":"-61.137","woe-name":"Santa Cruz","latitude":"-16.5168","woe-label":"Santa Cruz, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[3279,2517],[3315,2576],[3308,2646],[3209,2720],[3196,2792],[3109,2934],[3081,2959],[2989,3148],[3098,3261],[3221,3446],[3234,3505],[3272,3528],[3362,3533],[3355,3612],[3242,3729],[3129,3796],[3027,3874],[2941,3973],[2900,4101],[2941,4182],[2932,4258],[2964,4286],[2994,4371],[3010,4592],[2994,4686],[2955,4751],[3012,4811],[4054,4761],[3984,4821],[3929,4945],[3830,4998],[3768,5110],[3723,5137],[3639,5266],[3569,5440],[3581,5487],[3576,5647],[3558,5724],[3870,5822],[5449,6729],[5556,6698],[5646,6738],[5804,6715],[5886,6760],[5906,6702],[6006,6687],[6081,6644],[6269,6507],[6343,6483],[6370,6384],[6409,6326],[6383,6254],[6344,6233],[6346,6090],[6397,6038],[6440,5915],[6419,5873],[6480,5801],[6489,5420],[6245,5420],[6286,5383],[6497,5124],[6514,5086],[6552,4497],[6591,4454],[7907,4383],[7965,4424],[8007,4415],[7990,4235],[7909,4147],[7889,4094],[7907,3965],[7896,3927],[7939,3743],[7956,3614],[8072,3560],[8243,3418],[8366,3406],[8414,3365],[8421,3250],[8462,3216],[8482,3142],[8455,3126],[8525,2997],[8588,2845],[8653,2797],[8574,2786],[8389,2254],[8431,2227],[8438,2142],[8380,2132],[8103,1589],[8108,1566],[8303,1378],[8224,1342],[8066,1233],[8081,1393],[8062,1515],[7362,1972],[6649,1977],[5284,1699],[5180,1419],[5139,1335],[4932,1036],[4103,1034],[4040,1130],[3940,1048],[3821,1054],[3811,1088],[3777,1418],[3763,1452],[3728,2017],[3747,2203],[3645,2217],[3593,2100],[3534,2107],[3496,2238],[3390,2296],[3373,2347],[3320,2389],[3279,2517]]]}},{"type":"Feature","id":"BO.TR","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.34,"hc-key":"bo-tr","hc-a2":"TR","labelrank":"7","hasc":"BO.TR","alt-name":null,"woe-id":"2344809","subregion":null,"fips":"BL09","postal-code":"TR","name":"Tarija","country":"Bolivia","type-en":"Department","region":null,"longitude":"-63.8005","woe-name":"Tarija","latitude":"-21.5039","woe-label":"Tarija, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2653,-306],[2636,-182],[2544,-65],[2613,155],[2662,636],[2736,624],[2760,595],[2851,576],[2919,517],[2955,532],[3004,650],[3056,646],[3148,526],[3214,532],[3295,487],[3400,503],[3420,690],[3555,648],[3569,605],[3656,604],[4883,603],[4880,549],[4774,194],[4590,-405],[4483,-306],[4473,-217],[3836,-212],[3759,-256],[3703,-217],[3601,-222],[3565,-284],[3523,-403],[3497,-427],[3441,-575],[3373,-660],[3341,-783],[3341,-842],[3305,-924],[3285,-815],[3220,-745],[3238,-662],[3196,-621],[3127,-500],[3149,-458],[3115,-394],[3060,-366],[2981,-364],[2927,-334],[2783,-302],[2653,-306]]]}},{"type":"Feature","id":"BO.PA","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.57,"hc-key":"bo-pa","hc-a2":"PA","labelrank":"4","hasc":"BO.PA","alt-name":"colonial territories|madre de dios|territorio nacional de colonias","woe-id":"2344806","subregion":null,"fips":"BL06","postal-code":"PA","name":"Pando","country":"Bolivia","type-en":"Department","region":null,"longitude":"-67.4319","woe-name":"Pando","latitude":"-11.273","woe-label":"Pando, BO, Bolivia","type":"Departamento"},"geometry":{"type":"Polygon","coordinates":[[[2386,9270],[2330,9258],[2280,9192],[2161,9121],[2090,9127],[2098,9043],[2015,8996],[1971,9036],[1945,8998],[1984,8923],[1889,8941],[1812,8898],[1863,8876],[1837,8808],[1802,8794],[1782,8701],[1725,8687],[1731,8624],[1686,8539],[1707,8510],[1648,8450],[1503,8402],[1374,8402],[1324,8284],[1329,8225],[1232,8165],[1187,8165],[1200,8109],[1125,8064],[1186,7969],[1203,7888],[1195,7758],[1166,7628],[331,8002],[285,7951],[147,7919],[110,7884],[100,7797],[-15,7722],[-82,7577],[-148,7588],[-209,7510],[-252,7511],[-999,8761],[-852,8779],[-768,8764],[-587,8755],[-527,8731],[-332,8726],[-354,8632],[-331,8620],[-216,8646],[-152,8689],[-65,8705],[44,8760],[198,8993],[242,9019],[389,9028],[476,8984],[504,8992],[532,9070],[612,9161],[690,9192],[753,9263],[807,9269],[810,9307],[921,9308],[1032,9367],[1161,9503],[1267,9586],[1349,9621],[1379,9660],[1524,9674],[1736,9748],[1820,9762],[1867,9743],[1919,9770],[2040,9763],[2126,9788],[2229,9723],[2335,9851],[2401,9828],[2456,9734],[2433,9651],[2441,9553],[2471,9415],[2440,9334],[2386,9270]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/africa/ng-all.geo.json
const ng_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"Nigeria","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:26392"}},"hc-transform":{"default":{"crs":"+proj=tmerc +lat_0=4 +lon_0=8.5 +k=0.99975 +x_0=670553.98 +y_0=0 +ellps=clrk80 +towgs84=-92,-93,122,0,0,0,0 +units=m +no_defs","scale":0.000531855453682,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":27017.6170862,"yoffset":1093650.26339}},"features":[{"type":"Feature","id":"NG.RI","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.55,"hc-key":"ng-ri","hc-a2":"RI","labelrank":"3","hasc":"NG.RI","alt-name":null,"woe-id":"2346344","subregion":null,"fips":"NI50","postal-code":"RI","name":"Rivers","country":"Nigeria","type-en":"State","region":null,"longitude":"6.81969","woe-name":"Rivers","latitude":"4.9979","woe-label":"Rivers, NG, Nigeria","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3348,1269],[3469,1277],[3456,1254],[3346,1233],[3262,1236],[3251,1271],[3305,1289],[3348,1269]]],[[[3171,1289],[3239,1284],[3216,1222],[3101,1184],[3061,1198],[3137,1297],[3171,1289]]],[[[3166,1924],[3179,1847],[3085,1703],[3097,1632],[3134,1620],[3245,1636],[3328,1621],[3389,1580],[3416,1532],[3423,1476],[3421,1410],[3421,1383],[3350,1339],[3220,1389],[3176,1358],[3235,1324],[3192,1296],[3109,1393],[3099,1445],[3060,1439],[3001,1527],[3025,1439],[3070,1419],[3098,1293],[3038,1247],[2975,1234],[2937,1364],[2956,1396],[2938,1490],[2895,1459],[2925,1390],[2912,1278],[2956,1199],[2907,1177],[2807,1215],[2773,1308],[2794,1409],[2755,1429],[2706,1597],[2675,1597],[2727,1441],[2775,1384],[2748,1347],[2786,1194],[2816,1165],[2728,1145],[2674,1160],[2681,1376],[2615,1423],[2594,1486],[2537,1522],[2433,1491],[2421,1547],[2373,1583],[2374,1620],[2431,1729],[2417,1808],[2470,1933],[2589,2059],[2558,2099],[2473,2107],[2458,2147],[2527,2217],[2577,2408],[2605,2384],[2635,2381],[2595,2206],[2667,2192],[2704,2152],[2684,2026],[2817,1926],[2946,1916],[3166,1924]]]]}},{"type":"Feature","id":"NG.KT","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.34,"hc-key":"ng-kt","hc-a2":"KT","labelrank":"7","hasc":"NG.KT","alt-name":null,"woe-id":"2346352","subregion":null,"fips":"NI24","postal-code":"KT","name":"Katsina","country":"Nigeria","type-en":"State","region":null,"longitude":"7.58609","woe-name":"Katsina","latitude":"12.5056","woe-label":"Katsina, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3022,9038],[3143,9148],[3256,9135],[3317,9143],[3642,9338],[3703,9354],[3930,9321],[4080,9232],[4215,9107],[4337,9097],[4467,8969],[4734,8896],[4678,8811],[4595,8756],[4511,8748],[4396,8779],[4339,8883],[4078,8883],[3982,8869],[3964,8725],[4011,8696],[4082,8694],[4112,8646],[4027,8633],[3976,8507],[3943,8476],[3785,8417],[3716,8370],[3708,8049],[3725,7927],[3762,7809],[3630,7764],[3601,7730],[3580,7642],[3594,7596],[3656,7543],[3624,7496],[3551,7466],[3443,7540],[3377,7553],[3321,7520],[3300,7458],[3175,7458],[3176,7359],[3124,7320],[3048,7373],[2950,7410],[2988,7473],[2962,7525],[2851,7553],[2877,7698],[2846,7754],[2881,7918],[2934,7942],[3019,7929],[3093,7986],[3114,8031],[3169,8034],[3159,8088],[3062,8165],[3102,8270],[3071,8417],[3047,8465],[3033,8566],[3006,8942],[3022,9038]]]}},{"type":"Feature","id":"NG.SO","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.27,"hc-key":"ng-so","hc-a2":"SO","labelrank":"7","hasc":"NG.SO","alt-name":null,"woe-id":"2346361","subregion":null,"fips":"NI51","postal-code":"SO","name":"Sokoto","country":"Nigeria","type-en":"State","region":null,"longitude":"5.4366","woe-name":"Sokoto","latitude":"13.0603","woe-label":"Sokoto, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[391,9265],[400,9504],[510,9522],[653,9654],[744,9701],[1058,9769],[1118,9730],[1430,9744],[1521,9836],[1682,9851],[2184,9645],[2282,9667],[2406,9618],[2530,9498],[2675,9337],[2746,9203],[2632,9129],[2544,9129],[2457,9151],[2429,9182],[2335,9196],[2306,9100],[2183,9101],[2116,9044],[2130,8888],[2103,8838],[2038,8815],[1836,8798],[1790,8763],[1708,8651],[1666,8622],[1660,8562],[1680,8423],[1634,8377],[1360,8368],[1228,8392],[1193,8283],[1181,7855],[1048,7867],[875,7792],[804,7730],[735,7777],[744,7864],[785,7949],[817,8091],[816,8442],[849,8499],[914,8514],[975,8493],[1015,8513],[1020,8582],[995,8730],[1017,8864],[968,8973],[1014,9160],[976,9172],[945,9127],[883,9114],[821,9151],[697,9195],[589,9277],[525,9257],[391,9265]]]}},{"type":"Feature","id":"NG.ZA","properties":{"hc-group":"admin1","hc-middle-x":0.58,"hc-middle-y":0.45,"hc-key":"ng-za","hc-a2":"ZA","labelrank":"3","hasc":"NG.ZA","alt-name":null,"woe-id":"20070150","subregion":null,"fips":"NI57","postal-code":"ZA","name":"Zamfara","country":"Nigeria","type-en":"State","region":null,"longitude":"6.12834","woe-name":"Zamfara","latitude":"12.0084","woe-label":"Zamfara, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1181,7855],[1193,8283],[1228,8392],[1360,8368],[1634,8377],[1680,8423],[1660,8562],[1666,8622],[1708,8651],[1790,8763],[1836,8798],[2038,8815],[2103,8838],[2130,8888],[2116,9044],[2183,9101],[2306,9100],[2335,9196],[2429,9182],[2457,9151],[2544,9129],[2632,9129],[2746,9203],[2821,9101],[2882,9049],[3022,9038],[3006,8942],[3033,8566],[3047,8465],[3071,8417],[3102,8270],[3062,8165],[3159,8088],[3169,8034],[3114,8031],[3093,7986],[3019,7929],[2934,7942],[2881,7918],[2846,7754],[2877,7698],[2851,7553],[2754,7469],[2708,7336],[2657,7280],[2482,7230],[2364,7258],[2259,7159],[2254,7123],[2199,7098],[2186,7159],[2080,7326],[2073,7465],[2005,7575],[1953,7617],[1981,7748],[1939,7790],[1838,7813],[1672,7794],[1541,7841],[1507,7885],[1396,7888],[1373,7851],[1288,7830],[1181,7855]]]}},{"type":"Feature","id":"NG.YO","properties":{"hc-group":"admin1","hc-middle-x":0.69,"hc-middle-y":0.52,"hc-key":"ng-yo","hc-a2":"YO","labelrank":"3","hasc":"NG.YO","alt-name":null,"woe-id":"2346372","subregion":null,"fips":"NI44","postal-code":"YO","name":"Yobe","country":"Nigeria","type-en":"State","region":null,"longitude":"11.5881","woe-name":"Yobe","latitude":"12.3156","woe-label":"Yobe, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[5334,8886],[5486,9068],[5551,9111],[5585,9175],[5791,9287],[6249,9389],[6335,9397],[6497,9379],[6933,9386],[7204,9321],[7303,9282],[7488,9167],[7541,9155],[7617,9177],[7729,9136],[7783,9137],[7765,8960],[7782,8902],[7871,8823],[7879,8767],[7819,8656],[7721,8561],[7742,8425],[7705,8117],[7723,7985],[7666,7842],[7757,7828],[7805,7733],[7715,7619],[7636,7495],[7638,7341],[7611,7278],[7555,7235],[7343,7158],[7293,7101],[7279,6920],[7195,6860],[7098,6862],[7083,6954],[7092,7164],[7067,7219],[6877,7424],[6819,7468],[6694,7527],[6570,7493],[6502,7531],[6532,7672],[6526,7749],[6416,8014],[6387,8160],[6380,8263],[6343,8327],[6310,8502],[6197,8592],[6160,8780],[6107,8857],[5982,8880],[5884,8868],[5851,8982],[5791,9029],[5623,8972],[5545,8934],[5521,8886],[5443,8852],[5334,8886]]]}},{"type":"Feature","id":"NG.KE","properties":{"hc-group":"admin1","hc-middle-x":0.26,"hc-middle-y":0.35,"hc-key":"ng-ke","hc-a2":"KE","labelrank":"3","hasc":"NG.KE","alt-name":null,"woe-id":"2346368","subregion":null,"fips":"NI40","postal-code":"KE","name":"Kebbi","country":"Nigeria","type-en":"State","region":null,"longitude":"4.06548","woe-name":"Kebbi","latitude":"11.7712","woe-label":"Kebbi, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1181,7855],[1288,7830],[1373,7851],[1396,7888],[1507,7885],[1541,7841],[1672,7794],[1838,7813],[1939,7790],[1981,7748],[1953,7617],[2005,7575],[2073,7465],[2080,7326],[2020,7342],[1951,7274],[1889,7264],[1732,7199],[1582,7190],[1547,7230],[1552,7336],[1478,7444],[1466,7512],[1413,7545],[1348,7548],[1081,7497],[956,7443],[941,7386],[1062,7314],[1158,7295],[1202,7263],[1222,7163],[1178,7109],[1234,7002],[1084,6937],[993,6937],[977,6876],[981,6745],[1050,6627],[1027,6567],[970,6539],[832,6507],[810,6415],[727,6439],[748,6572],[705,6612],[695,6746],[730,6804],[836,6862],[868,6913],[901,7149],[843,7167],[734,7240],[643,7266],[549,7253],[255,7256],[75,7356],[-15,7360],[-53,7381],[-211,7612],[-225,7658],[-189,7762],[-124,7867],[-40,7945],[-90,8027],[-94,8079],[-48,8153],[-73,8252],[-45,8411],[-46,8649],[153,8792],[212,8847],[359,9069],[391,9265],[525,9257],[589,9277],[697,9195],[821,9151],[883,9114],[945,9127],[976,9172],[1014,9160],[968,8973],[1017,8864],[995,8730],[1020,8582],[1015,8513],[975,8493],[914,8514],[849,8499],[816,8442],[817,8091],[785,7949],[744,7864],[735,7777],[804,7730],[875,7792],[1048,7867],[1181,7855]]]}},{"type":"Feature","id":"NG.AD","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.38,"hc-key":"ng-ad","hc-a2":"AD","labelrank":"3","hasc":"NG.AD","alt-name":null,"woe-id":"2346363","subregion":null,"fips":"NI35","postal-code":"AD","name":"Adamawa","country":"Nigeria","type-en":"State","region":null,"longitude":"12.5768","woe-name":"Adamawa","latitude":"9.479060000000001","woe-label":"Adamawa, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[9043,7204],[8881,6960],[8824,6792],[8769,6477],[8702,6428],[8601,6407],[8601,6310],[8572,6215],[8618,6153],[8585,5980],[8560,5915],[8368,5851],[8259,5765],[8294,5692],[8285,5623],[8226,5503],[8233,5433],[8214,5261],[8185,5194],[8137,5191],[8084,5102],[7991,5052],[7922,5067],[7819,5054],[7852,4951],[7797,4892],[7713,4878],[7692,4848],[7703,4694],[7659,4603],[7669,4473],[7541,4297],[7500,4198],[7515,4126],[7405,3994],[7370,4089],[7357,4211],[7313,4316],[7201,4425],[7140,4426],[7078,4353],[7049,4355],[6987,4446],[6946,4543],[6955,4571],[7063,4683],[7296,4966],[7356,5017],[7366,5144],[7455,5333],[7449,5396],[7353,5469],[7321,5522],[7325,5586],[7267,5706],[7214,5753],[7131,5787],[7046,5943],[7129,5958],[7205,5992],[7372,6094],[7419,6160],[7422,6360],[7568,6354],[7682,6436],[7774,6559],[7825,6603],[7964,6627],[8029,6657],[8070,6718],[8126,6737],[8226,6844],[8300,6862],[8440,6827],[8544,6750],[8606,6737],[8651,6763],[8682,6885],[8730,7009],[8746,7188],[8859,7168],[9043,7204]]]}},{"type":"Feature","id":"NG.BO","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.43,"hc-key":"ng-bo","hc-a2":"BO","labelrank":"3","hasc":"NG.BO","alt-name":null,"woe-id":"2346355","subregion":null,"fips":"NI27","postal-code":"BO","name":"Borno","country":"Nigeria","type-en":"State","region":null,"longitude":"13.1533","woe-name":"Borno","latitude":"12.0019","woe-label":"Borno, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[9043,7204],[8859,7168],[8746,7188],[8730,7009],[8682,6885],[8651,6763],[8606,6737],[8544,6750],[8440,6827],[8300,6862],[8226,6844],[8126,6737],[8070,6718],[8029,6657],[7964,6627],[7825,6603],[7774,6559],[7682,6436],[7568,6354],[7422,6360],[7357,6400],[7295,6498],[7188,6558],[7140,6632],[7142,6672],[7207,6780],[7195,6860],[7279,6920],[7293,7101],[7343,7158],[7555,7235],[7611,7278],[7638,7341],[7636,7495],[7715,7619],[7805,7733],[7757,7828],[7666,7842],[7723,7985],[7705,8117],[7742,8425],[7721,8561],[7819,8656],[7879,8767],[7871,8823],[7782,8902],[7765,8960],[7783,9137],[7860,9125],[7915,9200],[7937,9289],[8082,9364],[8210,9494],[8185,9519],[8272,9526],[8351,9568],[8529,9579],[8561,9662],[8644,9734],[8865,9729],[9288,9164],[9400,8679],[9405,8533],[9439,8509],[9625,8508],[9708,8482],[9740,8408],[9802,8352],[9851,8342],[9795,8216],[9814,8112],[9787,7989],[9749,7929],[9818,7849],[9796,7726],[9664,7645],[9594,7618],[9515,7542],[9413,7482],[9247,7513],[9150,7411],[9104,7321],[9046,7272],[9043,7204]]]}},{"type":"Feature","id":"NG.AK","properties":{"hc-group":"admin1","hc-middle-x":0.38,"hc-middle-y":0.61,"hc-key":"ng-ak","hc-a2":"AK","labelrank":"3","hasc":"NG.AK","alt-name":null,"woe-id":"2346349","subregion":null,"fips":"NI21","postal-code":"AK","name":"Akwa Ibom","country":"Nigeria","type-en":"State","region":null,"longitude":"7.90963","woe-name":"Akwa Ibom","latitude":"4.89926","woe-label":"Akwa Ibom, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3389,1580],[3359,1730],[3409,1793],[3426,1972],[3416,2025],[3530,2047],[3504,2088],[3528,2150],[3522,2212],[3581,2224],[3657,2145],[3756,2079],[3730,2050],[3774,1980],[3851,1983],[3907,1941],[3900,1829],[3970,1687],[4077,1575],[4123,1548],[4176,1405],[4105,1333],[3879,1344],[3596,1301],[3446,1314],[3421,1410],[3419,1417],[3423,1476],[3416,1532],[3389,1580]]]}},{"type":"Feature","id":"NG.AB","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.3,"hc-key":"ng-ab","hc-a2":"AB","labelrank":"3","hasc":"NG.AB","alt-name":null,"woe-id":"2346362","subregion":null,"fips":"NI45","postal-code":"AB","name":"Abia","country":"Nigeria","type-en":"State","region":null,"longitude":"7.56019","woe-name":"Abia","latitude":"5.57402","woe-label":"Abia, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3756,2079],[3657,2145],[3581,2224],[3522,2212],[3528,2150],[3504,2088],[3530,2047],[3416,2025],[3426,1972],[3409,1793],[3359,1730],[3389,1580],[3328,1621],[3245,1636],[3134,1620],[3097,1632],[3085,1703],[3179,1847],[3166,1924],[3233,2116],[3307,2242],[3286,2358],[3303,2412],[3292,2514],[3166,2591],[3209,2645],[3270,2677],[3365,2678],[3425,2633],[3418,2522],[3472,2494],[3605,2493],[3654,2470],[3675,2410],[3739,2375],[3766,2187],[3811,2103],[3756,2079]]]}},{"type":"Feature","id":"NG.IM","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.5,"hc-key":"ng-im","hc-a2":"IM","labelrank":"3","hasc":"NG.IM","alt-name":null,"woe-id":"2346356","subregion":null,"fips":"NI28","postal-code":"IM","name":"Imo","country":"Nigeria","type-en":"State","region":null,"longitude":"7.01557","woe-name":"Imo","latitude":"5.55004","woe-label":"Imo, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3166,2591],[3292,2514],[3303,2412],[3286,2358],[3307,2242],[3233,2116],[3166,1924],[2946,1916],[2817,1926],[2684,2026],[2704,2152],[2667,2192],[2595,2206],[2635,2381],[2696,2430],[2767,2449],[2842,2442],[2891,2554],[3008,2589],[3091,2571],[3166,2591]]]}},{"type":"Feature","id":"NG.BY","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.64,"hc-key":"ng-by","hc-a2":"BY","labelrank":"3","hasc":"NG.BY","alt-name":null,"woe-id":"20070152","subregion":null,"fips":"NI52","postal-code":"BY","name":"Bayelsa","country":"Nigeria","type-en":"State","region":null,"longitude":"5.97421","woe-name":"Bayelsa","latitude":"4.73907","woe-label":"Bayelsa, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2681,1376],[2662,1331],[2655,1222],[2637,1322],[2624,1248],[2655,1153],[2585,1138],[2565,1276],[2540,1142],[2495,1131],[2417,1154],[2399,1131],[2267,1104],[2245,1130],[2324,1235],[2230,1191],[2192,1094],[2107,1091],[2115,1179],[2059,1217],[2075,1107],[2016,1129],[2003,1218],[1970,1144],[1820,1255],[1649,1420],[1628,1505],[1588,1530],[1540,1613],[1464,1878],[1528,1874],[1693,1778],[1745,1776],[1810,1815],[1932,1848],[1974,1896],[2043,1849],[2109,1889],[2150,1886],[2219,1926],[2214,1980],[2286,1990],[2342,2062],[2460,2079],[2473,2107],[2558,2099],[2589,2059],[2470,1933],[2417,1808],[2431,1729],[2374,1620],[2373,1583],[2421,1547],[2433,1491],[2537,1522],[2594,1486],[2615,1423],[2681,1376]]]}},{"type":"Feature","id":"NG.BE","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.47,"hc-key":"ng-be","hc-a2":"BE","labelrank":"3","hasc":"NG.BE","alt-name":null,"woe-id":"2346354","subregion":null,"fips":"NI26","postal-code":"BE","name":"Benue","country":"Nigeria","type-en":"State","region":null,"longitude":"8.70736","woe-name":"Benue","latitude":"7.48719","woe-label":"Benue, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[5350,3134],[5312,3128],[5263,3062],[5208,3039],[5164,3116],[5055,3243],[4974,3284],[4831,3257],[4737,3276],[4723,3378],[4613,3442],[4485,3470],[4427,3448],[4407,3358],[4338,3332],[4226,3337],[4117,3273],[4078,3362],[3994,3350],[3960,3305],[3850,3292],[3827,3185],[3786,3131],[3724,3169],[3694,3232],[3725,3317],[3716,3405],[3655,3460],[3595,3431],[3524,3444],[3435,3528],[3391,3638],[3494,3575],[3535,3660],[3656,3725],[3694,3788],[3713,3890],[3742,3948],[3655,3976],[3630,4120],[3633,4226],[3611,4291],[3558,4358],[3549,4504],[3824,4448],[4119,4349],[4232,4275],[4238,4322],[4174,4481],[4189,4545],[4240,4588],[4359,4602],[4609,4527],[4742,4531],[4915,4403],[4865,4328],[4876,4308],[5002,4349],[5142,4353],[5281,4338],[5384,4267],[5466,4166],[5559,4083],[5600,3978],[5564,3868],[5558,3761],[5473,3691],[5408,3592],[5379,3433],[5372,3222],[5350,3134]]]}},{"type":"Feature","id":"NG.CR","properties":{"hc-group":"admin1","hc-middle-x":0.44,"hc-middle-y":0.43,"hc-key":"ng-cr","hc-a2":"CR","labelrank":"3","hasc":"NG.CR","alt-name":null,"woe-id":"2346350","subregion":null,"fips":"NI22","postal-code":"CR","name":"Cross River","country":"Nigeria","type-en":"State","region":null,"longitude":"8.67873","woe-name":"Cross River","latitude":"5.93762","woe-label":"Cross River, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4123,1548],[4077,1575],[3970,1687],[3900,1829],[3907,1941],[3851,1983],[3774,1980],[3730,2050],[3756,2079],[3811,2103],[3766,2187],[3739,2375],[3777,2454],[3775,2497],[3820,2559],[3827,2651],[3898,2653],[3916,2612],[3999,2648],[4025,2686],[4075,2674],[4108,2766],[4197,2872],[4194,2991],[4251,3023],[4215,3129],[4130,3223],[4117,3273],[4226,3337],[4338,3332],[4407,3358],[4427,3448],[4485,3470],[4613,3442],[4723,3378],[4737,3276],[4831,3257],[4974,3284],[5055,3243],[5164,3116],[5208,3039],[5148,2967],[5061,2930],[5012,2843],[4887,2742],[4753,2600],[4747,2563],[4692,2570],[4632,2518],[4637,2432],[4598,2387],[4666,2313],[4672,2266],[4627,2214],[4626,2140],[4595,2059],[4604,2015],[4580,1891],[4543,1869],[4497,1780],[4400,1638],[4409,1593],[4370,1585],[4324,1476],[4289,1520],[4224,1517],[4224,1576],[4177,1561],[4132,1629],[4060,1686],[4123,1548]]]}},{"type":"Feature","id":"NG.TA","properties":{"hc-group":"admin1","hc-middle-x":0.62,"hc-middle-y":0.56,"hc-key":"ng-ta","hc-a2":"TA","labelrank":"3","hasc":"NG.TA","alt-name":null,"woe-id":"2346371","subregion":null,"fips":"NI43","postal-code":"TA","name":"Taraba","country":"Nigeria","type-en":"State","region":null,"longitude":"10.5428","woe-name":"Taraba","latitude":"7.93608","woe-label":"Taraba, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[5350,3134],[5372,3222],[5379,3433],[5408,3592],[5473,3691],[5558,3761],[5564,3868],[5600,3978],[5559,4083],[5466,4166],[5384,4267],[5281,4338],[5142,4353],[5002,4349],[4876,4308],[4865,4328],[4915,4403],[5097,4534],[5085,4637],[5037,4698],[5065,4770],[5258,4739],[5319,4802],[5437,4804],[5503,4822],[5614,4921],[5738,5000],[5875,5165],[6085,5217],[6228,5288],[6259,5347],[6251,5493],[6202,5632],[6198,5758],[6172,5850],[6220,5881],[6335,5886],[6446,5938],[6506,5949],[6631,5935],[6728,5928],[7046,5943],[7131,5787],[7214,5753],[7267,5706],[7325,5586],[7321,5522],[7353,5469],[7449,5396],[7455,5333],[7366,5144],[7356,5017],[7296,4966],[7063,4683],[6955,4571],[6946,4543],[6987,4446],[7049,4355],[7078,4353],[7140,4426],[7201,4425],[7313,4316],[7357,4211],[7370,4089],[7405,3994],[7254,3819],[7294,3799],[7387,3673],[7321,3645],[7260,3577],[7212,3567],[7097,3465],[7076,3417],[7107,3365],[7051,3224],[6966,3186],[6942,3097],[6878,3063],[6715,3056],[6675,3073],[6641,3186],[6637,3302],[6588,3363],[6503,3378],[6473,3406],[6431,3524],[6222,3626],[6200,3692],[6163,3529],[6125,3458],[5891,3454],[5837,3494],[5823,3561],[5782,3566],[5559,3377],[5464,3364],[5394,3143],[5350,3134]]]}},{"type":"Feature","id":"NG.KW","properties":{"hc-group":"admin1","hc-middle-x":0.64,"hc-middle-y":0.69,"hc-key":"ng-kw","hc-a2":"KW","labelrank":"3","hasc":"NG.KW","alt-name":null,"woe-id":"2346358","subregion":null,"fips":"NI30","postal-code":"KW","name":"Kwara","country":"Nigeria","type-en":"State","region":null,"longitude":"4.46906","woe-name":"Kwara","latitude":"8.804449999999999","woe-label":"Kwara, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[-926,5000],[-940,5225],[-913,5261],[-914,5347],[-894,5485],[-812,5479],[-785,5500],[-699,5485],[-637,5500],[-600,5544],[-543,5691],[-562,5821],[-540,5874],[-455,5961],[-453,6006],[-404,6006],[-368,6045],[-386,6141],[-363,6169],[-261,6204],[-207,6197],[-127,6308],[-114,6400],[-66,6453],[19,6467],[164,6470],[251,6439],[551,6076],[610,6055],[624,5993],[612,5852],[641,5801],[787,5796],[796,5707],[902,5660],[910,5563],[952,5536],[1116,5590],[1257,5519],[1312,5420],[1423,5394],[1484,5397],[1545,5355],[1621,5338],[1722,5241],[1809,5229],[1849,5169],[1972,5161],[2123,5179],[2185,5142],[2235,5152],[2196,5103],[2143,4882],[2116,4834],[1860,4858],[1679,4914],[1598,4974],[1452,4809],[1472,4727],[1546,4646],[1607,4608],[1613,4553],[1516,4551],[1463,4518],[1447,4468],[1334,4470],[1274,4508],[1217,4491],[1183,4521],[1118,4518],[1072,4568],[839,4524],[721,4529],[679,4560],[621,4700],[544,4783],[515,4906],[483,4955],[404,5134],[405,5245],[525,5371],[510,5407],[465,5380],[374,5396],[266,5435],[192,5487],[146,5561],[61,5577],[20,5548],[-13,5444],[-52,5411],[-240,5319],[-358,5242],[-466,5195],[-556,5216],[-764,5059],[-872,5045],[-926,5000]]]}},{"type":"Feature","id":"NG.LA","properties":{"hc-group":"admin1","hc-middle-x":0.71,"hc-middle-y":0.48,"hc-key":"ng-la","hc-a2":"LA","labelrank":"7","hasc":"NG.LA","alt-name":null,"woe-id":"2346342","subregion":null,"fips":"NI05","postal-code":"LA","name":"Lagos","country":"Nigeria","type-en":"State","region":null,"longitude":"3.52478","woe-name":"Lagos","latitude":"6.43313","woe-label":"Lagos, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[512,3010],[315,3048],[81,3070],[-309,3054],[-363,3086],[-219,3094],[-192,3144],[-34,3177],[-16,3211],[71,3226],[-5,3245],[-106,3198],[-243,3160],[-276,3174],[-273,3229],[-346,3184],[-377,3091],[-364,3043],[-519,3044],[-640,3031],[-782,3040],[-987,3023],[-979,3120],[-865,3112],[-813,3165],[-614,3154],[-560,3161],[-488,3314],[-459,3325],[-376,3269],[-325,3270],[-303,3307],[231,3305],[286,3290],[245,3226],[281,3171],[337,3203],[393,3200],[394,3161],[342,3111],[416,3069],[515,3062],[512,3010]]]}},{"type":"Feature","id":"NG.NI","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.47,"hc-key":"ng-ni","hc-a2":"NI","labelrank":"3","hasc":"NG.NI","alt-name":null,"woe-id":"2346359","subregion":null,"fips":"NI31","postal-code":"NI","name":"Niger","country":"Nigeria","type-en":"State","region":null,"longitude":"5.45494","woe-name":"Niger","latitude":"9.95553","woe-label":"Niger, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[-15,7360],[75,7356],[255,7256],[549,7253],[643,7266],[734,7240],[843,7167],[901,7149],[868,6913],[836,6862],[730,6804],[695,6746],[705,6612],[748,6572],[727,6439],[810,6415],[832,6507],[970,6539],[1027,6567],[1050,6627],[981,6745],[977,6876],[993,6937],[1084,6937],[1234,7002],[1178,7109],[1222,7163],[1202,7263],[1158,7295],[1062,7314],[941,7386],[956,7443],[1081,7497],[1348,7548],[1413,7545],[1466,7512],[1478,7444],[1552,7336],[1547,7230],[1582,7190],[1732,7199],[1889,7264],[1951,7274],[2020,7342],[2080,7326],[2186,7159],[2199,7098],[2155,7047],[2165,6901],[2135,6752],[2207,6640],[2238,6644],[2328,6751],[2436,6832],[2500,6846],[2564,6796],[2630,6826],[2699,6826],[2715,6877],[2805,6875],[2818,6784],[2864,6789],[2914,6746],[2922,6621],[3013,6579],[2989,6519],[2854,6403],[2894,6350],[2959,6322],[3160,6316],[3203,6285],[3218,6106],[3147,6069],[3217,6019],[3256,5928],[3147,5774],[3192,5718],[3185,5663],[3230,5665],[3102,5484],[3054,5507],[2969,5589],[2915,5607],[2747,5601],[2721,5565],[2727,4914],[2754,4859],[2795,4854],[2723,4772],[2664,4673],[2556,4807],[2460,4879],[2375,5106],[2291,5158],[2235,5152],[2185,5142],[2123,5179],[1972,5161],[1849,5169],[1809,5229],[1722,5241],[1621,5338],[1545,5355],[1484,5397],[1423,5394],[1312,5420],[1257,5519],[1116,5590],[952,5536],[910,5563],[902,5660],[796,5707],[787,5796],[641,5801],[612,5852],[624,5993],[610,6055],[551,6076],[251,6439],[164,6470],[19,6467],[-66,6453],[-65,6484],[-147,6598],[-73,6734],[22,6705],[97,6882],[86,6976],[50,6990],[4,7089],[26,7164],[-15,7360]]]}},{"type":"Feature","id":"NG.FC","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.56,"hc-key":"ng-fc","hc-a2":"FC","labelrank":"3","hasc":"NG.FC","alt-name":"Abuja","woe-id":"2346345","subregion":null,"fips":"NI11","postal-code":"FC","name":"Federal Capital Territory","country":"Nigeria","type-en":"State","region":null,"longitude":"7.18889","woe-name":"Federal Capital Territory","latitude":"8.78852","woe-label":"Abuja Capital Territory, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2795,4854],[2754,4859],[2727,4914],[2721,5565],[2747,5601],[2915,5607],[2969,5589],[3054,5507],[3102,5484],[3230,5665],[3316,5674],[3389,5659],[3438,5713],[3515,5676],[3476,5600],[3455,5503],[3456,5357],[3413,5173],[3373,5064],[3302,4969],[3185,4912],[3056,4878],[2925,4858],[2885,4852],[2795,4854]]]}},{"type":"Feature","id":"NG.OG","properties":{"hc-group":"admin1","hc-middle-x":0.39,"hc-middle-y":0.56,"hc-key":"ng-og","hc-a2":"OG","labelrank":"3","hasc":"NG.OG","alt-name":null,"woe-id":"2346346","subregion":null,"fips":"NI16","postal-code":"OG","name":"Ogun","country":"Nigeria","type-en":"State","region":null,"longitude":"3.29255","woe-name":"Ogun","latitude":"7.01845","woe-label":"Ogun, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[650,2964],[570,2999],[512,3010],[515,3062],[416,3069],[342,3111],[394,3161],[393,3200],[337,3203],[281,3171],[245,3226],[286,3290],[231,3305],[-303,3307],[-325,3270],[-376,3269],[-459,3325],[-488,3314],[-560,3161],[-614,3154],[-813,3165],[-865,3112],[-979,3120],[-955,3196],[-959,3273],[-915,3325],[-918,3367],[-965,3418],[-952,3476],[-970,3583],[-914,3629],[-950,3695],[-925,3749],[-942,3975],[-903,3985],[-894,4038],[-958,4139],[-950,4328],[-999,4420],[-913,4478],[-825,4474],[-802,4431],[-799,4328],[-758,4274],[-735,4361],[-700,4361],[-696,4281],[-731,4188],[-713,4121],[-645,4051],[-605,3975],[-542,3916],[-441,3900],[-404,3931],[-366,4022],[-328,4047],[-253,3961],[-198,3987],[-107,3984],[-76,3939],[-75,3872],[-22,3838],[2,3722],[-58,3634],[110,3644],[276,3691],[341,3721],[367,3641],[481,3668],[537,3568],[703,3591],[717,3573],[695,3454],[549,3324],[526,3236],[551,3203],[642,3189],[720,3245],[744,3113],[670,3052],[626,3042],[719,3002],[706,2960],[650,2964]]]}},{"type":"Feature","id":"NG.ON","properties":{"hc-group":"admin1","hc-middle-x":0.31,"hc-middle-y":0.46,"hc-key":"ng-on","hc-a2":"ON","labelrank":"3","hasc":"NG.ON","alt-name":null,"woe-id":"2346347","subregion":null,"fips":"NI48","postal-code":"ON","name":"Ondo","country":"Nigeria","type-en":"State","region":null,"longitude":"5.19165","woe-name":"Ondo","latitude":"7.1444","woe-label":"Ondo, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1113,2535],[1007,2674],[953,2707],[854,2819],[650,2964],[706,2960],[719,3002],[626,3042],[670,3052],[744,3113],[720,3245],[642,3189],[551,3203],[526,3236],[549,3324],[695,3454],[717,3573],[752,3591],[799,3676],[874,3716],[965,3666],[999,3671],[1003,3805],[1027,3891],[1112,3923],[1113,3960],[1177,3980],[1376,3976],[1422,3962],[1462,3854],[1514,3834],[1610,3914],[1661,4029],[1690,4142],[1798,4242],[1862,4266],[1935,4278],[2002,4160],[2058,4098],[1972,4024],[1990,3975],[1988,3848],[1918,3784],[1872,3645],[1835,3604],[1837,3501],[1804,3465],[1785,3384],[1742,3338],[1675,3358],[1609,3319],[1586,3379],[1610,3428],[1569,3461],[1313,3463],[1188,3292],[1181,3221],[1225,3136],[1168,3016],[1125,2998],[1094,2927],[1161,2854],[1201,2838],[1217,2783],[1114,2536],[1113,2535]]]}},{"type":"Feature","id":"NG.EK","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.44,"hc-key":"ng-ek","hc-a2":"EK","labelrank":"7","hasc":"NG.EK","alt-name":null,"woe-id":"20070151","subregion":null,"fips":"NI51","postal-code":"EK","name":"Ekiti","country":"Nigeria","type-en":"State","region":null,"longitude":"5.35929","woe-name":"Ekiti","latitude":"7.67104","woe-label":"Ekiti, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1183,4521],[1217,4491],[1274,4508],[1334,4470],[1447,4468],[1463,4518],[1516,4551],[1613,4553],[1596,4490],[1704,4508],[1733,4475],[1686,4431],[1692,4353],[1722,4326],[1862,4266],[1798,4242],[1690,4142],[1661,4029],[1610,3914],[1514,3834],[1462,3854],[1422,3962],[1376,3976],[1177,3980],[1113,3960],[1042,4154],[1056,4351],[1162,4447],[1183,4521]]]}},{"type":"Feature","id":"NG.OS","properties":{"hc-group":"admin1","hc-middle-x":0.52,"hc-middle-y":0.51,"hc-key":"ng-os","hc-a2":"OS","labelrank":"3","hasc":"NG.OS","alt-name":null,"woe-id":"2346370","subregion":null,"fips":"NI42","postal-code":"OS","name":"Osun","country":"Nigeria","type-en":"State","region":null,"longitude":"4.54911","woe-name":"Osun","latitude":"7.47613","woe-label":"Osun, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1183,4521],[1162,4447],[1056,4351],[1042,4154],[1113,3960],[1112,3923],[1027,3891],[1003,3805],[999,3671],[965,3666],[874,3716],[799,3676],[752,3591],[717,3573],[703,3591],[537,3568],[481,3668],[367,3641],[341,3721],[276,3691],[342,4021],[285,4123],[241,4160],[291,4363],[353,4346],[454,4458],[507,4424],[540,4370],[577,4362],[725,4466],[721,4529],[839,4524],[1072,4568],[1118,4518],[1183,4521]]]}},{"type":"Feature","id":"NG.OY","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.47,"hc-key":"ng-oy","hc-a2":"OY","labelrank":"3","hasc":"NG.OY","alt-name":null,"woe-id":"2346360","subregion":null,"fips":"NI32","postal-code":"OY","name":"Oyo","country":"Nigeria","type-en":"State","region":null,"longitude":"3.61681","woe-name":"Oyo","latitude":"8.189690000000001","woe-label":"Oyo, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[721,4529],[725,4466],[577,4362],[540,4370],[507,4424],[454,4458],[353,4346],[291,4363],[241,4160],[285,4123],[342,4021],[276,3691],[110,3644],[-58,3634],[2,3722],[-22,3838],[-75,3872],[-76,3939],[-107,3984],[-198,3987],[-253,3961],[-328,4047],[-366,4022],[-404,3931],[-441,3900],[-542,3916],[-605,3975],[-645,4051],[-713,4121],[-731,4188],[-696,4281],[-700,4361],[-735,4361],[-758,4274],[-799,4328],[-802,4431],[-825,4474],[-913,4478],[-999,4420],[-984,4457],[-962,4644],[-937,4711],[-970,4811],[-963,4900],[-926,5000],[-872,5045],[-764,5059],[-556,5216],[-466,5195],[-358,5242],[-240,5319],[-52,5411],[-13,5444],[20,5548],[61,5577],[146,5561],[192,5487],[266,5435],[374,5396],[465,5380],[510,5407],[525,5371],[405,5245],[404,5134],[483,4955],[515,4906],[544,4783],[621,4700],[679,4560],[721,4529]]]}},{"type":"Feature","id":"NG.AN","properties":{"hc-group":"admin1","hc-middle-x":0.48,"hc-middle-y":0.5,"hc-key":"ng-an","hc-a2":"AN","labelrank":"3","hasc":"NG.AN","alt-name":null,"woe-id":"2346353","subregion":null,"fips":"NI25","postal-code":"AN","name":"Anambra","country":"Nigeria","type-en":"State","region":null,"longitude":"6.98472","woe-name":"Anambra","latitude":"6.30827","woe-label":"Anambra, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3270,2677],[3209,2645],[3166,2591],[3091,2571],[3008,2589],[2891,2554],[2842,2442],[2767,2449],[2696,2430],[2635,2381],[2605,2384],[2577,2408],[2596,2495],[2650,2574],[2668,2729],[2707,2753],[2720,2812],[2698,2873],[2648,3092],[2645,3148],[2720,3147],[2750,3177],[2792,3309],[2854,3367],[2861,3312],[2922,3308],[3031,3268],[3027,3206],[2976,3152],[2959,3061],[3017,3041],[3072,2932],[3055,2876],[3089,2878],[3180,2697],[3270,2677]]]}},{"type":"Feature","id":"NG.BA","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.72,"hc-key":"ng-ba","hc-a2":"BA","labelrank":"7","hasc":"NG.BA","alt-name":null,"woe-id":"2346343","subregion":null,"fips":"NI46","postal-code":"BA","name":"Bauchi","country":"Nigeria","type-en":"State","region":null,"longitude":"9.88584","woe-name":"Bauchi","latitude":"10.4101","woe-label":"Bauchi, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6631,5935],[6506,5949],[6446,5938],[6335,5886],[6220,5881],[6172,5850],[5992,5954],[5548,6157],[5494,6121],[5542,6040],[5533,6010],[5451,5967],[5425,5911],[5357,5890],[5214,5882],[5030,5923],[4958,6025],[4903,6057],[4942,6163],[4919,6300],[4861,6321],[4756,6302],[4723,6325],[4724,6470],[4701,6565],[4669,6605],[4564,6609],[4484,6690],[4524,6804],[4591,6909],[4585,6972],[4518,7090],[4521,7235],[4548,7292],[4634,7310],[4785,7485],[4874,7497],[4959,7528],[5014,7527],[5124,7489],[5237,7494],[5318,7434],[5486,7456],[5546,7365],[5539,7247],[5560,7197],[5612,7176],[5754,7187],[5820,7158],[5853,7269],[5952,7308],[6009,7382],[5723,7432],[5657,7458],[5533,7637],[5488,7632],[5474,7687],[5503,7742],[5488,7839],[5443,7876],[5356,7856],[5318,7882],[5336,7950],[5384,7993],[5460,8000],[5519,8033],[5792,8139],[5804,8237],[5889,8499],[6004,8542],[6079,8513],[6197,8592],[6310,8502],[6343,8327],[6380,8263],[6387,8160],[6416,8014],[6526,7749],[6532,7672],[6502,7531],[6570,7493],[6516,7436],[6432,7386],[6360,7304],[6265,7260],[6194,7050],[6145,6958],[6242,6918],[6281,6783],[6404,6717],[6423,6663],[6423,6482],[6321,6429],[6354,6346],[6541,6209],[6569,6150],[6591,6034],[6631,5935]]]}},{"type":"Feature","id":"NG.GO","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.46,"hc-key":"ng-go","hc-a2":"GO","labelrank":"3","hasc":"NG.GO","alt-name":null,"woe-id":"20070155","subregion":null,"fips":"NI55","postal-code":"GO","name":"Gombe","country":"Nigeria","type-en":"State","region":null,"longitude":"11.2421","woe-name":"Gombe","latitude":"10.4342","woe-label":"Gombe, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[7046,5943],[6728,5928],[6631,5935],[6591,6034],[6569,6150],[6541,6209],[6354,6346],[6321,6429],[6423,6482],[6423,6663],[6404,6717],[6281,6783],[6242,6918],[6145,6958],[6194,7050],[6265,7260],[6360,7304],[6432,7386],[6516,7436],[6570,7493],[6694,7527],[6819,7468],[6877,7424],[7067,7219],[7092,7164],[7083,6954],[7098,6862],[7195,6860],[7207,6780],[7142,6672],[7140,6632],[7188,6558],[7295,6498],[7357,6400],[7422,6360],[7419,6160],[7372,6094],[7205,5992],[7129,5958],[7046,5943]]]}},{"type":"Feature","id":"NG.DE","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.67,"hc-key":"ng-de","hc-a2":"DE","labelrank":"3","hasc":"NG.DE","alt-name":null,"woe-id":"2346364","subregion":null,"fips":"NI36","postal-code":"DE","name":"Delta","country":"Nigeria","type-en":"State","region":null,"longitude":"5.88195","woe-name":"Delta","latitude":"5.44265","woe-label":"Delta, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2577,2408],[2527,2217],[2458,2147],[2473,2107],[2460,2079],[2342,2062],[2286,1990],[2214,1980],[2219,1926],[2150,1886],[2109,1889],[2043,1849],[1974,1896],[1932,1848],[1810,1815],[1745,1776],[1693,1778],[1528,1874],[1529,1920],[1440,1909],[1419,2067],[1523,2089],[1536,2063],[1592,2105],[1636,2100],[1599,2145],[1603,2218],[1552,2128],[1505,2114],[1349,2152],[1290,2211],[1281,2250],[1319,2285],[1468,2264],[1500,2320],[1575,2301],[1501,2351],[1456,2298],[1407,2306],[1413,2414],[1365,2317],[1273,2285],[1227,2327],[1191,2401],[1195,2461],[1244,2467],[1280,2522],[1355,2549],[1376,2584],[1220,2506],[1151,2455],[1113,2535],[1114,2536],[1217,2783],[1281,2752],[1324,2701],[1322,2594],[1356,2586],[1409,2631],[1414,2684],[1535,2682],[1596,2648],[1661,2699],[1718,2700],[1824,2642],[1929,2552],[1906,2487],[1922,2431],[2044,2445],[2217,2604],[2228,2674],[2144,2739],[2074,2903],[2112,2981],[2184,2924],[2248,2971],[2525,3110],[2590,3105],[2645,3148],[2648,3092],[2698,2873],[2720,2812],[2707,2753],[2668,2729],[2650,2574],[2596,2495],[2577,2408]]]}},{"type":"Feature","id":"NG.ED","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.54,"hc-key":"ng-ed","hc-a2":"ED","labelrank":"3","hasc":"NG.ED","alt-name":null,"woe-id":"2346365","subregion":null,"fips":"NI37","postal-code":"ED","name":"Edo","country":"Nigeria","type-en":"State","region":null,"longitude":"5.84934","woe-name":"Edo","latitude":"6.52416","woe-label":"Edo, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1217,2783],[1201,2838],[1161,2854],[1094,2927],[1125,2998],[1168,3016],[1225,3136],[1181,3221],[1188,3292],[1313,3463],[1569,3461],[1610,3428],[1586,3379],[1609,3319],[1675,3358],[1742,3338],[1785,3384],[1804,3465],[1837,3501],[1835,3604],[1872,3645],[1918,3784],[1988,3848],[1990,3975],[1972,4024],[2058,4098],[2133,4055],[2152,3963],[2272,3996],[2351,3919],[2425,3923],[2496,3801],[2603,3827],[2666,3773],[2686,3708],[2656,3531],[2621,3430],[2621,3265],[2645,3148],[2590,3105],[2525,3110],[2248,2971],[2184,2924],[2112,2981],[2074,2903],[2144,2739],[2228,2674],[2217,2604],[2044,2445],[1922,2431],[1906,2487],[1929,2552],[1824,2642],[1718,2700],[1661,2699],[1596,2648],[1535,2682],[1414,2684],[1409,2631],[1356,2586],[1322,2594],[1324,2701],[1281,2752],[1217,2783]]]}},{"type":"Feature","id":"NG.EN","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.48,"hc-key":"ng-en","hc-a2":"EN","labelrank":"7","hasc":"NG.EN","alt-name":null,"woe-id":"2346366","subregion":null,"fips":"NI47","postal-code":"EN","name":"Enugu","country":"Nigeria","type-en":"State","region":null,"longitude":"7.38408","woe-name":"Enugu","latitude":"6.55396","woe-label":"Enugu, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3391,3638],[3435,3528],[3524,3444],[3595,3431],[3655,3460],[3716,3405],[3725,3317],[3694,3232],[3574,3211],[3609,3094],[3608,3029],[3569,2908],[3607,2750],[3566,2698],[3571,2605],[3546,2592],[3470,2648],[3425,2633],[3365,2678],[3270,2677],[3180,2697],[3089,2878],[3055,2876],[3072,2932],[3017,3041],[2959,3061],[2976,3152],[3027,3206],[3031,3268],[2922,3308],[2861,3312],[2854,3367],[2909,3435],[2959,3369],[3034,3441],[3156,3536],[3208,3603],[3316,3668],[3391,3638]]]}},{"type":"Feature","id":"NG.EB","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.42,"hc-key":"ng-eb","hc-a2":"EB","labelrank":"3","hasc":"NG.EB","alt-name":null,"woe-id":"20070153","subregion":null,"fips":"NI53","postal-code":"EB","name":"Ebonyi","country":"Nigeria","type-en":"State","region":null,"longitude":"7.98254","woe-name":"Ebonyi","latitude":"6.32648","woe-label":null,"type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4117,3273],[4130,3223],[4215,3129],[4251,3023],[4194,2991],[4197,2872],[4108,2766],[4075,2674],[4025,2686],[3999,2648],[3916,2612],[3898,2653],[3827,2651],[3820,2559],[3775,2497],[3777,2454],[3739,2375],[3675,2410],[3654,2470],[3605,2493],[3472,2494],[3418,2522],[3425,2633],[3470,2648],[3546,2592],[3571,2605],[3566,2698],[3607,2750],[3569,2908],[3608,3029],[3609,3094],[3574,3211],[3694,3232],[3724,3169],[3786,3131],[3827,3185],[3850,3292],[3960,3305],[3994,3350],[4078,3362],[4117,3273]]]}},{"type":"Feature","id":"NG.KD","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.35,"hc-key":"ng-kd","hc-a2":"KD","labelrank":"7","hasc":"NG.KD","alt-name":null,"woe-id":"2346351","subregion":null,"fips":"NI23","postal-code":"KD","name":"Kaduna","country":"Nigeria","type-en":"State","region":null,"longitude":"7.43906","woe-name":"Kaduna","latitude":"10.3294","woe-label":"Kaduna, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4524,6804],[4484,6690],[4564,6609],[4552,6552],[4451,6458],[4435,6390],[4458,6321],[4423,6201],[4426,6065],[4360,5963],[4360,5833],[4474,5686],[4452,5578],[4366,5434],[4292,5391],[4204,5498],[4093,5531],[4016,5436],[3944,5397],[3911,5591],[3847,5636],[3810,5708],[3754,5699],[3688,5621],[3515,5676],[3438,5713],[3389,5659],[3316,5674],[3230,5665],[3185,5663],[3192,5718],[3147,5774],[3256,5928],[3217,6019],[3147,6069],[3218,6106],[3203,6285],[3160,6316],[2959,6322],[2894,6350],[2854,6403],[2989,6519],[3013,6579],[2922,6621],[2914,6746],[2864,6789],[2818,6784],[2805,6875],[2715,6877],[2699,6826],[2630,6826],[2564,6796],[2500,6846],[2436,6832],[2328,6751],[2238,6644],[2207,6640],[2135,6752],[2165,6901],[2155,7047],[2199,7098],[2254,7123],[2259,7159],[2364,7258],[2482,7230],[2657,7280],[2708,7336],[2754,7469],[2851,7553],[2962,7525],[2988,7473],[2950,7410],[3048,7373],[3124,7320],[3176,7359],[3175,7458],[3300,7458],[3321,7520],[3377,7553],[3443,7540],[3551,7466],[3624,7496],[3656,7543],[3718,7548],[3823,7627],[3950,7667],[3982,7652],[3960,7555],[4007,7506],[4070,7483],[4122,7430],[4253,7388],[4345,7290],[4363,7163],[4345,7093],[4359,6984],[4289,6915],[4339,6874],[4411,6865],[4451,6818],[4524,6804]]]}},{"type":"Feature","id":"NG.KO","properties":{"hc-group":"admin1","hc-middle-x":0.72,"hc-middle-y":0.6,"hc-key":"ng-ko","hc-a2":"KO","labelrank":"3","hasc":"NG.KO","alt-name":null,"woe-id":"2346369","subregion":null,"fips":"NI41","postal-code":"KO","name":"Kogi","country":"Nigeria","type-en":"State","region":null,"longitude":"6.6142","woe-name":"Kogi","latitude":"7.78485","woe-label":"Kogi, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3391,3638],[3316,3668],[3208,3603],[3156,3536],[3034,3441],[2959,3369],[2909,3435],[2854,3367],[2792,3309],[2750,3177],[2720,3147],[2645,3148],[2621,3265],[2621,3430],[2656,3531],[2686,3708],[2666,3773],[2603,3827],[2496,3801],[2425,3923],[2351,3919],[2272,3996],[2152,3963],[2133,4055],[2058,4098],[2002,4160],[1935,4278],[1862,4266],[1722,4326],[1692,4353],[1686,4431],[1733,4475],[1704,4508],[1596,4490],[1613,4553],[1607,4608],[1546,4646],[1472,4727],[1452,4809],[1598,4974],[1679,4914],[1860,4858],[2116,4834],[2143,4882],[2196,5103],[2235,5152],[2291,5158],[2375,5106],[2460,4879],[2556,4807],[2664,4673],[2723,4772],[2795,4854],[2885,4852],[2925,4858],[2895,4768],[2938,4691],[2927,4497],[2887,4368],[3020,4446],[3204,4507],[3394,4496],[3549,4504],[3558,4358],[3611,4291],[3633,4226],[3630,4120],[3655,3976],[3742,3948],[3713,3890],[3694,3788],[3656,3725],[3535,3660],[3494,3575],[3391,3638]]]}},{"type":"Feature","id":"NG.PL","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.64,"hc-key":"ng-pl","hc-a2":"PL","labelrank":"3","hasc":"NG.PL","alt-name":null,"woe-id":"2346348","subregion":null,"fips":"NI49","postal-code":"PL","name":"Plateau","country":"Nigeria","type-en":"State","region":null,"longitude":"9.60601","woe-name":"Plateau","latitude":"8.95327","woe-label":"Plateau, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6172,5850],[6198,5758],[6202,5632],[6251,5493],[6259,5347],[6228,5288],[6085,5217],[5875,5165],[5738,5000],[5614,4921],[5503,4822],[5437,4804],[5319,4802],[5286,4849],[5131,4925],[5074,4926],[4933,4894],[4848,4895],[4717,4949],[4695,5069],[4656,5143],[4716,5242],[4749,5253],[4808,5325],[4826,5383],[4785,5420],[4727,5403],[4606,5414],[4563,5458],[4548,5520],[4452,5578],[4474,5686],[4360,5833],[4360,5963],[4426,6065],[4423,6201],[4458,6321],[4435,6390],[4451,6458],[4552,6552],[4564,6609],[4669,6605],[4701,6565],[4724,6470],[4723,6325],[4756,6302],[4861,6321],[4919,6300],[4942,6163],[4903,6057],[4958,6025],[5030,5923],[5214,5882],[5357,5890],[5425,5911],[5451,5967],[5533,6010],[5542,6040],[5494,6121],[5548,6157],[5992,5954],[6172,5850]]]}},{"type":"Feature","id":"NG.NA","properties":{"hc-group":"admin1","hc-middle-x":0.49,"hc-middle-y":0.48,"hc-key":"ng-na","hc-a2":"NA","labelrank":"3","hasc":"NG.NA","alt-name":null,"woe-id":"20070154","subregion":null,"fips":"NI56","postal-code":"NA","name":"Nassarawa","country":"Nigeria","type-en":"State","region":null,"longitude":"8.27694","woe-name":"Nassarawa","latitude":"8.50412","woe-label":"Nassarawa, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4452,5578],[4548,5520],[4563,5458],[4606,5414],[4727,5403],[4785,5420],[4826,5383],[4808,5325],[4749,5253],[4716,5242],[4656,5143],[4695,5069],[4717,4949],[4848,4895],[4933,4894],[5074,4926],[5131,4925],[5286,4849],[5319,4802],[5258,4739],[5065,4770],[5037,4698],[5085,4637],[5097,4534],[4915,4403],[4742,4531],[4609,4527],[4359,4602],[4240,4588],[4189,4545],[4174,4481],[4238,4322],[4232,4275],[4119,4349],[3824,4448],[3549,4504],[3394,4496],[3204,4507],[3020,4446],[2887,4368],[2927,4497],[2938,4691],[2895,4768],[2925,4858],[3056,4878],[3185,4912],[3302,4969],[3373,5064],[3413,5173],[3456,5357],[3455,5503],[3476,5600],[3515,5676],[3688,5621],[3754,5699],[3810,5708],[3847,5636],[3911,5591],[3944,5397],[4016,5436],[4093,5531],[4204,5498],[4292,5391],[4366,5434],[4452,5578]]]}},{"type":"Feature","id":"NG.JI","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.28,"hc-key":"ng-ji","hc-a2":"JI","labelrank":"3","hasc":"NG.JI","alt-name":null,"woe-id":"2346367","subregion":null,"fips":"NI39","postal-code":"JI","name":"Jigawa","country":"Nigeria","type-en":"State","region":null,"longitude":"9.36225","woe-name":"Jigawa","latitude":"12.0714","woe-label":"Jigawa, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6197,8592],[6079,8513],[6004,8542],[5889,8499],[5804,8237],[5792,8139],[5519,8033],[5460,8000],[5384,7993],[5336,7950],[5318,7882],[5356,7856],[5443,7876],[5488,7839],[5503,7742],[5474,7687],[5488,7632],[5533,7637],[5657,7458],[5723,7432],[6009,7382],[5952,7308],[5853,7269],[5820,7158],[5754,7187],[5612,7176],[5560,7197],[5539,7247],[5546,7365],[5486,7456],[5318,7434],[5237,7494],[5124,7489],[5014,7527],[4959,7528],[4984,7629],[5072,7722],[5019,7751],[4960,7848],[4872,7868],[4917,7971],[4942,8075],[4918,8155],[4789,8138],[4782,8183],[4716,8173],[4687,8203],[4708,8245],[4707,8329],[4669,8376],[4562,8399],[4545,8483],[4477,8527],[4466,8618],[4334,8651],[4236,8617],[4183,8514],[4112,8646],[4082,8694],[4011,8696],[3964,8725],[3982,8869],[4078,8883],[4339,8883],[4396,8779],[4511,8748],[4595,8756],[4678,8811],[4734,8896],[4995,8866],[5092,8881],[5282,8859],[5334,8886],[5443,8852],[5521,8886],[5545,8934],[5623,8972],[5791,9029],[5851,8982],[5884,8868],[5982,8880],[6107,8857],[6160,8780],[6197,8592]]]}},{"type":"Feature","id":"NG.KN","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.38,"hc-key":"ng-kn","hc-a2":"KN","labelrank":"7","hasc":"NG.KN","alt-name":null,"woe-id":"2346357","subregion":null,"fips":"NI29","postal-code":"KN","name":"Kano","country":"Nigeria","type-en":"State","region":null,"longitude":"8.541460000000001","woe-name":"Kano","latitude":"11.7323","woe-label":"Kano, NG, Nigeria","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4524,6804],[4451,6818],[4411,6865],[4339,6874],[4289,6915],[4359,6984],[4345,7093],[4363,7163],[4345,7290],[4253,7388],[4122,7430],[4070,7483],[4007,7506],[3960,7555],[3982,7652],[3950,7667],[3823,7627],[3718,7548],[3656,7543],[3594,7596],[3580,7642],[3601,7730],[3630,7764],[3762,7809],[3725,7927],[3708,8049],[3716,8370],[3785,8417],[3943,8476],[3976,8507],[4027,8633],[4112,8646],[4183,8514],[4236,8617],[4334,8651],[4466,8618],[4477,8527],[4545,8483],[4562,8399],[4669,8376],[4707,8329],[4708,8245],[4687,8203],[4716,8173],[4782,8183],[4789,8138],[4918,8155],[4942,8075],[4917,7971],[4872,7868],[4960,7848],[5019,7751],[5072,7722],[4984,7629],[4959,7528],[4874,7497],[4785,7485],[4634,7310],[4548,7292],[4521,7235],[4518,7090],[4585,6972],[4591,6909],[4524,6804]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/asia/in-all.geo.json
const in_all_geo_namespaceObject = /*#__PURE__*/JSON.parse('{"title":"India","version":"2.0.1","type":"FeatureCollection","copyright":"Copyright (c) 2022 Highsoft AS, Based on data from Natural Earth","copyrightShort":"Natural Earth","copyrightUrl":"http://www.naturalearthdata.com","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG:24373"}},"hc-transform":{"default":{"crs":"+proj=lcc +lat_1=19 +lat_0=19 +lon_0=80 +k_0=0.99878641 +x_0=2743195.592233322 +y_0=914398.5307444407 +a=6377299.36559538 +b=6356098.359005156 +to_meter=0.9143985307444408 +no_defs","scale":0.000208805754963,"jsonres":15.5,"jsonmarginX":-999,"jsonmarginY":9851,"xoffset":1676654.55745,"yoffset":3026618.02308}},"features":[{"type":"Feature","id":"IN.PY","properties":{"hc-group":"admin1","hc-middle-x":0.65,"hc-middle-y":0.81,"hc-key":"in-py","hc-a2":"PY","labelrank":"2","hasc":"IN.PY","alt-name":"Pondicherry|Puduchcheri|Pondichéry","woe-id":"20070459","subregion":null,"fips":"IN22","postal-code":"PY","name":"Puducherry","country":"India","type-en":"Union Territory","region":"South","longitude":"79.7758","woe-name":"Puducherry","latitude":"10.9224","woe-label":"Puducherry, IN, India","type":"Union Territor"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4132,2394],[4105,2404],[4125,2405],[4152,2410],[4132,2394]]],[[[3224,145],[3222,133],[3224,78],[3169,117],[3182,147],[3224,145]]],[[[3226,529],[3214,499],[3211,481],[3169,491],[3162,547],[3226,529]]],[[[1464,588],[1448,577],[1432,581],[1433,612],[1501,627],[1464,588]]]]}},{"type":"Feature","id":"IN.LD","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.63,"hc-key":"in-ld","hc-a2":"LD","labelrank":"2","hasc":"IN.LD","alt-name":"Íles Laquedives|Laccadive|Minicoy and Amindivi Islands|Laccadives|Lackadiverna|Lakkadiven|Lakkadi","woe-id":"2345748","subregion":null,"fips":"IN14","postal-code":"LD","name":"Lakshadweep","country":"India","type-en":"Union Territory","region":"South","longitude":"72.7811","woe-name":"Lakshadweep","latitude":"11.2249","woe-label":"Lakshadweep, IN, India","type":"Union Territor"},"geometry":{"type":"Polygon","coordinates":[[[534,-879],[521,-880],[537,-871],[545,-860],[534,-879]]]}},{"type":"Feature","id":"IN.WB","properties":{"hc-group":"admin1","hc-middle-x":0.5,"hc-middle-y":0.74,"hc-key":"in-wb","hc-a2":"WB","labelrank":"2","hasc":"IN.WB","alt-name":"Bangla|Bengala Occidentale|Bengala Ocidental|Bengale occidental","woe-id":"2345761","subregion":null,"fips":"IN28","postal-code":"WB","name":"West Bengal","country":"India","type-en":"State","region":"East","longitude":"87.7289","woe-name":"West Bengal","latitude":"23.0523","woe-label":"West Bengal, IN, India","type":"State"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6248,4480],[6272,4444],[6261,4389],[6232,4393],[6248,4480]]],[[[6023,4373],[5995,4440],[5945,4449],[5912,4503],[5865,4482],[5841,4535],[5724,4598],[5782,4637],[5732,4697],[5742,4727],[5691,4749],[5681,4778],[5611,4817],[5627,4903],[5515,4909],[5468,4956],[5421,4958],[5398,4996],[5420,5058],[5395,5083],[5455,5096],[5464,5134],[5502,5124],[5535,5075],[5578,5100],[5620,5152],[5743,5191],[5768,5266],[5842,5230],[5900,5247],[5911,5292],[5986,5327],[5984,5358],[6046,5385],[6034,5417],[6065,5437],[6091,5510],[6071,5546],[6117,5546],[6105,5613],[6113,5666],[6073,5742],[6072,5791],[6091,5817],[6055,5864],[6128,5919],[6169,5904],[6158,5974],[6068,6051],[6075,6105],[6126,6161],[6237,6251],[6195,6324],[6157,6318],[6182,6400],[6145,6496],[6105,6538],[6115,6597],[6157,6555],[6248,6538],[6298,6577],[6374,6570],[6409,6551],[6432,6505],[6509,6447],[6595,6464],[6693,6434],[6689,6416],[6781,6422],[6796,6348],[6780,6266],[6722,6207],[6689,6188],[6705,6154],[6688,6119],[6617,6126],[6536,6176],[6519,6255],[6465,6292],[6446,6264],[6501,6219],[6419,6209],[6361,6278],[6267,6331],[6238,6299],[6291,6290],[6242,6190],[6191,6162],[6164,6069],[6185,6017],[6220,6030],[6291,5974],[6334,5916],[6387,5905],[6420,5921],[6451,5853],[6497,5846],[6481,5792],[6364,5796],[6305,5785],[6305,5737],[6268,5663],[6227,5692],[6168,5571],[6212,5514],[6337,5449],[6394,5443],[6437,5418],[6413,5389],[6430,5300],[6388,5275],[6373,5189],[6441,5121],[6459,5121],[6432,5051],[6442,5031],[6532,5013],[6497,4969],[6496,4925],[6535,4882],[6524,4839],[6598,4611],[6596,4528],[6577,4513],[6610,4425],[6580,4395],[6535,4420],[6494,4372],[6463,4426],[6473,4560],[6454,4508],[6424,4370],[6396,4359],[6404,4473],[6379,4446],[6381,4394],[6343,4416],[6306,4364],[6279,4413],[6285,4460],[6261,4519],[6287,4567],[6263,4597],[6199,4468],[6105,4393],[6023,4373]]]]}},{"type":"Feature","id":"IN.OR","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.38,"hc-key":"in-or","hc-a2":"OR","labelrank":"2","hasc":"IN.OR","alt-name":null,"woe-id":"2345755","subregion":null,"fips":"IN21","postal-code":"OR","name":"Orissa","country":"India","type-en":"State","region":"East","longitude":"84.4341","woe-name":"Orissa","latitude":"20.625","woe-label":"Orissa, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6023,4373],[5922,4345],[5873,4313],[5822,4253],[5795,4192],[5799,4156],[5842,4066],[5861,3997],[5782,3932],[5764,3843],[5684,3800],[5650,3720],[5604,3751],[5564,3752],[5641,3712],[5534,3661],[5412,3626],[5304,3584],[5345,3621],[5346,3667],[5306,3677],[5218,3609],[5177,3527],[5214,3523],[5234,3578],[5282,3593],[5263,3547],[5206,3506],[5061,3361],[5029,3378],[4968,3326],[4893,3237],[4835,3226],[4738,3232],[4699,3307],[4676,3279],[4627,3356],[4568,3292],[4512,3300],[4548,3253],[4477,3202],[4449,3208],[4413,3161],[4435,3116],[4419,3063],[4323,3049],[4251,3003],[4255,3035],[4198,3111],[4168,3069],[4148,2982],[4156,2924],[4123,2903],[4048,2922],[4004,2905],[3876,2824],[3807,2827],[3825,2856],[3861,3006],[3934,3044],[3998,3118],[4018,3173],[4081,3198],[4112,3303],[4087,3345],[4089,3448],[4037,3499],[4036,3600],[3957,3657],[4001,3728],[4109,3672],[4132,3625],[4166,3645],[4239,3629],[4238,3599],[4289,3634],[4281,3691],[4250,3686],[4177,3716],[4178,3857],[4147,3907],[4146,4026],[4187,4021],[4226,4064],[4264,4143],[4373,4154],[4415,4129],[4459,4153],[4487,4226],[4517,4218],[4504,4282],[4555,4403],[4585,4415],[4569,4465],[4600,4557],[4741,4656],[4730,4694],[4796,4636],[4896,4616],[4935,4654],[5073,4657],[5130,4690],[5140,4603],[5105,4536],[5150,4536],[5191,4506],[5265,4561],[5358,4530],[5399,4552],[5398,4506],[5446,4511],[5466,4544],[5466,4658],[5448,4699],[5484,4722],[5606,4638],[5649,4642],[5724,4598],[5841,4535],[5865,4482],[5912,4503],[5945,4449],[5995,4440],[6023,4373]]]}},{"type":"Feature","id":"IN.BR","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.64,"hc-key":"in-br","hc-a2":"BR","labelrank":"2","hasc":"IN.BR","alt-name":null,"woe-id":"2345742","subregion":null,"fips":"IN34","postal-code":"BR","name":"Bihar","country":"India","type-en":"State","region":"East","longitude":"85.8134","woe-name":"Bihar","latitude":"25.6853","woe-label":"Bihar, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4646,6586],[4639,6620],[4700,6625],[4725,6652],[4800,6601],[4902,6585],[4932,6536],[4928,6467],[5029,6441],[5064,6398],[5114,6402],[5160,6358],[5269,6408],[5301,6392],[5312,6330],[5352,6299],[5418,6334],[5487,6309],[5516,6320],[5671,6248],[5700,6256],[5785,6318],[5802,6260],[5890,6233],[5909,6259],[5982,6246],[6081,6283],[6120,6248],[6157,6318],[6195,6324],[6237,6251],[6126,6161],[6075,6105],[6068,6051],[6158,5974],[6169,5904],[6128,5919],[6055,5864],[6091,5817],[6072,5791],[5977,5830],[5938,5772],[5897,5767],[5889,5727],[5837,5685],[5819,5537],[5772,5541],[5763,5509],[5713,5529],[5653,5516],[5621,5483],[5603,5428],[5543,5463],[5547,5509],[5498,5509],[5446,5581],[5409,5562],[5348,5588],[5314,5539],[5321,5508],[5273,5480],[5224,5481],[5071,5414],[5011,5470],[4961,5421],[4936,5428],[4895,5393],[4836,5448],[4833,5479],[4758,5467],[4738,5513],[4694,5481],[4614,5464],[4552,5472],[4545,5564],[4491,5602],[4479,5724],[4496,5749],[4680,5869],[4764,5952],[4799,5918],[4829,5923],[4845,5966],[4887,5941],[4927,5961],[4901,6005],[4844,6035],[4804,6030],[4732,6096],[4705,6150],[4774,6172],[4770,6216],[4677,6242],[4740,6312],[4840,6312],[4791,6356],[4788,6402],[4727,6420],[4679,6538],[4646,6586]]]}},{"type":"Feature","id":"IN.SK","properties":{"hc-group":"admin1","hc-middle-x":0.46,"hc-middle-y":0.51,"hc-key":"in-sk","hc-a2":"SK","labelrank":"2","hasc":"IN.SK","alt-name":null,"woe-id":"2345762","subregion":null,"fips":"IN29","postal-code":"SK","name":"Sikkim","country":"India","type-en":"State","region":"East","longitude":"88.4482","woe-name":"Sikkim","latitude":"27.5709","woe-label":"Sikkim, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6115,6597],[6117,6694],[6160,6807],[6141,6875],[6233,6893],[6312,6946],[6387,6906],[6403,6847],[6369,6727],[6383,6673],[6427,6638],[6374,6570],[6298,6577],[6248,6538],[6157,6555],[6115,6597]]]}},{"type":"Feature","id":"IN.CT","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.34,"hc-key":"in-ct","hc-a2":"CT","labelrank":"2","hasc":"IN.CT","alt-name":null,"woe-id":"20070464","subregion":null,"fips":"IN37","postal-code":"CT","name":"Chhattisgarh","country":"India","type-en":"State","region":"Central","longitude":"82.3069","woe-name":"Chhattisgarh","latitude":"21.8044","woe-label":"Chhattisgarh, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4730,4694],[4741,4656],[4600,4557],[4569,4465],[4585,4415],[4555,4403],[4504,4282],[4517,4218],[4487,4226],[4459,4153],[4415,4129],[4373,4154],[4264,4143],[4226,4064],[4187,4021],[4146,4026],[4147,3907],[4178,3857],[4177,3716],[4250,3686],[4281,3691],[4289,3634],[4238,3599],[4239,3629],[4166,3645],[4132,3625],[4109,3672],[4001,3728],[3957,3657],[4036,3600],[4037,3499],[4089,3448],[4087,3345],[4112,3303],[4081,3198],[4018,3173],[3998,3118],[3934,3044],[3861,3006],[3825,2856],[3807,2827],[3714,2838],[3676,2814],[3653,2839],[3635,2935],[3573,2992],[3544,3062],[3471,3136],[3415,3132],[3385,3180],[3412,3234],[3385,3284],[3435,3390],[3498,3446],[3553,3396],[3593,3428],[3616,3482],[3548,3524],[3483,3609],[3458,3592],[3441,3641],[3481,3652],[3480,3736],[3442,3741],[3441,3775],[3514,3811],[3513,3919],[3467,3917],[3495,3957],[3487,4043],[3444,4075],[3462,4141],[3514,4170],[3533,4213],[3549,4261],[3551,4355],[3591,4407],[3589,4448],[3620,4506],[3641,4488],[3658,4544],[3692,4583],[3713,4655],[3774,4663],[3801,4640],[3882,4685],[3927,4730],[3934,4804],[3989,4841],[3991,4879],[4057,4901],[4078,4977],[4006,5020],[3982,5057],[3916,5075],[3879,5051],[3860,5082],[3894,5133],[3869,5202],[3927,5177],[3984,5193],[4035,5178],[4199,5170],[4284,5231],[4295,5259],[4355,5227],[4442,5240],[4488,5318],[4555,5290],[4569,5239],[4620,5194],[4652,5104],[4698,5096],[4723,5128],[4737,5093],[4714,5020],[4739,5025],[4746,4933],[4779,4876],[4857,4866],[4866,4833],[4809,4759],[4730,4694]]]}},{"type":"Feature","id":"IN.TN","properties":{"hc-group":"admin1","hc-middle-x":0.59,"hc-middle-y":0.41,"hc-key":"in-tn","hc-a2":"TN","labelrank":"2","hasc":"IN.","alt-name":null,"woe-id":"2345758","subregion":null,"fips":"IN22","postal-code":"TN","name":"Tamil Nadu","country":"India","type-en":"State","region":"South","longitude":"78.2704","woe-name":"Tamil Nadu","latitude":"11.0159","woe-label":"Tamil Nadu, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3226,529],[3162,547],[3169,491],[3211,481],[3188,380],[3201,321],[3166,273],[3219,288],[3224,145],[3182,147],[3169,117],[3224,78],[3226,-131],[3122,-106],[3048,-114],[2985,-176],[3001,-228],[2970,-254],[2883,-373],[2856,-449],[2906,-513],[2989,-524],[3016,-510],[3057,-575],[3005,-539],[2873,-529],[2740,-581],[2673,-590],[2589,-649],[2539,-771],[2543,-838],[2517,-884],[2297,-999],[2220,-977],[2139,-913],[2161,-905],[2208,-819],[2169,-751],[2198,-686],[2166,-629],[2202,-582],[2261,-433],[2238,-401],[2178,-387],[2209,-249],[2196,-211],[2217,-151],[2185,-95],[2103,-141],[2047,-109],[2042,19],[2069,77],[2043,115],[1993,139],[2023,185],[1976,248],[1898,251],[1938,299],[1887,339],[1828,357],[1823,407],[1861,401],[1892,430],[1937,446],[1944,420],[2049,411],[2084,479],[2119,488],[2151,461],[2220,483],[2288,480],[2310,525],[2381,542],[2419,600],[2381,633],[2313,635],[2364,743],[2344,774],[2361,818],[2396,821],[2436,890],[2534,884],[2600,850],[2673,799],[2737,856],[2761,939],[2790,963],[2877,979],[2961,959],[2995,999],[3061,1027],[3069,1067],[3156,1055],[3201,1029],[3213,1057],[3322,1123],[3384,1125],[3402,1114],[3391,1142],[3391,1143],[3395,1148],[3402,1114],[3410,1110],[3412,1019],[3394,967],[3372,813],[3344,734],[3230,556],[3226,529]]]}},{"type":"Feature","id":"IN.MP","properties":{"hc-group":"admin1","hc-middle-x":0.47,"hc-middle-y":0.6,"hc-key":"in-mp","hc-a2":"MP","labelrank":"2","hasc":"IN.MP","alt-name":null,"woe-id":"2345749","subregion":null,"fips":"IN35","postal-code":"MP","name":"Madhya Pradesh","country":"India","type-en":"State","region":"Central","longitude":"78.42140000000001","woe-name":"Madhya Pradesh","latitude":"22.9404","woe-label":"Madhya Pradesh, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4295,5259],[4284,5231],[4199,5170],[4035,5178],[3984,5193],[3927,5177],[3869,5202],[3894,5133],[3860,5082],[3879,5051],[3916,5075],[3982,5057],[4006,5020],[4078,4977],[4057,4901],[3991,4879],[3989,4841],[3934,4804],[3927,4730],[3882,4685],[3801,4640],[3774,4663],[3713,4655],[3692,4583],[3658,4544],[3641,4488],[3620,4506],[3589,4448],[3591,4407],[3551,4355],[3549,4261],[3533,4213],[3434,4228],[3435,4258],[3352,4325],[3286,4289],[3225,4284],[3210,4305],[3120,4290],[3069,4345],[3006,4354],[2997,4332],[2889,4300],[2882,4275],[2806,4262],[2708,4276],[2685,4322],[2561,4250],[2445,4229],[2363,4235],[2343,4277],[2388,4293],[2388,4354],[2355,4383],[2308,4385],[2266,4357],[2228,4367],[2109,4311],[2084,4248],[2049,4220],[2040,4166],[1975,4130],[1883,4123],[1847,4235],[1772,4249],[1646,4241],[1564,4247],[1498,4271],[1469,4317],[1414,4342],[1346,4343],[1275,4391],[1268,4477],[1241,4508],[1165,4472],[1138,4483],[1144,4530],[1120,4580],[1122,4638],[1178,4638],[1107,4691],[1157,4704],[1237,4754],[1269,4814],[1236,4842],[1223,4906],[1278,4915],[1367,4958],[1303,4988],[1316,5033],[1409,5083],[1453,5155],[1445,5237],[1468,5290],[1435,5371],[1386,5382],[1429,5450],[1381,5486],[1409,5542],[1474,5550],[1479,5586],[1430,5592],[1426,5645],[1482,5616],[1519,5626],[1538,5685],[1607,5690],[1596,5623],[1559,5627],[1560,5560],[1648,5549],[1760,5575],[1800,5471],[1748,5437],[1771,5390],[1751,5345],[1771,5316],[1742,5270],[1674,5288],[1655,5249],[1693,5200],[1730,5189],[1758,5224],[1830,5250],[1840,5288],[1883,5319],[1891,5396],[1925,5375],[2007,5368],[2038,5348],[2077,5384],[2118,5325],[2163,5356],[2137,5403],[2135,5480],[2170,5457],[2226,5481],[2194,5551],[2128,5591],[2165,5614],[2158,5668],[2276,5703],[2331,5697],[2352,5735],[2328,5827],[2275,5788],[2179,5776],[2086,5805],[2050,5838],[2026,5941],[2051,5991],[2116,6017],[2182,6087],[2291,6142],[2332,6185],[2370,6193],[2514,6271],[2539,6306],[2602,6312],[2610,6357],[2646,6367],[2706,6378],[2774,6341],[2826,6356],[2903,6319],[2950,6180],[2915,6150],[2911,6083],[2859,5978],[2834,5958],[2825,5893],[2701,5865],[2662,5810],[2699,5721],[2687,5657],[2627,5595],[2659,5527],[2647,5464],[2690,5415],[2702,5372],[2740,5415],[2848,5338],[2916,5436],[2873,5504],[2828,5503],[2829,5573],[2796,5632],[2786,5700],[2752,5752],[2782,5810],[2832,5785],[2829,5841],[2855,5814],[2891,5857],[2908,5820],[2887,5715],[2941,5749],[2934,5714],[3022,5710],[3031,5747],[3078,5746],[3047,5703],[3066,5674],[3120,5714],[3235,5705],[3231,5742],[3352,5808],[3385,5808],[3435,5716],[3387,5651],[3469,5661],[3448,5691],[3492,5703],[3516,5673],[3530,5707],[3592,5719],[3563,5634],[3645,5633],[3678,5610],[3709,5635],[3730,5713],[3835,5726],[3852,5679],[3936,5662],[3959,5617],[4098,5565],[4114,5505],[4156,5540],[4281,5522],[4268,5476],[4281,5411],[4269,5343],[4248,5330],[4295,5259]]]}},{"type":"Feature","id":"IN.2984","properties":{"hc-group":"admin1","hc-middle-x":0.56,"hc-middle-y":0.32,"hc-key":"in-2984","hc-a2":"GU","labelrank":"2","hasc":"IN.","alt-name":null,"woe-id":"2345743","subregion":null,"fips":"IN32","postal-code":null,"name":"Gujarat","country":"India","type-en":null,"region":"West","longitude":"71.3013","woe-name":"Gujarat","latitude":"22.7501","woe-label":"Gujarat, IN, India","type":null},"geometry":{"type":"Polygon","coordinates":[[[1223,4906],[1236,4842],[1269,4814],[1237,4754],[1157,4704],[1107,4691],[1178,4638],[1122,4638],[1120,4580],[1144,4530],[1138,4483],[1020,4442],[1024,4369],[995,4355],[1019,4314],[1084,4330],[1192,4310],[1069,4267],[1052,4227],[1008,4225],[968,4164],[1029,4104],[1042,4026],[996,3961],[936,3946],[873,4009],[840,3981],[872,3939],[834,3874],[832,3799],[798,3806],[758,3777],[724,3866],[660,3823],[677,3785],[612,3777],[588,3767],[606,3848],[634,3886],[658,3890],[646,3920],[669,4023],[659,4088],[602,4160],[611,4208],[570,4236],[557,4283],[579,4322],[695,4395],[581,4400],[551,4412],[588,4510],[544,4515],[562,4586],[596,4605],[637,4585],[674,4614],[568,4635],[508,4626],[512,4670],[477,4618],[475,4559],[407,4524],[420,4468],[360,4477],[365,4444],[418,4449],[463,4393],[440,4326],[387,4263],[385,4220],[143,4106],[-27,4056],[-36,4057],[-40,4046],[-89,4046],[-197,4093],[-269,4144],[-367,4236],[-450,4353],[-513,4428],[-662,4580],[-747,4709],[-733,4751],[-649,4743],[-650,4694],[-549,4717],[-524,4757],[-501,4718],[-455,4764],[-437,4740],[-371,4781],[-292,4787],[-213,4916],[-155,4960],[-175,5003],[-201,4981],[-203,4932],[-262,4957],[-274,4939],[-410,4910],[-456,4869],[-627,4916],[-757,4994],[-841,5067],[-844,5120],[-907,5172],[-883,5197],[-901,5244],[-752,5332],[-821,5318],[-905,5272],[-938,5229],[-999,5239],[-955,5261],[-991,5296],[-983,5333],[-891,5376],[-785,5368],[-776,5495],[-716,5503],[-692,5477],[-577,5481],[-476,5472],[-439,5435],[-331,5419],[-278,5471],[-128,5510],[-116,5455],[-47,5430],[14,5478],[74,5494],[37,5517],[32,5565],[70,5605],[139,5580],[246,5595],[390,5578],[428,5594],[556,5514],[566,5481],[606,5507],[672,5455],[736,5445],[765,5495],[794,5500],[812,5432],[789,5381],[846,5304],[887,5338],[909,5273],[885,5212],[975,5129],[976,5073],[1042,5069],[1068,5030],[1095,5037],[1191,4954],[1223,4906]]]}},{"type":"Feature","id":"IN.GA","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.47,"hc-key":"in-ga","hc-a2":"GA","labelrank":"2","hasc":"IN.GA","alt-name":"Gôa","woe-id":"2345764","subregion":null,"fips":"IN08","postal-code":"GA","name":"Goa","country":"India","type-en":"State","region":"West","longitude":"73.99509999999999","woe-name":"Goa","latitude":"15.3133","woe-label":"Goa, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1031,1720],[966,1797],[980,1828],[961,1901],[927,1943],[894,2052],[943,2074],[985,2013],[1045,2014],[1092,2009],[1115,1868],[1089,1744],[1031,1720]]]}},{"type":"Feature","id":"IN.NL","properties":{"hc-group":"admin1","hc-middle-x":0.63,"hc-middle-y":0.55,"hc-key":"in-nl","hc-a2":"NL","labelrank":"2","hasc":"IN.NL","alt-name":null,"woe-id":"2345754","subregion":null,"fips":"IN20","postal-code":"NL","name":"Nagaland","country":"India","type-en":"State","region":"Northeast","longitude":"94.5664","woe-name":"Nagaland","latitude":"26.1094","woe-label":"Nagaland, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8692,6530],[8648,6508],[8624,6455],[8634,6366],[8678,6291],[8629,6236],[8638,6164],[8559,6060],[8520,6039],[8477,6062],[8485,6130],[8402,6055],[8361,6045],[8294,6063],[8215,6052],[8220,6014],[8155,5914],[8096,5948],[8096,5948],[8096,5948],[8096,5960],[8097,5979],[8088,5990],[8048,6037],[8203,6209],[8197,6165],[8241,6178],[8269,6216],[8268,6310],[8322,6389],[8349,6463],[8382,6444],[8422,6518],[8492,6549],[8565,6639],[8606,6635],[8654,6679],[8668,6614],[8692,6530]]]}},{"type":"Feature","id":"IN.MN","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.48,"hc-key":"in-mn","hc-a2":"MN","labelrank":"2","hasc":"IN.MN","alt-name":null,"woe-id":"2345751","subregion":null,"fips":"IN17","postal-code":"MN","name":"Manipur","country":"India","type-en":"State","region":"Northeast","longitude":"93.84569999999999","woe-name":"Manipur","latitude":"24.7442","woe-label":"Manipur, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8096,5948],[8155,5914],[8220,6014],[8215,6052],[8294,6063],[8361,6045],[8402,6055],[8485,6130],[8477,6062],[8520,6039],[8491,5957],[8544,5919],[8555,5875],[8521,5762],[8496,5744],[8428,5585],[8402,5456],[8374,5394],[8335,5420],[8265,5422],[8193,5445],[8139,5421],[8104,5465],[8081,5447],[8010,5445],[7969,5462],[7968,5582],[7993,5654],[7994,5746],[8018,5748],[8078,5920],[8096,5948],[8096,5948],[8096,5948]]]}},{"type":"Feature","id":"IN.AR","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.38,"hc-key":"in-ar","hc-a2":"AR","labelrank":"2","hasc":"IN.AR","alt-name":"Agence de la Frontisre du Nord-Est(French-obsolete)|North East Frontier Agency","woe-id":"2345763","subregion":null,"fips":"IN30","postal-code":"AR","name":"Arunachal Pradesh","country":"India","type-en":"State","region":"Northeast","longitude":"94.46729999999999","woe-name":"Arunachal Pradesh","latitude":"28.4056","woe-label":"Arunachal Pradesh, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[7563,6550],[7527,6641],[7554,6701],[7511,6765],[7433,6737],[7375,6785],[7383,6870],[7504,6865],[7536,6894],[7618,6897],[7729,6956],[7751,7006],[7733,7032],[7799,7071],[7879,7147],[7897,7199],[7993,7277],[8056,7282],[8227,7385],[8297,7441],[8267,7468],[8308,7515],[8353,7529],[8385,7567],[8441,7510],[8517,7500],[8503,7517],[8621,7480],[8627,7514],[8698,7519],[8722,7568],[8767,7559],[8772,7609],[8909,7632],[8935,7590],[8980,7603],[8977,7560],[8930,7530],[8940,7499],[8992,7531],[9081,7424],[9092,7386],[9039,7342],[9067,7269],[9083,7335],[9132,7342],[9235,7248],[9286,7268],[9365,7216],[9359,7166],[9387,7129],[9381,7089],[9342,7087],[9229,6964],[9249,6882],[9341,6779],[9304,6762],[9235,6794],[9200,6851],[9139,6850],[9115,6823],[8986,6798],[8943,6767],[8905,6699],[8867,6682],[8807,6609],[8772,6601],[8742,6551],[8692,6530],[8668,6614],[8654,6679],[8737,6729],[8776,6785],[8812,6771],[8902,6797],[8935,6836],[8922,6868],[8893,6846],[8886,6907],[8841,6967],[8897,7082],[8810,7073],[8753,7033],[8672,7023],[8388,6879],[8304,6894],[8308,6846],[8179,6705],[8175,6664],[8131,6625],[8050,6595],[8019,6610],[7895,6586],[7819,6619],[7609,6549],[7563,6550]]]}},{"type":"Feature","id":"IN.MZ","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.39,"hc-key":"in-mz","hc-a2":"MZ","labelrank":"2","hasc":"IN.MZ","alt-name":null,"woe-id":"20070461","subregion":null,"fips":"IN31","postal-code":"MZ","name":"Mizoram","country":"India","type-en":"State","region":"Northeast","longitude":"92.84090000000001","woe-name":"Mizoram","latitude":"23.2037","woe-label":"Mizoram, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[8081,5447],[8116,5332],[8139,5298],[8134,5094],[8110,5048],[8052,5039],[8069,4991],[8038,4946],[8052,4845],[8080,4798],[8077,4719],[8034,4721],[8024,4639],[7977,4647],[7912,4694],[7903,4640],[7877,4622],[7872,4697],[7828,4901],[7769,5001],[7754,5083],[7761,5129],[7715,5252],[7715,5289],[7732,5348],[7725,5481],[7714,5500],[7756,5503],[7773,5462],[7831,5508],[7869,5603],[7901,5568],[7968,5582],[7969,5462],[8010,5445],[8081,5447]]]}},{"type":"Feature","id":"IN.TR","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.46,"hc-key":"in-tr","hc-a2":"TR","labelrank":"2","hasc":"IN.TR","alt-name":null,"woe-id":"2345759","subregion":null,"fips":"IN26","postal-code":"TR","name":"Tripura","country":"India","type-en":"State","region":"Northeast","longitude":"91.70310000000001","woe-name":"Tripura","latitude":"23.8519","woe-label":"Tripura, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[7714,5500],[7725,5481],[7732,5348],[7715,5289],[7675,5298],[7624,5261],[7598,5289],[7605,5200],[7555,5146],[7540,5108],[7563,5037],[7491,4975],[7441,5066],[7406,5095],[7410,5017],[7383,5046],[7348,5172],[7313,5227],[7333,5344],[7375,5381],[7381,5423],[7452,5424],[7473,5470],[7511,5484],[7560,5455],[7576,5532],[7641,5561],[7652,5615],[7695,5561],[7685,5508],[7714,5500]]]}},{"type":"Feature","id":"IN.3464","properties":{"hc-group":"admin1","hc-middle-x":0.98,"hc-middle-y":0.91,"hc-key":"in-3464","hc-a2":"DA","labelrank":"2","hasc":"IN.","alt-name":null,"woe-id":"20070460","subregion":null,"fips":"IN32","postal-code":null,"name":"Daman and Diu","country":"India","type-en":null,"region":"West","longitude":"72.8511","woe-name":"Daman and Diu","latitude":"20.4226","woe-label":"Daman and Diu, IN, India","type":null},"geometry":{"type":"MultiPolygon","coordinates":[[[[634,3886],[639,3909],[646,3920],[658,3890],[634,3886]]],[[[-27,4056],[-29,4051],[-40,4046],[-36,4057],[-27,4056]]]]}},{"type":"Feature","id":"IN.DL","properties":{"hc-group":"admin1","hc-middle-x":0.6,"hc-middle-y":0.46,"hc-key":"in-dl","hc-a2":"DL","labelrank":"9","hasc":"IN.DL","alt-name":null,"woe-id":"20070458","subregion":null,"fips":"IN07","postal-code":"DL","name":"Delhi","country":"India","type-en":"Union Territory","region":"Central","longitude":"77.0856","woe-name":"Delhi","latitude":"28.69","woe-label":"Delhi, IN, India","type":"Union Territor"},"geometry":{"type":"Polygon","coordinates":[[[2346,7043],[2299,7010],[2256,7048],[2187,7046],[2174,7067],[2214,7116],[2211,7163],[2258,7189],[2304,7186],[2340,7123],[2346,7043]]]}},{"type":"Feature","id":"IN.HR","properties":{"hc-group":"admin1","hc-middle-x":0.55,"hc-middle-y":0.62,"hc-key":"in-hr","hc-a2":"HR","labelrank":"2","hasc":"IN.HR","alt-name":null,"woe-id":"2345744","subregion":null,"fips":"IN10","postal-code":"HR","name":"Haryana","country":"India","type-en":"State","region":"Central","longitude":"76.271","woe-name":"Haryana","latitude":"29.1003","woe-label":"Haryana, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2304,7186],[2258,7189],[2211,7163],[2214,7116],[2174,7067],[2187,7046],[2256,7048],[2299,7010],[2346,7043],[2405,6992],[2415,6937],[2393,6855],[2414,6817],[2325,6762],[2241,6762],[2251,6736],[2194,6709],[2206,6781],[2208,6888],[2179,6931],[2104,6875],[2070,6831],[2035,6866],[2037,6907],[1942,6874],[1932,6853],[1950,6782],[1874,6784],[1853,6829],[1886,6879],[1856,6893],[1906,6915],[1840,7007],[1803,7018],[1739,7105],[1693,7257],[1653,7367],[1566,7345],[1477,7414],[1404,7389],[1379,7433],[1402,7444],[1402,7563],[1358,7554],[1387,7600],[1378,7635],[1424,7620],[1485,7646],[1544,7600],[1571,7606],[1627,7548],[1603,7525],[1623,7474],[1699,7569],[1754,7551],[1818,7576],[1877,7538],[1967,7584],[1955,7622],[1975,7695],[2027,7687],[2033,7712],[2079,7671],[2117,7719],[2081,7732],[2145,7771],[2148,7801],[2211,7789],[2211,7875],[2186,7908],[2186,7930],[2183,7951],[2189,7973],[2168,7999],[2215,7995],[2247,7946],[2286,7923],[2290,7861],[2315,7834],[2447,7785],[2441,7743],[2321,7624],[2303,7556],[2259,7457],[2290,7396],[2285,7287],[2304,7186]]]}},{"type":"Feature","id":"IN.CH","properties":{"hc-group":"admin1","hc-middle-x":0.73,"hc-middle-y":0.29,"hc-key":"in-ch","hc-a2":"CH","labelrank":"9","hasc":"IN.CH","alt-name":null,"woe-id":"20070456","subregion":null,"fips":"IN05","postal-code":"CH","name":"Chandigarh","country":"India","type-en":"Union Territory","region":"North","longitude":"76.76049999999999","woe-name":"Chandigarh","latitude":"30.7452","woe-label":"Chandigarh, IN, India","type":"Union Territor"},"geometry":{"type":"Polygon","coordinates":[[[2183,7951],[2186,7930],[2186,7908],[2144,7949],[2183,7951]]]}},{"type":"Feature","id":"IN.HP","properties":{"hc-group":"admin1","hc-middle-x":0.36,"hc-middle-y":0.41,"hc-key":"in-hp","hc-a2":"HP","labelrank":"2","hasc":"IN.HP","alt-name":null,"woe-id":"2345745","subregion":null,"fips":"IN11","postal-code":"HP","name":"Himachal Pradesh","country":"India","type-en":"Union Territory","region":"North","longitude":"77.28749999999999","woe-name":"Himachal Pradesh","latitude":"31.6755","woe-label":"Himachal Pradesh, IN, India","type":"Union Territor"},"geometry":{"type":"Polygon","coordinates":[[[2447,7785],[2315,7834],[2290,7861],[2286,7923],[2247,7946],[2215,7995],[2168,7999],[2126,8037],[2106,8130],[2055,8166],[2035,8207],[2001,8164],[1961,8176],[1932,8268],[1884,8366],[1898,8383],[1871,8433],[1770,8484],[1809,8555],[1886,8618],[1865,8653],[1891,8693],[1888,8755],[1854,8807],[1911,8811],[1995,8866],[2023,8904],[2113,8936],[2175,8921],[2247,8850],[2308,8809],[2380,8784],[2445,8804],[2508,8841],[2554,8784],[2604,8678],[2727,8739],[2729,8692],[2693,8634],[2731,8643],[2755,8598],[2756,8522],[2853,8415],[2827,8337],[2878,8271],[2836,8232],[2858,8206],[2849,8162],[2898,8147],[2937,8079],[2894,8076],[2868,8110],[2767,8116],[2693,8145],[2608,8099],[2574,8099],[2507,8019],[2520,8003],[2491,7948],[2526,7839],[2440,7798],[2447,7785]]]}},{"type":"Feature","id":"IN.JK","properties":{"hc-group":"admin1","hc-middle-x":0.54,"hc-middle-y":0.45,"hc-key":"in-jk","hc-a2":"JK","labelrank":"2","hasc":"IN.JK","alt-name":null,"woe-id":"2345746","subregion":null,"fips":"IN12","postal-code":"JK","name":"Jammu and Kashmir","country":"India","type-en":"State","region":"North","longitude":"76.6395","woe-name":"Jammu and Kashmir","latitude":"33.9658","woe-label":"Jammu and Kashmir, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2731,8643],[2693,8634],[2729,8692],[2727,8739],[2604,8678],[2554,8784],[2508,8841],[2445,8804],[2380,8784],[2308,8809],[2247,8850],[2175,8921],[2113,8936],[2023,8904],[1995,8866],[1911,8811],[1854,8807],[1888,8755],[1891,8693],[1865,8653],[1745,8568],[1723,8593],[1675,8583],[1583,8640],[1481,8640],[1449,8693],[1471,8790],[1414,8757],[1342,8786],[1349,8851],[1293,8880],[1243,8938],[1244,8975],[1281,9004],[1296,9087],[1241,9129],[1263,9201],[1300,9206],[1346,9253],[1331,9274],[1236,9276],[1216,9307],[1256,9351],[1237,9395],[1183,9424],[1237,9502],[1236,9533],[1361,9581],[1403,9578],[1487,9544],[1605,9516],[1671,9521],[1716,9484],[1804,9458],[1860,9458],[1945,9527],[2025,9528],[2072,9554],[2123,9543],[2188,9580],[2202,9625],[2249,9620],[2280,9647],[2291,9696],[2547,9851],[2575,9824],[2609,9850],[2633,9833],[2613,9757],[2656,9670],[2702,9507],[2738,9474],[2814,9461],[2920,9389],[2938,9326],[2855,9270],[2851,9236],[2875,9134],[2870,9056],[2935,8957],[3073,8898],[3057,8814],[3113,8729],[3105,8688],[3036,8626],[2981,8619],[2968,8578],[2911,8572],[2864,8615],[2845,8686],[2816,8662],[2731,8643]]]}},{"type":"Feature","id":"IN.KL","properties":{"hc-group":"admin1","hc-middle-x":0.75,"hc-middle-y":0.64,"hc-key":"in-kl","hc-a2":"KL","labelrank":"2","hasc":"IN.KL","alt-name":null,"woe-id":"2345747","subregion":null,"fips":"IN13","postal-code":"KL","name":"Kerala","country":"India","type-en":"State","region":"South","longitude":"76.52370000000001","woe-name":"Kerala","latitude":"10.3666","woe-label":"Kerala, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1432,581],[1334,787],[1298,877],[1333,880],[1395,821],[1457,808],[1499,687],[1590,608],[1641,594],[1673,547],[1754,550],[1765,513],[1800,507],[1892,430],[1861,401],[1823,407],[1828,357],[1887,339],[1938,299],[1898,251],[1976,248],[2023,185],[1993,139],[2043,115],[2069,77],[2042,19],[2047,-109],[2103,-141],[2185,-95],[2217,-151],[2196,-211],[2209,-249],[2178,-387],[2238,-401],[2261,-433],[2202,-582],[2166,-629],[2198,-686],[2169,-751],[2208,-819],[2161,-905],[2139,-913],[2095,-880],[1926,-669],[1852,-495],[1833,-428],[1816,-273],[1875,-354],[1855,-261],[1810,-232],[1740,-22],[1692,79],[1660,211],[1609,339],[1579,361],[1548,448],[1464,545],[1464,588],[1501,627],[1433,612],[1432,581]]]}},{"type":"Feature","id":"IN.KA","properties":{"hc-group":"admin1","hc-middle-x":0.37,"hc-middle-y":0.48,"hc-key":"in-ka","hc-a2":"KA","labelrank":"2","hasc":"IN.KA","alt-name":"Maisur|Mysore","woe-id":"2345753","subregion":null,"fips":"IN19","postal-code":"KA","name":"Karnataka","country":"India","type-en":"State","region":"South","longitude":"75.667","woe-name":"Karnataka","latitude":"14.3681","woe-label":"Karnataka, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1892,430],[1800,507],[1765,513],[1754,550],[1673,547],[1641,594],[1590,608],[1499,687],[1457,808],[1395,821],[1333,880],[1298,877],[1285,916],[1238,1179],[1207,1328],[1178,1370],[1139,1549],[1106,1576],[1094,1644],[1032,1683],[1031,1720],[1089,1744],[1115,1868],[1092,2009],[1045,2014],[1079,2062],[1134,2059],[1191,2194],[1186,2250],[1141,2262],[1148,2304],[1110,2365],[1152,2365],[1182,2403],[1225,2367],[1271,2386],[1279,2425],[1345,2443],[1341,2480],[1386,2517],[1462,2483],[1497,2517],[1633,2520],[1646,2565],[1613,2683],[1637,2714],[1700,2675],[1733,2690],[1757,2654],[1860,2677],[1910,2661],[1904,2765],[1977,2825],[2037,2798],[2118,2901],[2122,2967],[2195,2987],[2249,3039],[2277,3088],[2326,3018],[2369,3027],[2392,2878],[2347,2834],[2356,2808],[2313,2763],[2383,2729],[2415,2737],[2296,2604],[2330,2533],[2307,2407],[2315,2357],[2248,2302],[2336,2273],[2331,2125],[2316,2106],[2202,2111],[2160,2078],[2178,1996],[2132,1932],[2153,1873],[2183,1856],[2190,1787],[2151,1738],[2052,1774],[2034,1733],[2073,1706],[2041,1607],[2044,1567],[2111,1520],[2084,1498],[2101,1445],[2153,1434],[2190,1477],[2235,1473],[2314,1416],[2262,1392],[2287,1300],[2245,1346],[2177,1345],[2133,1369],[2123,1411],[2085,1405],[2137,1306],[2117,1258],[2184,1258],[2189,1307],[2280,1281],[2302,1224],[2361,1239],[2437,1291],[2437,1316],[2493,1324],[2486,1272],[2529,1292],[2552,1218],[2586,1181],[2657,1176],[2649,1091],[2731,1029],[2673,923],[2606,886],[2600,850],[2534,884],[2436,890],[2396,821],[2361,818],[2344,774],[2364,743],[2313,635],[2381,633],[2419,600],[2381,542],[2310,525],[2288,480],[2220,483],[2151,461],[2119,488],[2084,479],[2049,411],[1944,420],[1937,446],[1892,430]]]}},{"type":"Feature","id":"IN.DN","properties":{"hc-group":"admin1","hc-middle-x":0.51,"hc-middle-y":0.59,"hc-key":"in-dn","hc-a2":"DN","labelrank":"9","hasc":"IN.DN","alt-name":"DAdra et Nagar Haveli|Dadra e Nagar Haveli","woe-id":"20070457","subregion":null,"fips":"IN06","postal-code":"DN","name":"Dadra and Nagar Haveli","country":"India","type-en":"Union Territory","region":"West","longitude":"73.029","woe-name":"Dadra and Nagar Haveli","latitude":"20.1841","woe-label":"Dadra and Nagar Haveli, IN, India","type":"Union Territor"},"geometry":{"type":"Polygon","coordinates":[[[677,3785],[660,3823],[724,3866],[758,3777],[755,3751],[695,3750],[677,3785]]]}},{"type":"Feature","id":"IN.MH","properties":{"hc-group":"admin1","hc-middle-x":0.32,"hc-middle-y":0.45,"hc-key":"in-mh","hc-a2":"MH","labelrank":"2","hasc":"IN.MH","alt-name":null,"woe-id":"2345750","subregion":null,"fips":"IN16","postal-code":"MH","name":"Maharashtra","country":"India","type-en":"State","region":"West","longitude":"75.46469999999999","woe-name":"Maharashtra","latitude":"19.4723","woe-label":"Maharashtra, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[677,3785],[695,3750],[755,3751],[758,3777],[798,3806],[832,3799],[834,3874],[872,3939],[840,3981],[873,4009],[936,3946],[996,3961],[1042,4026],[1029,4104],[968,4164],[1008,4225],[1052,4227],[1069,4267],[1192,4310],[1084,4330],[1019,4314],[995,4355],[1024,4369],[1020,4442],[1138,4483],[1165,4472],[1241,4508],[1268,4477],[1275,4391],[1346,4343],[1414,4342],[1469,4317],[1498,4271],[1564,4247],[1646,4241],[1772,4249],[1847,4235],[1883,4123],[1975,4130],[2040,4166],[2049,4220],[2084,4248],[2109,4311],[2228,4367],[2266,4357],[2308,4385],[2355,4383],[2388,4354],[2388,4293],[2343,4277],[2363,4235],[2445,4229],[2561,4250],[2685,4322],[2708,4276],[2806,4262],[2882,4275],[2889,4300],[2997,4332],[3006,4354],[3069,4345],[3120,4290],[3210,4305],[3225,4284],[3286,4289],[3352,4325],[3435,4258],[3434,4228],[3533,4213],[3514,4170],[3462,4141],[3444,4075],[3487,4043],[3495,3957],[3467,3917],[3513,3919],[3514,3811],[3441,3775],[3442,3741],[3480,3736],[3481,3652],[3441,3641],[3458,3592],[3483,3609],[3548,3524],[3616,3482],[3593,3428],[3553,3396],[3498,3446],[3435,3390],[3385,3284],[3412,3234],[3385,3180],[3318,3174],[3253,3224],[3269,3240],[3259,3313],[3271,3449],[3258,3481],[3186,3528],[3113,3501],[3069,3502],[2977,3546],[2906,3518],[2832,3597],[2741,3617],[2720,3607],[2665,3644],[2691,3583],[2654,3484],[2606,3442],[2603,3399],[2505,3425],[2478,3344],[2448,3315],[2506,3232],[2431,3176],[2418,3129],[2386,3121],[2351,3057],[2369,3027],[2326,3018],[2277,3088],[2249,3039],[2195,2987],[2122,2967],[2118,2901],[2037,2798],[1977,2825],[1904,2765],[1910,2661],[1860,2677],[1757,2654],[1733,2690],[1700,2675],[1637,2714],[1613,2683],[1646,2565],[1633,2520],[1497,2517],[1462,2483],[1386,2517],[1341,2480],[1345,2443],[1279,2425],[1271,2386],[1225,2367],[1182,2403],[1152,2365],[1110,2365],[1148,2304],[1141,2262],[1186,2250],[1191,2194],[1134,2059],[1079,2062],[1045,2014],[985,2013],[943,2074],[894,2052],[803,2191],[757,2386],[753,2588],[717,2721],[706,2843],[658,2984],[659,3048],[695,3039],[636,3098],[639,3173],[621,3256],[671,3294],[639,3304],[675,3343],[603,3341],[615,3415],[563,3678],[588,3767],[612,3777],[677,3785]]]}},{"type":"Feature","id":"IN.AS","properties":{"hc-group":"admin1","hc-middle-x":0.53,"hc-middle-y":0.45,"hc-key":"in-as","hc-a2":"AS","labelrank":"2","hasc":"IN.AS","alt-name":null,"woe-id":"2345741","subregion":null,"fips":"IN03","postal-code":"AS","name":"Assam","country":"India","type-en":"State","region":"Northeast","longitude":"92.99290000000001","woe-name":"Assam","latitude":"26.3302","woe-label":"Assam, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[6781,6422],[6863,6434],[6892,6472],[6963,6500],[7038,6460],[7085,6458],[7254,6482],[7282,6473],[7326,6513],[7368,6488],[7432,6494],[7498,6529],[7549,6522],[7563,6550],[7609,6549],[7819,6619],[7895,6586],[8019,6610],[8050,6595],[8131,6625],[8175,6664],[8179,6705],[8308,6846],[8304,6894],[8388,6879],[8672,7023],[8753,7033],[8810,7073],[8897,7082],[8841,6967],[8886,6907],[8893,6846],[8922,6868],[8935,6836],[8902,6797],[8812,6771],[8776,6785],[8737,6729],[8654,6679],[8606,6635],[8565,6639],[8492,6549],[8422,6518],[8382,6444],[8349,6463],[8322,6389],[8268,6310],[8269,6216],[8241,6178],[8197,6165],[8203,6209],[8048,6037],[8084,6002],[8088,5990],[8096,5960],[8098,5956],[8096,5948],[8096,5948],[8096,5948],[8078,5920],[8018,5748],[7994,5746],[7993,5654],[7968,5582],[7901,5568],[7869,5603],[7831,5508],[7773,5462],[7756,5503],[7714,5500],[7685,5508],[7695,5561],[7652,5615],[7679,5760],[7727,5737],[7762,5775],[7724,5803],[7784,5865],[7868,5901],[7859,5948],[7783,6002],[7782,6037],[7702,6101],[7627,6071],[7651,6213],[7615,6223],[7531,6198],[7495,6216],[7460,6165],[7410,6185],[7376,6118],[7336,6108],[7284,6062],[7277,6114],[7219,6097],[7196,6139],[7122,6140],[7041,6116],[7042,6144],[6980,6154],[6897,6127],[6843,6061],[6834,6017],[6858,5977],[6792,5916],[6797,5993],[6775,6073],[6790,6110],[6722,6207],[6780,6266],[6796,6348],[6781,6422]]]}},{"type":"Feature","id":"IN.AP","properties":{"hc-group":"admin1","hc-middle-x":0.26,"hc-middle-y":0.55,"hc-key":"in-ap","hc-a2":"AP","labelrank":"2","hasc":"IN.AP","alt-name":null,"woe-id":"2345740","subregion":null,"fips":"IN02","postal-code":"AP","name":"Andhra Pradesh","country":"India","type-en":"State","region":"South","longitude":"79.208","woe-name":"Andhra Pradesh","latitude":"16.4854","woe-label":"Andhra Pradesh, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[3391,1142],[3338,1227],[3304,1184],[3330,1137],[3384,1125],[3322,1123],[3213,1057],[3201,1029],[3156,1055],[3069,1067],[3061,1027],[2995,999],[2961,959],[2877,979],[2790,963],[2761,939],[2737,856],[2673,799],[2600,850],[2606,886],[2673,923],[2731,1029],[2649,1091],[2657,1176],[2586,1181],[2552,1218],[2529,1292],[2486,1272],[2493,1324],[2437,1316],[2437,1291],[2361,1239],[2302,1224],[2280,1281],[2189,1307],[2184,1258],[2117,1258],[2137,1306],[2085,1405],[2123,1411],[2133,1369],[2177,1345],[2245,1346],[2287,1300],[2262,1392],[2314,1416],[2235,1473],[2190,1477],[2153,1434],[2101,1445],[2084,1498],[2111,1520],[2044,1567],[2041,1607],[2073,1706],[2034,1733],[2052,1774],[2151,1738],[2190,1787],[2183,1856],[2153,1873],[2132,1932],[2178,1996],[2160,2078],[2202,2111],[2316,2106],[2331,2125],[2336,2273],[2248,2302],[2315,2357],[2307,2407],[2330,2533],[2296,2604],[2415,2737],[2383,2729],[2313,2763],[2356,2808],[2347,2834],[2392,2878],[2369,3027],[2351,3057],[2386,3121],[2418,3129],[2431,3176],[2506,3232],[2448,3315],[2478,3344],[2505,3425],[2603,3399],[2606,3442],[2654,3484],[2691,3583],[2665,3644],[2720,3607],[2741,3617],[2832,3597],[2906,3518],[2977,3546],[3069,3502],[3113,3501],[3186,3528],[3258,3481],[3271,3449],[3259,3313],[3269,3240],[3253,3224],[3318,3174],[3385,3180],[3415,3132],[3471,3136],[3544,3062],[3573,2992],[3635,2935],[3653,2839],[3676,2814],[3714,2838],[3807,2827],[3876,2824],[4004,2905],[4048,2922],[4123,2903],[4156,2924],[4148,2982],[4168,3069],[4198,3111],[4255,3035],[4251,3003],[4323,3049],[4419,3063],[4435,3116],[4413,3161],[4449,3208],[4477,3202],[4548,3253],[4512,3300],[4568,3292],[4627,3356],[4676,3279],[4699,3307],[4738,3232],[4835,3226],[4893,3237],[4968,3326],[5029,3378],[5061,3361],[5021,3288],[4934,3170],[4832,3065],[4808,3025],[4637,2932],[4582,2875],[4500,2752],[4372,2678],[4306,2654],[4215,2596],[4150,2527],[4139,2463],[4174,2460],[4155,2350],[4037,2282],[3951,2247],[3817,2270],[3756,2245],[3722,2113],[3663,2059],[3621,2077],[3590,2007],[3578,2073],[3494,2071],[3420,2030],[3384,1990],[3318,1845],[3305,1731],[3326,1610],[3359,1555],[3333,1434],[3347,1329],[3375,1271],[3369,1215],[3395,1148],[3391,1143],[3391,1142]],[[4132,2394],[4152,2410],[4125,2405],[4105,2404],[4132,2394]]]}},{"type":"Feature","id":"IN.ML","properties":{"hc-group":"admin1","hc-middle-x":0.31,"hc-middle-y":0.74,"hc-key":"in-ml","hc-a2":"ML","labelrank":"2","hasc":"IN.ML","alt-name":null,"woe-id":"2345752","subregion":null,"fips":"IN18","postal-code":"ML","name":"Meghalaya","country":"India","type-en":"State","region":"Northeast","longitude":"91.3031","woe-name":"Meghalaya","latitude":"25.4804","woe-label":"Meghalaya, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[7724,5803],[7693,5828],[7582,5863],[7485,5851],[7462,5833],[7394,5831],[7308,5853],[7161,5820],[7130,5829],[6997,5813],[6831,5862],[6805,5854],[6792,5916],[6858,5977],[6834,6017],[6843,6061],[6897,6127],[6980,6154],[7042,6144],[7041,6116],[7122,6140],[7196,6139],[7219,6097],[7277,6114],[7284,6062],[7336,6108],[7376,6118],[7410,6185],[7460,6165],[7495,6216],[7531,6198],[7615,6223],[7651,6213],[7627,6071],[7702,6101],[7782,6037],[7783,6002],[7859,5948],[7868,5901],[7784,5865],[7724,5803]]]}},{"type":"Feature","id":"IN.PB","properties":{"hc-group":"admin1","hc-middle-x":0.68,"hc-middle-y":0.66,"hc-key":"in-pb","hc-a2":"PB","labelrank":"2","hasc":"IN.PB","alt-name":null,"woe-id":"2345756","subregion":null,"fips":"IN23","postal-code":"PB","name":"Punjab","country":"India","type-en":"State","region":"North","longitude":"75.3762","woe-name":"Punjab","latitude":"31.0245","woe-label":"Punjab, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2168,7999],[2189,7973],[2183,7951],[2144,7949],[2186,7908],[2211,7875],[2211,7789],[2148,7801],[2145,7771],[2081,7732],[2117,7719],[2079,7671],[2033,7712],[2027,7687],[1975,7695],[1955,7622],[1967,7584],[1877,7538],[1818,7576],[1754,7551],[1699,7569],[1623,7474],[1603,7525],[1627,7548],[1571,7606],[1544,7600],[1485,7646],[1424,7620],[1378,7635],[1160,7657],[1190,7717],[1183,7744],[1149,7804],[1226,7873],[1325,8017],[1350,8014],[1441,8088],[1390,8126],[1429,8231],[1391,8341],[1418,8392],[1511,8464],[1584,8491],[1630,8485],[1672,8509],[1695,8554],[1675,8583],[1723,8593],[1745,8568],[1865,8653],[1886,8618],[1809,8555],[1770,8484],[1871,8433],[1898,8383],[1884,8366],[1932,8268],[1961,8176],[2001,8164],[2035,8207],[2055,8166],[2106,8130],[2126,8037],[2168,7999]]]}},{"type":"Feature","id":"IN.RJ","properties":{"hc-group":"admin1","hc-middle-x":0.57,"hc-middle-y":0.58,"hc-key":"in-rj","hc-a2":"RJ","labelrank":"2","hasc":"IN.RJ","alt-name":"Greater Rajasthan|Rajputana","woe-id":"2345757","subregion":null,"fips":"IN24","postal-code":"RJ","name":"Rajasthan","country":"India","type-en":"State","region":"Central","longitude":"73.8556","woe-name":"Rajasthan","latitude":"26.7468","woe-label":"Rajasthan, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[1378,7635],[1387,7600],[1358,7554],[1402,7563],[1402,7444],[1379,7433],[1404,7389],[1477,7414],[1566,7345],[1653,7367],[1693,7257],[1739,7105],[1803,7018],[1840,7007],[1906,6915],[1856,6893],[1886,6879],[1853,6829],[1874,6784],[1950,6782],[1932,6853],[1942,6874],[2037,6907],[2035,6866],[2070,6831],[2104,6875],[2179,6931],[2208,6888],[2206,6781],[2194,6709],[2251,6736],[2241,6762],[2325,6762],[2347,6656],[2386,6593],[2438,6568],[2455,6520],[2399,6475],[2469,6435],[2384,6403],[2360,6357],[2470,6411],[2567,6400],[2613,6417],[2662,6405],[2646,6367],[2610,6357],[2602,6312],[2539,6306],[2514,6271],[2370,6193],[2332,6185],[2291,6142],[2182,6087],[2116,6017],[2051,5991],[2026,5941],[2050,5838],[2086,5805],[2179,5776],[2275,5788],[2328,5827],[2352,5735],[2331,5697],[2276,5703],[2158,5668],[2165,5614],[2128,5591],[2194,5551],[2226,5481],[2170,5457],[2135,5480],[2137,5403],[2163,5356],[2118,5325],[2077,5384],[2038,5348],[2007,5368],[1925,5375],[1891,5396],[1883,5319],[1840,5288],[1830,5250],[1758,5224],[1730,5189],[1693,5200],[1655,5249],[1674,5288],[1742,5270],[1771,5316],[1751,5345],[1771,5390],[1748,5437],[1800,5471],[1760,5575],[1648,5549],[1560,5560],[1559,5627],[1596,5623],[1607,5690],[1538,5685],[1519,5626],[1482,5616],[1426,5645],[1430,5592],[1479,5586],[1474,5550],[1409,5542],[1381,5486],[1429,5450],[1386,5382],[1435,5371],[1468,5290],[1445,5237],[1453,5155],[1409,5083],[1316,5033],[1303,4988],[1367,4958],[1278,4915],[1223,4906],[1191,4954],[1095,5037],[1068,5030],[1042,5069],[976,5073],[975,5129],[885,5212],[909,5273],[887,5338],[846,5304],[789,5381],[812,5432],[794,5500],[765,5495],[736,5445],[672,5455],[606,5507],[566,5481],[556,5514],[428,5594],[390,5578],[246,5595],[139,5580],[70,5605],[18,5730],[9,5785],[-61,5904],[-61,6010],[-159,6004],[-192,6016],[-257,6131],[-229,6209],[-212,6346],[-247,6371],[-332,6373],[-439,6440],[-451,6470],[-430,6564],[-403,6618],[-302,6700],[-238,6772],[-208,6846],[-114,6928],[-74,6937],[-14,6891],[9,6814],[51,6796],[224,6851],[311,6849],[419,6877],[432,6934],[468,6985],[527,7032],[570,7146],[616,7199],[802,7286],[926,7486],[979,7640],[1046,7672],[1109,7684],[1183,7744],[1190,7717],[1160,7657],[1378,7635]]]}},{"type":"Feature","id":"IN.UP","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.53,"hc-key":"in-up","hc-a2":"UP","labelrank":"2","hasc":"IN.UP","alt-name":"United Provinces","woe-id":"2345760","subregion":null,"fips":"IN36","postal-code":"UP","name":"Uttar Pradesh","country":"India","type-en":"State","region":"Central","longitude":"80.9966","woe-name":"Uttar Pradesh","latitude":"26.7201","woe-label":"Uttar Pradesh, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2646,6367],[2662,6405],[2613,6417],[2567,6400],[2470,6411],[2360,6357],[2384,6403],[2469,6435],[2399,6475],[2455,6520],[2438,6568],[2386,6593],[2347,6656],[2325,6762],[2414,6817],[2393,6855],[2415,6937],[2405,6992],[2346,7043],[2340,7123],[2304,7186],[2285,7287],[2290,7396],[2259,7457],[2303,7556],[2321,7624],[2441,7743],[2447,7785],[2473,7789],[2571,7721],[2532,7683],[2501,7622],[2529,7495],[2572,7520],[2625,7492],[2653,7512],[2642,7600],[2668,7608],[2720,7533],[2754,7517],[2811,7443],[2907,7397],[2838,7342],[2888,7314],[2904,7271],[2954,7289],[3038,7217],[3064,7216],[3089,7168],[3132,7180],[3228,7170],[3268,7122],[3310,7156],[3407,7076],[3457,7059],[3458,7096],[3511,7077],[3635,6989],[3687,6979],[3744,6881],[3775,6896],[3797,6863],[3948,6774],[4007,6797],[4131,6708],[4219,6720],[4256,6637],[4391,6620],[4452,6576],[4471,6628],[4552,6628],[4646,6586],[4679,6538],[4727,6420],[4788,6402],[4791,6356],[4840,6312],[4740,6312],[4677,6242],[4770,6216],[4774,6172],[4705,6150],[4732,6096],[4804,6030],[4844,6035],[4901,6005],[4927,5961],[4887,5941],[4845,5966],[4829,5923],[4799,5918],[4764,5952],[4680,5869],[4496,5749],[4479,5724],[4491,5602],[4545,5564],[4552,5472],[4508,5459],[4528,5406],[4488,5318],[4442,5240],[4355,5227],[4295,5259],[4248,5330],[4269,5343],[4281,5411],[4268,5476],[4281,5522],[4156,5540],[4114,5505],[4098,5565],[3959,5617],[3936,5662],[3852,5679],[3835,5726],[3730,5713],[3709,5635],[3678,5610],[3645,5633],[3563,5634],[3592,5719],[3530,5707],[3516,5673],[3492,5703],[3448,5691],[3469,5661],[3387,5651],[3435,5716],[3385,5808],[3352,5808],[3231,5742],[3235,5705],[3120,5714],[3066,5674],[3047,5703],[3078,5746],[3031,5747],[3022,5710],[2934,5714],[2941,5749],[2887,5715],[2908,5820],[2891,5857],[2855,5814],[2829,5841],[2832,5785],[2782,5810],[2752,5752],[2786,5700],[2796,5632],[2829,5573],[2828,5503],[2873,5504],[2916,5436],[2848,5338],[2740,5415],[2702,5372],[2690,5415],[2647,5464],[2659,5527],[2627,5595],[2687,5657],[2699,5721],[2662,5810],[2701,5865],[2825,5893],[2834,5958],[2859,5978],[2911,6083],[2915,6150],[2950,6180],[2903,6319],[2826,6356],[2774,6341],[2706,6378],[2646,6367]]]}},{"type":"Feature","id":"IN.UT","properties":{"hc-group":"admin1","hc-middle-x":0.45,"hc-middle-y":0.46,"hc-key":"in-ut","hc-a2":"UT","labelrank":"2","hasc":"IN.UT","alt-name":"Uttarakhand","woe-id":"20070462","subregion":null,"fips":"IN39","postal-code":"UT","name":"Uttaranchal","country":"India","type-en":"State","region":"Central","longitude":"79.2841","woe-name":"Uttaranchal","latitude":"30.0576","woe-label":"Uttarakhand, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[2447,7785],[2440,7798],[2526,7839],[2491,7948],[2520,8003],[2507,8019],[2574,8099],[2608,8099],[2693,8145],[2767,8116],[2868,8110],[2894,8076],[2937,8079],[2898,8147],[2931,8155],[2962,8201],[3008,8157],[3041,8076],[3077,8036],[3138,8001],[3226,8011],[3306,7940],[3364,7916],[3346,7850],[3397,7844],[3535,7783],[3555,7755],[3632,7712],[3579,7684],[3511,7615],[3483,7605],[3450,7549],[3412,7529],[3418,7468],[3359,7393],[3382,7351],[3365,7283],[3330,7271],[3296,7194],[3310,7156],[3268,7122],[3228,7170],[3132,7180],[3089,7168],[3064,7216],[3038,7217],[2954,7289],[2904,7271],[2888,7314],[2838,7342],[2907,7397],[2811,7443],[2754,7517],[2720,7533],[2668,7608],[2642,7600],[2653,7512],[2625,7492],[2572,7520],[2529,7495],[2501,7622],[2532,7683],[2571,7721],[2473,7789],[2447,7785]]]}},{"type":"Feature","id":"IN.JH","properties":{"hc-group":"admin1","hc-middle-x":0.43,"hc-middle-y":0.59,"hc-key":"in-jh","hc-a2":"JH","labelrank":"2","hasc":"IN.JH","alt-name":"Vananchal","woe-id":"20070463","subregion":null,"fips":"IN38","postal-code":"JH","name":"Jharkhand","country":"India","type-en":"State","region":"East","longitude":"85.05840000000001","woe-name":"Jharkhand","latitude":"23.5221","woe-label":"Jharkhand, IN, India","type":"State"},"geometry":{"type":"Polygon","coordinates":[[[4488,5318],[4528,5406],[4508,5459],[4552,5472],[4614,5464],[4694,5481],[4738,5513],[4758,5467],[4833,5479],[4836,5448],[4895,5393],[4936,5428],[4961,5421],[5011,5470],[5071,5414],[5224,5481],[5273,5480],[5321,5508],[5314,5539],[5348,5588],[5409,5562],[5446,5581],[5498,5509],[5547,5509],[5543,5463],[5603,5428],[5621,5483],[5653,5516],[5713,5529],[5763,5509],[5772,5541],[5819,5537],[5837,5685],[5889,5727],[5897,5767],[5938,5772],[5977,5830],[6072,5791],[6073,5742],[6113,5666],[6105,5613],[6117,5546],[6071,5546],[6091,5510],[6065,5437],[6034,5417],[6046,5385],[5984,5358],[5986,5327],[5911,5292],[5900,5247],[5842,5230],[5768,5266],[5743,5191],[5620,5152],[5578,5100],[5535,5075],[5502,5124],[5464,5134],[5455,5096],[5395,5083],[5420,5058],[5398,4996],[5421,4958],[5468,4956],[5515,4909],[5627,4903],[5611,4817],[5681,4778],[5691,4749],[5742,4727],[5732,4697],[5782,4637],[5724,4598],[5649,4642],[5606,4638],[5484,4722],[5448,4699],[5466,4658],[5466,4544],[5446,4511],[5398,4506],[5399,4552],[5358,4530],[5265,4561],[5191,4506],[5150,4536],[5105,4536],[5140,4603],[5130,4690],[5073,4657],[4935,4654],[4896,4616],[4796,4636],[4730,4694],[4809,4759],[4866,4833],[4857,4866],[4779,4876],[4746,4933],[4739,5025],[4714,5020],[4737,5093],[4723,5128],[4698,5096],[4652,5104],[4620,5194],[4569,5239],[4555,5290],[4488,5318]]]}}]}');
;// CONCATENATED MODULE: ./src/3rd-party/mapdata/index.js



























// Find all geoJson here -> http://code.highcharts.com/mapdata/
var countries = {
  ru: ru_all_geo_namespaceObject,
  ua: ua_all_geo_namespaceObject,
  by: by_all_geo_namespaceObject,
  kz: kz_all_geo_namespaceObject,
  gb: gb_all_geo_namespaceObject,
  es: es_all_geo_namespaceObject,
  fr: fr_all_geo_namespaceObject,
  de: de_all_geo_namespaceObject,
  ca: ca_all_geo_namespaceObject,
  us: us_all_geo_namespaceObject,
  mx: mx_all_geo_namespaceObject,
  gt: gt_all_geo_namespaceObject,
  hn: hn_all_geo_namespaceObject,
  br: br_all_geo_namespaceObject,
  ar: ar_all_geo_namespaceObject,
  co: co_all_geo_namespaceObject,
  cl: cl_all_geo_namespaceObject,
  pe: pe_all_geo_namespaceObject,
  ec: ec_all_geo_namespaceObject,
  "do": do_all_geo_namespaceObject,
  uy: uy_all_geo_namespaceObject,
  sv: sv_all_geo_namespaceObject,
  bo: bo_all_geo_namespaceObject,
  ng: ng_all_geo_namespaceObject,
  "in": in_all_geo_namespaceObject
};
var world = world_namespaceObject;

/***/ }),

/***/ "ZHGk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Ay: () => (/* binding */ RelayHubWrapper),
/* harmony export */   NT: () => (/* binding */ METHOD_NAMES),
/* harmony export */   Ru: () => (/* binding */ EVENT_TYPES)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("+BzW");
/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("/0+J");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("79Ja");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("k6Di");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Kq5O");
/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var normalizr__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("BGeE");
/* harmony import */ var utils_localStorage__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("S/wQ");
/* harmony import */ var _schemas__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("I012");





function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }




var signalR = __webpack_require__("f7AB");
var EVENT_TYPES = {
  TASKS: 'OnTopicTaskProgress',
  MENTIONS_COUNT: 'OnMentionCountUpdate'
};
var METHOD_NAMES = {
  SUBSCRIBE_FOR_MENTION_COUNT_UPDATE: 'MentionCountSubscribe',
  UNSUBSCRIBE_FROM_MENTION_COUNT_UPDATE: 'MentionCountUnsubscribe'
};
var NORMALIZERS = (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)((0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)({}, EVENT_TYPES.TASKS, function (data) {
  return (0,normalizr__WEBPACK_IMPORTED_MODULE_2__/* .normalize */ .S8)({
    tasks: [data]
  }, {
    tasks: (0,normalizr__WEBPACK_IMPORTED_MODULE_2__/* .arrayOf */ .jk)(_schemas__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.task)
  });
}), EVENT_TYPES.MENTIONS_COUNT, function (data) {
  return data.mentionCount;
});
var RelayHubWrapper = /*#__PURE__*/(0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)(function RelayHubWrapper(_ref) {
  var _this = this;
  var _ref$apiPrefix = _ref.apiPrefix,
    apiPrefix = _ref$apiPrefix === void 0 ? '/' : _ref$apiPrefix;
  (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(this, RelayHubWrapper);
  (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(this, "connected", false);
  (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(this, "buildConnection", function () {
    var connection = new signalR.HubConnectionBuilder().withUrl("".concat(_this.apiPrefix, "/relay"), {
      accessTokenFactory: function accessTokenFactory() {
        return (0,utils_localStorage__WEBPACK_IMPORTED_MODULE_3__/* .extractSession */ .ES)().accessToken;
      }
    }).withAutomaticReconnect().build();
    Object.values(EVENT_TYPES).map(function (event) {
      return connection.on(event, function (data) {
        var normalizedData = NORMALIZERS[event] ? NORMALIZERS[event](data) : data;
        if (_this.messageHandler[event]) {
          _this.messageHandler[event](normalizedData);
        }
      });
    });
    connection.onreconnected(function () {
      _this.flushPending();
    });
    return connection;
  });
  (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(this, "flushPending", function () {
    while (_this.pendingMessages.length > 0) {
      var message = _this.pendingMessages.shift();
      _this.sendMessage(message);
    }
  });
  (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(this, "startListening", /*#__PURE__*/(0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A)( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().mark(function _callee() {
    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().wrap(function _callee$(_context) {
      while (1) switch (_context.prev = _context.next) {
        case 0:
          _this.connection = _this.buildConnection();
          _context.next = 3;
          return _this.connection.start();
        case 3:
          _this.connected = true;
          _this.flushPending();
        case 5:
        case "end":
          return _context.stop();
      }
    }, _callee);
  })));
  (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(this, "setMessageHandlers", function (_ref3) {
    var eventHandlers = _ref3.eventHandlers;
    _this.messageHandler = eventHandlers.reduce(function (handlers, _ref4) {
      var event = _ref4.event,
        handler = _ref4.handler;
      return _objectSpread(_objectSpread({}, handlers), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)({}, event, handler));
    }, _this.messageHandler);
  });
  (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(this, "sendMessage", function (_ref5) {
    var methodName = _ref5.methodName,
      args = _ref5.args;
    if (!_this.connected) {
      return;
    }
    try {
      var _this$connection;
      (_this$connection = _this.connection).invoke.apply(_this$connection, [methodName].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(args || [])));
    } catch (_unused) {
      _this.pendingMessages.push({
        methodName: methodName,
        args: args
      });
    }
  });
  this.apiPrefix = apiPrefix;
  this.messageHandler = {};
  this.pendingMessages = [];
});


/***/ }),

/***/ "I012":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var normalizr__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("BGeE");

var mention = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('mentions');
var author = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('authors', {
  idAttribute: 'uid'
});
var geo = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('geos', {
  idAttribute: function idAttribute(geoItem) {
    return geoItem.cityId || geoItem.regionId;
  }
});
var channel = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('channels', {
  idAttribute: 'uid'
});
var tag = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('tags');
var trend = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('trends');
var rule = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('rules');
var integration = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('integrations');
var source = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('sources');
var theme = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('themes');
var user = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('users');
var report = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('reports');
var task = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('tasks', {
  idAttribute: 'taskId'
});
// When BE will return logoId remove { idAttribute: 'label' }
var logo = new normalizr__WEBPACK_IMPORTED_MODULE_0__/* .Schema */ .Sj('logos', {
  idAttribute: 'label'
});
mention.define({
  source: source,
  channel: channel,
  trend: trend,
  tags: (0,normalizr__WEBPACK_IMPORTED_MODULE_0__/* .arrayOf */ .jk)(tag)
});
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  mention: mention,
  author: author,
  geo: geo,
  channel: channel,
  tag: tag,
  trend: trend,
  rule: rule,
  integration: integration,
  task: task,
  source: source,
  theme: theme,
  user: user,
  report: report,
  logo: logo
});

/***/ }),

/***/ "kHEK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ apiSingleton)
});

// EXTERNAL MODULE: ./src/config.js
var config = __webpack_require__("Jret");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/query-string/index.js
var query_string = __webpack_require__("cr+I");
// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("vDqi");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);
// EXTERNAL MODULE: ./node_modules/uuid/dist/esm-browser/v4.js
var v4 = __webpack_require__("7Cbv");
// EXTERNAL MODULE: ./src/utils/isNetworkError.js
var isNetworkError = __webpack_require__("+kf1");
;// CONCATENATED MODULE: ./src/api/ApiClient.js



function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/* eslint class-methods-use-this: 0 */





var MOCK_API = {
  ENABLE: false,
  MODE: 'get' // save | get
};
var sendDataToMockApi =  false && 0;
var getDataFromMockApi =  false && 0;
var ApiClient = /*#__PURE__*/function () {
  function ApiClient() {
    var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
      _ref$prefix = _ref.prefix,
      prefix = _ref$prefix === void 0 ? 'api/v1' : _ref$prefix;
    (0,classCallCheck/* default */.A)(this, ApiClient);
    this.prefix = prefix;
    this.tokenExpirationHandler = null;
  }
  return (0,createClass/* default */.A)(ApiClient, [{
    key: "get",
    value: function get(requestUrl) {
      var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.request({
        url: requestUrl,
        method: 'GET',
        body: payload,
        params: params
      });
    }
  }, {
    key: "put",
    value: function put(requestUrl) {
      var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return this.request({
        url: requestUrl,
        method: 'PUT',
        body: payload
      });
    }
  }, {
    key: "patch",
    value: function patch(requestUrl) {
      var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return this.request({
        url: requestUrl,
        method: 'PATCH',
        body: payload
      });
    }
  }, {
    key: "post",
    value: function post(requestUrl) {
      var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      var signal = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
      return this.request({
        url: requestUrl,
        method: 'POST',
        body: payload,
        params: params,
        signal: signal
      });
    }
  }, {
    key: "download",
    value: function download(requestUrl) {
      var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.request({
        responseType: 'blob',
        url: requestUrl,
        method: 'POST',
        body: payload,
        params: params
      });
    }
  }, {
    key: "delete",
    value: function _delete(requestUrl) {
      var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return this.request({
        url: requestUrl,
        method: 'DELETE',
        params: params
      });
    }
  }, {
    key: "request",
    value: function request(_ref2) {
      var _this = this;
      var responseType = _ref2.responseType,
        _ref2$url = _ref2.url,
        relativePath = _ref2$url === void 0 ? '/' : _ref2$url,
        _ref2$method = _ref2.method,
        method = _ref2$method === void 0 ? 'GET' : _ref2$method,
        params = _ref2.params,
        body = _ref2.body,
        _ref2$headers = _ref2.headers,
        headers = _ref2$headers === void 0 ? {
          Accept: 'application/json',
          'Content-Type': 'application/json',
          'X-RequestId': (0,v4/* default */.A)()
        } : _ref2$headers,
        signal = _ref2.signal;
      var url = this.stringifyUrl("".concat(this.prefix).concat(relativePath), this.removeUndefinedValues(params));
      var request = {
        url: url,
        method: method,
        headers: headers,
        data: body,
        responseType: responseType,
        signal: signal
      };
      if (typeof body === 'string') {
        request.headers['Content-Type'] = 'application/x-www-form-urlencoded';
      }
      if (this.accessToken && this.tokenType) {
        request.headers.Authorization = "".concat(this.tokenType, " ").concat(this.accessToken);
      }
      var apiCall = function apiCall(req) {
        if (getDataFromMockApi) {
          return axios_default().post("http://localhost:3000/get?".concat(request.url), {
            request: request
          }).then(function (r) {
            return _this.checkStatus(r);
          });
        }
        return axios_default()(req).then(function (response) {
          if (sendDataToMockApi) {
            axios_default().post("http://localhost:3000/save?".concat(request.url), {
              request: request,
              response: response
            });
          }
          return _this.checkStatus(response);
        });
      };
      var retryNetworkError = function retryNetworkError(requestUrl, methodType) {
        return function (error) {
          if ((0,isNetworkError/* default */.A)(error)) {
            console.error('NETWORK_ERROR. Retrying...', JSON.stringify(error), requestUrl);
            if (requestUrl && requestUrl.includes('themes') && methodType === 'POST') {
              throw error;
            }
            return apiCall(request);
          }
          _this.handleUnauthorizedStatus(error.response, function () {
            return _this.verifyAccountAuthorization(request.headers);
          });
          throw error;
        };
      };
      return apiCall(request)["catch"](retryNetworkError(url, method));
    }
  }, {
    key: "verifyAccountAuthorization",
    value: function verifyAccountAuthorization(headers) {
      var _this2 = this;
      axios_default().get("".concat(this.prefix, "/me"), {
        headers: headers
      }).then(function () {
        console.warn('verifyAccountAuthorization successful');
      })["catch"](function (error) {
        if (!_this2.tokenExpirationHandler || typeof _this2.tokenExpirationHandler !== 'function') {
          throw new Error('ApiClient.tokenExpirationHandler is required.');
        }
        console.error('verifyAccountAuthorization', error);
        _this2.handleUnauthorizedStatus(error.response, _this2.tokenExpirationHandler);
      });
    }
  }, {
    key: "setAccessToken",
    value: function setAccessToken(_ref3) {
      var _ref3$tokenType = _ref3.tokenType,
        tokenType = _ref3$tokenType === void 0 ? '' : _ref3$tokenType,
        _ref3$accessToken = _ref3.accessToken,
        accessToken = _ref3$accessToken === void 0 ? '' : _ref3$accessToken;
      this.accessToken = accessToken;
      this.tokenType = tokenType;
    }
  }, {
    key: "setErrorHandler",
    value: function setErrorHandler(handler) {
      this.errorHandler = handler;
    }
  }, {
    key: "setTokenExpirationHandler",
    value: function setTokenExpirationHandler(handler) {
      this.tokenExpirationHandler = handler;
    }
  }, {
    key: "checkStatus",
    value: function checkStatus(response) {
      if (response.status >= 200 && response.status < 300) {
        return response.data;
      }
      if (this.errorHandler) {
        this.errorHandler(response);
      }
      var error = new Error(response.statusText);
      error.response = response;
      throw error;
    }
  }, {
    key: "handleUnauthorizedStatus",
    value: function handleUnauthorizedStatus(response, callback) {
      if ((response === null || response === void 0 ? void 0 : response.status) === 401) {
        callback();
      }
    }
  }, {
    key: "stringifyUrl",
    value: function stringifyUrl(path, params) {
      return params ? "".concat(path, "?").concat(query_string.stringify(params)) : path;
    }
  }, {
    key: "removeUndefinedValues",
    value: function removeUndefinedValues() {
      var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return Object.keys(data).reduce(function (obj, key) {
        if (data[key] === '' || data[key] === undefined) {
          return obj;
        }
        return _objectSpread(_objectSpread({}, obj), {}, (0,defineProperty/* default */.A)({}, key, data[key]));
      }, {});
    }
  }]);
}();

// EXTERNAL MODULE: ./src/api/Hub.js
var Hub = __webpack_require__("ZHGk");
// EXTERNAL MODULE: ./node_modules/normalizr/lib/index.js
var lib = __webpack_require__("BGeE");
// EXTERNAL MODULE: ./src/api/schemas.js
var schemas = __webpack_require__("I012");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./node_modules/linkifyjs/html.js
var html = __webpack_require__("GQGV");
var html_default = /*#__PURE__*/__webpack_require__.n(html);
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./src/utils/dates/dateUtils.ts
var dateUtils = __webpack_require__("9jXX");
// EXTERNAL MODULE: ./src/models/filters/Filter.ts
var Filter = __webpack_require__("+MLa");
// EXTERNAL MODULE: ./src/utils/themeFilterUtils.ts
var themeFilterUtils = __webpack_require__("oLrK");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/parseISO/index.js + 1 modules
var parseISO = __webpack_require__("VxfS");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/format/index.js + 15 modules
var format = __webpack_require__("1ihG");
;// CONCATENATED MODULE: ./src/api/utils.ts
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};









var ELLIPSIS = '…';
function decorateMentions(_a) {
    var mentions = _a.mentions, other = __rest(_a, ["mentions"]);
    return __assign({ mentions: mentions.map(decorateMention) }, other);
}
var TAG_REPLACER = {
    '<b>': '__BOLD__',
    '</b>': '__!BOLD__',
    '<em>': '__SEMANTIC_ITALIC__',
    '</em>': '__!SEMANTIC_ITALIC__',
    '<i>': '__ITALIC__',
    '</i>': '__!ITALIC__',
};
var INVERTED_TAG_REPLACER = (0,lodash.invert)(TAG_REPLACER);
var replaceTagsForLinkifying = function (str) { return str
    .replace(/(<b>|<em>|<i>|<\/b>|<\/em>|<\/i>)/g, function (match) { return TAG_REPLACER[match] || match; }); };
var removeTagReplacements = function (str) { return str
    .replace(/(__BOLD__|__!BOLD__|__SEMANTIC_ITALIC__|__!SEMANTIC_ITALIC__|__ITALIC__|__!ITALIC__)/g, function (match) { return INVERTED_TAG_REPLACER[match] || match; }); };
var linkifyMentionText = (0,redux/* compose */.Zz)(removeTagReplacements, (html_default()));
function processMentionText(originalText) {
    var guid = '881aea976e9840db8172e685122049c9';
    var atSign = '@';
    var escapeAtSign = function (text) { return text.replace(new RegExp(atSign, 'g'), guid); };
    var unescapeAtSign = function (text) { return text.replace(new RegExp(guid, 'g'), atSign); };
    var preparedText = escapeAtSign(replaceTagsForLinkifying(originalText)
        .split('\n')
        .filter(function (line) { return !!line.replace(/\s+/g, ''); })
        .join('\n'));
    try {
        var linkified = linkifyMentionText(
        // @ts-ignore
        preparedText, {
            ignoreTags: ['b', 'em', 'i'],
            nl2br: true,
            attributes: {
                rel: 'noopener noreferrer',
            },
            format: function (text) { return unescapeAtSign(text); },
            formatHref: function (text) { return unescapeAtSign(text); },
        });
        var mapped = unescapeAtSign(linkified);
        var marksRegex_1 = /<b>|<\/b>|<em>|<\/em>|<i>|<\/i>/g;
        var removeAttrsFromBeginning_1 = function (str) { return str.replace(/^[^>]*>/g, ''); };
        var removeMarks_1 = function (str) { return str.replace(marksRegex_1, ''); };
        var removeBrokenTags_1 = function (linkText) { return (linkText.includes(ELLIPSIS)
            ? linkText
                .replace(/<b>((?!<\/b>).)*$/g, function (match) { return match.replace(/<b>/g, ''); })
                .replace(/<em>((?!<\/em>).)*$/g, function (match) { return match.replace(/<em>/, ''); })
                .replace(/<i>((?!<\/i>).)*$/g, function (match) { return match.replace(/<i>/, ''); })
                .replace(/<[^>]*$/g, ELLIPSIS)
            : linkText); };
        var cutText_1 = function (length) { return function (text) {
            var pureText = removeMarks_1(text);
            var marks = text.match(marksRegex_1) || [];
            return pureText.length > 50
                ? text.slice(0, length + marks.reduce(function (offset, mark) { return offset + mark.length; }, 0)) + ELLIPSIS
                : text;
        }; };
        return mapped
            ? mapped.replace(/&#xA;/g, '\n')
                .replace(/href="[^"]*<[^>/]*>[^"]*<\/[^>]*>[^"]*"/g, function (match) { return match.replace(/<[^>]*>/g, ''); })
                .replace(/href="[^"]*"[^>]*>((?!<\/a>).)*/g, function (match) {
                var fullLinkText = removeAttrsFromBeginning_1(match);
                var href = removeMarks_1(fullLinkText);
                var attrs = match.replace(/href="[^"]*"/g, '').replace(/>(.)*/g, '').trim();
                var mappedLinkText = (0,redux/* compose */.Zz)(removeBrokenTags_1, cutText_1(50))(fullLinkText);
                return "href=\"".concat(href, "\" ").concat(attrs, ">").concat(mappedLinkText);
            })
            : '';
    }
    catch (error) {
        console.error('Linkify error', error);
    }
    return originalText;
}
function decorateMention(mention) {
    var _a;
    var newMention = __assign({}, mention);
    newMention.text = mention.text && processMentionText(mention.text);
    if (mention.postType === 'comment' || mention.postType === 'replyComment' || mention.postType === 'reply') {
        newMention.parentText = mention.title && mention.title.length >= 100 ? "".concat(mention.title, "...") : mention.title;
        newMention.title = '';
    }
    if (mention.source.name === 'play.google.com') {
        newMention.title = '';
    }
    newMention.originalTitle = mention.title;
    newMention.imageBrands = mention.imageBrands || [];
    newMention.imageObjects = mention.imageObjects || [];
    newMention.imageScenes = mention.imageScenes || [];
    newMention.imagePeople = mention.imagePeople || [];
    newMention.imageColors = mention.imageColors || [];
    newMention.imageContentSensitivity = mention.imageContentSensitivity || [];
    newMention.imageActivities = mention.imageActivities || [];
    newMention.ocrTexts = mention.ocrTexts || [];
    newMention.channelRating = (_a = mention.channel) === null || _a === void 0 ? void 0 : _a.rating;
    // TODO: REMOVE DEPRECATED ASPECTS USAGE
    newMention.aspects = (mention.sentimentAspects || [])
        .map(function (_a) {
        var aspect = _a.aspect, sentiment = _a.sentiment;
        return ({ aspect: aspect, sentiment: sentiment, id: "".concat(aspect, "_").concat(sentiment) });
    });
    newMention.sentimentAspects = undefined;
    return newMention;
}
// TODO: NewFilters: remove it
var dateFormatters = {
    from: function (date) { return ((0,dateUtils/* isDateWithTime */.Wo)(date)
        ? moment_default()(date).format('YYYY-MM-DDTHH:mm')
        : moment_default()(date).format('YYYY-MM-DD')); },
    to: function (date) { return ((0,dateUtils/* isDateWithTime */.Wo)(date)
        ? moment_default()(date).format('YYYY-MM-DDTHH:mm')
        : moment_default()(date).add(1, 'days').format('YYYY-MM-DD')); },
};
function formatDate(date) {
    var parsedDate = typeof date === 'string' ? (0,parseISO/* default */.A)(date) : date;
    return (0,dateUtils/* isDateWithTime */.Wo)(parsedDate)
        ? (0,format/* default */.A)(parsedDate, 'yyyy-MM-dd\'T\'HH:mm')
        : (0,format/* default */.A)(parsedDate, 'yyyy-MM-dd');
}
// This function can be used further for any preparation that needs to be done before fetching the data
// In the current case range filters use a different data shape therefor we need to process it differently
var prepareFilter = function (filterGroup) {
    if (themeFilterUtils/* RANGE_FILTERS */.Y4.includes(filterGroup.fieldName)) {
        return __assign(__assign({}, filterGroup), { value: typeof filterGroup.value !== 'string'
                ? "[".concat(filterGroup.value[0], "..").concat(filterGroup.value[1], "]")
                : Number(filterGroup.value) });
    }
    if (filterGroup.fieldName === themeFilterUtils/* TEXT_FILTER_TYPE */.k8) {
        return __assign(__assign({}, filterGroup), { value: filterGroup.value });
    }
    return __assign(__assign({}, filterGroup), { value: JSON.stringify(filterGroup.value) });
};
function formatFilter_NEW(filter) {
    if (filter[Filter/* IS_NATIVE_FILTER */.cR])
        return filter.toApi();
    return filter.reduce(function (accum, value, key) {
        var _a, _b;
        if (key === 'filterGroups' && !value.isEmpty()) {
            return __assign(__assign({}, accum), { filters: value.toJS()
                    .map(function (filterGroup) { return prepareFilter(filterGroup); }) });
        }
        if (key === 'from' || key === 'to') {
            return __assign(__assign({}, accum), (_a = {}, _a[key] = dateFormatters[key](value), _a));
        }
        return __assign(__assign({}, accum), (_b = {}, _b[key] = immutable.Iterable.isIterable(value) ? value.toJS() : value, _b));
    }, { op: filter.op });
}
var createFilterQueryObject = function (filter, prefix) {
    if (prefix === void 0) { prefix = undefined; }
    var queries = [];
    if (!prefix && !filter.filters) {
        return filter;
    }
    Object.keys(filter).forEach(function (key) {
        var _a;
        var formattedKey = key === 'fieldName' ? 'field' : key;
        var k = prefix ? "".concat(prefix, "[").concat(formattedKey, "]") : formattedKey;
        var v = filter[key];
        queries.push((v !== null && typeof v === 'object')
            ? createFilterQueryObject(v, k)
            : (_a = {}, _a[k] = v, _a));
    });
    return queries.reduce(function (acc, item) { return (__assign(__assign({}, acc), item)); }, {});
};

;// CONCATENATED MODULE: ./src/api/Base.ts
var Base = /** @class */ (function () {
    function Base(_a) {
        var apiClient = _a.apiClient;
        var _this = this;
        this.abortControllers = {};
        this.createAbortRequestController = function (name) {
            if (!_this.abortControllers) {
                _this.abortControllers = {};
            }
            var controllerName = "".concat(name, "abortController");
            if (!_this.abortControllers[controllerName]) {
                _this.abortControllers[controllerName] = new AbortController();
            }
            if (_this.abortControllers[controllerName].signal.aborted) {
                _this.abortControllers[controllerName] = new AbortController();
            }
            if (!_this[name].prototype.abort) {
                _this[name].prototype.abort = function () {
                    _this.abortControllers[controllerName].abort();
                };
            }
            return _this.abortControllers[controllerName];
        };
        if (!apiClient)
            throw new Error('[apiClient] required');
        this.apiClient = apiClient;
    }
    return Base;
}());
/* harmony default export */ const api_Base = (Base);

;// CONCATENATED MODULE: ./src/api/Stats.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var Stats_assign = (undefined && undefined.__assign) || function () {
    Stats_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Stats_assign.apply(this, arguments);
};




var StatsAPI = /** @class */ (function (_super) {
    __extends(StatsAPI, _super);
    function StatsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.fetchStats = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, config = _a.config, _b = _a.statsBy, statsBy = _b === void 0 ? null : _b;
            var abortController = _this.createAbortRequestController('fetchStats');
            if (!themeId) {
                return null;
            }
            if (Array.isArray(themeId)) {
                return _this.apiClient
                    .post('/statistics', Stats_assign(Stats_assign({}, config), (formatFilter_NEW(filter))), { themeIds: themeId, metric: statsBy })
                    .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                    entities: {
                        sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                        authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                        tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                        trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                        geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                    },
                }); });
            }
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign(Stats_assign({}, config), (formatFilter_NEW(filter))), { metric: statsBy }, abortController.signal)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchStatsNew = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, config = _a.config, _b = _a.statsBy, statsBy = _b === void 0 ? null : _b;
            var abortController = _this.createAbortRequestController('fetchStatsNew');
            if (!themeId) {
                return null;
            }
            if (Array.isArray(themeId)) {
                return _this.apiClient
                    .post('/statistics', Stats_assign(Stats_assign({}, config), filter.toApi()), { themeIds: themeId, metric: statsBy })
                    .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                    entities: {
                        sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                        authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                        tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                        trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                        geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                    },
                }); });
            }
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign(Stats_assign({}, config), filter.toApi()), { metric: statsBy }, abortController.signal)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchGlobalStats = function (_a) {
            var topicQuery = _a.topicQuery, config = _a.config, _b = _a.statsBy, statsBy = _b === void 0 ? null : _b;
            var abortController = _this.createAbortRequestController('fetchGlobalStats');
            return _this.apiClient
                .post('/themes/statistics', Stats_assign(Stats_assign({}, config), { topicQuery: topicQuery }), { metric: statsBy }, abortController.signal)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.validateSocialSearchQuery = function (_a) {
            var query = _a.query;
            return _this.apiClient
                .post('/social-search/query/validate', {}, { query: query });
        };
        _this.fetchSocialSearchFilter = function () {
            return _this.apiClient
                .get('/social-search/defaultfilter');
        };
        _this.fetchSocialSearchStats = function (_a) {
            var query = _a.query, config = _a.config, filter = _a.filter, statsBy = _a.statsBy;
            if (!query) {
                return _this.apiClient
                    .post('/social-search/statistics', Stats_assign(Stats_assign({}, config), (formatFilter_NEW(filter))))
                    .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                    entities: {
                        sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                        authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                        geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                    },
                }); });
            }
            return _this.apiClient
                .post('/social-search/statistics', Stats_assign(Stats_assign({ query: query }, config), (formatFilter_NEW(filter))), { metric: statsBy })
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchSocialSearchMentions = function (_a) {
            var query = _a.query, filter = _a.filter, perPage = _a.perPage, orderBy = _a.orderBy, continuationToken = _a.continuationToken;
            return _this.apiClient
                .post('/social-search/mentions', Stats_assign({ query: query }, (formatFilter_NEW(filter))), { orderBy: orderBy, take: perPage, continuationToken: continuationToken })
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchSocialSearchWordCloud = function (_a) {
            var query = _a.query, filter = _a.filter;
            return _this.apiClient
                .post('/social-search/wordcloud', Stats_assign({ query: query }, (formatFilter_NEW(filter))));
        };
        _this.fetchThemeListStats = function (_a) {
            var config = _a.config, filter = _a.filter;
            return _this.apiClient
                .post('/statistics', Stats_assign(Stats_assign({}, config), (formatFilter_NEW(filter))))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        // TODO: remove
        _this.fetchPreviewData = function (_a) {
            var query = _a.query, filter = _a.filter;
            return _this.apiClient
                .post('/history/preview/stats', { query: query, filter: filter });
        };
        _this.fetchDynamics = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign({ aggregations: {
                    date: {
                        interval: filter.from.getTime() === filter.to.getTime() ? 'Hour' : 'Day',
                        aggregations: {
                            sentiment: {},
                        },
                    },
                    sentiment: {},
                } }, (formatFilter_NEW(filter))));
        };
        _this.fetchGeo = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, statsBy = _a.statsBy;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign({ aggregations: {
                    countries: {
                        size: 300,
                        aggregations: {
                            regionIds: {
                                size: 300,
                            },
                        },
                    },
                } }, (formatFilter_NEW(filter))), { metric: statsBy });
        };
        _this.fetchRegions = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign({ aggregations: {
                    regionIds: {
                        size: 300,
                    },
                } }, (formatFilter_NEW(filter))))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchSubjectsGeo = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, statsBy = _a.statsBy;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign({ aggregations: {
                    countries: {
                        size: 300,
                        aggregations: {
                            subjects: {
                                size: 1,
                                aggregations: {
                                    phrases: { size: 10 },
                                },
                            },
                        },
                    },
                } }, filter.toApi()), { metric: statsBy });
        };
        _this.fetchSubjects = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, statsBy = _a.statsBy;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics"), Stats_assign({ aggregations: {
                    subjects: {
                        size: 20,
                    },
                } }, filter.toApi()), { metric: statsBy });
        };
        _this.fetchWordCloud = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics/wordcloud"), Stats_assign({}, formatFilter_NEW(filter)));
        };
        _this.fetchTrendingWords = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/trendingscore"), Stats_assign({}, (formatFilter_NEW(filter))));
        };
        _this.fetchPhrasesBySubjectsInterconnections = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics/graph-of-phrases"), Stats_assign({}, filter.toApi()));
        };
        _this.fetchViComparisonAutoSuggestion = function (_a) {
            var request = _a.request, filter = _a.filter, _b = _a.clean, clean = _b === void 0 ? true : _b;
            return _this.apiClient
                .post('/vicomparisonauto', Stats_assign(Stats_assign({}, request), (formatFilter_NEW(filter))), { clean: clean });
        };
        _this.fetchViComparison = function (_a) {
            var request = _a.request, filter = _a.filter, _b = _a.clean, clean = _b === void 0 ? true : _b;
            return _this.apiClient
                .post('/vicomparison', Stats_assign(Stats_assign({}, request), (formatFilter_NEW(filter))), { clean: clean });
        };
        _this.updateTrend = function (_a) {
            var topicId = _a.topicId, trendId = _a.trendId, name = _a.name, sentiment = _a.sentiment;
            return _this.apiClient
                .put("/themes/".concat(topicId, "/trends/").concat(trendId), { name: name, sentiment: sentiment });
        };
        _this.fetchVisualInsights = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, activitiesCount = _a.activitiesCount, objectsCount = _a.objectsCount, peopleCount = _a.peopleCount, scenesCount = _a.scenesCount, brandsCount = _a.brandsCount;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics/vi"), Stats_assign({ activitiesCount: activitiesCount, objectsCount: objectsCount, peopleCount: peopleCount, scenesCount: scenesCount, brandsCount: brandsCount }, (formatFilter_NEW(filter))));
        };
        _this.fetchVisualTags = function () {
            return _this.apiClient.get('/ir/visualTags');
        };
        _this.fetchVisualInsightsInterconnections = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, topLevelCount = _a.topLevelCount, descendantsCount = _a.descendantsCount;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics/vi-hierarchy"), Stats_assign(Stats_assign({}, formatFilter_NEW(filter)), { topLevelCount: topLevelCount, descendantsCount: descendantsCount }));
        };
        _this.fetchVisualInsightsTrends = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics/vi-trends"), Stats_assign({}, formatFilter_NEW(filter)));
        };
        _this.fetchPhrasesBySubjects = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/statistics/phrases-by-subjects"), Stats_assign({}, filter.toApi()));
        };
        return _this;
    }
    return StatsAPI;
}(api_Base));
/* harmony default export */ const Stats = (StatsAPI);

;// CONCATENATED MODULE: ./src/api/Geo.ts
var Geo_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();



var GeoAPI = /** @class */ (function (_super) {
    Geo_extends(GeoAPI, _super);
    function GeoAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.get = function (_a) {
            var ids = _a.ids;
            return _this.apiClient
                .post('/geo/details', { id: ids })
                .then(function (res) { return (0,lib/* normalize */.S8)(res, { geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo) }); });
        };
        _this.searchRegions = function (_a) {
            var query = _a.query;
            return _this.apiClient
                .get('/geo/region/suggest', {}, { query: query });
        };
        _this.searchCities = function (_a) {
            var query = _a.query;
            return _this.apiClient
                .get('/geo/city/suggest', {}, { query: query });
        };
        return _this;
    }
    return GeoAPI;
}(api_Base));
/* harmony default export */ const Geo = (GeoAPI);

;// CONCATENATED MODULE: ./src/utils/toParams.ts
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
function toParams(obj) {
    var e_1, _a;
    var params = new URLSearchParams();
    try {
        for (var _b = __values(Object.entries(obj)), _c = _b.next(); !_c.done; _c = _b.next()) {
            var _d = __read(_c.value, 2), key = _d[0], value = _d[1];
            if (value != null) {
                params.set(key, value);
            }
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return params.toString();
}

;// CONCATENATED MODULE: ./src/api/Auth.ts
var Auth_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();


var AuthAPI = /** @class */ (function (_super) {
    Auth_extends(AuthAPI, _super);
    function AuthAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.authenticate = function (_a) {
            var username = _a.username, password = _a.password;
            return _this.apiClient
                .post('/token', toParams({ grant_type: 'password', username: username, password: password }));
        };
        _this.authenticateCode = function (_a) {
            var code = _a.code, clientId = _a.clientId, redirectUrl = _a.redirectUrl;
            return _this.apiClient
                .post('/token', toParams({ grant_type: 'authorization_code', code: code, client_id: clientId, redirect_uri: redirectUrl }));
        };
        _this.impersonate = function (_a) {
            var accountId = _a.accountId, themeId = _a.themeId;
            return _this.apiClient
                .post('/token', toParams({ grant_type: 'impersonate', accountId: accountId, themeId: themeId }));
        };
        _this.validateIdp = function (_a) {
            var idp = _a.idp;
            return _this.apiClient
                .get('/sso/saml2/validate', null, { idp: idp })
                .then(function () { return true; })
                .catch(function () { return false; });
        };
        _this.resetPassword = function (_a) {
            var email = _a.email;
            return _this.apiClient
                .post('/auth/resetpassword', {}, { email: email });
        };
        _this.changePassword = function (_a) {
            var oldPassword = _a.oldPassword, newPassword = _a.newPassword;
            return _this.apiClient
                .post('/auth/password', { oldPassword: oldPassword, newPassword: newPassword });
        };
        _this.test = function () { return _this.apiClient.get('/test/me'); };
        _this.getCurrentUser = function () { return _this.apiClient.get('/me'); };
        _this.setNewPassword = function (_a) {
            var password = _a.password, token = _a.token;
            return _this.apiClient
                .post('/public/users/setpassword', { password: password }, { token: token });
        };
        _this.verifyPasswordToken = function (_a) {
            var token = _a.token;
            return _this.apiClient
                .get('/public/users/verify', null, { token: token });
        };
        return _this;
    }
    return AuthAPI;
}(api_Base));
/* harmony default export */ const Auth = (AuthAPI);

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
;// CONCATENATED MODULE: ./src/api/Account.js






function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



var AccountAPI = /*#__PURE__*/function (_Base) {
  function AccountAPI() {
    var _this;
    (0,classCallCheck/* default */.A)(this, AccountAPI);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = _callSuper(this, AccountAPI, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "get", function () {
      return _this.apiClient.get('/account');
    });
    (0,defineProperty/* default */.A)(_this, "getHistoryStats", function () {
      return _this.apiClient.get('/account/history');
    });
    (0,defineProperty/* default */.A)(_this, "enablePermissions", function () {
      return _this.apiClient.put('/account/enablePermissions');
    });
    (0,defineProperty/* default */.A)(_this, "disablePermissions", function () {
      return _this.apiClient.put('/account/disablePermissions');
    });
    (0,defineProperty/* default */.A)(_this, "rename", function (_ref) {
      var name = _ref.name;
      return _this.apiClient.put('/account/name', {
        name: name
      });
    });
    (0,defineProperty/* default */.A)(_this, "changeAccountTrialPeriod", function (_ref2) {
      var activeTo = _ref2.activeTo;
      return _this.apiClient.put('/account/trial', {
        activeTo: activeTo
      });
    });
    (0,defineProperty/* default */.A)(_this, "activateAccount", function () {
      return _this.apiClient.put('/account/activate', {});
    });
    (0,defineProperty/* default */.A)(_this, "deactivateAccount", function (_ref3) {
      var notifyUsers = _ref3.notifyUsers;
      return _this.apiClient.put('/account/deactivate', {
        notifyUsers: notifyUsers
      });
    });
    (0,defineProperty/* default */.A)(_this, "advanceAccountToPaid", function (_ref4) {
      var paidTo = _ref4.paidTo;
      return _this.apiClient.put('/account/pay', {
        paidTo: paidTo
      });
    });
    (0,defineProperty/* default */.A)(_this, "search", function (_ref5) {
      var query = _ref5.query;
      return _this.apiClient.get('/admin/accounts/search', null, {
        query: query
      });
    });
    (0,defineProperty/* default */.A)(_this, "changeAccountMaxOverdueDays", function (_ref6) {
      var maxOverdueDays = _ref6.maxOverdueDays;
      return _this.apiClient.put('/account/maxoverdue', {
        maxOverdueDays: maxOverdueDays
      });
    });
    (0,defineProperty/* default */.A)(_this, "changeAccountOrigin", function (_ref7) {
      var origin = _ref7.origin;
      return _this.apiClient.put('/account/origin', {
        origin: origin
      });
    });
    (0,defineProperty/* default */.A)(_this, "changeAccountCoverage", function (_ref8) {
      var coverage = _ref8.coverage;
      return _this.apiClient.put('/account/coverage', {
        coverage: coverage
      });
    });
    (0,defineProperty/* default */.A)(_this, "getAccountLogos", function () {
      return _this.apiClient.get('/account/logos').then(function (res) {
        return (0,lib/* normalize */.S8)(res, {
          logos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.logo)
        });
      });
    });
    (0,defineProperty/* default */.A)(_this, "getSupportedLogos", function () {
      return _this.apiClient.get('/account/supportedlogos').then(function (res) {
        return (0,lib/* normalize */.S8)(res, {
          logos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.logo)
        });
      });
    });
    (0,defineProperty/* default */.A)(_this, "setAccountLogos", function (_ref9) {
      var labels = _ref9.labels;
      return _this.apiClient.put('/account/logos', {
        labels: labels
      });
    });
    (0,defineProperty/* default */.A)(_this, "getFeatures", function () {
      return _this.apiClient.get('/account/features');
    });
    (0,defineProperty/* default */.A)(_this, "setFeatures", function (_ref10) {
      var updateFeatures = _ref10.updateFeatures,
        deleteFeatures = _ref10.deleteFeatures;
      return _this.apiClient.put('/account/changefeatures', {
        updateFeatures: updateFeatures,
        deleteFeatures: deleteFeatures
      });
    });
    (0,defineProperty/* default */.A)(_this, "getInsightsCopilotUsage", function () {
      return _this.apiClient.get('/account/insights-copilot/usage');
    });
    return _this;
  }
  (0,inherits/* default */.A)(AccountAPI, _Base);
  return (0,createClass/* default */.A)(AccountAPI);
}(api_Base);

;// CONCATENATED MODULE: ./src/api/Billing.ts
var Billing_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var BillingAPI = /** @class */ (function (_super) {
    Billing_extends(BillingAPI, _super);
    function BillingAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getBillingSubscription = function () {
            return _this.apiClient
                .get('/billing/subscription');
        };
        _this.getBillingOffers = function () {
            return _this.apiClient
                .get('/billing/offers');
        };
        _this.setBilling = function (info) {
            return _this.apiClient
                .put('/billing/info', { billingInfo: info });
        };
        _this.setSubscription = function (info) {
            return _this.apiClient
                .put('/billing/subscription', { subscriptionInfo: info });
        };
        _this.setPaymentMethod = function (methodInfo) {
            return _this.apiClient
                .put('/billing/paymentmethod', { paymentMethodInfo: methodInfo });
        };
        _this.getStripeCheckoutFormUrl = function () {
            return _this.apiClient
                .post('/billing/stripe/checkout');
        };
        _this.cancelBilling = function () {
            return _this.apiClient
                .delete('/billing/info');
        };
        _this.getPayer = function (options) {
            return _this.apiClient
                .get('/billing/payer', {}, options);
        };
        return _this;
    }
    return BillingAPI;
}(api_Base));
/* harmony default export */ const Billing = (BillingAPI);

;// CONCATENATED MODULE: ./src/api/Users.js






function Users_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Users_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Users_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Users_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }

var UsersAPI = /*#__PURE__*/function (_Base) {
  function UsersAPI() {
    var _this;
    (0,classCallCheck/* default */.A)(this, UsersAPI);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Users_callSuper(this, UsersAPI, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "fetch", function () {
      return _this.apiClient.get('/users');
    });
    (0,defineProperty/* default */.A)(_this, "create", function (_ref) {
      var user = _ref.user;
      return _this.apiClient.post('/users', user);
    });
    (0,defineProperty/* default */.A)(_this, "edit", function (_ref2) {
      var userId = _ref2.userId,
        info = _ref2.info;
      return _this.apiClient.put("/users/".concat(userId, "/info"), info);
    });
    (0,defineProperty/* default */.A)(_this, "changeRole", function (_ref3) {
      var userId = _ref3.userId,
        role = _ref3.role;
      return _this.apiClient.put("/users/".concat(userId, "/role"), {
        role: role
      });
    });
    (0,defineProperty/* default */.A)(_this, "changePermissions", function (_ref4) {
      var userId = _ref4.userId,
        permissions = _ref4.permissions;
      return _this.apiClient.put("/users/".concat(userId, "/userpermissions"), {
        permissions: permissions
      });
    });
    (0,defineProperty/* default */.A)(_this, "delete", function (_ref5) {
      var userId = _ref5.userId;
      return _this.apiClient["delete"]("/users/".concat(userId));
    });
    (0,defineProperty/* default */.A)(_this, "getPermissions", function (_ref6) {
      var userId = _ref6.userId;
      return _this.apiClient.get("/users/".concat(userId, "/permissions"));
    });
    (0,defineProperty/* default */.A)(_this, "setPermissions", function (_ref7) {
      var userId = _ref7.userId,
        themePermissions = _ref7.themePermissions;
      return _this.apiClient.put("/users/".concat(userId, "/permissions"), {
        themePermissions: themePermissions
      });
    });
    (0,defineProperty/* default */.A)(_this, "getInviteLink", function (_ref8) {
      var userId = _ref8.userId;
      return _this.apiClient.get("/users/".concat(userId, "/activationlink"));
    });
    (0,defineProperty/* default */.A)(_this, "getCurrentUser", function () {
      return _this.apiClient.get('/users/me');
    });
    (0,defineProperty/* default */.A)(_this, "editCurrentUserInfo", function (_ref9) {
      var info = _ref9.info;
      return _this.apiClient.put('/users/me/info', info);
    });
    (0,defineProperty/* default */.A)(_this, "changeSettings", function (_ref10) {
      var settings = _ref10.settings;
      return _this.apiClient.put('/users/me/settings', {
        settings: settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "changeUiSettings", function (uiSettings) {
      return _this.apiClient.put('/users/me/uisettings', {
        uiSettings: uiSettings
      });
    });
    (0,defineProperty/* default */.A)(_this, "saveUserBrowserSettings", function (_ref11) {
      var settings = _ref11.settings;
      return _this.apiClient.post('/users/me/browsersettings', {
        settings: settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "generateApiKey", function () {
      return _this.apiClient.post('/users/me/apikey');
    });
    (0,defineProperty/* default */.A)(_this, "getSegmentationOptions", function () {
      return _this.apiClient.get('/users/segmentationOptions');
    });
    (0,defineProperty/* default */.A)(_this, "setUserAdditionalInfo", function (_ref12) {
      var team = _ref12.team,
        useCases = _ref12.useCases,
        otherTeam = _ref12.otherTeam,
        otherUseCases = _ref12.otherUseCases;
      return _this.apiClient.put('/users/me/additionalInfo', {
        additionalInfo: {
          team: team,
          useCases: useCases,
          otherTeam: otherTeam,
          otherUseCases: otherUseCases
        }
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(UsersAPI, _Base);
  return (0,createClass/* default */.A)(UsersAPI);
}(api_Base);

// EXTERNAL MODULE: ./node_modules/js-file-download/file-download.js
var file_download = __webpack_require__("Gd76");
var file_download_default = /*#__PURE__*/__webpack_require__.n(file_download);
;// CONCATENATED MODULE: ./src/api/AccountSettings.js






function AccountSettings_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, AccountSettings_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function AccountSettings_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (AccountSettings_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }


var AccountSettingsAPI = /*#__PURE__*/function (_Base) {
  function AccountSettingsAPI() {
    var _this;
    (0,classCallCheck/* default */.A)(this, AccountSettingsAPI);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = AccountSettings_callSuper(this, AccountSettingsAPI, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "info", function () {
      return _this.apiClient.get('/account');
    });
    (0,defineProperty/* default */.A)(_this, "enablePermissions", function () {
      return _this.apiClient.put('/account/enablePermissions');
    });
    (0,defineProperty/* default */.A)(_this, "disablePermissions", function () {
      return _this.apiClient.put('/account/disablePermissions');
    });
    (0,defineProperty/* default */.A)(_this, "getMentionsUsageHistory", function (_ref) {
      var accountId = _ref.accountId,
        userId = _ref.userId;
      return _this.apiClient.get('/account/mentionsusage/history', {}, {
        accountId: accountId,
        userId: userId
      });
    });
    (0,defineProperty/* default */.A)(_this, "getAccountTopicsStats", function (_ref2) {
      var accountId = _ref2.accountId,
        from = _ref2.from,
        to = _ref2.to;
      return _this.apiClient.post('/account/topic-stats', {
        accountId: accountId,
        from: from,
        to: to
      });
    });
    (0,defineProperty/* default */.A)(_this, "getAccountChannelsStats", function (_ref3) {
      var accountId = _ref3.accountId;
      return _this.apiClient.post('/account/channel-stats', {
        accountId: accountId
      });
    });
    (0,defineProperty/* default */.A)(_this, "exportAccountTopicsStats", function (_ref4) {
      var accountId = _ref4.accountId,
        from = _ref4.from,
        to = _ref4.to;
      return _this.apiClient.download('/account/topic-stats/export', {
        accountId: accountId,
        from: from,
        to: to
      }).then(function (res) {
        file_download_default()(res, "Topic-stats-".concat(accountId, "-").concat(from, "-").concat(to, ".csv"));
      });
    });
    (0,defineProperty/* default */.A)(_this, "exportAccountChannelStats", function (_ref5) {
      var accountId = _ref5.accountId;
      return _this.apiClient.download('/account/channel-stats/export', {
        accountId: accountId
      }).then(function (res) {
        file_download_default()(res, "Channel-stats-".concat(accountId, ".csv"));
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(AccountSettingsAPI, _Base);
  return (0,createClass/* default */.A)(AccountSettingsAPI);
}(api_Base);

;// CONCATENATED MODULE: ./src/api/Integrations.js






function Integrations_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Integrations_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Integrations_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Integrations_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



var IntegrationsAPI = /*#__PURE__*/function (_Base) {
  function IntegrationsAPI() {
    var _this;
    (0,classCallCheck/* default */.A)(this, IntegrationsAPI);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Integrations_callSuper(this, IntegrationsAPI, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "list", function (_ref) {
      var themeId = _ref.themeId;
      return _this.apiClient.get("/themes/".concat(themeId, "/integrations")).then(function (res) {
        return (0,lib/* normalize */.S8)(res, {
          integrations: (0,lib/* arrayOf */.jk)(schemas/* default */.A.integration)
        });
      });
    });
    (0,defineProperty/* default */.A)(_this, "test", function (_ref2) {
      var type = _ref2.type,
        themeId = _ref2.themeId,
        settings = _ref2.settings;
      return _this.apiClient.post("/themes/".concat(themeId, "/integrations/").concat(type.toLowerCase(), "/test"), {
        settings: settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "add", function (_ref3) {
      var type = _ref3.type,
        themeId = _ref3.themeId,
        settings = _ref3.settings;
      return _this.apiClient.post("/themes/".concat(themeId, "/integrations/").concat(type.toLowerCase()), {
        settings: settings
      }).then(function (res) {
        return (0,lib/* normalize */.S8)(res, schemas/* default */.A.integration);
      });
    });
    (0,defineProperty/* default */.A)(_this, "delete", function (_ref4) {
      var integrationId = _ref4.integrationId,
        themeId = _ref4.themeId;
      return _this.apiClient["delete"]("/themes/".concat(themeId, "/integrations/").concat(integrationId));
    });
    (0,defineProperty/* default */.A)(_this, "getTelegramCode", function (_ref5) {
      var themeId = _ref5.themeId;
      return _this.apiClient.get("/themes/".concat(themeId, "/integrations/telegram/invitationCode"));
    });
    (0,defineProperty/* default */.A)(_this, "getZendeskLink", function (_ref6) {
      var themeId = _ref6.themeId,
        subdomain = _ref6.subdomain;
      return _this.apiClient.get("/themes/".concat(themeId, "/integrations/zendesk/redirectUrl"), {}, {
        subdomain: subdomain
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(IntegrationsAPI, _Base);
  return (0,createClass/* default */.A)(IntegrationsAPI);
}(api_Base);

;// CONCATENATED MODULE: ./src/api/ExternalAuthorizations.ts
var ExternalAuthorizations_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var ExternalAuthorizationsAPI = /** @class */ (function (_super) {
    ExternalAuthorizations_extends(ExternalAuthorizationsAPI, _super);
    function ExternalAuthorizationsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.fetchAuthorizationLink = function () {
            return _this.apiClient
                .get('/social/url', {});
        };
        _this.fetchAuthorizationsData = function () {
            return _this.apiClient
                .get('/social/get');
        };
        _this.revokeAuthorization = function (_a) {
            var id = _a.id, type = _a.type;
            return _this.apiClient
                .delete('/social/delete', { id: id, type: type });
        };
        _this.fetchInstagramPages = function () {
            return _this.apiClient
                .get('/social/instagram/hashtag')
                .then(function (result) { return result.instagramPages; });
        };
        _this.addInstagramHashtag = function (_a) {
            var pageId = _a.pageId, hashtagName = _a.hashtagName;
            return _this.apiClient
                .put("/social/instagram/".concat(pageId, "/hashtag"), { hashtagname: hashtagName });
        };
        _this.stopMonitoringInstagramHashtag = function (_a) {
            var pageId = _a.pageId, hashtagName = _a.hashtagName;
            return _this.apiClient
                .delete("/social/instagram/".concat(pageId, "/hashtag"), { hashtagname: hashtagName });
        };
        return _this;
    }
    return ExternalAuthorizationsAPI;
}(api_Base));
/* harmony default export */ const ExternalAuthorizations = (ExternalAuthorizationsAPI);

// EXTERNAL MODULE: ./src/models/Topic.ts
var Topic = __webpack_require__("31cT");
;// CONCATENATED MODULE: ./src/api/Themes.ts
var Themes_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var Themes_assign = (undefined && undefined.__assign) || function () {
    Themes_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Themes_assign.apply(this, arguments);
};





var ThemesAPI = /** @class */ (function (_super) {
    Themes_extends(ThemesAPI, _super);
    function ThemesAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.list = function (filter) {
            var formattedFilter = formatFilter_NEW(filter);
            return _this.apiClient
                .get('/themes', {}, { periodFrom: formattedFilter.from, periodTo: formattedFilter.to })
                .then(function (res) { return (0,lib/* normalize */.S8)(res, { themes: (0,lib/* arrayOf */.jk)(schemas/* default */.A.theme) }); });
        };
        _this.enableAlertSetting = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .put("/themes/".concat(topicId, "/notifications/alerts"));
        };
        _this.disableAlertSetting = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .delete("/themes/".concat(topicId, "/notifications/alerts"));
        };
        _this.delete = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .delete("/themes/".concat(themeId));
        };
        _this.fetchThemeHistoryInfo = function (_a) {
            var themeId = _a.themeId, _b = _a.historySource, historySource = _b === void 0 ? Topic/* HistorySources */.J9.ELASTIC : _b;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/history"), {}, { historySource: historySource });
        };
        _this.collectHistory = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/history"));
        };
        _this.collectCustomHistory = function (_a) {
            var themeId = _a.themeId, from = _a.from, to = _a.to, paid = _a.paid, _b = _a.historySource, historySource = _b === void 0 ? Topic/* HistorySources */.J9.ELASTIC : _b;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/customHistory"), { from: formatDate(from), to: formatDate(to), paid: paid, historySource: historySource });
        };
        _this.validateHistoryCollection = function (_a) {
            var themeId = _a.themeId, from = _a.from, to = _a.to, _b = _a.paid, paid = _b === void 0 ? undefined : _b, _c = _a.historySource, historySource = _c === void 0 ? Topic/* HistorySources */.J9.ELASTIC : _c;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/history/validate"), {}, { from: formatDate(from), to: formatDate(to), paid: paid, historySource: historySource });
        };
        _this.stopHistoryCollection = function (_a) {
            var themeId = _a.themeId, historySource = _a.historySource;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/history/stop"), { historySource: historySource });
        };
        _this.collectEngagement = function (_a) {
            var themeId = _a.themeId, from = _a.from, to = _a.to;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/engagement/update"), { from: from, to: to });
        };
        _this.fetchTheme = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId));
        };
        _this.fetchThemeAudit = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/audit"));
        };
        _this.updateName = function (_a) {
            var themeId = _a.themeId, name = _a.name;
            return _this.apiClient
                .put("/themes/".concat(themeId, "/name"), { name: name });
        };
        _this.purgeThemeMentions = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/purge"));
        };
        _this.listTags = function (themeId) {
            return _this.apiClient
                .get("/themes/".concat(themeId, "/tags"))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, { tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag) }); });
        };
        _this.listUsers = function (themeId) {
            return _this.apiClient
                .get("/themes/".concat(themeId, "/users"))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, { users: (0,lib/* arrayOf */.jk)(schemas/* default */.A.user) }); });
        };
        _this.describeTags = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .get("/themes/".concat(topicId, "/tags/describe"));
        };
        _this.createTag = function (topicId, tag) {
            return _this.apiClient
                .post("/themes/".concat(topicId, "/tags"), tag)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, schemas/* default */.A.tag); });
        };
        _this.removeTag = function (_a) {
            var topicId = _a.topicId, tagId = _a.tagId;
            return _this.apiClient
                .put("/themes/".concat(topicId, "/mentions/removetag"), { tagId: tagId });
        };
        _this.deleteTag = function (themeId, tagId) {
            return _this.apiClient
                .delete("/themes/".concat(themeId, "/tags/").concat(tagId));
        };
        _this.changeTag = function (topicId, tag) {
            return _this.apiClient
                .post("/themes/".concat(topicId, "/tags/").concat(tag.id), tag)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, schemas/* default */.A.tag); });
        };
        _this.fetchNotificationSettings = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .get("/themes/".concat(topicId, "/notifications"));
        };
        _this.fetchAutocompletionFilterSuggestions = function () {
            return _this.apiClient
                .get('/themes/defaultFilter');
        };
        _this.listRules = function (themeId) {
            return _this.apiClient
                .get("/themes/".concat(themeId, "/rules"))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                rules: (0,lib/* arrayOf */.jk)(schemas/* default */.A.rule),
                entities: {
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                },
            }); });
        };
        _this.createRule = function (themeId, _a) {
            var filter = _a.filter, actions = _a.actions, name = _a.name, applyRetrospectively = _a.applyRetrospectively;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/rules"), { name: name, actions: actions, filter: formatFilter_NEW(filter), applyRetrospectively: applyRetrospectively })
                .then(function (res) { return (0,lib/* normalize */.S8)(res, schemas/* default */.A.rule); });
        };
        _this.deleteRule = function (themeId, ruleId) {
            return _this.apiClient
                .delete("/themes/".concat(themeId, "/rules/").concat(ruleId));
        };
        _this.transferTopic = function (_a) {
            var themeId = _a.themeId, toAccountId = _a.toAccountId;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/transfer"), { toAccountId: toAccountId });
        };
        _this.forceTransferTopic = function (_a) {
            var themeId = _a.themeId, toAccountId = _a.toAccountId;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/transfer/force"), { toAccountId: toAccountId });
        };
        _this.validateTopicTransferring = function (_a) {
            var themeId = _a.themeId, toAccountId = _a.toAccountId;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/transfer/validate"), { toAccountId: toAccountId });
        };
        _this.fetchSavedFilter = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/savedFilters"));
        };
        _this.saveFilter = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, name = _a.name;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/savedFilters"), { filter: filter, name: name });
        };
        _this.editSavedFilter = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, name = _a.name, id = _a.id;
            return _this.apiClient
                .put("/themes/".concat(themeId, "/savedFilters/").concat(id), { filter: filter, name: name });
        };
        _this.removeSavedFilter = function (_a) {
            var themeId = _a.themeId, id = _a.id;
            return _this.apiClient
                .delete("/themes/".concat(themeId, "/savedFilters/").concat(id));
        };
        _this.fetchRecurrentEmailReports = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .get("/themes/".concat(topicId, "/notifications/recurrent"));
        };
        _this.saveRecurrentEmailReport = function (_a) {
            var topicId = _a.topicId, report = _a.report;
            return _this.apiClient
                .post("/themes/".concat(topicId, "/notifications/recurrent"), Themes_assign({}, report));
        };
        _this.updateRecurrentEmailReport = function (_a) {
            var topicId = _a.topicId, report = _a.report;
            return _this.apiClient
                .put("/themes/".concat(topicId, "/notifications/recurrent/").concat(report.id), Themes_assign({}, report));
        };
        _this.removeRecurrentEmailReport = function (_a) {
            var topicId = _a.topicId, reportId = _a.reportId;
            return _this.apiClient
                .delete("/themes/".concat(topicId, "/notifications/recurrent/").concat(reportId));
        };
        _this.unsubscribeUserFromRecurrentEmailReport = function (_a) {
            var topicId = _a.topicId, reportId = _a.reportId, token = _a.token;
            return _this.apiClient
                .post("/themes/".concat(topicId, "/notifications/recurrent/").concat(reportId, "/unsubscribe"), { token: token });
        };
        _this.fetchNotificationsUsers = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .get("/themes/".concat(topicId, "/notifications/users"));
        };
        _this.fetchAlerts = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient
                .get("/topics/".concat(topicId, "/alerts"));
        };
        _this.saveAlert = function (_a) {
            var topicId = _a.topicId, alert = _a.alert;
            return _this.apiClient
                .post("/topics/".concat(topicId, "/alerts"), Themes_assign({}, alert));
        };
        _this.updateAlert = function (_a) {
            var topicId = _a.topicId, alert = _a.alert;
            return _this.apiClient
                .put("/topics/".concat(topicId, "/alerts/").concat(alert.id), Themes_assign({}, alert));
        };
        _this.removeAlert = function (_a) {
            var topicId = _a.topicId, alertId = _a.alertId;
            return _this.apiClient
                .delete("/topics/".concat(topicId, "/alerts/").concat(alertId));
        };
        _this.unsubscribeUserFromAlert = function (_a) {
            var topicId = _a.topicId, alertId = _a.alertId, token = _a.token;
            return _this.apiClient
                .post("/topics/".concat(topicId, "/alerts/").concat(alertId, "/unsubscribe"), { token: token });
        };
        _this.fetchThemePreview = function (topicQuery) {
            return _this.apiClient.post('/themes/preview', { topicQuery: topicQuery });
        };
        _this.validateQuery = function (topicQuery) {
            return _this.apiClient
                .post('/themes/query/v2/validate', topicQuery);
        };
        _this.create = function (params) {
            return _this.apiClient
                .post('/themes/create', params);
        };
        _this.updateTopic = function (params) {
            return _this.apiClient
                .post("/themes/".concat(params.topicId, "/query/edit"), params);
        };
        return _this;
    }
    return ThemesAPI;
}(api_Base));
/* harmony default export */ const Themes = (ThemesAPI);

;// CONCATENATED MODULE: ./src/api/Tasks.js






function Tasks_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Tasks_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Tasks_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Tasks_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



var TasksAPI = /*#__PURE__*/function (_Base) {
  function TasksAPI() {
    var _this;
    (0,classCallCheck/* default */.A)(this, TasksAPI);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Tasks_callSuper(this, TasksAPI, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "list", function (_ref) {
      var themeId = _ref.themeId;
      return _this.apiClient.get("/themes/".concat(themeId, "/tasks"), {}).then(function (res) {
        return (0,lib/* normalize */.S8)(res, {
          processes: (0,lib/* arrayOf */.jk)(schemas/* default */.A.task)
        });
      });
    });
    (0,defineProperty/* default */.A)(_this, "cancel", function (_ref2) {
      var themeId = _ref2.themeId,
        taskId = _ref2.taskId;
      return _this.apiClient.put("/themes/".concat(themeId, "/tasks/cancel"), {
        id: taskId
      });
    });
    (0,defineProperty/* default */.A)(_this, "retry", function (_ref3) {
      var themeId = _ref3.themeId,
        taskId = _ref3.taskId;
      return _this.apiClient.put("/themes/".concat(themeId, "/tasks/retry"), {
        id: taskId
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(TasksAPI, _Base);
  return (0,createClass/* default */.A)(TasksAPI);
}(api_Base);

;// CONCATENATED MODULE: ./src/api/Reports.ts
var Reports_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();



var Reports_StatsAPI = /** @class */ (function (_super) {
    Reports_extends(StatsAPI, _super);
    function StatsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.create = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, reportType = _a.reportType, reportFormat = _a.reportFormat;
            return _this.apiClient.post("/themes/".concat(themeId, "/reports"), {
                filter: filter.toApi(),
                reportType: reportType,
                reportFormat: reportFormat,
            });
        };
        _this.list = function (_a) {
            var themeId = _a.themeId, ids = _a.ids, page = _a.page, perPage = _a.perPage;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/reports"), {}, {
                ids: ids ? ids.toArray() : [],
                skip: (page - 1) * perPage,
                take: perPage,
            })
                .then(function (res) {
                return (0,lib/* normalize */.S8)(res, {
                    reports: (0,lib/* arrayOf */.jk)(schemas/* default */.A.report),
                });
            });
        };
        return _this;
    }
    return StatsAPI;
}(api_Base));
/* harmony default export */ const Reports = (Reports_StatsAPI);

;// CONCATENATED MODULE: ./src/api/Authors.ts
var Authors_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var AuthorsAPI = /** @class */ (function (_super) {
    Authors_extends(AuthorsAPI, _super);
    function AuthorsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getExcluded = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/authors/excluded"));
        };
        _this.exclude = function (_a) {
            var themeId = _a.themeId, authorId = _a.authorId;
            return _this.apiClient
                .put("/themes/".concat(themeId, "/authors/excluded/").concat(authorId));
        };
        _this.restore = function (_a) {
            var themeId = _a.themeId, authorId = _a.authorId;
            return _this.apiClient
                .delete("/themes/".concat(themeId, "/authors/excluded/").concat(authorId));
        };
        _this.search = function (_a) {
            var themeId = _a.themeId, prefix = _a.prefix;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/authors"), {}, { prefix: prefix });
        };
        _this.getInterestsHierarchy = function () {
            return _this.apiClient
                .get('/authors/bio-hierarchy');
        };
        return _this;
    }
    return AuthorsAPI;
}(api_Base));
/* harmony default export */ const Authors = (AuthorsAPI);

;// CONCATENATED MODULE: ./src/api/Facets.ts
var Facets_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();




var FacetsAPI = /** @class */ (function (_super) {
    Facets_extends(FacetsAPI, _super);
    function FacetsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.fetchFacets = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/facets"), {}, createFilterQueryObject(formatFilter_NEW(filter)))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchFilterEntities = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/describeFilter"), {}, createFilterQueryObject(formatFilter_NEW(filter)))
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchFilterEntitiesNew = function (_a) {
            var themeId = _a.themeId, filter = _a.filter;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/describeFilter"), filter)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        _this.fetchGlobalFilterEntities = function (topicQuery) {
            return _this.apiClient
                .post('/themes/describeFilter', { topicQuery: topicQuery })
                .then(function (res) { return (0,lib/* normalize */.S8)(res, {
                entities: {
                    sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                    authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                    tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                    trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                    geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                },
            }); });
        };
        return _this;
    }
    return FacetsAPI;
}(api_Base));
/* harmony default export */ const Facets = (FacetsAPI);

;// CONCATENATED MODULE: ./src/api/Channels.ts
var Channels_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var ChannelsAPI = /** @class */ (function (_super) {
    Channels_extends(ChannelsAPI, _super);
    function ChannelsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.fetch = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/channels"));
        };
        _this.fetchPreview = function (_a) {
            var url = _a.url;
            return _this.apiClient
                .get('/channels/preview', {}, { url: url });
        };
        _this.add = function (_a) {
            var themeId = _a.themeId, channelKey = _a.channelKey, collectHistorySince = _a.collectHistorySince;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/channels"), { key: channelKey, collectHistorySince: collectHistorySince });
        };
        _this.delete = function (_a) {
            var channelKey = _a.channelKey, themeId = _a.themeId;
            return _this.apiClient
                .delete("/themes/".concat(themeId, "/channels"), { key: channelKey });
        };
        _this.collectHistory = function (_a) {
            var themeId = _a.themeId, from = _a.from, channelKey = _a.channelKey;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/channels/collecthistory"), { since: from, key: channelKey });
        };
        _this.getExcluded = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/channels/excluded"));
        };
        _this.exclude = function (_a) {
            var themeId = _a.themeId, channelId = _a.channelId;
            return _this.apiClient
                .put("/themes/".concat(themeId, "/channels/excluded/").concat(channelId));
        };
        _this.restore = function (_a) {
            var themeId = _a.themeId, channelId = _a.channelId;
            return _this.apiClient
                .delete("/themes/".concat(themeId, "/channels/excluded/").concat(channelId));
        };
        _this.search = function (_a) {
            var themeId = _a.themeId, prefix = _a.prefix;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/publicationplaces"), {}, { prefix: prefix });
        };
        return _this;
    }
    return ChannelsAPI;
}(api_Base));
/* harmony default export */ const Channels = (ChannelsAPI);

;// CONCATENATED MODULE: ./src/api/Sources.js






function Sources_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Sources_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Sources_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Sources_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



var SourcesAPI = /*#__PURE__*/function (_Base) {
  function SourcesAPI() {
    var _this;
    (0,classCallCheck/* default */.A)(this, SourcesAPI);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Sources_callSuper(this, SourcesAPI, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "get", function (_ref) {
      var ids = _ref.ids,
        names = _ref.names;
      return _this.apiClient.get('/sources', {}, {
        ids: ids,
        names: names
      }).then(function (res) {
        return (0,lib/* normalize */.S8)(res, {
          sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source)
        });
      });
    });
    (0,defineProperty/* default */.A)(_this, "getExcluded", function (_ref2) {
      var themeId = _ref2.themeId;
      return _this.apiClient.get("/themes/".concat(themeId, "/sources/excluded"));
    });
    (0,defineProperty/* default */.A)(_this, "exclude", function (_ref3) {
      var themeId = _ref3.themeId,
        sourceId = _ref3.sourceId;
      return _this.apiClient.put("/themes/".concat(themeId, "/sources/excluded/").concat(sourceId));
    });
    (0,defineProperty/* default */.A)(_this, "restore", function (_ref4) {
      var themeId = _ref4.themeId,
        sourceName = _ref4.sourceName;
      return _this.apiClient["delete"]("/themes/".concat(themeId, "/sources/excluded/").concat(sourceName));
    });
    (0,defineProperty/* default */.A)(_this, "search", function (_ref5) {
      var themeId = _ref5.themeId,
        prefix = _ref5.prefix;
      return _this.apiClient.get("/themes/".concat(themeId, "/sources"), {}, {
        prefix: prefix
      });
    });
    (0,defineProperty/* default */.A)(_this, "searchGlobal", function (_ref6) {
      var prefix = _ref6.prefix;
      return _this.apiClient.get('/history/sources', {}, {
        prefix: prefix
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(SourcesAPI, _Base);
  return (0,createClass/* default */.A)(SourcesAPI);
}(api_Base);

// EXTERNAL MODULE: ./src/utils/analytics.js
var analytics = __webpack_require__("iyim");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
;// CONCATENATED MODULE: ./src/api/Mentions.ts
var Mentions_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var Mentions_assign = (undefined && undefined.__assign) || function () {
    Mentions_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Mentions_assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var Mentions_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var Mentions_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






var MentionsAPI = /** @class */ (function (_super) {
    Mentions_extends(MentionsAPI, _super);
    function MentionsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.listBase = function (param) { return __awaiter(_this, void 0, void 0, function () {
            var mentions, mentionsByIds;
            var _a;
            return __generator(this, function (_b) {
                switch (_b.label) {
                    case 0:
                        if (!((_a = param.requestedMentionIds) === null || _a === void 0 ? void 0 : _a.length)) return [3 /*break*/, 2];
                        return [4 /*yield*/, this.apiClient.post("/themes/".concat(param.themeId, "/mentions/list-by-ids"), Mentions_assign(Mentions_assign({}, param.filter.toApi()), { ids: param.requestedMentionIds }))];
                    case 1:
                        mentionsByIds = _b.sent();
                        mentions = { mentions: mentionsByIds, total: mentionsByIds === null || mentionsByIds === void 0 ? void 0 : mentionsByIds.length };
                        return [3 /*break*/, 4];
                    case 2: return [4 /*yield*/, this.apiClient.post("/themes/".concat((param.themeId), "/mentions/list"), param.filter.toApi(), {
                            orderBy: param.orderBy,
                            skip: (param.page - 1) * param.perPage,
                            take: param.perPage,
                        })];
                    case 3:
                        mentions = _b.sent();
                        _b.label = 4;
                    case 4: return [2 /*return*/, decorateMentions(mentions)];
                }
            });
        }); };
        _this.list = function () {
            var args = [];
            for (var _i = 0; _i < arguments.length; _i++) {
                args[_i] = arguments[_i];
            }
            return __awaiter(_this, void 0, void 0, function () {
                var mentions;
                return __generator(this, function (_a) {
                    switch (_a.label) {
                        case 0: return [4 /*yield*/, this.listBase.apply(this, __spreadArray([], Mentions_read(args), false))];
                        case 1:
                            mentions = _a.sent();
                            return [2 /*return*/, (0,lib/* normalize */.S8)(mentions, {
                                    mentions: (0,lib/* arrayOf */.jk)(schemas/* default */.A.mention),
                                })];
                    }
                });
            });
        };
        _this.gallery = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, page = _a.page, perPage = _a.perPage;
            return __awaiter(_this, void 0, void 0, function () {
                var mentions, decorated;
                return __generator(this, function (_b) {
                    switch (_b.label) {
                        case 0: return [4 /*yield*/, this.apiClient.post("/themes/".concat(themeId, "/mentions/gallery"), Mentions_assign({}, filter.toApi()), { skip: (page - 1) * perPage, take: perPage })];
                        case 1:
                            mentions = _b.sent();
                            decorated = decorateMentions(mentions);
                            return [2 /*return*/, (0,lib/* normalize */.S8)(decorated, {
                                    mentions: (0,lib/* arrayOf */.jk)(schemas/* default */.A.mention),
                                })];
                    }
                });
            });
        };
        _this.validateMentionsSearchQuery = function (_a) {
            var text = _a.text, themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/search/validate"), {}, { text: text });
        };
        _this.count = function (_a) {
            var themeId = _a.themeId, filter = _a.filter, toId = _a.toId, fromId = _a.fromId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/mentions/count"), {}, createFilterQueryObject(Mentions_assign(Mentions_assign({}, filter.toApi()), { fromId: fromId, toId: toId })));
        };
        _this.star = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/star"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.markAsSpam = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/markspam"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.markProcessed = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/markprocessed"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.markUnprocessed = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/markunprocessed"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.markAsHam = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/markham"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.unstar = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/unstar"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.previewMention = function (_a) {
            var themeId = _a.themeId, url = _a.url;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/mentions/previewadd"), {}, { url: url });
        };
        _this.add = function (_a) {
            var themeId = _a.themeId, url = _a.url, mention = _a.mention;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/mentions"), { url: url, mention: mention });
        };
        _this.delete = function (_a) {
            var themeId = _a.themeId, _b = _a.mentionIds, mentionIds = _b === void 0 ? undefined : _b, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/delete"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.restore = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/restore"), {
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.setSentiment = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter, sentiment = _a.sentiment;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/setsentiment"), {
                sentiment: sentiment,
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.assign = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter, assigneeId = _a.assigneeId, message = _a.message;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/assign"), {
                assigneeId: assigneeId,
                message: message,
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.setTags = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter, tags = _a.tags;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/settags"), {
                ids: mentionIds,
                filter: filter.toApi(),
                add: Object.keys(tags).filter(function (key) { return tags[key]; }).map(function (k) { return Number(k); }),
                remove: Object.keys(tags).filter(function (key) { return !tags[key]; }).map(function (k) { return Number(k); }),
            });
        };
        _this.sendToIntegration = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, filter = _a.filter, integrationId = _a.integrationId, note = _a.note;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/sendtointegration/").concat(integrationId), {
                note: note,
                ids: mentionIds,
                filter: formatFilter_NEW(filter),
            });
        };
        _this.addNote = function (_a) {
            var themeId = _a.themeId, mentionIds = _a.mentionIds, note = _a.note;
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/notes"), {
                note: note,
                ids: mentionIds,
            });
        };
        _this.get = function (param) {
            return _this.apiClient.get("/themes/".concat(param.themeId, "/mentions/").concat(param.mentionId))
                .then(decorateMention)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, schemas/* default */.A.mention); });
        };
        _this.getFull = function (param) {
            return _this.apiClient.post("/themes/".concat(param.themeId, "/mentions/").concat(param.mentionId, "/full"), param.filter.toApi())
                .then(decorateMention)
                .then(function (res) { return (0,lib/* normalize */.S8)(res, schemas/* default */.A.mention); });
        };
        _this.setFeedback = function (_a) {
            var themeId = _a.themeId, themeName = _a.themeName, mentionIds = _a.mentionIds, filter = _a.filter, feedbackLoopSmartFeatures = Mentions_rest(_a, ["themeId", "themeName", "mentionIds", "filter"]);
            var mapFeatures = function (features) { return (features ? ({
                add: Object.keys(features).filter(function (key) { return features[key]; }).map(function (k) { return k; }),
                remove: Object.keys(features).filter(function (key) { return !features[key]; }).map(function (k) { return k; }),
            }) : null); };
            var mapSingleValueFeatures = function (features) { return (features ? ({
                set: Object.keys(features).filter(function (key) { return features[key]; }).map(function (k) { return k; })[0] || null,
                remove: Object.keys(features).filter(function (key) { return !features[key]; }).map(function (k) { return k; }),
            }) : null); };
            var sendSetFeedbackAnalyticsEvent = function (smartFeatureValues) {
                var changedItems = {};
                var updateChangedItems = function (items, itemKey) { return Object.keys(items).forEach(function (key) {
                    var _a;
                    if (items[key] && items[key].length) {
                        changedItems[itemKey] = Mentions_assign(Mentions_assign({}, changedItems[itemKey]), (_a = {}, _a[key] = items[key], _a));
                    }
                }); };
                Object.keys(smartFeatureValues).forEach(function (key) {
                    if (smartFeatureValues[key]) {
                        updateChangedItems(smartFeatureValues[key], key);
                    }
                });
                (0,analytics/* sendEvent */.BI)('Smart feature: set feedback', Mentions_assign(Mentions_assign({}, changedItems), { topic: {
                        id: themeId,
                        name: themeName,
                    }, mentions_count: mentionIds
                        ? mentionIds.length
                        : undefined }));
            };
            // @ts-ignore
            var _b = Object.keys(feedbackLoopSmartFeatures)
                .reduce(function (mapped, featureName) {
                var _a;
                return (Mentions_assign(Mentions_assign({}, mapped), (_a = {}, _a[featureName] = constants/* FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES */.eu.includes(featureName)
                    ? mapSingleValueFeatures(feedbackLoopSmartFeatures[featureName])
                    : mapFeatures(feedbackLoopSmartFeatures[featureName]), _a)));
            }, {}), systemTags = _b.systemTags, otherSmartFeatureValues = Mentions_rest(_b, ["systemTags"]);
            sendSetFeedbackAnalyticsEvent(Mentions_assign(Mentions_assign({}, otherSmartFeatureValues), { systemTags: systemTags }));
            return _this.apiClient.put("/themes/".concat(themeId, "/mentions/setcorrections"), Mentions_assign({ ids: mentionIds, filter: formatFilter_NEW(filter), autoCategories: systemTags }, otherSmartFeatureValues));
        };
        return _this;
    }
    return MentionsAPI;
}(api_Base));
/* harmony default export */ const Mentions = (MentionsAPI);

;// CONCATENATED MODULE: ./src/api/Intercom.js





var IntercomAPI = /*#__PURE__*/(0,createClass/* default */.A)(function IntercomAPI() {
  (0,classCallCheck/* default */.A)(this, IntercomAPI);
  (0,defineProperty/* default */.A)(this, "getCurrentUser", function (email) {
    return axios_default()({
      method: 'get',
      url: 'https://api.intercom.io/users',
      params: {
        email: email
      },
      headers: {
        Authorization: "Bearer ".concat(config/* default */.A.intercomAccessToken),
        Accept: 'application/json',
        'Content-Type': 'application/json'
      }
    }).then(function (response) {
      return response.data;
    });
  });
});

;// CONCATENATED MODULE: ./src/api/MentionWall.ts
var MentionWall_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var MentionWallAPI = /** @class */ (function (_super) {
    MentionWall_extends(MentionWallAPI, _super);
    function MentionWallAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.get = function (_a) {
            var id = _a.id;
            return _this.apiClient
                .get("/mentionwall/".concat(id));
        };
        _this.getPaged = function (_a) {
            var id = _a.id, page = _a.page, perPage = _a.perPage;
            return _this.apiClient
                .get("/mentionwall/".concat(id, "/paged"), {}, {
                skip: (page - 1) * perPage,
                take: perPage,
            });
        };
        _this.trackUsage = function (_a) {
            var id = _a.id;
            return _this.apiClient
                .post("/mentionwall/".concat(id, "/track"), {});
        };
        _this.getSettings = function (_a) {
            var themeId = _a.themeId;
            return _this.apiClient
                .get("/themes/".concat(themeId, "/mentionwall/settings"));
        };
        _this.updateSettings = function (_a) {
            var themeId = _a.themeId, settings = _a.settings;
            return _this.apiClient
                .put("/themes/".concat(themeId, "/mentionwall/settings"), { settings: settings });
        };
        _this.share = function (_a) {
            var filter = _a.filter, themeId = _a.themeId;
            return _this.apiClient
                .post("/themes/".concat(themeId, "/mentionwall/share"), { filter: filter.toApi() });
        };
        return _this;
    }
    return MentionWallAPI;
}(api_Base));
/* harmony default export */ const MentionWall = (MentionWallAPI);

;// CONCATENATED MODULE: ./src/api/MetaData.ts
var MetaData_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();


var MetaDataAPI = /** @class */ (function (_super) {
    MetaData_extends(MetaDataAPI, _super);
    function MetaDataAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getAspects = function () {
            return _this.apiClient.get('/metadata/aspects')
                .then(function (response) { return (0,lodash.get)(response, 'aspects', {}); });
        };
        _this.getTopSources = function () {
            return _this.apiClient.get('/metadata/filter/sources')
                .then(function (_a) {
                var filterSources = _a.filterSources;
                return filterSources;
            });
        };
        _this.getAudienceInsights = function () {
            return _this.apiClient.get('/metadata/filter/audience-insights');
        };
        _this.getVisualInsights = function () {
            return _this.apiClient.get('/metadata/filter/vi');
        };
        _this.getAvailableFilters = function () {
            return _this.apiClient.get('/metadata/filter').then(function (_a) {
                var filters = _a.filters;
                return filters;
            });
        };
        _this.getDefaultFilters = function () {
            return _this.apiClient.get('/metadata/filter/preview');
        };
        return _this;
    }
    return MetaDataAPI;
}(api_Base));
/* harmony default export */ const MetaData = (MetaDataAPI);

// EXTERNAL MODULE: ./src/utils/dates/formats.ts
var formats = __webpack_require__("RYjn");
;// CONCATENATED MODULE: ./src/api/CustomDashboards.ts
var CustomDashboards_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();





var CustomDashboardsAPI = /** @class */ (function (_super) {
    CustomDashboards_extends(CustomDashboardsAPI, _super);
    function CustomDashboardsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getList = function () { return _this.apiClient.get('/dashboards'); };
        _this.get = function (dashboardId) {
            return _this.apiClient.get("/dashboards/".concat(dashboardId))
                .catch(function (e) { var _a, _b; throw new Error((_b = (_a = e.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.message); });
        };
        _this.getPublic = function (token) {
            return _this.apiClient.get("/dashboard/".concat(token));
        };
        _this.getWidgetData = function (_a) {
            var widget = _a.widget, dashboardFilter = _a.dashboardFilter, dashboardDateRange = _a.dashboardDateRange;
            var abortController = _this.createAbortRequestController('getWidgetData');
            return _this.apiClient
                .post('/dashboards/widget/data', {
                widget: widget,
                dashboardFilter: dashboardFilter,
                dashboardDateRange: dashboardDateRange,
            }, {}, abortController.signal)
                .then(function (res) {
                return (0,lib/* normalize */.S8)(res, {
                    entities: {
                        sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                        authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                        tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                        trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                        geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                        mentions: (0,lib/* arrayOf */.jk)(schemas/* default */.A.mention),
                    },
                });
            });
        };
        _this.getPublicWidgetData = function (_a) {
            var token = _a.token, userLanguage = _a.userLanguage, timeZone = _a.timeZone, widgetId = _a.widgetId;
            return _this.apiClient
                .post("/dashboard/".concat(token, "/widgets/").concat(widgetId, "/data"), {
                userLanguage: userLanguage,
                timeZone: timeZone,
            })
                .then(function (res) {
                return (0,lib/* normalize */.S8)(res, {
                    entities: {
                        sources: (0,lib/* arrayOf */.jk)(schemas/* default */.A.source),
                        authors: (0,lib/* arrayOf */.jk)(schemas/* default */.A.author),
                        tags: (0,lib/* arrayOf */.jk)(schemas/* default */.A.tag),
                        trends: (0,lib/* arrayOf */.jk)(schemas/* default */.A.trend),
                        geos: (0,lib/* arrayOf */.jk)(schemas/* default */.A.geo),
                        mentions: (0,lib/* arrayOf */.jk)(schemas/* default */.A.mention),
                    },
                });
            });
        };
        _this.create = function (dashboard) { return _this.apiClient.put('/dashboards/create', { dashboard: dashboard }); };
        _this.delete = function (dashboardId) { return _this.apiClient.delete("/dashboards/".concat(dashboardId)); };
        _this.update = function (dashboard) { return _this.apiClient.put("/dashboards/".concat(dashboard.id), { dashboard: dashboard }); };
        _this.createWidget = function (_a) {
            var dashboardId = _a.dashboardId, widget = _a.widget, layout = _a.layout;
            return _this.apiClient.put("/dashboards/".concat(dashboardId, "/widgets"), {
                widget: widget,
                layout: layout,
            });
        };
        _this.updateWidget = function (_a) {
            var dashboardId = _a.dashboardId, widget = _a.widget;
            // TODO: CD Remove it when BE will migrate all widgets to segments
            if (widget.topicId)
                delete widget.topicId;
            if (widget.filter)
                delete widget.filter;
            return _this.apiClient.put("/dashboards/".concat(dashboardId, "/widgets/").concat(widget.id), { widget: widget });
        };
        _this.deleteWidget = function (_a) {
            var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
            return _this.apiClient.delete("/dashboards/".concat(dashboardId, "/widgets/").concat(widgetId));
        };
        _this.updateLayout = function (_a) {
            var dashboardId = _a.dashboardId, layout = _a.layout;
            return _this.apiClient.put("/dashboards/".concat(dashboardId, "/layout"), { layout: layout });
        };
        _this.share = function (_a) {
            var filter = _a.filter, dashboardId = _a.dashboardId, dateRange = _a.dateRange;
            return _this.apiClient.put("/dashboards/".concat(dashboardId, "/share"), { filter: filter, dateRange: dateRange });
        };
        _this.export = function (_a) {
            var dashboardId = _a.dashboardId, dashboardName = _a.dashboardName, format = _a.format, dashboardFilter = _a.dashboardFilter, dashboardDateRange = _a.dashboardDateRange;
            return _this.apiClient
                .download("/dashboards/".concat(dashboardId, "/export"), {
                format: format,
                dashboardFilter: dashboardFilter.toApi(),
                dashboardDateRange: dashboardDateRange,
            })
                .then(function (res) {
                file_download_default()(res, "".concat(dashboardName, "-").concat((0,formats/* formatDate */.Yq)(new Date()), ".").concat(format));
            });
        };
        _this.transferToAccount = function (_a) {
            var dashboardId = _a.dashboardId, targetAccountId = _a.targetAccountId;
            return _this.apiClient.put("/dashboards/".concat(dashboardId, "/account"), { targetAccountId: targetAccountId });
        };
        return _this;
    }
    return CustomDashboardsAPI;
}(api_Base));
/* harmony default export */ const CustomDashboards = (CustomDashboardsAPI);

;// CONCATENATED MODULE: ./src/api/Landing.ts
var Landing_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();


var LandingAPI = /** @class */ (function (_super) {
    Landing_extends(LandingAPI, _super);
    function LandingAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getImageRecognitionFileAnalyze = function (_a) {
            var imageFile = _a.imageFile, token = _a.token;
            var formData = new FormData();
            formData.append('fileToUpload', imageFile);
            return axios_default().post("".concat(_this.apiClient.prefix, "/ir/analyze"), formData, {
                headers: {
                    'Content-Type': 'multipart/form-data',
                    'Recaptcha-Token': token,
                },
            })
                .then(function (result) { return result.data; });
        };
        _this.getImageRecognitionUrlAnalyze = function (_a) {
            var imageUrl = _a.imageUrl, token = _a.token;
            return axios_default().post("".concat(_this.apiClient.prefix, "/ir/analyze-url"), { imageUrl: imageUrl }, {
                headers: {
                    'Recaptcha-Token': token,
                },
            })
                .then(function (result) { return result.data; });
        };
        return _this;
    }
    return LandingAPI;
}(api_Base));
/* harmony default export */ const Landing = (LandingAPI);

;// CONCATENATED MODULE: ./src/api/Subscription.ts
var Subscription_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var SubscriptionAPI = /** @class */ (function (_super) {
    Subscription_extends(SubscriptionAPI, _super);
    function SubscriptionAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.changeSubscriptionPlan = function (_a) {
            var subscriptionPlan = _a.subscriptionPlan;
            return _this.apiClient
                .put('/account/subscription', { subscriptionPlan: subscriptionPlan });
        };
        return _this;
    }
    return SubscriptionAPI;
}(api_Base));
/* harmony default export */ const Subscription = (SubscriptionAPI);

;// CONCATENATED MODULE: ./src/api/Translation.ts
var Translation_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var Translation_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};

var TranslationApi = /** @class */ (function (_super) {
    Translation_extends(TranslationApi, _super);
    function TranslationApi() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.translate = function (_a) {
            var payload = Translation_rest(_a, []);
            return _this.apiClient
                .post('/translate', payload);
        };
        return _this;
    }
    return TranslationApi;
}(api_Base));
/* harmony default export */ const Translation = (TranslationApi);

;// CONCATENATED MODULE: ./src/api/InsightsCopilot.ts
var InsightsCopilot_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var InsightsCopilotAPI = /** @class */ (function (_super) {
    InsightsCopilot_extends(InsightsCopilotAPI, _super);
    function InsightsCopilotAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.askQuestion = function (params) {
            var _a;
            return _this.apiClient.post("/themes/".concat(params.topicId, "/insights-copilot/v2/ask"), (_a = params.filter) === null || _a === void 0 ? void 0 : _a.toApi(), {
                threadId: params.threadId,
                request: params.request,
                enhanceQuery: params.enhanceQuery,
                isAboutTrend: params.isAboutTrend,
                isAboutAspect: params.isAboutAspect,
                isAboutSubject: params.isAboutSubject,
                predefinedQuestionId: params.predefinedQuestionId,
                language: params.language,
            });
        };
        _this.cancel = function (_a) {
            var topicId = _a.topicId, questionId = _a.questionId;
            return _this.apiClient.post("/themes/".concat(topicId, "/insights-copilot/v2/cancel"), {}, { callId: questionId });
        };
        _this.hideAnswer = function (_a) {
            var topicId = _a.topicId, questionId = _a.questionId;
            return _this.apiClient.post("/themes/".concat(topicId, "/insights-copilot/v2/hide-answer"), {}, { answerId: questionId });
        };
        _this.fetchHistory = function (_a) {
            var topicId = _a.topicId;
            return _this.apiClient.get("/themes/".concat(topicId, "/insights-copilot/v2/history"));
        };
        _this.sendFeedback = function (_a) {
            var topicId = _a.topicId, id = _a.id, type = _a.type;
            return _this.apiClient.post("/themes/".concat(topicId, "/insights-copilot/v2/leave-feedback"), {}, { id: id, feedback: type });
        };
        _this.sendMentionFeedback = function (_a) {
            var topicId = _a.topicId, mentionId = _a.mentionId, questionId = _a.questionId, isCorrect = _a.isCorrect, pointText = _a.pointText;
            return _this.apiClient.post("/themes/".concat(topicId, "/insights-copilot/v2/examples-feedback-loop"), { callId: questionId, isCorrect: isCorrect, mentionId: mentionId, pointText: pointText });
        };
        return _this;
    }
    return InsightsCopilotAPI;
}(api_Base));
/* harmony default export */ const InsightsCopilot = (InsightsCopilotAPI);

;// CONCATENATED MODULE: ./src/api/Notifications.ts
var Notifications_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

var NotificationsAPI = /** @class */ (function (_super) {
    Notifications_extends(NotificationsAPI, _super);
    function NotificationsAPI() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getNotificationSettings = function () {
            return _this.apiClient.get('/users/me/notifications');
        };
        _this.hideAuthorizationNotification = function () {
            return _this.apiClient
                .put('/users/me/notifications/authorizations/hide');
        };
        _this.hideAuthorizationExpirationNotification = function (_a) {
            var authorizationId = _a.authorizationId;
            return _this.apiClient
                .put("/users/me/notifications/authorizations/".concat(authorizationId, "/hide"));
        };
        _this.muteAuthorizationExpirationNotification = function (_a) {
            var authorizationId = _a.authorizationId;
            return _this.apiClient
                .put("/users/me/notifications/authorizations/".concat(authorizationId, "/mute"));
        };
        return _this;
    }
    return NotificationsAPI;
}(api_Base));
/* harmony default export */ const Notifications = (NotificationsAPI);

;// CONCATENATED MODULE: ./src/api/index.js




























function apiFactory() {
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
    apiPrefix = _ref.apiPrefix;
  if (!apiPrefix) {
    throw new Error('[apiPrefix] required');
  }
  var apiClient = new ApiClient({
    prefix: apiPrefix
  });
  return {
    apiClient: apiClient,
    hub: new Hub/* default */.Ay({
      apiPrefix: apiPrefix
    }),
    stats: new Stats({
      apiClient: apiClient
    }),
    geo: new Geo({
      apiClient: apiClient
    }),
    auth: new Auth({
      apiClient: apiClient
    }),
    facets: new Facets({
      apiClient: apiClient
    }),
    account: new AccountAPI({
      apiClient: apiClient
    }),
    subscription: new Subscription({
      apiClient: apiClient
    }),
    billing: new Billing({
      apiClient: apiClient
    }),
    users: new UsersAPI({
      apiClient: apiClient
    }),
    settings: new AccountSettingsAPI({
      apiClient: apiClient
    }),
    integrations: new IntegrationsAPI({
      apiClient: apiClient
    }),
    externalAuthorizations: new ExternalAuthorizations({
      apiClient: apiClient
    }),
    themes: new Themes({
      apiClient: apiClient
    }),
    tasks: new TasksAPI({
      apiClient: apiClient
    }),
    translation: new Translation({
      apiClient: apiClient
    }),
    reports: new Reports({
      apiClient: apiClient
    }),
    authors: new Authors({
      apiClient: apiClient
    }),
    channels: new Channels({
      apiClient: apiClient
    }),
    sources: new SourcesAPI({
      apiClient: apiClient
    }),
    mentions: new Mentions({
      apiClient: apiClient
    }),
    mentionWall: new MentionWall({
      apiClient: apiClient
    }),
    metaData: new MetaData({
      apiClient: apiClient
    }),
    customDashboards: new CustomDashboards({
      apiClient: apiClient
    }),
    intercom: new IntercomAPI(),
    landing: new Landing({
      apiClient: apiClient
    }),
    insightsCopilot: new InsightsCopilot({
      apiClient: apiClient
    }),
    notifications: new Notifications({
      apiClient: apiClient
    })
  };
}
;// CONCATENATED MODULE: ./src/apiSingleton.js


/* harmony default export */ const apiSingleton = (apiFactory({
  apiPrefix: config/* default */.A.apiPrefix
}));

/***/ }),

/***/ "sCoI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  l: () => (/* binding */ EXPORT_TYPES),
  A: () => (/* binding */ ChartHeader)
});

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/InlineSelect/index.ts + 2 modules
var InlineSelect = __webpack_require__("+733");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/index.ts + 2 modules
var Toolbar = __webpack_require__("rYbp");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/ChartHeader/ChartHeader.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChartHeader_ChartHeader = ({"base":"nJwVLb46v6dMfroF3EKk","titleContainer":"LFAyCfXbpjAJpyAcQf6J","title":"P8h7cqLhS_2CEBcIEZFn","subtitle":"kh4eJvgBRr5EBO1rQslq","chartOptions":"ZUSDmcQmPWoPY4XBjbqO","exportButton":"q1izXil_jDACdPf9_4mt","exportButtonLabel":"OG4PcYXA1O0M6_pHDJW3"});
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/components/other/ChartHeader/ChartHeader.js






function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var EXPORT_TYPES = {
  PNG: 'png',
  SVG: 'svg',
  JPEG: 'jpeg',
  PDF: 'pdf',
  XLS: 'xls',
  CSV: 'csv',
  PRINT: 'print'
};
var ChartHeader = /*#__PURE__*/function (_PureComponent) {
  function ChartHeader() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ChartHeader);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = _callSuper(this, ChartHeader, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      chartRef: {}
    });
    (0,defineProperty/* default */.A)(_this, "handleSelectExportOption", function (exportOption) {
      var onChartExport = _this.props.onChartExport;
      var reportTypeActions = _this.chartExportOptions.reduce(function (options, option) {
        return Object.assign(options, (0,defineProperty/* default */.A)({}, option.value, option.action));
      }, {});
      reportTypeActions[exportOption]();
      var fileType = Object.values(EXPORT_TYPES).find(function (type) {
        return type === exportOption;
      });
      if (onChartExport && fileType) {
        onChartExport({
          fileType: fileType
        });
      }
    });
    return _this;
  }
  (0,inherits/* default */.A)(ChartHeader, _PureComponent);
  return (0,createClass/* default */.A)(ChartHeader, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      var chartRef = this.props.chartRef;
      var isEmptyChartRef = !this.state.chartRef || !Object.keys(this.state.chartRef).length;
      if (chartRef && isEmptyChartRef) {
        this.setState({
          chartRef: chartRef
        });
      }
    }
  }, {
    key: "chartExportOptions",
    get: function get() {
      var chartRef = this.state.chartRef;
      var avoidOptions = this.props.avoidOptions;
      if (chartRef) {
        return [{
          value: EXPORT_TYPES.PRINT,
          label: l('Print chart'),
          action: function action() {
            chartRef.print();
          }
        }, {
          value: EXPORT_TYPES.PNG,
          label: l('Download PNG'),
          action: function action() {
            chartRef.exportChartLocal({
              type: 'image/png'
            });
          }
        }, {
          value: EXPORT_TYPES.JPEG,
          label: l('Download JPEG'),
          action: function action() {
            chartRef.exportChartLocal({
              type: 'image/jpeg'
            });
          }
        }, {
          value: EXPORT_TYPES.SVG,
          label: l('Download SVG'),
          action: function action() {
            chartRef.exportChartLocal({
              type: 'image/svg+xml'
            });
          }
        }, {
          value: EXPORT_TYPES.PDF,
          label: l('Download PDF'),
          action: function action() {
            chartRef.exportChart({
              type: 'application/pdf'
            });
          }
        }, {
          value: EXPORT_TYPES.XLS,
          label: l('Download XLS'),
          action: function action() {
            chartRef.downloadXLS();
          }
        }, {
          value: EXPORT_TYPES.CSV,
          label: l('Download CSV'),
          action: function action() {
            chartRef.downloadCSV();
          }
        }].filter(function (option) {
          return !avoidOptions || !avoidOptions.includes(option.value);
        });
      }
      return [];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        className = _this$props.className,
        title = _this$props.title,
        info = _this$props.info,
        subtitle = _this$props.subtitle,
        caption = _this$props.caption,
        trigger = _this$props.trigger,
        additionalContent = _this$props.additionalContent,
        disabled = _this$props.disabled,
        withoutExport = _this$props.withoutExport,
        chartRef = _this$props.chartRef;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* Toolbar */.M7, {
        className: classnames_default()(ChartHeader_ChartHeader.base, className),
        children: [(title || subtitle) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ChartHeader_ChartHeader.titleContainer),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(H2/* default */.A, {
            className: classnames_default()(ChartHeader_ChartHeader.title),
            children: [title, info ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
                text: info,
                children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  type: "info",
                  color: "lightgray"
                })
              })]
            }) : null]
          }), subtitle && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(ChartHeader_ChartHeader.subtitle),
            children: subtitle
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          children: caption
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ChartHeader_ChartHeader.chartOptions),
          children: [additionalContent && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
            children: [additionalContent, /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {})]
          }), !withoutExport && chartRef && /*#__PURE__*/(0,jsx_runtime.jsx)(InlineSelect/* default */.A, {
            withoutPadding: true,
            position: "top left",
            options: this.chartExportOptions,
            disabled: disabled,
            onChange: this.handleSelectExportOption,
            children: trigger || /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              ghost: true,
              size: "small",
              className: classnames_default()(ChartHeader_ChartHeader.exportButton),
              disabled: disabled,
              label: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                className: classnames_default()(ChartHeader_ChartHeader.exportButtonLabel),
                children: [l('Export', 'highcharts'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  size: 18,
                  type: "menu-down"
                })]
              })
            })
          })]
        })]
      });
    }
  }]);
}(react.PureComponent);


/***/ }),

/***/ "+rhQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _ChartHeader__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _ChartHeader__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("sCoI");


/***/ }),

/***/ "vGGb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_MentionEngagementCounts_MentionEngagementCounts)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/MentionParamsCounter/index.ts + 2 modules
var MentionParamsCounter = __webpack_require__("7sfm");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/models/Mention.ts
var Mention = __webpack_require__("+Trc");
;// CONCATENATED MODULE: ./src/components/other/MentionEngagementCounts/MentionEngagementCounts.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionEngagementCounts_MentionEngagementCounts = ({"base":"pWdXsxl6c7gLsoj_t3tN","reactionsContainer":"Dh0VIZtJ50j_P5DxLtc0","reaction":"tUSW1U8Kqyul33zt8qEg","reactionImage":"bXF9sIE2OkVI03u3QWhA","reactionCount":"roC_ghmnAFaHiivelTpB","reactionPreviewContainer":"kGCEANzby2MZROrecMOW","reactionImagePreview":"KnV_239FeaJtkW4HPRWh"});
;// CONCATENATED MODULE: ./src/components/other/MentionEngagementCounts/MentionEngagementCounts.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};








var SOURCES_WITH_HEART_AS_LIKE = ['instagram.com', 'vk.com', 'twitter.com'];
var SOURCES_WITH_REACTIONS = ['facebook.com', 'ok.ru', 'twitter.com'];
var GROUP_REACTIONS = [
    '/static/images/facebook_like_reaction.svg',
    '/static/images/facebook_angry_reaction.svg',
    '/static/images/facebook_haha_reaction.svg'
];
var getSourceNameWithoutTLD = function (sourceName) { return sourceName.split('.')[0]; };
var MentionEngagementCounts = /** @class */ (function (_super) {
    __extends(MentionEngagementCounts, _super);
    function MentionEngagementCounts() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getReactionsIcons = function () {
            return {
                facebook: {
                    likes: '/static/images/facebook_like_reaction.svg',
                    wow: '/static/images/facebook_wow_reaction.svg',
                    haha: '/static/images/facebook_haha_reaction.svg',
                    angry: '/static/images/facebook_angry_reaction.svg',
                    love: '/static/images/facebook_love_reaction.svg',
                    sad: '/static/images/facebook_sad_reaction.svg',
                    care: '/static/images/facebook_care_reaction.svg',
                },
                ok: {
                    likes: '/static/images/ok_likes_reaction.png',
                    wow: '/static/images/ok_wow_reaction.png',
                    haha: '/static/images/ok_haha_reaction.png',
                    love: '/static/images/ok_love_reaction.png',
                    sad: '/static/images/ok_sad_reaction.png',
                },
                twitter: {
                    likes: '/static/images/twitter_likes_reaction.svg',
                    vote: '/static/images/twitter_vote_reaction.svg',
                },
            };
        };
        _this.renderLikesCount = function () {
            var _a = _this.props, sourceName = _a.sourceName, likes = _a.likes, reactions = _a.reactions, dateCollected = _a.dateCollected;
            if ((sourceName === 'telegram.me') && (reactions === null || reactions === void 0 ? void 0 : reactions.total)) {
                return ((0,jsx_runtime.jsx)(GroupedReactionsCounter, { count: reactions.total, tooltipText: "".concat(sprintf(nl('%s reaction', '%s reactions', reactions.total), numeral_default()(reactions.total).format())), dateCollected: dateCollected }));
            }
            if (!likes && !SOURCES_WITH_REACTIONS.includes(sourceName)) {
                return null;
            }
            if (SOURCES_WITH_REACTIONS.includes(sourceName)) {
                var topReactions = _this.sortedReactions.slice(0, 3);
                var totalReactionsCount = reactions ? reactions.total + likes : likes;
                var source_1 = getSourceNameWithoutTLD(sourceName);
                var icons_1 = _this.getReactionsIcons();
                if (!totalReactionsCount) {
                    return null;
                }
                return ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionsContainer) }, { children: _this.sortedReactions.map(function (reaction) {
                                return (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reaction) }, { children: [(0,jsx_runtime.jsx)("img", { className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionImage), src: icons_1[source_1][reaction.type], alt: reaction.type }), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionCount) }, { children: reaction.count }))] }), reaction.type);
                            }) })), icon: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionPreviewContainer) }, { children: topReactions.map(function (reaction) {
                                return (0,jsx_runtime.jsx)("img", { className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionImagePreview), src: icons_1[source_1][reaction.type], alt: reaction.type }, reaction.type);
                            }) })), updatedAt: dateCollected, count: totalReactionsCount }) }));
            }
            return ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: sprintf(nl('%s like', '%s likes', likes), numeral_default()(likes).format()), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: SOURCES_WITH_HEART_AS_LIKE.includes(sourceName)
                        ? 'heart'
                        : 'like' }), count: likes, updatedAt: dateCollected }));
        };
        _this.renderSharesEngagement = function () {
            var _a, _b;
            if (!((_a = _this.props.shares) === null || _a === void 0 ? void 0 : _a.facebook))
                return null;
            var _c = (_b = _this.props.shares) === null || _b === void 0 ? void 0 : _b.facebook, reactions = _c.reactions, shares = _c.shares, comments = _c.comments, dateCollected = _c.dateCollected;
            return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [reactions
                        ? ((0,jsx_runtime.jsx)(GroupedReactionsCounter, { count: reactions, tooltipText: (0,jsx_runtime.jsxs)("div", { children: [sprintf(nl('%s reaction', '%s reactions', reactions), numeral_default()(reactions).format()), (0,jsx_runtime.jsx)("div", { children: "(".concat(l('based on Facebook shares'), ")") })] }), dateCollected: dateCollected }))
                        : null, shares
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: (0,jsx_runtime.jsxs)("div", { children: [sprintf(nl('%s repost', '%s reposts', shares), numeral_default()(shares).format()), (0,jsx_runtime.jsx)("div", { children: "(".concat(l('based on Facebook shares'), ")") })] }), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "repost" }), count: shares, updatedAt: dateCollected }))
                        : null, comments
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: (0,jsx_runtime.jsxs)("div", { children: [sprintf(nl('%s comment', '%s comments', comments), numeral_default()(comments).format()), (0,jsx_runtime.jsx)("div", { children: "(".concat(l('based on Facebook shares'), ")") })] }), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "comment" }), count: comments, updatedAt: dateCollected }))
                        : null] }));
        };
        _this.renderNativeEngagement = function () {
            var _a = _this.props, dislikes = _a.dislikes, reposts = _a.reposts, comments = _a.comments, views = _a.views, impressions = _a.impressions, reach = _a.reach, dateCollected = _a.dateCollected;
            return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [_this.renderLikesCount(), dislikes
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: sprintf(nl('%s dislike', '%s dislikes', dislikes), numeral_default()(dislikes).format()), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "dislike" }), count: dislikes, updatedAt: dateCollected }))
                        : null, reposts
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: sprintf(nl('%s repost', '%s reposts', reposts), numeral_default()(reposts).format()), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "repost" }), count: reposts, updatedAt: dateCollected }))
                        : null, comments
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: sprintf(nl('%s comment', '%s comments', comments), numeral_default()(comments).format()), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "comment" }), count: comments, updatedAt: dateCollected }))
                        : null, views
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: sprintf(_this.viewsTooltipTemplate, numeral_default()(views).format()), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "view" }), count: views, updatedAt: dateCollected }))
                        : null, impressions
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: (0,jsx_runtime.jsxs)("div", { children: [sprintf(nl('%s impression', '%s impressions', impressions), numeral_default()(impressions).format()), (0,jsx_runtime.jsx)("div", { children: l('Total number of times your content was shown to users.') })] }), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "impressions" }), count: impressions, updatedAt: dateCollected }))
                        : null, reach
                        ? ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { tooltipText: (0,jsx_runtime.jsxs)("div", { children: [sprintf(l('%s reach'), numeral_default()(reach).format()), (0,jsx_runtime.jsx)("div", { children: l('Number of people who have seen your content.') })] }), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "reach" }), count: reach, updatedAt: dateCollected }))
                        : null] }));
        };
        return _this;
    }
    Object.defineProperty(MentionEngagementCounts.prototype, "sortedReactions", {
        get: function () {
            var reactions = this.props.reactions;
            var likes = [{ type: 'likes', count: this.props.likes }];
            if (!reactions) {
                return likes;
            }
            return Object.entries(reactions).reduce(function (reactionsToShow, _a) {
                var _b = __read(_a, 2), reactionName = _b[0], reactionCount = _b[1];
                if (reactionName !== 'total' && reactionCount !== 0) {
                    reactionsToShow.push({ type: reactionName, count: reactionCount });
                }
                return reactionsToShow;
            }, likes
            // @ts-ignore
            ).filter(function (a) { return a.count > 0; }).sort(function (a, b) { return a.count < b.count; });
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(MentionEngagementCounts.prototype, "viewsTooltipTemplate", {
        get: function () {
            var _a = this.props, views = _a.views, sourceFormat = _a.sourceFormat;
            switch (sourceFormat) {
                case Mention/* SourceFormat */.vA.TwitchLive:
                    return nl('%s maximum concurrent view', '%s maximum concurrent views', views);
                default:
                    return nl('%s view', '%s views', views);
            }
        },
        enumerable: false,
        configurable: true
    });
    MentionEngagementCounts.prototype.render = function () {
        var _a = this.props, className = _a.className, shares = _a.shares;
        return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.base, className) }, { children: 
            // now, when we have shares engagement, we don't have native. that can change in the future
            shares ? this.renderSharesEngagement() : this.renderNativeEngagement() })));
    };
    return MentionEngagementCounts;
}(react.Component));
/* harmony default export */ const other_MentionEngagementCounts_MentionEngagementCounts = (MentionEngagementCounts);
var GroupedReactionsCounter = (0,react.memo)(function (_a) {
    var count = _a.count, tooltipText = _a.tooltipText, dateCollected = _a.dateCollected;
    return ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionPreviewContainer) }, { children: GROUP_REACTIONS.map(function (reactionImgPath) {
                return (0,jsx_runtime.jsx)("img", { className: classnames_default()(MentionEngagementCounts_MentionEngagementCounts.reactionImagePreview), src: reactionImgPath, alt: "reactions" }, reactionImgPath);
            }) })), count: count, tooltipText: tooltipText || null, updatedAt: dateCollected }));
});

;// CONCATENATED MODULE: ./src/components/other/MentionEngagementCounts/index.js


/***/ }),

/***/ "a63D":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ MentionWall)
});

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-masonry-component/lib/index.js
var lib = __webpack_require__("pQUg");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./src/components/other/MentionWallCard/index.js + 2 modules
var MentionWallCard = __webpack_require__("0whn");
// EXTERNAL MODULE: ./src/utils/navigation.ts
var navigation = __webpack_require__("RBXy");
// EXTERNAL MODULE: ./src/utils/defaultMentionWallSettings.json
var defaultMentionWallSettings = __webpack_require__("R50I");
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/MentionWall/MentionWall.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionWall_MentionWall = ({"base":"P0xx6WBwHnVcMO1gdg_o","header":"NgONWljrfexm5i3fT9pI","content":"GoqMhdi6Kd0P1pnihg8f","credit":"QhP319U0FxvEoZFWSpRv","grid":"kzohW8bFMe0pwyqypjII","error-message__img":"FELrs3u5hpA1rXs2BFO6","error-message__text":"IxdksNTaV8Ra78URknjA"});
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/components/other/MentionWall/MentionWall.js






function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/*
    eslint
        react/jsx-no-bind: 0,
        new-cap: 0,
*/












var masonryOptions = {
  itemSelector: '.imageCardDemo',
  columnWidth: 300,
  gutter: 16,
  isFitWidth: true
};
var imagesLoadedOptions = {
  background: '.my-bg-image-el'
};
var MentionWall = /*#__PURE__*/function (_PureComponent) {
  function MentionWall() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionWall);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = _callSuper(this, MentionWall, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "renderErrorMessage", function () {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(MentionWall_MentionWall['error-message']),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
          alt: "error",
          src: "/static/images/mention-wall-error.svg",
          className: classnames_default()(MentionWall_MentionWall['error-message__img'])
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          className: classnames_default()(MentionWall_MentionWall['error-message__text']),
          children: l('Houston, page is not found')
        })]
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(MentionWall, _PureComponent);
  return (0,createClass/* default */.A)(MentionWall, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.isMobile = (0,mobile/* isMobileSize */.IS)();
      if (!this.isMobile && !this.props.withScroll) {
        document.getElementsByTagName('body')[0].style = 'overflow: hidden';
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      if (!this.isMobile) {
        document.getElementsByTagName('body')[0].style = 'overflow: auto';
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        loading = _this$props.loading,
        _this$props$mentions = _this$props.mentions,
        mentions = _this$props$mentions === void 0 ? [] : _this$props$mentions,
        _this$props$settings = _this$props.settings,
        settings = _this$props$settings === void 0 ? defaultMentionWallSettings : _this$props$settings,
        error = _this$props.error;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(MentionWall_MentionWall.base),
        style: {
          background: settings.bg
        },
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(MentionWall_MentionWall.header),
          style: settings.headerStyle,
          children: /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
            alt: "Logo",
            src: settings.logo || defaultMentionWallSettings.logo,
            style: settings.logoStyle
          })
        }), error && this.renderErrorMessage(), !error && settings.showCredit && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          role: "presentation",
          className: classnames_default()(MentionWall_MentionWall.credit),
          style: _objectSpread({
            background: settings.creditBg
          }, settings.creditStyle),
          onClick: function onClick() {
            return (0,navigation/* goToPromoSite */.cO)();
          },
          children: /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
            style: _objectSpread({}, settings.creditImageStyle),
            src: settings.creditImageSrc ? settings.creditImageSrc : '/static/images/youscan.io.svg',
            alt: ""
          })
        }), !error && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(MentionWall_MentionWall.content),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
            loaded: !loading,
            empty: mentions.length === 0,
            emptyState: /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
              large: true,
              image: "/static/images/empty_gallery.svg",
              message: l('No mentions match your filter. Try changing the filter or date range.')
            }),
            children: function children() {
              return /*#__PURE__*/(0,jsx_runtime.jsx)((lib_default()), {
                className: classnames_default()(MentionWall_MentionWall.grid),
                options: masonryOptions,
                disableImagesLoaded: false,
                updateOnEachImageLoad: true,
                imagesLoadedOptions: imagesLoadedOptions,
                children: mentions.map(function (mention) {
                  return /*#__PURE__*/(0,jsx_runtime.jsx)(MentionWallCard/* default */.A, {
                    textColor: settings.textColor,
                    cardBackgroundColor: settings.cardBgColor,
                    showSentiment: settings.showSentiment,
                    sentiment: mention.sentiment,
                    imageUrl: mention.imageUrl,
                    text: mention.text,
                    publishedAt: mention.publishedAt,
                    authorName: mention.author ? mention.author.name : undefined,
                    authorAvatar: mention.author ? mention.author.avatarUrl : undefined,
                    sourceName: mention.source ? mention.source.name : 'Unnamed source'
                  }, mention.id);
                })
              });
            }
          })
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/components/other/MentionWall/index.js


/***/ }),

/***/ "0whn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_MentionWallCard_MentionWallCard)
});

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Avatar/index.ts + 2 modules
var Avatar = __webpack_require__("tq5F");
// EXTERNAL MODULE: ./src/components/ui/MentionText/index.ts + 2 modules
var MentionText = __webpack_require__("6k/U");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/utils/truncate.js
var truncate = __webpack_require__("wbkJ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/MentionWallCard/MentionWallCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionWallCard_MentionWallCard = ({"overlayedBlock":"KdbWzs6yAZnyckLhvNTb","flexCenter":"KDlPFaBabRmVWiHtGVy3","smartFeature":"BQDwCOEq940oARhWMQpe","tag":"Ep7xpw0yd8mev4c7jyYA","visibleScrollBar":"CSmgi_k5pL_JjN4VGKuj","hiddenScrollBar":"IHZSbaqiMH6tEkQvgyPz","card":"LoOSCoEBTEsmFPxsq5MN","cardImage":"Sd335PDb8kHFQcDlo3Hj","cardContent":"JOePt2PRNnm3XVRXCzps","footer":"Vmizcc8RzMxCC44Ngo10","postInfo":"_SAS_RG3tYfAop3jJY2R","authorName":"Mn7Ppg_6F83ouougRELo","time":"CpKx5PWI7_iwTbHjrree","avatarContainer":"kaeSVjlIPgv2LFMHHJHw","sentiment":"EkCZ6Yq4IgW65Pc8zZl2","positive":"CnU6kPSTGnG0_tLFmQum","negative":"ob8BmCDI3oOahCsUnwql","neutral":"oS15kWJqxMCMrp4L4duc"});
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/components/other/MentionWallCard/MentionWallCard.js











var MentionWallCard = function MentionWallCard(_ref) {
  var cardBackgroundColor = _ref.cardBackgroundColor,
    textColor = _ref.textColor,
    textSize = _ref.textSize,
    showSentiment = _ref.showSentiment,
    imageUrl = _ref.imageUrl,
    text = _ref.text,
    sentiment = _ref.sentiment,
    sourceName = _ref.sourceName,
    authorName = _ref.authorName,
    authorAvatar = _ref.authorAvatar,
    publishedAt = _ref.publishedAt;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()('imageCardDemo', MentionWallCard_MentionWallCard.card, (0,defineProperty/* default */.A)({}, MentionWallCard_MentionWallCard.withImage, !!imageUrl)),
    style: {
      background: cardBackgroundColor || 'linear-gradient(135deg,#60ca23,#35d88a)',
      color: textColor,
      fontSize: textSize
    },
    children: [imageUrl && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
      className: classnames_default()(MentionWallCard_MentionWallCard.cardImage),
      src: imageUrl,
      alt: " "
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(MentionWallCard_MentionWallCard.cardContent),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(MentionText/* default */.A, {
        className: classnames_default()(MentionWallCard_MentionWallCard.cardText),
        text: (0,truncate/* default */.A)(text, 550)
      }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(MentionWallCard_MentionWallCard.footer),
        children: [(authorAvatar || showSentiment) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(MentionWallCard_MentionWallCard.avatarContainer),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Avatar/* default */.A, {
            rounded: true,
            size: 50,
            className: classnames_default()(MentionWallCard_MentionWallCard.avatar),
            imageUrl: authorAvatar
          }), showSentiment ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(MentionWallCard_MentionWallCard.sentiment, MentionWallCard_MentionWallCard[sentiment]),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: sentiment,
              color: "white",
              size: 20
            })
          }) : null]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(MentionWallCard_MentionWallCard.postInfo),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(MentionWallCard_MentionWallCard.authorName),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
              name: sourceName
            }), '  ', authorName || sourceName]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(MentionWallCard_MentionWallCard.time),
            children: moment_default()(publishedAt).fromNow()
          })]
        })]
      })]
    })]
  });
};
/* harmony default export */ const other_MentionWallCard_MentionWallCard = (/*#__PURE__*/(0,react.memo)(MentionWallCard));
;// CONCATENATED MODULE: ./src/components/other/MentionWallCard/index.js


/***/ }),

/***/ "jMZ8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_NoResultsText_NoResultsText)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/NoResultsText/NoResultsText.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NoResultsText = ({"base":"SuMgHu7wI9WbwiLHB8RG"});
;// CONCATENATED MODULE: ./src/components/other/NoResultsText/NoResultsText.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var NoResultsText_NoResultsText = function (_a) {
    var _b = _a.children, children = _b === void 0 ? 'example' : _b;
    return ((0,jsx_runtime.jsx)("p", __assign({ className: classnames_default()(NoResultsText.base) }, { children: children })));
};
/* harmony default export */ const other_NoResultsText_NoResultsText = (NoResultsText_NoResultsText);

;// CONCATENATED MODULE: ./src/components/other/NoResultsText/index.js


/***/ }),

/***/ "QKCH":
/***/ (() => {

/* eslint-disable */
/*
* Useful link about ACE quuery language: https://ace.c9.io/#nav=higlighter
* */

var FILTER_TERMS = ["worldRegion", "country", "language", "postType", "sourceType", "source", "contentType", "title", "text", "author.bio", "author.name", "author.nickname", "author.gender", "author.age", "author.subscribers", "author.interests", "author.interestCategories", "author.occupations", "publicationPlace.name", "publicationPlace.nickname", "logo", "image.type", "image.subtype", "image.object", "image.scene", "image.person", "image.activity", "image.color"];
ace.define("ace/mode/queryLanguage_highlight_rules", ["require", "exports", "module", "ace/lib/oop", "ace/mode/text_highlight_rules"], function (acequire, exports, _module) {
  "use strict";

  var oop = acequire("../lib/oop");
  var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules;
  var queryEditorHighlightRules = function queryEditorHighlightRules() {
    var keywords = "or|and|и|или|not";
    var turkishLetters = "ÿğüşöçİĞÜŞÖÇӘəIı";
    var kazakhLetters = "ӘәҒғҚқҮүҰұҢңӨөҺһҢң";
    var keywordMapper = this.createKeywordMapper({
      "keyword": keywords
    }, "identifier", true);
    this.$rules = {
      "start": [{
        token: "string",
        regex: '"',
        next: "string"
      }, {
        token: function token(value) {
          if (FILTER_TERMS.some(function (term) {
            return term.toLowerCase() === value.toLowerCase();
          })) {
            return "term";
          }
          return "wrongTerm";
        },
        regex: /([\w.]+)\s*(?=(?:(?::)\s*((?:<=?)|(?:>=?))?\s*)(?:[^=:><]+|$))/
      }, {
        token: keywordMapper,
        regex: "[a-zA-Zа-яА-ЯєЄіІїЇґҐъЪёЁÀ-" + turkishLetters + kazakhLetters + "_$][a-zA-Zа-яА-ЯєЄіІїЇґҐъЪёЁÀ-" + turkishLetters + kazakhLetters + "0-9_$]*"
      }, {
        token: "paren.lparen",
        regex: '[\\(]|(?=[\(]")'
      }, {
        token: "paren.rparen",
        regex: "[\\)]"
      }, {
        token: "text",
        regex: "\\s+"
      }, {
        token: "stopword",
        regex: '(-(("[^"]+")|([^"\\s]+)))'
      }, {
        token: "wordsDistance",
        regex: "[/][0-9]+"
      }, {
        token: "comment",
        // multi line comment
        regex: "<<<",
        next: "comment_word"
      }],
      "string": [{
        token: "constant.language.escape",
        regex: '""'
      }, {
        token: "string",
        regex: '"',
        next: "start"
      }, {
        defaultToken: "string"
      }],
      "comment_word": [{
        token: "commentWord",
        regex: ">>>",
        next: "start"
      }, {
        defaultToken: "commentWord"
      }]
    };
    this.normalizeRules();
  };
  oop.inherits(queryEditorHighlightRules, TextHighlightRules);
  exports.queryEditorHighlightRules = queryEditorHighlightRules;
});
ace.define("ace/mode/queryLanguage", ["require", "exports", "module", "ace/lib/oop", "ace/mode/text", "ace/mode/queryLanguage_highlight_rules"], function (acequire, exports, _module) {
  "use strict";

  var oop = acequire("../lib/oop");
  var TextMode = acequire("./text").Mode;
  var queryEditorHighlightRules = acequire("./queryLanguage_highlight_rules").queryEditorHighlightRules;
  var Mode = function Mode() {
    this.HighlightRules = queryEditorHighlightRules;
    this.$behaviour = this.$defaultBehaviour;
  };
  oop.inherits(Mode, TextMode);
  (function () {
    this.lineCommentStart = "--";
    this.$id = "ace/mode/queryLanguage";
  }).call(Mode.prototype);
  exports.Mode = Mode;
});

/***/ }),

/***/ "0ppS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_ShortDate_ShortDate)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/moment-timezone/index.js
var moment_timezone = __webpack_require__("f0Wu");
var moment_timezone_default = /*#__PURE__*/__webpack_require__.n(moment_timezone);
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/ShortDate/ShortDate.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ShortDate = ({"base":"o45GS5aYbpq8rjLr55EJ"});
;// CONCATENATED MODULE: ./src/components/ui/ShortDate/ShortDate.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






/**
 * Component to show date in short format with tooltip of the date in full format
 */
var ShortDate_ShortDate = function (_a) {
    var date = _a.date, className = _a.className, userTimezone = _a.userTimezone;
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: moment_timezone_default().tz(date, userTimezone).format('LLL'), position: "bottom center" }, { children: (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(className, ShortDate.base) }, { children: moment_timezone_default().tz(date, userTimezone).fromNow() })) })));
};
/* harmony default export */ const ui_ShortDate_ShortDate = ((0,react.memo)(ShortDate_ShortDate));

;// CONCATENATED MODULE: ./src/components/ui/ShortDate/index.js


/***/ }),

/***/ "/i37":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  WX: () => (/* reexport */ Tag_TagColorSwatch),
  LY: () => (/* reexport */ Tag_TagList),
  Ay: () => (/* reexport */ ui_Tag_Tag)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/components/ui/Tag/TagColorSwatch.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagColorSwatch = ({"base":"l0OcWgMDM7KNfzduCk_P"});
;// CONCATENATED MODULE: ./src/components/ui/Tag/TagColorSwatch.tsx




var TagColorSwatch_TagColorSwatch = function (_a) {
    var color = _a.color;
    return ((0,jsx_runtime.jsx)("span", { className: classnames_default()(TagColorSwatch.base), style: { backgroundColor: colors/* tagColors */.Py[color] } }));
};
/* harmony default export */ const Tag_TagColorSwatch = (TagColorSwatch_TagColorSwatch);

;// CONCATENATED MODULE: ./src/components/ui/Tag/Tag.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Tag = ({"base":"gcSe5lrruOf4H_XrCic4","withImage":"OsLWKUYvZeJB6hD2P0K6","image":"veXH1zQr2ZQbiGJut7vf","clickable":"sPoau_GAK8qqqea4i8Cy","selectable":"WLOpfjuI36F2Nezuouv0","selected":"qHncWlRa6kwaL1IgdqeT","swatch":"uh5qOfMXvOJb7xrfrOnK","icon":"nYwYKtMMAizZ52vRAMJo","remove":"Da7fpTbMj3_vZsF2w8cQ"});
;// CONCATENATED MODULE: ./src/components/ui/Tag/Tag.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var Tag_Tag = function (_a) {
    var _b;
    var id = _a.id, className = _a.className, color = _a.color, label = _a.label, removable = _a.removable, icon = _a.icon, selectable = _a.selectable, selected = _a.selected, image = _a.image, onClick = _a.onClick, onDoubleClick = _a.onDoubleClick, onRemove = _a.onRemove;
    var handleDoubleClick = function (e) {
        if (onDoubleClick) {
            onDoubleClick(id, e);
        }
    };
    var handleRemove = function (e) {
        if (onRemove) {
            onRemove(id, e);
        }
    };
    var handleClick = function (e) {
        if (onClick) {
            onClick(id, e);
        }
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, Tag.base, (_b = {}, _b[Tag.clickable] = onClick, _b[Tag.selectable] = selectable, _b[Tag.selected] = selected, _b[Tag.withImage] = image, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ onClick: handleClick, onDoubleClick: handleDoubleClick }, { children: [image
                        && (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Tag.image) }, { children: image })), color
                        && (0,jsx_runtime.jsx)(Tag_TagColorSwatch, { color: color }), icon
                        && (0,react.cloneElement)(icon, { className: classnames_default()(Tag.icon) }), (0,jsx_runtime.jsx)("span", { children: label })] })), removable
                && ((0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(Tag.remove), type: "close", onClick: handleRemove }))] })));
};
/* harmony default export */ const ui_Tag_Tag = ((0,react.memo)(Tag_Tag));

;// CONCATENATED MODULE: ./src/components/ui/Tag/TagList.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagList = ({"base":"UL3ijPMioXI2memia98u"});
;// CONCATENATED MODULE: ./src/components/ui/Tag/TagList.tsx
var TagList_assign = (undefined && undefined.__assign) || function () {
    TagList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagList_assign.apply(this, arguments);
};




/**
 * Component to show tags in a row
 * Pass `Tag` components as children
 */
var TagList_TagList = function (_a) {
    var className = _a.className, children = _a.children;
    return ((0,jsx_runtime.jsx)("div", TagList_assign({ className: classnames_default()(className, TagList.base) }, { children: children })));
};
/* harmony default export */ const Tag_TagList = ((0,react.memo)(TagList_TagList));

;// CONCATENATED MODULE: ./src/components/ui/Tag/index.js




/***/ }),

/***/ "C4iS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  z: () => (/* reexport */ TextField_NativeTextField),
  A: () => (/* reexport */ TextField/* default */.A)
});

// EXTERNAL MODULE: ./src/components/ui/TextField/TextField.tsx + 1 modules
var TextField = __webpack_require__("mVWl");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__("BkpH");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/components/ui/TextField/NativeTextField.js


var _excluded = ["onChange"];
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }


var NativeTextField = function NativeTextField(_ref) {
  var onChange = _ref.onChange,
    otherProps = (0,objectWithoutProperties/* default */.A)(_ref, _excluded);
  var handleChange = function handleChange(value, e) {
    if (onChange) {
      onChange(e, value);
    }
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread(_objectSpread({}, otherProps), {}, {
    onChange: handleChange
  }));
};
/* harmony default export */ const TextField_NativeTextField = (NativeTextField);
;// CONCATENATED MODULE: ./src/components/ui/TextField/index.js



/***/ }),

/***/ "Jret":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* eslint no-underscore-dangle: 0 */

/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (window.__CONFIG__ || {
  apiPrefix: 'https://app.youscan.io/api'
});

/***/ }),

/***/ "pxZC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("BkpH");
/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("SMvd");
/* harmony import */ var react_helmet__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("qhky");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("Qyqr");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("nKUr");


var _excluded = ["title", "isTopicPage", "topicName"];
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }




var HeadContainer = function HeadContainer(_ref) {
  var title = _ref.title,
    isTopicPage = _ref.isTopicPage,
    topicName = _ref.topicName,
    otherProps = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(_ref, _excluded);
  var fullTitle = isTopicPage && topicName ? "".concat(topicName, " | ").concat(title) : "".concat(title, " | YouScan");
  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(react_helmet__WEBPACK_IMPORTED_MODULE_1__/* .Helmet */ .m, _objectSpread(_objectSpread({
    defer: false,
    defaultTitle: "YouScan"
  }, otherProps), {}, {
    children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("title", {
      children: fullTitle
    })
  }));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_redux__WEBPACK_IMPORTED_MODULE_5__/* .connect */ .Ng)(function (state) {
  return {
    topicName: (0,state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getCurrentThemeName */ .EY)(state)
  };
})(HeadContainer));

/***/ }),

/***/ "xO6Q":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _Head__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _Head__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("pxZC");


/***/ }),

/***/ "8tfi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* binding */ ResetPassword)
});

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./src/state/session/model.ts + 1 modules
var model = __webpack_require__("V7KL");
// EXTERNAL MODULE: ./src/state/session/selectors.ts
var selectors = __webpack_require__("4gVp");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/containers/Head/index.js
var Head = __webpack_require__("xO6Q");
// EXTERNAL MODULE: ./node_modules/redux-form/lib/index.js
var lib = __webpack_require__("MCI9");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
;// CONCATENATED MODULE: ./src/containers/ResetPassword/ResetPasswordForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ResetPassword_ResetPasswordForm = ({"base":"TQHhpy0XJKRDdOjj0TGw"});
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/containers/ResetPassword/ResetPasswordForm.js






var _dec, _class;
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var ResetPasswordForm = (_dec = (0,lib/* reduxForm */.zW)({
  form: 'resetPassword',
  fields: ['email']
}), _dec(_class = /*#__PURE__*/function (_PureComponent) {
  function ResetPasswordForm() {
    (0,classCallCheck/* default */.A)(this, ResetPasswordForm);
    return _callSuper(this, ResetPasswordForm, arguments);
  }
  (0,inherits/* default */.A)(ResetPasswordForm, _PureComponent);
  return (0,createClass/* default */.A)(ResetPasswordForm, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        email = _this$props.fields.email,
        handleSubmit = _this$props.handleSubmit,
        loading = _this$props.loading;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("form", {
        className: classnames_default()(ResetPassword_ResetPasswordForm.base),
        onSubmit: handleSubmit,
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
          required: true,
          fullWidth: true,
          name: "email",
          type: "email",
          size: "large",
          autoComplete: "off",
          placeholder: l('Email')
        }, email)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          fullWidth: true,
          size: "large",
          type: "submit",
          loading: loading,
          label: l('Reset password')
        })]
      });
    }
  }]);
}(react.PureComponent)) || _class);

;// CONCATENATED MODULE: ./src/containers/ResetPassword/ResetPasswordPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ResetPassword_ResetPasswordPage = ({"formContainer":"faAo7C9PIpILEPb0WtdQ"});
;// CONCATENATED MODULE: ./src/containers/ResetPassword/ResetPasswordPage.js






var ResetPasswordPage = function ResetPasswordPage(_ref) {
  var loading = _ref.loading,
    onPasswordReset = _ref.onPasswordReset;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Head/* default */.A, {
      title: l('Reset password')
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(ResetPassword_ResetPasswordPage.formContainer),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(ResetPasswordForm, {
        loading: loading,
        onSubmit: onPasswordReset
      })
    })]
  });
};
/* harmony default export */ const containers_ResetPassword_ResetPasswordPage = (/*#__PURE__*/(0,react.memo)(ResetPasswordPage));
;// CONCATENATED MODULE: ./src/containers/ResetPassword/index.js






function ResetPassword_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ResetPassword_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ResetPassword_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ResetPassword_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var ResetPasswordContainer = /*#__PURE__*/function (_PureComponent) {
  function ResetPasswordContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ResetPasswordContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ResetPassword_callSuper(this, ResetPasswordContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handlePasswordReset", function (_ref) {
      var email = _ref.email;
      _this.props.resetPassword({
        email: email.trim()
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ResetPasswordContainer, _PureComponent);
  return (0,createClass/* default */.A)(ResetPasswordContainer, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      if (this.props.isPasswordReset) {
        this.props.router.push({
          pathname: '/login',
          state: {
            passwordReseted: true
          }
        });
      }
    }
  }, {
    key: "componentWillUnmout",
    value: function componentWillUnmout() {
      this.props.clearResetPasswordData();
    }
  }, {
    key: "render",
    value: function render() {
      var loading = this.props.loading;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(containers_ResetPassword_ResetPasswordPage, {
        loading: loading,
        onPasswordReset: this.handlePasswordReset
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const ResetPassword = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    loading: (0,selectors/* isPasswordResetting */.pP)(state),
    isPasswordReset: (0,selectors/* isPasswordReset */.Te)(state)
  };
}, {
  resetPassword: model/* sessionModel */.S.action.resetPassword,
  clearResetPasswordData: model/* sessionModel */.S.action.clearResetPasswordData
}))(ResetPasswordContainer));

/***/ }),

/***/ "ot1j":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ BillingPage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
// EXTERNAL MODULE: ./src/state/billing/model.ts
var model = __webpack_require__("85AV");
// EXTERNAL MODULE: ./src/state/billing/selectors.ts
var billing_selectors = __webpack_require__("oqJG");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/ListItem/index.ts + 2 modules
var ListItem = __webpack_require__("gyTG");
// EXTERNAL MODULE: ./src/models/Billing.ts
var Billing = __webpack_require__("ejQr");
// EXTERNAL MODULE: ./src/components/ui/InfoBox/index.ts
var InfoBox = __webpack_require__("rpFs");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/PaymentSuccessfulNotification.js






function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



var PaymentSuccessfulNotification = /*#__PURE__*/function (_PureComponent) {
  function PaymentSuccessfulNotification() {
    var _this;
    (0,classCallCheck/* default */.A)(this, PaymentSuccessfulNotification);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = _callSuper(this, PaymentSuccessfulNotification, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      paymentSuccessful: false
    });
    return _this;
  }
  (0,inherits/* default */.A)(PaymentSuccessfulNotification, _PureComponent);
  return (0,createClass/* default */.A)(PaymentSuccessfulNotification, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var invoice = this.props.invoice;
      var prevInvoice = prevProps.invoice;
      var hasInvoices = prevInvoice && invoice;
      if (hasInvoices && prevInvoice.get('status') === 'waitingForPayment' && invoice.get('status') === 'paid') {
        this.setState({
          paymentSuccessful: true
        }); // eslint-disable-line react/no-did-update-set-state
      }
    }
  }, {
    key: "render",
    value: function render() {
      var paymentSuccessful = this.state.paymentSuccessful;
      return paymentSuccessful ? /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
        success: true,
        fullWidth: true,
        text: l('Payment is successful'),
        displayed: true
      }) : null;
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/utils.js
/* eslint-disable */

var cardBillingErrors = function cardBillingErrors() {
  return {
    card: {
      200: l('Submitted request is empty.'),
      202: l("Review is done and payment is declined. You will get your money back."),
      223: l('Expiration date is empty or invalid.'),
      224: l('Card number is empty or invalid.'),
      225: l('CVV is empty or invalid.'),
      231: l('Internal Error.'),
      700: l('Internal Error.'),
      2111: l('Public key is missing or invalid.'),
      1000: l('Internal Error. Please contact our support team to get help.'),
      1001: l('Project isn’t loaded. Please double check the API credentials'),
      1003: l('Request payment method is not active. Please contact our support team to activate'),
      3000: l('Charge not found.'),
      3001: l('Permission denied.'),
      3002: l('Wrong charge amount. Double check the performed amount in charge request'),
      3003: l('Card number is missing or invalid. Check payment details and retry payments'),
      3004: l('Expiration month is invalid.'),
      3005: l('Expiration year is invalid.'),
      3006: l('Expiration date is invalid.'),
      3008: l('Please fill in all required fields.'),
      3009: l('Billing address is invalid. Please correct the billing address and retry the transaction'),
      3010: l('Please contact your credit card company to approve your payment'),
      3011: l('Please contact your credit card company to check your available balance'),
      3012: l('Transaction was declined'),
      3013: l('Transaction was declined due to issues with the card'),
      3014: l('Wrong CVV'),
      3117: l('Wrong Card Number: Since you are using a test API key, please use a test card, e.g. 4242 4242 4242 4242'),
      3101: l('Please verify the credit card number and retry the transaction'),
      3102: l('You submitted an expired credit card number. Please ensure the credit card is valid'),
      3103: l('You have submitted a card which is not supported. Please, use Visa, MasterCard, AmEx or Discover credit card'),
      3104: l('Country of the card is not supported'),
      3111: l('Token was not found'),
      3112: l('One-time token is invalid'),
      3113: l('Test credentials are invalid'),
      3114: l('Token was deleted'),
      3115: l('Charge amount is too small. Default minimum is 0.50 USD. Please contact our support team to adjust'),
      3116: l('Charge amount is too high. Default maximum is 500 USD. Please contact our support team to adjust'),
      3200: l('Please retry the transaction or use another credit card'),
      3201: l('The charge has already been fully refunded'),
      3202: l('You can’t cancel this transaction'),
      3203: l('This charge is not found or already captured'),
      3204: l('You can’t refund this transaction'),
      3205: l('Duplicate charge'),
      3206: l('The authorization for this card has expired'),
      3301: l('Please check first name'),
      3302: l('Please check last name'),
      3303: l('Please check address'),
      3304: l('City is invalid, Please check city'),
      3305: l('State is invalid, Please check State'),
      3306: l('Please check Zip / Postal Code'),
      3401: l('Wrong subscription period'),
      3402: l('Subscription not found'),
      3403: l('Wrong subscription period duration'),
      3404: l('Some subscription trial parameters are missing'),
      3405: l('Subscription trial period is invalid'),
      3406: l('Subscription trial period duration is invalid'),
      3407: l('Subscription trial amount is invalid'),
      3408: l('Number of repeated payments in case of subscription failure is invalid'),
      4004: l('Undefined method'),
      4005: l('Request is empty'),
      4006: l('API key is not provided'),
      4007: l('API key is invalid'),
      4008: l('Decryption failed'),
      5000: l('Customer is not allowed to pay'),
      // YouScan error types. Decided to model it similar to payment wall error codes
      9000: l('Card was declined'),
      9001: l('3D Secure code timeout expired')
    },
    stripe: {}
  };
};
/* harmony default export */ const utils = (function (paymentMethod, code) {
  return cardBillingErrors()[paymentMethod][code];
});
var PAYMENT_METHOD_KEYS = {
  none: 'byNone',
  invoicing: 'byInvoicing',
  card: 'byCard',
  stripe: 'byStripe'
};
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/PaymentError.js



var PaymentError = function PaymentError(_ref) {
  var invoice = _ref.invoice;
  if (invoice == null || invoice.get('status') !== 'declined') {
    return null;
  }
  var paymentMethod = invoice.get('paymentMethod');
  var errorCode = invoice.getIn(['additional', 'errorCode']);
  var errorMessage = invoice.getIn(['additional', 'errorMessage']);
  var message = utils(paymentMethod, errorCode) || errorMessage || l('An unknown error has occurred during last payment, please contact our support team');
  return /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
    error: true,
    fullWidth: true,
    title: l('An error has occurred'),
    text: message,
    displayed: true
  });
};
/* harmony default export */ const SubscriptionInfo_PaymentError = (PaymentError);
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
;// CONCATENATED MODULE: ./src/utils/gateway.js
var RU_1C = 'ruOneC';
var UA_1C = 'uaOneC';
var CY_1C = 'cyOneC';
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/Payer.js






function Payer_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Payer_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Payer_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Payer_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var Payer = /*#__PURE__*/function (_Component) {
  function Payer() {
    (0,classCallCheck/* default */.A)(this, Payer);
    return Payer_callSuper(this, Payer, arguments);
  }
  (0,inherits/* default */.A)(Payer, _Component);
  return (0,createClass/* default */.A)(Payer, [{
    key: "renderPayerDetails",
    value: function renderPayerDetails() {
      var _this$props = this.props,
        payer = _this$props.payer,
        invoicingGateway = _this$props.invoicingGateway;
      return (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, UA_1C, /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('ITN'),
          children: payer.get('itn')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('EDRPOU'),
          children: payer.get('edrpou')
        })]
      })), RU_1C, /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('ITN'),
          children: payer.get('itn')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('IEC'),
          children: payer.get('iec')
        })]
      })), CY_1C, /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
        label: l('Full Contact Information'),
        children: payer.get('fullContactInformation')
      }))[invoicingGateway];
    }
  }, {
    key: "render",
    value: function render() {
      var payer = this.props.payer;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Full name'),
          children: payer.get('fullName')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), this.renderPayerDetails()]
      });
    }
  }]);
}(react.Component);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/BillingInfo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionInfo_BillingInfo = ({"base":"zbASZ4CCXNPe8tmrBSH2","field":"nXHyae5Xm1AqmWaztOMr"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/BillingInfo.js






function BillingInfo_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, BillingInfo_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function BillingInfo_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (BillingInfo_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/* eslint-disable react/no-access-state-in-setstate */











var BillingInfo = /*#__PURE__*/function (_PureComponent) {
  function BillingInfo() {
    var _this;
    (0,classCallCheck/* default */.A)(this, BillingInfo);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = BillingInfo_callSuper(this, BillingInfo, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "getPaymentMethodDesignation", function () {
      return {
        invoicing: {
          iconType: 'receipt',
          label: l('Invoice', 'billing')
        },
        stripe: {
          iconType: 'credit-card',
          label: l('Card (via Stripe)', 'billing')
        },
        none: {
          iconType: '',
          label: l('Manual', 'billing')
        }
      };
    });
    return _this;
  }
  (0,inherits/* default */.A)(BillingInfo, _PureComponent);
  return (0,createClass/* default */.A)(BillingInfo, [{
    key: "amount",
    get: function get() {
      var lastInvoice = this.props.lastInvoice;
      if (!lastInvoice) {
        return 0;
      }
      if (lastInvoice.get('amount')) {
        return "".concat(numeral_default()(lastInvoice.get('amount')).format('0,0[.]00'), " ").concat(lastInvoice.get('currency').toUpperCase());
      }
      var additional = lastInvoice.get('additional');
      if (!additional) {
        return 0;
      }
      var amount = numeral_default()(additional.get('amount')).format('0,0[.]00');
      return "".concat(amount, " ").concat(additional.get('currency') && additional.get('currency').toUpperCase());
    }
  }, {
    key: "billingCycle",
    get: function get() {
      var billingInfo = this.props.billingInfo;
      var cycle = billingInfo.get('cycle');
      var interval = cycle.get('interval');
      var isDefaultPaymentInterval = interval === 1;
      var unit = cycle.get('unit');
      if (!isDefaultPaymentInterval) {
        if (unit === 'month') {
          return sprintf(nl('Every %d month', 'Every %d months', interval), interval);
        }
        if (unit === 'year') {
          return sprintf(nl('Every %d year', 'Every %d years', interval), interval);
        }
        return "".concat(l('Every'), " ").concat(interval, " ").concat((0,commonTranslations/* translate */.Tl)(unit));
      }
      if (unit === 'month') {
        return l('Monthly', 'billingCycle');
      }
      if (unit === 'year') {
        return l('Annually', 'billingCycle');
      }
      return l('Custom', 'billingCycle');
    }
  }, {
    key: "paymentMethod",
    get: function get() {
      return this.props.billingInfo.get('paymentMethod');
    }
  }, {
    key: "renderPayer",
    value: function renderPayer() {
      var billingInfo = this.props.billingInfo;
      if (billingInfo.get('paymentMethod') === Billing/* PaymentMethod */.g5.Invoicing && billingInfo.has('payer')) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Payer, {
            payer: billingInfo.getIn(['payer', 'invoicing']),
            invoicingGateway: billingInfo.getIn(['byInvoicing', 'gateway'])
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        });
      }
      return null;
    }
  }, {
    key: "renderStripe",
    value: function renderStripe() {
      var billingInfo = this.props.billingInfo;
      var card = billingInfo.get('byStripe');
      if (billingInfo.get('paymentMethod') === Billing/* PaymentMethod */.g5.Stripe) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
            label: l('Name'),
            children: card.get('name')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
            label: l('Email'),
            children: card.get('email')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)(ListItem/* default */.A, {
            label: l('Card'),
            children: ["\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 ", card.get('last4')]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        });
      }
      return null;
    }
  }, {
    key: "render",
    value: function render() {
      var billingInfo = this.props.billingInfo;
      var paymentMethodDesignation = this.getPaymentMethodDesignation()[billingInfo.get('paymentMethod')];
      var subscriptionPlan = billingInfo.get('subscriptionPlan');
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(SubscriptionInfo_BillingInfo.base),
        children: [subscriptionPlan ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(ListItem/* default */.A, {
            label: l('Subscription type'),
            children: [(0,commonTranslations/* translate */.Tl)(subscriptionPlan === null || subscriptionPlan === void 0 ? void 0 : subscriptionPlan.get('planType')), " ", subscriptionPlan === null || subscriptionPlan === void 0 ? void 0 : subscriptionPlan.get('topicsLimit')]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        }) : null, /*#__PURE__*/(0,jsx_runtime.jsxs)(ListItem/* default */.A, {
          label: l('Payment method'),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            color: "gray",
            type: paymentMethodDesignation.iconType
          }), paymentMethodDesignation.label]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Billing cycle'),
          children: this.billingCycle
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), this.amount && /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Amount'),
          children: this.amount
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), this.renderPayer(), this.renderStripe()]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/SubscriptionInfo.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionInfo_SubscriptionInfo = ({"badge":"_FN7gs8rm6kUxNN5pbYz","activeBadge":"lxvej9xc5OGDfQSAQhoU","notActiveBadge":"RT4W5mGzuBZh1MaPVe5w","waitingBadge":"_EfwynyhELzt_GkSbmOy","pastDueBadge":"RIj385s8nHahK5rFrPRs","select":"_36rLtAZcJp2ctQYX43Sw","buttons":"YGg2sA5uTF59qAi4zwlQ"});
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("/0+J");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/regenerator/index.js
var regenerator = __webpack_require__("Kq5O");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/utils/alert.ts + 3 modules
var utils_alert = __webpack_require__("X4yY");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/BillingInfoActions.js








function BillingInfoActions_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, BillingInfoActions_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function BillingInfoActions_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (BillingInfoActions_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }














var BillingInfoActions = /*#__PURE__*/function (_PureComponent) {
  function BillingInfoActions() {
    var _this;
    (0,classCallCheck/* default */.A)(this, BillingInfoActions);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = BillingInfoActions_callSuper(this, BillingInfoActions, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      is3dWindowOpened: false
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeCard", /*#__PURE__*/(0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee() {
      var _yield$api$billing$ge, url;
      return regenerator_default().wrap(function _callee$(_context) {
        while (1) switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return apiSingleton/* default */.A.billing.getStripeCheckoutFormUrl();
          case 2:
            _yield$api$billing$ge = _context.sent;
            url = _yield$api$billing$ge.url;
            window.location.href = url;
          case 5:
          case "end":
            return _context.stop();
        }
      }, _callee);
    })));
    return _this;
  }
  (0,inherits/* default */.A)(BillingInfoActions, _PureComponent);
  return (0,createClass/* default */.A)(BillingInfoActions, [{
    key: "UNSAFE_componentWillMount",
    value: function UNSAFE_componentWillMount() {
      this.runPoller();
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      var _this$props = this.props,
        isWaitingForUpdate = _this$props.isWaitingForUpdate,
        billingInfo = _this$props.billingInfo,
        lastInvoice = _this$props.lastInvoice,
        subscription = _this$props.subscription,
        onPaymentMethodWaitComplete = _this$props.onPaymentMethodWaitComplete;
      if (!isWaitingForUpdate) {
        return;
      }
      var paymentMethod = billingInfo.get('paymentMethod');
      if (paymentMethod === Billing/* PaymentMethod */.g5.Invoicing && lastInvoice && lastInvoice.get('status') === 'waitingForPayment') {
        onPaymentMethodWaitComplete();
      }
      if (paymentMethod === Billing/* PaymentMethod */.g5.None && subscription.get('status') === 'active') {
        onPaymentMethodWaitComplete();
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      clearInterval(this.poller);
    }
  }, {
    key: "isLoaded",
    get: function get() {
      var isWaitingForUpdate = this.props.isWaitingForUpdate;
      return !isWaitingForUpdate;
    }
  }, {
    key: "isLastInvoiceUnderReview",
    get: function get() {
      return this.props.lastInvoice && this.props.lastInvoice.get('status') === 'underReview';
    }
  }, {
    key: "isLastInvoiceIsProcessing",
    get: function get() {
      return this.props.lastInvoice && (this.props.lastInvoice.get('status') === 'waitingForPayment' || this.props.lastInvoice.get('status') === 'underReview' || this.props.lastInvoice.get('status') === 'created');
    }
  }, {
    key: "runPoller",
    value: function runPoller() {
      var _this2 = this;
      clearInterval(this.poller);
      this.poller = setInterval(function () {
        return _this2.props.onFetchSubscription({
          justRefresh: true
        });
      }, 5000);
    }
  }, {
    key: "renderCancelationButton",
    value: function renderCancelationButton() {
      if (this.isLastInvoiceUnderReview) {
        return null;
      }
      return this.props.canCancelSubscription && /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        outline: true,
        danger: true,
        label: l('Cancel subscription'),
        onClick: this.props.onCancelSubscription
      });
    }
  }, {
    key: "renderChangeCardButton",
    value: function renderChangeCardButton() {
      if (this.isLastInvoiceIsProcessing) {
        return null;
      }
      if (this.props.billingInfo.get('paymentMethod') === Billing/* PaymentMethod */.g5.Stripe) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          outline: true,
          primary: true,
          label: l('Change Card'),
          onClick: this.handleChangeCard
        });
      }
      return null;
    }
  }, {
    key: "render",
    value: function render() {
      var buttons = [this.renderChangeCardButton(), this.renderCancelationButton()].filter(function (x) {
        return x;
      });
      if (buttons.length === 0) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Loader/* default */.A, {
          loaded: this.isLoaded,
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
            label: l('Actions'),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(ButtonBar/* default */.A, {
              className: classnames_default()(SubscriptionInfo_SubscriptionInfo.buttons),
              children: buttons
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        })
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionInfo/SubscriptionInfo.js






function SubscriptionInfo_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SubscriptionInfo_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SubscriptionInfo_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SubscriptionInfo_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/*
    eslint
        react/jsx-no-bind: 0
*/













var SubscriptionInfo = /*#__PURE__*/function (_Component) {
  function SubscriptionInfo() {
    var _this;
    (0,classCallCheck/* default */.A)(this, SubscriptionInfo);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = SubscriptionInfo_callSuper(this, SubscriptionInfo, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDownloadReceipt", function (downloadLink) {
      window.location.assign(downloadLink);
    });
    return _this;
  }
  (0,inherits/* default */.A)(SubscriptionInfo, _Component);
  return (0,createClass/* default */.A)(SubscriptionInfo, [{
    key: "subscriptionStatusBadge",
    get: function get() {
      var subscription = this.props.subscription;
      switch (subscription.get('status')) {
        case 'active':
          return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(SubscriptionInfo_SubscriptionInfo.activeBadge),
            children: l('Active', 'paymentStatus')
          });
        case 'notActive':
          return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(SubscriptionInfo_SubscriptionInfo.notActiveBadge),
            children: l('Not Active', 'paymentStatus')
          });
        case 'waitingForPayment':
          return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(SubscriptionInfo_SubscriptionInfo.waitingBadge),
            children: l('Waiting for Payment', 'paymentStatus')
          });
        case 'pastDue':
          return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(SubscriptionInfo_SubscriptionInfo.pastDueBadge),
            children: l('Past Due', 'paymentStatus')
          });
        default:
          return 'unknown';
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        subscription = _this$props.subscription,
        canCancelSubscription = _this$props.canCancelSubscription,
        hasActiveSubscription = _this$props.hasActiveSubscription,
        hasPaymentMethod = _this$props.hasPaymentMethod,
        onCancelSubscription = _this$props.onCancelSubscription,
        isWaitingForUpdate = _this$props.isWaitingForUpdate;
      var paidTo = moment_default()(subscription.get('lastPaidDate') || null);
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [hasActiveSubscription && hasPaymentMethod && [/*#__PURE__*/(0,jsx_runtime.jsx)(SubscriptionInfo_PaymentError, {
          invoice: subscription.get('lastInvoice')
        }, 1), /*#__PURE__*/(0,jsx_runtime.jsx)(PaymentSuccessfulNotification, {
          invoice: subscription.get('lastInvoice')
        }, 2)], /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Subscription status'),
          children: this.subscriptionStatusBadge
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), paidTo.isValid() && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
            label: l('Paid to'),
            children: paidTo.format('L')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        }), subscription.get('status') === 'pastDue' && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
            label: l('Past due days'),
            children: subscription.get('pastDueDays')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        }), hasPaymentMethod && subscription.getIn(['billingInfo', 'paymentMethod']) !== Billing/* PaymentMethod */.g5.None && /*#__PURE__*/(0,jsx_runtime.jsx)(BillingInfo, {
          lastInvoice: subscription.get('lastInvoice'),
          billingInfo: subscription.get('billingInfo'),
          onFetchSubscription: this.props.onFetchSubscription
        }), hasPaymentMethod && /*#__PURE__*/(0,jsx_runtime.jsx)(BillingInfoActions, {
          subscription: subscription,
          lastInvoice: subscription.get('lastInvoice'),
          billingInfo: subscription.get('billingInfo'),
          isWaitingForUpdate: isWaitingForUpdate,
          canCancelSubscription: canCancelSubscription,
          onFetchSubscription: this.props.onFetchSubscription,
          onCancelSubscription: onCancelSubscription,
          onPaymentMethodWaitComplete: this.props.onPaymentMethodWaitComplete
        })]
      });
    }
  }]);
}(react.Component);

// EXTERNAL MODULE: ./src/components/ui/Calendar/index.ts + 5 modules
var Calendar = __webpack_require__("9i11");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__("BkpH");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
;// CONCATENATED MODULE: ./src/components/other/SelectCountry/SelectCountry.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SelectCountry = ({"base":"xA2FEywLhXfJo2RUrWmi"});
;// CONCATENATED MODULE: ./src/components/other/SelectCountry/SelectCountry.js


var _excluded = ["isReadOnly", "className", "value", "disabled", "onChange"];
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }





function SelectCountry_SelectCountry(_ref) {
  var isReadOnly = _ref.isReadOnly,
    className = _ref.className,
    value = _ref.value,
    disabled = _ref.disabled,
    onChange = _ref.onChange,
    otherProps = (0,objectWithoutProperties/* default */.A)(_ref, _excluded);
  var countryOptions = (0,getCountryNameTranslation/* getCountryNames */.zb)().map(function (_ref2) {
    var code = _ref2.code,
      name = _ref2.name;
    return {
      label: name,
      value: code
    };
  });
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, _objectSpread({
    isSearchable: true,
    isReadOnly: isReadOnly,
    value: typeof value === 'string' ? countryOptions.find(function (o) {
      return o.value === value;
    }) : value,
    options: countryOptions,
    isDisabled: disabled,
    className: classnames_default()(className, SelectCountry.base),
    placeholder: l('Start typing the country name'),
    onChange: onChange,
    inputProps: {
      autoComplete: 'none'
    }
  }, otherProps));
}
;// CONCATENATED MODULE: ./src/components/other/SelectCountry/index.js

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/ManualForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionActions_ManualForm = ({"textfield":"mczi9VtP0hH_bcviKFQF"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/ManualForm.js






function ManualForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ManualForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ManualForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ManualForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }










var ManualForm = /*#__PURE__*/function (_PureComponent) {
  function ManualForm() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ManualForm);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ManualForm_callSuper(this, ManualForm, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      pickedDate: new Date(),
      pickedCountry: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleCountryChange", function (pickedCountry) {
      _this.setState({
        pickedCountry: pickedCountry
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDateChange", function (pickedDate) {
      _this.setState({
        pickedDate: pickedDate
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSubmit", function () {
      return _this.props.onApprove({
        paidTo: _this.state.pickedDate,
        billingCountry: _this.state.pickedCountry.value || null
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ManualForm, _PureComponent);
  return (0,createClass/* default */.A)(ManualForm, [{
    key: "render",
    value: function render() {
      var fieldsSet = this.state.pickedCountry;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Billing Country'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(SelectCountry_SelectCountry, {
            required: true,
            value: this.state.pickedCountry,
            className: classnames_default()(SubscriptionActions_ManualForm.textfield),
            onChange: this.handleCountryChange
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Paid to'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Calendar/* DayPicker */.h, {
            withoutMaxDate: true,
            date: this.state.pickedDate,
            onChange: this.handleDateChange
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              disabled: !fieldsSet,
              label: l('Save'),
              onClick: this.handleSubmit
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              label: l('Cancel'),
              onClick: this.props.onCancel
            })]
          })
        })]
      });
    }
  }]);
}(react.PureComponent);

// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/utils/currency.js
var utils_currency = __webpack_require__("0gnX");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/InvoicingForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionActions_InvoicingForm = ({"bottomBar":"xhufjE5eY8W2y5fsQQ0k","select":"FWmZwGVZrP9pF9NiN8ae","textfield":"eMluDjLnpcZFggpb6TYE","contactInfo":"Hd9daWTI14uy_OxL6MC3"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/InvoicingForm.js






function InvoicingForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, InvoicingForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function InvoicingForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (InvoicingForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }

















var defaultState = {
  itn: '',
  edrpou: '',
  fullName: '',
  contractUuid: '',
  vat: '',
  country: '',
  address: '',
  createNextOpeningInvoice: false
};
var InvoicingForm = /*#__PURE__*/function (_PureComponent) {
  function InvoicingForm() {
    var _this;
    (0,classCallCheck/* default */.A)(this, InvoicingForm);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = InvoicingForm_callSuper(this, InvoicingForm, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", defaultState);
    (0,defineProperty/* default */.A)(_this, "handleApprove", function () {
      var _this$state = _this.state,
        contractUuid = _this$state.contractUuid,
        createNextOpeningInvoice = _this$state.createNextOpeningInvoice;
      _this.props.onApprove({
        gateway: _this.gateway,
        contractUuid: contractUuid || null,
        payerUuid: _this.payer.get('uuid'),
        createNextOpeningInvoice: createNextOpeningInvoice
      });
    });
    (0,defineProperty/* default */.A)(_this, "handlePayerFind", function (e) {
      e.preventDefault();
      var _this$state2 = _this.state,
        itn = _this$state2.itn,
        edrpou = _this$state2.edrpou,
        fullName = _this$state2.fullName,
        vat = _this$state2.vat,
        address = _this$state2.address;
      _this.props.fetchPayer({
        options: {
          paymentMethod: Billing/* PaymentMethod */.g5.Invoicing,
          gateway: _this.gateway,
          fullName: fullName,
          edrpou: edrpou,
          itn: itn,
          vat: vat,
          countryCode: _this.selectedCountry,
          address: address
        }
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCancel", function () {
      _this.setState(defaultState);
      _this.props.clearPayer();
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeInputValue", function (value, e) {
      var inputName = e.target.name;
      _this.setState((0,defineProperty/* default */.A)({}, inputName, value));
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeSelectValue", function (inputName) {
      return function (value) {
        _this.setState((0,defineProperty/* default */.A)({}, inputName, value));
      };
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeContract", function (_ref) {
      var value = _ref.value;
      _this.setState({
        contractUuid: value
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeCreateNextOpeningInvoice", function () {
      _this.setState(function (prevState) {
        return {
          createNextOpeningInvoice: !prevState.createNextOpeningInvoice
        };
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderPayerSearchForm", function () {
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
        loaded: !_this.props.isPayerLoading,
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("form", {
          onSubmit: _this.handlePayerFind,
          children: [_this.renderPayerItn(), _this.renderPayerSearchGatewayFields(), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
            children: /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                primary: true,
                type: "submit",
                label: l('Search')
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                type: "button",
                label: l('Cancel'),
                onClick: _this.props.onCancel
              })]
            })
          })]
        })
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(InvoicingForm, _PureComponent);
  return (0,createClass/* default */.A)(InvoicingForm, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      if (prevProps.currency !== this.props.currency) {
        this.setState(defaultState);
        this.props.clearPayer();
      }
    }
  }, {
    key: "contractOptions",
    get: function get() {
      var contracts = this.payer.get('contracts');
      return contracts.reduce(function (contractsToShow, contract) {
        return contractsToShow.concat({
          value: contract.get('uuid'),
          label: contract.get('name')
        });
      }, [{
        value: '',
        label: l('Create new contract')
      }]);
    }
  }, {
    key: "gateway",
    get: function get() {
      var currency = this.props.currency;
      if (currency === utils_currency/* CURRENCY */.U.RUB) {
        return RU_1C;
      }
      if (currency === utils_currency/* CURRENCY */.U.UAH) {
        return UA_1C;
      }
      return CY_1C;
    }
  }, {
    key: "payer",
    get: function get() {
      return this.props.payer && this.props.payer.get('invoicing');
    }
  }, {
    key: "selectedCountry",
    get: function get() {
      if (this.gateway === RU_1C) {
        return 'ru';
      }
      if (this.gateway === UA_1C) {
        return 'ua';
      }
      return this.state.country.value;
    }
  }, {
    key: "renderContracts",
    value: function renderContracts() {
      var _this2 = this;
      var contracts = this.payer.get('contracts');
      var noContracts = !contracts || contracts.isEmpty();
      return /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
        label: l('Contract'),
        children: noContracts ? l('Payer doesn\'t have any contracts yet. The contract will be created') : /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, {
          isClearable: false,
          name: "contractUuid",
          className: classnames_default()(SubscriptionActions_InvoicingForm.select),
          value: this.contractOptions.find(function (opt) {
            return opt.value === _this2.state.contractUuid;
          }),
          options: this.contractOptions,
          onChange: this.handleChangeContract
        })
      });
    }
  }, {
    key: "renderPayerGatewayFields",
    value: function renderPayerGatewayFields() {
      return (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, RU_1C, /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
        label: l('IEC'),
        children: this.payer.get('iec')
      })), UA_1C, /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
        label: l('EDRPOU'),
        children: this.payer.get('edrpou')
      })), CY_1C, /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
        label: l('VAT'),
        children: this.payer.get('vat')
      }))[this.gateway];
    }
  }, {
    key: "renderPayerSearchGatewayFields",
    value: function renderPayerSearchGatewayFields() {
      var _this$state3 = this.state,
        edrpou = _this$state3.edrpou,
        fullName = _this$state3.fullName,
        vat = _this$state3.vat,
        country = _this$state3.country,
        address = _this$state3.address;
      return (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, RU_1C, null), UA_1C, /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('EDRPOU'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            name: "edrpou",
            value: edrpou,
            onChange: this.handleChangeInputValue,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield)
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Full name of the organization'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            name: "fullName",
            value: fullName,
            onChange: this.handleChangeInputValue,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield)
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      })), CY_1C, /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('VAT'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            name: "vat",
            value: vat,
            onChange: this.handleChangeInputValue,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield)
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Country'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(SelectCountry_SelectCountry, {
            required: true,
            value: country,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield),
            onChange: this.handleChangeSelectValue('country')
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Address'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            required: true,
            name: "address",
            value: address,
            onChange: this.handleChangeInputValue,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield)
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Full name of the organization'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            required: true,
            name: "fullName",
            value: fullName,
            onChange: this.handleChangeInputValue,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield)
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      }))[this.gateway];
    }
  }, {
    key: "renderPayerItnField",
    value: function renderPayerItnField() {
      var itnField = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('ITN'),
          children: this.payer.get('itn')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
      return (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, RU_1C, itnField), UA_1C, itnField), CY_1C, null)[this.gateway];
    }
  }, {
    key: "renderPayerItn",
    value: function renderPayerItn() {
      var itn = this.state.itn;
      var itnController = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('ITN'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            name: "itn",
            value: itn,
            onChange: this.handleChangeInputValue,
            className: classnames_default()(SubscriptionActions_InvoicingForm.textfield)
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
      return (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, RU_1C, itnController), UA_1C, itnController), CY_1C, null)[this.gateway];
    }
  }, {
    key: "renderPayer",
    value: function renderPayer() {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [this.renderPayerItnField(), this.renderPayerGatewayFields(), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Type'),
          children: (0,commonTranslations/* translate */.Tl)(this.payer.get('type'))
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Full name of the organization'),
          children: this.payer.get('fullName')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Full Contact Information'),
          className: classnames_default()(SubscriptionActions_InvoicingForm.contactInfo),
          children: this.payer.get('fullContactInformation')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), this.renderContracts(), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Create the next invoice with an open date'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Checkbox/* default */.A, {
            checked: this.state.createNextOpeningInvoice,
            onChange: this.handleChangeCreateNextOpeningInvoice
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              label: l('Another'),
              onClick: this.handleCancel
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              label: l('Continue'),
              onClick: this.handleApprove
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              label: l('Cancel'),
              onClick: this.props.onCancel
            })]
          })
        })]
      });
    }
  }, {
    key: "render",
    value: function render() {
      return this.payer ? this.renderPayer() : this.renderPayerSearchForm();
    }
  }]);
}(react.PureComponent);

// EXTERNAL MODULE: ./src/components/helpers/Toolbar/index.ts + 2 modules
var Toolbar = __webpack_require__("rYbp");
// EXTERNAL MODULE: ./src/utils/navigation.ts
var navigation = __webpack_require__("RBXy");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/StripeForm.js








function StripeForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, StripeForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function StripeForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (StripeForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/* eslint-disable import/named */











var StripeForm = /*#__PURE__*/function (_PureComponent) {
  function StripeForm(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, StripeForm);
    _this = StripeForm_callSuper(this, StripeForm, [props]);
    (0,defineProperty/* default */.A)(_this, "handleSubmit", /*#__PURE__*/function () {
      var _ref = (0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee(e) {
        return regenerator_default().wrap(function _callee$(_context) {
          while (1) switch (_context.prev = _context.next) {
            case 0:
              e.preventDefault();
              _context.prev = 1;
              _context.next = 4;
              return _this.linkCard();
            case 4:
              _context.next = 9;
              break;
            case 6:
              _context.prev = 6;
              _context.t0 = _context["catch"](1);
              console.error({
                error: _context.t0
              });
            case 9:
            case "end":
              return _context.stop();
          }
        }, _callee, null, [[1, 6]]);
      }));
      return function (_x) {
        return _ref.apply(this, arguments);
      };
    }());
    (0,defineProperty/* default */.A)(_this, "handleTermsAccepted", function (_, checked) {
      _this.setState({
        isTermsAccepted: checked
      });
    });
    (0,defineProperty/* default */.A)(_this, "linkCard", /*#__PURE__*/(0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee2() {
      var _yield$api$billing$ge, url;
      return regenerator_default().wrap(function _callee2$(_context2) {
        while (1) switch (_context2.prev = _context2.next) {
          case 0:
            _context2.next = 2;
            return apiSingleton/* default */.A.billing.getStripeCheckoutFormUrl();
          case 2:
            _yield$api$billing$ge = _context2.sent;
            url = _yield$api$billing$ge.url;
            window.location.href = url;
          case 5:
          case "end":
            return _context2.stop();
        }
      }, _callee2);
    })));
    _this.state = {
      isTermsAccepted: false
    };
    return _this;
  }
  (0,inherits/* default */.A)(StripeForm, _PureComponent);
  return (0,createClass/* default */.A)(StripeForm, [{
    key: "renderCancelButton",
    value: function renderCancelButton() {
      if (!this.props.canCancelSubscription) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        label: l('Cancel'),
        onClick: this.props.onCancel
      });
    }
  }, {
    key: "renderControls",
    value: function renderControls() {
      var isTermsAccepted = this.state.isTermsAccepted;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Checkbox/* default */.A, {
            title: l('I accept the Terms and Conditions'),
            label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                children: l('I accept the')
              }), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
                href: (0,navigation/* getCardBillingTosLink */._T)(),
                rel: "noopener noreferrer",
                target: "_blank",
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Terms and Conditions')]
              })]
            }),
            checked: isTermsAccepted,
            onChange: this.handleTermsAccepted
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              label: l('Link card'),
              disabled: !isTermsAccepted,
              onClick: this.handleSubmit
            }), this.renderCancelButton()]
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
    }
  }, {
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        children: this.renderControls()
      });
    }
  }]);
}(react.PureComponent);

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
var slicedToArray = __webpack_require__("oYSA");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
;// CONCATENATED MODULE: ./src/utils/sortComparators.js
/* eslint-disable import/prefer-default-export */

var alphanumericalCollator = new Intl.Collator(undefined, {
  numeric: true,
  sensitivity: 'base'
});

/**
 * @param {String} [key=null]
 * @returns {function(a, b): Number}
 */
var alphanumericalComparator = function alphanumericalComparator() {
  var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  return key ? function (a, b) {
    return alphanumericalCollator.compare(a[key], b[key]);
  } : function (a, b) {
    return alphanumericalCollator.compare(a, b);
  };
};
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/SubscriptionActions.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionActions = ({"select":"vdAM2kDh625_Zn8gvLSZ","textfield":"hHAP71jat4cuHFD1iHxB","inline":"ujvpA9pzdgRYQOfU5VbR"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/SelectOffers.js





function SelectOffers_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SelectOffers_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SelectOffers_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SelectOffers_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }









var SelectOffers = /*#__PURE__*/function (_PureComponent) {
  function SelectOffers() {
    (0,classCallCheck/* default */.A)(this, SelectOffers);
    return SelectOffers_callSuper(this, SelectOffers, arguments);
  }
  (0,inherits/* default */.A)(SelectOffers, _PureComponent);
  return (0,createClass/* default */.A)(SelectOffers, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this$props = this.props,
        selectFirstOption = _this$props.selectFirstOption,
        isReadOnly = _this$props.isReadOnly;
      if (selectFirstOption && !isReadOnly) {
        this.props.onChange(this.options[0]);
      } else {
        this.tryToSelectSingleOption();
      }
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      this.tryToSelectSingleOption();
    }
  }, {
    key: "options",
    get: function get() {
      var _this$props2 = this.props,
        offers = _this$props2.offers,
        propertyName = _this$props2.propertyName,
        optionLabel = _this$props2.optionLabel;
      return offers.groupBy(function (x) {
        return x.get(propertyName);
      }).map(function (x, key) {
        return {
          value: key,
          label: optionLabel ? optionLabel(x.toJS()) : (0,commonTranslations/* translate */.Tl)(key === 'none' ? 'manual' : key)
        };
      }).valueSeq().sort(alphanumericalComparator('label')).toJS();
    }
  }, {
    key: "tryToSelectSingleOption",
    value: function tryToSelectSingleOption() {
      var hasSingleOption = this.options.length === 1;
      if (hasSingleOption && this.props.value !== this.options[0].value) {
        this.props.onChange(this.options[0]);
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props3 = this.props,
        value = _this$props3.value,
        onChange = _this$props3.onChange,
        label = _this$props3.label,
        isDisabled = _this$props3.isDisabled,
        isReadOnly = _this$props3.isReadOnly;
      var selected = this.options.find(function (opt) {
        return opt.value === value;
      }) || null;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: label,
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, {
            isSearchable: true,
            isReadOnly: isReadOnly,
            value: selected,
            options: this.options,
            isDisabled: this.options.length === 1 || isDisabled,
            className: classnames_default()(SubscriptionActions.select),
            placeholder: l('Select'),
            onChange: onChange
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/OfferDiscounts.js





function OfferDiscounts_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, OfferDiscounts_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function OfferDiscounts_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (OfferDiscounts_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }







var OfferDiscounts = /*#__PURE__*/function (_PureComponent) {
  function OfferDiscounts() {
    (0,classCallCheck/* default */.A)(this, OfferDiscounts);
    return OfferDiscounts_callSuper(this, OfferDiscounts, arguments);
  }
  (0,inherits/* default */.A)(OfferDiscounts, _PureComponent);
  return (0,createClass/* default */.A)(OfferDiscounts, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        discountAmount = _this$props.discountAmount,
        offer = _this$props.offer,
        onChange = _this$props.onChange,
        isDisabled = _this$props.isDisabled,
        isReadOnly = _this$props.isReadOnly;
      if (!offer.getIn(['discounts', 'amountDiscountAllowed'])) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Discount'),
          children: isReadOnly ? discountAmount : /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
            name: "discount",
            className: classnames_default()(SubscriptionActions.textfield),
            value: discountAmount,
            type: "number",
            disabled: isDisabled,
            onChange: onChange
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/SubscriptionOptions.js







function SubscriptionOptions_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SubscriptionOptions_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SubscriptionOptions_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SubscriptionOptions_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }










var SubscriptionOptions = /*#__PURE__*/function (_PureComponent) {
  function SubscriptionOptions(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, SubscriptionOptions);
    _this = SubscriptionOptions_callSuper(this, SubscriptionOptions, [props]);
    (0,defineProperty/* default */.A)(_this, "handleChangePaymentMethod", function (_ref) {
      var value = _ref.value;
      _this.setState({
        paymentMethod: value,
        subscriptionPlan: null,
        topicCount: null,
        cycleUnit: null,
        cycleInterval: null,
        currency: null,
        discountAmount: 0
      });
      _this.props.clearPayer();
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeSubscriptionPlan", function (_ref2) {
      var value = _ref2.value;
      var planOffers = _this.props.offers.filter(function (offer) {
        return offer.get('paymentMethod') === _this.state.paymentMethod && offer.getIn(['subscriptionPlan', 'planType']) === value;
      });
      var unlimitedTopics = planOffers.every(function (offer) {
        return !offer.getIn(['subscriptionPlan', 'topicsLimit']);
      });
      _this.setState({
        unlimitedTopics: unlimitedTopics,
        subscriptionPlan: value,
        topicCount: null,
        cycleUnit: null,
        cycleInterval: null,
        currency: null,
        discountAmount: 0
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeTopicCount", function (_ref3) {
      var value = _ref3.value;
      _this.setState({
        topicCount: value,
        cycleUnit: null,
        cycleInterval: null,
        currency: null,
        discountAmount: 0
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeCurrency", function (_ref4) {
      var value = _ref4.value;
      _this.setState({
        currency: value,
        cycleUnit: null,
        cycleInterval: null,
        discountAmount: 0
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeCycleUnit", function (_ref5) {
      var value = _ref5.value;
      _this.setState({
        cycleUnit: value,
        cycleInterval: null,
        discountAmount: 0
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeCycleInterval", function (_ref6) {
      var value = _ref6.value;
      _this.setState({
        cycleInterval: value
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeDiscountAmount", function (value) {
      _this.setState({
        discountAmount: parseInt(value, 10) || 0
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSetSubscription", function () {
      var _this$state = _this.state,
        paymentMethod = _this$state.paymentMethod,
        subscriptionPlan = _this$state.subscriptionPlan,
        topicCount = _this$state.topicCount,
        cycleUnit = _this$state.cycleUnit,
        cycleInterval = _this$state.cycleInterval,
        discountAmount = _this$state.discountAmount,
        currency = _this$state.currency;
      _this.props.onSetSubscription({
        paymentMethod: paymentMethod,
        cycle: {
          unit: cycleUnit,
          interval: cycleInterval
        },
        subscriptionPlan: {
          planType: subscriptionPlan,
          topicsLimit: topicCount
        },
        discount: {
          amount: discountAmount
        },
        currency: currency,
        offerPrice: _this.selectedOffer.get('price')
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSubscribe", function (additionalFieldName) {
      return function (additionalInfo) {
        _this.props.onSetPaymentMethod((0,defineProperty/* default */.A)({}, additionalFieldName, additionalInfo));
      };
    });
    (0,defineProperty/* default */.A)(_this, "offerTopicLimitMatches", function (offer, topicCount, unlimitedTopics) {
      var offerLimit = offer.getIn(['subscriptionPlan', 'topicsLimit']);
      return offerLimit === topicCount || !offerLimit && unlimitedTopics;
    });
    (0,defineProperty/* default */.A)(_this, "renderPeriodLabel", function (_ref7) {
      var _ref8 = (0,slicedToArray/* default */.A)(_ref7, 1),
        period = _ref8[0].period;
      switch (period) {
        case 'month':
          return l('Month');
        case 'year':
          return l('Year');
        default:
          return l('Custom');
      }
    });
    (0,defineProperty/* default */.A)(_this, "renderCycleInterval", function (_ref9) {
      var _ref10 = (0,slicedToArray/* default */.A)(_ref9, 1),
        value = _ref10[0].value;
      return value;
    });
    (0,defineProperty/* default */.A)(_this, "renderPriceLabel", function (_ref11) {
      var _ref12 = (0,slicedToArray/* default */.A)(_ref11, 1),
        offer = _ref12[0];
      return offer.currency.toUpperCase();
    });
    _this.state = _this.getInitialState(props.billingInfo);
    return _this;
  }
  (0,inherits/* default */.A)(SubscriptionOptions, _PureComponent);
  return (0,createClass/* default */.A)(SubscriptionOptions, [{
    key: "getInitialState",
    value: function getInitialState(billingInfo) {
      if (!billingInfo) {
        return {
          paymentMethod: null,
          subscriptionPlan: null,
          topicCount: null,
          unlimitedTopics: false,
          cycleUnit: null,
          cycleInterval: null,
          currency: null,
          discountAmount: 0,
          showOptions: false,
          subscriptionOptionsDisabled: false
        };
      }
      return {
        paymentMethod: billingInfo.paymentMethod,
        subscriptionPlan: billingInfo.subscriptionPlan.planType,
        topicCount: billingInfo.subscriptionPlan.topicsLimit,
        cycleUnit: billingInfo.cycle.unit,
        cycleInterval: billingInfo.cycle.interval,
        currency: billingInfo.currency,
        discountAmount: billingInfo.discount && billingInfo.discount.amount || 0,
        showOptions: true,
        subscriptionOptionsDisabled: true
      };
    }
  }, {
    key: "getPrice",
    value: function getPrice(offer) {
      return offer.price * this.state.cycleInterval - this.state.discountAmount;
    }
  }, {
    key: "isNoneBilling",
    get: function get() {
      return this.state.paymentMethod === Billing/* PaymentMethod */.g5.None;
    }
  }, {
    key: "totalPrice",
    get: function get() {
      return this.getPrice(this.selectedOffer.toJS());
    }
  }, {
    key: "selectedOffer",
    get: function get() {
      var _this2 = this;
      return this.props.offers.find(function (offer) {
        return offer.get('paymentMethod') === _this2.state.paymentMethod && offer.getIn(['subscriptionPlan', 'planType']) === _this2.state.subscriptionPlan && _this2.offerTopicLimitMatches(offer, _this2.state.topicCount, _this2.state.unlimitedTopics) && offer.get('period') === _this2.state.cycleUnit && offer.get('currency') === _this2.state.currency;
      });
    }
  }, {
    key: "renderPaymentMethods",
    value: function renderPaymentMethods() {
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SelectOffers, {
        isReadOnly: this.state.subscriptionOptionsDisabled,
        offers: this.props.offers,
        value: this.state.paymentMethod,
        propertyName: "paymentMethod",
        onChange: this.handleChangePaymentMethod,
        label: l('Payment method')
      });
    }
  }, {
    key: "renderSubscriptionPlans",
    value: function renderSubscriptionPlans() {
      var _this3 = this;
      var plan = this.props.offers.filter(function (offer) {
        return offer.get('paymentMethod') === _this3.state.paymentMethod;
      }).groupBy(function (x) {
        return x.getIn(['subscriptionPlan', 'planType']);
      }).map(function (_, key) {
        return new immutable.Map({
          plan: key
        });
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SelectOffers, {
        selectFirstOption: this.isNoneBilling,
        offers: plan,
        value: this.state.subscriptionPlan,
        propertyName: "plan",
        label: l('Subscription type'),
        isReadOnly: this.state.subscriptionOptionsDisabled,
        onChange: this.handleChangeSubscriptionPlan
      });
    }
  }, {
    key: "renderTopicCount",
    value: function renderTopicCount() {
      var _this4 = this;
      if (this.state.unlimitedTopics) return null;
      var topicCount = this.props.offers.filter(function (offer) {
        return offer.get('paymentMethod') === _this4.state.paymentMethod && offer.getIn(['subscriptionPlan', 'planType']) === _this4.state.subscriptionPlan;
      }).map(function (x) {
        return new immutable.Map({
          topicCount: x.getIn(['subscriptionPlan', 'topicsLimit'])
        });
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SelectOffers, {
        selectFirstOption: this.isNoneBilling,
        offers: topicCount,
        value: this.state.topicCount,
        propertyName: "topicCount",
        label: l('Topic count'),
        isReadOnly: this.state.subscriptionOptionsDisabled,
        onChange: this.handleChangeTopicCount
      });
    }
  }, {
    key: "renderCycle",
    value: function renderCycle() {
      var _this5 = this;
      var cycles = this.props.offers.filter(function (offer) {
        return offer.get('paymentMethod') === _this5.state.paymentMethod && offer.getIn(['subscriptionPlan', 'planType']) === _this5.state.subscriptionPlan && _this5.offerTopicLimitMatches(offer, _this5.state.topicCount, _this5.state.unlimitedTopics) && offer.get('currency') === _this5.state.currency;
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SelectOffers, {
        offers: cycles,
        value: this.state.cycleUnit,
        propertyName: "period",
        onChange: this.handleChangeCycleUnit,
        label: l('Billing cycle type'),
        optionLabel: this.renderPeriodLabel,
        isReadOnly: this.state.subscriptionOptionsDisabled,
        isDisabled: this.isNoneBilling
      });
    }
  }, {
    key: "renderCurrencies",
    value: function renderCurrencies() {
      var _this6 = this;
      var currencies = this.props.offers.filter(function (offer) {
        return offer.get('paymentMethod') === _this6.state.paymentMethod && offer.getIn(['subscriptionPlan', 'planType']) === _this6.state.subscriptionPlan && _this6.offerTopicLimitMatches(offer, _this6.state.topicCount, _this6.state.unlimitedTopics);
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SelectOffers, {
        offers: currencies,
        value: this.state.currency,
        propertyName: "currency",
        onChange: this.handleChangeCurrency,
        label: l('Currency'),
        optionLabel: this.renderPriceLabel,
        isReadOnly: this.state.subscriptionOptionsDisabled || this.isNoneBilling,
        isDisabled: this.isNoneBilling
      });
    }
  }, {
    key: "renderInterval",
    value: function renderInterval() {
      var _this7 = this;
      var intervals = this.props.offers.find(function (offer) {
        return offer.get('paymentMethod') === _this7.state.paymentMethod && offer.getIn(['subscriptionPlan', 'planType']) === _this7.state.subscriptionPlan && _this7.offerTopicLimitMatches(offer, _this7.state.topicCount, _this7.state.unlimitedTopics) && offer.get('period') === _this7.state.cycleUnit && offer.get('currency') === _this7.state.currency;
      }).get('intervals');
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SelectOffers, {
        offers: this.isNoneBilling ? (0,immutable.fromJS)([{
          value: 1
        }]) : intervals.map(function (interval) {
          return new immutable.Map({
            value: interval
          });
        }),
        value: this.state.cycleInterval,
        propertyName: "value",
        onChange: this.handleChangeCycleInterval,
        label: l('Billing cycle interval'),
        optionLabel: this.renderCycleInterval,
        isReadOnly: this.state.subscriptionOptionsDisabled,
        isDisabled: this.isNoneBilling
      });
    }
  }, {
    key: "renderTotalPrice",
    value: function renderTotalPrice() {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), this.state.currency === utils_currency/* CURRENCY */.U.UAH && this.state.paymentMethod === Billing/* PaymentMethod */.g5.Invoicing ? this.renderPriceIncludingVAT(0.2) : this.renderPrice(), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
    }
  }, {
    key: "renderPrice",
    value: function renderPrice() {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: l('Price'),
          children: "".concat(this.getPrice(this.selectedOffer.toJS()), " ").concat(this.selectedOffer.toJS().currency.toUpperCase())
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
    }
  }, {
    key: "renderPriceIncludingVAT",
    value: function renderPriceIncludingVAT(vat) {
      var currency = this.selectedOffer.toJS().currency.toUpperCase();
      var price = this.getPrice(this.selectedOffer.toJS());
      var vatAmount = price * vat;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)(ListItem/* default */.A, {
          label: l('Price'),
          children: [price, " ", currency]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)(ListItem/* default */.A, {
          label: l('VAT', 'subscriptionOptions'),
          children: [vatAmount, " ", currency]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)(ListItem/* default */.A, {
          label: l('Total'),
          children: [price + vatAmount, " ", currency]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
      });
    }
  }, {
    key: "renderDiscount",
    value: function renderDiscount() {
      if (this.props.isSupport) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(OfferDiscounts, {
          offer: this.selectedOffer,
          discountAmount: this.state.discountAmount,
          onChange: this.handleChangeDiscountAmount,
          isReadOnly: this.state.subscriptionOptionsDisabled
        });
      }
      return null;
    }
  }, {
    key: "renderAddSubscriptionButton",
    value: function renderAddSubscriptionButton() {
      var hasActiveSubscription = this.props.hasActiveSubscription;
      if (hasActiveSubscription) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          label: l('Add subscription'),
          onClick: this.handleSetSubscription
        })
      });
    }
  }, {
    key: "render",
    value: function render() {
      return [this.renderPaymentMethods(), this.state.paymentMethod && this.renderSubscriptionPlans(), this.state.subscriptionPlan && this.renderTopicCount(), (this.state.topicCount || this.state.unlimitedTopics) && this.renderCurrencies(), this.state.currency && this.renderCycle(), this.state.cycleUnit && this.renderInterval(), this.state.cycleInterval && this.renderDiscount(), this.state.cycleInterval && this.renderTotalPrice(), this.state.cycleInterval && this.renderAddSubscriptionButton()];
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/SubscriptionActions/SubscriptionActions.js






function SubscriptionActions_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SubscriptionActions_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SubscriptionActions_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SubscriptionActions_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }









var SubscriptionActions_SubscriptionActions = /*#__PURE__*/function (_PureComponent) {
  function SubscriptionActions(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, SubscriptionActions);
    _this = SubscriptionActions_callSuper(this, SubscriptionActions, [props]);
    (0,defineProperty/* default */.A)(_this, "handleSubscribe", function (additionalFieldName) {
      return function (additionalInfo) {
        _this.props.onSetPaymentMethod((0,defineProperty/* default */.A)({}, additionalFieldName, additionalInfo));
      };
    });
    (0,defineProperty/* default */.A)(_this, "showOptions", function () {
      _this.setState({
        showOptions: true
      });
    });
    _this.state = _this.getInitialState(props.billingInfo);
    return _this;
  }
  (0,inherits/* default */.A)(SubscriptionActions, _PureComponent);
  return (0,createClass/* default */.A)(SubscriptionActions, [{
    key: "getInitialState",
    value: function getInitialState(billingInfo) {
      if (!billingInfo) {
        return {
          showOptions: false,
          subscriptionOptionsDisabled: false
        };
      }
      return {
        paymentMethod: billingInfo.paymentMethod,
        currency: billingInfo.currency,
        showOptions: true,
        subscriptionOptionsDisabled: true
      };
    }
  }, {
    key: "renderPaymentMethodForm",
    value: function renderPaymentMethodForm() {
      var _this$state = this.state,
        paymentMethod = _this$state.paymentMethod,
        currency = _this$state.currency;
      if (paymentMethod === Billing/* PaymentMethod */.g5.None) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(ManualForm, {
          onApprove: this.handleSubscribe('byNone'),
          onCancel: this.props.onCancelSubscription
        });
      }
      if (paymentMethod === Billing/* PaymentMethod */.g5.Invoicing) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(InvoicingForm, {
          currency: currency,
          payer: this.props.payer,
          isPayerLoading: this.props.isPayerLoading,
          fetchPayer: this.props.fetchPayer,
          clearPayer: this.props.clearPayer,
          onApprove: this.handleSubscribe('byInvoicing'),
          onCancel: this.props.onCancelSubscription
        });
      }
      if (paymentMethod === Billing/* PaymentMethod */.g5.Stripe) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(StripeForm, {
          billingInfo: this.props.billingInfo,
          canCancelSubscription: this.props.canCancelSubscription,
          onFetchSubscription: this.props.onFetchSubscription,
          onCancel: this.props.onCancelSubscription
        });
      }
      return null;
    }
  }, {
    key: "renderPaymentMethod",
    value: function renderPaymentMethod() {
      if (!this.props.hasActiveSubscription) {
        return null;
      }
      return this.renderPaymentMethodForm();
    }
  }, {
    key: "renderOptions",
    value: function renderOptions() {
      var offers = this.props.offers;
      if (!this.state.showOptions) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(ListItem/* default */.A, {
          label: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: l('Subscribe'),
            onClick: this.showOptions
          })
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SubscriptionOptions, {
          isSupport: this.props.isSupport,
          offers: offers,
          clearPayer: this.props.clearPayer,
          onSetSubscription: this.props.onSetSubscription,
          billingInfo: this.props.billingInfo,
          hasActiveSubscription: this.props.hasActiveSubscription
        }), this.renderPaymentMethod()]
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        offers = _this$props.offers,
        hasPaymentMethod = _this$props.hasPaymentMethod;
      if (hasPaymentMethod) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        children: offers && offers.size === 0 ? l('Please, contact our support if you want to receive invoices automatically!') : this.renderOptions()
      });
    }
  }]);
}(react.PureComponent);

// EXTERNAL MODULE: ./src/components/ui/Table/Table.tsx + 1 modules
var Table = __webpack_require__("AYO0");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/components/Invoices/InvoiceList.js






function InvoiceList_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, InvoiceList_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function InvoiceList_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (InvoiceList_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/*
    eslint
        react/jsx-no-bind: 0
*/








var InvoiceList = /*#__PURE__*/function (_PureComponent) {
  function InvoiceList() {
    var _this;
    (0,classCallCheck/* default */.A)(this, InvoiceList);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = InvoiceList_callSuper(this, InvoiceList, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDownloadReceipt", function (downloadLink) {
      _this.props.onDownloadInvoice();
      if (downloadLink) {
        window.location.assign("".concat(downloadLink, "?q=").concat(new Date().getTime()));
      }
    });
    (0,defineProperty/* default */.A)(_this, "getPaymentMethodDesignation", function () {
      return {
        invoicing: {
          label: l('Invoice', 'billing')
        },
        payPal: {
          label: l('PayPal', 'billing')
        },
        card: {
          label: l('Card', 'billing')
        },
        none: {
          label: l('Manual', 'billing')
        },
        stripe: {
          label: l('Card (via Stripe)', 'billing')
        }
      };
    });
    (0,defineProperty/* default */.A)(_this, "getPeriod", function (from, to) {
      var dateFrom = moment_default()(from || null);
      var dateTo = moment_default()(to || null);
      if (dateFrom.isValid() && dateTo.isValid()) {
        return "".concat(dateFrom.format('L'), " \u2014 ").concat(dateTo.format('L'));
      }
      return null;
    });
    (0,defineProperty/* default */.A)(_this, "getAmount", function (invoice) {
      var _invoice$additional$a, _invoice$additional, _invoice$additional$c, _invoice$additional2;
      var hasTopLevelAmount = invoice.amount && invoice.amount > 0;
      var amount = hasTopLevelAmount ? invoice.amount : (_invoice$additional$a = (_invoice$additional = invoice.additional) === null || _invoice$additional === void 0 ? void 0 : _invoice$additional.amount) !== null && _invoice$additional$a !== void 0 ? _invoice$additional$a : 0;
      var currency = hasTopLevelAmount ? invoice.currency : (_invoice$additional$c = (_invoice$additional2 = invoice.additional) === null || _invoice$additional2 === void 0 ? void 0 : _invoice$additional2.currency) !== null && _invoice$additional$c !== void 0 ? _invoice$additional$c : 'udf';
      return "".concat(numeral_default()(amount).format('0,0[.]00'), " ").concat(currency.toUpperCase());
    });
    (0,defineProperty/* default */.A)(_this, "getReceiptDownloadLink", function (additional, paymentMethod) {
      if (paymentMethod === Billing/* PaymentMethod */.g5.Invoicing) {
        return additional.byInvocing.downloadLink;
      }
      if (paymentMethod === Billing/* PaymentMethod */.g5.Card) {
        return additional.byCard.downloadLink || null;
      }
      if (paymentMethod === Billing/* PaymentMethod */.g5.Stripe) {
        var _additional$byStripe;
        return additional === null || additional === void 0 || (_additional$byStripe = additional.byStripe) === null || _additional$byStripe === void 0 ? void 0 : _additional$byStripe.receiptUrl;
      }
      return null;
    });
    return _this;
  }
  (0,inherits/* default */.A)(InvoiceList, _PureComponent);
  return (0,createClass/* default */.A)(InvoiceList, [{
    key: "renderTable",
    value: function renderTable() {
      var _this2 = this;
      var invoices = this.props.invoices;
      var rowConfig = {
        keyAccessor: function keyAccessor(row) {
          return row.id;
        }
      };
      var columnsConfig = [{
        id: 'paymentMethod',
        accessor: function accessor(row) {
          return row.paymentMethod;
        },
        header: function header() {
          return l('Payment method');
        },
        maxWidth: '10vw',
        minWidth: '100px',
        cell: function cell(_ref) {
          var row = _ref.row;
          var downloadLink = _this2.getReceiptDownloadLink(row.additional, row.paymentMethod);
          var paymentMethod = _this2.getPaymentMethodDesignation()[row.paymentMethod];
          if (!downloadLink) {
            return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              children: paymentMethod.label
            });
          }
          return /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            rel: "noopener noreferrer",
            onClick: function onClick() {
              return _this2.handleDownloadReceipt(downloadLink);
            },
            children: paymentMethod.label
          });
        }
      }, {
        id: 'status',
        accessor: function accessor(row) {
          return row.status;
        },
        header: function header() {
          return l('Status');
        },
        maxWidth: '20vw',
        minWidth: '100px',
        width: 'auto',
        cell: function cell(_ref2) {
          var value = _ref2.value;
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            title: value,
            children: (0,commonTranslations/* translate */.Tl)(value)
          });
        }
      }, {
        id: 'period',
        sortable: true,
        accessor: function accessor(row) {
          return row.from;
        },
        header: function header() {
          return l('Period');
        },
        maxWidth: '20vw',
        minWidth: '170px',
        width: 'auto',
        align: 'center',
        cell: function cell(_ref3) {
          var row = _ref3.row;
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: _this2.getPeriod(row.from, row.to)
          });
        }
      }, {
        id: 'amount',
        accessor: function accessor(row) {
          return row.amount;
        },
        header: function header() {
          return l('Amount');
        },
        maxWidth: '20vw',
        minWidth: '100px',
        align: 'center',
        cell: function cell(_ref4) {
          var row = _ref4.row;
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: _this2.getAmount(row)
          });
        }
      }, {
        id: 'paidAt',
        accessor: function accessor(row) {
          return row.paidAt;
        },
        header: function header() {
          return l('Paid on');
        },
        maxWidth: '20vw',
        minWidth: '100px',
        align: 'center',
        cell: function cell(_ref5) {
          var value = _ref5.value;
          var paidAt = moment_default()(value || null);
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            title: value,
            children: paidAt.isValid() ? paidAt.format('L') : '-'
          });
        }
      }];
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Table/* default */.A, {
        data: invoices.toJS(),
        columnsConfig: columnsConfig,
        rowConfig: rowConfig
      });
    }
  }, {
    key: "render",
    value: function render() {
      var invoices = this.props.invoices;
      if (invoices.isEmpty()) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        children: this.renderTable()
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/BillingPage.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};












var BillingPageContainer = /** @class */ (function (_super) {
    __extends(BillingPageContainer, _super);
    function BillingPageContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleCancelSubscription = function () {
            if (_this.props.cancelBillingSubscription) {
                (0,utils_confirm/* default */.A)({
                    title: l('Are you sure you want to cancel your subscription?'),
                    message: l('When you cancel your subscription, your details will be deleted.'),
                    actionLabel: l('Unsubscribe'),
                }).then(function () { return _this.props.cancelBillingSubscription(); });
            }
        };
        _this.hasPaymentMethod = function (billingInfo) {
            var methodPropertyMap = {
                invoicing: 'byInvoicing',
                card: 'byCard',
                none: 'byNone',
                stripe: 'byStripe',
            };
            return billingInfo.has(methodPropertyMap[billingInfo.get('paymentMethod')]);
        };
        return _this;
    }
    BillingPageContainer.prototype.componentDidMount = function () {
        this.props.fetchBillingSubscription();
        this.props.fetchBillingOffers();
    };
    BillingPageContainer.prototype.render = function () {
        var _this = this;
        var _a = this.props, loaded = _a.loaded, subscription = _a.subscription, offers = _a.offers, payer = _a.payer, payerLoading = _a.payerLoading, declined = _a.declined, declinedDetails = _a.declinedDetails, isSupport = _a.isSupport, waitingForUpdate = _a.waitingForUpdate;
        var hasActiveSubscription = subscription && subscription.has('billingInfo');
        var hasPaymentMethod = hasActiveSubscription && this.hasPaymentMethod(subscription.get('billingInfo'));
        var billingInfo = hasActiveSubscription && subscription.get('billingInfo').toJS();
        return ((0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: loaded }, { children: function () { return ((0,jsx_runtime.jsxs)("div", __assign({ style: { paddingLeft: '16px', paddingRight: '16px' } }, { children: [(0,jsx_runtime.jsx)(SubscriptionInfo, { canCancelSubscription: isSupport, subscription: subscription, hasActiveSubscription: hasActiveSubscription, hasPaymentMethod: hasPaymentMethod, isWaitingForUpdate: waitingForUpdate, onFetchSubscription: _this.props.fetchBillingSubscription, onCancelSubscription: _this.handleCancelSubscription, onPaymentMethodWaitComplete: _this.props.setBillingPaymentMethodWaitComplete }), (0,jsx_runtime.jsx)(SubscriptionActions_SubscriptionActions, { billingInfo: billingInfo, canCancelSubscription: isSupport, clearPayer: _this.props.clearPayer, declinedDetails: declinedDetails, fetchPayer: _this.props.fetchPayer, hasActiveSubscription: hasActiveSubscription, hasPaymentMethod: hasPaymentMethod, isDeclined: declined, isPayerLoading: payerLoading, isSupport: isSupport, offers: offers, payer: payer, onFetchSubscription: _this.props.fetchBillingSubscription, onCancelSubscription: _this.handleCancelSubscription, onSetSubscription: _this.props.setBillingSubscription, onSetPaymentMethod: _this.props.setBillingPaymentMethod }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(InvoiceList, { invoices: subscription.get('invoices'), onDownloadInvoice: _this.props.downloadInvoice })] }))); } })));
    };
    return BillingPageContainer;
}(react.PureComponent));
/* harmony default export */ const BillingPage = ((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        loaded: (0,billing_selectors/* isBillingLoaded */.Ji)(state) && (0,billing_selectors/* isBillingOffersLoaded */.up)(state),
        subscription: (0,billing_selectors/* getBillingSubscription */.Zj)(state),
        offers: (0,billing_selectors/* getBillingOffers */.tq)(state),
        payer: (0,billing_selectors/* getPayer */.um)(state),
        isSupport: (0,selectors/* isSupportUser */.x3)(state),
        payerLoading: (0,billing_selectors/* isPayerLoading */.al)(state),
        declined: (0,billing_selectors/* isDeclined */.Pk)(state),
        declinedDetails: (0,billing_selectors/* getDeclinedDetails */.JG)(state),
        waitingForUpdate: (0,billing_selectors/* isWaitingForUpdate */.Op)(state),
    });
}, {
    fetchBillingSubscription: model/* billingModel */.X.action.fetchBillingSubscription,
    fetchBillingOffers: model/* billingModel */.X.action.fetchBillingOffers,
    fetchPayer: model/* billingModel */.X.action.fetchPayer,
    clearPayer: model/* billingModel */.X.action.clearPayer,
    cancelBillingSubscription: model/* billingModel */.X.action.cancelBilling,
    setBillingSubscription: model/* billingModel */.X.action.setSubscription,
    setBillingPaymentMethod: model/* billingModel */.X.action.setPaymentMethod,
    setBillingPaymentMethodWaitComplete: model/* billingModel */.X.action.setBillingPaymentMethodWaitComplete,
    downloadInvoice: model/* billingModel */.X.action.downloadInvoice,
})(BillingPageContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/Billing/index.js


/***/ }),

/***/ "FNcx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("SMvd");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("X9tB");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("nKUr");



var WithUserTimeZone = function WithUserTimeZone(_ref) {
  var userTimeZone = _ref.userTimeZone,
    children = _ref.children;
  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("span", {
    children: children(userTimeZone)
  });
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_redux__WEBPACK_IMPORTED_MODULE_2__/* .connect */ .Ng)(function (state) {
  return {
    userTimeZone: (0,state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserTimeZone */ .fy)(state)
  };
})(WithUserTimeZone));

/***/ }),

/***/ "EPN4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("k6Di");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("79Ja");
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("UHbJ");
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("udpn");
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("5hh5");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("q1tI");
/* harmony import */ var hoc_withRouter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("5aoS");
/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("SMvd");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("+MLa");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("Qyqr");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("0Zyk");
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("sYBo");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("nKUr");






function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function () {
  var onUpdate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (_props, _isFirstTime) {};
  return function (Child) {
    var WrappedComponent = /*#__PURE__*/function (_Component) {
      function WrappedComponent() {
        (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A)(this, WrappedComponent);
        return _callSuper(this, WrappedComponent, arguments);
      }
      (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A)(WrappedComponent, _Component);
      return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .A)(WrappedComponent, [{
        key: "componentDidMount",
        value: function componentDidMount() {
          onUpdate(this.props, true);
        }
      }, {
        key: "componentDidUpdate",
        value: function componentDidUpdate(prevProps) {
          var filter = this.props.filter;
          var prevFilter = prevProps.filter;
          var hasFilterChanged = !models_filters_Filter__WEBPACK_IMPORTED_MODULE_5__/* .Filter */ .dJ.createFromImmutableState(filter).equals(models_filters_Filter__WEBPACK_IMPORTED_MODULE_5__/* .Filter */ .dJ.createFromImmutableState(prevFilter));
          var hasThemeChanged = this.props.themeId !== prevProps.themeId;
          if (hasThemeChanged || hasFilterChanged) {
            onUpdate(this.props, false);
          }
        }
      }, {
        key: "render",
        value: function render() {
          return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(Child, _objectSpread({}, this.props));
        }
      }]);
    }(react__WEBPACK_IMPORTED_MODULE_3__.Component);
    return (0,redux__WEBPACK_IMPORTED_MODULE_12__/* .compose */ .Zz)(hoc_withRouter__WEBPACK_IMPORTED_MODULE_4__/* .withRouter */ .y, (0,react_redux__WEBPACK_IMPORTED_MODULE_13__/* .connect */ .Ng)(mapStateToProps))(WrappedComponent);
  };
});
function mapStateToProps(state) {
  return {
    filter: (0,state_filter_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getThemeFilter */ .Ic)(state),
    themeId: (0,state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)(state)
  };
}

/***/ }),

/***/ "sHfo":
/***/ ((__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) => {

"use strict";

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("/0+J");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/regenerator/index.js
var regenerator = __webpack_require__("Kq5O");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);
// EXTERNAL MODULE: ./node_modules/@babel/polyfill/lib/index.js
var lib = __webpack_require__("55Il");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
var react_namespaceObject = /*#__PURE__*/__webpack_require__.t(react, 2);
// EXTERNAL MODULE: ./node_modules/react-dom/client.js
var client = __webpack_require__("EbEg");
// EXTERNAL MODULE: ./node_modules/history/index.js
var node_modules_history = __webpack_require__("JRJN");
// EXTERNAL MODULE: ./node_modules/react-perf-devtool/index.js
var react_perf_devtool = __webpack_require__("Jek6");
// EXTERNAL MODULE: ./src/state/session/model.ts + 1 modules
var model = __webpack_require__("V7KL");
// EXTERNAL MODULE: ./src/state/session/selectors.ts
var selectors = __webpack_require__("4gVp");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var account_selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./node_modules/@sentry/react/build/esm/errorboundary.js + 2 modules
var errorboundary = __webpack_require__("ALXI");
;// CONCATENATED MODULE: ./src/containers/ErrorBoundary/ErrorBoundary.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ErrorBoundary = ({"base":"l__wIaPV4io1XZV_W2nS","image":"PjsvRZGQN7CJTCXLHlnN"});
;// CONCATENATED MODULE: ./src/containers/ErrorBoundary/ErrorBoundary.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var ErrorBoundary_ErrorBoundary = function (_a) {
    var children = _a.children;
    var fallbackRender = function () {
        return ((0,jsx_runtime.jsx)("div", { role: "alert", className: ErrorBoundary.base }));
    };
    return ((0,jsx_runtime.jsx)(errorboundary/* ErrorBoundary */.tH, __assign({ fallback: fallbackRender, beforeCapture: function (scope) {
            scope.setTag('error.level', 'fatal');
        } }, { children: children })));
};
/* harmony default export */ const containers_ErrorBoundary_ErrorBoundary = (ErrorBoundary_ErrorBoundary);

;// CONCATENATED MODULE: ./src/containers/Root/Root.tsx
var Root_assign = (undefined && undefined.__assign) || function () {
    Root_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Root_assign.apply(this, arguments);
};




var Root = function (_a) {
    var store = _a.store, history = _a.history, routes = _a.routes;
    return ((0,jsx_runtime.jsx)(containers_ErrorBoundary_ErrorBoundary, { children: (0,jsx_runtime.jsx)(react_redux/* Provider */.Kq, Root_assign({ store: store }, { children: (0,jsx_runtime.jsx)(dist/* unstable_HistoryRouter */.rI, Root_assign({ history: history }, { children: routes })) })) }));
};
/* harmony default export */ const Root_Root = (Root);

;// CONCATENATED MODULE: ./src/containers/Root/index.ts


// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-core-npm-proxy.esm.js + 2 modules
var redux_saga_core_npm_proxy_esm = __webpack_require__("mM01");
;// CONCATENATED MODULE: ./src/middleware/failActionLoggerMiddleware.js
/* eslint no-console: 0 */

var failActionLoggerMiddleware = function failActionLoggerMiddleware() {
  return function (next) {
    return function (action) {
      if (action.type.search('FAILURE') !== -1) {
        console.group("FAILURE: ".concat(action.type));
        console.info(action);
        console.error(action.error);
        console.groupEnd("FAILURE: ".concat(action.type));
      }
      if (action.error) {
        console.group("ERROR: ".concat(action.type));
        console.info(action);
        console.error(action.error);
        console.groupEnd("ERROR: ".concat(action.type));
      }
      try {
        return next(action);
      } catch (err) {
        console.group("CAUGHT: ".concat(action.type));
        console.info(action);
        console.error(err);
        console.groupEnd("CAUGHT: ".concat(action.type));
      }
      return next(action);
    };
  };
};
/* harmony default export */ const middleware_failActionLoggerMiddleware = (failActionLoggerMiddleware);
// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
// EXTERNAL MODULE: ./src/state/stateRouter.ts
var stateRouter = __webpack_require__("tu5+");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./node_modules/redux-form/lib/index.js
var redux_form_lib = __webpack_require__("MCI9");
// EXTERNAL MODULE: ./src/state/themes/model.ts
var themes_model = __webpack_require__("JJJ0");
// EXTERNAL MODULE: ./src/utils/Mutable.ts + 1 modules
var Mutable = __webpack_require__("2N3d");
// EXTERNAL MODULE: ./src/state/account/model.ts
var account_model = __webpack_require__("RHZg");
// EXTERNAL MODULE: ./src/state/insightsCopilot/model.ts
var insightsCopilot_model = __webpack_require__("HH70");
// EXTERNAL MODULE: ./src/state/notifications/model.ts
var notifications_model = __webpack_require__("MOpq");
// EXTERNAL MODULE: ./node_modules/redux-immutable/dist/index.js
var redux_immutable_dist = __webpack_require__("0R0V");
// EXTERNAL MODULE: ./src/state/analytics/actions.js
var actions = __webpack_require__("mkji");
;// CONCATENATED MODULE: ./src/state/analytics/reducer.js


function identified() {
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
  var action = arguments.length > 1 ? arguments[1] : undefined;
  switch (action.type) {
    case actions/* types */.gK.SET_IDENTIFIED:
      {
        return true;
      }
    default:
      {
        return state;
      }
  }
}
/* harmony default export */ const reducer = ((0,redux_immutable_dist/* combineReducers */.H)({
  identified: identified
}));
// EXTERNAL MODULE: ./src/state/entities/reducer.js + 2 modules
var entities_reducer = __webpack_require__("0w9K");
// EXTERNAL MODULE: ./src/state/entities-new/reducer.ts
var entities_new_reducer = __webpack_require__("BdiN");
// EXTERNAL MODULE: ./node_modules/redux-modal/es/index.js + 5 modules
var es = __webpack_require__("R9/U");
;// CONCATENATED MODULE: ./src/state/modals/reducer.ts


// EXTERNAL MODULE: ./node_modules/immer/dist/immer.esm.mjs
var immer_esm = __webpack_require__("IHrx");
;// CONCATENATED MODULE: ./src/state/routing/reducer.ts
/* eslint-disable no-param-reassign */
/* eslint-disable default-case */


var routeInitialState = {
    locationBeforeTransitions: null,
    previousLocation: null,
};
var routing = (0,immer_esm/* default */.Ay)(function (draft, action) {
    switch (action.type) {
        case stateRouter/* ROUTER_LOCATION_CHANGE */.Bb: {
            draft.previousLocation = draft.locationBeforeTransitions;
            draft.locationBeforeTransitions = action.payload;
            break;
        }
    }
}, routeInitialState);
/* harmony default export */ const routing_reducer = (routing);

// EXTERNAL MODULE: ./src/state/authors/model.ts
var authors_model = __webpack_require__("azyO");
// EXTERNAL MODULE: ./src/state/channels/model.ts
var channels_model = __webpack_require__("iSPL");
// EXTERNAL MODULE: ./src/state/currentUser/model.ts
var currentUser_model = __webpack_require__("cGQa");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var filter_model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/gallery/model.ts
var gallery_model = __webpack_require__("OwkF");
// EXTERNAL MODULE: ./src/state/integrations/model.ts
var integrations_model = __webpack_require__("mBdu");
// EXTERNAL MODULE: ./src/state/settings/model.ts
var settings_model = __webpack_require__("C0Rk");
// EXTERNAL MODULE: ./src/state/sources/model.ts
var sources_model = __webpack_require__("kJVi");
// EXTERNAL MODULE: ./src/state/users/model.ts
var users_model = __webpack_require__("lWdd");
// EXTERNAL MODULE: ./src/state/billing/model.ts
var billing_model = __webpack_require__("85AV");
// EXTERNAL MODULE: ./src/state/customDashboards/model.ts
var customDashboards_model = __webpack_require__("D6/I");
// EXTERNAL MODULE: ./src/state/hubEvents/model.ts
var hubEvents_model = __webpack_require__("zgQp");
// EXTERNAL MODULE: ./src/state/metaData/model.ts + 1 modules
var metaData_model = __webpack_require__("Jpep");
// EXTERNAL MODULE: ./src/state/reports/model.ts
var reports_model = __webpack_require__("OD1R");
// EXTERNAL MODULE: ./src/state/search/model.ts
var search_model = __webpack_require__("0uct");
// EXTERNAL MODULE: ./src/state/tasks/model.ts
var tasks_model = __webpack_require__("612L");
// EXTERNAL MODULE: ./src/state/topicsComparison/model.ts
var topicsComparison_model = __webpack_require__("bque");
// EXTERNAL MODULE: ./src/state/entities-new/ui/model.ts + 1 modules
var ui_model = __webpack_require__("eTBD");
// EXTERNAL MODULE: ./src/state/socialSearch/model.ts
var socialSearch_model = __webpack_require__("VSkm");
// EXTERNAL MODULE: ./src/state/dashboard/model.ts
var dashboard_model = __webpack_require__("EHNt");
// EXTERNAL MODULE: ./src/state/conversationalInsights/model.ts
var conversationalInsights_model = __webpack_require__("vuoO");
// EXTERNAL MODULE: ./src/state/imagesDashboard/model.ts
var imagesDashboard_model = __webpack_require__("PLo1");
// EXTERNAL MODULE: ./src/state/rules/model.ts
var rules_model = __webpack_require__("BKff");
// EXTERNAL MODULE: ./src/state/tags/model.ts
var tags_model = __webpack_require__("uIUj");
// EXTERNAL MODULE: ./src/state/stats/model.ts + 2 modules
var stats_model = __webpack_require__("Gku9");
// EXTERNAL MODULE: ./src/state/mentionStream/newCount/model.ts
var newCount_model = __webpack_require__("+qv3");
// EXTERNAL MODULE: ./src/state/mentionStream/selected/model.ts
var selected_model = __webpack_require__("gP3j");
// EXTERNAL MODULE: ./src/state/mentionStream/commands/model.ts + 1 modules
var commands_model = __webpack_require__("iA1B");
// EXTERNAL MODULE: ./src/state/mentionStream/trends/model.ts
var trends_model = __webpack_require__("gw28");
// EXTERNAL MODULE: ./src/state/mentionStream/model.ts
var mentionStream_model = __webpack_require__("cpfI");
;// CONCATENATED MODULE: ./src/state/rootReducer.js
/* eslint no-param-reassign: 0 */












































var appReducer = (0,redux/* combineReducers */.HY)({
  insightsCopilot: function insightsCopilot(s) {
    return s || insightsCopilot_model/* insightsCopilotStateModel */.e.initialState;
  },
  account: function account(s) {
    return s || account_model/* accountModel */.h.initialState;
  },
  billing: function billing(s) {
    return s || (0,immutable.fromJS)(billing_model/* billingModel */.X.initialState);
  },
  analytics: reducer,
  authors: function authors(s) {
    return s || authors_model/* authorsModel */.g.initialState;
  },
  channels: function channels(s) {
    return s || channels_model/* channelsModel */.S.initialState;
  },
  currentUser: function currentUser(s) {
    return s || currentUser_model/* currentUserStateModel */.b.initialState;
  },
  customDashboards: function customDashboards(s) {
    return s || customDashboards_model/* customDashboardsModel */.i.initialState;
  },
  dashboard: function dashboard(s) {
    return s || dashboard_model/* dashboardModel */._.initialState;
  },
  conversationalInsights: function conversationalInsights(s) {
    return s || conversationalInsights_model/* conversationalInsightsModel */.h.initialState;
  },
  imagesDashboard: function imagesDashboard(s) {
    return s || imagesDashboard_model/* imagesDashboardModel */.c.initialState;
  },
  entities: entities_reducer/* default */.Ay,
  entitiesNew: entities_new_reducer/* default */.A,
  filter: function filter(s) {
    return s || Mutable/* Mutable */.rV.from(filter_model/* filterModel */.W.initialState);
  },
  form: redux_form_lib/* reducer */.Ff,
  gallery: function gallery(s) {
    return s || gallery_model/* galleryModel */.k.initial;
  },
  hubEvents: function hubEvents(s) {
    return s || hubEvents_model/* hubEventsModel */.m.initialState;
  },
  integrations: function integrations(s) {
    return s || integrations_model/* integrationsModel */.F.initialState;
  },
  mentionStreamCount: function mentionStreamCount(s) {
    return s || newCount_model/* mentionStreamCountModel */.B.initialState;
  },
  mentionStreamSelected: function mentionStreamSelected(s) {
    return s || selected_model/* mentionStreamSelectedModel */.n.initialState;
  },
  mentionStreamCommands: function mentionStreamCommands(s) {
    return s || commands_model/* mentionStreamCommandsModel */.a.initialState;
  },
  mentionStreamTrends: function mentionStreamTrends(s) {
    return s || trends_model/* mentionStreamTrendsModel */.o.initialState;
  },
  mentionStream: function mentionStream(s) {
    return s || mentionStream_model/* mentionStreamModel */.K.initialState;
  },
  metaData: function metaData(s) {
    return s || metaData_model/* metaDataModel */.v.initialState;
  },
  modal: es/* reducer */.Ff,
  reports: function reports(s) {
    return s || reports_model/* reportsModel */.P.initialState;
  },
  routing: routing_reducer,
  rules: function rules(s) {
    return s || rules_model/* rulesModel */.h.initialState;
  },
  search: function search(s) {
    return s || search_model/* searchModel */.I.initialState;
  },
  session: function session(s) {
    return s || model/* sessionModel */.S.initialState;
  },
  settings: function settings(s) {
    return s || settings_model/* settingsModel */.N.initialState;
  },
  sources: function sources(s) {
    return s || sources_model/* sourcesModel */.o.initialState;
  },
  stats: function stats(s) {
    return s || stats_model/* statsModel */.l.initialState;
  },
  tags: function tags(s) {
    return s || tags_model/* tagsModel */.J.initialState;
  },
  tasks: function tasks(s) {
    return s || tasks_model/* tasksModel */.o.initialState;
  },
  themes: function themes(s) {
    return s || Mutable/* Mutable */.rV.from(themes_model/* themesModel */.i.initialState);
  },
  topicComparison: function topicComparison(s) {
    return s || topicsComparison_model/* topicComparisonModel */.M.initialState;
  },
  uiEntities: function uiEntities(s) {
    return s || ui_model/* uiEntitiesModel */.P.initialState;
  },
  users: function users(s) {
    return s || users_model/* usersModel */.O.initialState;
  },
  socialSearch: function socialSearch(s) {
    return s || socialSearch_model/* socialSearchModel */.J.initialState;
  },
  notifications: function notifications(s) {
    return s || notifications_model/* NotificationsModel */.C.initialState;
  }
});
var rootReducer = function rootReducer(state, action) {
  if (action.type === 'RESET_STATE') {
    // We reset everything except the routing state. We must have access to query params after logout.
    var _state = state,
      prevRouting = _state.routing;
    state = {
      routing: prevRouting
    };
  }
  return appReducer(state, action);
};
// EXTERNAL MODULE: ./src/state/rootSaga.ts + 1 modules
var rootSaga = __webpack_require__("GEn5");
;// CONCATENATED MODULE: ./src/state/index.js
/* eslint-disable no-underscore-dangle */








var sagaMiddleware = (0,redux_saga_core_npm_proxy_esm/* default */.Ay)({
  onError: function onError(err) {
    return console.error(err);
  }
});
var devtools = window.__REDUX_DEVTOOLS_EXTENSION__ || function () {
  return function (noop) {
    return noop;
  };
};
function configureStore() {
  var initialState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  var history = arguments.length > 1 ? arguments[1] : undefined;
  var middlewares = [sagaMiddleware, (0,stateRouter/* routerMiddleware */.wf)(history), middleware_failActionLoggerMiddleware];
  var enhancers = [redux/* applyMiddleware */.Tw.apply(void 0, middlewares), devtools()];
  var store = (0,redux/* createStore */.y$)((0,pixieDust/* useDirectUpdate */.wv)(rootReducer), initialState, redux/* compose */.Zz.apply(void 0, enhancers));
  (0,stateRouter/* initRouterInStore */.As)(store, history);
  sagaMiddleware.run((0,rootSaga/* default */.A)(store));
  return store;
}
// EXTERNAL MODULE: ./node_modules/react-router/dist/index.js
var react_router_dist = __webpack_require__("V4z/");
// EXTERNAL MODULE: ./src/utils/routeState.ts
var routeState = __webpack_require__("vdWx");
// EXTERNAL MODULE: ./src/utils/routing.ts
var utils_routing = __webpack_require__("aALz");
;// CONCATENATED MODULE: ./src/hoc/requireAuthentication.tsx
var requireAuthentication_assign = (undefined && undefined.__assign) || function () {
    requireAuthentication_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return requireAuthentication_assign.apply(this, arguments);
};










var requireAuthentication = function (Child) {
    var AuthenticatedComponent = function (props) {
        var location = (0,react_router_dist/* useLocation */.zy)();
        var navigate = (0,react_router_dist/* useNavigate */.Zp)();
        var checkAuth = function () {
            if (!apiSingleton/* default */.A.apiClient.tokenExpirationHandler) {
                apiSingleton/* default */.A.apiClient.setTokenExpirationHandler(props.logOut);
            }
            if (!props.isAuthenticated) {
                (0,routeState/* setPersistentRouteState */.A)({
                    pathname: location.pathname,
                    query: (0,utils_routing/* locationToQuery */.T)(location),
                });
                navigate('/login', { replace: true });
            }
        };
        (0,react.useEffect)(function () {
            checkAuth();
        });
        return ((0,jsx_runtime.jsx)("div", { children: props.isAuthenticated
                ? (0,jsx_runtime.jsx)(Child, requireAuthentication_assign({}, props))
                : null }));
    };
    return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({ isAuthenticated: (0,selectors/* isLoggedIn */.M3)(state) }); }, { logOut: model/* sessionModel */.S.action.logOut }))(AuthenticatedComponent);
};
/* harmony default export */ const hoc_requireAuthentication = (requireAuthentication);

// EXTERNAL MODULE: ./src/components/ui/Spinner/index.ts + 2 modules
var Spinner = __webpack_require__("JWWG");
;// CONCATENATED MODULE: ./src/components/other/SuspenseWrapper/SuspenseWrapper.tsx
var SuspenseWrapper_assign = (undefined && undefined.__assign) || function () {
    SuspenseWrapper_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SuspenseWrapper_assign.apply(this, arguments);
};




var SuspenseWrapper = function () { return ((0,jsx_runtime.jsx)(react.Suspense, SuspenseWrapper_assign({ fallback: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))); };
/* harmony default export */ const SuspenseWrapper_SuspenseWrapper = (SuspenseWrapper);

;// CONCATENATED MODULE: ./src/components/other/SuspenseWrapper/index.ts


;// CONCATENATED MODULE: ./src/assets/variables/index.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const variables = ({});
;// CONCATENATED MODULE: ./src/assets/tooltips.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const tooltips = ({});
;// CONCATENATED MODULE: ./src/assets/utils/normalize.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const normalize = ({});
;// CONCATENATED MODULE: ./src/assets/globalStyles.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const globalStyles = ({});
// EXTERNAL MODULE: ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/@mdi/font/css/materialdesignicons.min.css
var materialdesignicons_min = __webpack_require__("tUnn");
// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js
var injectStylesIntoStyleTag = __webpack_require__("LboF");
var injectStylesIntoStyleTag_default = /*#__PURE__*/__webpack_require__.n(injectStylesIntoStyleTag);
// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/styleDomAPI.js
var styleDomAPI = __webpack_require__("5Hnr");
var styleDomAPI_default = /*#__PURE__*/__webpack_require__.n(styleDomAPI);
// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/insertBySelector.js
var insertBySelector = __webpack_require__("shRe");
var insertBySelector_default = /*#__PURE__*/__webpack_require__.n(insertBySelector);
// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js
var setAttributesWithoutAttributes = __webpack_require__("3c4z");
var setAttributesWithoutAttributes_default = /*#__PURE__*/__webpack_require__.n(setAttributesWithoutAttributes);
// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/insertStyleElement.js
var insertStyleElement = __webpack_require__("3mzb");
var insertStyleElement_default = /*#__PURE__*/__webpack_require__.n(insertStyleElement);
// EXTERNAL MODULE: ./node_modules/style-loader/dist/runtime/styleTagTransform.js
var styleTagTransform = __webpack_require__("Hd6Y");
var styleTagTransform_default = /*#__PURE__*/__webpack_require__.n(styleTagTransform);
// EXTERNAL MODULE: ./node_modules/css-loader/dist/cjs.js!./src/assets/utils/semantic-ui-popover-styles.css
var semantic_ui_popover_styles = __webpack_require__("ZsXJ");
;// CONCATENATED MODULE: ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./src/assets/utils/semantic-ui-popover-styles.css

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (styleTagTransform_default());
options.setAttributes = (setAttributesWithoutAttributes_default());

      options.insert = insertBySelector_default().bind(null, "head");
    
options.domAPI = (styleDomAPI_default());
options.insertStyleElement = (insertStyleElement_default());

var update = injectStylesIntoStyleTag_default()(semantic_ui_popover_styles/* default */.A, options);




       /* harmony default export */ const utils_semantic_ui_popover_styles = (semantic_ui_popover_styles/* default */.A && semantic_ui_popover_styles/* default */.A.locals ? semantic_ui_popover_styles/* default */.A.locals : undefined);

// EXTERNAL MODULE: ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/rc-time-picker/assets/index.css
var assets = __webpack_require__("TRNS");
// EXTERNAL MODULE: ./node_modules/css-loader/dist/cjs.js!./src/assets/utils/time-picker-styles.css
var time_picker_styles = __webpack_require__("/YyN");
;// CONCATENATED MODULE: ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./src/assets/utils/time-picker-styles.css

      
      
      
      
      
      
      
      
      

var time_picker_styles_options = {};

time_picker_styles_options.styleTagTransform = (styleTagTransform_default());
time_picker_styles_options.setAttributes = (setAttributesWithoutAttributes_default());

      time_picker_styles_options.insert = insertBySelector_default().bind(null, "head");
    
time_picker_styles_options.domAPI = (styleDomAPI_default());
time_picker_styles_options.insertStyleElement = (insertStyleElement_default());

var time_picker_styles_update = injectStylesIntoStyleTag_default()(time_picker_styles/* default */.A, time_picker_styles_options);




       /* harmony default export */ const utils_time_picker_styles = (time_picker_styles/* default */.A && time_picker_styles/* default */.A.locals ? time_picker_styles/* default */.A.locals : undefined);

// EXTERNAL MODULE: ./node_modules/css-loader/dist/cjs.js!./src/assets/utils/placeholder-styles.css
var placeholder_styles = __webpack_require__("YocI");
;// CONCATENATED MODULE: ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./src/assets/utils/placeholder-styles.css

      
      
      
      
      
      
      
      
      

var placeholder_styles_options = {};

placeholder_styles_options.styleTagTransform = (styleTagTransform_default());
placeholder_styles_options.setAttributes = (setAttributesWithoutAttributes_default());

      placeholder_styles_options.insert = insertBySelector_default().bind(null, "head");
    
placeholder_styles_options.domAPI = (styleDomAPI_default());
placeholder_styles_options.insertStyleElement = (insertStyleElement_default());

var placeholder_styles_update = injectStylesIntoStyleTag_default()(placeholder_styles/* default */.A, placeholder_styles_options);




       /* harmony default export */ const utils_placeholder_styles = (placeholder_styles/* default */.A && placeholder_styles/* default */.A.locals ? placeholder_styles/* default */.A.locals : undefined);

;// CONCATENATED MODULE: ./src/utils/globalAssets.js
/* eslint-disable import/no-webpack-loader-syntax */

// NOTE: Moved these styles here from components to import them only once, not each time we use a related component





// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./src/hoc/connectModal.ts
var connectModal = __webpack_require__("YvHy");
// EXTERNAL MODULE: ./node_modules/react-modal/lib/index.js
var react_modal_lib = __webpack_require__("9rZX");
var react_modal_lib_default = /*#__PURE__*/__webpack_require__.n(react_modal_lib);
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
;// CONCATENATED MODULE: ./src/components/ui/HelpWindow/HelpWindow.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const HelpWindow = ({"overlayedBlock":"wT0o7rdKtOPkU_rpPnjv","flexCenter":"vh94t8SXghtbDYksU2FM","smartFeature":"Kv6kxcxVZKRgN6t773Tm","tag":"mKsQnWBZw0oFbp2zNdqp","visibleScrollBar":"eLAGaGMGOygeDKN5LEJH","hiddenScrollBar":"_mSAU1VKAHDwSm2g0jET","base":"id1wf4Soqp4sVePQ1v3g","fitted":"i5xOWPKX54GSW1Z4NC3w","overlay":"yWa8ElFyp9Wg1Rqj0lFy","scroll":"NhJsEZLqM6KPGaxiD2sg","fullWidth":"fCo7cPP1zZvsmCS8mYzC","title":"LzbJE7RfPDIbiaiJWoMj","closeButton":"M2UPtUvkuQwoTTv4mocw"});
;// CONCATENATED MODULE: ./src/components/ui/HelpWindow/HelpWindow.tsx
var HelpWindow_assign = (undefined && undefined.__assign) || function () {
    HelpWindow_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HelpWindow_assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};







/**
 * Help window component
 */
var HelpWindow_HelpWindow = function (_a) {
    var _b, _c;
    var className = _a.className, title = _a.title, children = _a.children, maxWidth = _a.maxWidth, scroll = _a.scroll, fitted = _a.fitted, fullWidth = _a.fullWidth, onRequestClose = _a.onRequestClose, otherProps = __rest(_a, ["className", "title", "children", "maxWidth", "scroll", "fitted", "fullWidth", "onRequestClose"]);
    var classes = classnames_default()(className, HelpWindow.base, (_b = {}, _b[HelpWindow.fullWidth] = fullWidth, _b[HelpWindow.fitted] = fitted, _b));
    return ((0,jsx_runtime.jsxs)((react_modal_lib_default()), HelpWindow_assign({ shouldCloseOnEsc: true, shouldCloseOnOverlayClick: true, className: classes, overlayClassName: classnames_default()(HelpWindow.overlay, (_c = {}, _c[HelpWindow.scroll] = scroll, _c)), onRequestClose: onRequestClose, style: {
            content: {
                maxWidth: maxWidth,
            },
        }, contentLabel: "Modal" }, otherProps, { children: [title
                && (0,jsx_runtime.jsxs)(H3/* default */.A, HelpWindow_assign({ className: classnames_default()(HelpWindow.title) }, { children: [" ", title, " "] })), (0,jsx_runtime.jsx)("div", HelpWindow_assign({ className: classnames_default()(HelpWindow.content) }, { children: children })), (0,jsx_runtime.jsx)("div", HelpWindow_assign({ className: HelpWindow.closeButton, onClick: onRequestClose }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "close", size: 24 }) }))] })));
};
/* harmony default export */ const ui_HelpWindow_HelpWindow = ((0,react.memo)(HelpWindow_HelpWindow));

;// CONCATENATED MODULE: ./src/components/ui/HelpWindow/index.ts


// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./node_modules/react-tabs/esm/index.js + 9 modules
var esm = __webpack_require__("J35P");
// EXTERNAL MODULE: ./node_modules/react-tabs/style/react-tabs.css
var react_tabs = __webpack_require__("ebeT");
;// CONCATENATED MODULE: ./src/components/ui/Tabs/Tabs.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Tabs = ({"base":"BPEYoixjhzv4h1PfTl1g","fullWidth":"_SKipW6oB1AwtqsnoMFT"});
;// CONCATENATED MODULE: ./src/components/ui/Tabs/Tabs.tsx
var Tabs_assign = (undefined && undefined.__assign) || function () {
    Tabs_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Tabs_assign.apply(this, arguments);
};





var Tabs_Tabs = function (_a) {
    var _b;
    var fullWidth = _a.fullWidth, className = _a.className, selectedIndex = _a.selectedIndex, tabsConfig = _a.tabsConfig, onSelect = _a.onSelect;
    return ((0,jsx_runtime.jsxs)(esm/* Tabs */.tU, Tabs_assign({ className: classnames_default()(Tabs.base, className, (_b = {}, _b[Tabs.fullWidth] = fullWidth, _b)), selectedIndex: selectedIndex, onSelect: onSelect }, { children: [(0,jsx_runtime.jsx)(esm/* TabList */.wb, { children: tabsConfig.map(function (tabTitle) { return ((0,jsx_runtime.jsx)(esm/* Tab */.oz, { children: tabTitle.title }, tabTitle.key)); }) }), tabsConfig.map(function (tabContent) { return ((0,jsx_runtime.jsx)(esm/* TabPanel */.Kp, { children: tabContent.content }, tabContent.key)); })] })));
};
/* harmony default export */ const ui_Tabs_Tabs = (Tabs_Tabs);

;// CONCATENATED MODULE: ./src/components/ui/Tabs/index.tsx


// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
;// CONCATENATED MODULE: ./src/containers/modals/HelpModal/components/ListItem.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ListItem = ({"base":"UTBKv4OY0OM_8PnZKDfH","label":"yJgTJKrg9KxaNSJSEpdI","text":"nbN7w1691UI_eo9eWjl5"});
;// CONCATENATED MODULE: ./src/containers/modals/HelpModal/components/ListItem.js





function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }




var ListItem = /*#__PURE__*/function (_PureComponent) {
  function ListItem() {
    (0,classCallCheck/* default */.A)(this, ListItem);
    return _callSuper(this, ListItem, arguments);
  }
  (0,inherits/* default */.A)(ListItem, _PureComponent);
  return (0,createClass/* default */.A)(ListItem, [{
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_ListItem.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          className: classnames_default()(components_ListItem.label),
          children: this.props.label
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          className: classnames_default()(components_ListItem.text),
          children: this.props.text
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/HelpModal/components/Help.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Help = ({"base":"eoyfaMSQ_hQPlg73kzlR","additionalContent":"T2PO1X4pzqUjURLaGHWX","closeHint":"FO0wNniNMh_AHxpVMupT","title":"T5vudWLo_xG5zhIXxigS","query":"WwajdTXrxmrzpWljPrQF","tabs":"z8O6_Y3vcD2C9e8tNBee"});
;// CONCATENATED MODULE: ./src/containers/modals/HelpModal/components/Help.tsx
var Help_assign = (undefined && undefined.__assign) || function () {
    Help_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Help_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable max-len */







var getHelpers = function () { return ({
    mentionStream: [
        {
            texts: [
                {
                    key: 'd:',
                    text: l('Move to bin'),
                },
                {
                    key: '1:',
                    text: l('Set positive sentiment'),
                },
                {
                    key: '2:',
                    text: l('Set neutral sentiment'),
                },
                {
                    key: '3:',
                    text: l('Set negative sentiment'),
                },
                {
                    key: 't:',
                    text: l('Edit mention tags'),
                },
                {
                    key: 's:',
                    text: l('Add or Remove from starred'),
                },
                {
                    key: '!:',
                    text: l('Add or Remove from spam'),
                },
                {
                    key: 'o:',
                    text: l('Open original mention in new tab'),
                },
                {
                    key: 'Enter:',
                    text: l('Open mention'),
                },
                {
                    key: 'Shift+Enter:',
                    text: l('Confirm tag selection'),
                },
                {
                    key: 'x:',
                    text: l('Select mention'),
                },
                {
                    key: 'Shift+X:',
                    text: l('Select all mentions on the page'),
                },
                {
                    key: 'Alt+Shift+X:',
                    text: l('Select all mentions that match current filter'),
                },
                {
                    key: 'w:',
                    text: l('Mark as processed'),
                },
                {
                    key: '/:',
                    text: l('Search in mentions stream'),
                },
                {
                    key: 'f:',
                    text: l('Open labels editor'),
                },
                {
                    key: 'Shift+Up:',
                    text: l('Select previous smart feature in labels editor'),
                },
                {
                    key: 'Shift+Down:',
                    text: l('Select next smart feature in labels editor'),
                },
                {
                    key: 'Left:',
                    text: l("Select previous aspect's sentiment in labels editor"),
                },
                {
                    key: 'Right:',
                    text: l("Select next aspect's sentiment in labels editor"),
                }
            ],
        }
    ],
    editQuery: [
        {
            blockTitle: l('Basic operators', 'topicCreationHelp'),
            texts: [
                {
                    key: 'OR:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions with any of the keywords.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('hamburger OR cheeseburger OR chickenburger', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of any of these burgers.', 'topicCreationHelp')] })),
                },
                {
                    key: 'AND:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions with several keywords at any distance from each other.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('burger AND discount', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions about special offers on burgers.', 'topicCreationHelp')] })),
                },
                {
                    key: '/n:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions with several keywords at a fixed distance from each other. Substitute N with the desired number.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('vegan /1 burger', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l(
                            // eslint-disable-next-line no-useless-escape
                            'will collect mentions of vegan burgers. The words "vegan" and ‎"burger"‎ will stand one by one in a text.', 'topicCreationHelp')] })),
                },
                {
                    key: l('"quotes":', 'topicCreationHelp'),
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find a word or a phrase in precise order and form.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('burger /7 "two for one"', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of a specific special offer.', 'topicCreationHelp')] })),
                },
                {
                    key: l('(parentheses):', 'topicCreationHelp'),
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to combine words in a group to use operators AND, OR, /N as to a single entry.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('(burger OR hamburger) /7 (discount OR "two for one")', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will find mentions of different special offers on burgers and hamburgers.', 'topicCreationHelp')] })),
                },
                {
                    key: 'AND NOT:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('to exclude mentions with certain phrases or to add stop-words to the particular part of the query. Use the brackets to combine parts of the query. Such query as', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('(burger OR hamburger) AND NOT (mushroom /2 sauce)', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will find mentions about burgers and hamburgers without mushroom sauce', 'topicCreationHelp')] })),
                },
                {
                    key: l('-stopword:', 'topicCreationHelp'),
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to exclude mentions with specific words. These words should be listed at the end of a search query.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('burger OR hamburger -vegan -vegetarian', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions about burgers and hamburgers except for the vegan ones.', 'topicCreationHelp')] })),
                }
            ],
        },
        {
            blockTitle: l('Advanced operators', 'topicCreationHelp'),
            texts: [
                {
                    key: 'country:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use collect mentions from a specific country.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('sneakers AND country:US', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of sneakers from the US.', 'topicCreationHelp')] })),
                },
                {
                    key: 'language:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions in a particular language.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('sneakers AND language:ENG', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of sneakers in English.', 'topicCreationHelp')] })),
                },
                {
                    key: 'source:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions from specific sources (e.g., Facebook, Instagram, TikTok, etc.).', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: [l('sneakers', 'topicCreationHelp'), " AND source:facebook.com"] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of sneakers from Facebook.', 'topicCreationHelp')] })),
                },
                {
                    key: 'sourceType:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect data from specific types of sources (e.g.: social networks, news, blogs, forums etc.).', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: [l('sneakers', 'topicCreationHelp'), " AND sourceType:reviews"] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of sneakers from review websites.', 'topicCreationHelp')] })),
                },
                {
                    key: 'postType:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect specific types of posts (e.g., comments, posts, reposts, extended reposts).', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: [l('sneakers', 'topicCreationHelp'), " AND postType:post"] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect posts (without comments, reposts) that contain the word “sneakers”.', 'topicCreationHelp')] })),
                },
                {
                    key: 'contentType:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions that contain a specific type of content (e.g., images).', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: [l('sneakers', 'topicCreationHelp'), " AND contentType:video"] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that have any video content and the word “sneakers” in the text.', 'topicCreationHelp')] })),
                },
                {
                    key: 'title:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to match mentions by the post title (e.g., to find news articles where brand name mentioned in a news headline).', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: ["title:", l('sneakers', 'topicCreationHelp')] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that have word “sneakers” in the post title.', 'topicCreationHelp')] })),
                }
            ],
        },
        {
            blockTitle: l('Author-based operators', 'topicCreationHelp'),
            texts: [
                {
                    key: 'publicationPlace\n.nickname:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions posted on pages with specific nicknames.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "publicationPlace.nickname:Netflix" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions posted by any authors on the pages with Netflix in their nickname.', 'topicCreationHelp')] })),
                },
                {
                    key: 'publicationPlace\n.name:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions posted on pages with specific names.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "publicationPlace.name:(Liverpool /4 fan)" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions posted by any authors on the pages that contain “Liverpool” and “fan” in their name.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.nickname:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions posted by authors with specific nicknames.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: ["author.nickname:", l('"vancityreynolds"', 'topicCreationHelp')] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of authors with “vancityreynolds” nickname.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.name:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions posted by authors with specific names.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('author.name:(Ryan /1 Reynolds)', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions by all authors with “Ryan” and “Reynolds” in their name, like Ryan Reynolds or Ryan Reynolds Fans.', 'topicCreationHelp')] })),
                },
                {
                    key: '',
                    text: ((0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.title) }, { children: l('Available only with Visual Insights add-on:', 'topicCreationHelp') }))),
                },
                {
                    key: 'author.bio:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to find mentions posted by authors with specific words or combinations of words in their bio.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: l('author.bio:(nutritionist OR dietitian OR health /2 coach)', 'topicCreationHelp') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions of users who have at least on of the following words in their bio: nutritionist, dietitian, health coach.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.age:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions from authors in a specific age range.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "author.age:[18..30]" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions from authors from 18 to 30 y.o.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.gender:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions from authors with a specific gender detected.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "author.gender:female" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions from female authors.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.subscribers:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions from authors with a specific number or range of subscribers.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: 'author.subscribers:>1000' })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions from authors with more than 1000 subscribers.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.interests:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions from authors with specific interests.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "author.interests:football OR basketball" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions from authors interested in football or basketball.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author\n.interestCategories:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions from authors with specific interest categories.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "author.interestCategories:sports" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions from authors interested in sports.', 'topicCreationHelp')] })),
                },
                {
                    key: 'author.occupations:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions from authors with specific occupations.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "author.occupations:designer" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions from designers.', 'topicCreationHelp')] })),
                }
            ],
        },
        {
            blockTitle: l('Visual Insights operators', 'topicCreationHelp'),
            texts: [
                {
                    key: '',
                    text: ((0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.title) }, { children: l('Available only with Visual Insights add-on:', 'topicCreationHelp') }))),
                },
                {
                    key: 'logo:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing a specific logo.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "logo:\"Chanel\"" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions with Chanel logo.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.object:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing images with specific objects.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.object:(car OR smartphone)" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include images with either a car or a smartphone in them.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.activity:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing images depicting specific activities.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.activity:cooking" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include images where the detected activity is cooking.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.person:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing images with specific types of people. The operator supports filtering by categories such as "woman”, "man”, "child”, "football player," and more. For example,', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.person:woman" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include images featuring women.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.scene:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing images of specific scenes or settings.', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.scene:(beach OR vacation)" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include images of either a beach or a vacation scene.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.type:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing images of a specific type. This operator allows filtering by whether the image is a photo or an illustration. For example, ', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.type:PHOTO" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include photos, while', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.type:ILLUSTRATION" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include illustrations.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.subtype:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions containing images with a specific subtype. This operator allows further refinement by identifying specific kinds of images, such as "selfie," "cartoon," "advertising," "portrait," and more. For example,', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.subtype:selfie" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that include selfies.', 'topicCreationHelp')] })),
                },
                {
                    key: 'image.color:',
                    text: ((0,jsx_runtime.jsxs)("span", { children: [l('use to collect mentions with a primary color of your choice. For example,', 'topicCreationHelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.query) }, { children: "image.color:orange" })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will collect mentions that have a significant amount of orange color.', 'topicCreationHelp')] })),
                }
            ],
        }
    ],
}); };
var Help_Help = function (_a) {
    var showVisualInsightsOperators = _a.showVisualInsightsOperators, contentType = _a.contentType, additionalContent = _a.additionalContent;
    var helpers = getHelpers()[contentType] || [];
    var _b = __read((0,react.useState)(0), 2), selectedTab = _b[0], setSelectedTab = _b[1];
    var filteredHelpers = helpers.filter(function (helperBlock) {
        return showVisualInsightsOperators || helperBlock.blockTitle !== l('Visual Insights operators', 'topicCreationHelp');
    });
    var tabsConfig = filteredHelpers.map(function (helperBlock) { return ({
        key: helperBlock.blockTitle,
        title: helperBlock.blockTitle,
        content: helperBlock.texts.map(function (helper) { return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(ListItem, { label: helper.key, text: helper.text }, helper.key)] }, helper.key)); }),
    }); });
    var renderContentForEditQuery = function () { return ((0,jsx_runtime.jsx)(ui_Tabs_Tabs, { className: Help.tabs, tabsConfig: tabsConfig, selectedIndex: selectedTab, onSelect: setSelectedTab })); };
    var renderContentForMentionStream = function () { return (helpers.map(function (helperBlock, index) { return ((0,jsx_runtime.jsx)("div", { children: helperBlock.texts.map(function (helper) { return ((0,jsx_runtime.jsx)(ListItem, { label: helper.key, text: helper.text }, helper.key)); }) }, index)); })); };
    return ((0,jsx_runtime.jsxs)("div", Help_assign({ className: classnames_default()(Help.base) }, { children: [contentType === 'editQuery' ? renderContentForEditQuery() : renderContentForMentionStream(), additionalContent && (0,jsx_runtime.jsx)("div", Help_assign({ className: classnames_default()(Help.additionalContent) }, { children: additionalContent })), (0,jsx_runtime.jsx)("span", Help_assign({ className: classnames_default()(Help.closeHint) }, { children: l('Press "Esc" to close this window') }))] })));
};
/* harmony default export */ const components_Help = (Help_Help);

;// CONCATENATED MODULE: ./src/containers/modals/HelpModal/HelpModal.js





var _dec, _class;
function HelpModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, HelpModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function HelpModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (HelpModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var MODAL_MAX_WIDTH = 650;
var HelpModal = (_dec = (0,connectModal/* default */.A)('help'), _dec(_class = /*#__PURE__*/function (_PureComponent) {
  function HelpModal() {
    (0,classCallCheck/* default */.A)(this, HelpModal);
    return HelpModal_callSuper(this, HelpModal, arguments);
  }
  (0,inherits/* default */.A)(HelpModal, _PureComponent);
  return (0,createClass/* default */.A)(HelpModal, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        show = _this$props.show,
        showVisualInsightsOperators = _this$props.showVisualInsightsOperators,
        handleHide = _this$props.handleHide,
        contentType = _this$props.contentType,
        maxWidth = _this$props.maxWidth,
        scroll = _this$props.scroll,
        additionalContent = _this$props.additionalContent;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(ui_HelpWindow_HelpWindow, {
        fullWidth: true,
        scroll: scroll,
        isOpen: show,
        maxWidth: maxWidth || MODAL_MAX_WIDTH,
        onRequestClose: handleHide,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(components_Help, {
          showVisualInsightsOperators: showVisualInsightsOperators,
          contentType: contentType,
          additionalContent: additionalContent
        })
      });
    }
  }]);
}(react.PureComponent)) || _class);

;// CONCATENATED MODULE: ./src/containers/modals/HelpModal/index.js

// EXTERNAL MODULE: ./src/state/tags/selectors.ts
var tags_selectors = __webpack_require__("x5Gk");
// EXTERNAL MODULE: ./src/components/ui/Modal/index.ts
var Modal = __webpack_require__("V5xf");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/index.ts + 2 modules
var Toolbar = __webpack_require__("rYbp");
// EXTERNAL MODULE: ./src/components/ui/TextArea/index.tsx + 2 modules
var TextArea = __webpack_require__("CiH5");
// EXTERNAL MODULE: ./src/components/ui/ColorPicker/index.ts + 4 modules
var ColorPicker = __webpack_require__("JxIt");
// EXTERNAL MODULE: ./src/utils/colors.ts
var utils_colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/containers/modals/CreateTagModal/CreateTagModal.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var CreateTagModal_assign = (undefined && undefined.__assign) || function () {
    CreateTagModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CreateTagModal_assign.apply(this, arguments);
};















var CreateTagModal = /** @class */ (function (_super) {
    __extends(CreateTagModal, _super);
    function CreateTagModal(props) {
        var _this = _super.call(this, props) || this;
        _this.handleColorChange = function (color) {
            _this.setState({ color: color });
        };
        _this.handleNameChange = function (name) {
            _this.setState({ name: name });
        };
        _this.handleNoteChange = function (note) {
            _this.setState({ note: note });
        };
        _this.handleModalClose = function () {
            if (_this.props.onBeforeClose) {
                _this.props.onBeforeClose();
            }
            _this.props.handleHide();
        };
        _this.handleCreateTag = function (e) {
            var _a = _this.state, name = _a.name, note = _a.note, color = _a.color;
            var tag = { name: name === null || name === void 0 ? void 0 : name.trim(), note: note, color: color };
            e.stopPropagation();
            _this.props.createTag({ tag: tag });
            _this.handleModalClose();
        };
        _this.handleSaveTag = function () {
            var tagId = _this.props.tagId;
            var _a = _this.state, name = _a.name, note = _a.note, color = _a.color;
            var tag = { id: tagId, name: name === null || name === void 0 ? void 0 : name.trim(), note: note, color: color };
            _this.props.changeTag({ tag: tag });
            _this.handleModalClose();
        };
        var _a = _this.props, name = _a.name, note = _a.note, color = _a.color, tag = _a.tag;
        _this.state = {
            name: tag ? tag.name : name,
            note: tag ? tag.note : note,
            color: tag ? tag.color : color,
        };
        return _this;
    }
    Object.defineProperty(CreateTagModal.prototype, "isTagExists", {
        get: function () {
            var _a = this.props, tagNames = _a.tagNames, tag = _a.tag;
            var editingTagName = tag && tag.name;
            var name = this.state.name;
            return name !== editingTagName && tagNames.includes(name);
        },
        enumerable: false,
        configurable: true
    });
    CreateTagModal.prototype.render = function () {
        var _a = this.props, show = _a.show, tag = _a.tag;
        var _b = this.state, name = _b.name, note = _b.note, color = _b.color;
        var tagAlreadyExists = this.isTagExists;
        return ((0,jsx_runtime.jsxs)(Modal/* default */.A, CreateTagModal_assign({ isOpen: show, title: tag ? l('Edit tag') : l('New tag'), onRequestClose: this.handleModalClose }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { autoFocus: true, fullWidth: true, required: true, value: name, errorText: tagAlreadyExists ? l('Tag with this name already exists') : '', label: l('Name'), onChange: this.handleNameChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(TextArea/* default */.A, { fullWidth: true, value: note, label: l('Description'), onChange: this.handleNoteChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ColorPicker/* default */.A, { selected: color, colors: utils_colors/* tagColors */.Py, onSelect: this.handleColorChange }), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: this.handleModalClose }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: tagAlreadyExists || !name, label: tag ? l('Save') : l('Create tag'), onClick: tag ? this.handleSaveTag : this.handleCreateTag })] })] })));
    };
    return CreateTagModal;
}(react.Component));
/* harmony default export */ const CreateTagModal_CreateTagModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('createTag'), (0,react_redux/* connect */.Ng)(function (state, ownProps) { return ({
    tag: ownProps.tagId ? (0,tags_selectors/* getTagById */.nP)(state, ownProps.tagId) : null,
    tagNames: (0,tags_selectors/* getTagNames */.b2)(state),
    onBeforeClose: ownProps.onBeforeClose,
}); }, {
    createTag: tags_model/* tagsModel */.J.action.createTag,
    changeTag: tags_model/* tagsModel */.J.action.changeTag,
}))(CreateTagModal));

;// CONCATENATED MODULE: ./src/containers/modals/CreateTagModal/index.tsx


// EXTERNAL MODULE: ./node_modules/lodash/omit.js
var omit = __webpack_require__("Puqe");
var omit_default = /*#__PURE__*/__webpack_require__.n(omit);
// EXTERNAL MODULE: ./src/state/filter/selectors.ts
var filter_selectors = __webpack_require__("0Zyk");
// EXTERNAL MODULE: ./node_modules/reselect/es/index.js + 1 modules
var reselect_es = __webpack_require__("XFM9");
// EXTERNAL MODULE: ./src/state/entities-new/selectors.ts + 2 modules
var entities_new_selectors = __webpack_require__("+Oxy");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/models/filters/Filter.ts
var Filter = __webpack_require__("+MLa");
;// CONCATENATED MODULE: ./src/state/rules/selectors.ts
var selectors_assign = (undefined && undefined.__assign) || function () {
    selectors_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return selectors_assign.apply(this, arguments);
};




var getRuleIdsByTheme = (0,reselect_es/* createSelector */.Mz)(themes_selectors/* getCurrentThemeId */.Md, function (state) { return state.rules.list.idsByTopic; }, function (themeId, rules) { return (rules === null || rules === void 0 ? void 0 : rules[themeId]) || []; });
var isRulesLoaded = (0,reselect_es/* createSelector */.Mz)(themes_selectors/* getCurrentThemeId */.Md, function (state) { return state.rules.list.idsByTopic; }, function (themeId, rules) { return Boolean(rules === null || rules === void 0 ? void 0 : rules[themeId]); });
var getRules = (0,reselect_es/* createSelector */.Mz)(entities_new_selectors/* getRuleEntities */.ku, getRuleIdsByTheme, function (entities, ids) { return ids.map(function (id) { return entities[id]; }); });
var getRulesCount = (0,reselect_es/* createSelector */.Mz)(getRules, function (rules) { return rules.length; });
var getRulesPreview = (0,reselect_es/* createSelector */.Mz)(getRules, function (rules) { return rules.map(function (rule) { return (selectors_assign(selectors_assign({}, rule), { chipArray: Filter/* Filter */.dJ.fromRule(rule.filter) })); }); });
var isRuleCreating = function (state) { return state.rules.createRule.creating; };
var isRuleCreated = function (state) { return state.rules.createRule.created; };
var getCreateRuleError = function (state) { return state.rules.createRule.error; };

// EXTERNAL MODULE: ./src/state/entities/selectors.js + 2 modules
var entities_selectors = __webpack_require__("Z+iQ");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/components/ui/InfoBox/index.ts
var InfoBox = __webpack_require__("rpFs");
// EXTERNAL MODULE: ./src/components/ui/ExplanationText/index.ts + 2 modules
var ExplanationText = __webpack_require__("u4n0");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
;// CONCATENATED MODULE: ./src/utils/source.ts
var WellKnownSource;
(function (WellKnownSource) {
    WellKnownSource["reddit"] = "reddit.com";
})(WellKnownSource || (WellKnownSource = {}));
var isReddit = function (source) { return source === WellKnownSource.reddit; };
var mapSourceNameToColorKey = function (sourceName) {
    return {
        'youtube.com': 'YOUTUBE',
        'youtu.be': 'YOUTUBE',
        'facebook.com': 'FACEBOOK',
        'twitter.com': 'TWITTER',
        'instagram.com': 'INSTAGRAM',
        'tiktok.com': 'TIKTOK',
        'telegram.me': 'TELEGRAM',
        'reddit.com': 'REDDIT',
        'vk.com': 'VKONTAKTE',
        'pinterest.com': 'PINTEREST',
    }[sourceName] || null;
};

// EXTERNAL MODULE: ./src/containers/filters/FilterChipPanel/index.ts
var FilterChipPanel = __webpack_require__("5z1g");
// EXTERNAL MODULE: ./src/hooks/useFacetsContext.tsx
var useFacetsContext = __webpack_require__("56YP");
// EXTERNAL MODULE: ./node_modules/@mui/material/RadioGroup/RadioGroup.js + 10 modules
var RadioGroup = __webpack_require__("OVx3");
// EXTERNAL MODULE: ./src/components/ui/CountLabel/index.ts + 2 modules
var CountLabel = __webpack_require__("a75w");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
;// CONCATENATED MODULE: ./src/components/ui/RadioButton/RadioButton.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const RadioButton_RadioButton = ({"base":"gTVpGqvva4nPrggLzCuF","disabled":"nJbPyvkafFvf5uI0lnyS","radioButton":"xwXDAQnkYHeJ4gIn4AZH","radioButtonIcon":"eQrKLRmlLsbc9fcrgwdg","radioButtonLabel":"BE0BiqMr5oAgH34ZqBH2"});
;// CONCATENATED MODULE: ./src/components/ui/RadioButton/RadioButton.tsx
var RadioButton_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var RadioButton_assign = (undefined && undefined.__assign) || function () {
    RadioButton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RadioButton_assign.apply(this, arguments);
};






var RadioButton = /** @class */ (function (_super) {
    RadioButton_extends(RadioButton, _super);
    function RadioButton(props) {
        var _this = _super.call(this, props) || this;
        _this.handleFakeIconClick = function () { return _this.radioButton.current.click(); };
        _this.handleChange = function (e) {
            var _a = _this.props, value = _a.value, onChange = _a.onChange;
            if (onChange) {
                onChange(value, e.target.checked, e);
            }
        };
        _this.radioButton = (0,react.createRef)();
        return _this;
    }
    RadioButton.prototype.getIconType = function () {
        var _a = this.props, checked = _a.checked, iconTypeTrue = _a.iconTypeTrue, iconTypeFalse = _a.iconTypeFalse;
        return checked ? iconTypeTrue : iconTypeFalse;
    };
    RadioButton.prototype.render = function () {
        var _a;
        var _b = this.props, className = _b.className, iconClassName = _b.iconClassName, checked = _b.checked, label = _b.label, counter = _b.counter, disabled = _b.disabled, title = _b.title, color = _b.color, name = _b.name;
        return ((0,jsx_runtime.jsxs)("div", RadioButton_assign({ className: classnames_default()(className, RadioButton_RadioButton.base, (_a = {}, _a[RadioButton_RadioButton.disabled] = disabled, _a)), onClick: this.handleFakeIconClick }, { children: [(0,jsx_runtime.jsx)("input", { ref: this.radioButton, className: classnames_default()(RadioButton_RadioButton.radioButton), type: "radio", name: name, checked: checked, disabled: disabled, onChange: this.handleChange }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { type: "button", color: checked ? color : undefined, disabled: disabled, className: classnames_default()(RadioButton_RadioButton.radioButtonIcon, iconClassName), iconType: this.getIconType() }), (0,jsx_runtime.jsx)("span", RadioButton_assign({ title: title || label, className: classnames_default()(RadioButton_RadioButton.radioButtonLabel) }, { children: label })), (0,jsx_runtime.jsx)(CountLabel/* default */.A, { count: counter })] })));
    };
    RadioButton.defaultProps = {
        color: 'primary',
        iconTypeTrue: 'radio-full',
        iconTypeFalse: 'radio-empty',
    };
    return RadioButton;
}(react.Component));
/* harmony default export */ const ui_RadioButton_RadioButton = (RadioButton);

;// CONCATENATED MODULE: ./src/components/ui/RadioButton/index.tsx


// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/NewAction.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_NewAction = ({"base":"lsyWNhx3JK8gFma0_zwp","options":"hIBkFXUcSwwiI4cV34wj","option":"TSn4KtlioZFNmZlWCpJM","optionDisabled":"nilz5SaexMcDsjqLdYx5","optionInfo":"uYt9VPo90famxLujeFYg","optionDescription":"_X325AiEIRwusZ8CLTLg","label":"mNXns9INwi3f1pr7qD_6"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/NewAction.js






function NewAction_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, NewAction_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function NewAction_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (NewAction_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var NewAction = /*#__PURE__*/function (_PureComponent) {
  function NewAction() {
    var _this;
    (0,classCallCheck/* default */.A)(this, NewAction);
    _this = NewAction_callSuper(this, NewAction);
    (0,defineProperty/* default */.A)(_this, "handleSelect", function (option) {
      return function () {
        _this.props.onSelect(option);
        _this.popover.current.hide();
      };
    });
    _this.popover = /*#__PURE__*/(0,react.createRef)();
    return _this;
  }
  (0,inherits/* default */.A)(NewAction, _PureComponent);
  return (0,createClass/* default */.A)(NewAction, [{
    key: "render",
    value: function render() {
      var _this2 = this;
      var options = this.props.options;
      if (!options || options.length === 0) {
        return null;
      }
      var optionData = {
        doNotSave: {
          icon: 'doNotSave',
          name: l('Don\'t save'),
          description: l('Stop saving all future mentions matching this filter to the topic')
        },
        setTags: {
          icon: 'tags',
          name: l('Add tags'),
          description: l('Add tags for all future mentions matching this filter')
        },
        setSentiment: {
          icon: 'positive',
          name: l('Set sentiment'),
          description: l('Set certain sentiment for all future mentions matching this filter')
        },
        markProcessed: {
          icon: 'processed',
          name: l('Mark processed'),
          description: l('Mark processed all mentions that satisfy this filter')
        },
        sendToIntegration: {
          icon: 'settings',
          name: l('Send to integrated service'),
          description: l('Send all future mentions matching this filter to integrated service. ' + 'You can add new services in topic integration settings')
        },
        "delete": {
          icon: 'delete',
          name: l('Move to bin'),
          description: l('Move to bin all future mentions matching this filter')
        }
      };
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
        fitted: true,
        on: "click",
        position: "bottom left",
        ref: this.popover,
        content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(components_NewAction.options),
          children: options.map(function (option, index) {
            return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(components_NewAction.option),
              onClick: _this2.handleSelect(option),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                color: "lightgray",
                size: 16,
                type: optionData[option].icon
              }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                className: classnames_default()(components_NewAction.optionInfo),
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                  className: classnames_default()(components_NewAction.optionName),
                  children: optionData[option].name
                }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                  className: classnames_default()(components_NewAction.optionDescription),
                  children: optionData[option].description
                })]
              })]
            }, index);
          })
        }),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_NewAction.base),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            size: 16,
            type: "plus"
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(components_NewAction.label),
            children: l('Add action')
          })]
        })
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/ActionBlock.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ActionBlock = ({"base":"EoZd77l6fSUcWNKtez70","delete":"WPNQ6s6lKd29qnCEua9i","error":"TvfJP0uTL3HAWfZkCwXD","content":"zaSaFoZdXgGvRHvZqg2W"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/ActionBlock.js






var ActionBlock = function ActionBlock(_ref) {
  var icon = _ref.icon,
    imageUrl = _ref.imageUrl,
    error = _ref.error,
    children = _ref.children,
    onDelete = _ref.onDelete;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: error ? classnames_default()(components_ActionBlock.error) : classnames_default()(components_ActionBlock.base),
    children: [imageUrl ? /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
      alt: "",
      src: imageUrl,
      width: 16,
      height: 16
    }) : /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
      type: icon,
      color: error ? 'red' : 'lightgray',
      size: 16
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(components_ActionBlock.content),
      children: children
    }), onDelete && /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
      mini: true,
      className: classnames_default()(components_ActionBlock["delete"]),
      iconType: "close",
      onClick: onDelete
    })]
  });
};
/* harmony default export */ const CreateRuleModal_components_ActionBlock = (/*#__PURE__*/(0,react.memo)(ActionBlock));
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/DeleteAction.js


var DeleteAction = function DeleteAction(_ref) {
  var onDelete = _ref.onDelete;
  var handleDelete = function handleDelete() {
    onDelete('delete');
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(CreateRuleModal_components_ActionBlock, {
    icon: "delete",
    onDelete: handleDelete,
    children: l('Move to bin')
  });
};
/* harmony default export */ const components_DeleteAction = (DeleteAction);
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/ProcessedAction.js


var ProcessedAction = function ProcessedAction(_ref) {
  var onDelete = _ref.onDelete;
  var handleDelete = function handleDelete() {
    onDelete('markProcessed');
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(CreateRuleModal_components_ActionBlock, {
    icon: "processed",
    onDelete: handleDelete,
    children: l('Mark mentions as processed')
  });
};
/* harmony default export */ const components_ProcessedAction = (ProcessedAction);
// EXTERNAL MODULE: ./src/components/other/SentimentSwitcher/index.ts
var SentimentSwitcher = __webpack_require__("9g4W");
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/CreateRuleIcons.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const CreateRuleIcons = ({"iconButton":"iC8uo206KCdZlcIY4AfA"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/CreateRuleIcons.js




function IconAdd(_ref) {
  var _ref$tooltip = _ref.tooltip,
    tooltip = _ref$tooltip === void 0 ? l('Add') : _ref$tooltip;
  return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
    className: classnames_default()(CreateRuleIcons.iconButton),
    color: "primary",
    tooltip: tooltip,
    iconType: "plus-circle-outline"
  });
}
function IconEdit(_ref2) {
  var _ref2$tooltip = _ref2.tooltip,
    tooltip = _ref2$tooltip === void 0 ? l('Edit') : _ref2$tooltip;
  return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
    className: classnames_default()(CreateRuleIcons.iconButton),
    tooltip: tooltip,
    iconType: "edit"
  });
}
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/SentimentAction.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentAction = ({"positive":"kRA9sdqOUPLpJ_Q65uMs","negative":"tk7ROoYJGjg5bA1C4e6n","neutral":"zkVx16GiioSFyx1bGYjP"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/SentimentAction.js






function SentimentAction_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SentimentAction_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SentimentAction_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SentimentAction_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var SentimentAction_ProcessedAction = /*#__PURE__*/function (_PureComponent) {
  function ProcessedAction() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ProcessedAction);
    _this = SentimentAction_callSuper(this, ProcessedAction);
    (0,defineProperty/* default */.A)(_this, "handleEdit", function (sentiment) {
      _this.props.onEdit('setSentiment', {
        sentiment: sentiment
      });
      _this.popover.current.hide();
    });
    (0,defineProperty/* default */.A)(_this, "handleDelete", function () {
      _this.props.onDelete('setSentiment');
    });
    _this.popover = /*#__PURE__*/(0,react.createRef)();
    return _this;
  }
  (0,inherits/* default */.A)(ProcessedAction, _PureComponent);
  return (0,createClass/* default */.A)(ProcessedAction, [{
    key: "render",
    value: function render() {
      var sentiment = this.props.sentiment;
      var sentimentMapping = {
        positive: l('Positive', 'ruleAction'),
        negative: l('Negative', 'ruleAction'),
        neutral: l('Neutral', 'ruleAction')
      };
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(CreateRuleModal_components_ActionBlock, {
        icon: sentiment,
        onDelete: this.handleDelete,
        children: [l('Set sentiment to ', 'ruleAction'), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          className: classnames_default()(SentimentAction[sentiment]),
          children: sentimentMapping[sentiment]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          content: /*#__PURE__*/(0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, {
            selected: sentiment,
            onChange: this.handleEdit
          }),
          ref: this.popover,
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(IconEdit, {})
        })]
      });
    }
  }]);
}(react.PureComponent);

// EXTERNAL MODULE: ./src/utils/navigation.ts
var navigation = __webpack_require__("RBXy");
;// CONCATENATED MODULE: ./src/utils/integrations.js

var getIntegrationsInfo = function getIntegrationsInfo() {
  return {
    telegram: {
      name: l('Telegram'),
      enabled: true,
      description: l('Send mentions directly to chat in Telegram'),
      selfAdding: true,
      docPath: 'articles/2282573',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    slack: {
      name: l('Slack'),
      enabled: true,
      description: l('Send mentions directly to channels or DMs in Slack'),
      selfAdding: true,
      docPath: 'articles/458191',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    msTeams: {
      name: l('Microsoft Teams'),
      enabled: true,
      description: l('Send mentions directly to Microsoft Teams channels'),
      selfAdding: true,
      docPath: 'articles/6663937'
    },
    whatsApp: {
      name: 'WhatsApp',
      enabled: true,
      description: l('Send mentions directly to chat in WhatsApp'),
      testIntegrationMessage: l("We've sent an example mention to your WhatsApp. It usually takes 1-2 min for a message to arrive." + ' Check it and create integration if everything is fine'),
      docPath: 'articles/8885566',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    zendesk: {
      name: l('Zendesk'),
      enabled: true,
      selfAdding: true,
      description: l('Create tickets directly from YouScan'),
      docPath: 'articles/2510207',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    freshdesk: {
      name: l('Freshdesk'),
      enabled: true,
      description: l('Create tickets directly from YouScan'),
      docPath: 'articles/2364624',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    useDesk: {
      name: l('UseDesk'),
      enabled: true,
      description: l('Create UseDesk tickets directly from YouScan'),
      docPath: 'articles/2258610',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    helpDeskEddy: {
      name: l('HelpDeskEddy'),
      enabled: true,
      description: l('Send mentions to HelpDeskEddy client service system directly from YouScan'),
      settings: {
        url: ''
      },
      docPath: 'articles/2275715',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    angrySpace: {
      name: l('Angry.Space'),
      enabled: true,
      description: l('Workplace for communication with customers in own communities'),
      selfAdding: true,
      docPath: 'articles/4519218',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: false
      }
    },
    hubspot: {
      name: l('Hubspot'),
      enabled: true,
      description: l('Create tickets directly from YouScan'),
      selfAdding: true,
      docPath: 'articles/5234308',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: false
      }
    },
    terrasoft: {
      name: l('Terrasoft'),
      enabled: false,
      description: l('Create tickets directly from YouScan'),
      docPath: 'articles/2255972',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: false
      }
    },
    creatioService: {
      name: l('Creatio'),
      enabled: true,
      description: l('Create support cases directly from YouScan'),
      docPath: 'articles/2184103',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: true
      }
    },
    crmViaEmail: {
      name: l('Crm via e-mail'),
      enabled: true,
      description: l('Send mentions to your CRM via e-mail with specified format'),
      settings: {
        email: ''
      },
      docPath: 'articles/2255972',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: false
      }
    },
    customWebhook: {
      name: '',
      // this is temporary
      enabled: true,
      description: l('Send mentions via HTTP POST request to your specified URL with custom fields'),
      docPath: 'articles/2255972',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: true,
        hasKnowledgeBaseInfo: false
      }
    },
    webhook: {
      name: l('Webhook'),
      enabled: true,
      description: l('Send mentions via HTTP POST request to your specified URL'),
      settings: {
        url: ''
      },
      docPath: 'articles/3371690',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: false,
        hasKnowledgeBaseInfo: false
      }
    },
    api: {
      name: l('API'),
      enabled: true,
      description: l('Create an API key to bring data from YouScan into your tools and solutions'),
      settings: {
        url: ''
      },
      docPath: 'articles/2754452',
      successScreenSettings: {
        hasConfigRuleInfo: true,
        hasShareInfo: false,
        hasKnowledgeBaseInfo: false
      }
    }
  };
};
var getDocsLink = function getDocsLink(integrationType) {
  return (0,navigation/* createHelpLink */.OP)(getIntegrationsInfo()[integrationType].docPath);
};
/* harmony default export */ const utils_integrations = (getIntegrationsInfo);
;// CONCATENATED MODULE: ./src/components/other/IntegrationName/IntegrationName.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const IntegrationName = ({"base":"UZMEVyYF2mcC1w798DNj"});
;// CONCATENATED MODULE: ./src/components/other/IntegrationName/IntegrationName.tsx
var IntegrationName_assign = (undefined && undefined.__assign) || function () {
    IntegrationName_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return IntegrationName_assign.apply(this, arguments);
};





var IntegrationName_IntegrationName = function (_a) {
    var prefix = _a.prefix, type = _a.type, to = _a.to;
    var displayDestination = to && to.length > 40 ? "".concat(to.substring(0, 37), "...") : to;
    var name = utils_integrations()[type] ? utils_integrations()[type].name : type;
    return ((0,jsx_runtime.jsxs)("span", IntegrationName_assign({ className: classnames_default()(IntegrationName.base) }, { children: [prefix, prefix && ' ', name, ' ', (0,jsx_runtime.jsx)("mark", IntegrationName_assign({ title: to }, { children: displayDestination || l('UNKNOWN') }))] })));
};
/* harmony default export */ const other_IntegrationName_IntegrationName = ((0,react.memo)(IntegrationName_IntegrationName));

;// CONCATENATED MODULE: ./src/components/other/IntegrationName/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/Integration.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_Integration = ({"base":"XpkjzD06UITi8i1pk_kg","disabled":"uMHnnyzwBFaPjX3KVtoQ","disabledBadge":"nZvFxdr6pTOBcK0jLLsE","name":"QnlnG3rzvna6Z7m5HP78","image":"Vt7QNOyeTvvf43bZxVB0"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/Integration.js






var Integration = function Integration(_ref) {
  var id = _ref.id,
    name = _ref.name,
    type = _ref.type,
    to = _ref.to,
    disabled = _ref.disabled,
    onSelect = _ref.onSelect;
  var handleSelect = function handleSelect() {
    onSelect(id);
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_Integration.base, (0,defineProperty/* default */.A)({}, components_Integration.disabled, disabled)),
    onClick: handleSelect,
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
      className: classnames_default()(components_Integration.image),
      src: "/static/images/integrations/".concat(type, ".svg"),
      alt: name
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(other_IntegrationName_IntegrationName, {
      prefix: l('Send to ', 'integrationRule'),
      type: type,
      to: to
    }), disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
      className: classnames_default()(components_Integration.disabledBadge),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        type: "alert"
      }), " ", l('Disabled')]
    })]
  });
};
/* harmony default export */ const CreateRuleModal_components_Integration = (Integration);
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/IntegrationAction.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_IntegrationAction = ({"positive":"zgO9IEVX0_LE2V23fVww","negative":"j9kZLRyj9kxenZSos4e3","neutral":"pMOAJWTdrD8LuWnkyJ7A","caption":"QpODh4imXWLzlSY8dS8R","error":"jSShmkAnftm8CEF7aqvj","list":"y5vMZybqe7UMnstPBtXv"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/IntegrationAction.js






function IntegrationAction_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, IntegrationAction_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function IntegrationAction_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (IntegrationAction_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }











var IntegrationAction = /*#__PURE__*/function (_PureComponent) {
  function IntegrationAction() {
    var _this;
    (0,classCallCheck/* default */.A)(this, IntegrationAction);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = IntegrationAction_callSuper(this, IntegrationAction, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleSelect", function (integrationId) {
      _this.props.onEdit('sendToIntegration', {
        integrationId: integrationId
      });
      _this.popover.hide();
    });
    (0,defineProperty/* default */.A)(_this, "handleDelete", function () {
      _this.props.onDelete('sendToIntegration');
    });
    return _this;
  }
  (0,inherits/* default */.A)(IntegrationAction, _PureComponent);
  return (0,createClass/* default */.A)(IntegrationAction, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this$props = this.props,
        integrationId = _this$props.integrationId,
        integrations = _this$props.integrations,
        onEdit = _this$props.onEdit;
      if (integrationId) {
        var _this$popover;
        (_this$popover = this.popover) === null || _this$popover === void 0 || _this$popover.show();
      }
      if (integrations.size === 1) {
        onEdit('sendToIntegration', {
          integrationId: integrations.getIn([0, 'id'])
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this2 = this;
      var _this$props2 = this.props,
        integrations = _this$props2.integrations,
        integrationId = _this$props2.integrationId,
        error = _this$props2.error;
      var withPopover = function withPopover(component) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(components_IntegrationAction.list),
            children: integrations.map(function (integration) {
              return /*#__PURE__*/(0,jsx_runtime.jsx)(CreateRuleModal_components_Integration, {
                id: integration.get('id'),
                type: integration.get('type'),
                settings: integration.get('settings'),
                to: integration.get('to'),
                onSelect: _this2.handleSelect
              }, integration.get('key'));
            })
          }),
          ref: function ref(c) {
            _this2.popover = c;
          },
          children: component
        });
      };
      var chosenIntegration = integrations.find(function (integration) {
        return integration.get('id') === integrationId;
      });
      var doOtherIntegrationExist = integrations.size > 1;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(CreateRuleModal_components_ActionBlock, {
        icon: "settings",
        error: error,
        imageUrl: chosenIntegration && "/static/images/integrations/".concat(chosenIntegration.get('type'), ".svg"),
        onDelete: this.handleDelete,
        children: integrationId ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(other_IntegrationName_IntegrationName, {
            prefix: l('Send to ', 'integrationRule'),
            type: chosenIntegration.get('type'),
            to: chosenIntegration.get('to')
          }), doOtherIntegrationExist && withPopover( /*#__PURE__*/(0,jsx_runtime.jsx)(IconEdit, {
            tooltip: l('Change')
          }))]
        }) : withPopover( /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(components_IntegrationAction.caption, (0,defineProperty/* default */.A)({}, components_IntegrationAction.error, error)),
          children: [l('Choose integration to send mentions to'), /*#__PURE__*/(0,jsx_runtime.jsx)(IconAdd, {})]
        }))
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const CreateRuleModal_components_IntegrationAction = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    integrations: (0,themes_selectors/* getCurrentThemeRuleIntegrations */.mQ)(state)
  };
})(IntegrationAction));
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-media/esm/react-media.js
var react_media = __webpack_require__("lU33");
// EXTERNAL MODULE: ./src/state/modals/actions.ts
var modals_actions = __webpack_require__("DuoS");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/ui/Tag/index.js + 6 modules
var Tag = __webpack_require__("/i37");
// EXTERNAL MODULE: ./node_modules/react-isolated-scroll/lib/index.js
var react_isolated_scroll_lib = __webpack_require__("rvBI");
var react_isolated_scroll_lib_default = /*#__PURE__*/__webpack_require__.n(react_isolated_scroll_lib);
// EXTERNAL MODULE: ./node_modules/downshift/dist/downshift.esm.js + 1 modules
var downshift_esm = __webpack_require__("2W6Z");
// EXTERNAL MODULE: ./node_modules/match-sorter/dist/match-sorter.esm.js
var match_sorter_esm = __webpack_require__("ilPa");
// EXTERNAL MODULE: ./node_modules/react-virtualized/dist/es/index.js + 68 modules
var dist_es = __webpack_require__("woTO");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/utils/debounce.js
var debounce = __webpack_require__("P6/z");
// EXTERNAL MODULE: ./src/components/ui/SearchableList/SearchableList.less
var SearchableList_SearchableList = __webpack_require__("XQtW");
;// CONCATENATED MODULE: ./src/components/ui/SearchableList/SearchableListMutable.tsx
var SearchableListMutable_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var SearchableListMutable_assign = (undefined && undefined.__assign) || function () {
    SearchableListMutable_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SearchableListMutable_assign.apply(this, arguments);
};
var SearchableListMutable_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
















var stateReducer = function (state, change) {
    var _a = downshift_esm/* default */.Ay.stateChangeTypes, keyDownEnter = _a.keyDownEnter, clickItem = _a.clickItem;
    if (change.type === keyDownEnter || change.type === clickItem) {
        return SearchableListMutable_assign(SearchableListMutable_assign({}, change), { isOpen: state.isOpen, highlightedIndex: state.highlightedIndex });
    }
    return change;
};
var SearchableList = /** @class */ (function (_super) {
    SearchableListMutable_extends(SearchableList, _super);
    function SearchableList(props) {
        var _this = _super.call(this, props) || this;
        _this.handleChange = function (_, filter) {
            _this.setState({ filter: filter });
            _this.updateSuggestions({ filter: filter });
        };
        _this.handleFocusInput = function () {
            _this.setState({ isInputInFocus: true });
        };
        _this.handleBlurInput = function () {
            _this.setState({ isInputInFocus: false });
        };
        _this.handleSelect = function (item, _a) {
            var selectedItem = _a.selectedItem;
            var _b = _this.props, onActionButtonPress = _b.onActionButtonPress, onSelect = _b.onSelect;
            /*
             * Downshift triggers onSelect callback on 'esc' click.
             * 'Esc' is recognized like clearing of search input in that case.
             */
            if (!selectedItem) {
                return null;
            }
            if (selectedItem.addButton && onActionButtonPress) {
                return onActionButtonPress();
            }
            _this.updateSuggestions();
            return onSelect(item);
        };
        _this.updateSuggestions = function (predefinedState, predefinedProps) {
            if (predefinedState === void 0) { predefinedState = {}; }
            if (predefinedProps === void 0) { predefinedProps = {}; }
            _this.setState(function (state, props) { return ({
                suggestions: _this.mapSuggestions(SearchableListMutable_assign(SearchableListMutable_assign({}, state), (predefinedState || {})), SearchableListMutable_assign(SearchableListMutable_assign({}, props), (predefinedProps || {}))),
            }); });
        };
        _this.suggestionsSorter = function (suggestions, filter) {
            var sortingProperties = _this.props.sortingProperties;
            if (!sortingProperties) {
                return suggestions;
            }
            return (0,match_sorter_esm/* matchSorter */.Ht)(suggestions, filter, SearchableListMutable_assign({ threshold: match_sorter_esm/* rankings */.cG.MATCHES, baseSort: function (a, b) {
                    return a.rankedValue.localeCompare(b.rankedValue, 'en', {
                        numeric: true,
                        sensitivity: 'base',
                    });
                } }, sortingProperties));
        };
        _this.formatSuggestionToRender = function (suggestion, index) { return ({
            index: index,
            key: suggestion.id,
        }); };
        /* eslint-disable react/no-this-in-sfc */
        _this.renderSuggestion = function (highlightedIndex, getItemProps, darkMode) { return function (_a) {
            var _b, _c;
            var _d;
            var index = _a.index, isScrolling = _a.isScrolling, style = _a.style, key = _a.key;
            var _e = _this.props, renderItem = _e.renderItem, renderActionButton = _e.renderActionButton, isSuggestionSelected = _e.isSuggestionSelected;
            var item = _this.state.suggestions[index];
            /**
             * For now we just filter options that should not be rendered on search.
             * In future, I hope, we will come with more elegant solution:
             * SELECT_ALL should select/deselect only found options
             */
            if (_this.state.filter && ((_d = _this.props.suggestionsToAvoidOnSearch) === null || _d === void 0 ? void 0 : _d.includes(item.get('id')))) {
                return null;
            }
            if (isScrolling) {
                return ((0,jsx_runtime.jsxs)("div", SearchableListMutable_assign({ style: style, className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestion) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestionCheckboxEmptyIcon), type: "checkbox-empty", size: 20 }), (0,jsx_runtime.jsx)("span", SearchableListMutable_assign({ className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestionCheckboxEmptyLabel, (_b = {},
                                _b[SearchableList_SearchableList/* default */.A.darkMode] = darkMode,
                                _b)) }, { children: item.name }))] }), key));
            }
            var suggestion = renderItem(item, highlightedIndex === index);
            if (!suggestion) {
                return false;
            }
            if (item.addButton) {
                return ((0,jsx_runtime.jsx)("div", SearchableListMutable_assign({ className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestion) }, getItemProps({
                    item: item,
                    index: index,
                }), { children: renderActionButton(highlightedIndex === index) }), "addButton"));
            }
            return ((0,jsx_runtime.jsx)("div", SearchableListMutable_assign({ style: style, className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestion, (_c = {},
                    _c[SearchableList_SearchableList/* default */.A.selected] = isSuggestionSelected && isSuggestionSelected(item),
                    _c)) }, getItemProps({
                item: item,
                index: index,
                key: item.id,
                disabled: isSuggestionSelected && isSuggestionSelected(item),
            }), { children: suggestion }), key));
        }; };
        _this.state = {
            filter: '',
            suggestions: _this.mapSuggestions({ filter: '' }, props),
            isInputInFocus: false,
        };
        _this.updateSuggestionsOnFilterChange = (0,debounce/* default */.A)(_this.updateSuggestions, 100);
        _this.downshift = (0,react.createRef)();
        return _this;
    }
    SearchableList.prototype.componentDidUpdate = function (prevProps) {
        var prevSuggestions = prevProps.suggestions, prevValue = prevProps.value;
        var _a = this.props, suggestions = _a.suggestions, value = _a.value;
        if (!(0,lodash.isEqual)(prevSuggestions, suggestions)) {
            this.updateSuggestions();
        }
        if (value !== prevValue) {
            this.updateSuggestionsOnFilterChange();
        }
    };
    SearchableList.prototype.mapSuggestions = function (state, props) {
        var suggestions = props.suggestions, value = props.value, renderActionButton = props.renderActionButton;
        var filter = state.filter;
        var inputValue = value || filter;
        var actionButton = { addButton: true };
        var results = this.suggestionsSorter(suggestions, inputValue);
        var suggestionExists = results.find(function (suggestion) { return suggestion.name === value; });
        if (suggestions.length && !suggestionExists && renderActionButton) {
            return __spreadArray(__spreadArray([], SearchableListMutable_read(results), false), [actionButton], false);
        }
        return results;
    };
    SearchableList.prototype.render = function () {
        var _this = this;
        var _a = this.props, suggestOnFocus = _a.suggestOnFocus, value = _a.value, size = _a.size, autoFocus = _a.autoFocus, leftIcon = _a.leftIcon, hintText = _a.hintText, placeholder = _a.placeholder, isLoading = _a.isLoading, className = _a.className, emptyState = _a.emptyState, itemToString = _a.itemToString, darkMode = _a.darkMode, isLongList = _a.isLongList, virtualListProps = _a.virtualListProps, onInputChange = _a.onInputChange;
        var _b = this.state, filter = _b.filter, suggestions = _b.suggestions;
        var showSuggestions = suggestions && suggestions.length > 0;
        var loaderEmptyState = emptyState || (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { title: l('No results') });
        var overrideVirtualListProps = SearchableListMutable_assign({ scrollToIndex: 0, rowCount: suggestions.length, rowHeight: 25, width: 250, overscanRowCount: 20 }, virtualListProps);
        return ((0,jsx_runtime.jsx)(downshift_esm/* default */.Ay, SearchableListMutable_assign({ ref: this.downshift, stateReducer: stateReducer, itemToString: itemToString, defaultHighlightedIndex: 0, onSelect: this.handleSelect }, { children: function (_a) {
                var _b, _c, _d;
                var highlightedIndex = _a.highlightedIndex, getInputProps = _a.getInputProps, getItemProps = _a.getItemProps, isOpen = _a.isOpen, selectHighlightedItem = _a.selectHighlightedItem;
                return ((0,jsx_runtime.jsxs)("div", SearchableListMutable_assign({ className: SearchableList_SearchableList/* default */.A.base }, { children: [(0,jsx_runtime.jsx)(TextField/* NativeTextField */.z, SearchableListMutable_assign({ fullWidth: true, darkMode: darkMode, autoFocus: autoFocus, hintText: hintText, size: size, leftIcon: leftIcon || (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }) }, getInputProps({
                            placeholder: placeholder,
                            value: value || filter,
                            onChange: onInputChange || _this.handleChange,
                            onKeyDown: function (e) {
                                if (!isOpen && e.key === 'Enter' && highlightedIndex === 0) {
                                    selectHighlightedItem();
                                }
                            },
                            onFocus: _this.handleFocusInput,
                            onBlur: _this.handleBlurInput,
                        }))), !hintText && (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), isLongList && ((0,jsx_runtime.jsx)("div", SearchableListMutable_assign({ className: classnames_default()(className, SearchableList_SearchableList/* default */.A.searchableListLong, SearchableList_SearchableList/* default */.A.suggestionsContainer, (_b = {}, _b[SearchableList_SearchableList/* default */.A.darkMode] = darkMode, _b)) }, { children: (0,jsx_runtime.jsx)(dist_es/* AutoSizer */.t$, SearchableListMutable_assign({ disableWidth: true, disableHeight: !showSuggestions }, { children: function (_a) {
                                    var height = _a.height;
                                    return ((0,jsx_runtime.jsx)(Loader/* default */.A, SearchableListMutable_assign({ loaded: !isLoading, empty: !showSuggestions, emptyState: loaderEmptyState }, { children: (0,jsx_runtime.jsx)(dist_es/* List */.B8, SearchableListMutable_assign({}, overrideVirtualListProps, { height: height, rowRenderer: _this.renderSuggestion(highlightedIndex, getItemProps, darkMode) })) })));
                                } })) }))), (0,jsx_runtime.jsx)("div", SearchableListMutable_assign({ className: classnames_default()((_c = {},
                                _c[SearchableList_SearchableList/* default */.A.suggestOnFocus] = suggestOnFocus,
                                _c[SearchableList_SearchableList/* default */.A.showSuggestOnFocus] = _this.state.isInputInFocus,
                                _c[SearchableList_SearchableList/* default */.A.openToTop] = _this.props.openToTop,
                                _c)) }, { children: !isLongList && ((0,jsx_runtime.jsx)((react_isolated_scroll_lib_default()), SearchableListMutable_assign({ className: classnames_default()(className, SearchableList_SearchableList/* default */.A.suggestionsContainer, (_d = {},
                                    _d[SearchableList_SearchableList/* default */.A.darkMode] = darkMode,
                                    _d)) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SearchableListMutable_assign({ loaded: !isLoading, empty: !showSuggestions, emptyState: loaderEmptyState }, { children: suggestions.map((0,redux/* compose */.Zz)(_this.renderSuggestion(highlightedIndex, getItemProps, darkMode), _this.formatSuggestionToRender)) })) }))) }))] })));
            } })));
    };
    SearchableList.defaultProps = {
        isLoading: false,
        itemToString: function (suggestion) { return (suggestion ? suggestion.name : ''); },
        suggestions: [],
    };
    return SearchableList;
}(react.PureComponent));
/* harmony default export */ const SearchableListMutable = (SearchableList);

;// CONCATENATED MODULE: ./src/containers/TagsEditor/TagsEditor.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagsEditor = ({"base":"PkFkil3Mwz3CMViW7S1B","tags":"B0kyitD_k0U4SfGu8xfr","tag":"ZCm0XYsTHVUNzKSV6gNw","emptyStateContainer":"BwXGoZkcwMbPMUxyyXTv","emptyState":"C8p5SMjWJ1HjlE0Hiw0g","buttons":"Id9K3sKDXVoK49Z5MaJL","addButton":"VUOLxsjWmpI0k_EpBalC","ghost":"ALQo5ut1QqlrvTy8QJED","endorseContent":"aSByxkdimCv928PmXW3S","suggestion":"phjrWAFPeFJssAXaCPoG","suggestionFocused":"jpiy4w4ZJO0gGaURYC94","suggestionActionElement":"lkqNYaDKtwRhhVJeovKx","suggestionActionFocused":"f9JDI2iWkNAmIercaemw"});
;// CONCATENATED MODULE: ./src/containers/TagsEditor/TagsEditor.tsx
var TagsEditor_assign = (undefined && undefined.__assign) || function () {
    TagsEditor_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagsEditor_assign.apply(this, arguments);
};
var TagsEditor_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

















var ENTER_KEY = 13;
var renderEmptyState = function (onTagModalOpen) { return ((0,jsx_runtime.jsx)("div", TagsEditor_assign({ className: classnames_default()(TagsEditor.emptyStateContainer) }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { small: true, className: classnames_default()(TagsEditor.emptyState), image: "/static/images/empty_tags.png", title: l('No tags'), message: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('There are no tags in this topic'), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "small", style: { marginTop: 8 }, label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus", size: 16, style: { marginRight: 4 } }), l('Create new tag')] }), onClick: onTagModalOpen })] }) }) }))); };
var TagsEditor_TagsEditor = (0,react.forwardRef)(function (_a, parentRef) {
    var creatingTag = _a.creatingTag, createdTagId = _a.createdTagId, _b = _a.selected, selected = _b === void 0 ? [] : _b, _c = _a.indeterminate, indeterminate = _c === void 0 ? [] : _c, tags = _a.tags, usedTags = _a.usedTags, className = _a.className, loading = _a.loading, position = _a.position, trigger = _a.trigger, showModal = _a.showModal, onChange = _a.onChange, onOpen = _a.onOpen, onClose = _a.onClose;
    var ref = parentRef || (0,react.useRef)(null);
    var _d = TagsEditor_read((0,react.useState)(''), 2), filter = _d[0], setFilter = _d[1];
    var getDefaultTags = function () {
        return !selected.length ? {} : selected.reduce(function (acc, s) {
            var _a;
            return (TagsEditor_assign(TagsEditor_assign({}, acc), (_a = {}, _a[s] = true, _a)));
        }, {});
    };
    var _f = TagsEditor_read((0,react.useState)(getDefaultTags()), 2), stateTags = _f[0], setTags = _f[1];
    (0,react.useEffect)(function () {
        var _a;
        if (!creatingTag && createdTagId && !stateTags[createdTagId]) {
            setTags(TagsEditor_assign(TagsEditor_assign({}, stateTags), (_a = {}, _a[createdTagId] = true, _a)));
        }
    }, [creatingTag, createdTagId]);
    var handleOpenCreateTagModal = function (name, props) {
        showModal('createTag', TagsEditor_assign({ name: name }, props));
    };
    var handleSave = function (t) {
        onChange(t);
    };
    var handleOpen = function () {
        ref.current.show();
        onOpen === null || onOpen === void 0 ? void 0 : onOpen();
    };
    var handleClose = function () {
        ref.current.hide();
        onClose === null || onClose === void 0 ? void 0 : onClose();
    };
    var handleTagSelect = function (id, flag) {
        var _a;
        setTags(TagsEditor_assign(TagsEditor_assign({}, stateTags), (_a = {}, _a[id] = flag, _a)));
    };
    var getDisplayedTags = function () {
        return (usedTags || tags).reduce(function (previousTags, currentTag) {
            var _a;
            if (currentTag.name) {
                return TagsEditor_assign((_a = {}, _a[currentTag.name] = currentTag.id, _a), previousTags);
            }
            return previousTags;
        }, {});
    };
    var handleTagChange = function (tag) {
        var tagId = getDisplayedTags()[tag.name];
        var tagSelected = stateTags[tagId];
        return handleTagSelect(tagId, !tagSelected);
    };
    var handleApply = function () {
        handleSave(stateTags);
        handleClose();
    };
    var handleKeyDown = function (e) {
        if (Object.keys(stateTags).length && e.keyCode === ENTER_KEY && e.shiftKey) {
            handleApply();
        }
    };
    var handleTagModalOpen = function () {
        handleClose();
        handleOpenCreateTagModal(filter, { onBeforeClose: handleOpen });
    };
    var resetTagsState = function () {
        setTags(getDefaultTags());
        setFilter('');
    };
    var show = function () {
        resetTagsState();
        handleOpen();
    };
    var renderSuggestionActionElement = function (focused) {
        var _a;
        if (usedTags)
            return null;
        return ((0,jsx_runtime.jsx)("div", TagsEditor_assign({ className: classnames_default()(TagsEditor.suggestionActionElement, (_a = {}, _a[TagsEditor.suggestionActionFocused] = focused, _a)) }, { children: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus", size: 16, style: { marginRight: 4 } }), filter
                        ? (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Create new tag '), "\"", filter, "\""] })
                        : l('Create new tag')] }) })));
    };
    var renderSuggestion = function (suggestion, focused) {
        var _a;
        var checked = Boolean(stateTags[suggestion.id]);
        var isIndeterminate = indeterminate.includes(suggestion.id)
            && stateTags[suggestion.id] === undefined;
        return ((0,jsx_runtime.jsx)("div", TagsEditor_assign({ className: classnames_default()(TagsEditor.suggestion, (_a = {}, _a[TagsEditor.suggestionFocused] = focused, _a)) }, { children: (0,jsx_runtime.jsx)(Checkbox/* default */.A, { label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Tag/* TagColorSwatch */.WX, { color: suggestion.color }), suggestion.name] }), checked: checked || isIndeterminate, indeterminate: isIndeterminate, value: suggestion.id, title: suggestion.name, className: classnames_default()(TagsEditor.tag) }, suggestion.id) })));
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, TagsEditor_assign({ hideOnScroll: false, position: position, ref: ref, content: (0,jsx_runtime.jsxs)("div", TagsEditor_assign({ className: classnames_default()(className, TagsEditor.base), onKeyDown: handleKeyDown }, { children: [(0,jsx_runtime.jsx)(react_media/* default */.A, TagsEditor_assign({ query: "(max-width: 992px)" }, { children: function (matches) { return ((0,jsx_runtime.jsx)(SearchableListMutable, { autoFocus: !matches, value: filter, isLoading: loading, placeholder: l('Search'), hintText: !matches && l('Press Shift + Enter to apply'), emptyState: renderEmptyState(handleTagModalOpen), className: classnames_default()(TagsEditor.tags), suggestions: usedTags || tags, sortingProperties: {
                            keys: [function (item) { return item.name; }],
                        }, renderActionButton: renderSuggestionActionElement, onActionButtonPress: handleTagModalOpen, renderItem: renderSuggestion, onSelect: handleTagChange, onInputChange: function (_e, text) { return setFilter(text); } })); } })), (0,jsx_runtime.jsxs)("div", TagsEditor_assign({ className: classnames_default()(TagsEditor.buttons) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", label: l('Cancel'), onClick: handleClose }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "small", label: l('Apply'), disabled: Object.keys(stateTags).length === 0, onClick: handleApply })] }))] })), onShow: show }, { children: trigger })));
});
var connectedTagsEditor = (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    tags: (0,tags_selectors/* getTags */.Q2)(state),
    loading: (0,tags_selectors/* getTagsLoading */.Od)(state),
    creatingTag: (0,tags_selectors/* isCreatingTag */.qJ)(state),
    createdTagId: (0,tags_selectors/* getCreatedTagId */.EW)(state),
}); }, { showModal: modals_actions/* showModal */.to }, null, { forwardRef: true }), react.memo)(TagsEditor_TagsEditor);
/* harmony default export */ const containers_TagsEditor_TagsEditor = ((0,withRouter/* withRouter */.y)(connectedTagsEditor, { forwardRef: true }));

;// CONCATENATED MODULE: ./src/containers/TagsEditor/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/TagsAction.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_TagsAction = ({"base":"EJQoYVAJS_H3Y9UxhoKC","tag":"b2SO9Eylemoclzl_cQvT"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/components/TagsAction.js






function TagsAction_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, TagsAction_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function TagsAction_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (TagsAction_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }










var TagsAction = /*#__PURE__*/function (_PureComponent) {
  function TagsAction() {
    var _this;
    (0,classCallCheck/* default */.A)(this, TagsAction);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = TagsAction_callSuper(this, TagsAction, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleEdit", function (tagsMap) {
      var tagIds = Object.keys(tagsMap);
      _this.props.onEdit('setTags', {
        tagIds: tagIds
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDelete", function () {
      _this.props.onDelete('setTags');
    });
    return _this;
  }
  (0,inherits/* default */.A)(TagsAction, _PureComponent);
  return (0,createClass/* default */.A)(TagsAction, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        tags = _this$props.tags,
        tagIds = _this$props.tagIds,
        error = _this$props.error;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(CreateRuleModal_components_ActionBlock, {
        icon: "tags",
        error: error,
        onDelete: this.handleDelete,
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_TagsAction.base),
          children: [l('Add tags ', 'ruleAction'), tagIds.length !== 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            style: {
              width: '100%'
            }
          }), tags.map(function (tag) {
            return /*#__PURE__*/(0,jsx_runtime.jsx)(Tag/* default */.Ay, {
              className: classnames_default()(components_TagsAction.tag),
              removable: false,
              id: tag.id,
              color: tag.color,
              note: tag.note,
              createdAt: tag.createdAt,
              label: tag.name
            }, tag.id + tag.name);
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(containers_TagsEditor_TagsEditor, {
            position: "right center",
            selected: tagIds,
            trigger: tags.length ? /*#__PURE__*/(0,jsx_runtime.jsx)(IconEdit, {}) : /*#__PURE__*/(0,jsx_runtime.jsx)(IconAdd, {}),
            onChange: this.handleEdit
          })]
        })
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const CreateRuleModal_components_TagsAction = ((0,react_redux/* connect */.Ng)(function (state, ownProps) {
  return {
    tags: (0,tags_selectors/* getTagListByIds */.ou)(state, ownProps.tagIds)
  };
})(TagsAction));
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/CreateRuleModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const CreateRuleModal_CreateRuleModal = ({"overlayedBlock":"ePTZ0nc28WNuAJwzspXM","flexCenter":"pHNmwevhnVj3MO2_Ocvb","smartFeature":"zIMpC0gn8vPE4WUx683r","tag":"UDwmnKx4KaqhAgbMWmpu","visibleScrollBar":"e4QqFJxIfTLYdFWC8QH9","hiddenScrollBar":"A5VfqD2saZfItMVlwTxe","base":"HSA_DDChxA1Y_6Csqph0","info":"JMCwU1Dv1UZDDlkadB1T","error":"FGEH5bVeXAa5gmw2CPFI","infoBox":"nxI7D3QCWcPH4pBKl8UA","buttonBar":"qCziOm8mYPE28kUzpm2y"});
;// CONCATENATED MODULE: ./src/containers/modals/CreateRuleModal/CreateRuleModal_NEW.tsx
var CreateRuleModal_NEW_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var CreateRuleModal_NEW_assign = (undefined && undefined.__assign) || function () {
    CreateRuleModal_NEW_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CreateRuleModal_NEW_assign.apply(this, arguments);
};


































var CreateRuleModal_NEW_MODAL_MAX_WIDTH = 455;
var DEFAULT_ACTION_DATA = {
    setTags: { tagIds: [] },
    setSentiment: { sentiment: 'positive' },
    markProcessed: {},
    sendToIntegration: { integrationId: '' },
    delete: {},
};
var VALIDATION_CHECKS = {
    setTags: function (data) { return data.tagIds && data.tagIds.length !== 0; },
    setSentiment: function (data) { return data.sentiment; },
    sendToIntegration: function (data) { return data.integrationId; },
};
var ACTION_TYPES = Object.keys(DEFAULT_ACTION_DATA);
var CreateRuleModal = /** @class */ (function (_super) {
    CreateRuleModal_NEW_extends(CreateRuleModal, _super);
    function CreateRuleModal() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            actions: {},
            applyRetrospectively: false,
            notValidActions: [],
        };
        _this.handleAddAction = function (type) {
            _this.setState(function (prevState) {
                var _a;
                return ({
                    actions: CreateRuleModal_NEW_assign((_a = {}, _a[type] = DEFAULT_ACTION_DATA[type], _a), prevState.actions),
                });
            });
        };
        _this.handleActionEdit = function (type, data) {
            _this.setState(function (prevState) {
                var _a;
                return ({
                    actions: CreateRuleModal_NEW_assign(CreateRuleModal_NEW_assign({}, prevState.actions), (_a = {}, _a[type] = data, _a)),
                });
            });
        };
        _this.handleActionDelete = function (type) {
            _this.setState(function (prevState) { return ({
                actions: omit_default()(prevState.actions, type),
            }); });
        };
        _this.handleCreateRule = function () {
            var filter = _this.props.filter;
            var _a = _this.state, actions = _a.actions, applyRetrospectively = _a.applyRetrospectively;
            var notValidActions = [];
            ACTION_TYPES.forEach(function (type) {
                var actionData = actions[type];
                var validator = VALIDATION_CHECKS[type];
                if (actionData && validator && !validator(actionData)) {
                    notValidActions.push(type);
                }
            });
            _this.setState({ notValidActions: notValidActions });
            if (notValidActions.length === 0) {
                _this.props.createRule({ filter: filter, actions: actions, applyRetrospectively: applyRetrospectively });
            }
        };
        _this.handleRetrospeciveApplyCheck = function (event) {
            _this.setState({ applyRetrospectively: event.target.value });
        };
        _this.handleClose = function () {
            _this.props.resetCreateRuleData();
            _this.props.handleHide();
        };
        _this.isFromRedditAndHasActionToSend = function () {
            var filter = _this.props.filter;
            var actions = _this.state.actions;
            var sources = filter === null || filter === void 0 ? void 0 : filter.filterGroups.filter(function (group) { return group.fieldName === 'sourceId'; });
            if (!sources.length)
                return false;
            var isFromReddit = sources.map(function (s) { return s.name; }).some(isReddit) || false;
            return isFromReddit && !!actions.sendToIntegration;
        };
        return _this;
    }
    CreateRuleModal.prototype.componentDidMount = function () {
        var _a = this.props, ruleLimitExceeded = _a.ruleLimitExceeded, currentTheme = _a.currentTheme, sendAnalyticalEvent = _a.sendAnalyticalEvent;
        if (ruleLimitExceeded) {
            sendAnalyticalEvent({
                eventType: 'rules: limit exceeded',
                properties: {
                    themeId: currentTheme.id,
                    themeName: currentTheme.name,
                },
            });
        }
    };
    CreateRuleModal.prototype.renderSuccessModal = function () {
        var show = this.props.show;
        return ((0,jsx_runtime.jsx)(Modal/* default */.A, CreateRuleModal_NEW_assign({ fixed: true, isOpen: show, title: l('New rule'), onRequestClose: this.handleClose, maxWidth: CreateRuleModal_NEW_MODAL_MAX_WIDTH }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, CreateRuleModal_NEW_assign({ small: true, title: l('Rule is successfully created!'), image: "/static/images/rules_success.svg", message: l('You can view all rules in topic settings') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", label: l('Close'), onClick: this.handleClose }) })) })));
    };
    CreateRuleModal.prototype.renderLimitExceededModal = function () {
        var show = this.props.show;
        return ((0,jsx_runtime.jsx)(Modal/* default */.A, CreateRuleModal_NEW_assign({ isOpen: show, title: l('New rule'), maxWidth: 450, onRequestClose: this.handleClose }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, CreateRuleModal_NEW_assign({ small: true, title: l('You have reached rules limit for current topic'), image: "/static/images/rules_limit.svg", message: l('Upgrade your subscription plan or '
                    + 'delete existing rule in topic settings and try again') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", label: l('Close'), onClick: this.handleClose }) })) })));
    };
    CreateRuleModal.prototype.renderError = function () {
        var error = this.props.error;
        return error
            ? ((0,jsx_runtime.jsx)(InfoBox/* default */.A, { displayed: true, error: true, title: error && error.data && error.data.message === 'Rules limit reached for theme'
                    ? l('Rules limit reached for topic')
                    : l('Something went wrong'), text: error && error.data && error.data.message === 'Rules limit reached for theme'
                    ? l('Upgrade your subscription plan or delete existing rule in settings')
                    : l('Please check all entered data and try again') }))
            : null;
    };
    CreateRuleModal.prototype.renderFilters = function () {
        var _a = this.props, filter = _a.filter, currentTheme = _a.currentTheme;
        var hasFilters = ((filter === null || filter === void 0 ? void 0 : filter.filterGroups.length) !== 0
            || (filter === null || filter === void 0 ? void 0 : filter.discussions)
            || (filter === null || filter === void 0 ? void 0 : filter.duplicates));
        return hasFilters
            ? (0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, { children: (0,jsx_runtime.jsx)(FilterChipPanel/* default */.A, { filter: filter, topicId: currentTheme.id }) })
            : ((0,jsx_runtime.jsx)(InfoBox/* default */.A, { displayed: true, warning: true, className: classnames_default()(CreateRuleModal_CreateRuleModal.infoBox), title: l('No filters have been applied'), text: l('This rule will affect all the mentions in the topic') }));
    };
    CreateRuleModal.prototype.renderActions = function () {
        var integrations = this.props.integrations;
        var _a = this.state, actions = _a.actions, notValidActions = _a.notValidActions;
        var newActionOptions = ACTION_TYPES.filter(function (type) {
            if (type === 'sendToIntegration') {
                return integrations.size !== 0 && !actions[type];
            }
            return !actions[type];
        });
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsxs)("b", { children: ["1. ", l('Choose actions you\'d like to be applied to mentions')] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), actions.setTags
                    && ((0,jsx_runtime.jsx)(CreateRuleModal_components_TagsAction, CreateRuleModal_NEW_assign({}, actions.setTags, { error: notValidActions.indexOf('setTags') !== -1, onEdit: this.handleActionEdit, onDelete: this.handleActionDelete }))), actions.setSentiment
                    && ((0,jsx_runtime.jsx)(SentimentAction_ProcessedAction, CreateRuleModal_NEW_assign({}, actions.setSentiment, { onEdit: this.handleActionEdit, onDelete: this.handleActionDelete }))), actions.markProcessed
                    && (0,jsx_runtime.jsx)(components_ProcessedAction, { onDelete: this.handleActionDelete }), actions.sendToIntegration
                    && ((0,jsx_runtime.jsx)(CreateRuleModal_components_IntegrationAction, CreateRuleModal_NEW_assign({}, actions.sendToIntegration, { error: notValidActions.indexOf('sendToIntegration') !== -1, onEdit: this.handleActionEdit, onDelete: this.handleActionDelete }))), actions.delete
                    && (0,jsx_runtime.jsx)(components_DeleteAction, { onDelete: this.handleActionDelete }), (0,jsx_runtime.jsx)(NewAction, { options: newActionOptions, onSelect: this.handleAddAction }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
    };
    CreateRuleModal.prototype.renderApplyOptions = function () {
        var _this = this;
        var _a = this.state, actions = _a.actions, applyRetrospectively = _a.applyRetrospectively;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(actions.delete || actions.markProcessed || actions.setSentiment || actions.setTags)
                    && ((0,jsx_runtime.jsxs)(RadioGroup/* default */.A, { children: [(0,jsx_runtime.jsxs)("b", { children: ["2. ", l('Apply rule to:')] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ui_RadioButton_RadioButton, { checked: !applyRetrospectively, onChange: function () { return _this.setState({ applyRetrospectively: false }); }, label: l('future mentions only') }), (0,jsx_runtime.jsx)(ui_RadioButton_RadioButton, { checked: applyRetrospectively, onChange: function () { return _this.setState({ applyRetrospectively: true }); }, label: l('both future and already collected mentions') })] })), applyRetrospectively && actions.sendToIntegration
                    && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(InfoBox/* default */.A, { displayed: true, warning: true, text: l('Please note that the action “Send to e-mail” / “Send to integration” will only apply to future mentions') })] }))] }));
    };
    CreateRuleModal.prototype.renderControls = function () {
        var actions = this.state.actions;
        var isDisabledBecauseOfReddit = this.isFromRedditAndHasActionToSend();
        var creationDisabled = ACTION_TYPES.filter(function (type) { return actions[type]; }).length === 0 || isDisabledBecauseOfReddit;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [isDisabledBecauseOfReddit && ((0,jsx_runtime.jsxs)(ExplanationText/* default */.A, CreateRuleModal_NEW_assign({ className: classnames_default()(CreateRuleModal_CreateRuleModal.info, CreateRuleModal_CreateRuleModal.error) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "warning", size: 15 }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Please note, mentions from Reddit are not allowed to send '
                            + 'due to platform limitations.')] }))), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, CreateRuleModal_NEW_assign({ className: CreateRuleModal_CreateRuleModal.buttonBar }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: this.handleClose }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: creationDisabled, label: l('Create rule'), onClick: this.handleCreateRule })] }))] }));
    };
    CreateRuleModal.prototype.render = function () {
        var _a = this.props, show = _a.show, ruleCreated = _a.ruleCreated, ruleLimitExceeded = _a.ruleLimitExceeded;
        if (ruleLimitExceeded) {
            return this.renderLimitExceededModal();
        }
        if (ruleCreated) {
            return this.renderSuccessModal();
        }
        return ((0,jsx_runtime.jsxs)(Modal/* default */.A, CreateRuleModal_NEW_assign({ fixed: true, className: CreateRuleModal_CreateRuleModal.modal, isOpen: show, title: l('New rule'), onRequestClose: this.handleClose, maxWidth: CreateRuleModal_NEW_MODAL_MAX_WIDTH }, { children: [this.renderError(), this.renderFilters(), this.renderActions(), this.renderApplyOptions(), this.renderControls()] })));
    };
    return CreateRuleModal;
}(react.Component));
/* harmony default export */ const CreateRuleModal_NEW = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('createRule_new'), (0,react_redux/* connect */.Ng)(function (state) { return ({
    filter: (0,filter_selectors/* getThemeFilterForRule */.t$)(state),
    entities: (0,entities_selectors/* getFilterEntities */.UQ)(state),
    ruleCreated: isRuleCreated(state),
    error: getCreateRuleError(state),
    currentTheme: (0,themes_selectors/* getCurrentTheme */.j1)(state),
    ruleLimitExceeded: (0,themes_selectors/* isRuleLimitExceeded */.t7)(state),
    integrations: (0,themes_selectors/* getCurrentThemeRuleIntegrations */.mQ)(state),
}); }, {
    createRule: rules_model/* rulesModel */.h.action.createRule,
    resetCreateRuleData: rules_model/* rulesModel */.h.action.resetCreateRuleData,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(CreateRuleModal));

;// CONCATENATED MODULE: ./src/state/channels/selectors.ts
var getChannels = function (state) { return state.channels.list.channels; };
var isChannelsLoading = function (state) { return state.channels.list.loading; };
var isChannelsRequestFailed = function (state) { return !!state.channels.list.error; };
var getErroredChannels = function (state) { return state.channels.add.errors; };
var getPreviewChannels = function (state) { return state.channels.preview.channels; };
var isPreviewChannelsLoading = function (state) { return state.channels.preview.loading; };
var getPreviewChannelsError = function (state) { return state.channels.preview.error; };
var getExcludedChannels = function (state) { return state.channels.excludedChannels.data; };

// EXTERNAL MODULE: ./node_modules/react-rating/lib/react-rating.esm.js
var react_rating_esm = __webpack_require__("4nr2");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment_moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment_moment);
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./src/components/ui/Avatar/index.ts + 2 modules
var Avatar = __webpack_require__("tq5F");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/components/ui/Calendar/index.ts + 5 modules
var Calendar = __webpack_require__("9i11");
// EXTERNAL MODULE: ./src/utils/intercom.js
var utils_intercom = __webpack_require__("ah7T");
// EXTERNAL MODULE: ./src/utils/dates/dateUtils.ts
var dateUtils = __webpack_require__("9jXX");
// EXTERNAL MODULE: ./src/utils/truncate.js
var truncate = __webpack_require__("wbkJ");
;// CONCATENATED MODULE: ./src/containers/channels/ChannelCard/components/ChannelCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChannelCard = ({"base":"r6tEWNdu70WgcDxPgCS9","leftBlock":"YyQ_UfSM5UuvY4EolJoZ","rightBlock":"Z2a53Ga_6gxhA2JKZ9bK","avatar":"BdJpcMA1uIhHdqvbuM_C","rating":"MV3_LqZ6GbxZ3F1KmufH","postCount":"ScwznSqK4nVY67n2Qox5","name":"cBYZ1zjVaUe_knlwblph","header":"cYCG1tBGbmPm7yTG4FCK","info":"tLzfOPRRYFlEjroQaOg0","content":"wLhpSghEiBc7OzPW4nDZ","description":"J0hOSJJvUFSbXeJyl5mL","buttons":"TZh5biVgdHS7MVT1pe4f","profileSource":"jykkm8g9kaxqU1h_lkzw","sourceName":"zVLFhUMAaS691QB3nKL5","addChannel":"FyPQKBMWZZPBP3WCUjr0","channelAddedButton":"ttRGjxz4SuVB1OwOSM_M","historyCollectionIcon":"x2GPOsdGLZMd9IIqsKAa","historyCollection":"hOplSWQ737RE3ktR_bMC","historyCollectionPreview":"L2tEgZv0DqBgFHtI1WQi","dateFromCollectionPeriod":"j_ExC3RCmQ7Oi1XgFnBr","withoutBorder":"HtXUV7qe93bWYaNdnPlI","bottomBar":"UwyiI3DlvAJZb3uy6OoU","mentions":"nAUa8pf1Ns39WC_AJc__","page":"IcFpuVwlCgbE4zlk2gIk","channel":"SSh_POIs9ambvf1nXVx4","group":"KSqHUkMNZjxJZt_JPNaF","user":"c4wHKBhkAcrB20dChC0i","feedpage":"FfGMIcuN0_VAJBYKS1mx","hashtag":"iVCcNAwFC03zzN0DKR4Y","location":"CjLajw7SHfjqF9wjjz9n","board":"n56X09XmTiZ_8s1E97Vg","product":"zvqx9e4Nb3IHSa9Mjl7W","post":"t91wEJrITw5LaDIZOax7","place":"ubW_FRJIOFHnqtOAeY9s","popover":"vZeUmZD1tdMSWqcyiDZi"});
;// CONCATENATED MODULE: ./src/containers/channels/ChannelCard/components/ChannelCard.js






function ChannelCard_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ChannelCard_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ChannelCard_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ChannelCard_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }























var AVATAR_SIZE = 80;
var ChannelsCard = /*#__PURE__*/function (_PureComponent) {
  function ChannelsCard() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ChannelsCard);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ChannelCard_callSuper(this, ChannelsCard, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      loading: false,
      historyCollectionPeriod: 'one_month',
      customCollectionDate: moment_default()().subtract(1, 'months').toDate()
    });
    (0,defineProperty/* default */.A)(_this, "handleAddChannel", function () {
      var _this$props = _this.props,
        channel = _this$props.channel,
        onAdd = _this$props.onAdd;
      _this.setState({
        loading: true
      });
      onAdd({
        channelKey: channel.key,
        collectHistorySince: _this.collectionDateAccordingToPeriod,
        source: channel.source
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDeleteChannel", function () {
      var _this$props2 = _this.props,
        channel = _this$props2.channel,
        onDelete = _this$props2.onDelete;
      onDelete({
        channelKey: channel.key,
        source: channel.source
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleHistoryCollectionPeriodChange", function (_ref) {
      var value = _ref.value;
      _this.setState({
        historyCollectionPeriod: value
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCustomCollectionDateChange", function (date) {
      _this.setState({
        customCollectionDate: date
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCollectHistory", function () {
      var _this$props3 = _this.props,
        channel = _this$props3.channel,
        onCollectHistory = _this$props3.onCollectHistory;
      onCollectHistory({
        channelKey: channel.key,
        from: _this.state.customCollectionDate
      });
      _this.popover.hide();
    });
    (0,defineProperty/* default */.A)(_this, "handlePopoverClose", function () {
      _this.popover.hide();
    });
    (0,defineProperty/* default */.A)(_this, "getDataByStatus", function () {
      return {
        Private: {
          iconType: 'private',
          iconColor: 'gray',
          text: l('This channel is private')
        },
        NotExists: {
          iconType: 'alert-decagram',
          iconColor: 'amber',
          text: l('This channel does not exists')
        },
        NotAuthorized: {
          iconType: 'alert-decagram',
          iconColor: 'amber',
          text: l('Please authorize an account to get mentions from this channel')
        },
        NotSupported: {
          iconType: 'alert-decagram',
          iconColor: 'amber',
          text: l('This channel type is not supported')
        }
      };
    });
    (0,defineProperty/* default */.A)(_this, "getProfileTypeTranslations", function () {
      return {
        group: l('group', 'profileType'),
        page: l('page', 'profileType'),
        user: l('user', 'profileType'),
        feedpage: l('feedpage', 'profileType'),
        filial: l('filial', 'profileType'),
        location: l('location', 'profileType'),
        hashtag: l('hashtag', 'profileType'),
        post: l('post', 'profileType'),
        product: l('product', 'profileType'),
        software: l('software', 'profileType'),
        industry: l('industry', 'profileType'),
        catalog: l('catalog', 'profileType'),
        shop: l('shop', 'profileType'),
        app: l('app', 'profileType'),
        channel: l('channel', 'profileType'),
        chat: l('chat', 'profileType'),
        joinchat: l('joinchat', 'profileType'),
        restaurant: l('restaurant', 'profileType'),
        mentions: l('mentions', 'profileType'),
        timeline: l('timeline', 'profileType'),
        board: l('board', 'profileType'),
        event: l('event', 'profileType'),
        video: l('video', 'profileType'),
        videos: l('video', 'profileType'),
        savedVideos: l('saved videos', 'profileType'),
        live: l('live', 'profileType'),
        stories: l('stories', 'profileType'),
        organization: l('organization', 'profileType'),
        place: l('place', 'profileType'),
        business: l('business page', 'profileType'),
        businessPage: l('business page', 'profileType'),
        businessTagged: l('mentions of business page', 'profileType'),
        businessPageTagged: l('mentions of business page', 'profileType'),
        organizationTagged: l('mentions of organization page', 'profileType'),
        publicPageTagged: l('mentions of public page', 'profileType'),
        businessHashtag: l('business page hashtags', 'profileType'),
        reviews: l('reviews', 'profileType')
      };
    });
    (0,defineProperty/* default */.A)(_this, "getErrorMessage", function (code, message) {
      var handleChatClick = function handleChatClick() {
        (0,utils_intercom/* showNewMessage */.z$)(l("Hi! I've reached the maximum amount of TikTok channels. Please let me know how can I increase this limit."));
      };
      switch (code) {
        case 'MENTIONS_LIMIT_REACHED':
          return l('Mentions limit is reached');
        case 'CHANNEL_ALREADY_EXISTS':
          return l('This channel was already added to your topic');
        case 'CHANNEL_NOT_EXISTS':
          return l('There is no such channel anymore');
        case 'POOR_INTEGRATION':
          return l('There is a problem adding such channel, most likely you do not have enough permissions to add it');
        case 'INSTAGRAM_TOKEN_REQUIRED':
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [l('If you want to add an Instagram user as a channel' + ' you need to authorize this page first. You can do it '), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
              href: "https://app.youscan.io/settings/social_accounts",
              children: l('here')
            })]
          });

        // Localized on backend side
        case 'TOTAL_QUOTA_EXCEED':
          return message;
        case 'SOURCE_QUOTA_EXCEED':
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [message, /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
              onClick: handleChatClick,
              children: l('Ask how to add more.')
            })]
          });
        default:
          return null;
      }
    });
    (0,defineProperty/* default */.A)(_this, "renderHistoryCollectionButton", function () {
      var _this$props4 = _this.props,
        channel = _this$props4.channel,
        isPreviewChannel = _this$props4.isPreviewChannel;
      var _this$state = _this.state,
        historyCollectionPeriod = _this$state.historyCollectionPeriod,
        customCollectionDate = _this$state.customCollectionDate;
      var historyStatus = channel.historyStatus;
      if (!channel.historySupported) {
        return null;
      }
      if (historyStatus === 'Started') {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
          position: "top center",
          text: l('History collection was already started and may take some time'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            size: "16",
            color: "lightgray",
            type: "history",
            className: classnames_default()(ChannelCard.historyCollectionIcon)
          })
        });
      }
      if (isPreviewChannel) {
        var collectionPeriods = [{
          value: 'none',
          label: l("Don't collect")
        }, {
          value: 'one_month',
          label: l('One month')
        }, {
          value: 'three_months',
          label: l('Three month')
        }, {
          value: 'six_months',
          label: l('Six months')
        }, {
          value: 'year',
          label: l('Year')
        }, {
          value: 'custom',
          label: l('From a specific day')
        }];
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          fitted: true,
          noScroll: true,
          on: "click",
          position: "bottom center",
          className: classnames_default()(ChannelCard.popover),
          ref: function ref(c) {
            _this.popover = c;
          },
          content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(ChannelCard.historyCollection),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
              children: l("Collect channel's history")
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, {
              isClearable: false,
              placeholder: l('default'),
              menuPosition: "top",
              value: collectionPeriods.find(function (opt) {
                return opt.value === historyCollectionPeriod;
              }),
              options: collectionPeriods,
              onChange: _this.handleHistoryCollectionPeriodChange
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), historyCollectionPeriod === 'custom' && /*#__PURE__*/(0,jsx_runtime.jsx)(Calendar/* DayPicker */.h, {
              date: customCollectionDate,
              onChange: _this.handleCustomCollectionDateChange
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, {
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                primary: true,
                size: "small",
                label: l('Apply'),
                onClick: _this.handlePopoverClose
              })
            })]
          }),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
            position: "top center",
            text: l('Collect history'),
            children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(ChannelCard.historyCollectionPreview, (0,defineProperty/* default */.A)({}, ChannelCard.withoutBorder, historyCollectionPeriod === 'none')),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                size: "16",
                color: "gray",
                type: "history",
                className: classnames_default()(ChannelCard.historyCollectionIcon)
              }), historyCollectionPeriod !== 'none' && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                className: classnames_default()(ChannelCard.dateFromCollectionPeriod),
                children: _this.dateDiffFromNow
              })]
            })
          })
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
        fitted: true,
        noScroll: true,
        on: "click",
        position: "bottom center",
        ref: function ref(c) {
          _this.popover = c;
        },
        content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ChannelCard.historyCollection),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
            children: l("Collect channel's history")
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            children: l('Data will be collected from the chosen date till today:')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Calendar/* DayPicker */.h, {
            date: customCollectionDate,
            onChange: _this.handleCustomCollectionDateChange
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, {
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              size: "small",
              label: l('Collect history'),
              onClick: _this.handleCollectHistory
            })
          })]
        }),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
          position: "top center",
          text: historyStatus === 'Failed' ? l('An error has occurred during last history collection. Please try again', 'channelCard') : l('Collect history', 'channelCard'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            size: "16",
            color: historyStatus === 'Failed' ? 'amber' : 'gray',
            type: "history",
            className: classnames_default()(ChannelCard.historyCollectionIcon)
          })
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderRating", function () {
      var _profile$fields;
      var channel = _this.props.channel;
      var profile = channel.profile;
      var rating = profile.rating;
      if (!rating) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(ChannelCard.rating),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(react_rating_esm/* default */.A, {
          readonly: true,
          fractions: 2,
          initialRating: rating,
          emptySymbol: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            type: "star-full",
            color: "gray",
            size: 12
          }),
          fullSymbol: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            type: "star-full",
            color: "white",
            size: 12
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(ChannelCard.postCount),
          children: ["(", numeral_default()((_profile$fields = profile.fields) === null || _profile$fields === void 0 ? void 0 : _profile$fields.posts).format('0,0'), ")"]
        })]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderChannelStatus", function () {
      var channel = _this.props.channel;
      var status = channel.status;
      var dataByStatus = _this.getDataByStatus();
      var supportedStatuses = Object.keys(dataByStatus);
      if (!status || !supportedStatuses.includes(status)) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
        position: "top center",
        text: dataByStatus[status].text,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: dataByStatus[status].iconType,
          color: dataByStatus[status].iconColor
        })
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ChannelsCard, _PureComponent);
  return (0,createClass/* default */.A)(ChannelsCard, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var channel = this.props.channel;
      if (channel && !channel.historySupported) {
        this.setState({
          historyCollectionPeriod: 'none'
        });
      }
    }
  }, {
    key: "collectionDateAccordingToPeriod",
    get: function get() {
      switch (this.state.historyCollectionPeriod) {
        case 'none':
          return null;
        case 'one_month':
          return (0,dateUtils/* getDayMonthAgo */.y8)();
        case 'three_months':
          return (0,dateUtils/* getDayThreeMonthsAgo */.TQ)();
        case 'six_months':
          return (0,dateUtils/* getDaySixMonthsAgo */.$Q)();
        case 'year':
          return (0,dateUtils/* getDayYearAgo */.Ls)();
        case 'custom':
          return this.state.customCollectionDate;
        default:
          return null;
      }
    }
  }, {
    key: "dateDiffFromNow",
    get: function get() {
      var daysDiff = Math.round(moment_default()().diff(this.collectionDateAccordingToPeriod, 'days', true));
      var monthsDiff = Math.round(moment_default()().diff(this.collectionDateAccordingToPeriod, 'months', true));
      if (daysDiff <= 31 && !monthsDiff) {
        return "".concat(daysDiff, " ").concat(nl('day', 'days', daysDiff, 'channelsCard'));
      }
      return "".concat(monthsDiff, " ").concat(nl('month', 'months', monthsDiff, 'channelsCard'));
    }
  }, {
    key: "description",
    get: function get() {
      var channel = this.props.channel;
      var profile = channel.profile;
      var geo = profile.geo;
      if (geo && !profile.description) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          children: [geo.rawCity || geo.rawText, " ", geo.rawCountry && ", ".concat(geo.rawCountry)]
        });
      }
      return (0,truncate/* default */.A)(profile.description, 130);
    }
  }, {
    key: "renderAddChannelButton",
    value: function renderAddChannelButton() {
      var _this$props5 = this.props,
        error = _this$props5.error,
        isAdded = _this$props5.isAdded;
      if (error) {
        var _error$response, _error$response2;
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
          hoverable: true // To allow link clicks
          ,
          position: "bottom-start",
          text: this.getErrorMessage((_error$response = error.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.errorCode, (_error$response2 = error.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || l('An error has occurred, please contact our support team'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            warning: true,
            size: "small",
            label: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "warning",
                color: "white"
              })
            })
          })
        });
      }
      if (isAdded) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          secondary: true,
          size: "small",
          className: classnames_default()(ChannelCard.channelAddedButton),
          label: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: "check"
            })
          })
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(ChannelCard.addChannel),
        children: [this.renderHistoryCollectionButton(), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
          position: "top center",
          text: l('Add channel'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            size: "small",
            disabled: this.state.loading,
            label: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "plus"
              })
            }),
            onClick: this.handleAddChannel
          })
        })]
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props6 = this.props,
        channel = _this$props6.channel,
        isPreviewChannel = _this$props6.isPreviewChannel;
      var profile = channel.profile;
      var profileType = this.getProfileTypeTranslations()[channel.type] || channel.type;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(ChannelCard.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ChannelCard.leftBlock, ChannelCard[channel.type]),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Avatar/* default */.A, {
            rounded: true,
            size: AVATAR_SIZE,
            className: classnames_default()(ChannelCard.avatar),
            imageUrl: profile.avatarUrl
          }), this.renderRating()]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ChannelCard.rightBlock),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(ChannelCard.content),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(ChannelCard.header),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                className: classnames_default()(ChannelCard.name),
                title: profile.name,
                children: (0,truncate/* default */.A)(profile.name || profile.nickname, 30)
              }), isPreviewChannel ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                children: this.renderAddChannelButton()
              }) : /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                className: classnames_default()(ChannelCard.buttons),
                children: [this.renderHistoryCollectionButton(), /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
                  position: "top center",
                  text: l("Channel's page"),
                  children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
                    className: classnames_default()(ChannelCard.profileSource),
                    href: profile.url,
                    target: "_blank",
                    rel: "noopener noreferrer",
                    children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                      size: "small",
                      type: "open",
                      color: "gray"
                    })
                  })
                }), /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
                  position: "top center",
                  text: l('Delete'),
                  children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                    size: "small",
                    type: "delete",
                    color: "gray",
                    onClick: this.handleDeleteChannel
                  })
                })]
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              className: classnames_default()(ChannelCard.description),
              title: profile.description,
              children: this.description
            })]
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(ChannelCard.bottomBar),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(ChannelCard.sourceName),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
                size: 16,
                name: channel.source
              }), "".concat(channel.source, ", ").concat(profileType)]
            }), this.renderChannelStatus()]
          })]
        })]
      });
    }
  }], [{
    key: "getDerivedStateFromProps",
    value: function getDerivedStateFromProps(nextProps) {
      if (nextProps.isAdded || nextProps.error) {
        return {
          loading: false
        };
      }
      return null;
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/channels/ChannelCard/ChannelCard.js






function ChannelCard_ChannelCard_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ChannelCard_ChannelCard_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ChannelCard_ChannelCard_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ChannelCard_ChannelCard_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var ChannelCardContainer = /*#__PURE__*/function (_PureComponent) {
  function ChannelCardContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ChannelCardContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ChannelCard_ChannelCard_callSuper(this, ChannelCardContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleAddChannel", function (_ref) {
      var channelKey = _ref.channelKey,
        collectHistorySince = _ref.collectHistorySince,
        source = _ref.source;
      var themeId = _this.props.themeId;
      _this.props.addChannel({
        themeId: themeId,
        channelKey: channelKey,
        collectHistorySince: collectHistorySince,
        source: source
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCollectChannelHistory", function (_ref2) {
      var channelKey = _ref2.channelKey,
        from = _ref2.from;
      var themeId = _this.props.themeId;
      _this.props.collectChannelHistory({
        themeId: themeId,
        channelKey: channelKey,
        from: from
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDeleteChannel", function (_ref3) {
      var channelKey = _ref3.channelKey,
        source = _ref3.source;
      var themeId = _this.props.themeId;
      _this.props.deleteChannel({
        themeId: themeId,
        channelKey: channelKey,
        source: source
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ChannelCardContainer, _PureComponent);
  return (0,createClass/* default */.A)(ChannelCardContainer, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        channel = _this$props.channel,
        key = _this$props.key,
        error = _this$props.error,
        isAdded = _this$props.isAdded,
        isPreviewChannel = _this$props.isPreviewChannel;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(ChannelsCard, {
        channel: channel,
        error: error,
        isAdded: isAdded,
        isPreviewChannel: isPreviewChannel,
        onAdd: this.handleAddChannel,
        onDelete: this.handleDeleteChannel,
        onCollectHistory: this.handleCollectChannelHistory
      }, key);
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const ChannelCard_ChannelCard = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state)
  };
}, {
  addChannel: channels_model/* channelsModel */.S.action.addChannel,
  deleteChannel: channels_model/* channelsModel */.S.action.deleteChannel,
  collectChannelHistory: channels_model/* channelsModel */.S.action.collectChannelHistory
})(ChannelCardContainer));
;// CONCATENATED MODULE: ./src/containers/channels/ChannelCard/index.js

;// CONCATENATED MODULE: ./src/models/Account.ts
var AccountExpirationWarningType;
(function (AccountExpirationWarningType) {
    AccountExpirationWarningType["None"] = "none";
    AccountExpirationWarningType["TrialExpiring"] = "trialExpiring";
    AccountExpirationWarningType["PaidExpired"] = "paidExpired";
    AccountExpirationWarningType["PaidExpiring"] = "paidExpiring";
})(AccountExpirationWarningType || (AccountExpirationWarningType = {}));
var AccountOrigin;
(function (AccountOrigin) {
    AccountOrigin["Local"] = "local";
    AccountOrigin["International"] = "international";
})(AccountOrigin || (AccountOrigin = {}));
var AccountStatus;
(function (AccountStatus) {
    AccountStatus["unactive"] = "unactive";
    AccountStatus["waitingForActivation"] = "waitingForActivation";
    AccountStatus["paying"] = "paying";
    AccountStatus["trial"] = "trial";
})(AccountStatus || (AccountStatus = {}));
var CoverageType;
(function (CoverageType) {
    CoverageType["EasternEurope"] = "easternEurope";
    CoverageType["Global"] = "global";
})(CoverageType || (CoverageType = {}));

;// CONCATENATED MODULE: ./src/components/ui/Link/Link.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Link = ({"noWrap":"xBYXrXM8w5EOB5clzxQh"});
;// CONCATENATED MODULE: ./src/components/ui/Link/Link.tsx
var Link_assign = (undefined && undefined.__assign) || function () {
    Link_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Link_assign.apply(this, arguments);
};



var Link_Link = function (_a) {
    var _b;
    var className = _a.className, href = _a.href, internal = _a.internal, _c = _a.noWrap, noWrap = _c === void 0 ? true : _c, children = _a.children;
    var classNames = classnames_default()(className, (_b = {}, _b[Link.noWrap] = noWrap, _b));
    return (
    // eslint-disable-next-line react/jsx-no-target-blank
    (0,jsx_runtime.jsx)("a", Link_assign({ className: classNames, href: href, target: internal ? '_self' : '_blank', rel: internal ? '' : 'noreferrer noopener' }, { children: children })));
};
/* harmony default export */ const ui_Link_Link = (Link_Link);

;// CONCATENATED MODULE: ./src/components/ui/Link/index.ts


;// CONCATENATED MODULE: ./src/utils/formatMissingPermissionsMessage.ts
/*
    Formats the following message from API:
    "manage_pages, pages_read_engagement" -> ["Manage pages", "Pages read engagement"]
 */
var formatMissingPermissionsMessage = function (apiMessage) { return (apiMessage
    .split(', ')
    .map(function (str) { return str.charAt(0).toUpperCase() + str.slice(1).replace(/_/g, ' '); })); };

// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
;// CONCATENATED MODULE: ./src/containers/channels/styles.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const styles = ({"noBreak":"gqRh1efeX4N7IQHDGqKv","list":"x8wYARshAxJhSt9JLeT0","disk":"iqmShFAQbfpnxmLf_tQt","missingPermissions":"BsX5UkvIIcOQjbW3GLR2"});
;// CONCATENATED MODULE: ./src/containers/channels/const.tsx
var const_assign = (undefined && undefined.__assign) || function () {
    const_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return const_assign.apply(this, arguments);
};

/* eslint-disable max-len */








var SOCIAL_ACCOUNTS_AUTHORIZATION_LINK = 'https://app.youscan.io/settings/social_accounts';
var renderIcon = function (path) { return ((0,jsx_runtime.jsx)("img", { alt: "", style: { width: 'inherit', height: 'inherit' }, src: path })); };
/*
    By default, choose `CoverageType.Global` when needed
 */
var getTopChannels = function () {
    var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3;
    return [
        {
            title: 'Facebook',
            id: 'facebook',
            icon: renderIcon('/static/images/source-icons/facebook.svg'),
            collectionInfo: (_a = {},
                _a[CoverageType.Global] = [
                    {
                        channelType: l('Any public page (public figure, business, brand, or organization)', 'channelTermsFacebook'),
                        dataType: l('Posts feed and comments to it', 'channelTermsFacebook'),
                    },
                    {
                        channelType: l('Owned page', 'channelTermsFacebook'),
                        dataType: l('Posts feed with comments to them, reviews, @tagged feed (publications where the profile was mentioned: on the photo; in the text of the post along with all comments related to this post; in the comment)', 'channelTermsFacebook'),
                    }
                ],
                _a[CoverageType.EasternEurope] = [
                    {
                        channelType: l('Any public page or group', 'channelTermsFacebook'),
                        dataType: l('Posts, comments, and reposts made by the page or group', 'channelTermsFacebook'),
                    },
                    {
                        channelType: l('Owned business profile', 'channelTermsFacebook'),
                        dataType: l('Posts feed with comments to them, reviews, @tagged feed (publications where the profile was mentioned: on the photo; in the text of the post along with all comments related to this post; in the comment)', 'channelTermsFacebook'),
                    },
                    {
                        channelType: l('User', 'channelTermsFacebook'),
                        dataType: l('Posts (made by the user or 3-rd party users), comments, and reposts made by the user', 'channelTermsFacebook'),
                    }
                ],
                _a),
            collectionTerms: (_b = {},
                _b[CoverageType.Global] = (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('Before adding a Facebook channel, you need to', 'channelTermsFacebook'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('any Facebook Page in YouScan.', 'channelTermsFacebook')] }), (0,jsx_runtime.jsxs)("li", { children: [l('To monitor owned Facebook page, you need to', 'channelTermsFacebook'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('that particular Facebook Page in YouScan.', 'channelTermsFacebook')] }), (0,jsx_runtime.jsx)("li", { children: l('All data except for owned posts is anonymized: we will not collect any information about users\' bio, geo, link, subscribers, photo, etc. We also won\'t count these anonymized authors in the Total Authors number in the Analytics.', 'channelTermsFacebook') })] }))] }),
                _b[CoverageType.EasternEurope] = (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('To monitor any Facebook channel, you need to', 'channelTermsFacebook'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('any Facebook Page in YouScan.', 'channelTermsFacebook')] }), (0,jsx_runtime.jsxs)("li", { children: [l('To monitor owned Facebook page, you need to', 'channelTermsFacebook'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('that particular Facebook Page in YouScan.', 'channelTermsFacebook')] }), (0,jsx_runtime.jsx)("li", { children: l('All data except for owned posts is anonymized: we will not collect any information about users\' bio, geo, link, subscribers, photo, etc. We also won\'t count these anonymized authors in the Total Authors number in the Analytics.', 'channelTermsFacebook') })] }))] }),
                _b),
        },
        {
            title: 'Instagram',
            id: 'instagram',
            icon: renderIcon('/static/images/source-icons/instagram.svg'),
            collectionInfo: (_c = {},
                _c[CoverageType.Global] = [
                    {
                        channelType: l('Any Business or Creator page', 'channelTermsInstagram'),
                        dataType: l('Post feed', 'channelTermsInstagram'),
                    },
                    {
                        channelType: l('Owned Business or Creator page', 'channelTermsInstagram'),
                        dataType: l('Post feed, comments, stories, @tagged feed (publications where the profile was mentioned: on the photo; in the text of the post along with all comments related to this post; in the comment)', 'channelTermsInstagram'),
                    }
                ],
                _c),
            collectionTerms: (_d = {},
                _d[CoverageType.Global] = (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('To monitor any Instagram page, you need to', 'channelTermsInstagram'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('any Facebook Page connected to an Instagram Business Account in YouScan', 'channelTermsInstagram')] }), (0,jsx_runtime.jsxs)("li", { children: [l('To monitor an owned Instagram page, you need to', 'channelTermsInstagram'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('the particular Facebook Page connected with that owned Instagram Business Account in YouScan.', 'channelTermsInstagram')] })] }))] }),
                _d),
        },
        {
            title: 'Ads Manager',
            id: 'meta-ads-manager',
            icon: renderIcon('/static/images/source-icons/meta-ads-manager.svg'),
            collectionInfo: (_e = {},
                _e[CoverageType.Global] = [
                    {
                        channelType: l('Meta Ads Account', 'channelTermsMetaAds'),
                        dataType: l('Dark (not published) Instagram and Facebook posts; comments related to sponsored posts', 'channelTermsMetaAds'),
                    }
                ],
                _e[CoverageType.EasternEurope] = [
                    {
                        channelType: l('Meta Ads Account', 'channelTermsMetaAds'),
                        dataType: l('Dark (not published) Instagram and Facebook posts; comments related to sponsored posts', 'channelTermsMetaAds'),
                    }
                ],
                _e),
            collectionTerms: (_f = {},
                _f[CoverageType.Global] = (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('Before adding an Ads Manager channel, you need to', 'channelTermsMetaAds'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize a connected Facebook Page in YouScan', 'channelTermsMetaAds') }))] }), (0,jsx_runtime.jsxs)("li", { children: [l('You can use both', 'channelTermsMetaAds'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", { children: "https://adsmanager.facebook.com/adsmanager" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and', 'channelTermsMetaAds'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", { children: "https://business.facebook.com/adsmanager" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('links', 'channelTermsMetaAds')] })] }))] }),
                _f[CoverageType.EasternEurope] = (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('Before adding an Ads Manager channel, you need to', 'channelTermsMetaAds'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize a connected Facebook Page in YouScan', 'channelTermsMetaAds') }))] }), (0,jsx_runtime.jsxs)("li", { children: [l('You can use both', 'channelTermsMetaAds'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", { children: "https://adsmanager.facebook.com/adsmanager" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and', 'channelTermsMetaAds'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", { children: "https://business.facebook.com/adsmanager" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('links', 'channelTermsMetaAds')] })] }))] }),
                _f),
        },
        {
            title: 'Threads',
            id: 'threads',
            icon: renderIcon('/static/images/source-icons/threads.svg'),
            collectionInfo: (_g = {},
                _g[CoverageType.Global] = [
                    {
                        channelType: l('User', 'channelTermsTwitter'),
                        dataType: l('All posts, replies and reposts from this user'),
                    }
                ],
                _g),
        },
        {
            title: 'Telegram',
            id: 'telegram',
            icon: renderIcon('/static/images/source-icons/telegram.svg'),
            collectionInfo: (_h = {},
                _h[CoverageType.Global] = [
                    {
                        channelType: l('Any public Telegram-channel', 'channelTermsTelegram'),
                        dataType: l('Posts and related comments', 'channelTermsTelegram'),
                    }
                ],
                _h),
        },
        {
            title: 'YouTube',
            id: 'youtube',
            icon: renderIcon('/static/images/source-icons/youtube.svg'),
            collectionInfo: (_j = {},
                _j[CoverageType.Global] = [
                    {
                        channelType: l('YouTube channel page', 'channelTermsYoutube'),
                        dataType: l('Videos, top-level comments (without replies to them)', 'channelTermsYoutube'),
                    },
                    {
                        channelType: l('Video', 'channelTermsYoutube'),
                        dataType: l('One-time upload of all top-level comments, along with threads for the selected time period', 'channelTermsYoutube'),
                    }
                ],
                _j),
        },
        {
            title: 'Twitter',
            id: 'twitter',
            icon: renderIcon('/static/images/source-icons/twitter.svg'),
            collectionInfo: (_k = {},
                _k[CoverageType.Global] = [
                    {
                        channelType: l('User', 'channelTermsTwitter'),
                        dataType: l('All tweets from the user feed', 'channelTermsTwitter'),
                    }
                ],
                _k),
        },
        {
            title: 'LinkedIn',
            id: 'linkedin',
            icon: renderIcon('/static/images/source-icons/linkedin.svg'),
            collectionInfo: (_l = {},
                _l[CoverageType.Global] = [
                    {
                        channelType: l('Page of any company', 'channelTermsLinkedIn'),
                        dataType: l('Posts', 'channelTermsLinkedIn'),
                    },
                    {
                        channelType: l('Owned company page', 'channelTermsLinkedIn'),
                        dataType: l('Posts, comments, @tagged posts and comments to those posts', 'channelTermsLinkedIn'),
                    }
                ],
                _l),
            collectionTerms: (_m = {},
                _m[CoverageType.Global] = (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('To monitor an owned LinkedIn page,', 'channelTermsLinkedIn'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('this page in YouScan.', 'channelTermsLinkedIn')] }), (0,jsx_runtime.jsxs)("li", { children: [l('To monitor a page of any company in LinkedIn,', 'channelTermsLinkedIn'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('authorize') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('any LinkedIn account in YouScan.', 'channelTermsLinkedIn')] })] }))] }),
                _m),
        },
        {
            title: 'TikTok',
            id: 'tiktok',
            icon: renderIcon('/static/images/source-icons/tiktok.svg'),
            collectionInfo: (_o = {},
                _o[CoverageType.Global] = [
                    {
                        channelType: l('Any user or business page', 'channelTermsTikTok'),
                        dataType: l('All posts and comments from the page', 'channelTermsTikTok'),
                    }
                ],
                _o[CoverageType.EasternEurope] = [
                    {
                        channelType: l('Any user or business page', 'channelTermsTikTok'),
                        dataType: l('All posts and comments from the page', 'channelTermsTikTok'),
                    }
                ],
                _o),
        },
        {
            title: 'App Store',
            id: 'appstore',
            icon: renderIcon('/static/images/source-icons/app-store.svg'),
            collectionInfo: (_p = {},
                _p[CoverageType.Global] = [
                    {
                        channelType: l('Any application', 'channelTermsAppStore'),
                        dataType: l('Application reviews (depends on localization)', 'channelTermsAppStore'),
                    }
                ],
                _p),
            collectionTerms: (_q = {},
                _q[CoverageType.Global] = [
                    (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsx)("li", { children: l('Localization is usually specified in the application link and you can see it in YouScan in the channel`s name in square brackets: [us], [es], etc.', 'channelTermsAppStore') }), (0,jsx_runtime.jsx)("li", { children: l('Adding an App Store channel with specific localization means that you will get application reviews from people in the country of localization. You also may change localization in the application link if you need the data from the audience in another country.', 'channelTermsAppStore') })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), l('For example:'), (0,jsx_runtime.jsxs)("ul", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('U.S.', 'channelTermsAppStore'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "-", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://apps.apple.com/us/app/speedtest-by-ookla/id300704847" }, { children: "https://apps.apple.com/us/app/speedtest-by-ookla/id300704847" }))] }), (0,jsx_runtime.jsxs)("li", { children: [l('France', 'channelTermsAppStore'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "-", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://apps.apple.com/fr/app/speedtest-by-ookla/id300704847" }, { children: "https://apps.apple.com/fr/app/speedtest-by-ookla/id300704847" }))] })] }))] }, 1)
                ],
                _q),
        },
        {
            title: 'Google Play',
            id: 'googleplay',
            icon: renderIcon('/static/images/source-icons/google-play.svg'),
            collectionInfo: (_r = {},
                _r[CoverageType.Global] = [
                    {
                        channelType: l('Any application', 'channelTermsGooglePlay'),
                        dataType: l('Application reviews (depends on localization)', 'channelTermsGooglePlay'),
                    }
                ],
                _r),
            collectionTerms: (_s = {},
                _s[CoverageType.Global] = [
                    (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsx)("li", { children: l('Google Play determines localization as the device interface language of the user. In YouScan you may see localization in the channel\'s name in square brackets - for example [us], [es] - and choose relevant.', 'channelTermsGooglePlay') }), (0,jsx_runtime.jsx)("li", { children: l('Adding a Google Play channel with specific localization means that you will get application reviews from people with the device language of this localization.', 'channelTermsGooglePlay') })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), l('For example:'), (0,jsx_runtime.jsxs)("ul", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsxs)("li", { children: [l('Italy', 'channelTermsGooglePlay'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "-", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://play.google.com/store/apps/details?id=com.instagram.android&hl=it" }, { children: "https://play.google.com/store/apps/details?id=com.instagram.android&hl=it" }))] }), (0,jsx_runtime.jsxs)("li", { children: [l('Poland', 'channelTermsGooglePlay'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "-", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://play.google.com/store/apps/details?id=com.instagram.android&hl=pl" }, { children: "https://play.google.com/store/apps/details?id=com.instagram.android&hl=pl" }))] })] }))] }, 1)
                ],
                _s),
        },
        {
            title: 'Google Maps',
            id: 'googlemaps',
            icon: renderIcon('/static/images/source-icons/google-maps.svg'),
            collectionInfo: (_t = {},
                _t[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Location', 'channelTermsGoogleMaps'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.google.com/maps/place/central+park/@40.7714593,-74.0022538,14z/data=!4m17!1m8!3m7!1s0x89c2589a018531e3:0xb9df1f7387a94119!2z0KbQtdC90YLRgNCw0LvRjNC90LjQuSDQv9Cw0YDQug!8m2!3d40.7825547!4d-73.9655834!15sChVjZW50cmFsIHBhcmsgbmV3IHlvcmtaFyIVY2VudHJhbCBwYXJrIG5ldyB5b3JrkgEEcGFya-ABAA!16zL20vMDljN3Y!3m7!1s0x89c2589a018531e3:0xb9df1f7387a94119!8m2!3d40.7825547!4d-73.9655834!9m1!1b1!16zL20vMDljN3Y" }, { children: "Central Park" })), ")"] }))] }),
                        dataType: l('Location reviews, owners` replies (if it is a business)', 'channelTermsGoogleMaps'),
                    },
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Business or institution with several locations', 'channelTermsGoogleMaps'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.google.com/maps/search/Starbucks/@40.756694,-73.9880817,17z/data=!3m1!4b1" }, { children: "Starbucks" })), ")"] }))] }),
                        dataType: l('Location reviews, owners` replies', 'channelTermsGoogleMaps'),
                    }
                ],
                _t),
            collectionTerms: (_u = {},
                _u[CoverageType.Global] = [
                    (0,jsx_runtime.jsxs)("span", { children: [l('Important:'), (0,jsx_runtime.jsx)("br", {}), l('When you add a business or institution with several locations'), (0,jsx_runtime.jsxs)("ol", const_assign({ className: classnames_default()(styles.list, styles.disk) }, { children: [(0,jsx_runtime.jsx)("li", { children: l('results may depend on the zoom of the map (so you can play with it to find the optimal area with needed locations)', 'channelTermsGoogleMaps') }), (0,jsx_runtime.jsx)("li", { children: l('it may take time to load all the results, sometimes (so be ready to wait up to 1 min)', 'channelTermsGoogleMaps') })] }))] }, 1)
                ],
                _u),
        },
        {
            title: 'Pinterest',
            id: 'pinterest',
            icon: renderIcon('/static/images/source-icons/pinterest.svg'),
            collectionInfo: (_v = {},
                _v[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('User page', 'channelTermsPinterest'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.pinterest.com/hiltonhotels/" }, { children: "Hilton Hotels" })), ")"] }))] }),
                        dataType: l('Pins, story pins, and repins (reposts) from this user', 'channelTermsPinterest'),
                    }
                ],
                _v),
        },
        {
            title: 'Tripadvisor',
            id: 'tripadvisor',
            icon: renderIcon('/static/images/source-icons/tripadvisor.svg'),
            collectionInfo: (_w = {},
                _w[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Location page', 'channelTermsTripadvisor'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.tripadvisor.ie/Restaurant_Review-g186605-d1587892-Reviews-Hard_Rock_Cafe-Dublin_County_Dublin.html" }, { children: "Hard Rock Cafe" })), ")"] }))] }),
                        dataType: l('Reviews', 'channelTermsTripadvisor'),
                    }
                ],
                _w),
        },
        {
            title: 'Trustpilot',
            id: 'trustpilot',
            icon: renderIcon('/static/images/source-icons/trustpilot.svg'),
            collectionInfo: (_x = {},
                _x[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Business page', 'channelTermsTrustpilot'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.trustpilot.com/review/ajax.systems" }, { children: "Ajax Systems" })), ")"] }))] }),
                        dataType: l('Reviews and business pages replies', 'channelTermsTrustpilot'),
                    }
                ],
                _x),
        },
        {
            title: 'Booking',
            id: 'booking',
            icon: renderIcon('/static/images/source-icons/booking.svg'),
            collectionInfo: (_y = {},
                _y[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Hotel page', 'channelTermsBooking'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.booking.com/hotel/us/park-lane-new-york.en-gb.html" }, { children: "Park Lane New York" })), ")"] }))] }),
                        dataType: l('Reviews and hotel administration replies', 'channelTermsBooking'),
                    }
                ],
                _y),
        },
        {
            title: 'Amazon',
            id: 'amazon',
            icon: renderIcon('/static/images/source-icons/amazon.svg'),
            collectionInfo: (_z = {},
                _z[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Product page', 'channelTermsAmazon'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.amazon.com/Apple-AirPods-Charging-Latest-Model/dp/B07PXGQC1Q/ref=lp_16225009011_1_1" }, { children: "Apple AirPods" })), ")"] }))] }),
                        dataType: l('Product reviews (depends on localization and ASIN)', 'channelTermsAmazon'),
                    }
                ],
                _z),
        },
        {
            title: 'Yelp',
            id: 'yelp',
            icon: renderIcon('/static/images/source-icons/yelp.svg'),
            collectionInfo: (_0 = {},
                _0[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Business page', 'channelTermsYelp'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.yelp.com/biz/starbucks-san-francisco-166" }, { children: "Starbucks" })), ")"] }))] }),
                        dataType: l('Reviews', 'channelTermsYelp'),
                    }
                ],
                _0),
        },
        {
            title: 'Twitch',
            id: 'twitch',
            icon: renderIcon('/static/images/source-icons/twitch.svg'),
            collectionInfo: (_1 = {},
                _1[CoverageType.Global] = [
                    {
                        channelType: l('User page', 'channelTermsTwitch'),
                        dataType: l('Live streams, saved videos', 'channelTermsTwitch'),
                    },
                    {
                        channelType: l('Video', 'channelTermsTwitch'),
                        dataType: l('Saved live chat', 'channelTermsTwitch'),
                    }
                ],
                _1),
        },
        {
            title: 'OpenTable',
            id: 'opentable',
            icon: renderIcon('/static/images/source-icons/opentable.svg'),
            collectionInfo: (_2 = {},
                _2[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Restaurant page', 'channelTermsOpenTable'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.opentable.com/r/night-kitchen-berlin" }, { children: "Night Kitchen" })), ")"] }))] }),
                        dataType: l('Reviews and administration replies', 'channelTermsOpenTable'),
                    }
                ],
                _2),
        },
        {
            title: 'Expedia',
            id: 'expedia',
            icon: renderIcon('/static/images/source-icons/expedia.svg'),
            collectionInfo: (_3 = {},
                _3[CoverageType.Global] = [
                    {
                        channelType: (0,jsx_runtime.jsxs)("span", { children: [l('Hotel page', 'channelTermsExpedia'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", const_assign({ className: styles.noBreak }, { children: ["(", l('for example:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: "https://www.expedia.com/New-York-Hotels-1-Hotel-Central-Park.h9215515.Hotel-Information" }, { children: "1 Hotel Central Park" })), ")"] }))] }),
                        dataType: l('Reviews and hotel administration replies', 'channelTermsExpedia'),
                    }
                ],
                _3),
        }
    ];
};
var getErrorMessages = function (error) {
    var errorCode = error === null || error === void 0 ? void 0 : error.errorCode;
    var message = error === null || error === void 0 ? void 0 : error.message;
    var ERROR_CODE_MESSAGES = {
        HOST_NOT_SUPPORTED: {
            title: l('Unsupported website: please verify the URL'),
            body: l('The website in the provided URL is not supported. Please make sure the link leads to a compatible platform'),
        },
        INVALID_URL: {
            title: l('Invalid URL: check for errors'),
            body: l('Given URL is badly formed or contains invalid characters'),
        },
        PROFILE_PARSE_FAILED: {
            title: l('Invalid profile URL: check again'),
            body: l('We could not find any profile by given URL, please make sure that it\'s valid'),
        },
        POOR_INTEGRATION: {
            title: l('Missing Social account permissions'),
            body: (0,jsx_runtime.jsxs)("span", { children: [l('You cannot add this page as a channel because the following permission(s) are missing.'), message && ((0,jsx_runtime.jsx)("ul", const_assign({ className: styles.missingPermissions }, { children: formatMissingPermissionsMessage(message).map(function (permission) { return ((0,jsx_runtime.jsx)("li", { children: permission }, permission)); }) }))), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('You can grant access to specific pages and grant permissions in '), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ href: constants/* FACEBOOK_BUSINESS_INTEGRATION_LINK */.CH }, { children: l('Business Integrations settings') })), l(' in your Facebook account.')] }),
        },
        NO_INTEGRATIONS: {
            title: l('Missing Social account authorization'),
            body: (0,jsx_runtime.jsxs)("span", { children: [l('You can add LinkedIn and Facebook Pages, Instagram accounts of "Business" or "Creator" types after authorizing them.', 'socialMediaChannels'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('Please add authorization in the ', 'socialMediaChannels'), (0,jsx_runtime.jsx)(ui_Link_Link, const_assign({ internal: true, href: SOCIAL_ACCOUNTS_AUTHORIZATION_LINK }, { children: l('Social accounts', 'socialMediaChannels') })), l(' menu.', 'socialMediaChannels')] }),
        },
    };
    return (ERROR_CODE_MESSAGES[errorCode] || {
        title: l('Please try again or contact our support team'),
        body: l('An error has occurred'),
    });
};

;// CONCATENATED MODULE: ./src/containers/channels/PreviewChannels/components/PreviewChannels.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_PreviewChannels = ({"overlayedBlock":"ygKYFMvltMVs08_LhDHK","flexCenter":"HlSlFvTcTvWxyHLKDiDM","smartFeature":"pU3TnNu9yhDF3KMa9nFJ","tag":"XMPJRFiDuR1AHhE6sBFH","visibleScrollBar":"HTmld27TuqN_6S_sGN9H","hiddenScrollBar":"V66sZFdLCMYD36gz3rPK","content":"iYrnJ5YfoL4bJ2oUEVIW","emptyState":"mwVdunrpEWz9khPZdBH8","channels":"Q8gV3RiSNJly_ZJAEjs1","supportedSources":"yVq4uC876aAvyeXTgcWN","source":"f33yLHDuSWBUFjyQaZsR","channelsFound":"ZC0aBHgSK773Ixvk78VU"});
;// CONCATENATED MODULE: ./src/containers/channels/PreviewChannels/components/PreviewChannels.js














var PREVIEW_CHANNELS_ROW_HEIGHT = 158;
var PreviewChannels = function PreviewChannels(_ref) {
  var previewError = _ref.previewError,
    loading = _ref.loading,
    previewChannels = _ref.previewChannels,
    channelKeys = _ref.channelKeys,
    channelsError = _ref.channelsError;
  var renderChannel = function renderChannel(_ref2) {
    var index = _ref2.index,
      style = _ref2.style,
      key = _ref2.key;
    var previewChannel = previewChannels[index];
    return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      style: style,
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ChannelCard_ChannelCard, {
        isPreviewChannel: true,
        channel: previewChannel,
        error: channelsError[previewChannel.key],
        isAdded: channelKeys.includes(previewChannel.key)
      }, previewChannel.key), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
    }, key);
  };
  if (previewError) {
    var errorMessage = getErrorMessages(previewError === null || previewError === void 0 ? void 0 : previewError.data);
    return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(components_PreviewChannels.content),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
        image: "/static/images/channels-error.svg",
        title: errorMessage.title,
        message: errorMessage.body
      })
    });
  }
  var isEmpty = !previewChannels;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(Loader/* default */.A, {
    className: classnames_default()(components_PreviewChannels.content, (0,defineProperty/* default */.A)({}, components_PreviewChannels.emptyState, isEmpty)),
    loaded: !loading,
    empty: isEmpty,
    emptyStateImage: "/static/images/empty_channels.svg",
    emptyStateMessage: l('Channels preview'),
    children: [!isEmpty && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: components_PreviewChannels.channelsFound,
      children: sprintf(nl('%d channel found', '%d channels found', previewChannels === null || previewChannels === void 0 ? void 0 : previewChannels.length), previewChannels === null || previewChannels === void 0 ? void 0 : previewChannels.length)
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: components_PreviewChannels.channels,
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(dist_es/* AutoSizer */.t$, {
        children: function children(_ref3) {
          var width = _ref3.width,
            height = _ref3.height;
          return /*#__PURE__*/(0,jsx_runtime.jsx)(dist_es/* List */.B8, {
            scrollToIndex: 0,
            rowCount: previewChannels === null || previewChannels === void 0 ? void 0 : previewChannels.length,
            rowHeight: PREVIEW_CHANNELS_ROW_HEIGHT,
            width: width,
            overscanRowCount: 10,
            height: height,
            rowRenderer: renderChannel
          });
        }
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)(ExplanationText/* default */.A, {
      className: components_PreviewChannels.explanation,
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        type: "info-outline"
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: l('Mentions from added channels will appear gradually in your topic but' + ' you can collect channel\'s history for any period')
      })]
    })]
  });
};
/* harmony default export */ const PreviewChannels_components_PreviewChannels = (/*#__PURE__*/(0,react.memo)(PreviewChannels));
;// CONCATENATED MODULE: ./src/containers/channels/PreviewChannels/PreviewChannels.js





function PreviewChannels_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, PreviewChannels_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function PreviewChannels_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (PreviewChannels_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }







var PreviewChannelsContainer = /*#__PURE__*/function (_PureComponent) {
  function PreviewChannelsContainer() {
    (0,classCallCheck/* default */.A)(this, PreviewChannelsContainer);
    return PreviewChannels_callSuper(this, PreviewChannelsContainer, arguments);
  }
  (0,inherits/* default */.A)(PreviewChannelsContainer, _PureComponent);
  return (0,createClass/* default */.A)(PreviewChannelsContainer, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        channelsError = _this$props.channelsError,
        previewError = _this$props.previewError,
        channels = _this$props.channels,
        loading = _this$props.loading,
        previewChannels = _this$props.previewChannels,
        coverage = _this$props.coverage;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(PreviewChannels_components_PreviewChannels, {
        coverage: coverage,
        loading: loading,
        channelsError: channelsError,
        previewError: previewError,
        channelKeys: channels && channels.map(function (channel) {
          return channel.key;
        }),
        previewChannels: previewChannels
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const PreviewChannels_PreviewChannels = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    previewChannels: getPreviewChannels(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    channels: getChannels(state),
    loading: isPreviewChannelsLoading(state),
    previewError: getPreviewChannelsError(state),
    channelsError: getErroredChannels(state),
    coverage: (0,account_selectors/* getAccountCoverage */.Om)(state)
  };
})(PreviewChannelsContainer));
;// CONCATENATED MODULE: ./src/containers/channels/PreviewChannels/index.js

;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsModal/AddChannelsModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AddChannelsModal_AddChannelsModal = ({"overlayedBlock":"ZM0GOKwS2dFKGfQ3njej","flexCenter":"ubSDJF3t2Jl5fkLFKCoi","smartFeature":"g55C4EZufaAMSgd8vojj","tag":"CjfzKfcR0QgUznkXolEw","visibleScrollBar":"hxfbmdYMDnc9Dg3i5C7N","hiddenScrollBar":"DRFywCPqGTXDQZQCAiC1","container":"t8LUbzTnq0UCVOCa7h7l","channelInfo":"uzeEGuqOc1Xeu6ICKKp8"});
;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsModal/AddChannelsModal.js











var AddChannelsModal_MODAL_MAX_WIDTH = 1044;
var AddChannelsModal = function AddChannelsModal(_ref) {
  var show = _ref.show,
    handleHide = _ref.handleHide,
    url = _ref.url,
    clearPreviewChannelsState = _ref.clearPreviewChannelsState,
    fetchPreviewChannels = _ref.fetchPreviewChannels;
  (0,react.useEffect)(function () {
    fetchPreviewChannels({
      url: url
    });
    return clearPreviewChannelsState;
  }, []);
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(Modal/* default */.A, {
    className: AddChannelsModal_AddChannelsModal.container,
    withCloseIcon: true,
    isOpen: show,
    maxWidth: AddChannelsModal_MODAL_MAX_WIDTH,
    onRequestClose: handleHide,
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
      children: l('Adding new channel')
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(PreviewChannels_PreviewChannels, {})]
  });
};
/* harmony default export */ const modals_AddChannelsModal_AddChannelsModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('addChannel'), (0,react_redux/* connect */.Ng)(function () {}, {
  fetchPreviewChannels: channels_model/* channelsModel */.S.action.fetchPreviewChannels,
  clearPreviewChannelsState: channels_model/* channelsModel */.S.action.clearPreviewChannelsState
}))(AddChannelsModal));
;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsModal/index.js

// EXTERNAL MODULE: ./src/state/imagesDashboard/selectors.ts
var imagesDashboard_selectors = __webpack_require__("FnmF");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/utils/translations/logoTranslations.ts
var logoTranslations = __webpack_require__("U8ND");
;// CONCATENATED MODULE: ./src/containers/modals/LogoPickerModal/LogoPickerModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const LogoPickerModal = ({"overlayedBlock":"zIZWhF3Hb8FJ1IzE3Naz","flexCenter":"v22pyi6XjaX1VstOiR2B","smartFeature":"ORYT0fj8nTns6_KcfcEg","tag":"cl4OaBkGQ9Dtbi5HwQI9","visibleScrollBar":"G1JG0cHQxVFo2vpN3mrV","hiddenScrollBar":"TRxAo4tNC_o1eAim4es6","base":"D7J3HSqNvrfzmiKLgPy4","content":"PNeyJptiO01kMMqVzzPz","logos":"krpiX4l195qbF4U7mP6A","emptyState":"QPXoz_IJTrLf1diVdeLL","suggestionFocused":"QEJNM0wsZl0lWMNG_Lf0","footer":"myLTL1yjfar4Hmzwh9BI","selectionWarning":"cTiWJwhsdQaJLm0R7mgL","shake":"qMcTqieUoNZBp0AlRSnw"});
;// CONCATENATED MODULE: ./src/containers/modals/LogoPickerModal/LogoPickerModal.tsx
var LogoPickerModal_assign = (undefined && undefined.__assign) || function () {
    LogoPickerModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LogoPickerModal_assign.apply(this, arguments);
};
var LogoPickerModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

















var SELECTED_LOGOS_LIMIT = 10;
var LogoPickerModal_LogoPickerModal = function (_a) {
    var _b;
    var show = _a.show, selected = _a.selected, logos = _a.logos, handleHide = _a.handleHide, onChange = _a.onChange;
    var _c = LogoPickerModal_read((0,react.useState)(!selected.length ? [] : selected.map(function (logo) { return logo.id; })), 2), selectedLogos = _c[0], setSelectedLogos = _c[1];
    var _d = LogoPickerModal_read((0,react.useState)(false), 2), showSelectionWarning = _d[0], setShowSelectionWarning = _d[1];
    (0,react.useEffect)(function () {
        if ((!selectedLogos && selected) || !show) {
            setSelectedLogos(!selected.length ? [] : selected.map(function (logo) { return logo.id; }));
        }
    }, [show, selected]);
    var handleLogoChange = function (logo) {
        var logoSelected = selectedLogos[logo.id] !== undefined
            ? selectedLogos[logo.id]
            : selectedLogos.includes(logo.id);
        if (selectedLogos.length === 10) {
            handleSelectionError();
        }
        setSelectedLogos(!logoSelected && selectedLogos.length !== 10
            ? selectedLogos.concat(logo.id)
            : selectedLogos.filter(function (selectedLogo) { return selectedLogo !== logo.id; }));
    };
    var handleSelectionError = function () {
        setShowSelectionWarning(true);
        setTimeout(function () {
            setShowSelectionWarning(false);
        }, 500);
    };
    var handleApply = function () {
        onChange({ logos: selectedLogos });
        setTimeout(handleHide, 200);
    };
    var formatLogos = function (l) {
        return l.reduce(function (formattedLogos, logo) {
            var logoTopics = logo.topics;
            return formattedLogos.concat(logoTopics === null || logoTopics === void 0 ? void 0 : logoTopics.map(function (topic) {
                var id = "".concat(logo.label, "_in_").concat(topic.id);
                return ({
                    id: id,
                    name: "".concat((0,logoTranslations/* translateLogo */.I)(logo.label), " | ").concat(topic.name),
                    themeName: topic.name,
                    selected: Boolean(selectedLogos === null || selectedLogos === void 0 ? void 0 : selectedLogos.includes(id)),
                });
            }));
        }, []);
    };
    var renderSuggestion = function (logo, focused) {
        var _a;
        return ((0,jsx_runtime.jsx)("div", LogoPickerModal_assign({ className: classnames_default()((_a = {}, _a[LogoPickerModal.suggestionFocused] = focused, _a)) }, { children: (0,jsx_runtime.jsx)(Checkbox/* default */.A, { isControlled: true, label: logo.name, checked: selectedLogos.includes(logo.id), value: logo.id }, logo.id) })));
    };
    var formattedLogos = formatLogos(logos);
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, LogoPickerModal_assign({ isOpen: show, title: l('Select logos to compare'), className: classnames_default()(LogoPickerModal.base), onRequestClose: handleHide }, { children: [(0,jsx_runtime.jsx)("div", LogoPickerModal_assign({ className: classnames_default()(LogoPickerModal.content) }, { children: (0,jsx_runtime.jsx)(SearchableListMutable, { autoFocus: true, isLongList: true, placeholder: l('Search'), className: classnames_default()(LogoPickerModal.logos), suggestions: Mutable/* Mutable */.rV.from(formattedLogos), sortingProperties: { keys: [function (item) { return "".concat(!item.selected, " ").concat(item.name); }] }, virtualListProps: { width: 430 }, emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(LogoPickerModal.emptyState), image: "/static/images/empty_themes.svg", title: l('No logos were found'), message: l('There are no logos with this name') }), renderItem: renderSuggestion, onSelect: handleLogoChange }) })), (0,jsx_runtime.jsxs)("div", LogoPickerModal_assign({ className: classnames_default()(LogoPickerModal.footer) }, { children: [(0,jsx_runtime.jsx)("span", LogoPickerModal_assign({ className: classnames_default()((_b = {}, _b[LogoPickerModal.selectionWarning] = showSelectionWarning, _b)) }, { children: formattedLogos.length > SELECTED_LOGOS_LIMIT
                            ? sprintf(l('You can select up to %s logos'), SELECTED_LOGOS_LIMIT)
                            : null })), (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleHide }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Apply'), onClick: handleApply })] })] }))] })));
};
/* harmony default export */ const modals_LogoPickerModal_LogoPickerModal = ((0,redux/* compose */.Zz)(react.memo, (0,connectModal/* default */.A)('logoPickerModal'), (0,react_redux/* connect */.Ng)(function (state) { return ({
    logos: (0,account_selectors/* getAccountLogos */.gW)(state),
    selected: (0,imagesDashboard_selectors/* getCompareLogosWith */.kU)(state),
}); }))(LogoPickerModal_LogoPickerModal));

;// CONCATENATED MODULE: ./src/containers/modals/LogoPickerModal/index.ts


// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var stats_selectors = __webpack_require__("K9kJ");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/utils.ts
var utils_assign = (undefined && undefined.__assign) || function () {
    utils_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return utils_assign.apply(this, arguments);
};
var utils_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var utils_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
var getSeries = function (visualTags) {
    var MAX_RADIUS = 8;
    var MIN_RADIUS = 6;
    var maxTotal = Math.max.apply(Math, utils_spreadArray([], utils_read(visualTags.map(function (viTag) { return Math.max.apply(Math, utils_spreadArray([], utils_read(viTag.logos.map(function (stats) { return stats.total; })), false)); })), false));
    var minTotal = Math.min.apply(Math, utils_spreadArray([], utils_read(visualTags.map(function (viTag) { return Math.min.apply(Math, utils_spreadArray([], utils_read(viTag.logos.map(function (stats) { return stats.total; })), false)); })), false));
    var calculateRadius = function (total) { return MIN_RADIUS + ((total - minTotal) / (maxTotal - minTotal)) * (MAX_RADIUS - MIN_RADIUS); };
    return visualTags.map(function (viTag, index) { return ({
        name: viTag.label,
        data: viTag.logos.map(function (stats) { return (utils_assign({ name: stats.logo.label, tagName: viTag.label, type: VI_TAG_TYPES_TO_FILTER_TYPES[viTag.tagType], x: stats.percentage, y: visualTags.length - 1 - index, topicId: stats.logo.themeId, uniqueImages: stats.total, withTag: stats.withTag }, (viTag.logos.length > 1 ? {
            marker: {
                radius: calculateRadius(stats.total),
            },
        } : {}))); }),
    }); });
};
var LOGO_COLORS = [
    '#00A79D',
    '#FF7583',
    '#FFD662',
    '#EBA3CC',
    '#7A82AB'
];
var getDefaultViTagsQueryParams = function () { return ({
    compareVI_imagePeople: [],
    compareVI_imageObject: [],
    compareVI_imageScene: [],
    compareVI_imageActivities: [],
}); };
var VI_TAG_TYPES_TO_FILTER_TYPES = {
    person: 'imagePeople',
    object: 'imageObject',
    scene: 'imageScene',
    activity: 'imageActivities',
};
var mapViTagTypeToQueryParam = function (tagType) {
    var viTagTypesToQueryParams = {};
    for (var key in VI_TAG_TYPES_TO_FILTER_TYPES) {
        viTagTypesToQueryParams[key] = "compareVI_".concat(VI_TAG_TYPES_TO_FILTER_TYPES[key]);
    }
    return viTagTypesToQueryParams[tagType];
};

// EXTERNAL MODULE: ./src/state/imagesDashboard/utils.ts
var utils = __webpack_require__("LwCN");
;// CONCATENATED MODULE: ./src/containers/modals/VisualTagsPickerModal/VisualTagsPickerModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const VisualTagsPickerModal = ({"overlayedBlock":"N9EgAG8dnSW4aW3iAczT","flexCenter":"_hsgn_mJFPDyEgoMIw2w","smartFeature":"wP_YRtueVXYA1ZoXCdJG","tag":"LxfKSIIcSUzMjU0vLweV","visibleScrollBar":"syy1KzqtVfTHc6Hmmns6","hiddenScrollBar":"uIa1AdiNFrNsk6Z7vSSp","title":"KA3JT8SeNg0h0LHiyGT0","content":"oftWpWeJPA7vNpiLjTUT","visualInsights":"sgu_lTb9pleTk62Sf3bB","tabs":"T8ynL_t5CpAA96bXHW2q","tab":"alfcVloPe5k1LJdZ1FwV","isSelected":"QavUVR6IH109D_ygcOgx","emptyState":"pEDhrmbyfLJFw67Ksiy2","suggestionFocused":"e4IvjoSrOWOyf1H3G_eB","buttons":"_ErDS2JVTwlFiU45lc2s"});
;// CONCATENATED MODULE: ./src/containers/modals/VisualTagsPickerModal/VisualTagsPickerModal.tsx
var VisualTagsPickerModal_assign = (undefined && undefined.__assign) || function () {
    VisualTagsPickerModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return VisualTagsPickerModal_assign.apply(this, arguments);
};
var VisualTagsPickerModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var VisualTagsPickerModal_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};



















var EXCLUDED_FEATURES = ['imageBrands', 'imageColors', 'imageContentSensitivity'];
var getFeatureTypes = function (features) {
    return Object.keys(features)
        .filter(function (featureType) { return !EXCLUDED_FEATURES.includes(featureType); });
};
var getFeatureTabTranslation = function (featureTabName) {
    return {
        all: function () { return l('All'); },
        imagePeople: function () { return l('People'); },
        imageObject: function () { return l('Objects'); },
        imageScene: function () { return l('Scenes'); },
        imageActivities: function () { return l('Activities'); },
    }[featureTabName] || featureTabName;
};
var VisualTagsPickerModal_VisualTagsPickerModal = function (_a) {
    var show = _a.show, selected = _a.selected, visualInsights = _a.visualInsights, onChange = _a.onChange, handleHide = _a.handleHide;
    var _b = VisualTagsPickerModal_read((0,react.useState)(selected || []), 2), selectedTags = _b[0], setSelectedTags = _b[1];
    var _c = VisualTagsPickerModal_read((0,react.useState)('all'), 2), selectedTab = _c[0], setSelectedTab = _c[1];
    (0,react.useEffect)(function () {
        if ((!selectedTags && selected) || !show) {
            setSelectedTags(selected || []);
        }
    }, [selected, show]);
    var handleLogoChange = function (feature) {
        var isSelected = selectedTags.find(function (item) { return item.name === feature.name; });
        setSelectedTags(!isSelected
            ? VisualTagsPickerModal_spreadArray(VisualTagsPickerModal_spreadArray([], VisualTagsPickerModal_read(selectedTags), false), [feature], false) : selectedTags.filter(function (item) { return item.name !== feature.name; }));
    };
    var handleApply = function () {
        var features = selectedTags.reduce(function (featuresToSelect, feature) {
            var _a;
            var featureType = "compareVI_".concat(feature.type);
            var featureValue = featuresToSelect[featureType];
            return VisualTagsPickerModal_assign(VisualTagsPickerModal_assign({}, featuresToSelect), (_a = {}, _a[featureType] = (featureValue === null || featureValue === void 0 ? void 0 : featureValue.length)
                ? featureValue.concat(feature.name)
                : [feature.name], _a.manuallySelectedTags = selected.find(function (s) { return s.name === feature.name; })
                ? featuresToSelect.manuallySelectedTags
                : featuresToSelect.manuallySelectedTags.concat(feature.name), _a));
        }, VisualTagsPickerModal_assign(VisualTagsPickerModal_assign({}, getDefaultViTagsQueryParams()), { manuallySelectedTags: [] }));
        onChange(features);
        setTimeout(handleHide, 200);
    };
    var formatFeatures = function (features) {
        var types = getFeatureTypes(features)
            .filter(function (type) { return selectedTab === 'all' || (0,utils/* formatVisualInsightsTagTypes */.U)(type) === selectedTab; });
        return types
            .reduce(function (allFeaturesByTypes, type) {
            var featuresByType = Object.keys(features[type]).map(function (name) { return ({
                name: name,
                type: (0,utils/* formatVisualInsightsTagTypes */.U)(type),
                searchHelpers: features[type][name],
                isSelected: selectedTags.find(function (s) { return s.name === name; }) ? 'a' : 'b',
            }); });
            return allFeaturesByTypes.concat(featuresByType);
        }, [])
            .sort(function (a, b) { var _a; return (_a = a.name) === null || _a === void 0 ? void 0 : _a.localeCompare(b.name); });
    };
    var renderSuggestion = function (feature, focused) {
        var _a;
        var featureName = feature.name;
        return ((0,jsx_runtime.jsx)("div", VisualTagsPickerModal_assign({ className: classnames_default()((_a = {}, _a[VisualTagsPickerModal.suggestionFocused] = focused, _a)) }, { children: (0,jsx_runtime.jsx)(Checkbox/* default */.A, { label: featureName, checked: selectedTags.find(function (item) { return item.name === featureName; }), value: featureName }, featureName) })));
    };
    var renderTabs = function () {
        var types = VisualTagsPickerModal_spreadArray(['all'], VisualTagsPickerModal_read(getFeatureTypes(visualInsights)), false).map(utils/* formatVisualInsightsTagTypes */.U);
        return ((0,jsx_runtime.jsx)("div", VisualTagsPickerModal_assign({ className: classnames_default()(VisualTagsPickerModal.tabs) }, { children: types.map(function (featureType) {
                var _a;
                return ((0,jsx_runtime.jsx)("div", VisualTagsPickerModal_assign({ className: classnames_default()(VisualTagsPickerModal.tab, (_a = {}, _a[VisualTagsPickerModal.isSelected] = selectedTab === featureType, _a)), onClick: function () { return setSelectedTab(featureType); } }, { children: getFeatureTabTranslation(featureType)() }), featureType));
            }) })));
    };
    var formattedFeatures = formatFeatures(visualInsights);
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, VisualTagsPickerModal_assign({ fitted: true, isOpen: show, onRequestClose: handleHide }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, VisualTagsPickerModal_assign({ className: classnames_default()(VisualTagsPickerModal.title) }, { children: l('Select Visual tags to compare') })), (0,jsx_runtime.jsxs)("div", VisualTagsPickerModal_assign({ className: classnames_default()(VisualTagsPickerModal.content) }, { children: [renderTabs(), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(SearchableListMutable, { isLongList: true, placeholder: l('Search'), className: classnames_default()(VisualTagsPickerModal.visualInsights), suggestions: formattedFeatures, sortingProperties: {
                            keys: [
                                function (item) { return item.isSelected; },
                                function (item) { return item.name; },
                                function (item) { return item.searchHelpers; }
                            ],
                        }, virtualListProps: { width: 360 }, emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(VisualTagsPickerModal.emptyState), image: "/static/images/empty_themes.svg", title: l('No Visual tags were found'), message: l('There are no Visual tags with this name') }), renderItem: renderSuggestion, onSelect: handleLogoChange })] })), (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, VisualTagsPickerModal_assign({ className: classnames_default()(VisualTagsPickerModal.buttons) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleHide }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Apply'), onClick: handleApply })] }))] })));
};
/* harmony default export */ const modals_VisualTagsPickerModal_VisualTagsPickerModal = ((0,redux/* compose */.Zz)(react.memo, (0,connectModal/* default */.A)('visualTagsPickerModal'), (0,react_redux/* connect */.Ng)(function (state) { return ({
    visualInsights: (0,stats_selectors/* getAllVisualTags */.xL)(state),
    selected: (0,imagesDashboard_selectors/* getCompareVisualInsights */.z6)(state),
}); }))(VisualTagsPickerModal_VisualTagsPickerModal));

;// CONCATENATED MODULE: ./src/containers/modals/VisualTagsPickerModal/index.ts


;// CONCATENATED MODULE: ./src/utils/url.ts
function validateUrl(value) {
    // eslint-disable-next-line max-len
    return /^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(value);
}

;// CONCATENATED MODULE: ./src/containers/channels/SearchChannels/SearchChannels.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SearchChannels = ({"container":"lrFJvsqhJhgY9ZYHXcWs","input":"YOShCW5XHeKIuNN40xVc"});
;// CONCATENATED MODULE: ./src/containers/channels/SearchChannels/SearchChannels.tsx
var SearchChannels_assign = (undefined && undefined.__assign) || function () {
    SearchChannels_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SearchChannels_assign.apply(this, arguments);
};
var SearchChannels_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};








var SearchChannels_SearchChannels = function (_a) {
    var className = _a.className, onSearch = _a.onSearch;
    var _b = SearchChannels_read((0,react.useState)(''), 2), url = _b[0], setUrl = _b[1];
    var _c = SearchChannels_read((0,react.useState)(false), 2), error = _c[0], setError = _c[1];
    var handleURLChange = function (value) {
        setUrl(value);
        setError(false);
    };
    var handleSearch = function (value) {
        if (!value) {
            return;
        }
        if (!validateUrl(value)) {
            setError(true);
            return;
        }
        onSearch(value);
        setUrl('');
    };
    return ((0,jsx_runtime.jsxs)("div", SearchChannels_assign({ className: classnames_default()([SearchChannels.container, className]) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { className: SearchChannels.input, autoFocus: true, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "earth" }), placeholder: "URL", value: url, hintText: l('Type URL and press Enter ⏎'), errorText: error ? l('Wrong URL') : null, onChange: handleURLChange, onPressEnter: handleSearch }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Search'), onClick: function () { return handleSearch(url); } })] })));
};
/* harmony default export */ const channels_SearchChannels_SearchChannels = (SearchChannels_SearchChannels);

;// CONCATENATED MODULE: ./src/containers/channels/SearchChannels/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsInfoModal/components/ChannelInfo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChannelInfo = ({"container":"M60tuRY2Plpb3TSxzXJS","table":"NWds2OaPtG4YpwgOgoGq","header":"IFqjz0yfcq4YHmMS1f4Q","cell":"gss0B4rAg7AfcWmjFv3A","row":"CsiKjo2jd9qQsNT3gyyM","terms":"WfbNzBN2BsPOpdamP6fI"});
;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsInfoModal/components/ChannelInfo.tsx
var ChannelInfo_assign = (undefined && undefined.__assign) || function () {
    ChannelInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChannelInfo_assign.apply(this, arguments);
};



var ChannelInfo_ChannelInfo = function (_a) {
    var info = _a.info, terms = _a.terms;
    return ((0,jsx_runtime.jsxs)("div", ChannelInfo_assign({ className: ChannelInfo.container }, { children: [(0,jsx_runtime.jsxs)("table", ChannelInfo_assign({ className: ChannelInfo.table }, { children: [(0,jsx_runtime.jsxs)("tr", ChannelInfo_assign({ className: ChannelInfo.row }, { children: [(0,jsx_runtime.jsx)("th", ChannelInfo_assign({ className: classnames_default()(ChannelInfo.header, ChannelInfo.cell) }, { children: l('What can be added') })), (0,jsx_runtime.jsx)("th", ChannelInfo_assign({ className: classnames_default()(ChannelInfo.header, ChannelInfo.cell) }, { children: l('What can be collected') }))] })), info.map(function (v, index) { return ((0,jsx_runtime.jsxs)("tr", ChannelInfo_assign({ className: ChannelInfo.row }, { children: [(0,jsx_runtime.jsx)("td", ChannelInfo_assign({ className: ChannelInfo.cell }, { children: v.channelType })), (0,jsx_runtime.jsx)("td", ChannelInfo_assign({ className: ChannelInfo.cell }, { children: v.dataType }))] }), index)); })] })), terms && (0,jsx_runtime.jsx)("p", ChannelInfo_assign({ className: ChannelInfo.terms }, { children: terms }))] })));
};
/* harmony default export */ const components_ChannelInfo = (ChannelInfo_ChannelInfo);

;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsInfoModal/AddChannelsInfoModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AddChannelsInfoModal = ({"overlayedBlock":"x6vvKc8N35HRUuhPFDkf","flexCenter":"Um0dR9CFZtD5xkhoXOtr","smartFeature":"PnltfDlvt6qwAMDlQGcJ","tag":"nZB0vqgj8brYFS0Ed3xF","visibleScrollBar":"XDuQwoJh6TYcVaaInHkB","hiddenScrollBar":"kL_kglWOjMZO7k7rB2v4","container":"Ay3VPxFZBUkUGZS98EiY","title":"h597otqIwpmaObCjQY1p","titleSourceIcon":"MeIysNNgF6SVxTYnkx4S","inputTitle":"x90cqAUolW0HxuGFwIsA","flexContainer":"esv31lHxh4RL_tGApyMO","flexItem":"u9X3VUVpIuXAs21ZHn7X","searchContainer":"ks0sXnPGloW8ij1I9Dfo"});
;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsInfoModal/AddChannelsInfoModal.tsx
var AddChannelsInfoModal_assign = (undefined && undefined.__assign) || function () {
    AddChannelsInfoModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AddChannelsInfoModal_assign.apply(this, arguments);
};
















var AddChannelsInfoModal_AddChannelsInfoModal = function (_a) {
    var show = _a.show, _b = _a.channel, channel = _b === void 0 ? {} : _b, coverage = _a.coverage, handleHide = _a.handleHide, clearPreviewChannelsState = _a.clearPreviewChannelsState, fetchPreviewChannels = _a.fetchPreviewChannels;
    var title = channel.title, icon = channel.icon, collectionInfo = channel.collectionInfo, collectionTerms = channel.collectionTerms;
    var info = (collectionInfo === null || collectionInfo === void 0 ? void 0 : collectionInfo[coverage]) || (collectionInfo === null || collectionInfo === void 0 ? void 0 : collectionInfo[CoverageType.Global]);
    var terms = (collectionTerms === null || collectionTerms === void 0 ? void 0 : collectionTerms[coverage]) || (collectionTerms === null || collectionTerms === void 0 ? void 0 : collectionTerms[CoverageType.Global]);
    (0,react.useEffect)(function () {
        return clearPreviewChannelsState;
    }, []);
    var handleFetchPreviewChannels = function (url) {
        clearPreviewChannelsState();
        fetchPreviewChannels({ url: url });
    };
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.container, fullWidth: true, withCloseIcon: true, isOpen: show, onRequestClose: handleHide }, { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.title }, { children: [l('Adding new channel from'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.titleSourceIcon }, { children: icon })), title] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.flexContainer }, { children: [(0,jsx_runtime.jsxs)("div", AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.flexItem }, { children: [(0,jsx_runtime.jsx)("p", AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.inputTitle }, { children: l('Channel`s link') })), (0,jsx_runtime.jsx)(channels_SearchChannels_SearchChannels, { className: AddChannelsInfoModal.searchContainer, onSearch: handleFetchPreviewChannels }), info && ((0,jsx_runtime.jsx)(components_ChannelInfo, { info: info, terms: terms }))] })), (0,jsx_runtime.jsx)("div", AddChannelsInfoModal_assign({ className: AddChannelsInfoModal.flexItem }, { children: (0,jsx_runtime.jsx)(PreviewChannels_PreviewChannels, {}) }))] }))] })));
};
/* harmony default export */ const modals_AddChannelsInfoModal_AddChannelsInfoModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('addChannelWithInfo'), (0,react_redux/* connect */.Ng)(function (state) { return ({
    coverage: (0,account_selectors/* getAccountCoverage */.Om)(state),
}); }, {
    clearPreviewChannelsState: channels_model/* channelsModel */.S.action.clearPreviewChannelsState,
    fetchPreviewChannels: channels_model/* channelsModel */.S.action.fetchPreviewChannels,
}))(AddChannelsInfoModal_AddChannelsInfoModal));

;// CONCATENATED MODULE: ./src/containers/modals/AddChannelsInfoModal/index.js

// EXTERNAL MODULE: ./node_modules/lodash/isEqual.js
var isEqual = __webpack_require__("Y+p1");
var isEqual_default = /*#__PURE__*/__webpack_require__.n(isEqual);
// EXTERNAL MODULE: ./src/models/Topic.ts
var Topic = __webpack_require__("31cT");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var routing_actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/integrations/selectors.ts
var integrations_selectors = __webpack_require__("SbqI");
// EXTERNAL MODULE: ./src/models/filters/domain/FilterGroupTypeCatalog.tsx + 79 modules
var FilterGroupTypeCatalog = __webpack_require__("yMOo");
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Webhook.js






function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function Webhook_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Webhook_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Webhook_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Webhook_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var Webhook = /*#__PURE__*/function (_PureComponent) {
  function Webhook() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Webhook);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Webhook_callSuper(this, Webhook, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleUrlChange", function (url) {
      _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.settings), {}, {
        url: url
      }));
    });
    (0,defineProperty/* default */.A)(_this, "handleNameChange", function (name) {
      _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.settings), {}, {
        name: name
      }));
    });
    return _this;
  }
  (0,inherits/* default */.A)(Webhook, _PureComponent);
  return (0,createClass/* default */.A)(Webhook, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please enter a valid URL'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l(
          // eslint-disable-next-line max-len
          "Send mentions from YouScan via HTTP POST request to your specified URL. Enter the URL where you'd like to receive requests in the field below."), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('webhook'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          label: l('Webhook Name'),
          placeholder: "Name",
          fullWidth: true,
          value: settings.name,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleNameChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          label: l('Webhook URL'),
          placeholder: "https://webhook.example.com/post",
          fullWidth: true,
          value: settings.url,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleUrlChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/CrmViaEmail.js






function CrmViaEmail_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, CrmViaEmail_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function CrmViaEmail_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (CrmViaEmail_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var CrmViaEmail = /*#__PURE__*/function (_PureComponent) {
  function CrmViaEmail() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CrmViaEmail);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = CrmViaEmail_callSuper(this, CrmViaEmail, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleEmailChange", function (email) {
      _this.props.onChange({
        email: email
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(CrmViaEmail, _PureComponent);
  return (0,createClass/* default */.A)(CrmViaEmail, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid email'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Send mentions directly from YouScan to any CRM via custom e-mail integration. ' + 'The e-mail letters have special format, so your CRM system can parse them. ' + "Enter e-mail address you'd like to receive integration letters to in the field below."), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('crmViaEmail'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          label: l('E-mail'),
          placeholder: "crm@youscan.io",
          fullWidth: true,
          value: settings.email,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleEmailChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Helpdeskeddy.js






function Helpdeskeddy_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Helpdeskeddy_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Helpdeskeddy_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Helpdeskeddy_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var HelpDeskEddy = /*#__PURE__*/function (_PureComponent) {
  function HelpDeskEddy() {
    var _this;
    (0,classCallCheck/* default */.A)(this, HelpDeskEddy);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Helpdeskeddy_callSuper(this, HelpDeskEddy, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDomainChange", function (domain) {
      _this.props.onChange({
        domain: domain
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(HelpDeskEddy, _PureComponent);
  return (0,createClass/* default */.A)(HelpDeskEddy, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid domain'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Send mentions directly to HelpDeskEddy from YouScan. ' + 'Enter your HelpDeskEddy domain in the field below. '), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('helpDeskEddy'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          fullWidth: true,
          placeholder: "https://youscan.helpdeskeddy.com",
          label: l('HelpDeskEddy domain'),
          value: settings.domain,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleDomainChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/components/TextFieldWithHelper.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_TextFieldWithHelper = ({"base":"l_uovR5CdQ2ERntNhYM3","inputContainer":"T1gv1OBKWyN4qNMO5xyV","input":"_fZdneSYyYsqkKOPrXPV","helper":"hiFq8WrSDy7WCbUJaJGz"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/components/TextFieldWithHelper.js





var TextFieldWithHelper = function TextFieldWithHelper(_ref) {
  var label = _ref.label,
    placeholder = _ref.placeholder,
    value = _ref.value,
    errorText = _ref.errorText,
    helperText = _ref.helperText,
    onChange = _ref.onChange;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
    className: classnames_default()(components_TextFieldWithHelper.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
      label: label,
      placeholder: placeholder,
      value: value,
      className: classnames_default()(components_TextFieldWithHelper.inputContainer),
      inputClassName: classnames_default()(components_TextFieldWithHelper.input),
      errorText: errorText,
      onChange: onChange
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      className: classnames_default()(components_TextFieldWithHelper.helper),
      children: helperText
    })]
  });
};
/* harmony default export */ const IntegrationsModal_components_TextFieldWithHelper = (/*#__PURE__*/(0,react.memo)(TextFieldWithHelper));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Zendesk.js






function Zendesk_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Zendesk_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Zendesk_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Zendesk_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }











var Zendesk = /*#__PURE__*/function (_PureComponent) {
  function Zendesk() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Zendesk);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Zendesk_callSuper(this, Zendesk, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      domain: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleDomainChange", function (domain) {
      _this.setState({
        domain: domain
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleFetchIntegrationLink", function () {
      var domain = _this.state.domain;
      _this.props.fetchZendeskIntegrationLink({
        subdomain: domain
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCreateIntegration", function () {
      _this.props.createIntegration({
        integrationType: 'zendesk'
      });
      var integrationSetupWindow = window.open(_this.props.link, 'YouScan <-> ZenDesk', 'width=550,height=700');
      setInterval(function () {
        if (_this.props.isCreated) {
          integrationSetupWindow.close();
        }
      }, 1000);
    });
    return _this;
  }
  (0,inherits/* default */.A)(Zendesk, _PureComponent);
  return (0,createClass/* default */.A)(Zendesk, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var link = this.props.link;
      if (link && !prevProps.link) {
        this.handleCreateIntegration();
      }
    }
  }, {
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid domain'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Create tickets in Zendesk automatically from YouScan.' + ' Enter your sub-domain you have your Zendesk system set up on' + ' in the field below. '), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('zendesk'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_TextFieldWithHelper, {
          label: l('Zendesk sub-domain'),
          placeholder: "youscan",
          value: settings.domain,
          errorText: !isCreating && this.errorMessage,
          helperText: ".zendesk.com",
          onChange: this.handleDomainChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, {
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "login"
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Add integration')]
            }),
            onClick: this.handleFetchIntegrationLink
          })
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const forms_Zendesk = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    link: (0,integrations_selectors/* getZendeskIntegrationLink */.$B)(state)
  };
}, {
  fetchZendeskIntegrationLink: integrations_model/* integrationsModel */.F.action.fetchZendeskLink,
  createIntegration: integrations_model/* integrationsModel */.F.action.createIntegration
})(Zendesk));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Freshdesk.js






function Freshdesk_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function Freshdesk_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Freshdesk_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Freshdesk_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function Freshdesk_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Freshdesk_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Freshdesk_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Freshdesk_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }







var Freshdesk = /*#__PURE__*/function (_PureComponent) {
  function Freshdesk() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Freshdesk);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Freshdesk_callSuper(this, Freshdesk, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDomainChange", function (domain) {
      _this.props.onChange(Freshdesk_objectSpread(Freshdesk_objectSpread({}, _this.props.settings), {}, {
        domain: domain
      }));
    });
    (0,defineProperty/* default */.A)(_this, "handleApiTokenChange", function (apiToken) {
      _this.props.onChange(Freshdesk_objectSpread(Freshdesk_objectSpread({}, _this.props.settings), {}, {
        apiToken: apiToken
      }));
    });
    return _this;
  }
  (0,inherits/* default */.A)(Freshdesk, _PureComponent);
  return (0,createClass/* default */.A)(Freshdesk, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid domain'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Create tickets in Freshdesk automatically from YouScan. ' + 'Enter your sub-domain you have your Freshdesk system set up on and ' + 'API key in the fields below. '), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('freshdesk'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_TextFieldWithHelper, {
          label: l('Freshdesk sub-domain'),
          placeholder: "youscan",
          value: settings.domain,
          errorText: !isCreating && this.errorMessage,
          helperText: ".freshdesk.com",
          onChange: this.handleDomainChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          fullWidth: true,
          label: l('API key'),
          placeholder: "XXXXXXXXXXXXXXXXXXXXX",
          value: settings.apiToken,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleApiTokenChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Terrasoft.js






function Terrasoft_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function Terrasoft_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Terrasoft_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Terrasoft_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function Terrasoft_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Terrasoft_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Terrasoft_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Terrasoft_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }







var Terrasoft = /*#__PURE__*/function (_PureComponent) {
  function Terrasoft() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Terrasoft);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Terrasoft_callSuper(this, Terrasoft, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDomainChange", function (domain) {
      _this.props.onChange(Terrasoft_objectSpread(Terrasoft_objectSpread({}, _this.props.settings), {}, {
        domain: domain
      }));
    });
    (0,defineProperty/* default */.A)(_this, "handleFormIdChange", function (formId) {
      _this.props.onChange(Terrasoft_objectSpread(Terrasoft_objectSpread({}, _this.props.settings), {}, {
        formId: formId
      }));
    });
    return _this;
  }
  (0,inherits/* default */.A)(Terrasoft, _PureComponent);
  return (0,createClass/* default */.A)(Terrasoft, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid domain'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Create tickets in Terrasoft automatically from YouScan. ' + 'Enter your sub-domain you have your Terrasoft system set up on and ' + 'form id in the fields below. '), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('terrasoft'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_TextFieldWithHelper, {
          label: l('Terrasoft sub-domain'),
          placeholder: "youscan",
          value: settings.domain,
          errorText: !isCreating && this.errorMessage,
          helperText: ".terrasoft.com",
          onChange: this.handleDomainChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          fullWidth: true,
          label: l('Form id'),
          placeholder: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          value: settings.formId,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleFormIdChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Telegram.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const forms_Telegram = ({"blocked":"A5TOU2NooSQ9_C1jQSLu"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Telegram.js






function Telegram_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Telegram_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Telegram_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Telegram_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var Telegram = /*#__PURE__*/function (_PureComponent) {
  function Telegram() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Telegram);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Telegram_callSuper(this, Telegram, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleCreateIntegration", function () {
      _this.props.createIntegration({
        integrationType: 'telegram'
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(Telegram, _PureComponent);
  return (0,createClass/* default */.A)(Telegram, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.fetchTelegramCode();
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        code = _this$props.code,
        isCreated = _this$props.isCreated,
        isLoading = _this$props.isLoading;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          children: l('Send mentions from YouScan to direct messages or group chat in Telegram.')
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l(
          // eslint-disable-next-line max-len
          'You can receive mentions in direct messages from our bot. You can also add our bot to a group chat with your colleagues to read mentions together. Choose one option below and set it up in a few simple steps.'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('telegram'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()((0,defineProperty/* default */.A)({}, forms_Telegram.blocked, isCreated)),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: "https://telegram.me/YouScanBot?start=".concat(code),
            target: "_blank",
            rel: "noopener noreferrer",
            onClick: this.handleCreateIntegration,
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  type: "user"
                }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Connect via direct messages')]
              }),
              disabled: isCreated,
              loading: isLoading
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: "https://telegram.me/YouScanBot?startgroup=".concat(code),
            target: "_blank",
            rel: "noopener noreferrer",
            onClick: this.handleCreateIntegration,
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  type: "users"
                }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Connect via group chat')]
              }),
              disabled: isCreated,
              loading: isLoading
            })
          })]
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const IntegrationsModal_forms_Telegram = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    code: (0,integrations_selectors/* getTelegramCode */.br)(state),
    isLoading: (0,integrations_selectors/* isTelegramCodeLoading */.xW)(state)
  };
}, {
  fetchTelegramCode: integrations_model/* integrationsModel */.F.action.fetchTelegramCode,
  createIntegration: integrations_model/* integrationsModel */.F.action.createIntegration
})(Telegram));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Slack.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const forms_Slack = ({"blocked":"cdXjUwyAZnIOzabNQliA"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Slack.js






function Slack_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Slack_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Slack_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Slack_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var Slack = /*#__PURE__*/function (_PureComponent) {
  function Slack() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Slack);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Slack_callSuper(this, Slack, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleCreateIntegration", function () {
      _this.props.createIntegration({
        integrationType: 'slack'
      });
      var integrationSetupWindow = window.open(_this.props.link, 'YouScan <-> Slack', 'width=550,height=700');
      setInterval(function () {
        if (_this.props.isCreated) {
          integrationSetupWindow.close();
        }
      }, 1000);
    });
    return _this;
  }
  (0,inherits/* default */.A)(Slack, _PureComponent);
  return (0,createClass/* default */.A)(Slack, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.initSlackIntegration();
    }
  }, {
    key: "render",
    value: function render() {
      var isCreated = this.props.isCreated;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          children: l('Send mentions from YouScan to direct messages or channels in Slack.')
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Authorize YouScan in your Slack workspace to start receiving notifications.'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('slack'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()((0,defineProperty/* default */.A)({}, forms_Slack.blocked, isCreated)),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "login"
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Authorize Slack')]
            }),
            disabled: isCreated,
            onClick: this.handleCreateIntegration
          })
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const IntegrationsModal_forms_Slack = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    link: (0,integrations_selectors/* getSlackInvitationLink */.kc)(state)
  };
}, {
  initSlackIntegration: integrations_model/* integrationsModel */.F.action.initSlackIntegration,
  createIntegration: integrations_model/* integrationsModel */.F.action.createIntegration
})(Slack));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/AngrySpace.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const forms_AngrySpace = ({"blocked":"iICknvSXsz5TelUiUGw0"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/AngrySpace.js






function AngrySpace_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, AngrySpace_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function AngrySpace_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (AngrySpace_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var AngrySpace = /*#__PURE__*/function (_PureComponent) {
  function AngrySpace() {
    var _this;
    (0,classCallCheck/* default */.A)(this, AngrySpace);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = AngrySpace_callSuper(this, AngrySpace, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleCreateIntegration", function () {
      _this.props.createIntegration({
        integrationType: 'angrySpace'
      });
      var integrationSetupWindow = window.open(_this.props.link, 'YouScan <-> Angry.Space', 'width=550,height=700');
      setInterval(function () {
        if (_this.props.isCreated) {
          integrationSetupWindow.close();
        }
      }, 1000);
    });
    return _this;
  }
  (0,inherits/* default */.A)(AngrySpace, _PureComponent);
  return (0,createClass/* default */.A)(AngrySpace, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.initAngrySpaceIntegration();
    }
  }, {
    key: "render",
    value: function render() {
      var isCreated = this.props.isCreated;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Authorize YouScan in your Angry.Space workspace to start receiving messages'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('angrySpace'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()((0,defineProperty/* default */.A)({}, forms_AngrySpace.blocked, isCreated)),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "login"
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Authorize Angry.Space')]
            }),
            disabled: isCreated,
            onClick: this.handleCreateIntegration
          })
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const IntegrationsModal_forms_AngrySpace = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    link: (0,integrations_selectors/* getAngrySpaceInvitationLink */.l8)(state)
  };
}, {
  initAngrySpaceIntegration: integrations_model/* integrationsModel */.F.action.initAngrySpaceIntegration,
  createIntegration: integrations_model/* integrationsModel */.F.action.createIntegration
})(AngrySpace));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/UseDesk.js






function UseDesk_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function UseDesk_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? UseDesk_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : UseDesk_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function UseDesk_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, UseDesk_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function UseDesk_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (UseDesk_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var DEFAULT_ENDPOINT_VALUE = 'https://api.usedesk.ru';
var UseDesk = /*#__PURE__*/function (_PureComponent) {
  function UseDesk() {
    var _this;
    (0,classCallCheck/* default */.A)(this, UseDesk);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = UseDesk_callSuper(this, UseDesk, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleApiTokenChange", function (apiToken) {
      _this.props.onChange(UseDesk_objectSpread(UseDesk_objectSpread({}, _this.props.settings), {}, {
        apiToken: apiToken
      }));
    });
    (0,defineProperty/* default */.A)(_this, "handleApiEndpointChange", function (apiEndpoint) {
      _this.props.onChange(UseDesk_objectSpread(UseDesk_objectSpread({}, _this.props.settings), {}, {
        apiEndpoint: apiEndpoint
      }));
    });
    return _this;
  }
  (0,inherits/* default */.A)(UseDesk, _PureComponent);
  return (0,createClass/* default */.A)(UseDesk, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter the API token'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Create UseDesk tickets directly from YouScan. ' + 'Enter the API token from your UseDesk system in the field below. '), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('useDesk'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          fullWidth: true,
          label: l('UseDesk API token'),
          placeholder: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
          value: settings.apiToken,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleApiTokenChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          fullWidth: true,
          label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [l('UseDesk API endpoint'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
              basic: true,
              on: "hover",
              position: "top center",
              text: l('Specify custom API endpoint if you use a dedicated server for UseDesk'),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "info",
                color: "lightgray"
              })
            })]
          }),
          value: settings.apiEndpoint === undefined ? DEFAULT_ENDPOINT_VALUE : settings.apiEndpoint,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleApiEndpointChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/CreatioService.js






function CreatioService_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function CreatioService_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? CreatioService_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : CreatioService_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function CreatioService_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, CreatioService_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function CreatioService_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (CreatioService_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var CreatioService = /*#__PURE__*/function (_PureComponent) {
  function CreatioService() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CreatioService);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = CreatioService_callSuper(this, CreatioService, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDomainChange", function (domain) {
      _this.props.onChange(CreatioService_objectSpread(CreatioService_objectSpread({}, _this.props.settings), {}, {
        domain: domain
      }));
    });
    (0,defineProperty/* default */.A)(_this, "handleFormIdChange", function (formId) {
      _this.props.onChange(CreatioService_objectSpread(CreatioService_objectSpread({}, _this.props.settings), {}, {
        formId: formId
      }));
    });
    return _this;
  }
  (0,inherits/* default */.A)(CreatioService, _PureComponent);
  return (0,createClass/* default */.A)(CreatioService, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid domain'),
        binding_error: l('Check entered data and try again')
      }[error.response.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Create cases in Creatio automatically from YouScan. ' + 'Enter your Creatio domain in the field below.'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('creatioService'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          fullWidth: true,
          placeholder: "youscan.creatio.com",
          label: l('Creatio domain'),
          value: settings.domain,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleDomainChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Hubspot.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const forms_Hubspot = ({"blocked":"oqDC5Cq3XLFTOaoA507t"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/Hubspot.js






function Hubspot_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Hubspot_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Hubspot_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Hubspot_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var Hubspot = /*#__PURE__*/function (_PureComponent) {
  function Hubspot() {
    var _this;
    (0,classCallCheck/* default */.A)(this, Hubspot);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Hubspot_callSuper(this, Hubspot, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleCreateIntegration", function () {
      _this.props.createIntegration({
        integrationType: 'hubspot'
      });
      var integrationSetupWindow = window.open(_this.props.link, 'YouScan <-> Hubspot', 'width=550,height=700');
      setInterval(function () {
        if (_this.props.isCreated) {
          integrationSetupWindow.close();
        }
      }, 1000);
    });
    return _this;
  }
  (0,inherits/* default */.A)(Hubspot, _PureComponent);
  return (0,createClass/* default */.A)(Hubspot, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.initHubspotIntegration();
    }
  }, {
    key: "render",
    value: function render() {
      var isCreated = this.props.isCreated;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Authorize YouScan in your Hubspot workspace to start receiving messages'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('hubspot'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()((0,defineProperty/* default */.A)({}, forms_Hubspot.blocked, isCreated)),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "login"
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Authorize Hubspot')]
            }),
            disabled: isCreated,
            onClick: this.handleCreateIntegration
          })
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const IntegrationsModal_forms_Hubspot = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    link: (0,integrations_selectors/* getHubspotInvitationLink */.Et)(state)
  };
}, {
  initHubspotIntegration: integrations_model/* integrationsModel */.F.action.initHubspotIntegration,
  createIntegration: integrations_model/* integrationsModel */.F.action.createIntegration
})(Hubspot));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/MsTeams.js





function MsTeams_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MsTeams_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MsTeams_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MsTeams_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }




var MsTeams = /*#__PURE__*/function (_PureComponent) {
  function MsTeams() {
    (0,classCallCheck/* default */.A)(this, MsTeams);
    return MsTeams_callSuper(this, MsTeams, arguments);
  }
  (0,inherits/* default */.A)(MsTeams, _PureComponent);
  return (0,createClass/* default */.A)(MsTeams, [{
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
          children: [l('Send mentions directly to Microsoft Teams channels from YouScan. ' + 'To setup integration you have to go to Microsoft Teams and add Youscan connector to the channel.'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: getDocsLink('msTeams'),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Learn more')
          })]
        })
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/WhatsApp.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const forms_WhatsApp = ({"whatsAppContainer":"__735e42OsK3VkXwSLRs","input":"UnPT6HrJaAZDstrNndqF"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/forms/WhatsApp.js






function WhatsApp_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function WhatsApp_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? WhatsApp_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : WhatsApp_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function WhatsApp_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, WhatsApp_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function WhatsApp_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (WhatsApp_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var WhatsApp = /*#__PURE__*/function (_PureComponent) {
  function WhatsApp(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, WhatsApp);
    _this = WhatsApp_callSuper(this, WhatsApp, [props]);
    (0,defineProperty/* default */.A)(_this, "handlePhoneNumberChange", function (phoneNumber) {
      if (!_this.validatePhoneNumber(phoneNumber)) {
        _this.setState({
          phoneNumberError: l("Phone number must start with '+' and country code")
        });
      } else {
        _this.setState({
          phoneNumberError: null
        });
      }
      _this.props.onChange(WhatsApp_objectSpread(WhatsApp_objectSpread({}, _this.props.settings), {}, {
        phoneNumber: phoneNumber
      }));
    });
    (0,defineProperty/* default */.A)(_this, "handleNameChange", function (name) {
      _this.props.onChange(WhatsApp_objectSpread(WhatsApp_objectSpread({}, _this.props.settings), {}, {
        name: name
      }));
    });
    (0,defineProperty/* default */.A)(_this, "validatePhoneNumber", function (phoneNumber) {
      return phoneNumber.startsWith('+');
    });
    _this.state = {
      phoneNumberError: null
    };
    return _this;
  }
  (0,inherits/* default */.A)(WhatsApp, _PureComponent);
  return (0,createClass/* default */.A)(WhatsApp, [{
    key: "errorMessage",
    get: function get() {
      var error = this.props.error;
      return error && {
        VALIDATION_ERROR: l('Please, enter a valid phone number'),
        binding_error: l('Check entered data and try again')
      }[error.data.errorCode];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isCreating = _this$props.isCreating,
        settings = _this$props.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(forms_WhatsApp.whatsAppContainer),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          children: l('Send mentions from YouScan to WhatsApp chat')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          label: l('Enter WhatsApp phone number'),
          placeholder: "+1 631 555 1234",
          value: settings.phoneNumber,
          inputClassName: classnames_default()(forms_WhatsApp.input),
          fullWidth: true,
          errorText: this.state.phoneNumberError || !isCreating && this.errorMessage,
          onChange: this.handlePhoneNumberChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          label: l('Enter integration name'),
          placeholder: l('Lily'),
          value: settings.name,
          inputClassName: classnames_default()(forms_WhatsApp.input),
          fullWidth: true,
          errorText: !isCreating && this.errorMessage,
          onChange: this.handleNameChange
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/components/ConfiguredIntegration.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ConfiguredIntegration = ({"base":"NyVebWDuZD6vkaNkzW45","menu":"Snysxdad9zEUlax8u8uH","disabled":"rk8VVIBYzmvgi6rrMnt4","deleting":"myOqNYsU9F0iwLIvWXXq","text":"bHl9pOgpCmSR0BlvzJbE","description":"kkSXNCS7QXqHgbzgAEto","image":"wQlvPDZPUHWmOo2cmcZD"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/components/ConfiguredIntegration.js










var ConfiguredIntegration = function ConfiguredIntegration(_ref) {
  var id = _ref.id,
    name = _ref.name,
    type = _ref.type,
    to = _ref.to,
    createdAt = _ref.createdAt,
    createdBy = _ref.createdBy,
    mentionsProcessed = _ref.mentionsProcessed,
    deleting = _ref.deleting,
    disabled = _ref.disabled,
    onDelete = _ref.onDelete;
  var handleDelete = function handleDelete() {
    onDelete(id);
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_ConfiguredIntegration.base, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, components_ConfiguredIntegration.deleting, deleting), components_ConfiguredIntegration.disabled, disabled)),
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_ConfiguredIntegration.info),
      children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_ConfiguredIntegration.name),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
          className: classnames_default()(components_ConfiguredIntegration.image),
          src: "/static/images/integrations/".concat(type, ".svg"),
          alt: name
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(other_IntegrationName_IntegrationName, {
          type: type,
          to: to
        }), disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(Tooltip/* default */.A, {
          text: l('This integration has failed multiple times, ' + 'so it was disabled automatically. Review ' + 'its settings or delete it'),
          children: [' ', /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            type: "alert",
            color: "red"
          })]
        })]
      }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_ConfiguredIntegration.text),
        children: [createdBy.firstName, " ", createdBy.lastName, '   •   ', moment_default()(createdAt).fromNow(), '   •   ', sprintf(nl('%d mention sent', '%d mentions sent', mentionsProcessed, 'integration'), mentionsProcessed)]
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(components_ConfiguredIntegration.menu),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
        mini: true,
        iconType: "delete",
        onClick: handleDelete
      })
    })]
  });
};
/* harmony default export */ const IntegrationsModal_components_ConfiguredIntegration = (/*#__PURE__*/(0,react.memo)(ConfiguredIntegration));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/components/SuccessInfoCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_SuccessInfoCard = ({"base":"Fl2JXhoIL3QOTh2BxFpw","infoContainer":"W4lzntaRW7A_Z2o2Smuw","imgContainer":"_lBbI9ndOxUI8tlfXmVe","img":"xio19mxRSW2LokiS1y62","title":"OKRuDr0dN4hLG25Nsgkh","text":"x5jNo2vpTHn1Zik6zDK1"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/components/SuccessInfoCard.js





var SuccessInfoCard = function SuccessInfoCard(_ref) {
  var text = _ref.text,
    title = _ref.title,
    hide = _ref.hide,
    image = _ref.image,
    bottomBar = _ref.bottomBar;
  if (hide) {
    return null;
  }
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_SuccessInfoCard.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_SuccessInfoCard.infoContainer),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
        className: classnames_default()(components_SuccessInfoCard.title),
        children: title
      }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
        className: classnames_default()(components_SuccessInfoCard.text),
        children: text
      }), bottomBar]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(components_SuccessInfoCard.imgContainer),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
        className: classnames_default()(components_SuccessInfoCard.img),
        src: image,
        alt: title
      })
    })]
  });
};
/* harmony default export */ const IntegrationsModal_components_SuccessInfoCard = (/*#__PURE__*/(0,react.memo)(SuccessInfoCard));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/IntegrationsModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const IntegrationsModal_IntegrationsModal = ({"header":"UmTQJ1kT4Vue5xj7_aXe","logos":"ue3xkU634c2CCp9E3R8O","logo":"aTXas9CGizKpgMEZEOyg","highlightedWord":"_efvvzV1j7giMWFQqD__","description":"XeM8qk7fpN0fa3qvOb9s","body":"E428DFP_lgt0GFYSa6SG","integrationsToolbar":"Wi63FsgdgTdCW3kpR4ww","successScreen":"agy0qPhPT6dJXPzMjLNF","successScreenHeader":"K3AQOrybeBA1uVTqiHg_","successScreenContent":"CYkP2poxmlQuWTrDUisI","successImgContainer":"E9bz0wWCHDVEv4pp_hXw","integrationImg":"BJY9fGbt1Sd_bCDBFtkf","successImg":"decRUCqV5rXT2sZgTYcU","successTitle":"BdB4srcX0z1tyJae0VdA","successText":"pRaGcSwQzCYMEwgPaaDO"});
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/IntegrationsModal.js






function IntegrationsModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, IntegrationsModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function IntegrationsModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (IntegrationsModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
















































var IntegrationsModal_MODAL_MAX_WIDTH = 525;
var RULE_CREATION_MENTIONS_LIMIT = 5000;
var SUCCESS_SCREEN_ICON_SIZE = 16;
var IntegrationsModal = /*#__PURE__*/function (_PureComponent) {
  function IntegrationsModal(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, IntegrationsModal);
    _this = IntegrationsModal_callSuper(this, IntegrationsModal, [props]);
    (0,defineProperty/* default */.A)(_this, "handleSettingsChange", function (settings) {
      _this.setState({
        settings: settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleTest", function () {
      _this.props.testIntegration({
        integrationType: _this.props.type,
        settings: _this.state.settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleAdd", function () {
      _this.props.createIntegration({
        integrationType: _this.props.type,
        settings: _this.state.settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDelete", function (integrationId) {
      _this.props.deleteIntegration({
        integrationId: integrationId
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleAddNewIntegration", function () {
      _this.props.clearIntegrationState();
      _this.setState({
        adding: true
      });
      _this.props.sendAnalyticalEvent('Integration: creation initiated', {
        type: _this.props.type
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleRedirectToMentionStream", function () {
      var _this$props = _this.props,
        themeId = _this$props.themeId,
        updateLocation = _this$props.updateLocation,
        handleHide = _this$props.handleHide,
        sendAnalyticalEvent = _this$props.sendAnalyticalEvent;
      handleHide();
      sendAnalyticalEvent({
        eventType: 'Success Screen: mention stream opened'
      });
      updateLocation({
        pathname: "/themes/".concat(themeId, "/mentions")
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleRedirectToRules", function () {
      var _this$props2 = _this.props,
        themeId = _this$props2.themeId,
        updateLocation = _this$props2.updateLocation,
        handleHide = _this$props2.handleHide;
      handleHide();
      updateLocation({
        pathname: "/themes/".concat(themeId, "/settings/rules")
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleRedirectToAlerts", function () {
      var _this$props3 = _this.props,
        themeId = _this$props3.themeId,
        updateLocation = _this$props3.updateLocation,
        handleHide = _this$props3.handleHide;
      handleHide();
      updateLocation({
        pathname: "/themes/".concat(themeId, "/alerts")
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleRuleCreation", function () {
      var _this$props4 = _this.props,
        type = _this$props4.type,
        integrations = _this$props4.integrations,
        sendAnalyticalEvent = _this$props4.sendAnalyticalEvent;
      var integrationId = integrations && integrations.sort(function (a, b) {
        return a.createdAt > b.createdAt;
      }).findLast(function (integration) {
        return integration.type === type;
      }).id;
      var filter = Filter/* Filter */.dJ.empty();
      filter.addFilterGroup((0,FilterGroupTypeCatalog/* createFilterGroup */.e1)('sentiment', 'oneOf', ['negative']));
      _this.props.createRule({
        filter: filter,
        actions: {
          sendToIntegration: {
            integrationId: integrationId
          }
        }
      });
      sendAnalyticalEvent({
        eventType: 'Success Screen: rule created'
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleKnowledgeBaseLinkClick", function () {
      _this.props.sendAnalyticalEvent({
        eventType: 'Success Screen: redirect to knowledge base'
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderIntegrationErrorMessage", function () {
      var _this$props5 = _this.props,
        type = _this$props5.type,
        show = _this$props5.show,
        handleHide = _this$props5.handleHide;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
        fullWidth: true,
        withCloseIcon: true,
        isOpen: show,
        maxWidth: IntegrationsModal_MODAL_MAX_WIDTH,
        onRequestClose: handleHide,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
          title: l('Your subscription does not support this type of integration'),
          image: "/static/images/integrations/".concat(type, ".svg"),
          message: l('This integration is available only in higher plans.' + ' Upgrade your subscription plan to add integration of this type')
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderIntegrationSetup", function () {
      var type = _this.props.type;
      var _this$getIntegrationI = _this.getIntegrationInfo(),
        name = _this$getIntegrationI.name;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(IntegrationsModal_IntegrationsModal.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(IntegrationsModal_IntegrationsModal.header),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(H3/* default */.A, {
            children: [l('Integration with'), " ", name]
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(IntegrationsModal_IntegrationsModal.logos),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
              className: classnames_default()(IntegrationsModal_IntegrationsModal.logo),
              src: "/static/images/integrations/youscan.svg",
              alt: "youscan"
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: "chevron-right"
            }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
              className: classnames_default()(IntegrationsModal_IntegrationsModal.logo),
              src: "/static/images/integrations/".concat(type, ".svg"),
              alt: name
            })]
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(IntegrationsModal_IntegrationsModal.body),
          children: _this.renderContent()
        })]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderSuccessScreen", function () {
      var type = _this.props.type;
      return Topic/* MESSENGERS */.HD.includes(type) ? _this.renderSuccessMessengerScreen() : _this.renderSuccessIntegrationScreen();
    });
    (0,defineProperty/* default */.A)(_this, "renderSuccessMessengerScreen", function () {
      var type = _this.props.type;
      var integrationData = _this.getIntegrationInfo();
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(IntegrationsModal_IntegrationsModal.successScreen),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(IntegrationsModal_IntegrationsModal.successScreenContent),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(IntegrationsModal_IntegrationsModal.successScreenHeader),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(IntegrationsModal_IntegrationsModal.successImgContainer),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
                className: classnames_default()(IntegrationsModal_IntegrationsModal.successImg),
                src: "/static/images/integrations-modal-success.svg",
                alt: integrationData.name
              }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
                className: classnames_default()(IntegrationsModal_IntegrationsModal.integrationImg),
                src: "/static/images/integrations/".concat(type, ".svg"),
                alt: integrationData.name
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)(H2/* default */.A, {
              className: classnames_default()(IntegrationsModal_IntegrationsModal.successTitle),
              children: [l('Integration was configured'), "!"]
            })]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_SuccessInfoCard, {
            image: "/static/images/integrations-modal-all-mentions.svg",
            title: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Receive all mentions in '), integrationData.name]
            }),
            text: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
              children: l('Press the button below to configure alerts to your integration. You’ll be able to choose if you want to receive all new mentions or those that match filters of your choice, e.g., all negative mentions from social networks.')
            }),
            bottomBar: _this.renderConfigureAlertButton()
          })]
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderCreateRuleButton", function () {
      var _this$props6 = _this.props,
        ruleCreated = _this$props6.ruleCreated,
        ruleCreating = _this$props6.ruleCreating,
        ruleError = _this$props6.ruleError;
      var ruleLimitExceededError = ruleError && ruleError.errorCode === 'THEME_RULES_LIMIT_REACHED';
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        style: {
          display: 'flex',
          alignItems: 'center'
        },
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          size: "small",
          primary: !ruleCreated && !ruleError,
          disabled: ruleLimitExceededError || ruleCreated,
          success: ruleCreated && !ruleError,
          loading: ruleCreating,
          label: ruleError ? l('Try again') : /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: ruleCreated ? 'check' : 'telegram'
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), ruleCreated ? l('Rule created') : l('Create rule')]
          }),
          onClick: _this.handleRuleCreation
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), _this.renderErrorIcon()]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderConfigureAlertButton", function () {
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        style: {
          display: 'flex',
          alignItems: 'center'
        },
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          size: "small",
          primary: "true",
          label: l('Configure alert'),
          onClick: _this.handleRedirectToAlerts
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderErrorIcon", function () {
      var ruleError = _this.props.ruleError;
      var ruleLimitExceededError = ruleError && ruleError.errorCode === 'THEME_RULES_LIMIT_REACHED';
      if (ruleLimitExceededError) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
          text: l('Your rule limit was exceeded. ' + 'Upgrade subscription plan to use more rules. ' + 'Please, contact our support team to upgrade.'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            size: SUCCESS_SCREEN_ICON_SIZE,
            color: "red",
            type: "warning"
          })
        });
      }
      if (!ruleError) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
        text: ruleError.data.message,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          size: SUCCESS_SCREEN_ICON_SIZE,
          color: "red",
          type: "warning"
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderContent", function () {
      if (_this.state.adding) {
        return _this.renderForm();
      }
      return _this.renderIntegrationList();
    });
    _this.state = {
      adding: props.add,
      isSuccessScreenOpen: false,
      settings: {}
    };
    return _this;
  }
  (0,inherits/* default */.A)(IntegrationsModal, _PureComponent);
  return (0,createClass/* default */.A)(IntegrationsModal, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this$props7 = this.props,
        type = _this$props7.type,
        add = _this$props7.add,
        sendAnalyticalEvent = _this$props7.sendAnalyticalEvent;
      sendAnalyticalEvent({
        eventType: add ? 'Integration: creation initiated' : 'Integration: list opened',
        properties: {
          type: type
        }
      });
      this.props.fetchMentionCountByMonth();
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      if (this.props.isCreated && !this.props.integrationDeleting && this.state.adding) {
        this.setState({
          isSuccessScreenOpen: true
        });
        this.props.sendAnalyticalEvent({
          eventType: 'Integration: success screen seen'
        });
      }
      if (this.configuredIntegrations.size === 0) {
        this.setState({
          adding: true
        });
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this.props.clearIntegrationState();
    }
  }, {
    key: "getIntegrationInfo",
    value: function getIntegrationInfo() {
      return utils_integrations()[this.props.type];
    }
  }, {
    key: "configuredIntegrations",
    get: function get() {
      var _this$props8 = this.props,
        integrations = _this$props8.integrations,
        type = _this$props8.type;
      return integrations.filter(function (integration) {
        return integration.type === type;
      });
    }
  }, {
    key: "renderButtonBar",
    value: function renderButtonBar() {
      var settings = this.state.settings;
      var _this$props9 = this.props,
        isTestSucceeded = _this$props9.isTestSucceeded,
        testSettings = _this$props9.testSettings,
        isTesting = _this$props9.isTesting;
      var canAddIntegration = isTestSucceeded && isEqual_default()(testSettings, settings);
      var integrationInfo = this.getIntegrationInfo();
      if (integrationInfo.selfAdding) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, {
        children: [!canAddIntegration && /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
          text: l('We will send a test mention to integration with entered settings.' + ' If test succeeds, you will be able to add integration'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: l('Test integration'),
            loading: isTesting,
            onClick: this.handleTest
          })
        }), canAddIntegration && /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          success: true,
          disabled: !canAddIntegration,
          label: l('Add integration'),
          onClick: this.handleAdd
        })]
      });
    }
  }, {
    key: "renderIntegrationList",
    value: function renderIntegrationList() {
      var _deleteIntegrationErr,
        _this2 = this;
      var configuredIntegrations = this.configuredIntegrations;
      var _this$props10 = this.props,
        deleteIntegrationError = _this$props10.deleteIntegrationError,
        isAvailable = _this$props10.isAvailable,
        canChangeIntegrations = _this$props10.canChangeIntegrations;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(IntegrationsModal_IntegrationsModal.integrations),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* Toolbar */.M7, {
          className: classnames_default()(IntegrationsModal_IntegrationsModal.integrationsToolbar),
          fullWidth: true,
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
            children: sprintf(nl('%d integration configured', '%d integrations configured', configuredIntegrations.length), configuredIntegrations.length)
          }), isAvailable && canChangeIntegrations && /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            size: "small",
            label: l('Add'),
            onClick: this.handleAddNewIntegration
          })]
        }), deleteIntegrationError && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
            fullWidth: true,
            error: true,
            displayed: true,
            title: deleteIntegrationError.status === 409 ? l("Please delete \n                                        ".concat(((_deleteIntegrationErr = deleteIntegrationError.data) === null || _deleteIntegrationErr === void 0 ? void 0 : _deleteIntegrationErr.errorCode) === 'RELATION_CONFLICT_WITH_ALERTS' ? 'an alert' : 'a rule', " \n                                        connected to this integration before deleting the integration.")) : l('Please, contact the account manager to delete the integration.'),
            text: deleteIntegrationError.data.errorCode === 'RELATION_CONFLICT_WITH_ALERTS' ? /*#__PURE__*/(0,jsx_runtime.jsxs)(dist/* Link */.N_, {
              onClick: this.handleRedirectToAlerts,
              children: [l('Open alerts'), " "]
            }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(dist/* Link */.N_, {
              onClick: this.handleRedirectToRules,
              children: [l('Open rules settings'), " "]
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})]
        }), configuredIntegrations.map(function (integration) {
          return /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_ConfiguredIntegration, {
            id: integration.id,
            type: integration.type,
            to: integration.to,
            enabled: integration.enabled,
            disabled: integration.disabled,
            deleting: integration.deleting,
            mentionsProcessed: integration.mentionsProcessed,
            linkedRules: integration.linkedRules,
            createdBy: integration.createdBy,
            createdAt: integration.createdAt,
            onDelete: _this2.handleDelete
          }, integration.id);
        })]
      });
    }
  }, {
    key: "renderForm",
    value: function renderForm() {
      var _this$props11 = this.props,
        type = _this$props11.type,
        isCreated = _this$props11.isCreated,
        isTestSucceeded = _this$props11.isTestSucceeded,
        testError = _this$props11.testError,
        createIntegrationError = _this$props11.createIntegrationError;
      var settings = this.state.settings;
      var _this$getIntegrationI2 = this.getIntegrationInfo(),
        name = _this$getIntegrationI2.name,
        testIntegrationMessage = _this$getIntegrationI2.testIntegrationMessage;
      var testMessage = testIntegrationMessage || sprintf(l("We've sent an example mention to your %s. Check it and create integration if everything is fine"), name.toLowerCase());
      var forms = {
        webhook: Webhook,
        helpDeskEddy: HelpDeskEddy,
        crmViaEmail: CrmViaEmail,
        zendesk: forms_Zendesk,
        freshdesk: Freshdesk,
        terrasoft: Terrasoft,
        creatioService: CreatioService,
        telegram: IntegrationsModal_forms_Telegram,
        slack: IntegrationsModal_forms_Slack,
        useDesk: UseDesk,
        angrySpace: IntegrationsModal_forms_AngrySpace,
        hubspot: IntegrationsModal_forms_Hubspot,
        msTeams: MsTeams,
        whatsApp: WhatsApp
      };
      var Form = forms[type] || null;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(IntegrationsModal_IntegrationsModal.form),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
          fullWidth: true,
          error: true,
          displayed: testError,
          title: l('Integration test failed!'),
          text: l('Check all entered data and try again'),
          additionalInfo: testError
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
          fullWidth: true,
          success: true,
          displayed: isTestSucceeded,
          title: l('Integration test succeeded!'),
          text: testMessage
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(InfoBox/* default */.A, {
          fullWidth: true,
          info: true,
          displayed: isTestSucceeded && type === 'whatsApp',
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [l('If you don\'t receive a message in 2 minutes, make sure that you accepted ' + 'the latest WhatsApp Terms of Service '), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
              href: "https://wa.me/tos/20210210",
              target: "_blank",
              rel: "noopener noreferrer",
              children: "https://wa.me/tos/20210210"
            })]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: l('After you accept the terms, refresh the page and try again.')
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Form, {
            testSucceeded: isTestSucceeded,
            isCreated: isCreated,
            settings: settings,
            error: createIntegrationError,
            onChange: this.handleSettingsChange
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), this.renderButtonBar()]
        })]
      });
    }
  }, {
    key: "renderSuccessIntegrationScreen",
    value: function renderSuccessIntegrationScreen() {
      var _this$props12 = this.props,
        type = _this$props12.type,
        mentionCountByMonth = _this$props12.mentionCountByMonth;
      var integrationData = this.getIntegrationInfo();
      var isMentionsLimitExceeded = mentionCountByMonth > RULE_CREATION_MENTIONS_LIMIT;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(IntegrationsModal_IntegrationsModal.successScreen),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(IntegrationsModal_IntegrationsModal.successScreenContent),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(IntegrationsModal_IntegrationsModal.successScreenHeader),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(IntegrationsModal_IntegrationsModal.successImgContainer),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
                className: classnames_default()(IntegrationsModal_IntegrationsModal.successImg),
                src: "/static/images/integrations-modal-success.svg",
                alt: integrationData.name
              }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
                className: classnames_default()(IntegrationsModal_IntegrationsModal.integrationImg),
                src: "/static/images/integrations/".concat(type, ".svg"),
                alt: integrationData.name
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)(H2/* default */.A, {
              className: classnames_default()(IntegrationsModal_IntegrationsModal.successTitle),
              children: [l('Integration was configured'), "!"]
            })]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_SuccessInfoCard, {
            hide: isMentionsLimitExceeded || !integrationData.successScreenSettings.hasConfigRuleInfo,
            image: "/static/images/integrations-modal-all-mentions.svg",
            title: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Receive negative mentions in '), integrationData.name]
            }),
            text: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                children: l('Press the button below to start receiving')
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "negative",
                color: "red"
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                className: classnames_default()(IntegrationsModal_IntegrationsModal.highlightedWord),
                children: l('negative')
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                children: l('mentions from this topic in your integration. We will create a rule, which you can find in topic settings.')
              })]
            }),
            bottomBar: this.renderCreateRuleButton()
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_SuccessInfoCard, {
            hide: !integrationData.successScreenSettings.hasShareInfo,
            image: "/static/images/integrations-modal-mentions-by-filter.svg",
            title: l('Receive mentions by filter'),
            text: l('Configure specific filter in mention stream,' + ' select all mentions and create rule with "Send to integration" option.'),
            bottomBar: /*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
              onClick: this.handleRedirectToMentionStream,
              children: l('Open mention stream')
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationsModal_components_SuccessInfoCard, {
            hide: !integrationData.successScreenSettings.hasKnowledgeBaseInfo,
            image: "/static/images/integrations-modal-mentions-manual.svg",
            title: l('Send mentions manually'),
            text: l('To send specific mention press "Share" button,' + ' for example, you can send mentions requiring response in CRM or chat.'),
            bottomBar: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
              href: "https://bit.ly/2PPQFxt",
              target: "_blank",
              rel: "noopener noreferrer",
              onClick: this.handleKnowledgeBaseLinkClick,
              children: l('Learn more')
            })
          })]
        })
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props13 = this.props,
        show = _this$props13.show,
        handleHide = _this$props13.handleHide,
        isAvailable = _this$props13.isAvailable,
        integrations = _this$props13.integrations,
        type = _this$props13.type;
      var isSuccessScreenOpen = this.state.isSuccessScreenOpen;
      if (!isAvailable && (!integrations || !integrations.length)) {
        return this.renderIntegrationErrorMessage();
      }
      if (!type) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
        fitted: true,
        fullWidth: true,
        withCloseIcon: true,
        isOpen: show,
        maxWidth: IntegrationsModal_MODAL_MAX_WIDTH,
        onRequestClose: handleHide,
        children: isSuccessScreenOpen ? this.renderSuccessScreen() : this.renderIntegrationSetup()
      });
    }
  }], [{
    key: "getDerivedStateFromProps",
    value: function getDerivedStateFromProps(nextProps) {
      if (nextProps.add) {
        return {
          adding: true
        };
      }
      return null;
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const modals_IntegrationsModal_IntegrationsModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('addIntegration'), (0,react_redux/* connect */.Ng)(function (state, ownProps) {
  return {
    isCreated: (0,integrations_selectors/* isIntegrationCreated */.HC)(state),
    isDeleted: (0,integrations_selectors/* isIntegrationDeleted */.cE)(state),
    integrationDeleting: (0,integrations_selectors/* isIntegrationDeleting */.ts)(state),
    isTesting: (0,integrations_selectors/* isIntegrationTesting */.F$)(state),
    slackIntegrationCreated: (0,integrations_selectors/* isSlackIntegrationCreated */.H7)(state),
    hubspotIntegrationCreated: (0,integrations_selectors/* isHubspotIntegrationCreated */.yD)(state),
    telegramIntegrationCreated: (0,integrations_selectors/* isTelegramIntegrationCreated */.yG)(state),
    testError: (0,integrations_selectors/* getCreateIntegrationTestError */.bC)(state),
    isTestSucceeded: (0,integrations_selectors/* isIntegrationTestSucceeded */.Ob)(state),
    testSettings: (0,integrations_selectors/* getCreateIntegrationTestSettings */.E2)(state),
    createIntegrationError: (0,integrations_selectors/* getCreateIntegrationError */.tV)(state),
    deleteIntegrationError: (0,integrations_selectors/* getDeleteIntegrationError */.s1)(state),
    integrations: (0,integrations_selectors/* getIntegrations */.Yl)(state),
    isAvailable: (0,integrations_selectors/* isIntegrationTypeAvailable */.i)(state, ownProps.type),
    canChangeIntegrations: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'changeIntegrations'),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    ruleCreating: isRuleCreating(state),
    ruleCreated: isRuleCreated(state),
    ruleError: getCreateRuleError(state),
    mentionCountByMonth: (0,integrations_selectors/* getMentionCountByMonth */.$I)(state)
  };
}, {
  updateLocation: routing_actions/* update */.yo,
  testIntegration: integrations_model/* integrationsModel */.F.action.testIntegration,
  createIntegration: integrations_model/* integrationsModel */.F.action.createIntegration,
  deleteIntegration: integrations_model/* integrationsModel */.F.action.deleteIntegration,
  resetCreateIntegrationData: integrations_model/* integrationsModel */.F.action.resetCreateIntegrationData,
  resetDeleteIntegrationData: integrations_model/* integrationsModel */.F.action.resetDeleteIntegrationData,
  createRule: rules_model/* rulesModel */.h.action.createRule,
  resetCreateRuleData: rules_model/* rulesModel */.h.action.resetCreateRuleData,
  fetchMentionCountByMonth: integrations_model/* integrationsModel */.F.action.fetchMentionCountByMonth,
  clearIntegrationState: integrations_model/* integrationsModel */.F.action.clearIntegrationState,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(IntegrationsModal));
;// CONCATENATED MODULE: ./src/containers/modals/IntegrationsModal/index.js

// EXTERNAL MODULE: ./node_modules/react-copy-to-clipboard/lib/index.js
var react_copy_to_clipboard_lib = __webpack_require__("P5Jw");
var react_copy_to_clipboard_lib_default = /*#__PURE__*/__webpack_require__.n(react_copy_to_clipboard_lib);
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
;// CONCATENATED MODULE: ./src/containers/modals/ChangeApiKeyModal/ChangeApiKeyModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChangeApiKeyModal_ChangeApiKeyModal = ({"base":"OJLJbGTqtpW50rnUsYin","footer":"VJEa6mlNVL1tkrt0R3dh","apiKey":"yCX7CWs1GDSuYOWJEmMU","copyApiKeyButton":"kFC8LetOjrJP7_j3xgll"});
;// CONCATENATED MODULE: ./src/containers/modals/ChangeApiKeyModal/ChangeApiKeyModal.js














var ChangeApiKeyModal_MODAL_MAX_WIDTH = 450;
var ChangeApiKeyModal = function ChangeApiKeyModal(_ref) {
  var apiKey = _ref.apiKey,
    show = _ref.show,
    handleHide = _ref.handleHide,
    clearKey = _ref.clearKey;
  var onClose = function onClose() {
    clearKey();
    handleHide();
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
    fullWidth: true,
    isOpen: show,
    maxWidth: ChangeApiKeyModal_MODAL_MAX_WIDTH,
    onRequestClose: onClose,
    children: /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
      className: classnames_default()(ChangeApiKeyModal_ChangeApiKeyModal.base),
      image: "/static/images/ic-key-created.svg",
      title: l('API Key created'),
      message: l('Copy, because it shows only once'),
      children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(ChangeApiKeyModal_ChangeApiKeyModal.footer),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ChangeApiKeyModal_ChangeApiKeyModal.apiKey),
          children: [apiKey, /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(ChangeApiKeyModal_ChangeApiKeyModal.copyApiKeyButton),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
              basic: true,
              on: "hover",
              position: "top center",
              text: l('Copy API Key'),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)((react_copy_to_clipboard_lib_default()), {
                text: apiKey || '',
                children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  type: "copy",
                  color: "gray"
                })
              })
            })
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          ghost: true,
          label: l('Close'),
          onClick: onClose
        })]
      })
    })
  });
};
/* harmony default export */ const modals_ChangeApiKeyModal_ChangeApiKeyModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('changeApiKey'), (0,react_redux/* connect */.Ng)(function (state) {
  return {
    apiKey: (0,currentUser_selectors/* getCurrentUserApiKey */.iu)(state)
  };
}, {
  clearKey: currentUser_model/* currentUserStateModel */.b.action.clearApiKey
}))(ChangeApiKeyModal));
;// CONCATENATED MODULE: ./src/containers/modals/ChangeApiKeyModal/index.js

// EXTERNAL MODULE: ./node_modules/react-youtube/dist/YouTube.esm.js
var YouTube_esm = __webpack_require__("nq6C");
// EXTERNAL MODULE: ./src/i18n.ts
var i18n = __webpack_require__("872o");
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/videos/SystemOverview.tsx
var SystemOverview_assign = (undefined && undefined.__assign) || function () {
    SystemOverview_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SystemOverview_assign.apply(this, arguments);
};



var DEFAULT_YOUTUBE_VIDEO_OPTIONS = {
    height: '250',
    width: '400',
    playerVars: {
        autoplay: 0,
        enablejsapi: 1,
    },
};
var SystemOverview = function (_a) {
    var containerClassName = _a.containerClassName, options = _a.options, onReady = _a.onReady, onPlay = _a.onPlay;
    var getVideoId = function () {
        var lang = (0,i18n/* getLocale */.JK)();
        switch (lang) {
            case 'uk':
                return '7aW0dTEZ0VE'; // WIP: add the language specific video id
            case 'es':
                return '7aW0dTEZ0VE'; // WIP: add the language specific video id
            default:
                return '7aW0dTEZ0VE';
        }
    };
    return ((0,jsx_runtime.jsx)(YouTube_esm/* default */.A, { videoId: getVideoId(), opts: SystemOverview_assign(SystemOverview_assign({}, DEFAULT_YOUTUBE_VIDEO_OPTIONS), options), className: containerClassName, onReady: onReady, onPlay: onPlay }));
};
/* harmony default export */ const videos_SystemOverview = (SystemOverview);

;// CONCATENATED MODULE: ./src/containers/modals/videoModals/IntroductionModal/components/Introduction.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_Introduction = ({"base":"OpnPcIoqFNrjmHZC_kKl","SHOW_ELEMENT":"LZ_STt2oMqlsFUPTBzJF","wavingHand":"tl364_zth0jEGgaVlQoi","heroText":"jz3Aq3SSE0L8UjfyMdts","mainText":"_7DKqqnJeZVKwQ6PN_a7u","video":"Y18NdctiqdMZFABZSBz6","smallText":"LVvi8D57O7w2Ja7sYTO3"});
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/IntroductionModal/components/Introduction.js






var VIDEO_OPTIONS = {
  height: '250',
  width: '400'
};
var Introduction = function Introduction(_ref) {
  var onVideoPlay = _ref.onVideoPlay,
    onClose = _ref.onClose;
  var handleClose = function handleClose() {
    onClose();
  };
  var onVideoReady = function onVideoReady(e) {
    return e.target.pauseVideo();
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_Introduction.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
      className: classnames_default()(components_Introduction.wavingHand),
      src: "/static/images/waving_hand.svg",
      alt: ""
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
      "double": true
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      className: classnames_default()(components_Introduction.heroText),
      children: l('Hello!')
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
      "double": true
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
      className: classnames_default()(components_Introduction.mainText),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: l('We would like to show you this walkthrough video that might help you get started')
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(videos_SystemOverview, {
      options: VIDEO_OPTIONS,
      containerClassName: classnames_default()(components_Introduction.video),
      onPlay: onVideoPlay,
      onReady: onVideoReady
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_Introduction.smallText),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: l('if you don\'t want to watch it now you can')
      }), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
        onClick: handleClose,
        children: l(' do it later')
      })]
    })]
  });
};
/* harmony default export */ const IntroductionModal_components_Introduction = (/*#__PURE__*/(0,react.memo)(Introduction));
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/IntroductionModal/IntroductionModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const IntroductionModal_IntroductionModal = ({"base":"U9q1_6TEU_QxRkfryHIq","isHiding":"JVZ5NZhHc_MkVpOLm3xL"});
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/IntroductionModal/IntroductionModal.js






function IntroductionModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, IntroductionModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function IntroductionModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (IntroductionModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var IntroductionModal_MODAL_MAX_WIDTH = 700;
var IntroductionModal = /*#__PURE__*/function (_PureComponent) {
  function IntroductionModal() {
    var _this;
    (0,classCallCheck/* default */.A)(this, IntroductionModal);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = IntroductionModal_callSuper(this, IntroductionModal, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      isHiding: false
    });
    (0,defineProperty/* default */.A)(_this, "handleVideoPlay", function () {
      _this.props.sendAnalyticalEvent({
        eventType: 'onboarding: introduction video first time watched'
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCloseModal", function () {
      _this.setState({
        isHiding: true
      }, function () {
        return setTimeout(function () {
          _this.props.updateUiSettings({
            introductionVideoSeen: true
          });
          _this.props.sendAnalyticalEvent({
            eventType: 'onboarding: introduction modal closed'
          });
          _this.props.handleDestroy();
          _this.props.highlightIntroductionVideo();
        }, 300);
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(IntroductionModal, _PureComponent);
  return (0,createClass/* default */.A)(IntroductionModal, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.sendAnalyticalEvent({
        eventType: 'onboarding: introduction modal opened'
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        show = _this$props.show,
        introductionVideoSeen = _this$props.introductionVideoSeen;
      var isHiding = this.state.isHiding;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
        fullWidth: true,
        withCloseIcon: true,
        isOpen: !introductionVideoSeen && show,
        className: classnames_default()(IntroductionModal_IntroductionModal.base, (0,defineProperty/* default */.A)({}, IntroductionModal_IntroductionModal.isHiding, isHiding)),
        maxWidth: IntroductionModal_MODAL_MAX_WIDTH,
        onRequestClose: this.handleCloseModal,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(IntroductionModal_components_Introduction, {
          onVideoPlay: this.handleVideoPlay,
          onClose: this.handleCloseModal
        })
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const videoModals_IntroductionModal_IntroductionModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('introductionModal'), (0,react_redux/* connect */.Ng)(function (state) {
  return {
    introductionVideoSeen: (0,currentUser_selectors/* isIntroductionVideoSeen */.dV)(state)
  };
}, {
  updateUiSettings: currentUser_model/* currentUserStateModel */.b.action.updateUiSettings,
  highlightIntroductionVideo: currentUser_model/* currentUserStateModel */.b.action.highlightIntroductionVideo,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(IntroductionModal));
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/IntroductionModal/index.js

;// CONCATENATED MODULE: ./src/containers/ChangePassword/components/ChangePasswordForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ChangePasswordForm = ({"base":"BQggkkry86phDZbyTUpn"});
;// CONCATENATED MODULE: ./src/containers/ChangePassword/components/ChangePasswordForm.js






function ChangePasswordForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ChangePasswordForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ChangePasswordForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ChangePasswordForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var ChangePasswordForm = /*#__PURE__*/function (_PureComponent) {
  function ChangePasswordForm() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ChangePasswordForm);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ChangePasswordForm_callSuper(this, ChangePasswordForm, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      oldPassword: '',
      newPassword: '',
      newPasswordConfirm: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleInputValueChange", function (value, e) {
      var inputName = e.target.name;
      _this.setState((0,defineProperty/* default */.A)({}, inputName, value));
    });
    (0,defineProperty/* default */.A)(_this, "handleChangePassword", function () {
      var _this$state = _this.state,
        oldPassword = _this$state.oldPassword,
        newPassword = _this$state.newPassword;
      _this.props.onChangePassword({
        oldPassword: oldPassword,
        newPassword: newPassword
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ChangePasswordForm, _PureComponent);
  return (0,createClass/* default */.A)(ChangePasswordForm, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        changing = _this$props.changing,
        onCloseModal = _this$props.onCloseModal;
      var _this$state2 = this.state,
        oldPassword = _this$state2.oldPassword,
        newPassword = _this$state2.newPassword,
        newPasswordConfirm = _this$state2.newPasswordConfirm;
      var passwordsMismatch = newPassword !== newPasswordConfirm;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_ChangePasswordForm.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          required: true,
          fullWidth: true,
          value: oldPassword,
          name: "oldPassword",
          type: "password",
          autoComplete: "off",
          placeholder: l('Old password'),
          onChange: this.handleInputValueChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          required: true,
          fullWidth: true,
          value: newPassword,
          name: "newPassword",
          type: "password",
          autoComplete: "off",
          placeholder: l('New password'),
          onChange: this.handleInputValueChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          required: true,
          fullWidth: true,
          value: newPasswordConfirm,
          name: "newPasswordConfirm",
          type: "password",
          autoComplete: "off",
          errorText: newPasswordConfirm && passwordsMismatch && l('"New password" and "Confirm new password" doesn\'t match'),
          placeholder: l('Confirm new password'),
          onChange: this.handleInputValueChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            label: l('Cancel'),
            onClick: onCloseModal
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            disabled: passwordsMismatch,
            loading: changing,
            label: l('Change password'),
            onClick: this.handleChangePassword
          })]
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/ChangePassword/ChangePassword.js






function ChangePassword_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ChangePassword_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ChangePassword_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ChangePassword_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var ChangePassword = /*#__PURE__*/function (_PureComponent) {
  function ChangePassword() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ChangePassword);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ChangePassword_callSuper(this, ChangePassword, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleChangePassword", function (_ref) {
      var oldPassword = _ref.oldPassword,
        newPassword = _ref.newPassword;
      return _this.props.onChangePassword({
        oldPassword: oldPassword,
        newPassword: newPassword
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleModalClose", function () {
      _this.props.onCloseModal();
    });
    (0,defineProperty/* default */.A)(_this, "getValidationErrors", function (type) {
      switch (type) {
        case 'INCORRECT_PASSWORD':
          {
            return {
              title: l('Old password is incorrect'),
              message: l('Please enter correct old password')
            };
          }
        case 'VALIDATION_ERROR':
          {
            return {
              title: l('New password is too short'),
              message: l('Make sure that it\'s at least 6 characters long')
            };
          }
        default:
          {
            return {
              title: l('An error has occurred'),
              message: l('If reloading of the page doesn\'t fix the problem contact our support team')
            };
          }
      }
    });
    return _this;
  }
  (0,inherits/* default */.A)(ChangePassword, _PureComponent);
  return (0,createClass/* default */.A)(ChangePassword, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        validationError = _this$props.validationError,
        changing = _this$props.changing,
        changed = _this$props.changed;
      var validationErrorText = validationError && this.getValidationErrors(validationError.data.errorCode);
      if (changed) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
          title: l('Your password successfully changed'),
          image: "/static/images/success.svg",
          message: l('Now you can use your new password to login into YouScan account'),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            size: "small",
            label: l('Close'),
            onClick: this.handleModalClose
          })
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
          children: l('Change password', 'changePasswordCardLabel')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), validationErrorText && /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
          error: true,
          displayed: true,
          title: validationErrorText.title,
          text: validationErrorText.message
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(ChangePasswordForm, {
          changing: changing,
          onCloseModal: this.handleModalClose,
          onChangePassword: this.handleChangePassword
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/ChangePassword/index.js

// EXTERNAL MODULE: ./src/hooks/useApi.tsx
var useApi = __webpack_require__("lvrO");
;// CONCATENATED MODULE: ./src/containers/modals/ChangePasswordModal/ChangePasswordModal.tsx
var ChangePasswordModal_assign = (undefined && undefined.__assign) || function () {
    ChangePasswordModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChangePasswordModal_assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};







var ChangePasswordModal_MODAL_MAX_WIDTH = 400;
var ChangePasswordModal = function (props) {
    var _a = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.auth.changePassword), passwordChanged = _a.loaded, passwordChanging = _a.loading, passwordValidationError = _a.error, fetch = _a.fetch;
    var handleChangePassword = function (_a) {
        var oldPassword = _a.oldPassword, newPassword = _a.newPassword;
        return __awaiter(void 0, void 0, void 0, function () {
            return __generator(this, function (_b) {
                switch (_b.label) {
                    case 0: return [4 /*yield*/, fetch({ newPassword: newPassword, oldPassword: oldPassword })];
                    case 1:
                        _b.sent();
                        return [2 /*return*/];
                }
            });
        });
    };
    var show = props.show, handleHide = props.handleHide;
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, ChangePasswordModal_assign({ fullWidth: true, isOpen: show, maxWidth: ChangePasswordModal_MODAL_MAX_WIDTH, onRequestClose: handleHide }, { children: (0,jsx_runtime.jsx)(ChangePassword, { changed: passwordChanged, changing: passwordChanging, validationError: passwordValidationError === null || passwordValidationError === void 0 ? void 0 : passwordValidationError.response, onCloseModal: handleHide, onChangePassword: handleChangePassword }) })));
};
/* harmony default export */ const ChangePasswordModal_ChangePasswordModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('changePassword'))(ChangePasswordModal));

;// CONCATENATED MODULE: ./src/containers/modals/ChangePasswordModal/index.ts


// EXTERNAL MODULE: ./src/state/users/selectors.ts
var users_selectors = __webpack_require__("zcN7");
// EXTERNAL MODULE: ./node_modules/react-flip-move/dist/react-flip-move.es.js
var react_flip_move_es = __webpack_require__("2O3R");
// EXTERNAL MODULE: ./src/components/ui/InlineSelect/index.ts + 2 modules
var InlineSelect = __webpack_require__("+733");
;// CONCATENATED MODULE: ./src/containers/accountSettings/UserThemePermissionsSettings/components/UserThemePermissionsSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const UserThemePermissionsSettings = ({"overlayedBlock":"NVAQH3RSTyHOLKynP2LK","flexCenter":"pR5ZQwx7tp_xv8ZxUBhj","smartFeature":"NSI13h1JMbz9VJF4cf9z","tag":"ETWkxRgAg6CwLvm9Mthh","visibleScrollBar":"FrEX0FE9aXdKWHd0mPRj","hiddenScrollBar":"j2o3P7I7Nk3VXlUtuOYg","themes":"JcRW2IumcF7py7ySM8Ti","themeItem":"cCcYryoULXGjbv7FK1YY","selected":"u95huse7nembbT5iNlaL","permissionIcon":"osRO3svOAACVcC0qgZST","themeName":"YigyZmdJJTuSor0QbqEb","themeCheckbox":"BprimTvg96Ydyq_GeoL2","selector":"rP1ZiwAgc3eX8ZrSzvpS"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/UserThemePermissionsSettings/utils.ts
var permissionSortValues = {
    none: 0,
    view: 1,
    edit: 2,
    manage: 3,
};
var sortThemes = function (a, b) {
    var permissionValueA = permissionSortValues[a] || 0;
    var permissionValueB = permissionSortValues[b] || 0;
    return permissionValueB - permissionValueA;
};
var getUserPermissions = function () { return ({
    none: {
        value: 'none',
        label: l('Forbidden'),
        iconType: 'none',
    },
    view: {
        value: 'view',
        label: l('Read only'),
        iconType: 'view',
    },
    edit: {
        value: 'edit',
        label: l('Markup'),
        iconType: 'edit',
    },
    manage: {
        value: 'manage',
        label: l('Manage topic'),
        iconType: 'settings',
    },
}); };

;// CONCATENATED MODULE: ./src/containers/accountSettings/UserThemePermissionsSettings/components/UserThemePermissionsSettings.tsx
var UserThemePermissionsSettings_assign = (undefined && undefined.__assign) || function () {
    UserThemePermissionsSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return UserThemePermissionsSettings_assign.apply(this, arguments);
};
var UserThemePermissionsSettings_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var UserThemePermissionsSettings_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
















var UserThemePermissionsSettings_UserThemePermissionsSettings = function (_a) {
    var permissionsLoading = _a.permissionsLoading, profile = _a.profile, permissions = _a.permissions, themes = _a.themes, onHideModal = _a.onHideModal, onApply = _a.onApply;
    var _b = UserThemePermissionsSettings_read((0,react.useState)(''), 2), search = _b[0], setSearch = _b[1];
    var _c = UserThemePermissionsSettings_read((0,react.useState)([]), 2), selectedThemeIds = _c[0], setSelectedThemeIds = _c[1];
    var _d = UserThemePermissionsSettings_read((0,react.useState)({}), 2), changedPermissions = _d[0], setChangedPermissions = _d[1];
    (0,react.useEffect)(function () {
        setChangedPermissions(permissions);
    }, [permissions]);
    var handleThemeItemClick = function (event, themeId) {
        return event.shiftKey || event.altKey
            ? handleSelectThemes(event, themeId)
            : setSelectedThemeIds([]);
    };
    var handleSelectThemes = function (event, themeId) {
        if (event.shiftKey) {
            var selectedThemeIndex = selectedThemeIds.indexOf(themeId);
            setSelectedThemeIds(selectedThemeIndex === -1
                ? selectedThemeIds.concat([themeId])
                : selectedThemeIds.splice(selectedThemeIndex, 1));
        }
        if (event.altKey) {
            setSelectedThemeIds(getFilteredThemes().map(function (theme) { return String(theme.id); }));
        }
    };
    var handlePermissionChange = function (themeId, permissionValue) {
        var newPermissions = UserThemePermissionsSettings_assign({}, changedPermissions);
        if (selectedThemeIds.includes(themeId)) {
            newPermissions = (0,lodash.merge)(newPermissions, selectedThemeIds.reduce(function (permissions, id) {
                permissions[id] = permissionValue;
                return permissions;
            }, {}));
        }
        else {
            newPermissions[themeId] = permissionValue;
        }
        setChangedPermissions(newPermissions);
    };
    var handleApply = function () {
        onApply(changedPermissions);
        setSelectedThemeIds([]);
    };
    var getFilteredThemes = function () {
        return themes
            .filter(function (theme) {
            return "".concat(theme.name, " ").concat(theme.topicQuery.textQuery)
                .toLowerCase()
                .includes(search.toLowerCase());
        }).sort(function (a, b) {
            return sortThemes(getPermission(a.id), getPermission(b.id));
        });
    };
    var getPermission = function (themeId) {
        if (!changedPermissions) {
            return null;
        }
        return changedPermissions[String(themeId)];
    };
    var handleCheckboxChange = function (themeId) {
        var currentIndex = selectedThemeIds.indexOf(themeId);
        var newSelectedThemeIds = UserThemePermissionsSettings_spreadArray([], UserThemePermissionsSettings_read(selectedThemeIds), false);
        if (currentIndex === -1) {
            newSelectedThemeIds.push(themeId);
        }
        else {
            newSelectedThemeIds.splice(currentIndex, 1);
        }
        setSelectedThemeIds(newSelectedThemeIds);
    };
    var handleSelectAllCheckboxChange = function () {
        if (selectedThemeIds.length === themes.length) {
            setSelectedThemeIds([]);
        }
        else {
            setSelectedThemeIds(themes.map(function (theme) { return String(theme.id); }));
        }
    };
    var displayedThemes = getFilteredThemes();
    var userPermissions = getUserPermissions();
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: sprintf(l('Set topic permissions for %s'), (profile === null || profile === void 0 ? void 0 : profile.fullName) || (profile === null || profile === void 0 ? void 0 : profile.email)) }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), placeholder: l('Search'), value: search, onChange: setSearch }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)((react_isolated_scroll_lib_default()), UserThemePermissionsSettings_assign({ className: classnames_default()(UserThemePermissionsSettings.themes) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, UserThemePermissionsSettings_assign({ loaded: !permissionsLoading, empty: !themes.length, emptyStateImage: "/static/images/empty_search.png", emptyStateTitle: l('No topics were found'), emptyStateMessage: l('There are no topics with this name') }, { children: (0,jsx_runtime.jsxs)(react_flip_move_es/* default */.A, UserThemePermissionsSettings_assign({ duration: 300, easing: "ease-in" }, { children: [(0,jsx_runtime.jsx)("input", { type: "checkbox", checked: selectedThemeIds.length === themes.length, onChange: handleSelectAllCheckboxChange, className: UserThemePermissionsSettings.selectAllCheckbox }), displayedThemes.map(function (theme) {
                                var _a;
                                var name = theme.name;
                                var themeId = String(theme.id);
                                var permissionValue = getPermission(theme.id) || 'none';
                                var isSelected = selectedThemeIds.includes(themeId);
                                return ((0,jsx_runtime.jsxs)("div", UserThemePermissionsSettings_assign({ title: name, className: classnames_default()(UserThemePermissionsSettings.themeItem, (_a = {}, _a[UserThemePermissionsSettings.selected] = selectedThemeIds.includes(String(theme.id)), _a)) }, { children: [(0,jsx_runtime.jsx)("input", { type: "checkbox", checked: isSelected, onChange: function () { return handleCheckboxChange(themeId); }, className: UserThemePermissionsSettings.themeCheckbox }), (0,jsx_runtime.jsx)("span", UserThemePermissionsSettings_assign({ role: "presentation", className: classnames_default()(UserThemePermissionsSettings.themeName), onClick: function (e) { return handleThemeItemClick(e, themeId); } }, { children: name })), (0,jsx_runtime.jsx)(InlineSelect/* default */.A, UserThemePermissionsSettings_assign({ withoutPadding: true, position: "bottom right", value: permissionValue, options: Object.values(userPermissions), onChange: function (item) { return handlePermissionChange(themeId, item); } }, { children: (0,jsx_runtime.jsxs)("span", UserThemePermissionsSettings_assign({ className: classnames_default()(UserThemePermissionsSettings.permissionIcon) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: userPermissions[permissionValue].iconType }), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-down" })] })) }))] }), themeId));
                            })] })) })) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: onHideModal }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Apply'), onClick: handleApply })] })] }));
};
/* harmony default export */ const components_UserThemePermissionsSettings = ((0,react.memo)(UserThemePermissionsSettings_UserThemePermissionsSettings));

;// CONCATENATED MODULE: ./src/containers/accountSettings/UserThemePermissionsSettings/UserThemePermissionsSettings.tsx








var UserThemePermissionsContainer = function (_a) {
    var permissionsLoading = _a.permissionsLoading, themes = _a.themes, profile = _a.profile, permissions = _a.permissions, fetchUserPermissions = _a.fetchUserPermissions, updateUserPermissions = _a.updateUserPermissions, onModalHide = _a.onModalHide;
    (0,react.useEffect)(function () {
        fetchUserPermissions({ userId: profile.id });
    }, []);
    var handleApply = function (changedPermissions) {
        updateUserPermissions({
            userId: profile.id,
            themePermissions: changedPermissions,
        });
        onModalHide();
    };
    return ((0,jsx_runtime.jsx)(components_UserThemePermissionsSettings, { themes: themes, profile: profile, permissions: permissions, permissionsLoading: permissionsLoading, onApply: handleApply, onHideModal: onModalHide }));
};
/* harmony default export */ const accountSettings_UserThemePermissionsSettings_UserThemePermissionsSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    themes: (0,themes_selectors/* getThemesWithoutStats */.aj)(state),
    permissions: (0,users_selectors/* getUserPermissions */.ug)(state),
    permissionsLoading: (0,users_selectors/* isPermissionsLoading */.Rg)(state),
}); }, {
    fetchUserPermissions: users_model/* usersModel */.O.action.fetchUserPermissions,
    updateUserPermissions: users_model/* usersModel */.O.action.updateUserPermissions,
}), react.memo)(UserThemePermissionsContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/UserThemePermissionsSettings/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/UserPermissionsModal/UserPermissionsModal.js






var UserPermissionsModal_MODAL_MAX_WIDTH = 360;
var UserPermissionsModal = function UserPermissionsModal(_ref) {
  var show = _ref.show,
    profile = _ref.profile,
    handleHide = _ref.handleHide;
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
    fullWidth: true,
    isOpen: show,
    maxWidth: UserPermissionsModal_MODAL_MAX_WIDTH,
    onRequestClose: handleHide,
    children: /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_UserThemePermissionsSettings_UserThemePermissionsSettings, {
      profile: profile,
      onModalHide: handleHide
    })
  });
};
/* harmony default export */ const UserPermissionsModal_UserPermissionsModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('userPermissions'), react.memo)(UserPermissionsModal));
;// CONCATENATED MODULE: ./src/containers/modals/UserPermissionsModal/index.js

;// CONCATENATED MODULE: ./src/containers/modals/videoModals/WalkthroughVideoModal/WalkthroughVideoModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const WalkthroughVideoModal_WalkthroughVideoModal = ({"base":"UNk8GieIcF1jjX7aJ77D"});
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/WalkthroughVideoModal/WalkthroughVideoModal.js






function WalkthroughVideoModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, WalkthroughVideoModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function WalkthroughVideoModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (WalkthroughVideoModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var WalkthroughVideoModal_MODAL_MAX_WIDTH = 1000;
var WalkthroughVideoModal_VIDEO_OPTIONS = {
  height: '560',
  width: '1000'
};
var WalkthroughVideoModal = /*#__PURE__*/function (_PureComponent) {
  function WalkthroughVideoModal() {
    var _this;
    (0,classCallCheck/* default */.A)(this, WalkthroughVideoModal);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = WalkthroughVideoModal_callSuper(this, WalkthroughVideoModal, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleVideoPlay", function () {
      if (!_this.props.introductionVideoSeen) {
        _this.props.updateUiSettings({
          introductionVideoSeen: true
        });
      }
      _this.props.sendAnalyticalEvent({
        eventType: 'onboarding: introduction video watched'
      });
      _this.props.unhighlightIntroductionVideo();
    });
    return _this;
  }
  (0,inherits/* default */.A)(WalkthroughVideoModal, _PureComponent);
  return (0,createClass/* default */.A)(WalkthroughVideoModal, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        show = _this$props.show,
        handleHide = _this$props.handleHide;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
        fullWidth: true,
        isOpen: show,
        className: classnames_default()(WalkthroughVideoModal_WalkthroughVideoModal.base),
        maxWidth: WalkthroughVideoModal_MODAL_MAX_WIDTH,
        onRequestClose: handleHide,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(videos_SystemOverview, {
          options: WalkthroughVideoModal_VIDEO_OPTIONS,
          onPlay: this.handleVideoPlay
        })
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const videoModals_WalkthroughVideoModal_WalkthroughVideoModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('walkthroughVideoModal'), (0,react_redux/* connect */.Ng)(function (state) {
  return {
    introductionVideoSeen: (0,currentUser_selectors/* isIntroductionVideoSeen */.dV)(state)
  };
}, {
  updateUiSettings: currentUser_model/* currentUserStateModel */.b.action.updateUiSettings,
  unhighlightIntroductionVideo: currentUser_model/* currentUserStateModel */.b.action.unhighlightIntroductionVideo,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(WalkthroughVideoModal));
;// CONCATENATED MODULE: ./src/containers/modals/videoModals/WalkthroughVideoModal/index.js

// EXTERNAL MODULE: ./src/containers/helpers/WithUserTimeZone.js
var WithUserTimeZone = __webpack_require__("FNcx");
// EXTERNAL MODULE: ./src/utils/dates/timeUtils.ts
var timeUtils = __webpack_require__("P8Q3");
// EXTERNAL MODULE: ./src/components/ui/UserAvatar/index.ts
var UserAvatar = __webpack_require__("hbQ8");
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/components/LabeledData.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_LabeledData = ({"labeled":"nbj7VtWZJRFUHnB9YHCO","label":"gxmEhjjWhTLDNUlSJ5YQ","data":"uTDOfIHGzkMgtZQMNGkf"});
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/components/LabeledData.js




var LabeledData = function LabeledData(_ref) {
  var label = _ref.label,
    text = _ref.text,
    children = _ref.children,
    className = _ref.className;
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
    className: className,
    children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_LabeledData.labeled),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        className: classnames_default()(components_LabeledData.label),
        children: label
      }), children || /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        className: classnames_default()(components_LabeledData.data),
        children: text
      })]
    })
  });
};
/* harmony default export */ const HistoryCollectionsModal_components_LabeledData = (/*#__PURE__*/(0,react.memo)(LabeledData));
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/components/HistoryCollectionCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_HistoryCollectionCard = ({"card":"Nk0pPJg2E34sT9md0iS5","header":"wIHRfmKR4dtRNSZ2Ix4b","content":"KcDhPK13EO6pn67SayL8","user":"PMQ2opjcwTirR6NV1DQW","userAvatar":"LfET0rfAMIqtRhh1HSxK","userInfo":"dR9J_Q8NREXkqi7EE0w5","userName":"J2yzXr3itt6Xuw9I2FXn","userEmail":"KwjHEiSFAfErRRHRPyAb","collectionInfo":"_yUJEv0mIO42roZeak77","details":"pNajF24QWc79JEJkCp5A","period":"dBN2XTlIkYa2VTQw3qgN","periodChild":"mZImWGkQp50bsYyDhz6l","periodValue":"XLnT5MNwx_YmR56A7wqA","topic":"oEEwtr512ZmLpI2fwsU3","calendarIcon":"FIRNKJUdXyV172Lw0qM8","statsDetails":"zuHEO0AlEwPCeIJflWXm","skippedDuplicates":"ReeZDYXEszgFYj6NNarP","saved":"E_pegbRdZzQCMTpBPkLg","skipped":"sQyY15BEKHM6ekB2MYFC","duplicates":"M7znqc3lfo7URdyrGzQT","typeBadge":"Bf0NVYPfeeP6j7IBIjQJ","deep":"PE1t9OqDtMKydilUBww5","paid":"OKhDIIj_QJFk9di2PvHG"});
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/components/HistoryCollectionCard.js











var formatNumber = function formatNumber(number) {
  return numeral_default()(number).format('0,0');
};
var HistoryCollectionStatus = function HistoryCollectionStatus(_ref) {
  var status = _ref.status;
  var locale = (0,i18n/* getLocale */.JK)();
  var separator = locale === 'uk' ? ',' : '';
  switch (status) {
    case 'collecting':
      {
        return null;
      }
    case 'completed':
      {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
          children: [separator, /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and finished', 'historyCollection')]
        });
      }
    case 'aborted':
      {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
          children: [separator, /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and stopped', 'historyCollection')]
        });
      }
    case 'failed':
      {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
          children: [separator, /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and failed', 'historyCollection')]
        });
      }
    default:
      {
        return null;
      }
  }
};
var HistoryCollectionCard = function HistoryCollectionCard(_ref2) {
  var userEmail = _ref2.userEmail,
    userFirstName = _ref2.userFirstName,
    userLastName = _ref2.userLastName,
    from = _ref2.from,
    to = _ref2.to,
    topicName = _ref2.topicName,
    createdAt = _ref2.createdAt,
    type = _ref2.type,
    saved = _ref2.saved,
    skipped = _ref2.skipped,
    duplicates = _ref2.duplicates,
    status = _ref2.status;
  var renderTypeBadge = function renderTypeBadge(labelType) {
    var labelTypes = {
      deep: l('Deep collection', 'historyCollection'),
      paid: l('Paid Collection', 'historyCollection')
    };
    var label = labelTypes[labelType];
    if (!label) {
      return null;
    }
    return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(components_HistoryCollectionCard.typeBadge, components_HistoryCollectionCard[labelType]),
      children: label
    });
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_HistoryCollectionCard.card),
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_HistoryCollectionCard.header),
      children: [sprintf(l('Collection requested %s', 'historyCollection'), moment_default()(createdAt).format('L')), /*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionStatus, {
        status: status
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_HistoryCollectionCard.content),
      children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_HistoryCollectionCard.user),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(UserAvatar/* default */.A, {
          round: true,
          className: classnames_default()(components_HistoryCollectionCard.userAvatar),
          size: 40,
          email: userEmail,
          name: "".concat(userFirstName, " ").concat(userLastName)
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_HistoryCollectionCard.userInfo),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            className: classnames_default()(components_HistoryCollectionCard.userName),
            children: [userFirstName, " ", userLastName]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(components_HistoryCollectionCard.userEmail),
            children: userEmail
          })]
        })]
      }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_HistoryCollectionCard.collectionInfo),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_HistoryCollectionCard.details),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionsModal_components_LabeledData, {
            label: l('Period', 'historyCollection'),
            className: classnames_default()(components_HistoryCollectionCard.period),
            children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(components_HistoryCollectionCard.periodChild),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "calendar",
                size: 16,
                className: classnames_default()(components_HistoryCollectionCard.calendarIcon)
              }), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                className: classnames_default()(components_HistoryCollectionCard.periodValue),
                children: [moment_default()(from).format('L'), " - ", moment_default()(to).format('L')]
              })]
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionsModal_components_LabeledData, {
            className: classnames_default()(components_HistoryCollectionCard.topic),
            label: l('Topic', 'historyCollection'),
            text: topicName
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_HistoryCollectionCard.statsDetails),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_HistoryCollectionCard.skippedDuplicates),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionsModal_components_LabeledData, {
              className: classnames_default()(components_HistoryCollectionCard.skipped),
              label: l('Skipped', 'historyCollection'),
              text: formatNumber(skipped)
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionsModal_components_LabeledData, {
              className: classnames_default()(components_HistoryCollectionCard.duplicates),
              label: l('Duplicates', 'historyCollection'),
              text: formatNumber(duplicates)
            })]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionsModal_components_LabeledData, {
            className: classnames_default()(components_HistoryCollectionCard.saved),
            label: l('Saved', 'historyCollection'),
            text: formatNumber(saved)
          })]
        })]
      })]
    }), renderTypeBadge(type)]
  });
};
/* harmony default export */ const HistoryCollectionsModal_components_HistoryCollectionCard = (/*#__PURE__*/(0,react.memo)(HistoryCollectionCard));
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/HistoryCollectionsModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const HistoryCollectionsModal_HistoryCollectionsModal = ({"modal":"ms_Jkkf3QcFSJRtCC84m","content":"xJ9GMLjZh2Pv0fx2uLhi","header":"ieYEDOlokx5NF3Wer_On","headerText":"KB742YO8ma_yw5cleDIE","collections":"fmyEGye20YzmPCZqJ2rQ","helpers":"m90FLx8o7WBPaVhRFcHz","info":"xOI99LEoxelzEmpldyK7","availableDeepCollections":"hnXRii5B8ZLImJQxQkUV","nextDeepCollection":"XcJ1IyVezMSBtjyLZht0","nextDeepCollectionDate":"t7Xl5Tc4i2F7e7ihyA2k","closeIcon":"J6xTmWklSJitFap3FtjT","filters":"u185lklI9D7XWu1z1RMw","filter":"DKMF7gsPLsoKZwllSFBn","activeFilter":"uZavbexmXFoI4t6c3zBy","emptyState":"jLn_IckrT5cxiIx7RgTN","longList":"eVY_G_N8UppGz4Vk6buN"});
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/HistoryCollectionsModal.js






function HistoryCollectionsModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, HistoryCollectionsModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function HistoryCollectionsModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (HistoryCollectionsModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }


















var HISTORY_COLLECTION_LIST_ROW_HEIGHT = 165;

// TODO: OB refactor to make easier
var FILTER_VALUE = {
  ALL: 'ALL',
  BASE: 'BASE',
  DEEP: 'DEEP',
  PAID: 'PAID'
};
var ANALYTICAL_PROP = (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, FILTER_VALUE.ALL, 'all'), FILTER_VALUE.DEEP, 'deep'), FILTER_VALUE.PAID, 'paid'), FILTER_VALUE.BASE, 'base');
var HISTORY_COLLECTION_TYPE = {
  DEEP: 'deep',
  PAID: 'paid',
  RECENT: 'recent',
  INITIAL: 'initial',
  CUSTOM: 'custom'
};
var FILTER_VALUE_MAPPED_WITH_HISTORY_COLLECTION_TYPE = (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, FILTER_VALUE.ALL, Object.values(HISTORY_COLLECTION_TYPE)), FILTER_VALUE.DEEP, [HISTORY_COLLECTION_TYPE.DEEP]), FILTER_VALUE.PAID, [HISTORY_COLLECTION_TYPE.PAID]), FILTER_VALUE.BASE, [HISTORY_COLLECTION_TYPE.INITIAL, HISTORY_COLLECTION_TYPE.RECENT]);
var getFilters = function getFilters(permissions) {
  return [{
    id: 'all',
    label: l('All', 'historyCollection'),
    value: FILTER_VALUE.ALL
  }, {
    id: 'base',
    label: l('Basic', 'historyCollection'),
    value: FILTER_VALUE.BASE
  }, {
    id: 'deep',
    label: l('Deep', 'historyCollection'),
    value: FILTER_VALUE.DEEP,
    isAvailable: function isAvailable(_ref) {
      var isDeepFilterAllowed = _ref.isDeepFilterAllowed;
      return isDeepFilterAllowed;
    }
  }, {
    id: 'paid',
    label: l('Paid', 'historyCollection'),
    value: FILTER_VALUE.PAID
  }].filter(function (filter) {
    return !filter.isAvailable || filter.isAvailable(permissions);
  });
};
var HistoryCollectionsModal = /*#__PURE__*/function (_PureComponent) {
  function HistoryCollectionsModal() {
    var _this;
    (0,classCallCheck/* default */.A)(this, HistoryCollectionsModal);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = HistoryCollectionsModal_callSuper(this, HistoryCollectionsModal, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      filter: FILTER_VALUE.ALL
    });
    (0,defineProperty/* default */.A)(_this, "setFilter", function (filter) {
      _this.setState({
        filter: filter
      });
      _this.sendEvent(ANALYTICAL_PROP[filter]);
    });
    (0,defineProperty/* default */.A)(_this, "renderHistoryCollection", function (historyCollections) {
      return function (_ref2) {
        var index = _ref2.index,
          style = _ref2.style,
          key = _ref2.key;
        var historyJob = historyCollections[index];
        return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          style: style,
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollectionsModal_components_HistoryCollectionCard, {
            topicName: historyJob.topicName,
            userFirstName: historyJob.userFirstName,
            userLastName: historyJob.userLastName,
            userEmail: historyJob.userEmail,
            from: historyJob.from,
            to: historyJob.to,
            saved: historyJob.saved,
            skipped: historyJob.skipped,
            duplicates: historyJob.duplicates,
            type: historyJob.type,
            createdAt: historyJob.createdAt,
            status: historyJob.status
          }, historyJob.id)
        }, key);
      };
    });
    return _this;
  }
  (0,inherits/* default */.A)(HistoryCollectionsModal, _PureComponent);
  return (0,createClass/* default */.A)(HistoryCollectionsModal, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.sendEvent(ANALYTICAL_PROP[this.state.filter]);
    }
  }, {
    key: "sendEvent",
    value: function sendEvent(value) {
      this.props.sendAnalyticalEvent({
        eventType: 'Historical data usage viewed',
        properties: {
          value: value
        }
      });
    }
  }, {
    key: "renderHistoryCollections",
    value: function renderHistoryCollections() {
      var _this2 = this;
      var previousHistoryCollections = this.props.previousHistoryCollections;
      var filter = this.state.filter;
      var types = FILTER_VALUE_MAPPED_WITH_HISTORY_COLLECTION_TYPE[filter];
      var historyCollections = previousHistoryCollections.filter(function (collection) {
        return types.some(function (type) {
          return collection.type === type;
        });
      });
      if (!historyCollections.length) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
          large: true,
          className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.emptyState),
          message: l('There are no data collections for the last 30 days', 'historyCollection')
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.longList),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(dist_es/* AutoSizer */.t$, {
          children: function children(_ref3) {
            var height = _ref3.height,
              width = _ref3.width;
            return /*#__PURE__*/(0,jsx_runtime.jsx)(dist_es/* List */.B8, {
              scrollToIndex: 0,
              rowCount: historyCollections.length,
              rowHeight: HISTORY_COLLECTION_LIST_ROW_HEIGHT,
              width: width,
              overscanRowCount: 20,
              height: height,
              rowRenderer: _this2.renderHistoryCollection(historyCollections)
            });
          }
        })
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this3 = this;
      var filter = this.state.filter;
      var _this$props = this.props,
        show = _this$props.show,
        handleHide = _this$props.handleHide,
        deepCollectionsLimit = _this$props.deepCollectionsLimit,
        deepCollectionsUsed = _this$props.deepCollectionsUsed,
        isDeepFilterAllowed = _this$props.isDeepFilterAllowed,
        nextDeepCollectionAvailableAt = _this$props.nextDeepCollectionAvailableAt,
        hasUnlimitedHistoryCollection = _this$props.hasUnlimitedHistoryCollection;
      var availableDeepCollectionsCount = deepCollectionsLimit - deepCollectionsUsed;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
        isOpen: show,
        className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.modal),
        onRequestClose: handleHide,
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.content),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.header),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
              className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.headerText),
              children: l('Historical data usage', 'historyCollection')
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.helpers),
              children: [account_selectors/* isDeepHistoryCollectionAllowed */.dX && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.info),
                children: [!!availableDeepCollectionsCount && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                  className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.availableDeepCollections),
                  children: sprintf(l('%d out of %d deep history collections available', 'historyCollection'), availableDeepCollectionsCount, deepCollectionsLimit || 0)
                }), nextDeepCollectionAvailableAt && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
                  children: [/*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                    className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.nextDeepCollection),
                    children: [l('New deep collection will be credited on', 'historyCollection'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                      className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.nextDeepCollectionDate),
                      children: /*#__PURE__*/(0,jsx_runtime.jsx)(WithUserTimeZone/* default */.A, {
                        children: function children(timeZone) {
                          return (0,timeUtils/* getTimeWithTimeZone */.vP)({
                            timeZone: timeZone,
                            dateTime: nextDeepCollectionAvailableAt,
                            format: 'LL'
                          });
                        }
                      })
                    })]
                  })]
                })]
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                size: 24,
                type: "close",
                color: "black",
                className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.closeIcon),
                onClick: handleHide
              })]
            })]
          }), !hasUnlimitedHistoryCollection && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.filters),
            children: getFilters({
              isDeepFilterAllowed: isDeepFilterAllowed
            }).map(function (_ref4) {
              var id = _ref4.id,
                label = _ref4.label,
                value = _ref4.value;
              return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.filter, (0,defineProperty/* default */.A)({}, HistoryCollectionsModal_HistoryCollectionsModal.activeFilter, filter === value)),
                onClick: function onClick() {
                  return _this3.setFilter(value);
                },
                children: label
              }, id);
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(HistoryCollectionsModal_HistoryCollectionsModal.collections),
            children: this.renderHistoryCollections()
          })]
        })
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const modals_HistoryCollectionsModal_HistoryCollectionsModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('historyCollections'), (0,react_redux/* connect */.Ng)(function (state) {
  return {
    previousHistoryCollections: (0,themes_selectors/* getPreviousHistoryCollections */.xp)(state),
    deepCollectionsLimit: (0,account_selectors/* getDeepHistoryCollectionsLimit */.B9)(state),
    deepCollectionsUsed: (0,account_selectors/* getDeepHistoryCollectionsUsed */.ZI)(state),
    isDeepFilterAllowed: !(0,account_selectors/* isDeepHistoryCollectionDisabled */.nl)(state),
    nextDeepCollectionAvailableAt: (0,account_selectors/* getNextDeepCollectionAvailableAt */.Yu)(state),
    hasUnlimitedHistoryCollection: (0,themes_selectors/* hasUnlimitedHistory */.GF)(state)
  };
}, {
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(HistoryCollectionsModal));
;// CONCATENATED MODULE: ./src/containers/modals/HistoryCollectionsModal/index.js

;// CONCATENATED MODULE: ./src/containers/modals/UnavailableFeatureModal/UnavailableFeatureModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const UnavailableFeatureModal_UnavailableFeatureModal = ({"title":"LUOOlklmeP6ESwQF2pup","modalContent":"HYEDTqc8FOmZsRNw1NEe"});
;// CONCATENATED MODULE: ./src/containers/modals/UnavailableFeatureModal/UnavailableFeatureModal.js










var UnavailableFeatureModal_MODAL_MAX_WIDTH = 550;
var UnavailableFeatureModal = function UnavailableFeatureModal(_ref) {
  var show = _ref.show,
    handleHide = _ref.handleHide;
  var knowledgeBaseLink = (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.CUSTOM_DASHBOARDS);
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Modal/* default */.A, {
    fullWidth: true,
    isOpen: show,
    maxWidth: UnavailableFeatureModal_MODAL_MAX_WIDTH,
    onRequestClose: handleHide,
    children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
        className: classnames_default()(UnavailableFeatureModal_UnavailableFeatureModal.title),
        children: l('Unfortunately, your subscription does not support this feature.')
      }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(UnavailableFeatureModal_UnavailableFeatureModal.modalContent),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          children: [l("That's an easy fix!"), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), "\uD83D\uDE09", /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('You can ask our support team about subscription plans and choose one that is more appropriate for your tasks.')]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(UnavailableFeatureModal_UnavailableFeatureModal.modalContent),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: l('Learn more about Custom Dashboards in our')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: knowledgeBaseLink,
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Knowledge base')
          }), "."]
        })]
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, {
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          ghost: true,
          primary: true,
          label: l('Close'),
          onClick: handleHide
        })
      })]
    })
  });
};
/* harmony default export */ const modals_UnavailableFeatureModal_UnavailableFeatureModal = ((0,connectModal/* default */.A)('unavailableFeature')(UnavailableFeatureModal));
;// CONCATENATED MODULE: ./src/containers/modals/UnavailableFeatureModal/index.js

;// CONCATENATED MODULE: ./src/containers/modals/UnsavedFeatureModal/UnsavedFeatureModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const UnsavedFeatureModal = ({"title":"lV6H10QLxP4QtyeZunei","modalContent":"sVu33sqZqrzCe9bUp0FD"});
;// CONCATENATED MODULE: ./src/containers/modals/UnsavedFeatureModal/UnsavedFeatureModal.tsx
var UnsavedFeatureModal_assign = (undefined && undefined.__assign) || function () {
    UnsavedFeatureModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return UnsavedFeatureModal_assign.apply(this, arguments);
};









var UnsavedFeatureModal_UnsavedFeatureModal = function (_a) {
    var show = _a.show, handleHide = _a.handleHide, onConfirm = _a.onConfirm, onCancel = _a.onCancel;
    var handleCancel = function () {
        onCancel();
        handleHide();
    };
    var handleConfirm = function () {
        onConfirm();
        handleHide();
    };
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, UnsavedFeatureModal_assign({ isOpen: show, onRequestClose: handleCancel }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, UnsavedFeatureModal_assign({ className: classnames_default()(UnsavedFeatureModal.title) }, { children: l('Unsaved changes') })), (0,jsx_runtime.jsx)("div", UnsavedFeatureModal_assign({ className: classnames_default()(UnsavedFeatureModal.modalContent) }, { children: l('Do you really want to leave this page? All unsaved changes will be lost.') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { className: classnames_default()(UnsavedFeatureModal.btn), label: l('Cancel changes'), onClick: handleConfirm }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, className: classnames_default()(UnsavedFeatureModal.btn), label: l('Stay on the page'), onClick: handleCancel })] })] })));
};
/* harmony default export */ const modals_UnsavedFeatureModal_UnsavedFeatureModal = ((0,connectModal/* default */.A)('unsavedFeature')((UnsavedFeatureModal_UnsavedFeatureModal)));

// EXTERNAL MODULE: ./src/state/customDashboards/selectors.ts
var customDashboards_selectors = __webpack_require__("z86f");
// EXTERNAL MODULE: ./src/utils/customDashboards/layout.ts
var layout = __webpack_require__("TAzt");
// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/DashboardWidget.tsx + 5 modules
var DashboardWidget = __webpack_require__("3CuU");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardWidget/CustomDashboardWidgetModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CustomDashboardWidgetModal = ({"base":"z3ONKgUkhIx6f6A0jFy1"});
;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardWidget/CustomDashboardWidgetModal.tsx
var CustomDashboardWidgetModal_assign = (undefined && undefined.__assign) || function () {
    CustomDashboardWidgetModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CustomDashboardWidgetModal_assign.apply(this, arguments);
};










var SIZE = 1;
var CustomDashboardWidgetModal_CustomDashboardWidgetModal = function (_a) {
    var widget = _a.widget, dashboardId = _a.dashboardId, widgetId = _a.widgetId, handleHide = _a.handleHide;
    if (!widget)
        return null;
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, CustomDashboardWidgetModal_assign({ isOpen: true, fitted: true, withCloseIcon: true, className: classnames_default()(CustomDashboardWidgetModal.base), onRequestClose: handleHide }, { children: (0,jsx_runtime.jsx)(DashboardWidget/* default */.A, { fullWidth: true, columns: SIZE, rows: SIZE, blurred: false, widget: widget, widgetId: widgetId, dashboardId: dashboardId }) })));
};
/* harmony default export */ const CustomDashboardWidget_CustomDashboardWidgetModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)(layout/* CUSTOM_DASHBOARD_WIDGET_MODAL_ID */.u6), (0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        widget: (0,customDashboards_selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
    });
}))(CustomDashboardWidgetModal_CustomDashboardWidgetModal));

;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardWidget/index.ts


// EXTERNAL MODULE: ./src/components/ui/Modal/Modal.tsx + 1 modules
var Modal_Modal = __webpack_require__("7Lz/");
// EXTERNAL MODULE: ./src/state/entities/ui/actions.js
var ui_actions = __webpack_require__("iY5o");
// EXTERNAL MODULE: ./src/components/ui/Label/index.ts + 2 modules
var Label = __webpack_require__("HiCK");
;// CONCATENATED MODULE: ./src/containers/modals/EditTrend/EditTrend.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EditTrend = ({"modalTitle":"S09xKknUHbF32HGwCueS"});
;// CONCATENATED MODULE: ./src/containers/modals/EditTrend/EditTrend.tsx
var EditTrend_assign = (undefined && undefined.__assign) || function () {
    EditTrend_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return EditTrend_assign.apply(this, arguments);
};
var EditTrend_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var EditTrend_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var EditTrend_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



















var MAX_LENGTH = 255;
var EditTrend_EditTrend = function (_a) {
    var show = _a.show, originalName = _a.name, originalSentiment = _a.sentiment, topicId = _a.topicId, trendId = _a.trendId, showFrom = _a.showFrom, sendAnalyticalEvent = _a.sendAnalyticalEvent, handleHide = _a.handleHide, updateUiTrends = _a.updateUiTrends, updateUiTrendsNew = _a.updateUiTrendsNew;
    var _b = EditTrend_read((0,react.useState)(originalName || ''), 2), name = _b[0], setName = _b[1];
    var _c = EditTrend_read((0,react.useState)(originalSentiment), 2), sentiment = _c[0], setSentiment = _c[1];
    var _d = EditTrend_read((0,react.useState)(''), 2), error = _d[0], setError = _d[1];
    var _e = EditTrend_read((0,react.useState)(false), 2), isManual = _e[0], setIsManual = _e[1];
    (0,react.useEffect)(function () {
        sendEvent('popup opened');
    }, []);
    var handleChange = function (text) {
        if (text.length > MAX_LENGTH) {
            setError(l('The name exceeds maximum character limit 255'));
        }
        else if (!text) {
            setError(l('Field must not be empty.'));
        }
        else {
            setError('');
        }
        setName(text);
    };
    function handleApply() {
        return EditTrend_awaiter(this, void 0, void 0, function () {
            return EditTrend_generator(this, function (_a) {
                switch (_a.label) {
                    case 0:
                        if (originalName !== name)
                            sendEvent('name changed');
                        if (originalSentiment !== sentiment)
                            sendEvent('sentiment changed');
                        return [4 /*yield*/, apiSingleton/* default */.A.stats.updateTrend({ topicId: topicId, trendId: trendId, sentiment: sentiment, name: name })];
                    case 1:
                        _a.sent();
                        updateUiTrends({ ids: [trendId], value: { name: name, sentiment: sentiment } });
                        updateUiTrendsNew({ ids: [trendId], value: { name: name, sentiment: sentiment } });
                        handleHide();
                        return [2 /*return*/];
                }
            });
        });
    }
    var handleChangeSentiment = function (s) {
        setIsManual(true);
        setSentiment(s);
    };
    return ((0,jsx_runtime.jsxs)(Modal_Modal/* default */.A, EditTrend_assign({ isOpen: show, onRequestClose: handleHide }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, EditTrend_assign({ className: classnames_default()(EditTrend.modalTitle) }, { children: l('Edit trend') })), (0,jsx_runtime.jsx)(TextArea/* default */.A, { required: true, fullWidth: true, label: l('Name'), errorText: error, value: name, onChange: handleChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Sentiment') }), (0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, { manual: isManual, selected: sentiment, onChange: handleChangeSentiment }), (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleHide }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: !!error, label: l('Apply'), onClick: handleApply })] })] })));
    function sendEvent(eventType) {
        sendAnalyticalEvent({ eventType: "Edit trend: ".concat(eventType), properties: { from: showFrom } });
    }
};
/* harmony default export */ const modals_EditTrend_EditTrend = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('editTrend'), (0,react_redux/* connect */.Ng)(null, {
    updateUiTrendsNew: ui_model/* uiEntitiesModel */.P.action.updateUiTrends,
    updateUiTrends: ui_actions/* updateUiTrends */.Qi,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(EditTrend_EditTrend));

;// CONCATENATED MODULE: ./src/containers/modals/EditTrend/index.ts


// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
var slicedToArray = __webpack_require__("oYSA");
// EXTERNAL MODULE: ./node_modules/detect-browser/index.js
var detect_browser = __webpack_require__("SjWX");
var detect_browser_default = /*#__PURE__*/__webpack_require__.n(detect_browser);
;// CONCATENATED MODULE: ./src/utils/isBrowserIncompatible.js

var browser = (0,detect_browser.detect)();
var browserVersion = Number(browser.version.split('.', 1));
var getBrowsers = function getBrowsers() {
  return {
    chrome: 55,
    firefox: 50,
    opera: 44,
    yandexbrowser: 17,
    safari: 10,
    edge: 14
  };
};
var isBrowserIncompatible = function isBrowserIncompatible() {
  var compatibleBrowser = getBrowsers();
  return browserVersion < compatibleBrowser[browser.name.toLowerCase()];
};
/* harmony default export */ const utils_isBrowserIncompatible = (isBrowserIncompatible);
// EXTERNAL MODULE: ./node_modules/disable-scroll/es/index.js
var disable_scroll_es = __webpack_require__("sSgZ");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
;// CONCATENATED MODULE: ./src/containers/BrowserCompatibilityInspector/components/IncompatibilityMessage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_IncompatibilityMessage = ({"base":"pPJvOC6wSy3QgJyzv9lt","messageContainer":"y8wXX1uu2mGeuWTeRheT","browserLogo":"B4796ZnF7BxAIp3Qyzkg","blurredContent":"XBZS4eVEntfhOddKpT4n"});
;// CONCATENATED MODULE: ./src/containers/BrowserCompatibilityInspector/components/IncompatibilityMessage.js





function IncompatibilityMessage_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, IncompatibilityMessage_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function IncompatibilityMessage_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (IncompatibilityMessage_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }









var BROWSER_INFO = {
  chrome: {
    imageSrc: '/static/images/chrome_image.png',
    updateGuideLink: 'https://support.google.com/chrome/answer/95414?co=GENIE.Platform%3DDesktop&hl=en'
  },
  firefox: {
    imageSrc: '/static/images/firefox_image.png',
    updateGuideLink: 'https://support.mozilla.org/en-US/kb/update-firefox-latest-version'
  },
  opera: {
    imageSrc: '/static/images/opera_image.png',
    updateGuideLink: 'http://help.opera.com/Mac/10.50/en/autoupdate.html'
  },
  yandexbrowser: {
    imageSrc: '/static/images/yandexBrowser_image.png',
    updateGuideLink: 'https://yandex.ru/support/browser/faq/faq-install.html#faq-install__last-version'
  },
  safari: {
    imageSrc: '/static/images/safari_image.png',
    updateGuideLink: 'https://support.apple.com/en-us/HT204416'
  },
  edge: {
    imageSrc: '/static/images/edge_image.png',
    updateGuideLink: 'https://answers.microsoft.com/en-us/windows/forum/apps_windows_10-msedge/how-do-i-update-edge-browser/72aa3a08-8b52-472b-bcc0-22c3b2a59698'
  }
};
var IncompatibilityMessage = /*#__PURE__*/function (_PureComponent) {
  function IncompatibilityMessage() {
    (0,classCallCheck/* default */.A)(this, IncompatibilityMessage);
    return IncompatibilityMessage_callSuper(this, IncompatibilityMessage, arguments);
  }
  (0,inherits/* default */.A)(IncompatibilityMessage, _PureComponent);
  return (0,createClass/* default */.A)(IncompatibilityMessage, [{
    key: "componentDidMount",
    value:
    // HACK: do not use disableScroll
    function componentDidMount() {
      disable_scroll_es/* default */.A.on();
    }

    // same thing
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      disable_scroll_es/* default */.A.off();
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        browserName = _this$props.browserName,
        onMessageHide = _this$props.onMessageHide;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_IncompatibilityMessage.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
          className: classnames_default()(components_IncompatibilityMessage.messageContainer),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
            className: classnames_default()(components_IncompatibilityMessage.browserLogo),
            src: BROWSER_INFO[browserName].imageSrc,
            alt: browserName
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
              children: l('Looks like your browser is a little out of date!')
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
              children: [l('Unfortunately, we can\'t be sure that your current browser' + ' version can provide support of the latest technologies that we use in YouScan'), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), l('Please, update your browser for much more comfortable work' + ' and to avoid problems that can occur due to incompatibility')]
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                label: l('Ok, I will update later'),
                onClick: onMessageHide
              }), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
                href: BROWSER_INFO[browserName].updateGuideLink,
                children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                  primary: true,
                  label: l('Update now')
                })
              })]
            })]
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(components_IncompatibilityMessage.blurredContent)
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/BrowserCompatibilityInspector/BrowserCompatibilityInspector.js






var BrowserCompatibilityInspector = function BrowserCompatibilityInspector() {
  var _useState = (0,react.useState)(sessionStorage.getItem('browserMessageDismissed')),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    messageDismissed = _useState2[0],
    changeMessageDismissed = _useState2[1];
  var handleMessageHide = function handleMessageHide() {
    sessionStorage.setItem('browserMessageDismissed', 'true');
    changeMessageDismissed(true);
  };
  var show = utils_isBrowserIncompatible() && !messageDismissed;
  return show && /*#__PURE__*/(0,jsx_runtime.jsx)(IncompatibilityMessage, {
    browserName: (detect_browser_default()).name,
    onMessageHide: handleMessageHide
  });
};
/* harmony default export */ const BrowserCompatibilityInspector_BrowserCompatibilityInspector = (/*#__PURE__*/(0,react.memo)(BrowserCompatibilityInspector));
;// CONCATENATED MODULE: ./src/containers/BrowserCompatibilityInspector/index.js

// EXTERNAL MODULE: ./src/models/CustomDashboards.ts
var CustomDashboards = __webpack_require__("svtq");
// EXTERNAL MODULE: ./src/components/ui/H1/index.ts + 2 modules
var H1 = __webpack_require__("OIx8");
// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboardTemplates/templates.ts
var templates = __webpack_require__("BIvI");
// EXTERNAL MODULE: ./src/containers/customDashboard/components/CustomDashnoardSelectTopic/CustomDashboardSelectTopic.tsx + 1 modules
var CustomDashboardSelectTopic = __webpack_require__("1vwv");
// EXTERNAL MODULE: ./src/state/customDashboards/dashboardSelectors.ts
var dashboardSelectors = __webpack_require__("jL7h");
// EXTERNAL MODULE: ./src/containers/customDashboard/components/LimitReachedTooltip/index.ts + 1 modules
var LimitReachedTooltip = __webpack_require__("cAtx");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboardTemplates/CustomDashboardTemplatesView/CustomDashboardTemplatesView.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CustomDashboardTemplatesView = ({"base":"QmH1i5DPRi0vuhqSciiU","selectTemplate":"wNFtVTW4qK7M8N_ALaEK","selectTemplateContainer":"pQ1N8A9RSvMK7C8xoWnm","sidePanel":"JL7GjJVuTgZvGDN2ytav","sidePanelTitle":"iVivwmRh7p2qy_RH2NKs","tab":"Apv3wSPVlkf46tQLNL0P","selected":"x9xAEy8TtxV1sEk1TOzt","mainBlock":"BX3qcRZC6bwyavEy3VLm","title":"CmXwh_502r4qaddQTt5s","dashboardName":"_5SBmCQCze2MEwC8TBpQ","subtitle":"Z3wgYHWNSM2MPIqg2QW5","button":"OxrCqrpdU89XIAZFDWqQ","imageContainer":"nLw5RI7xOndE22hOYFmR","image":"gtq2jiQqu_IwAp6umRV6","selectTopicContainer":"nlKi5fEfBw6r6pOVF9ZT","select":"y1DFf8S97g2R7C9oWQ7o","selectLine":"HMDKqjFNkjb4o4jlq5j0","addTopic":"sopFrAlhyzV_gWSftWCo","removeTopic":"vQ2rgvI7EYptJ8ESHx5H"});
// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboardConstructor/components/NameField.tsx
var NameField = __webpack_require__("LEVl");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboardTemplates/CustomDashboardTemplatesView/CustomDashboardTemplatesView.tsx
var CustomDashboardTemplatesView_assign = (undefined && undefined.__assign) || function () {
    CustomDashboardTemplatesView_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CustomDashboardTemplatesView_assign.apply(this, arguments);
};
var CustomDashboardTemplatesView_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var CustomDashboardTemplatesView_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};





















var CustomDashboardTemplatesView_CustomDashboardTemplatesView = function (props) {
    var _a;
    (0,react.useEffect)(function () {
        props.sendAnalyticalEvent({ eventType: 'Custom dashboards: template preview opened' });
    }, []);
    var templateTabs = (0,templates/* getTemplatesConfig */.y)();
    var _b = CustomDashboardTemplatesView_read((0,react.useState)(props.type || CustomDashboards/* CustomDashboardTemplates */.Vs.BrandHealth), 2), type = _b[0], setType = _b[1];
    var _c = CustomDashboardTemplatesView_read((0,react.useState)('selectTemplate'), 2), step = _c[0], setStep = _c[1];
    var _d = CustomDashboardTemplatesView_read((0,react.useState)((_a = props.defaultTopicId) !== null && _a !== void 0 ? _a : ''), 2), topicId = _d[0], setTopicId = _d[1];
    var _e = CustomDashboardTemplatesView_read((0,react.useState)(['']), 2), comparisonTopicIds = _e[0], setComparisonTopicIds = _e[1];
    var selectedTab = templateTabs[type];
    var _f = CustomDashboardTemplatesView_read((0,react.useState)(selectedTab.title), 2), dashboardName = _f[0], setDashboardName = _f[1];
    var handleCreate = function () {
        props.createTemplate({
            type: type,
            topicId: Number(topicId),
            comparisonTopicIds: comparisonTopicIds.length ? comparisonTopicIds.map(Number) : null,
            dashboardId: props.dashboardId,
            dashboardName: dashboardName
        });
        props.hideModal(layout/* CUSTOM_DASHBOARD_TEMPLATE_MODAL_ID */.wo);
    };
    var handleChangeComparisonTopic = function (index) { return function (option) {
        setComparisonTopicIds(function (prevState) {
            var state = CustomDashboardTemplatesView_spreadArray([], CustomDashboardTemplatesView_read(prevState), false);
            state[index] = (option === null || option === void 0 ? void 0 : option.value) || '';
            return state;
        });
    }; };
    var handleAddTopic = function () {
        setComparisonTopicIds(function (prevState) {
            var state = CustomDashboardTemplatesView_spreadArray([], CustomDashboardTemplatesView_read(prevState), false);
            state.push('');
            return state;
        });
    };
    var handleRemoveTopic = function (index) {
        setComparisonTopicIds(function (prevState) {
            return prevState.filter(function (_, i) { return i !== index; });
        });
    };
    return (0,jsx_runtime.jsx)("div", CustomDashboardTemplatesView_assign({ className: classnames_default()(CustomDashboardTemplatesView.base) }, { children: step === 'selectTemplate' ? renderSelectTemplate() : renderSelectTopic() }));
    function renderSelectTemplate() {
        return ((0,jsx_runtime.jsx)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.selectTemplate }, { children: (0,jsx_runtime.jsxs)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.selectTemplateContainer }, { children: [(0,jsx_runtime.jsxs)("nav", CustomDashboardTemplatesView_assign({ className: classnames_default()(CustomDashboardTemplatesView.sidePanel) }, { children: [(0,jsx_runtime.jsx)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.sidePanelTitle }, { children: l('Templates') })), (0,jsx_runtime.jsx)("ul", { children: Object.entries(templateTabs).map(function (_a) {
                                    var _b;
                                    var _c = CustomDashboardTemplatesView_read(_a, 2), id = _c[0], tab = _c[1];
                                    return ((0,jsx_runtime.jsx)("li", CustomDashboardTemplatesView_assign({ className: classnames_default()(CustomDashboardTemplatesView.tab, (_b = {},
                                            _b[CustomDashboardTemplatesView.selected] = id === type,
                                            _b)), onClick: function () { return setType(id); } }, { children: tab.title }), id));
                                }) })] })), (0,jsx_runtime.jsx)("div", CustomDashboardTemplatesView_assign({ className: classnames_default()(CustomDashboardTemplatesView.mainBlock) }, { children: (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H1/* default */.A, CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.title }, { children: selectedTab.title })), (0,jsx_runtime.jsx)(H3/* default */.A, CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.subtitle }, { children: selectedTab.subtitle })), props.isLimitReached && !props.dashboardId ? ((0,jsx_runtime.jsx)(LimitReachedTooltip/* default */.A, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { disabled: true, primary: true, className: CustomDashboardTemplatesView.button, label: l('Use template') }) })) : ((0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, className: CustomDashboardTemplatesView.button, label: l('Use template'), onClick: function () {
                                        setStep('selectTopic');
                                    } })), (0,jsx_runtime.jsx)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.imageContainer }, { children: (0,jsx_runtime.jsx)("img", { src: selectedTab.imageSrc, alt: selectedTab.title, className: CustomDashboardTemplatesView.image }) }))] }) }))] })) })));
    }
    function renderSelectTopic() {
        return ((0,jsx_runtime.jsxs)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.selectTopicContainer }, { children: [props.dashboardId ? null : ((0,jsx_runtime.jsx)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.dashboardName }, { children: (0,jsx_runtime.jsx)(NameField/* default */.A, { value: dashboardName, onChange: setDashboardName }) }))), (0,jsx_runtime.jsx)(H3/* default */.A, CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.subtitle }, { children: selectedTab.withTwoTopics
                        ? l('Choose up to 10 topics for comparison. To change the topic go to widget settings')
                        : l('Select a topic to get started') })), (0,jsx_runtime.jsx)(CustomDashboardSelectTopic/* default */.A, { className: CustomDashboardTemplatesView.select, onChange: function (option) {
                        setTopicId((option === null || option === void 0 ? void 0 : option.value) || '');
                    }, selectedTopicId: topicId }), selectedTab.withTwoTopics && ((0,jsx_runtime.jsxs)("div", { children: [comparisonTopicIds.map(function (id, index) { return ((0,jsx_runtime.jsxs)("div", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.selectLine }, { children: [(0,jsx_runtime.jsx)(CustomDashboardSelectTopic/* default */.A, { placeholder: l('Select topic for comparison'), className: CustomDashboardTemplatesView.select, onChange: handleChangeComparisonTopic(index), selectedTopicId: id }), comparisonTopicIds.length > 1 && ((0,jsx_runtime.jsx)("span", CustomDashboardTemplatesView_assign({ className: CustomDashboardTemplatesView.removeTopic, onClick: function () { return handleRemoveTopic(index); } }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "trash" }) })))] }), id)); }), comparisonTopicIds.length < 10 && ((0,jsx_runtime.jsxs)("div", CustomDashboardTemplatesView_assign({ onClick: handleAddTopic, className: CustomDashboardTemplatesView.addTopic }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus" }), l('Add topic for comparison')] })))] })), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel the dashboard creation'), onClick: function () { return setStep('selectTemplate'); } }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: selectedTab.withTwoTopics ? !topicId || !comparisonTopicIds.every(Boolean) : !topicId, label: l('Apply'), onClick: handleCreate })] })] })));
    }
};
/* harmony default export */ const CustomDashboardTemplates_CustomDashboardTemplatesView_CustomDashboardTemplatesView = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    isLimitReached: (0,dashboardSelectors/* isCustomDashboardsLimitReached */.gp)(state),
}); }, { createTemplate: customDashboards_model/* customDashboardsModel */.i.action.createTemplate, hideModal: modals_actions/* hideModal */.AS, sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }))(CustomDashboardTemplatesView_CustomDashboardTemplatesView));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboardTemplates/CustomDashboardTemplatesView/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardTemplates/CustomDashboardTemplatesModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CustomDashboardTemplatesModal = ({"base":"lSPVtRnqUbUE8itLnPuQ"});
;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardTemplates/CustomDashboardTemplatesModal.tsx
var CustomDashboardTemplatesModal_assign = (undefined && undefined.__assign) || function () {
    CustomDashboardTemplatesModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CustomDashboardTemplatesModal_assign.apply(this, arguments);
};







var CustomDashboardTemplatesModal_CustomDashboardTemplatesModal = function (_a) {
    var handleHide = _a.handleHide, type = _a.type, dashboardId = _a.dashboardId, defaultTopicId = _a.defaultTopicId;
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, CustomDashboardTemplatesModal_assign({ isOpen: true, fitted: true, withCloseIcon: true, className: classnames_default()(CustomDashboardTemplatesModal.base), onRequestClose: handleHide }, { children: (0,jsx_runtime.jsx)(CustomDashboardTemplates_CustomDashboardTemplatesView_CustomDashboardTemplatesView, { type: type, dashboardId: dashboardId, defaultTopicId: defaultTopicId }) })));
};
/* harmony default export */ const CustomDashboardTemplates_CustomDashboardTemplatesModal = ((0,connectModal/* default */.A)(layout/* CUSTOM_DASHBOARD_TEMPLATE_MODAL_ID */.wo)(CustomDashboardTemplatesModal_CustomDashboardTemplatesModal));

;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardTemplates/index.ts


// EXTERNAL MODULE: ./src/containers/modals/CustomDashboardShareModal/CustomDashboardShareModal.tsx + 1 modules
var CustomDashboardShareModal = __webpack_require__("o+o8");
;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardShareModal/index.ts


// EXTERNAL MODULE: ./src/models/emailNotification/Alert.tsx
var Alert = __webpack_require__("yu8y");
// EXTERNAL MODULE: ./src/models/Notifications.ts
var Notifications = __webpack_require__("RzvX");
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Title/Title.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Title = ({"title":"q59XXeeOdM76CAYiSLMQ","editIcon":"OaGeUxQMtQFYq_Qay9Qx","fullWidth":"M1NJCGEs8B7C_GH1EVeo"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Title/Title.tsx
var Title_assign = (undefined && undefined.__assign) || function () {
    Title_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Title_assign.apply(this, arguments);
};






var Title_Title = function (_a) {
    var value = _a.value, defaultValue = _a.defaultValue, isEditing = _a.isEditing, onChange = _a.onChange, toggleEditing = _a.toggleEditing;
    return ((0,jsx_runtime.jsxs)("div", Title_assign({ className: Title.title }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, Title_assign({ className: Title.label }, { children: l('Title', 'emailNotification') })), !isEditing ? ((0,jsx_runtime.jsxs)("div", { children: [value || defaultValue, (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "edit", className: Title.editIcon, onClick: toggleEditing })] })) : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { className: Title.fullWidth, value: value, onChange: onChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }))] })));
};
/* harmony default export */ const components_Title_Title = (Title_Title);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Title/index.tsx


// EXTERNAL MODULE: ./src/components/ui/Hotkeys/index.ts + 2 modules
var Hotkeys = __webpack_require__("NPdn");
// EXTERNAL MODULE: ./node_modules/react-ace/lib/index.js
var react_ace_lib = __webpack_require__("lc5D");
;// CONCATENATED MODULE: ./src/components/other/ContentWithKnowledgeBaseLink/ContentWithKnowledgeBaseLink.tsx
var ContentWithKnowledgeBaseLink_assign = (undefined && undefined.__assign) || function () {
    ContentWithKnowledgeBaseLink_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ContentWithKnowledgeBaseLink_assign.apply(this, arguments);
};


var ContentWithKnowledgeBaseLink = function (_a) {
    var text = _a.text, link = _a.link;
    return ((0,jsx_runtime.jsxs)("div", { children: [text, (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", ContentWithKnowledgeBaseLink_assign({ target: "_blank", rel: "noopener noreferrer", href: link }, { children: l('knowledge base', 'helpModal') }))] }));
};
/* harmony default export */ const ContentWithKnowledgeBaseLink_ContentWithKnowledgeBaseLink = (ContentWithKnowledgeBaseLink);

;// CONCATENATED MODULE: ./src/components/other/ContentWithKnowledgeBaseLink/index.ts


;// CONCATENATED MODULE: ./src/utils/text.ts
/* eslint-disable import/prefer-default-export */
var capitalize = function (s) {
    if (typeof s !== 'string')
        return '';
    return s.charAt(0).toUpperCase() + s.slice(1);
};
var normalizeQuotes = function (text) { return text.replace(/“|”|„|«|»/g, '"'); };

// EXTERNAL MODULE: ./node_modules/ace-builds/src-noconflict/theme-github.js
var theme_github = __webpack_require__("umNf");
// EXTERNAL MODULE: ./node_modules/ace-builds/src-noconflict/ext-language_tools.js
var ext_language_tools = __webpack_require__("2nlJ");
// EXTERNAL MODULE: ./src/components/ui/QueryEditor/queryLanguage.js
var queryLanguage = __webpack_require__("QKCH");
// EXTERNAL MODULE: ./src/utils/translations/countryTranslations.json
var countryTranslations = __webpack_require__("ecuP");
// EXTERNAL MODULE: ./src/utils/translations/getLanguageFilterTranslations.js
var getLanguageFilterTranslations = __webpack_require__("nJxM");
// EXTERNAL MODULE: ./src/utils/getColorName.js
var getColorName = __webpack_require__("HIua");
;// CONCATENATED MODULE: ./src/components/ui/QueryEditor/useAutocompletion.ts
var useAutocompletion_assign = (undefined && undefined.__assign) || function () {
    useAutocompletion_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return useAutocompletion_assign.apply(this, arguments);
};
var useAutocompletion_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var useAutocompletion_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var useAutocompletion_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var useAutocompletion_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






var AutocompletionSuggestionType;
(function (AutocompletionSuggestionType) {
    AutocompletionSuggestionType["title"] = "title";
    AutocompletionSuggestionType["worldRegion"] = "worldRegion";
    AutocompletionSuggestionType["country"] = "country";
    AutocompletionSuggestionType["language"] = "language";
    AutocompletionSuggestionType["source"] = "source";
    AutocompletionSuggestionType["contentType"] = "contentType";
    AutocompletionSuggestionType["postType"] = "postType";
    AutocompletionSuggestionType["sourceType"] = "sourceType";
    AutocompletionSuggestionType["author"] = "author";
    AutocompletionSuggestionType["publicationPlace"] = "publicationPlace";
    AutocompletionSuggestionType["authorName"] = "author.name";
    AutocompletionSuggestionType["authorNickname"] = "author.nickname";
    AutocompletionSuggestionType["authorBio"] = "author.bio";
    AutocompletionSuggestionType["authorAge"] = "author.age";
    AutocompletionSuggestionType["authorSubscribers"] = "author.subscribers";
    AutocompletionSuggestionType["authorGender"] = "author.gender";
    AutocompletionSuggestionType["authorInterests"] = "author.interests";
    AutocompletionSuggestionType["authorInterestCategories"] = "author.interestCategories";
    AutocompletionSuggestionType["authorOccupations"] = "author.occupations";
    AutocompletionSuggestionType["publicationPlaceName"] = "publicationPlace.name";
    AutocompletionSuggestionType["publicationPlaceNameNickname"] = "publicationPlace.nickname";
    // VI
    AutocompletionSuggestionType["logo"] = "logo";
    AutocompletionSuggestionType["image"] = "image";
    AutocompletionSuggestionType["imageType"] = "image.type";
    AutocompletionSuggestionType["imageSubtype"] = "image.subtype";
    AutocompletionSuggestionType["imageObject"] = "image.object";
    AutocompletionSuggestionType["imageScene"] = "image.scene";
    AutocompletionSuggestionType["imagePerson"] = "image.person";
    AutocompletionSuggestionType["imageActivity"] = "image.activity";
    AutocompletionSuggestionType["imageColor"] = "image.color";
})(AutocompletionSuggestionType || (AutocompletionSuggestionType = {}));
var standardSuggestions = [
    { id: AutocompletionSuggestionType.worldRegion, caption: 'World region', value: 'worldRegion:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.country, caption: 'Country', value: 'country:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.language, caption: 'Language', value: 'language:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.source, caption: 'Source', value: 'source:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.contentType, caption: 'Content type', value: 'contentType:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.postType, caption: 'Post type', value: 'postType:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.sourceType, caption: 'Source type', value: 'sourceType:', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.author, caption: 'Author', value: 'author.', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.publicationPlace, caption: 'Publication place', value: 'publicationPlace.', command: 'startAutocomplete' },
    { id: AutocompletionSuggestionType.title, caption: 'Title', value: 'title:' },
    { id: AutocompletionSuggestionType.image, caption: 'Image', value: 'image.', command: 'startAutocomplete' }
].map(function (suggestion) { return (useAutocompletion_assign(useAutocompletion_assign({}, suggestion), { meta: 'Filter name' })); });
function withQuotes(value) {
    return "\"".concat(value, "\"");
}
/* harmony default export */ function useAutocompletion(ace, disabledSuggestions) {
    var _this = this;
    var fetchDefaultFilters = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.themes.fetchAutocompletionFilterSuggestions).fetch;
    var fetchTopSources = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.metaData.getTopSources).fetch;
    var fetchAudienceInsightsFilters = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.metaData.getAudienceInsights).fetch;
    var fetchVisualInsightsFilters = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.metaData.getVisualInsights).fetch;
    var fetchAvailableFilters = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.metaData.getAvailableFilters).fetch;
    var fetchLogos = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.account.getAccountLogos).fetch;
    var extractSubfields = function (field) { return field.split('.').reduce(function (acc, p) { return (acc.length > 0 ? useAutocompletion_spreadArray(useAutocompletion_spreadArray([], useAutocompletion_read(acc), false), ["".concat(acc[acc.length - 1], ".").concat(p)], false) : [p]); }, []); };
    var availableFilters = function () { return useAutocompletion_awaiter(_this, void 0, void 0, function () {
        var fields;
        return useAutocompletion_generator(this, function (_a) {
            switch (_a.label) {
                case 0: return [4 /*yield*/, fetchAvailableFilters()];
                case 1:
                    fields = _a.sent();
                    return [2 /*return*/, new Set(fields.flatMap(extractSubfields))];
            }
        });
    }); };
    (0,react.useEffect)(function () {
        prepareSuggestions();
        function prepareSuggestions() {
            return useAutocompletion_awaiter(this, void 0, void 0, function () {
                var availableFields, defaultFilters, topSources, audienceInsights, visualInsights, languages, logos, languageSuggestions, sourceTypeSuggestions, postTypesSuggestions, contentTypesSuggestions, countryGroupSuggestions, sourceSuggestions, logoSuggestions, countrySuggestions, authorInterestsSuggestions, authorInterestCategoriesSuggestions, authorOccupationsSuggestions, authorGenderSuggestions, imageTypeSuggestions, imageSubtypeSuggestions, imageObjectSuggestions, imageSceneSuggestions, imagePersonSuggestions, imageActivitySuggestions, imageColorSuggestions, imageFieldsSuggestions, authorFieldsSuggestions, channelFieldsSuggestions, numberFieldSuggestions, getSuggestions;
                return useAutocompletion_generator(this, function (_a) {
                    switch (_a.label) {
                        case 0: return [4 /*yield*/, availableFilters()];
                        case 1:
                            availableFields = _a.sent();
                            return [4 /*yield*/, fetchDefaultFilters()];
                        case 2:
                            defaultFilters = _a.sent();
                            return [4 /*yield*/, fetchTopSources()];
                        case 3:
                            topSources = _a.sent();
                            return [4 /*yield*/, fetchAudienceInsightsFilters()];
                        case 4:
                            audienceInsights = _a.sent();
                            return [4 /*yield*/, fetchVisualInsightsFilters()];
                        case 5:
                            visualInsights = _a.sent();
                            languages = (0,getLanguageFilterTranslations/* getLanguageFilterTranslations */.r)(true);
                            return [4 /*yield*/, fetchLogos()];
                        case 6:
                            logos = _a.sent();
                            languageSuggestions = Object.keys(languages).map(function (code) {
                                return {
                                    caption: languages[code],
                                    value: code,
                                    meta: 'Language',
                                };
                            });
                            sourceTypeSuggestions = defaultFilters.resourceTypes.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Source type',
                                };
                            });
                            postTypesSuggestions = defaultFilters.postTypes.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Post type',
                                };
                            });
                            contentTypesSuggestions = defaultFilters.contentTypes.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Content type',
                                };
                            });
                            countryGroupSuggestions = defaultFilters.countryGroups.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'World region',
                                };
                            });
                            sourceSuggestions = topSources.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Source',
                                };
                            });
                            logoSuggestions = logos.result.logos.map(function (logo) {
                                return {
                                    caption: logo,
                                    value: withQuotes(logo),
                                    meta: 'Logo',
                                };
                            });
                            countrySuggestions = Object.keys(countryTranslations.EN).map(function (code) { return ({
                                caption: countryTranslations.EN[code],
                                value: code,
                                meta: 'Country',
                            }); });
                            authorInterestsSuggestions = audienceInsights.interests.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Author interest',
                                };
                            });
                            authorInterestCategoriesSuggestions = audienceInsights.interestCategories.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Author interest category',
                                };
                            });
                            authorOccupationsSuggestions = audienceInsights.occupations.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Author occupation',
                                };
                            });
                            authorGenderSuggestions = audienceInsights.gender.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Author gender',
                                };
                            });
                            imageTypeSuggestions = visualInsights.imageTypes.map(function (code) {
                                return {
                                    caption: code,
                                    value: code,
                                    meta: 'Image type',
                                };
                            });
                            imageSubtypeSuggestions = visualInsights.imageSubtypes.map(function (code) {
                                return {
                                    caption: code,
                                    value: withQuotes(code),
                                    meta: 'Image subtype',
                                };
                            });
                            imageObjectSuggestions = visualInsights.imageObjects.map(function (code) {
                                return {
                                    caption: code,
                                    value: withQuotes(code),
                                    meta: 'Image object',
                                };
                            });
                            imageSceneSuggestions = visualInsights.imageScenes.map(function (code) {
                                return {
                                    caption: code,
                                    value: withQuotes(code),
                                    meta: 'Image scene',
                                };
                            });
                            imagePersonSuggestions = visualInsights.imagePeople.map(function (code) {
                                return {
                                    caption: code,
                                    value: withQuotes(code),
                                    meta: 'Image person',
                                };
                            });
                            imageActivitySuggestions = visualInsights.imageActivities.map(function (code) {
                                return {
                                    caption: code,
                                    value: withQuotes(code),
                                    meta: 'Image activity',
                                };
                            });
                            imageColorSuggestions = visualInsights.imageColors.map(function (code) {
                                return {
                                    caption: (0,getColorName/* default */.A)(code),
                                    value: code,
                                    meta: 'Image color',
                                };
                            });
                            imageFieldsSuggestions = [
                                { caption: 'Image type', value: 'type:', command: 'startAutocomplete' },
                                { caption: 'Image subtype', value: 'subtype:', command: 'startAutocomplete' },
                                { caption: 'Image object', value: 'object:', command: 'startAutocomplete' },
                                { caption: 'Image scene', value: 'scene:', command: 'startAutocomplete' },
                                { caption: 'Image person', value: 'person:', command: 'startAutocomplete' },
                                { caption: 'Image activity', value: 'activity:', command: 'startAutocomplete' },
                                { caption: 'Image color', value: 'color:', command: 'startAutocomplete' }
                            ];
                            authorFieldsSuggestions = [
                                { caption: 'Author bio', value: 'bio:' },
                                { caption: 'Author name', value: 'name:' },
                                { caption: 'Author nickname', value: 'nickname:' },
                                { caption: 'Author gender', value: 'gender:', command: 'startAutocomplete' },
                                { caption: 'Author age', value: 'age:', command: 'startAutocomplete' },
                                { caption: 'Author subscribers', value: 'subscribers:', command: 'startAutocomplete' },
                                { caption: 'Author interests', value: 'interests:', command: 'startAutocomplete' },
                                { caption: 'Author interest categories', value: 'interestCategories:', command: 'startAutocomplete' },
                                { caption: 'Author occupations', value: 'occupations:', command: 'startAutocomplete' }
                            ];
                            channelFieldsSuggestions = [
                                { caption: 'Publication place name', value: 'name:' },
                                { caption: 'Publication place nickname', value: 'nickname:' }
                            ];
                            numberFieldSuggestions = [
                                { caption: '[ .. ]', value: '[ .. ]' },
                                { caption: '>', value: '>' },
                                { caption: '>=', value: '>=' },
                                { caption: '<', value: '<' },
                                { caption: '<=', value: '<=' }
                            ];
                            getSuggestions = function (session, pos, disabledSuggestionsParam) {
                                var row = pos.row, column = pos.column;
                                var line = session.getLine(row);
                                var part = line.slice(0, column);
                                var fields = {
                                    worldRegion: { regex: /(^|\s|\()worldRegion\s*:\s*\w*$/i, suggestions: countryGroupSuggestions },
                                    country: { regex: /(^|\s|\()country\s*:\s*\w*$/i, suggestions: countrySuggestions },
                                    language: { regex: /(^|\s|\()language\s*:\s*\w*$/i, suggestions: languageSuggestions },
                                    sourceType: { regex: /(^|\s|\()sourceType\s*:\s*\w*$/i, suggestions: sourceTypeSuggestions },
                                    postType: { regex: /(^|\s|\()postType\s*:\s*\w*$/i, suggestions: postTypesSuggestions },
                                    contentType: { regex: /(^|\s|\()contentType\s*:\s*\w*$/i, suggestions: contentTypesSuggestions },
                                    source: { regex: /(^|\s|\()source\s*:\s*\w*$/i, suggestions: sourceSuggestions },
                                    author: { regex: /(^|\s|\()author\.\s*\w*$/i, suggestions: authorFieldsSuggestions },
                                    publicationPlace: { regex: /(^|\s|\()publicationPlace\.\s*\w*$/i, suggestions: channelFieldsSuggestions },
                                    'author.name': { regex: /(^|\s|\()author\.name\s*:\s*\w*$/i, suggestions: [] },
                                    'author.nickname': { regex: /(^|\s|\()author\.nickname\s*:\s*\w*$/i, suggestions: [] },
                                    'author.bio': { regex: /(^|\s|\()author\.bio\s*:\s*\w*$/i, suggestions: [] },
                                    'author.age': { regex: /(^|\s|\()author\.age\s*:\s*\w*$/i, suggestions: numberFieldSuggestions },
                                    'author.subscribers': { regex: /(^|\s|\()author\.subscribers\s*:\s*\w*$/i, suggestions: numberFieldSuggestions },
                                    'author.gender': { regex: /(^|\s|\()author\.gender\s*:\s*\w*$/i, suggestions: authorGenderSuggestions },
                                    'author.interests': { regex: /(^|\s|\()author\.interests\s*:\s*\w*$/i, suggestions: authorInterestsSuggestions },
                                    'author.interestCategories': { regex: /(^|\s|\()author\.interestCategories\s*:\s*\w*$/i, suggestions: authorInterestCategoriesSuggestions },
                                    'author.occupations': { regex: /(^|\s|\()author\.occupations\s*:\s*\w*$/i, suggestions: authorOccupationsSuggestions },
                                    'publicationPlace.name': { regex: /(^|\s|\()publicationPlace\.name\s*:\s*\w*$/i, suggestions: [] },
                                    'publicationPlace.nickname': { regex: /(^|\s|\()publicationPlace\.nickname\s*:\s*\w*$/i, suggestions: [] },
                                    logo: { regex: /(^|\s|\()logo\s*:\s*\w*$/i, suggestions: logoSuggestions },
                                    image: { regex: /(^|\s|\()image\.\s*\w*$/i, suggestions: imageFieldsSuggestions },
                                    'image.type': { regex: /(^|\s|\()image\.type\s*:\s*\w*$/i, suggestions: imageTypeSuggestions },
                                    'image.subtype': { regex: /(^|\s|\()image\.subtype\s*:\s*\w*$/i, suggestions: imageSubtypeSuggestions },
                                    'image.object': { regex: /(^|\s|\()image\.object\s*:\s*\w*$/i, suggestions: imageObjectSuggestions },
                                    'image.scene': { regex: /(^|\s|\()image\.scene\s*:\s*\w*$/i, suggestions: imageSceneSuggestions },
                                    'image.person': { regex: /(^|\s|\()image\.person\s*:\s*\w*$/i, suggestions: imagePersonSuggestions },
                                    'image.activity': { regex: /(^|\s|\()image\.activity\s*:\s*\w*$/i, suggestions: imageActivitySuggestions },
                                    'image.color': { regex: /(^|\s|\()image\.color\s*:\s*\w*$/i, suggestions: imageColorSuggestions },
                                };
                                var match = Object.entries(fields)
                                    .filter(function (x) { return availableFields.has(x[0]) && !disabledSuggestionsParam.includes(x[0]); })
                                    .find(function (x) { return !!part.match(x[1].regex); });
                                return match
                                    ? match[1].suggestions
                                    : standardSuggestions.filter(function (s) { return !disabledSuggestionsParam.includes(s.id); });
                            };
                            if (ace.current) {
                                ace.current.editor.completers = [
                                    {
                                        getCompletions: function (editor, session, pos, prefix, callback) {
                                            callback(null, getSuggestions(session, pos, disabledSuggestions));
                                        },
                                        triggerCharacters: [':'],
                                    }
                                ];
                            }
                            return [2 /*return*/];
                    }
                });
            });
        }
    }, []);
}

;// CONCATENATED MODULE: ./src/components/ui/QueryEditor/utils.ts
function parseQuery(input) {
    var openParenCount = 0;
    var myOpenParenIndex = 0;
    var myEndParenIndex = 0;
    var result = [];
    for (var i = 0; i < input.length; i++) {
        if (input[i] === '(') {
            if (openParenCount === 0) {
                myOpenParenIndex = i;
                // checking if anything exists before this set of parentheses
                if (i !== myEndParenIndex) {
                    result.push(input.substring(myEndParenIndex, i));
                }
            }
            openParenCount++;
        }
        if (input[i] === ')') {
            openParenCount--;
            if (openParenCount === 0) {
                myEndParenIndex = i + 1;
                // recurse the contents of the parentheses to search for nested ones
                result.push(parseQuery(input.substring(myOpenParenIndex + 1, i)));
            }
        }
    }
    // capture anything after the last parentheses
    if (input.length > myEndParenIndex) {
        result.push(input.substring(myEndParenIndex, input.length));
    }
    return result;
}
function formatBrackets(array, addLastNewLine, trimLine) {
    if (addLastNewLine === void 0) { addLastNewLine = true; }
    if (trimLine === void 0) { trimLine = true; }
    var query = '';
    var newLine = '\n';
    for (var i = 0; i < array.length; i++) {
        var line = array[i];
        if (typeof line === 'string') {
            query += trimLine ? line.trim() : line;
        }
        if (Array.isArray(line)) {
            query += "(".concat(formatBrackets(line, false, false), ")");
        }
        if (addLastNewLine) {
            query += newLine + newLine;
        }
    }
    return query;
}
function formatQuery(query) {
    return formatBrackets(parseQuery(query));
}
var getValidationErrorMessages = function () { return ({
    unknown_error: l('An unknown error has occurred. Please contact our support team'),
    default_error: l('An error has occurred'),
    notempty_error: l('Your query is empty'),
    length_error: l('Your query must be at least 3 characters long'),
    stopword_error: l('Your query should not start with stopwords'),
    query_length_error: l('Your meaningful query (without stopwords) exceeds 1500 characters'),
    search_query_length_error: l('Your meaningful query exceeds 1000 characters'),
    syntax_error_operator_misuse: l('Wrong operator usage'),
    syntax_error_no_closing_bracket: l("No closing pair for opening brace ')'"),
    syntax_error_no_opening_bracket: l("No opening pair for closing brace '('"),
    syntax_error_stopword_expected: l('Incorrect stopwords usage. Looks like stopword is not at the end of the query'),
    syntax_error_quotes_mismatch: l("No closing pair for opening quote ' \" '"),
    syntax_error_invalid_query: l('Your query is invalid'),
    syntax_error_leading_wildcard_not_allowed: l('Leading wildcards are not allowed in the query'),
    syntax_error_distance_operator_misuse: l('Invalid value for distance operator'),
    syntax_error_distance_operator_misuse_different_fields: l('Distance operator not allowed with different fields'),
    syntax_error_distance_operator_not_allowed: l('Distance operator is not allowed'),
    syntax_error_implicit_operator_misuse: l('An operator is required between multiple lines'),
    field_operator_error_unexpected_field_name: l('Unexpected filter name'),
    field_operator_error_unexpected_field_value: l('Unexpected filter value'),
    field_unavailable_for_subscription_plan: l('The operator you\'re trying to use is available with the Audience Insights add-on.'),
    COMPLEX_QUERY: l('Too complex query. Try to replace \'/\' with \'AND\' operator or remove \'*\''),
}); };
function getValidationErrorMessage(errorCode) {
    var messages = getValidationErrorMessages();
    return messages[errorCode] || messages.unknown_error;
}

;// CONCATENATED MODULE: ./src/components/ui/QueryEditor/QueryEditor.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const QueryEditor = ({"base":"xY_MWSIaUiwiwjEhDokk","krugliash":"_R53JK13VXYsOb8Yr1yR","oneLine":"vbZ5Ca96pLDfEc7S4Ll6","krugliashIcon":"FmhAl77VAwfB0fRYqj0V","krugliashErrorContent":"dysk0dSI0g_QTYb0N06l","error":"e4YBNM20J7bD2U8QVDAO","krugliashMessage":"yBFsePUWt7WE2Ey12HZN","krugliashMessageText":"zs0pdfHTkxg_Fllo9__f","closeKrugliashMessage":"LzhxXKHO_mSpmk4IrMUx","krugliashAction":"SFVcohnISR46Ucr0Fp9g","errorIcon":"XyWy3CxjHwxCcLGsm0Cd","ace":"WN8ZygfTVshQb8lKoNwj","hideBackground":"yv6wHjIcs2HSscGPg9QO","counter":"i6BzsZ8CnSV5ca0OXzPY","queryError":"lT6jNP42RH1irqW7Zp6a","showError":"axOni59r4YpQ6S3fxzdw","hideErrorLabel":"rmNaujEC8dV4DYbmPkTY","showErrorBottom":"KbROa6xPBGCxrua91jVJ","formatQuery":"FktivnBewe1rEV8DwOUm"});
;// CONCATENATED MODULE: ./src/components/ui/QueryEditor/QueryEditor.tsx
var QueryEditor_assign = (undefined && undefined.__assign) || function () {
    QueryEditor_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return QueryEditor_assign.apply(this, arguments);
};
var QueryEditor_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var QueryEditor_QueryEditor = function (props) {
    var _a;
    var ace = (0,react.useRef)();
    var _b = QueryEditor_read((0,react.useState)(false), 2), showError = _b[0], setShowError = _b[1];
    var _c = QueryEditor_read((0,react.useState)(false), 2), showKrugliashMessage = _c[0], setShowKrugliashMessage = _c[1];
    var _d = props.disabledSuggestions, disabledSuggestions = _d === void 0 ? [] : _d;
    useAutocompletion(ace, disabledSuggestions);
    (0,react.useEffect)(function () {
        ace.current.editor.renderer.setScrollMargin(8, 50);
    }, []);
    (0,react.useEffect)(function () {
        if (props.queryError) {
            setShowError(true);
            setShowKrugliashMessage(true);
            return function () { };
        }
        setShowError(false);
        setShowKrugliashMessage(false);
        return function () { };
    }, [props.queryError]);
    (0,react.useEffect)(function () {
        var _a;
        if (!oneLine)
            return function () { };
        var editor = (_a = ace.current) === null || _a === void 0 ? void 0 : _a.editor;
        var enterHandler = function (_data, _hashId, _keyString, keyCode, event) {
            var _a;
            var isAutocompleteOpen = editor.completer && editor.completer.popup && editor.completer.popup.isOpen;
            if (keyCode === 13 && !isAutocompleteOpen) {
                event.preventDefault();
                event.stopPropagation();
                (_a = props.onPressEnter) === null || _a === void 0 ? void 0 : _a.call(props);
            }
            return null;
        };
        editor.keyBinding.addKeyboardHandler(enterHandler);
        return function () { return editor.keyBinding.removeKeyboardHandler(enterHandler); };
    }, [props.onPressEnter]);
    var handleChange = function (value) {
        var onChange = props.onChange;
        var formattedString = normalizeQuotes(value);
        if (onChange) {
            onChange(formattedString);
        }
    };
    var handleToggleKrugliashMessage = function () {
        setShowKrugliashMessage(!showKrugliashMessage);
    };
    function queryError() {
        if (!props.queryError) {
            return {
                marker: [],
                errorCode: 'default_error',
            };
        }
        var errorMarker = {
            startRow: props.queryError.line,
            startCol: props.queryError.column,
            endRow: props.queryError.line,
            endCol: props.queryError.column + 1,
            className: 'errorMarker',
            type: 'text',
            inFront: true,
        };
        return {
            marker: [
                errorMarker
            ],
            line: props.queryError.line,
            position: props.queryError.position,
            column: props.queryError.column,
            errorCode: props.queryError.errorCode,
            className: 'error',
        };
    }
    var renderKrugliash = function () {
        var _a, _b, _c;
        if (props.disableKrugliash)
            return null;
        if (showKrugliashMessage) {
            return ((0,jsx_runtime.jsxs)("div", QueryEditor_assign({ className: classnames_default()(QueryEditor.krugliashMessage, (_a = {}, _a[QueryEditor.oneLine] = oneLine, _a)) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "warning", className: classnames_default()(QueryEditor.krugliashIcon, (_b = {}, _b[QueryEditor.errorIcon] = showError, _b)) }), (0,jsx_runtime.jsxs)("p", QueryEditor_assign({ className: classnames_default()(QueryEditor.krugliashMessageText) }, { children: [renderError(), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("div", QueryEditor_assign({ className: classnames_default()(QueryEditor.krugliashErrorContent) }, { children: (0,jsx_runtime.jsx)(ContentWithKnowledgeBaseLink_ContentWithKnowledgeBaseLink, { text: l('Learn more about working with search queries in the'), link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.SEARCH_QUERY_RULES) }) }))] })), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "close", size: "small", className: classnames_default()(QueryEditor.closeKrugliashMessage), onClick: handleToggleKrugliashMessage })] })));
        }
        return (showError && ((0,jsx_runtime.jsx)("div", QueryEditor_assign({ role: "presentation", className: classnames_default()(QueryEditor.krugliash, QueryEditor.error, (_c = {}, _c[QueryEditor.oneLine] = oneLine, _c)), onClick: handleToggleKrugliashMessage }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: oneLine ? 12 : 20, type: "warning", className: classnames_default()(QueryEditor.krugliashIcon) }) }))));
    };
    var renderError = function () {
        var value = props.value;
        var errorCode = queryError().errorCode;
        switch (errorCode) {
            case 'length_error':
                return value.length > 10000 ? renderMaxLengthError() : renderMinLengthError();
            case 'field_unavailable_for_subscription_plan':
                return renderSubscriptionPlanError();
            case 'COMPLEX_QUERY':
                return renderComplexQueryError();
            default:
                return getValidationErrorMessage(errorCode);
        }
    };
    var renderMinLengthError = function () {
        return ((0,jsx_runtime.jsx)("span", { children: l('Your query must be at least 3 characters long') }));
    };
    var renderMaxLengthError = function () {
        return ((0,jsx_runtime.jsx)("span", { children: l('Your query exceeds 10,000 characters') }));
    };
    var renderSubscriptionPlanError = function () {
        return ((0,jsx_runtime.jsxs)("span", { children: [l('The operator you\'re trying to use is available with the Audience Insights add-on.'), (0,jsx_runtime.jsx)("br", {}), l('Please contact our support team to enable and use this powerful feature.')] }));
    };
    var renderComplexQueryError = function () {
        return ((0,jsx_runtime.jsxs)("span", { children: [l('Too complex query', 'complex_query_error'), (0,jsx_runtime.jsx)("br", {}), l('Try to replace ', 'complex_query_error'), (0,jsx_runtime.jsx)("span", QueryEditor_assign({ className: classnames_default()(QueryEditor.distanceOperator) }, { children: "/n" })), l(' with ', 'complex_query_error'), (0,jsx_runtime.jsx)("span", QueryEditor_assign({ className: classnames_default()(QueryEditor.keywordOperator) }, { children: l('AND', 'complex_query_error') })), l(' operator or remove ', 'complex_query_error'), (0,jsx_runtime.jsx)("span", QueryEditor_assign({ className: classnames_default()(QueryEditor.substitutionOperator) }, { children: "*" }))] }));
    };
    var hideBackground = props.hideBackground, value = props.value, className = props.className, focus = props.focus, style = props.style, placeholder = props.placeholder, readOnly = props.readOnly, oneLine = props.oneLine, onBlur = props.onBlur;
    return ((0,jsx_runtime.jsxs)("div", QueryEditor_assign({ className: classnames_default()(className, QueryEditor.base) }, { children: [(0,jsx_runtime.jsx)(react_ace_lib/* default */.Ay, { focus: focus, ref: ace, wrapEnabled: !oneLine, showGutter: false, showPrintMargin: false, highlightActiveLine: false, className: classnames_default()((_a = {}, _a[QueryEditor.ace] = !hideBackground, _a[QueryEditor.hideBackground] = hideBackground, _a)), style: style, height: "100%", value: value, markers: queryError().marker, width: "auto", mode: "queryLanguage", theme: "github", placeholder: placeholder, setOptions: {
                    indentedSoftWrap: false,
                    animatedScroll: false,
                    enableMultiselect: false,
                    enableBlockSelect: false,
                    enableBasicAutocompletion: true,
                    enableLiveAutocompletion: true,
                    liveAutocompletionThreshold: 4,
                    enableSnippets: true,
                    maxLines: oneLine ? 1 : undefined,
                }, readOnly: readOnly, commands: [
                    {
                        // defaults values "Ctrl-Space|Ctrl-Shift-Space|Alt-Space" are already binded in my keyboard :)
                        name: 'yarchiTAutocomplete',
                        bindKey: { win: 'Ctrl-Shift-Space', mac: 'Cmd-Shift-Space' },
                        exec: 'startAutocomplete',
                    }
                ], onChange: handleChange, onBlur: onBlur }), renderKrugliash()] })));
};
/* harmony default export */ const ui_QueryEditor_QueryEditor = (QueryEditor_QueryEditor);

;// CONCATENATED MODULE: ./src/components/ui/QueryEditor/index.ts


;// CONCATENATED MODULE: ./src/components/other/QueryHintLink/QueryHintLink.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const QueryHintLink = ({"base":"qn4FW3EMALXhdVfCnESd","badge":"kvWioeqDoYUCfmAMkAZ7"});
;// CONCATENATED MODULE: ./src/components/other/QueryHintLink/QueryHintLink.tsx
var QueryHintLink_assign = (undefined && undefined.__assign) || function () {
    QueryHintLink_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return QueryHintLink_assign.apply(this, arguments);
};










var QueryHintLink_QueryHintLink = function (_a) {
    var analyticalEventName = _a.analyticalEventName, _b = _a.hintFor, hintFor = _b === void 0 ? 'default' : _b, showModal = _a.showModal, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var handleOpenModal = function () {
        showModal('help', {
            contentType: 'editQuery',
            maxWidth: '80vw',
            scroll: true,
            additionalContent: links[hintFor],
            showVisualInsightsOperators: hintFor === 'ocr',
        });
        if (analyticalEventName) {
            sendAnalyticalEvent({ eventType: analyticalEventName });
        }
    };
    return ((0,jsx_runtime.jsxs)("a", QueryHintLink_assign({ className: classnames_default()(QueryHintLink.base), onClick: handleOpenModal }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info-outline" }), l('How to use the query language')] })));
};
var AdditionalKnowledgeBaseLink = function () { return ((0,jsx_runtime.jsx)(ContentWithKnowledgeBaseLink_ContentWithKnowledgeBaseLink, { text: l('Learn more about working with search queries in the'), link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.SEARCH_QUERY_RULES) })); };
var AdditionalOCRKnowledgeBaseLink = function () { return ((0,jsx_runtime.jsx)(ContentWithKnowledgeBaseLink_ContentWithKnowledgeBaseLink, { text: l('Learn more about working with text recognition queries in the', 'createTopic'), link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.TEXT_RECOGNITION) })); };
var links = {
    default: (0,jsx_runtime.jsx)(AdditionalKnowledgeBaseLink, {}),
    ocr: (0,jsx_runtime.jsx)(AdditionalOCRKnowledgeBaseLink, {}),
};
/* harmony default export */ const other_QueryHintLink_QueryHintLink = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    showModal: modals_actions/* showModal */.to,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(QueryHintLink_QueryHintLink));

;// CONCATENATED MODULE: ./src/components/other/QueryHintLink/index.ts


// EXTERNAL MODULE: ./src/utils/analytics.js
var analytics = __webpack_require__("iyim");
;// CONCATENATED MODULE: ./src/components/other/QuerySearch/QuerySearch.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const QuerySearch = ({"base":"rvPM2Uk65Qbr1zOz_t5Q","editor":"n8xM5a6ZYc0mu5Ur_gK3","fullscreenButtonBar":"CV6Pa7S7oBzSt22Us_Nh"});
;// CONCATENATED MODULE: ./src/components/other/QuerySearch/QuerySearch.tsx
var QuerySearch_assign = (undefined && undefined.__assign) || function () {
    QuerySearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return QuerySearch_assign.apply(this, arguments);
};
var QuerySearch_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var QuerySearch_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var QuerySearch_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



















var QuerySearch_ENTER_KEY = 13;
var QUERY_LIMIT = 2500;
var isValueLengthValid = function (v) {
    return String(v).length <= QUERY_LIMIT;
};
var QuerySearch_QuerySearch = function (_a) {
    var className = _a.className, value = _a.value, topicId = _a.topicId, shortcutsEnabled = _a.shortcutsEnabled, analyticalEventName = _a.analyticalEventName, sendAnalyticalEvent = _a.sendAnalyticalEvent, onSearch = _a.onSearch;
    var _b = QuerySearch_read((0,react.useState)(value || ''), 2), usedValue = _b[0], setUsedValue = _b[1];
    var _c = QuerySearch_read((0,react.useState)(true), 2), isCurrentlyValid = _c[0], setIsCurrentlyValid = _c[1];
    var _d = QuerySearch_read((0,react.useState)(false), 2), isFullScreenMode = _d[0], setIsFullScreenMode = _d[1];
    var _e = QuerySearch_read((0,react.useState)(true), 2), isValid = _e[0], setIsValid = _e[1];
    var _f = QuerySearch_read((0,react.useState)(null), 2), errorCode = _f[0], setErrorCode = _f[1];
    var fetchValidation = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.mentions.validateMentionsSearchQuery).fetch;
    var textField = (0,react.useRef)(null);
    var validate = function () { return QuerySearch_awaiter(void 0, void 0, void 0, function () {
        var validationResult, error_1;
        var _a;
        return QuerySearch_generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, fetchValidation({ text: usedValue, themeId: topicId })];
                case 1:
                    validationResult = _b.sent();
                    setIsValid(validationResult === null || validationResult === void 0 ? void 0 : validationResult.isValid);
                    setErrorCode(((_a = validationResult === null || validationResult === void 0 ? void 0 : validationResult.error) === null || _a === void 0 ? void 0 : _a.errorCode) || null);
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    console.error('Error during fetch:', error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    }); };
    (0,react.useEffect)(function () {
        if (value !== usedValue) {
            setUsedValue(value);
        }
    }, [value]);
    (0,react.useEffect)(function () {
        if ((0,lodash.isBoolean)(isValid) && isValid !== isCurrentlyValid) {
            setIsCurrentlyValid(isValid);
        }
    }, [isValid]);
    var handleSearchFieldFocus = function (e) {
        e.preventDefault();
        textField.current.focus();
    };
    var handleChange = function (v) {
        setUsedValue(normalizeQuotes(v));
        setIsCurrentlyValid(true);
    };
    var handleKeyDown = function (e) {
        if (e.keyCode === QuerySearch_ENTER_KEY) {
            validate();
            triggerSearch();
            sendAnalyticalEvent({ eventType: "Trigger search in ".concat(analyticalEventName) });
        }
    };
    var handleToggleFullscreen = function () {
        setIsFullScreenMode(!isFullScreenMode);
    };
    var handleSearch = function () {
        sendAnalyticalEvent({ eventType: "Trigger search in ".concat(analyticalEventName, ": fullscreen") });
        triggerSearch();
        handleToggleFullscreen();
    };
    var getError = function () {
        if (!isCurrentlyValid) {
            return (0,immutable.fromJS)({
                errorCode: errorCode,
                text: getValidationErrorMessage(errorCode),
            });
        }
        if (!isValueLengthValid(usedValue)) {
            return (0,immutable.fromJS)({
                errorCode: 'search_query_length_error',
                text: sprintf(l('Maximum length is %d symbols'), QUERY_LIMIT),
            });
        }
        return null;
    };
    var triggerSearch = function () {
        if (usedValue && isValueLengthValid(usedValue)) {
            onSearch({ text: usedValue, themeId: topicId });
        }
    };
    var hotkeyHandlers = [
        {
            hotkey: '/',
            handler: (0,analytics/* addEvent */.W2)(sendAnalyticalEvent, {
                eventType: 'Hotkey: used',
                properties: { type: 'mentionStreamSearch' },
            })(handleSearchFieldFocus),
        }
    ];
    var error = getError();
    return ((0,jsx_runtime.jsxs)(Hotkeys/* default */.A, QuerySearch_assign({ enabled: shortcutsEnabled, hotkeyHandlers: hotkeyHandlers }, { children: [(0,jsx_runtime.jsx)("div", QuerySearch_assign({ className: QuerySearch.base }, { children: (0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, ref: textField, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), rightIcon: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "expand", onClick: handleToggleFullscreen }), className: className, placeholder: l('Search by text'), value: usedValue, errorText: error === null || error === void 0 ? void 0 : error.get('text'), onChange: handleChange, onKeyDown: handleKeyDown }) })), (0,jsx_runtime.jsxs)(Modal/* default */.A, QuerySearch_assign({ fitted: true, isOpen: isFullScreenMode, onRequestClose: handleToggleFullscreen }, { children: [(0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { focus: true, value: usedValue, queryError: error, className: QuerySearch.editor, onChange: handleChange, onPressEnter: handleSearch }), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, QuerySearch_assign({ className: QuerySearch.fullscreenButtonBar }, { children: [(0,jsx_runtime.jsx)(other_QueryHintLink_QueryHintLink, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Search'), onClick: handleSearch })] }))] }))] })));
};
/* harmony default export */ const other_QuerySearch_QuerySearch = (QuerySearch_QuerySearch);

;// CONCATENATED MODULE: ./src/components/other/QuerySearch/index.tsx


// EXTERNAL MODULE: ./src/containers/filters/ThemeFilters/components/Filters.tsx + 1 modules
var Filters = __webpack_require__("WvTN");
// EXTERNAL MODULE: ./src/containers/filters/FilterChipPanel/FilterChipPanel.tsx + 1 modules
var FilterChipPanel_FilterChipPanel = __webpack_require__("6hzH");
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Filter/Filter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Filter_Filter = ({"label":"xUf95TXRqPHDObDwZWno"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Filter/Filter.tsx
var Filter_assign = (undefined && undefined.__assign) || function () {
    Filter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Filter_assign.apply(this, arguments);
};











var Filter_Filter_Filter = function (_a) {
    var showSearch = _a.showSearch, value = _a.value, topicId = _a.topicId, shortcutsEnabled = _a.shortcutsEnabled, tabPermissions = _a.tabPermissions, filterTypePermissions = _a.filterTypePermissions, onChange = _a.onChange, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var handleChangeFilterText = function (_a) {
        var text = _a.text;
        var group = (0,FilterGroupTypeCatalog/* createFilterGroup */.e1)('text', 'textQuery', text);
        var newFilter = value.copyFilter();
        var textFilterGroup = newFilter.findByName('text');
        if (textFilterGroup)
            newFilter.removeFilterGroup(textFilterGroup);
        newFilter.addFilterGroup(group);
        onChange(newFilter);
    };
    var getFilterText = (0,react.useCallback)(function () {
        var textFilterGroup = value.findByName('text');
        if (textFilterGroup)
            return textFilterGroup.value;
        return '';
    }, [value]);
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, Filter_assign({ className: Filter_Filter.label }, { children: l('Filter', 'emailNotification') })), (0,jsx_runtime.jsxs)(useFacetsContext/* FacetsProvider */.A, { children: [showSearch && ((0,jsx_runtime.jsx)(other_QuerySearch_QuerySearch, { value: getFilterText(), onSearch: handleChangeFilterText, sendAnalyticalEvent: sendAnalyticalEvent, shortcutsEnabled: shortcutsEnabled, topicId: topicId, analyticalEventName: "alert" })), showSearch && (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "12px" }), (0,jsx_runtime.jsx)(Filters/* default */.A, { preFetchStats: true, topicId: topicId, initialFilter: value.copyFilter().setDateRange(Filter/* Filter */.dJ.getDefaultFromTo().from, Filter/* Filter */.dJ.getDefaultFromTo().to), onApply: onChange, triggerButton: (0,jsx_runtime.jsx)("span", { children: (0,jsx_runtime.jsxs)("a", { children: ["+ ", l('Add filters')] }) }), tabPermissions: tabPermissions, filterTypePermissions: filterTypePermissions }, value.key()), !value.isEmpty() && (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(FilterChipPanel_FilterChipPanel/* default */.A, { compactFilter: true, compactInFilterGroup: true, showNoFilters: false, filter: value.copyFilter(), topicId: topicId, onUpdate: onChange })] })] }));
};
/* harmony default export */ const components_Filter_Filter = (Filter_Filter_Filter);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Filter/index.tsx


// EXTERNAL MODULE: ./src/components/ui/EndorseContent/EndorseContent.tsx + 1 modules
var EndorseContent_EndorseContent = __webpack_require__("tx68");
// EXTERNAL MODULE: ./src/components/ui/UserAvatar/UserAvatar.tsx + 1 modules
var UserAvatar_UserAvatar = __webpack_require__("eCxQ");
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/RecipientTile/RecipientTile.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const RecipientTile = ({"selectedUser":"NMTbW7FylfytHsqobFKj","unsubscribed":"M8nbHWxZWn81NZPWAzJA","selectedUserName":"jcYbRIXl_Ol0ip8GXS3G","avatar":"JI2W3xcQFCBjKggRXtrf","removeIcon":"WL8oN_9R83Y22boe14BK"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/RecipientTile/RecipientTile.tsx
var RecipientTile_assign = (undefined && undefined.__assign) || function () {
    RecipientTile_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RecipientTile_assign.apply(this, arguments);
};





var RecipientTile_RecipientTile = function (_a) {
    var _b;
    var id = _a.id, value = _a.value, label = _a.label, className = _a.className, unsubscribed = _a.unsubscribed, imageUrl = _a.imageUrl, onRemove = _a.onRemove;
    return ((0,jsx_runtime.jsxs)("div", RecipientTile_assign({ className: classnames_default()(className, RecipientTile.selectedUser, (_b = {}, _b[RecipientTile.unsubscribed] = unsubscribed, _b)) }, { children: [(0,jsx_runtime.jsx)(UserAvatar_UserAvatar/* default */.A, { round: true, className: RecipientTile.avatar, size: "30", email: value, name: label, src: imageUrl }), (0,jsx_runtime.jsxs)("div", RecipientTile_assign({ className: classnames_default()(RecipientTile.selectedUserName) }, { children: [(0,jsx_runtime.jsxs)("div", { children: [label || value, unsubscribed && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("br", {}), l('Unsubscribed', 'emailReports')] }))] }), onRemove && ((0,jsx_runtime.jsx)("div", RecipientTile_assign({ className: classnames_default()(RecipientTile.removeIcon), onClick: function () { return onRemove(id); } }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "trash" }) })))] }))] }), value));
};
/* harmony default export */ const Tiles_RecipientTile_RecipientTile = (RecipientTile_RecipientTile);

;// CONCATENATED MODULE: ./src/containers/emailNotification/components/RecipientSelector/RecipientSelector.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const RecipientSelector = ({"overlayedBlock":"eaCPY29SHOs7PncF5lU1","flexCenter":"noOkYdu8p4mA_jif0ghZ","smartFeature":"qcOTQUySNTha1I6YDjGH","tag":"DLr0tnmnL9cdrGCDs9yO","visibleScrollBar":"FNAgaRH29cOMiSsewmSe","hiddenScrollBar":"r9aWT5JQ4uyL88uwEV4v","users":"zRzobLhmJ868XsQY1tZZ","emptyState":"xfRpvf8ZpmgtnPP1M8Fx","suggestionFocused":"yNc6n8H2S971mUDfR1I_","suggestionSelected":"igZG7kkcWrckLocRdtNd","user":"x5XkFge99Nc_kemOQP1N","name":"RMQIyFUqmjJseIHf7yEI","email":"PL2Mf1nx_JV3HlPyC2Qd","avatar":"PSSakKTXr5c3TV3tNRcg","selectedUsers":"XgUe6IuGjVRvyaYL9mHA"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/RecipientSelector/RecipientSelector.tsx
var RecipientSelector_assign = (undefined && undefined.__assign) || function () {
    RecipientSelector_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RecipientSelector_assign.apply(this, arguments);
};
var RecipientSelector_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











function toggleValues(items, newItem) {
    var updatedItems = items.filter(function (item) { return item.id !== newItem.id; });
    if (updatedItems.length === items.length) {
        updatedItems.push(newItem);
    }
    return updatedItems;
}
var RecipientSelector_RecipientSelector = function (_a) {
    var className = _a.className, _b = _a.values, values = _b === void 0 ? [] : _b, _c = _a.options, options = _c === void 0 ? [] : _c, externalOptionValidationsRegExp = _a.externalOptionValidationsRegExp, placeholder = _a.placeholder, onChange = _a.onChange;
    var _d = RecipientSelector_read((0,react.useState)(''), 2), search = _d[0], setSearch = _d[1];
    var handleValueSelect = function (value) {
        var newItems = toggleValues(values, value);
        onChange(newItems);
        setSearch('');
    };
    var handleValueRemove = function (id) {
        var updatedItems = values.filter(function (u) { return u.id !== id; });
        if (!(0,lodash.isEqual)(updatedItems, values)) {
            onChange(updatedItems);
        }
    };
    var handleChangeSearch = function (e) {
        setSearch(e.target.value.trim());
    };
    var renderSuggestion = function (item, focused) {
        var _a;
        var suggestionSelected = values.some(function (u) { return u.id === item.id; });
        return ((0,jsx_runtime.jsxs)("div", RecipientSelector_assign({ className: classnames_default()(RecipientSelector.user, (_a = {},
                _a[RecipientSelector.suggestionSelected] = suggestionSelected,
                _a[RecipientSelector.suggestionFocused] = focused,
                _a)) }, { children: [(0,jsx_runtime.jsx)(UserAvatar/* default */.A, { round: true, size: "40", className: classnames_default()(RecipientSelector.avatar), email: item.email, name: item.fullName, src: item.imageUrl }), (0,jsx_runtime.jsxs)("div", RecipientSelector_assign({ className: classnames_default()(RecipientSelector.info) }, { children: [(0,jsx_runtime.jsx)("div", RecipientSelector_assign({ className: classnames_default()(RecipientSelector.name) }, { children: item.fullName })), !item.imageUrl && (0,jsx_runtime.jsx)("div", RecipientSelector_assign({ className: classnames_default()(RecipientSelector.email) }, { children: item.email }))] }))] }), item.id));
    };
    function getSuggestions() {
        var newItems = [];
        if (externalOptionValidationsRegExp) {
            var isValidEmail = externalOptionValidationsRegExp.test(search);
            if (isValidEmail) {
                newItems.push({ id: '123', email: search, fullName: search });
            }
        }
        return options.concat(newItems);
    }
    return ((0,jsx_runtime.jsxs)("div", RecipientSelector_assign({ className: classnames_default()(className, RecipientSelector.base) }, { children: [(0,jsx_runtime.jsx)(react_media/* default */.A, RecipientSelector_assign({ query: "(max-width: 992px)" }, { children: function () { return ((0,jsx_runtime.jsx)(SearchableListMutable, { openToTop: true, suggestOnFocus: true, value: search, placeholder: placeholder || l('Find users or add external emails', 'emailNotification'), hintText: l('Press Enter to apply'), className: classnames_default()(RecipientSelector.users), suggestions: getSuggestions(), sortingProperties: { keys: [function (item) { return "".concat(item.fullName !== item.email, " ").concat(item.fullName, " ").concat(item.email); }] }, emptyState: (0,jsx_runtime.jsx)(EndorseContent_EndorseContent/* default */.A, { small: true, className: classnames_default()(RecipientSelector.emptyState), image: "/static/images/empty_users.png", title: l('You can add any email to your report', 'emailReports'), message: l('Please enter the correct email and press enter', 'emailReports') }), renderItem: renderSuggestion, onSelect: handleValueSelect, onInputChange: handleChangeSearch })); } })), !!values.length && (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", RecipientSelector_assign({ className: classnames_default()(RecipientSelector.selectedUsers) }, { children: values.map(function (item) { return ((0,jsx_runtime.jsx)(Tiles_RecipientTile_RecipientTile, { id: item.id, value: item.email, unsubscribed: item.unsubscribed, label: item.fullName, imageUrl: item.imageUrl, onRemove: handleValueRemove }, item.id)); }) }))] })));
};
/* harmony default export */ const components_RecipientSelector_RecipientSelector = (RecipientSelector_RecipientSelector);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Recipients/Recipients.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Recipients = ({"label":"VG8NPtyu9Hsdf6mFfFuq","error":"sv3kqALh15bI4hq0NTgx"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Recipients/Recipients.tsx
var Recipients_assign = (undefined && undefined.__assign) || function () {
    Recipients_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Recipients_assign.apply(this, arguments);
};
var Recipients_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




var Recipients_Recipients = function (_a) {
    var value = _a.value, onChange = _a.onChange, options = _a.options;
    // TODO: Remove functions after integration with the backend
    function addIdToOptions(opts) {
        return opts.map(function (user) { return (Recipients_assign(Recipients_assign({}, user), { id: user.email })); });
    }
    function removeIdFromOptions(opts) {
        return opts.map(function (_a) {
            var id = _a.id, rest = Recipients_rest(_a, ["id"]);
            return (Recipients_assign({}, rest));
        });
    }
    var optionsWithId = addIdToOptions(options);
    var valuesWithId = addIdToOptions(value);
    var handleChange = function (opts) {
        var recipients = removeIdFromOptions(opts);
        onChange(recipients);
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)(Label/* default */.A, Recipients_assign({ className: Recipients.label }, { children: [l('Recipients', 'emailNotification'), (0,jsx_runtime.jsx)("span", Recipients_assign({ className: Recipients.error }, { children: " *" }))] })), (0,jsx_runtime.jsx)(components_RecipientSelector_RecipientSelector, { options: optionsWithId, values: valuesWithId, externalOptionValidationsRegExp: /^[^\s@]+@[^\s@]+\.[^\s@]+$/, onChange: handleChange })] }));
};
/* harmony default export */ const components_Recipients_Recipients = (Recipients_Recipients);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Recipients/index.tsx


;// CONCATENATED MODULE: ./src/models/Integrations.ts
var IntegrationType;
(function (IntegrationType) {
    IntegrationType["Webhook"] = "webhook";
    IntegrationType["HelpDeskEddy"] = "helpDeskEddy";
    IntegrationType["CrmViaEmail"] = "crmViaEmail";
    IntegrationType["Zendesk"] = "zendesk";
    IntegrationType["Terrasoft"] = "terrasoft";
    IntegrationType["Telegram"] = "telegram";
    IntegrationType["UseDesk"] = "useDesk";
    IntegrationType["Slack"] = "slack";
    IntegrationType["Freshdesk"] = "freshdesk";
    IntegrationType["CustomWebhook"] = "customWebhook";
    IntegrationType["CreatioService"] = "creatioService";
    IntegrationType["AngrySpace"] = "angrySpace";
    IntegrationType["Hubspot"] = "hubspot";
    IntegrationType["MsTeams"] = "msTeams";
    IntegrationType["WhatsApp"] = "whatsApp";
})(IntegrationType || (IntegrationType = {}));

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Integrations/Integrations.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Integrations = ({"label":"Hi2GnddtEXi4azZvoFLq","error":"UewmVPsB10PQJTkMGG7A"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Integrations/Integrations.tsx
var Integrations_assign = (undefined && undefined.__assign) || function () {
    Integrations_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Integrations_assign.apply(this, arguments);
};
var Integrations_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};







var Integrations_Integrations = function (_a) {
    var value = _a.value, onChange = _a.onChange, options = _a.options, topicId = _a.topicId, onCloseModal = _a.onCloseModal;
    var typesToInclude = [IntegrationType.Telegram, IntegrationType.Slack, IntegrationType.WhatsApp, IntegrationType.MsTeams];
    var filterOptions = function () { return options.filter(function (option) { return typesToInclude.includes(option.type); }); };
    function convertOptions(optns) {
        return optns.map(function (option) { return ({
            fullName: option.to || option.fullName,
            imageUrl: Alert/* Alert */.F.getIntegrationImageUrl(option.type || option.integrationType),
            integrationType: option.type || option.integrationType,
            id: option.id.toString(),
        }); });
    }
    function convertBackOptions(optns) {
        return optns.map(function (_a) {
            var imageUrl = _a.imageUrl, option = Integrations_rest(_a, ["imageUrl"]);
            return (Integrations_assign(Integrations_assign({}, option), { to: option.fullName, id: parseInt(option.id, 10) }));
        });
    }
    var handleChange = function (opts) {
        var integrations = convertBackOptions(opts);
        onChange(integrations);
    };
    var convertedOptions = convertOptions(filterOptions());
    var convertedValues = convertOptions(value);
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)(Label/* default */.A, Integrations_assign({ className: Integrations.label }, { children: [l('Recipients', 'emailNotification'), (0,jsx_runtime.jsx)("span", Integrations_assign({ className: Integrations.error }, { children: " *" }))] })), filterOptions().length !== 0
                && (0,jsx_runtime.jsx)(components_RecipientSelector_RecipientSelector, { options: convertedOptions, values: convertedValues, placeholder: l('Select integrations', 'emailNotification'), onChange: handleChange }), (0,jsx_runtime.jsx)(dist/* Link */.N_, Integrations_assign({ to: "/themes/".concat(topicId, "/settings/integrations"), onClick: onCloseModal }, { children: l('+ Add integrations', 'emailNotification') }))] }));
};
/* harmony default export */ const components_Integrations_Integrations = (Integrations_Integrations);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Integrations/index.tsx


// EXTERNAL MODULE: ./src/components/ui/ChipSelector/index.ts + 4 modules
var ChipSelector = __webpack_require__("YGsB");
;// CONCATENATED MODULE: ./src/models/emailNotification/components/DeliveryMethod/DeliveryMethod.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DeliveryMethod = ({"label":"gPU5eidGXMUJimcP3LP2","chipSelector":"bdjAkffgW1TAyOkouNEG","chipItem":"ADPDANBLMi7NNwMIetr6","selected":"KOE7iilvhy52_nby9fAw"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/DeliveryMethod/DeliveryMethod.tsx
var DeliveryMethod_assign = (undefined && undefined.__assign) || function () {
    DeliveryMethod_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DeliveryMethod_assign.apply(this, arguments);
};






var DeliveryMethod_DeliveryMethod = function (_a) {
    var _b, _c;
    var value = _a.value, onChange = _a.onChange;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, DeliveryMethod_assign({ className: DeliveryMethod.label }, { children: l('Delivery method', 'emailNotification') })), (0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, DeliveryMethod_assign({ className: DeliveryMethod.chipSelector }, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, value: Notifications/* DeliveryMethod */.ye.Email, selected: value === Notifications/* DeliveryMethod */.ye.Email, label: l('Email', 'emailNotification'), onSelect: onChange, className: classnames_default()(DeliveryMethod.chipItem, (_b = {}, _b[DeliveryMethod.selected] = value === Notifications/* DeliveryMethod */.ye.Email, _b)) }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { value: Notifications/* DeliveryMethod */.ye.Integration, selected: value === Notifications/* DeliveryMethod */.ye.Integration, label: l('Messenger', 'emailNotification'), onSelect: onChange, className: classnames_default()(DeliveryMethod.chipItem, (_c = {}, _c[DeliveryMethod.selected] = value === Notifications/* DeliveryMethod */.ye.Integration, _c)) })] }))] }));
};
/* harmony default export */ const components_DeliveryMethod_DeliveryMethod = (DeliveryMethod_DeliveryMethod);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/DeliveryMethod/index.tsx


;// CONCATENATED MODULE: ./src/models/emailNotification/components/Frequency/Frequency.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Frequency = ({"label":"IsM1jWpdVlu8yWHk7Mxr","chipSelector":"oOXaFUoKbEp9QVGbCLqu","chipItem":"j5B6o7sAVJWeIVRwoWuF"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Frequency/Frequency.tsx
var Frequency_assign = (undefined && undefined.__assign) || function () {
    Frequency_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Frequency_assign.apply(this, arguments);
};





var Frequency_Frequency = function (_a) {
    var value = _a.value, onChange = _a.onChange;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, Frequency_assign({ className: Frequency.label }, { children: l('Frequency', 'emailNotification') })), (0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, Frequency_assign({ className: Frequency.chipSelector }, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, value: Notifications/* Frequency */.jN.Immediately, selected: value === Notifications/* Frequency */.jN.Immediately, label: l('Immediately', 'emailNotification'), onSelect: onChange, className: Frequency.chipItem }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { value: Notifications/* Frequency */.jN.Hourly, selected: value === Notifications/* Frequency */.jN.Hourly, label: l('Hourly', 'emailNotification'), onSelect: onChange, className: Frequency.chipItem })] }))] }));
};
/* harmony default export */ const components_Frequency_Frequency = (Frequency_Frequency);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Frequency/index.tsx


// EXTERNAL MODULE: ./src/state/mentionStream/selectors.ts
var mentionStream_selectors = __webpack_require__("wDA8");
// EXTERNAL MODULE: ./src/hooks/useMentionTranslation.ts
var useMentionTranslation = __webpack_require__("QNbQ");
// EXTERNAL MODULE: ./src/utils/smartFeaturesFeedbackLoop/index.js + 2 modules
var smartFeaturesFeedbackLoop = __webpack_require__("kD4d");
// EXTERNAL MODULE: ./src/containers/SmartFeaturesFeedbackLoop/index.ts + 9 modules
var SmartFeaturesFeedbackLoop = __webpack_require__("tZc3");
// EXTERNAL MODULE: ./src/components/ui/SearchableList/index.tsx + 1 modules
var ui_SearchableList = __webpack_require__("Y2I4");
;// CONCATENATED MODULE: ./src/containers/AssignUserEditor/components/AssignUserEditor.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AssignUserEditor = ({"overlayedBlock":"_gU7Hq2RxMHH0mRk_QSc","flexCenter":"KQvtWZzxnUkTdsjRxSfA","smartFeature":"dYrCoA41RLzjatnu1qnN","tag":"D8dn1B8H5pVdZmZfZH3H","visibleScrollBar":"l_w9EiQ6uC7i0AQUiuMg","hiddenScrollBar":"RNO50d31u94S4tdJBTp7","users":"Ue8GayytxGAPOHkNWi3V","emptyState":"Ke8zr3RsgQn_Xl9dw5Hv","buttons":"Bbmy5X5vL8dKOYWI2maa","addButton":"bJ4ozaehc_dkEzR3Xv6V","suggestionFocused":"rrPLOKI1qXh6zx1Nhb7r","suggestionSelected":"Hd_Baz2T42kA3leHYTSf","filter":"CWLoGT6wkGAyTkhkhTLw","ghost":"iNCcgx1cxyGyQWCh7vLE","user":"KtPNxEjriPuak8gL93xV","name":"zjEnKwqLYAB77HK3f1qg","email":"qcBIjnjFm4BJHQiJOWma","avatar":"se7AW2A00UKW5PdAV7Wb"});
;// CONCATENATED MODULE: ./src/containers/AssignUserEditor/components/AssignUserEditor.tsx
var AssignUserEditor_assign = (undefined && undefined.__assign) || function () {
    AssignUserEditor_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AssignUserEditor_assign.apply(this, arguments);
};
var AssignUserEditor_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};












var AssignUserEditor_ENTER_KEY = 13;
var AssignUserEditor_AssignUserEditor = function (_a) {
    var loading = _a.loading, _b = _a.selected, selected = _b === void 0 ? [] : _b, _c = _a.users, users = _c === void 0 ? [] : _c, onChange = _a.onChange, onCancel = _a.onCancel;
    var _d = AssignUserEditor_read((0,react.useState)(''), 2), search = _d[0], setSearch = _d[1];
    var _e = AssignUserEditor_read((0,react.useState)(''), 2), assignee = _e[0], changeAssignee = _e[1];
    var _f = AssignUserEditor_read((0,react.useState)(''), 2), message = _f[0], changeMessage = _f[1];
    var handleUserSelect = function (user) {
        var selectedId = user.get('id');
        changeAssignee(assignee !== selectedId ? selectedId : '');
    };
    var handleApply = function () {
        onChange({
            assigneeId: assignee,
            message: message,
        });
    };
    var handleKeyDown = function (e) {
        if (users.length && assignee && e.keyCode === AssignUserEditor_ENTER_KEY && e.shiftKey) {
            handleApply();
        }
    };
    var renderSuggestion = function (user, focused) {
        var _a;
        var usedSuggestion = user.toJS();
        var suggestionSelected = usedSuggestion.id === assignee || usedSuggestion.id === selected;
        return ((0,jsx_runtime.jsxs)("div", AssignUserEditor_assign({ className: classnames_default()(AssignUserEditor.user, (_a = {}, _a[AssignUserEditor.suggestionSelected] = suggestionSelected, _a[AssignUserEditor.suggestionFocused] = focused, _a)) }, { children: [(0,jsx_runtime.jsx)(UserAvatar/* default */.A, { round: true, imageUrl: usedSuggestion.avatarUrl, size: "40", className: classnames_default()(AssignUserEditor.avatar), email: usedSuggestion.email, name: usedSuggestion.fullName }), (0,jsx_runtime.jsxs)("div", AssignUserEditor_assign({ className: AssignUserEditor.info }, { children: [(0,jsx_runtime.jsx)("div", AssignUserEditor_assign({ className: AssignUserEditor.name }, { children: usedSuggestion.fullName })), (0,jsx_runtime.jsx)("div", AssignUserEditor_assign({ className: AssignUserEditor.email }, { children: usedSuggestion.email }))] }))] }), usedSuggestion.id));
    };
    return ((0,jsx_runtime.jsxs)("div", AssignUserEditor_assign({ className: AssignUserEditor.base, onKeyDown: handleKeyDown }, { children: [(0,jsx_runtime.jsx)(react_media/* default */.A, AssignUserEditor_assign({ query: "(max-width: 992px)" }, { children: function (matches) { return ((0,jsx_runtime.jsx)(ui_SearchableList/* default */.A, { autoFocus: true, value: search, placeholder: l('Search'), hintText: !matches && l('Press Shift + Enter to apply'), className: classnames_default()(AssignUserEditor.users), isLoading: loading, suggestions: (0,immutable.fromJS)(users), sortingProperties: { keys: [function (item) { return item.get('fullName'); }] }, emptyState: (0,jsx_runtime.jsx)(EndorseContent_EndorseContent/* default */.A, { small: true, className: classnames_default()(AssignUserEditor.emptyState), image: "/static/images/empty_users.png", title: search ? l('No users were found') : l('No users in this topic'), message: l('You can add new users to this topic in account settings') }), renderItem: renderSuggestion, onSelect: handleUserSelect, onChange: setSearch })); } })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), assignee && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(TextArea/* default */.A, { fullWidth: true, className: classnames_default()(AssignUserEditor.message), placeholder: l('Add message'), rows: 1, value: message, onChange: changeMessage }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", AssignUserEditor_assign({ className: classnames_default()(AssignUserEditor.buttons) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", label: l('Cancel'), onClick: onCancel }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "small", label: l('Apply'), onClick: handleApply })] }))] }))] })));
};
/* harmony default export */ const components_AssignUserEditor = ((0,react.memo)(AssignUserEditor_AssignUserEditor));

;// CONCATENATED MODULE: ./src/containers/AssignUserEditor/AssignUserEditor.tsx








var AssignUserEditorContainer = function (_a) {
    var users = _a.users, loading = _a.loading, selected = _a.selected, themeId = _a.themeId, fetchUsers = _a.fetchUsers, onChange = _a.onChange, onClose = _a.onClose;
    (0,react.useEffect)(function () {
        if (!users.length) {
            fetchUsers({ themeId: themeId });
        }
    }, []);
    var handleSave = function (assignee) {
        onChange(assignee);
        onClose();
    };
    return ((0,jsx_runtime.jsx)(components_AssignUserEditor, { users: users, selected: selected, loading: loading, onChange: handleSave, onCancel: onClose }));
};
/* harmony default export */ const containers_AssignUserEditor_AssignUserEditor = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, ownProps) { return ({
    users: (0,users_selectors/* getUsers */.lo)(state, ownProps),
    loading: (0,users_selectors/* getUsersLoading */.zA)(state),
}); }, { fetchUsers: users_model/* usersModel */.O.action.fetchUsers }), react.memo)(AssignUserEditorContainer));

;// CONCATENATED MODULE: ./src/containers/AssignUserEditor/index.ts


;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/components/Integration.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ShareMentionDialog_components_Integration = ({"base":"_9gNqmLfDGS7uUakRJf3g","info":"sOdGJTgaCBQHU4q7Tf0D","title":"vT_7C37eMS74KylOhXEw","disabled":"GfUtpOQEh2kyutAaLrpw","statusBadge":"Lz6vMkvLAg5R4R5zhE_L","fadeIn":"AJo5BfoX2oiVFj_UoYog","disabledBadge":"YwPtxp3rLg5oqdZV46QG","content":"grCU_awDk2YevZ58FcFt","iconContainer":"ZhnrLwWoX79WZWuxLstO"});
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/components/Integration.js






var Integration_Integration = function Integration(_ref) {
  var icon = _ref.icon,
    imageUrl = _ref.imageUrl,
    disabled = _ref.disabled,
    title = _ref.title,
    statusText = _ref.statusText,
    showStatus = _ref.showStatus,
    children = _ref.children,
    onClick = _ref.onClick,
    className = _ref.className;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(className, ShareMentionDialog_components_Integration.base, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, ShareMentionDialog_components_Integration.disabled, disabled), ShareMentionDialog_components_Integration.statusShown, showStatus)),
    onClick: onClick,
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(ShareMentionDialog_components_Integration.info),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(ShareMentionDialog_components_Integration.iconContainer),
        children: imageUrl ? /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
          alt: "",
          src: imageUrl,
          width: 14,
          height: 14
        }) : /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: icon,
          size: "small"
        })
      }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(ShareMentionDialog_components_Integration.title),
        children: title
      }), disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        className: classnames_default()(ShareMentionDialog_components_Integration.disabledBadge),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: "alert"
        }), " ", l('Disabled')]
      }), showStatus && !disabled && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(ShareMentionDialog_components_Integration.statusBadge),
        children: statusText
      })]
    }), children && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(ShareMentionDialog_components_Integration.content),
      children: children
    })]
  });
};
/* harmony default export */ const containers_ShareMentionDialog_components_Integration = (/*#__PURE__*/(0,react.memo)(Integration_Integration));
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/components/CopyToClipboard.js






var CopyToClipboardShare = function CopyToClipboardShare(_ref) {
  var url = _ref.url,
    onCopy = _ref.onCopy;
  var handleCopy = function handleCopy() {
    onCopy === null || onCopy === void 0 || onCopy();
    handleChangeCoppiedStatus(true);
    setTimeout(function () {
      return handleChangeCoppiedStatus(false);
    }, 2000);
  };
  var _useState = (0,react.useState)(false),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    copied = _useState2[0],
    handleChangeCoppiedStatus = _useState2[1];
  return /*#__PURE__*/(0,jsx_runtime.jsx)((react_copy_to_clipboard_lib_default()), {
    text: url,
    onCopy: handleCopy,
    children: /*#__PURE__*/(0,jsx_runtime.jsx)(containers_ShareMentionDialog_components_Integration, {
      title: l('Copy link to clipboard'),
      icon: "copy",
      imageUrl: "",
      statusText: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        type: "check"
      }),
      showStatus: copied
    })
  });
};
/* harmony default export */ const CopyToClipboard = (CopyToClipboardShare);
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/components/ConfiguredIntegration.js




var ConfiguredIntegration_ConfiguredIntegration = function ConfiguredIntegration(_ref) {
  var id = _ref.id,
    type = _ref.type,
    to = _ref.to,
    sent = _ref.sent,
    disabled = _ref.disabled,
    onSubmit = _ref.onSubmit;
  var handleSend = function handleSend() {
    onSubmit(id);
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(containers_ShareMentionDialog_components_Integration, {
    title: /*#__PURE__*/(0,jsx_runtime.jsx)(other_IntegrationName_IntegrationName, {
      prefix: l('Send to'),
      type: type,
      to: to
    }),
    imageUrl: "/static/images/integrations/".concat(type, ".svg"),
    statusText: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
      type: "check"
    }),
    showStatus: sent,
    disabled: disabled,
    onClick: handleSend
  });
};
/* harmony default export */ const ShareMentionDialog_components_ConfiguredIntegration = (ConfiguredIntegration_ConfiguredIntegration);
// EXTERNAL MODULE: ./src/components/ui/Icon/Icon.tsx
var Icon_Icon = __webpack_require__("FW6l");
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/components/SetupIntegration.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_SetupIntegration = ({"base":"jMn8HJO9cSQTf0fAnUwM","container":"gUXAw5hVb5nZiowOJqbK","backgroundImg":"BrS1Mjbk1Q94ttH6YhBQ","fadeIn":"nEvj8O_Mpi_Ai8bCsU7Q","button":"OFmu4vHhkU08vlTwY_Ad","title":"iX9Zj8Uc0WCaMHwd3sqN","text":"JP_eV9LPNmpyoWNqq4mF"});
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/components/SetupIntegration.js






function SetupIntegration_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SetupIntegration_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SetupIntegration_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SetupIntegration_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }











var SetupIntegration = /*#__PURE__*/function (_PureComponent) {
  function SetupIntegration() {
    var _this;
    (0,classCallCheck/* default */.A)(this, SetupIntegration);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = SetupIntegration_callSuper(this, SetupIntegration, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleRedirectToIntegrationSettings", function () {
      var _this$props = _this.props,
        themeId = _this$props.themeId,
        updateLocation = _this$props.updateLocation,
        sendAnalyticalEvent = _this$props.sendAnalyticalEvent;
      sendAnalyticalEvent({
        eventType: 'Integration: CTA in mention stream clicked'
      });
      updateLocation({
        pathname: "/themes/".concat(themeId, "/settings/integrations")
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(SetupIntegration, _PureComponent);
  return (0,createClass/* default */.A)(SetupIntegration, [{
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_SetupIntegration.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
          className: classnames_default()(components_SetupIntegration.backgroundImg),
          src: "/static/images/integrationsBackground.png",
          alt: "integrationBackground"
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_SetupIntegration.container),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            className: classnames_default()(components_SetupIntegration.button),
            label: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon_Icon/* default */.A, {
              type: "plus",
              size: 20
            }),
            onClick: this.handleRedirectToIntegrationSettings
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
            className: classnames_default()(components_SetupIntegration.title),
            children: l('Add integration', 'mentionStreamCTA')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
            className: classnames_default()(components_SetupIntegration.text),
            children: l('Configure integration to send mentions to it')
          })]
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const ShareMentionDialog_components_SetupIntegration = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state)
  };
}, {
  updateLocation: routing_actions/* update */.yo,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(SetupIntegration));
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/ShareMentionDialog.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ShareMentionDialog = ({"integrations":"l5RWu0_y9VZZuPCWPEpk","buttons":"gKoihgtQQneRoVf7HkUw","info":"uvAlJrK4X78CwoULt43w"});
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/ShareMentionDialog.js






function ShareMentionDialog_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ShareMentionDialog_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ShareMentionDialog_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ShareMentionDialog_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }

















var ShareMentionDialogContainer = /*#__PURE__*/function (_Component) {
  function ShareMentionDialogContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ShareMentionDialogContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ShareMentionDialog_callSuper(this, ShareMentionDialogContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleMentionLinkCopied", function () {
      var source = _this.props.source;
      if (source) {
        _this.props.sendAnalyticalEvent({
          eventType: 'Mention link copied',
          properties: {
            source: source.name
          }
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleSendToIntegration", function (integrationId) {
      var _this$props = _this.props,
        id = _this$props.id,
        themeId = _this$props.themeId;
      return _this.props.sendToIntegrationMentions({
        mentionIds: [id],
        themeId: themeId,
        integrationId: integrationId
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderIntegrations", function () {
      var _this$props2 = _this.props,
        canShowIntegrations = _this$props2.canShowIntegrations,
        themeIntegrations = _this$props2.themeIntegrations,
        mentionIntegrations = _this$props2.mentionIntegrations;
      return canShowIntegrations && themeIntegrations.length !== 0 ? themeIntegrations.map(function (integration) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(ShareMentionDialog_components_ConfiguredIntegration, {
          id: integration.id,
          type: integration.type,
          disabled: integration.disabled,
          settings: integration.settings,
          to: integration.to,
          sent: mentionIntegrations.includes(integration.id),
          onSubmit: _this.handleSendToIntegration
        }, integration.id);
      }) : /*#__PURE__*/(0,jsx_runtime.jsx)(ShareMentionDialog_components_SetupIntegration, {});
    });
    (0,defineProperty/* default */.A)(_this, "renderRedditExplanation", function () {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(ExplanationText/* default */.A, {
        className: classnames_default()(ShareMentionDialog.info, ShareMentionDialog.error),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: "warning",
          size: 15
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Mentions from Reddit cannot be sent to integrations due to platform limitations.')]
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ShareMentionDialogContainer, _Component);
  return (0,createClass/* default */.A)(ShareMentionDialogContainer, [{
    key: "render",
    value: function render() {
      var _this$props3 = this.props,
        mentionUrl = _this$props3.mentionUrl,
        source = _this$props3.source;
      var isSourceReddit = isReddit(source.name);
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(ShareMentionDialog.base),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(ShareMentionDialog.integrations),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(CopyToClipboard, {
            url: mentionUrl,
            onCopy: this.handleMentionLinkCopied
          }), isSourceReddit ? this.renderRedditExplanation() : this.renderIntegrations()]
        })
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const ShareMentionDialog_ShareMentionDialog = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeIntegrations: (0,themes_selectors/* getCurrentThemeIntegrations */.Ch)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    canShowIntegrations: (0,themes_selectors/* canViewIntegrations */.Hy)(state)
  };
}, {
  sendToIntegrationMentions: commands_model/* mentionStreamCommandsModel */.a.action.sendToIntegrationMentions,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(ShareMentionDialogContainer));
;// CONCATENATED MODULE: ./src/containers/ShareMentionDialog/index.js

// EXTERNAL MODULE: ./src/components/ui/IconCountBadge/index.ts + 2 modules
var IconCountBadge = __webpack_require__("Hyk5");
// EXTERNAL MODULE: ./src/components/other/AuthorDropdownInfo/AuthorInfoPopup.tsx + 2 modules
var AuthorInfoPopup = __webpack_require__("9K02");
;// CONCATENATED MODULE: ./src/components/other/AuthorDropdownInfo/AuthorDropdownInfo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AuthorDropdownInfo = ({"base":"zFP66ww7zDIL4Gc2auF8","username":"bYVOCfYDxYaw9XD06w0r"});
;// CONCATENATED MODULE: ./src/components/other/AuthorDropdownInfo/AuthorDropdownInfo.tsx
var AuthorDropdownInfo_assign = (undefined && undefined.__assign) || function () {
    AuthorDropdownInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorDropdownInfo_assign.apply(this, arguments);
};







var SOURCES_FOR_NICKNAME_OUTPUT = ['instagram.com', 'twitter.com'];
var shouldUseNickname = function (sourceName) { return SOURCES_FOR_NICKNAME_OUTPUT.includes(sourceName); };
var AuthorDropdownInfo_AuthorDropdownInfo = function (_a) {
    var name = _a.name, nickname = _a.nickname, sourceName = _a.sourceName, description = _a.description, subscribers = _a.subscribers, type = _a.type, avatarUrl = _a.avatarUrl, className = _a.className, canExclude = _a.canExclude, rating = _a.rating, onOpenProfile = _a.onOpenProfile, onShowMentions = _a.onShowMentions, onExclude = _a.onExclude;
    var renderNickname = function () {
        return (shouldUseNickname(sourceName) && name !== nickname)
            ? ((0,jsx_runtime.jsxs)("span", AuthorDropdownInfo_assign({ className: classnames_default()(AuthorDropdownInfo.username) }, { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), "@", nickname] })))
            : null;
    };
    return ((0,jsx_runtime.jsx)(AuthorInfoPopup/* default */.A, AuthorDropdownInfo_assign({ name: name, nickname: renderNickname(), sourceName: sourceName, description: description, subscribers: subscribers, type: type, avatarUrl: avatarUrl, canExclude: canExclude, onOpenProfile: onOpenProfile, onShowMentions: onShowMentions, onExclude: onExclude }, { children: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)("span", AuthorDropdownInfo_assign({ className: classnames_default()(className, AuthorDropdownInfo.base) }, { children: name })), renderNickname(), subscribers !== undefined && ((0,jsx_runtime.jsx)(IconCountBadge/* default */.A, { count: subscribers, iconType: "users" })), rating && ((0,jsx_runtime.jsx)(IconCountBadge/* default */.A, { count: rating, iconType: "star-full", countFormat: "0.0" }))] }) })));
};
/* harmony default export */ const other_AuthorDropdownInfo_AuthorDropdownInfo = ((0,react.memo)(AuthorDropdownInfo_AuthorDropdownInfo));

;// CONCATENATED MODULE: ./src/components/other/AuthorDropdownInfo/index.ts


;// CONCATENATED MODULE: ./src/containers/mentions/MentionAuthor/MentionAuthor.js






var MentionAuthorContainer = function MentionAuthorContainer(_ref) {
  var id = _ref.id,
    themeId = _ref.themeId,
    url = _ref.url,
    description = _ref.description,
    subscribers = _ref.subscribers,
    type = _ref.type,
    avatarUrl = _ref.avatarUrl,
    sourceName = _ref.sourceName,
    sourceIconUrl = _ref.sourceIconUrl,
    name = _ref.name,
    nickname = _ref.nickname,
    className = _ref.className,
    canExclude = _ref.canExclude,
    updateFilter = _ref.updateFilter,
    excludeAuthor = _ref.excludeAuthor;
  var handleFilter = function handleFilter() {
    updateFilter({
      name: 'author',
      value: [id]
    });
  };
  var handleExclude = function handleExclude() {
    excludeAuthor({
      authorId: id,
      themeId: themeId
    });
  };
  var handleOpenProfile = function handleOpenProfile() {
    window.open(url, '_blank');
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(other_AuthorDropdownInfo_AuthorDropdownInfo, {
    name: name,
    nickname: nickname,
    description: description,
    subscribers: subscribers,
    type: type,
    avatarUrl: avatarUrl,
    sourceName: sourceName,
    sourceIconUrl: sourceIconUrl,
    className: className,
    canExclude: canExclude,
    onOpenProfile: handleOpenProfile,
    onExclude: handleExclude,
    onShowMentions: handleFilter
  });
};
/* harmony default export */ const MentionAuthor = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    canExclude: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageAuthors')
  };
}, {
  excludeAuthor: authors_model/* authorsModel */.g.action.excludeAuthor,
  updateFilter: filter_model/* filterModel */.W.action.updateFilter
})(MentionAuthorContainer));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionAuthor/index.js

// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSource/components/MentionSource.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_MentionSource = ({"base":"BgNMJrrsKXup73BhMooc","sourcePopover":"k_richqm4Tb505dHcnZH","header":"zSLf5RLW6Kyz7VxcPfAl","actions":"dndm9A8H7yycu6MAoBSa"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSource/components/MentionSource.js






function MentionSource_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionSource_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionSource_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionSource_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var MentionSource = /*#__PURE__*/function (_PureComponent) {
  function MentionSource() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionSource);
    _this = MentionSource_callSuper(this, MentionSource);
    (0,defineProperty/* default */.A)(_this, "handleShowMentions", function () {
      _this.props.onShowMentions(_this.props.id);
      _this.popover.current.hide();
    });
    (0,defineProperty/* default */.A)(_this, "handleExclude", function () {
      _this.props.onExclude(_this.props.id);
      _this.popover.current.hide();
    });
    _this.popover = /*#__PURE__*/(0,react.createRef)();
    return _this;
  }
  (0,inherits/* default */.A)(MentionSource, _PureComponent);
  return (0,createClass/* default */.A)(MentionSource, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        name = _this$props.name,
        className = _this$props.className,
        canExclude = _this$props.canExclude,
        isYoutubeReview = _this$props.isYoutubeReview;
      var iconSize = isYoutubeReview ? 20 : 14;
      return canExclude ? /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
        ref: this.popover,
        on: "click",
        content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_MentionSource.sourcePopover),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_MentionSource.header),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
              name: name,
              size: iconSize
            }), name]
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
            className: classnames_default()(components_MentionSource.actions),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              ghost: true,
              size: "small",
              label: l('Show mentions'),
              onClick: this.handleShowMentions
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              danger: true,
              size: "small",
              label: l('Exclude'),
              onClick: this.handleExclude
            })]
          })]
        }),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(className, components_MentionSource.base),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
            name: name,
            size: iconSize
          }), name]
        })
      }) : /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        className: classnames_default()(className, components_MentionSource.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
          name: name,
          size: iconSize
        }), name]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionSource/MentionSource.js








var IMPORTANT_SOURCE_IDS = ['vk.com', 'twitter.com', 'facebook.com', 'instagram.com', 'plus.google.com', 'ok.ru', 'telegram.me'];
var MentionSourceContainer = function MentionSourceContainer(_ref) {
  var id = _ref.id,
    name = _ref.name,
    themeId = _ref.themeId,
    iconUrl = _ref.iconUrl,
    className = _ref.className,
    canExclude = _ref.canExclude,
    isYoutubeReview = _ref.isYoutubeReview,
    updateFilter = _ref.updateFilter,
    excludeSource = _ref.excludeSource;
  var handleFilter = function handleFilter() {
    updateFilter({
      name: 'sourceId',
      value: [id]
    });
  };
  var handleExclude = function handleExclude() {
    if (IMPORTANT_SOURCE_IDS.includes(name)) {
      (0,utils_confirm/* default */.A)({
        title: sprintf(l('Are you sure you want to exclude %s?'), name),
        validation: function validation(value) {
          return value.toLowerCase() === name.toLowerCase();
        },
        validationLabel: l('Please type the name of source you are currently excluding'),
        message: sprintf(l('This will move to bin all mentions from %s and' + ' no new mentions from %s will appear in the future'), name),
        actionLabel: l('Exclude')
      }).then(function () {
        return excludeSource({
          sourceId: id,
          themeId: themeId
        });
      });
    } else {
      (0,utils_confirm/* default */.A)({
        title: sprintf(l('Are you sure you want to exclude %s?'), name),
        message: sprintf(l('This will move to bin all mentions from %s and' + ' no new mentions from %s will appear in the future'), name),
        actionLabel: l('Exclude')
      }).then(function () {
        return excludeSource({
          sourceId: id,
          themeId: themeId
        });
      });
    }
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(MentionSource, {
    name: name,
    iconUrl: iconUrl,
    className: className,
    canExclude: canExclude,
    isYoutubeReview: isYoutubeReview,
    onExclude: handleExclude,
    onShowMentions: handleFilter
  });
};
/* harmony default export */ const MentionSource_MentionSource = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    canExclude: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageSources'),
    isYoutubeReview: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state)
  };
}, {
  excludeSource: sources_model/* sourcesModel */.o.action.excludeSource,
  updateFilter: filter_model/* filterModel */.W.action.updateFilter
})(MentionSourceContainer));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSource/index.js

// EXTERNAL MODULE: ./src/utils/sentiments.ts
var sentiments = __webpack_require__("ofyo");
// EXTERNAL MODULE: ./src/utils/translations/aspectTranslation.js
var aspectTranslation = __webpack_require__("0hC/");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionAspect/MentionAspect.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionAspect = ({"overlayedBlock":"LN0FI_NsCxi4B5Xad57X","flexCenter":"uu51OYKzV_hUnyy0yjqg","smartFeature":"VXrp_JhjI0C8OxdjlZ9O","tag":"JwXQ9gYWb3Mh9kHYZG6_","visibleScrollBar":"ygd2QeF8hlh6TtAh20lQ","hiddenScrollBar":"Zi5woSEEelBeq7Wrm9Wv","container":"p0VoTxJuk8wh6cCs9HtM"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionAspect/MentionAspect.tsx
var MentionAspect_assign = (undefined && undefined.__assign) || function () {
    MentionAspect_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionAspect_assign.apply(this, arguments);
};







var MentionAspect_MentionAspect = function (_a) {
    var aspect = _a.aspect, sentiment = _a.sentiment;
    var id = "".concat(aspect, "_").concat(sentiment);
    var iconType = sentiments/* SENTIMENT_ICON_TYPE */.Fh[sentiment];
    var iconColor = sentiments/* SENTIMENT_ICON_COLOR */.Q2[sentiment];
    return ((0,jsx_runtime.jsx)("div", MentionAspect_assign({ className: classnames_default()(MentionAspect.container) }, { children: (0,jsx_runtime.jsx)(Tag/* default */.Ay, { id: id, className: classnames_default()(MentionAspect.tag), label: (0,aspectTranslation/* getAspectLabel */.zS)(aspect), icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: iconType, color: iconColor }) }, id) })));
};
/* harmony default export */ const mentions_MentionAspect_MentionAspect = (MentionAspect_MentionAspect);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionAspect/index.tsx


;// CONCATENATED MODULE: ./src/containers/mentions/MentionTagList/MentionTagList.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionTagList = ({"addTagButton":"l14ZgEygJC1iEXJ3k8PU"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionTagList/MentionTagList.js






function MentionTagList_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function MentionTagList_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? MentionTagList_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : MentionTagList_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function MentionTagList_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionTagList_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionTagList_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionTagList_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var MentionTagListContainer = /*#__PURE__*/function (_PureComponent) {
  function MentionTagListContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionTagListContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = MentionTagList_callSuper(this, MentionTagListContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleRemoveTag", function (tagId) {
      _this.props.onChange((0,defineProperty/* default */.A)({}, tagId, false));
    });
    (0,defineProperty/* default */.A)(_this, "handleEditTag", function (tagId) {
      _this.props.showModal('createTag', {
        tagId: tagId
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeTags", function (tags) {
      var onChange = _this.props.onChange;
      var keys = Object.keys(tags);
      var changedTags = keys.reduce(function (acc, x) {
        return MentionTagList_objectSpread(MentionTagList_objectSpread({}, acc), {}, (0,defineProperty/* default */.A)({}, x, tags[x]));
      }, {});
      onChange(changedTags);
    });
    return _this;
  }
  (0,inherits/* default */.A)(MentionTagListContainer, _PureComponent);
  return (0,createClass/* default */.A)(MentionTagListContainer, [{
    key: "render",
    value: function render() {
      var _this2 = this;
      var _this$props = this.props,
        tags = _this$props.tags,
        tagIds = _this$props.tagIds,
        tagsEditorRef = _this$props.tagsEditorRef,
        canEdit = _this$props.canEdit;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Tag/* TagList */.LY, {
        children: [tags.map(function (tag) {
          return /*#__PURE__*/(0,jsx_runtime.jsx)(Tag/* default */.Ay, {
            removable: canEdit,
            id: Number(tag.id),
            color: tag.color,
            note: tag.note,
            createdAt: tag.createdAt,
            label: tag.name,
            onRemove: canEdit && _this2.handleRemoveTag,
            onDoubleClick: canEdit && _this2.handleEditTag
          }, tag.id + tag.name);
        }), canEdit && /*#__PURE__*/(0,jsx_runtime.jsx)(containers_TagsEditor_TagsEditor, {
          ref: tagsEditorRef,
          position: "bottom left",
          trigger: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            ghost: true,
            size: "small",
            className: classnames_default()(MentionTagList.addTagButton),
            label: l('Add tag')
          }),
          selected: tagIds,
          onChange: this.handleChangeTags
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const MentionTagList_MentionTagList = ((0,react_redux/* connect */.Ng)(function (state, ownProps) {
  return {
    tags: (0,tags_selectors/* getTagListByIds */.ou)(state, ownProps.tagIds),
    canEdit: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageMentions')
  };
}, {
  showModal: modals_actions/* showModal */.to
})(MentionTagListContainer));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionTagList/index.js

;// CONCATENATED MODULE: ./src/containers/mentions/MentionChannel/MentionChannel.js






var MentionChannelContainer = function MentionChannelContainer(_ref) {
  var id = _ref.id,
    themeId = _ref.themeId,
    url = _ref.url,
    description = _ref.description,
    rating = _ref.rating,
    subscribers = _ref.subscribers,
    type = _ref.type,
    avatarUrl = _ref.avatarUrl,
    sourceIconUrl = _ref.sourceIconUrl,
    name = _ref.name,
    canExclude = _ref.canExclude,
    className = _ref.className,
    updateFilter = _ref.updateFilter,
    excludeChannel = _ref.excludeChannel;
  var handleFilter = function handleFilter() {
    updateFilter({
      name: 'channel',
      value: [id]
    });
  };
  var handleExclude = function handleExclude() {
    excludeChannel({
      channelId: id,
      themeId: themeId
    });
  };
  var handleOpenProfile = function handleOpenProfile() {
    window.open(url, '_blank');
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(other_AuthorDropdownInfo_AuthorDropdownInfo, {
    name: name,
    description: description,
    subscribers: subscribers,
    type: type,
    avatarUrl: avatarUrl,
    sourceIconUrl: sourceIconUrl,
    className: className,
    canExclude: canExclude,
    rating: rating,
    onExclude: handleExclude,
    onShowMentions: handleFilter,
    onOpenProfile: handleOpenProfile
  });
};
/* harmony default export */ const MentionChannel = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    canExclude: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageAuthors')
  };
}, {
  excludeChannel: channels_model/* channelsModel */.S.action.excludeChannel,
  updateFilter: filter_model/* filterModel */.W.action.updateFilter
})(MentionChannelContainer));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionChannel/index.js

// EXTERNAL MODULE: ./src/utils/translations/subjectsFilterTranslation.js
var subjectsFilterTranslation = __webpack_require__("/KsC");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSubject/MentionSubject.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionSubject = ({"overlayedBlock":"DBpdcOp70wCLKmsKPoTs","flexCenter":"A1SHcGfkW4IRURDnDcxN","smartFeature":"QPoHsRyFUeaQCJJ7CJNj","tag":"fvqRBJmtH7cbTRw4eYJe","visibleScrollBar":"LEx9NwTVEgA1jooEeDi5","hiddenScrollBar":"jcFlX5eubArPqBwPuN2A","base":"FqbB8T9fvT0U7upAg_Oq"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSubject/MentionSubject.tsx
var MentionSubject_assign = (undefined && undefined.__assign) || function () {
    MentionSubject_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionSubject_assign.apply(this, arguments);
};





var MentionSubject_MentionSubject = function (_a) {
    var type = _a.type;
    return ((0,jsx_runtime.jsx)("div", MentionSubject_assign({ className: classnames_default()(MentionSubject.base) }, { children: (0,jsx_runtime.jsx)(Tag/* default */.Ay, { id: type, className: classnames_default()(MentionSubject.tag), label: (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(type) }, type) })));
};
/* harmony default export */ const mentions_MentionSubject_MentionSubject = (MentionSubject_MentionSubject);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionSubject/index.tsx


// EXTERNAL MODULE: ./src/utils/translations/autoCategoriesTranslation.js
var autoCategoriesTranslation = __webpack_require__("e4Wn");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSystemTag/MentionSystemTag.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionSystemTag = ({"overlayedBlock":"HUpchlBKpKVpEFTClQVE","flexCenter":"pcnYrp0OiSyTuGwn8bMU","smartFeature":"PkZV4Eki7DpvHx0sHehA","tag":"Q6kw0snHUkcHJXZRRHpc","visibleScrollBar":"wMgwY0URcKxx8y0A5Beq","hiddenScrollBar":"g29puNBYvogYHtZsRka3","container":"Y9f1rSJ4NoZNa7nmey_1"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionSystemTag/MentionSystemTag.tsx
var MentionSystemTag_assign = (undefined && undefined.__assign) || function () {
    MentionSystemTag_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionSystemTag_assign.apply(this, arguments);
};










var MentionSystemTag_MentionSystemTag = function (_a) {
    var type = _a.type;
    return ((0,jsx_runtime.jsx)("div", MentionSystemTag_assign({ className: classnames_default()(MentionSystemTag.container) }, { children: (0,jsx_runtime.jsx)(Tag/* default */.Ay, { id: type, className: classnames_default()(MentionSystemTag.tag), label: (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(type).label, icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 13, type: type }) }, type) })));
};
var connectedMentionSystemTag = (0,react_redux/* connect */.Ng)(function (state) { return ({
    canRemoveSystemTags: (0,themes_selectors/* canRemoveSystemTags */.N4)(state),
}); }, { updateUiSettings: currentUser_model/* currentUserStateModel */.b.action.updateUiSettings })(MentionSystemTag_MentionSystemTag);
/* harmony default export */ const mentions_MentionSystemTag_MentionSystemTag = ((0,react.memo)(connectedMentionSystemTag));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionSystemTag/index.tsx


// EXTERNAL MODULE: ./src/components/ui/MenuItem/index.ts + 2 modules
var MenuItem = __webpack_require__("ADKe");
// EXTERNAL MODULE: ./src/components/ui/MentionText/index.ts + 2 modules
var MentionText = __webpack_require__("6k/U");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
;// CONCATENATED MODULE: ./src/components/ui/CountryName/CountryName.tsx



var CountryName = function (_a) {
    var code = _a.code;
    return ((0,jsx_runtime.jsx)("span", { children: (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(code) }));
};
/* harmony default export */ const CountryName_CountryName = ((0,react.memo)(CountryName));

;// CONCATENATED MODULE: ./src/components/ui/CountryName/index.ts


// EXTERNAL MODULE: ./src/components/ui/ImagePreview/index.ts
var ImagePreview = __webpack_require__("efAf");
// EXTERNAL MODULE: ./src/components/ui/DropDownMenu/index.ts + 1 modules
var DropDownMenu = __webpack_require__("RWtR");
// EXTERNAL MODULE: ./src/components/ui/MentionParamsCounter/index.ts + 2 modules
var MentionParamsCounter = __webpack_require__("7sfm");
// EXTERNAL MODULE: ./node_modules/react-json-tree/lib/index.js
var react_json_tree_lib = __webpack_require__("fNf1");
// EXTERNAL MODULE: ./src/config.js
var config = __webpack_require__("Jret");
;// CONCATENATED MODULE: ./src/components/helpers/DevInfo/DevInfo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DevInfo = ({"base":"CDwocHhahtgcOTUNxWDA","devIcon":"JnTdSOSNNU34ADRrSgeW"});
;// CONCATENATED MODULE: ./src/components/helpers/DevInfo/DevInfo.tsx
var DevInfo_assign = (undefined && undefined.__assign) || function () {
    DevInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DevInfo_assign.apply(this, arguments);
};







var DevInfo_DevInfo = function (_a) {
    var className = _a.className, data = _a.data;
    if (!config/* default */.A.devMode) {
        return null;
    }
    return ((0,jsx_runtime.jsxs)("div", DevInfo_assign({ className: classnames_default()(className, DevInfo.base) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "code", className: classnames_default()(DevInfo.devIcon) }), (0,jsx_runtime.jsx)(react_json_tree_lib/* default */.A, { hideRoot: true, data: data })] })));
};
/* harmony default export */ const helpers_DevInfo_DevInfo = ((0,react.memo)(DevInfo_DevInfo));

;// CONCATENATED MODULE: ./src/components/helpers/DevInfo/index.ts


;// CONCATENATED MODULE: ./src/components/other/MentionTrend/MentionTrend.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionTrend = ({"base":"UbHjI9M2CvPMjZC1DX5m","wrapper":"Ha7lh06gONX_AqlAqRSK","icon":"rwuQtx28EusxYoTv54eq","countContainer":"z9Z9otCUEXCYG0FqfRQL","name":"FfyVYpjhrt1uaugV6PlM","positive":"VI9cSlAY1ezL3m9OaeEW","negative":"qlzuAFS4GV6kWHUnE1HB","edit":"MvbLhQ2GUszcSu_PdFip"});
;// CONCATENATED MODULE: ./src/components/other/MentionTrend/MentionTrend.tsx
var MentionTrend_assign = (undefined && undefined.__assign) || function () {
    MentionTrend_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionTrend_assign.apply(this, arguments);
};




var TREND_ICON_SIZE = 13;
var MentionTrend_MentionTrend = function (_a) {
    var text = _a.text, trendId = _a.trendId, sentiment = _a.sentiment, onClick = _a.onClick, onSendAnalyticalEvent = _a.onSendAnalyticalEvent, _b = _a.onEditTrend, onEditTrend = _b === void 0 ? function () { } : _b;
    var handleClick = function () {
        onSendAnalyticalEvent({ eventType: 'Trends: trend on mention clicked' });
        onClick(trendId);
    };
    return ((0,jsx_runtime.jsx)("div", MentionTrend_assign({ role: "presentation", title: text, className: classnames_default()(MentionTrend.base, MentionTrend[sentiment]) }, { children: (0,jsx_runtime.jsxs)("div", MentionTrend_assign({ className: classnames_default()(MentionTrend.wrapper) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(MentionTrend.icon), color: "inherit", type: "trend", size: TREND_ICON_SIZE }), (0,jsx_runtime.jsx)("span", MentionTrend_assign({ className: classnames_default()(MentionTrend.name), onClick: handleClick }, { children: text })), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(MentionTrend.edit), size: 12, type: "edit", onClick: onEditTrend })] })) })));
};
/* harmony default export */ const other_MentionTrend_MentionTrend = (MentionTrend_MentionTrend);

;// CONCATENATED MODULE: ./src/components/other/MentionTrend/index.js

// EXTERNAL MODULE: ./src/components/other/TranslationButton/index.ts + 2 modules
var TranslationButton = __webpack_require__("z/m7");
// EXTERNAL MODULE: ./src/components/other/MentionEngagementCounts/index.js + 2 modules
var MentionEngagementCounts = __webpack_require__("vGGb");
// EXTERNAL MODULE: ./src/utils/translations/collectionMethodsFilterTranslations.ts
var collectionMethodsFilterTranslations = __webpack_require__("Rotz");
// EXTERNAL MODULE: ./src/utils/isMentionWithSuspiciousContent.ts
var isMentionWithSuspiciousContent = __webpack_require__("Lyvr");
;// CONCATENATED MODULE: ./src/containers/mentions/FullMention/components/MentionCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_MentionCard = ({"overlayedBlock":"Y8EFKHxhAPM9EDaPBrkB","flexCenter":"QXfajqhxK2Cr3cli2jNy","smartFeature":"mbUUAYYJH8M6ka4I8LLD","tag":"SJ5rrXbksEE1NzeORowV","visibleScrollBar":"dBc1MS8QKptCjQPSsREi","hiddenScrollBar":"lIn7Axa0kYYqqWlU7op4","focusArea":"loipsXcIVdOW4UsSRZwT","deletedFromSource":"gSWYWWoYYClClZ9ulqGR","text":"yTQDE67dGBCe0RHlg7su","authorLine":"ZkahtsptZoeRlwdp2b5Q","title":"fN4cbeDeWdwIPW8ovBDz","parentText":"YG0ezTSuBZ8x4TVaW0fV","avatarContainer":"zH1rY4WgDC1sLga5g0uC","avatar":"dPysC8U9HmCfHzuNY65p","checkboxContainer":"PbZcZjvE9GkwMHd7h0up","displayed":"EebslWRRgCmmhfiSYZja","author":"p6Cefpya6yjhwbgAkhzr","channel":"L1wo8DJXtBPCV2np7psX","header":"TPQq2EswrbIgPsIrocso","info":"s8kwv8h9olF475GfcRoJ","details":"rEDIIGLkqN9F18PWcZCd","assignee":"AxuZUvgFTNVs1fDtc1VH","assigneeIcon":"OKvYTdh_BY7nmCLQgkdI","assigneeName":"xy38WwMbCtX6ZfhWyE7I","sourceName":"pV_pyNNBgttFYBxkD6_w","toolbar":"IZxwtuLwzbCrISWeX1Fw","content":"tZifhzF6Tak5MatixThN","contentImage":"w7z22rVu5J2B899JTnCx","contentText":"HmElieUpSn0HZaUyoPMS","duplicates":"U8ZrHVLOX7begM1XjKHA","similars":"UMR0Np0T1OTz5pEGB3L_","duplicatesIcon":"Etn1ystBqprdsQcBWegh","bottomBar":"pp7jkwnXgl7RZjfQrUBA","mentionControls":"vYvAhTkU2eGjH9dkj9SV","sentiment":"PMVt9mlxtNKAqeGgZCtB","timePublished":"gw_fbhnJUwjCTMRU0y4P","counts":"GVFgAHjx2xSgDmsmHknP","countGroup":"rF2h6rTisPLCxkZdfa1n","note":"VaIKVk6vEQXbj9Nb7qqA","body":"JD2QXbESBQBN5a28xpQi","systemTags":"kvs9KxGBhmlUVy9tuXLu","subjects":"jJIs8hZdJ5g8_eAopxlD","aspects":"Ts8XcOkmWiKvb3Ec3xXn","footer":"KtRTPkIRIGrLz41DPYRM","systemInfo":"XRjr3aB_opW4dWCtpsoT","showMoreButton":"HKUtRLglmTE1clTDU8Wx","rating":"c7ZpicmjhbqbM9PeILvR","ratingNumber":"d853m7NhV8cshpOUIZtx","procession":"PpSUbj51bNM7vklEhXIc","processedIcon":"OBEyUyl7FiMhnAQmBzdj","processed":"bjsJu5w6vgbBLlMFkUbR","disabled":"B8hrs4A0OGHGrzEg3DRe","mentionControls__feedback-loop":"PbPbTsypNAta8lzvNLYE"});
;// CONCATENATED MODULE: ./src/containers/mentions/FullMention/components/NoteModal.js






function NoteModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, NoteModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function NoteModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (NoteModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var NoteModal = /*#__PURE__*/function (_PureComponent) {
  function NoteModal(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, NoteModal);
    _this = NoteModal_callSuper(this, NoteModal, [props]);
    (0,defineProperty/* default */.A)(_this, "handleSave", function () {
      _this.props.onSave(_this.state.text);
    });
    (0,defineProperty/* default */.A)(_this, "handleTextChange", function (text) {
      _this.setState({
        text: text
      });
    });
    _this.state = {
      text: _this.props.note
    };
    return _this;
  }
  (0,inherits/* default */.A)(NoteModal, _PureComponent);
  return (0,createClass/* default */.A)(NoteModal, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var note = this.props.note;
      if (prevProps.note !== this.props.note) {
        this.setState({
          text: note
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        note = _this$props.note,
        isOpen = _this$props.isOpen,
        onClose = _this$props.onClose;
      var text = this.state.text;
      var MODAL_MAX_WIDTH = 300;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Modal/* default */.A, {
        isOpen: isOpen,
        title: l('Add note'),
        maxWidth: MODAL_MAX_WIDTH,
        onRequestClose: onClose,
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextArea/* default */.A, {
          autoFocus: true,
          fullWidth: true,
          value: this.state.text,
          rows: 5,
          placeholder: l('Enter your note'),
          onChange: this.handleTextChange
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            label: l('Cancel'),
            onClick: onClose
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            disabled: !text || text === note,
            label: l('Save'),
            onClick: this.handleSave
          })]
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/mentions/FullMention/components/MentionCard.tsx
var MentionCard_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var MentionCard_assign = (undefined && undefined.__assign) || function () {
    MentionCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionCard_assign.apply(this, arguments);
};

// @ts-nocheck









































var FEEDBACK_LOOP_ICON_SIZE = 12;
var MentionCard = /** @class */ (function (_super) {
    MentionCard_extends(MentionCard, _super);
    function MentionCard() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            editingNote: false,
            isShowSystemInfo: false,
        };
        _this.handleToggleStarred = function () {
            if (_this.props.starred) {
                _this.props.onUnstar(_this.props.id);
            }
            else {
                _this.props.onStar(_this.props.id);
            }
        };
        _this.handleDelete = function () {
            if (_this.props.onDelete) {
                _this.props.onDelete(_this.props.id);
            }
        };
        _this.handleRestore = function () {
            if (_this.props.onRestore) {
                _this.props.onRestore(_this.props.id);
            }
        };
        _this.handleToggleSpam = function () {
            if (_this.props.spam) {
                _this.props.onMarkAsHam(_this.props.id);
            }
            else {
                _this.props.onMarkAsSpam(_this.props.id);
            }
        };
        _this.handleToggleProcessed = function () {
            if (_this.props.processed) {
                _this.props.onMarkUnprocessed(_this.props.id);
            }
            else {
                _this.props.onMarkProcessed(_this.props.id);
            }
        };
        _this.handleSetSentiment = function (sentiment) {
            if (_this.props.onSetSentiment) {
                _this.props.onSetSentiment(_this.props.id, sentiment);
            }
        };
        _this.handleAssign = function (assignee) {
            if (_this.props.onAssign) {
                _this.props.onAssign(_this.props.id, assignee);
            }
        };
        _this.handleChangeTags = function (tags) {
            if (_this.props.onChangeTags) {
                _this.props.onChangeTags(_this.props.id, tags);
            }
        };
        _this.handleChangeSmartFeature = function (smartFeatures) {
            if (_this.props.onChangeSmartFeature) {
                _this.props.onChangeSmartFeature(_this.props.id, smartFeatures);
            }
        };
        _this.handleClickImageTag = function (_a) {
            var type = _a.type, value = _a.value;
            if (_this.props.onClickImageTag) {
                _this.props.onClickImageTag({ type: type, value: value });
            }
        };
        _this.handleShowDuplicates = function () {
            if (_this.props.onShowDuplicates) {
                _this.props.onShowDuplicates(_this.props.textHash);
            }
        };
        _this.handleShowSimilar = function () {
            if (_this.props.onShowSimilar) {
                _this.props.onShowSimilar(_this.props.id);
            }
        };
        _this.handleShowDiscussion = function () {
            if (_this.props.onShowDiscussion) {
                _this.props.onShowDiscussion(_this.props.discussionId);
            }
        };
        _this.handleRequestEditNote = function () {
            _this.setState({
                editingNote: true,
            });
        };
        _this.handleCancelEditingNote = function () {
            _this.setState({
                editingNote: false,
            });
        };
        _this.handleAddNote = function (note) {
            _this.setState({
                editingNote: false,
            });
            if (_this.props.onAddNote) {
                _this.props.onAddNote(_this.props.id, note);
            }
        };
        _this.handleShowSystemInfo = function () {
            _this.setState({ isShowSystemInfo: true });
        };
        return _this;
    }
    MentionCard.prototype.renderGeo = function () {
        var _a = this.props, country = _a.country, city = _a.city, region = _a.region;
        if (!country && !city && !region) {
            return null;
        }
        return ((0,jsx_runtime.jsxs)("span", MentionCard_assign({ className: classnames_default()(components_MentionCard.geo) }, { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "geo" }), country && (0,jsx_runtime.jsx)(CountryName_CountryName, { code: country }), region && !city && ((0,jsx_runtime.jsxs)("span", { children: [",", (0,jsx_runtime.jsx)(Space/* default */.A, {}), region] })), city && ((0,jsx_runtime.jsxs)("span", { children: [",", (0,jsx_runtime.jsx)(Space/* default */.A, {}), region] }))] })));
    };
    MentionCard.prototype.renderAuthor = function () {
        var _a = this.props, themeId = _a.themeId, author = _a.author, source = _a.source, channel = _a.channel;
        var showChannel = (channel === null || channel === void 0 ? void 0 : channel.name)
            && (!author || (author === null || author === void 0 ? void 0 : author.id) !== (channel === null || channel === void 0 ? void 0 : channel.id));
        return ((0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.authorLine) }, { children: [author ? ((0,jsx_runtime.jsx)(MentionAuthor, { className: classnames_default()(components_MentionCard.author), themeId: themeId, id: author.uid, name: author.name, nickname: author.nickname, type: author.type, sourceName: source.name, sourceIconUrl: source.iconUrl, description: author.description, subscribers: author.subscribers, avatarUrl: author.avatarUrl, url: author.url })) : (l('Unknown user')), (0,jsx_runtime.jsx)(Space/* default */.A, {}), showChannel && ((0,jsx_runtime.jsxs)("span", { children: [l('in', 'channel'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(MentionChannel, { className: classnames_default()(components_MentionCard.channel), themeId: themeId, id: channel.uid, name: channel.name, type: channel.type, sourceIconUrl: source.iconUrl, rating: channel.rating, description: channel.description, subscribers: channel.subscribers, avatarUrl: channel.avatarUrl, url: channel.url })] }))] })));
    };
    MentionCard.prototype.renderAssigneeEditor = function () {
        var _a = this.props, themeId = _a.themeId, assignee = _a.assignee;
        return ((0,jsx_runtime.jsx)(containers_AssignUserEditor_AssignUserEditor
        // @ts-ignore
        , { 
            // @ts-ignore
            themeId: themeId, selected: assignee === null || assignee === void 0 ? void 0 : assignee.id, onChange: this.handleAssign }));
    };
    MentionCard.prototype.renderShareDialog = function () {
        var _a = this.props, id = _a.id, url = _a.url, integrations = _a.integrations, source = _a.source;
        return (0,jsx_runtime.jsx)(ShareMentionDialog_ShareMentionDialog, { id: id, mentionUrl: url, mentionIntegrations: integrations, source: source });
    };
    MentionCard.prototype.render = function () {
        var _a, _b, _c, _d;
        var _this = this;
        var _e = this.props, canManage = _e.canManage, isKeywordHighlightEnabled = _e.isKeywordHighlightEnabled, isTranslated = _e.isTranslated, isTranslationLoading = _e.isTranslationLoading, translationError = _e.translationError, canTranslate = _e.canTranslate, url = _e.url, themeId = _e.themeId, title = _e.title, note = _e.note, parentText = _e.parentText, text = _e.text, translatedTitle = _e.translatedTitle, translatedText = _e.translatedText, spam = _e.spam, rating = _e.rating, assignee = _e.assignee, className = _e.className, author = _e.author, tagIds = _e.tagIds, imageUrl = _e.imageUrl, imageBrands = _e.imageBrands, imageObjects = _e.imageObjects, imageScenes = _e.imageScenes, imagePeople = _e.imagePeople, imageContentSensitivity = _e.imageContentSensitivity, imageColors = _e.imageColors, imageActivities = _e.imageActivities, imageType = _e.imageType, imageSubtype = _e.imageSubtype, ocrTexts = _e.ocrTexts, source = _e.source, publishedLocal = _e.publishedLocal, sentiment = _e.sentiment, engagement = _e.engagement, manualSentiment = _e.manualSentiment, potentialReach = _e.potentialReach, starred = _e.starred, deleted = _e.deleted, processed = _e.processed, duplicatesCount = _e.duplicatesCount, discussionCommentsCount = _e.discussionCommentsCount, dedup = _e.dedup, similarCount = _e.similarCount, showSystemTags = _e.showSystemTags, showSubjects = _e.showSubjects, showAspects = _e.showAspects, showTrends = _e.showTrends, showFeedbackLoop = _e.showFeedbackLoop, feedbackLoopSmartFeatures = _e.feedbackLoopSmartFeatures, feedbackLoopViSmartFeatures = _e.feedbackLoopViSmartFeatures, showVisualInsights = _e.showVisualInsights, systemTags = _e.systemTags, subjects = _e.subjects, aspects = _e.aspects, trends = _e.trends, apiName = _e.apiName, apiCode = _e.apiCode, addedAt = _e.addedAt, language = _e.language, origin = _e.origin, collectionMethods = _e.collectionMethods, showSystemInfo = _e.showSystemInfo, onTrendClick = _e.onTrendClick, onOpenExternalLink = _e.onOpenExternalLink, onTranslate = _e.onTranslate, deletedFromSource = _e.deletedFromSource, isYoutubeReviewAccount = _e.isYoutubeReviewAccount, sourceFormat = _e.sourceFormat;
        var isShowSystemInfo = this.state.isShowSystemInfo;
        var withImage = !!imageUrl;
        var stacked = dedup && duplicatesCount > 1;
        return ((0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.base, className, (_a = {}, _a[components_MentionCard.stacked] = stacked, _a[components_MentionCard.deletedFromSource] = deletedFromSource, _a)) }, { children: [(0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.toolbar) }, { children: [(0,jsx_runtime.jsx)(Popover/* default */.A, MentionCard_assign({ flexibleHeight: true, position: "bottom right", content: this.renderShareDialog() }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "share", tooltip: l('Share') }) })), (0,jsx_runtime.jsx)(Popover/* default */.A, MentionCard_assign({ position: "bottom right", content: this.renderAssigneeEditor() }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "assign", tooltip: l('Assign') }) })), starred ? ((0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "star-full", tooltip: l('Remove from favorites'), color: "amber", onClick: this.handleToggleStarred })) : ((0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "star", tooltip: l('Add to favorites'), onClick: this.handleToggleStarred })), deleted ? ((0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "restore", tooltip: l('Restore'), onClick: this.handleRestore })) : ((0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "trash", tooltip: l('Delete'), onClick: this.handleDelete })), (0,jsx_runtime.jsxs)(DropDownMenu/* default */.A, MentionCard_assign({ component: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "dots" }), position: "bottom right" }, { children: [(0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: note ? l('Change note') : l('Add note'), onSelect: this.handleRequestEditNote }), spam ? ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { disabled: deleted, label: l('Delete from spam'), onSelect: this.handleToggleSpam })) : ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { disabled: deleted, label: l('Mark as spam'), onSelect: this.handleToggleSpam }))] })), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "close", tooltip: l('Close'), onClick: this.props.onClose })] })), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.body) }, { children: [(0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.header) }, { children: [(0,jsx_runtime.jsx)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.avatarContainer) }, { children: (0,jsx_runtime.jsx)(Avatar/* default */.A, { rounded: true, size: "100%", imageUrl: author === null || author === void 0 ? void 0 : author.avatarUrl }) })), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.info) }, { children: [this.renderAuthor(), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.details) }, { children: [(0,jsx_runtime.jsx)(MentionSource_MentionSource, { themeId: themeId, id: source.id, className: classnames_default()(components_MentionCard.sourceName), iconUrl: source.iconUrl, name: source.name }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", MentionCard_assign({ href: url, className: classnames_default()(components_MentionCard.timePublished), target: "_blank", rel: "noopener noreferrer", onClick: onOpenExternalLink }, { children: moment_default()(publishedLocal).format('LLL') })), this.renderGeo()] }))] }))] })), (0,jsx_runtime.jsx)(helpers_DevInfo_DevInfo, { data: { mention: this.props } }), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.content, (_b = {}, _b[components_MentionCard.withImage] = withImage, _b)) }, { children: [(0,lodash.isNumber)(rating) && ((0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.rating) }, { children: [(0,jsx_runtime.jsx)(react_rating_esm/* default */.A, { readonly: true, fractions: 2, initialRating: rating, emptySymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "lightgray", size: 24 }), fullSymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "amber", size: 24 }) }), (0,jsx_runtime.jsx)("span", MentionCard_assign({ className: classnames_default()(components_MentionCard.ratingNumber) }, { children: numeral_default()(rating).format('0.0') }))] }))), imageUrl && ((0,jsx_runtime.jsx)(ImagePreview/* default */.A, { isSquareImage: true, isSuspiciousContent: (0,isMentionWithSuspiciousContent/* default */.A)(systemTags), className: classnames_default()(components_MentionCard.contentImage), src: imageUrl, imageBrands: imageBrands, imageObjects: imageObjects, imageScenes: imageScenes, imagePeople: imagePeople, imageContentSensitivity: imageContentSensitivity, imageColors: imageColors, imageActivities: imageActivities, imageType: imageType, imageSubtype: imageSubtype, ocrTexts: ocrTexts, showVisualInsights: showVisualInsights, showFeedbackLoop: showFeedbackLoop, feedbackLoopViSmartFeatures: feedbackLoopViSmartFeatures, onChangeSmartFeature: this.handleChangeSmartFeature, onClickImageTag: showVisualInsights ? this.handleClickImageTag : null })), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.contentText, (_c = {}, _c[components_MentionCard.textWithImage] = withImage, _c)) }, { children: [title && ((0,jsx_runtime.jsx)(H3/* default */.A, { children: (0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: isKeywordHighlightEnabled, className: classnames_default()(components_MentionCard.title), text: isTranslated ? translatedTitle : title }) })), parentText && ((0,jsx_runtime.jsx)("p", MentionCard_assign({ className: classnames_default()(components_MentionCard.parentText) }, { children: (0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: isKeywordHighlightEnabled, text: parentText }) }))), deletedFromSource ? ((0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: false, text: l('This mention was hidden or deleted from the source and is not available anymore'), className: classnames_default()(components_MentionCard.text) })) : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: isKeywordHighlightEnabled, text: isTranslated ? translatedText : text, className: classnames_default()(components_MentionCard.text) }), canTranslate && ((0,jsx_runtime.jsx)(TranslationButton/* default */.A, { isTranslated: isTranslated, isTranslationLoading: isTranslationLoading, translationError: translationError, onClick: onTranslate }))] }))] }))] })), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.counts) }, { children: [(0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.countGroup) }, { children: [duplicatesCount > 1 && ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "duplicate" }), tooltipText: sprintf(nl('Found %d duplicate', 'Found %d duplicates', duplicatesCount), duplicatesCount), count: duplicatesCount, onClick: this.handleShowDuplicates })), (0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "similar" }), tooltipText: sprintf(nl('Found %d similar mention', 'Found %d similar mentions', similarCount), similarCount), count: similarCount, onClick: this.handleShowSimilar }), discussionCommentsCount > 1 && ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "comment-multiple-outline" }), tooltipText: (0,jsx_runtime.jsxs)("span", { children: [l('Show the discussion'), (0,jsx_runtime.jsx)("br", {}), sprintf(nl('%d mention', '%d mentions', discussionCommentsCount), discussionCommentsCount)] }), count: discussionCommentsCount, onClick: this.handleShowDiscussion }))] })), engagement && ((0,jsx_runtime.jsx)(MentionEngagementCounts/* default */.A, { sourceName: source === null || source === void 0 ? void 0 : source.name, likes: engagement.likes, dislikes: engagement.dislikes, reposts: engagement.reposts, comments: engagement.comments, views: engagement.views, impressions: engagement.impressions, reach: engagement.reach, reactions: engagement.reactions, dateCollected: engagement.dateCollected, shares: engagement.shares, sourceFormat: sourceFormat })), potentialReach > 0 && !isYoutubeReviewAccount && ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "potential-reach" }), tooltipText: sprintf(l('%s potential reach'), numeral_default()(potentialReach).format()), count: potentialReach }))] })), assignee && ((0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.assignee) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "user", className: classnames_default()(components_MentionCard.assigneeIcon) }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Assigned to'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Popover/* default */.A, MentionCard_assign({ position: "bottom left", content: this.renderAssigneeEditor() }, { children: (0,jsx_runtime.jsx)("span", MentionCard_assign({ className: classnames_default()(components_MentionCard.assigneeName) }, { children: assignee.fullName })) }))] }))), note && (0,jsx_runtime.jsx)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.note) }, { children: note })), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.bottomBar) }, { children: [(0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.mentionControls) }, { children: [showFeedbackLoop && ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "systemTags", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard['mentionControls__feedback-loop']) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: FEEDBACK_LOOP_ICON_SIZE, type: "circle-edit-outline" }) })), onChange: this.handleChangeSmartFeature })), showTrends
                                            && trends
                                            && trends.map(function (trend) {
                                                if (!trend)
                                                    return null;
                                                return ((0,jsx_runtime.jsx)(other_MentionTrend_MentionTrend, { text: trend.name, trendId: trend.id, sentiment: trend.sentiment, onSendAnalyticalEvent: _this.props.onSendAnalyticalEvent, onClick: onTrendClick }, trend.id));
                                            }), showSystemTags && ((0,jsx_runtime.jsx)(Tag/* TagList */.LY, MentionCard_assign({ className: classnames_default()(components_MentionCard.systemTags) }, { children: systemTags.map(function (tag) { return ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "systemTags", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(mentions_MentionSystemTag_MentionSystemTag, { type: tag }), onChange: _this.handleChangeSmartFeature }, tag)); }) }))), showSubjects && subjects && ((0,jsx_runtime.jsx)(Tag/* TagList */.LY, MentionCard_assign({ className: classnames_default()(components_MentionCard.subjects) }, { children: subjects.map(function (tag) { return ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "subjects", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(mentions_MentionSubject_MentionSubject, { type: tag }), onChange: _this.handleChangeSmartFeature }, tag)); }) }))), showAspects && aspects && ((0,jsx_runtime.jsx)(Tag/* TagList */.LY, MentionCard_assign({ className: classnames_default()(components_MentionCard.aspects) }, { children: aspects.map(function (aspect) { return ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "aspects", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(mentions_MentionAspect_MentionAspect, { aspect: aspect.aspect, sentiment: aspect.sentiment }), onChange: _this.handleChangeSmartFeature }, "".concat(aspect.aspect, "_").concat(aspect.sentiment))); }) }))), (0,jsx_runtime.jsx)(MentionTagList_MentionTagList, { tagIds: tagIds, onChange: this.handleChangeTags }), (0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, { canChange: canManage, selected: sentiment, manual: sentiment === manualSentiment, className: classnames_default()(components_MentionCard.sentiment), onChange: this.handleSetSentiment })] })), (0,jsx_runtime.jsx)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.procession, (_d = {}, _d[components_MentionCard.processed] = processed, _d[components_MentionCard.disabled] = deleted, _d)) }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, MentionCard_assign({ basic: true, offset: [16], position: "top right", text: processed ? l('Mark as unprocessed') : l('Mark as processed') }, { children: (0,jsx_runtime.jsx)("div", MentionCard_assign({ role: "presentation", onClick: this.handleToggleProcessed }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check", size: 16, color: processed ? 'white' : 'gray', className: classnames_default()(components_MentionCard.processedIcon) }) })) })) }))] })), (collectionMethods || showSystemInfo) && ((0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.footer) }, { children: [collectionMethods && ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsxs)("b", { children: [nl('Collection method', 'Collection methods', collectionMethods.length), ":"] }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), collectionMethods.map(collectionMethodsFilterTranslations/* getCollectionMethodsFilterLabel */.z7).join(', ')] })), (0,jsx_runtime.jsxs)("div", MentionCard_assign({ className: classnames_default()(components_MentionCard.systemInfo) }, { children: [addedAt && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("b", { children: l('Saving date: ') }), (0,jsx_runtime.jsx)(WithUserTimeZone/* default */.A, { children: function (timeZone) {
                                                        return (0,timeUtils/* getTimeWithTimeZone */.vP)({
                                                            timeZone: timeZone,
                                                            dateTime: addedAt,
                                                            format: 'LLL',
                                                        });
                                                    } })] })), showSystemInfo && ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: isShowSystemInfo ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("b", { children: l('API:') }), " ", apiName, " / ", apiCode] }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("b", { children: l('Language:') }), " ", language] }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("b", { children: l('Origin:') }), " ", origin] })] })) : ((0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()(components_MentionCard.showMoreButton), iconType: "dots-horizontal", size: "medium", onClick: this.handleShowSystemInfo })) }))] }))] })))] })), (0,jsx_runtime.jsx)(NoteModal, { note: note, isOpen: this.state.editingNote, onSave: this.handleAddNote, onClose: this.handleCancelEditingNote })] })));
    };
    return MentionCard;
}(react.PureComponent));
/* harmony default export */ const FullMention_components_MentionCard = (MentionCard);

;// CONCATENATED MODULE: ./src/containers/mentions/FullMention/FullMention.tsx














var MentionCardContainer = function (_a) {
    var canManageMentions = _a.canManageMentions, mention = _a.mention, themeId = _a.themeId, userLanguage = _a.userLanguage, showSystemTags = _a.showSystemTags, isKeywordHighlightEnabled = _a.isKeywordHighlightEnabled, showMentionSystemInfo = _a.showMentionSystemInfo, showSubjects = _a.showSubjects, showAspects = _a.showAspects, showTrends = _a.showTrends, showFeedbackLoop = _a.showFeedbackLoop, showVisualInsights = _a.showVisualInsights, feedbackLoopSmartFeaturePermissions = _a.feedbackLoopSmartFeaturePermissions, isYoutubeReviewAccount = _a.isYoutubeReviewAccount, updateFilter = _a.updateFilter, starMentions = _a.starMentions, addNoteMentions = _a.addNoteMentions, markAsSpamMentions = _a.markAsSpamMentions, markAsHamMentions = _a.markAsHamMentions, markProcessedMentions = _a.markProcessedMentions, markUnprocessedMentions = _a.markUnprocessedMentions, unstarMentions = _a.unstarMentions, deleteMentions = _a.deleteMentions, restoreMentions = _a.restoreMentions, setTagsMentions = _a.setTagsMentions, assignMentions = _a.assignMentions, setSentimentMentions = _a.setSentimentMentions, filterSimilar = _a.filterSimilar, filterDuplicates = _a.filterDuplicates, filterDiscussion = _a.filterDiscussion, setFeedbackLoopMentions = _a.setFeedbackLoopMentions, sendAnalyticalEvent = _a.sendAnalyticalEvent, onClose = _a.onClose;
    var _b = (0,useMentionTranslation/* useMentionTranslation */.Z)({
        title: mention.title,
        text: mention.fullText || mention.text,
        mentionLanguage: mention.language,
        canBackendTranslate: mention.canTranslate,
        userLanguage: userLanguage,
        sendAnalyticalEvent: sendAnalyticalEvent,
    }), canTranslate = _b.canTranslate, isTranslated = _b.isTranslated, isTranslationLoading = _b.isTranslationLoading, translationError = _b.translationError, translation = _b.translation, handleTranslate = _b.translate;
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({
            eventType: 'Mention stream: mention opened',
            properties: { source: mention.source.name },
        });
    }, []);
    var handleStar = function (id) {
        starMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleMarkAsSpam = function (id) {
        markAsSpamMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleMarkProcessed = function (id) {
        markProcessedMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleAddNote = function (id, note) {
        addNoteMentions({ mentionIds: [id], note: note });
    };
    var handleMarkUnprocessed = function (id) {
        markUnprocessedMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleMarkAsHam = function (id) {
        markAsHamMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleUnstar = function (id) {
        unstarMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleChangeTags = function (id, tags) {
        setTagsMentions({ mentionIds: [id], themeId: themeId, tags: tags });
    };
    var handleChangeSmartFeature = function (id, smartFeatures) {
        setFeedbackLoopMentions({ mentionIds: [id], themeId: themeId, smartFeatures: smartFeatures });
    };
    var handleClickImageTag = function (_a) {
        var type = _a.type, value = _a.value;
        updateFilter({ name: type, value: [value] });
        sendAnalyticalEvent({
            eventType: 'Image tag: clicked',
            properties: { type: type, value: value },
        });
    };
    var handleDelete = function (id) {
        deleteMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleRestore = function (id) {
        restoreMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleSetSentiment = function (id, sentiment) {
        setSentimentMentions({ mentionIds: [id], themeId: themeId, sentiment: sentiment });
    };
    var handleAssign = function (id, _a) {
        var assigneeId = _a.assigneeId, message = _a.message;
        assignMentions({ mentionIds: [id], themeId: themeId, assigneeId: assigneeId, message: message });
    };
    var handleShowSimilar = function (similar) {
        filterSimilar({ similar: similar });
    };
    var handleShowDiscussion = function (id) {
        filterDiscussion({ id: id });
    };
    var handleShowDuplicates = function (duplicate) {
        filterDuplicates({ duplicate: duplicate });
    };
    var handleTrendClick = function (id) {
        updateFilter({ name: 'trend', value: [id] });
    };
    var handleOpenExternalLink = function () {
        sendAnalyticalEvent({
            eventType: 'Mention stream: external mention opened',
            properties: { source: mention.source.name },
        });
    };
    var feedbackLoopSmartFeatures = (0,smartFeaturesFeedbackLoop/* getMentionFeedbackLoopSmartFeatureValues */.jB)(mention, feedbackLoopSmartFeaturePermissions);
    var feedbackLoopViSmartFeatures = (0,smartFeaturesFeedbackLoop/* getMentionFeedbackLoopViSmartFeatureValues */.uq)(mention, feedbackLoopSmartFeaturePermissions);
    return ((0,jsx_runtime.jsx)(FullMention_components_MentionCard, { canManage: canManageMentions, isKeywordHighlightEnabled: isKeywordHighlightEnabled, isTranslated: isTranslated, isTranslationLoading: isTranslationLoading, translationError: translationError, canTranslate: canTranslate, id: mention.id, discussionId: mention.discussionId, title: mention.title, parentText: mention.parentText, text: mention.fullText || mention.text, translatedTitle: translation === null || translation === void 0 ? void 0 : translation.title, translatedText: translation === null || translation === void 0 ? void 0 : translation.text, textHash: mention.textHash, note: mention.note, className: mention.className, author: mention.author, assignee: mention.assignee, tagIds: mention.tagIds, deleting: mention.deleting, spam: mention.spam, deleted: mention.deleted, deletedFromSource: mention.deletedFromSource, imageUrl: mention.imageUrl, imageBrands: mention.imageBrands, imageObjects: mention.imageObjects, imageScenes: mention.imageScenes, imagePeople: mention.imagePeople, imageContentSensitivity: mention.imageContentSensitivity, imageColors: mention.imageColors, imageActivities: mention.imageActivities, imageType: mention.imageType, imageSubtype: mention.imageSubtype, ocrTexts: mention.ocrTexts, source: mention.source, url: mention.url, rating: mention.rating, publishedLocal: mention.publishedLocal, addedAt: mention.addedAt, apiCode: mention.apiCode, apiName: mention.apiName, channel: mention.channel, sentiment: mention.sentiment, manualSentiment: mention.manualSentiment, starred: mention.starred, processed: mention.processed, engagement: mention.engagement, potentialReach: mention.potentialReach, duplicatesCount: mention.duplicatesCount, discussionCommentsCount: mention.discussionCommentsCount, similarCount: mention.similarCount, systemTags: mention.systemTags, subjects: mention.subjects, aspects: mention.aspects, trends: mention.trends, selected: mention.selected, country: mention.country, region: mention.region, city: mention.city, language: mention.language, origin: mention.origin, integrations: mention.integrations, collectionMethods: mention.collectionMethod, themeId: themeId, isYoutubeReviewAccount: isYoutubeReviewAccount, showSystemTags: showSystemTags, showSubjects: showSubjects, showAspects: showAspects, showTrends: showTrends, showSystemInfo: showMentionSystemInfo, feedbackLoopSmartFeatures: feedbackLoopSmartFeatures, feedbackLoopViSmartFeatures: feedbackLoopViSmartFeatures, showFeedbackLoop: showFeedbackLoop, showVisualInsights: showVisualInsights, sourceFormat: mention.sourceFormat, onShowDuplicates: handleShowDuplicates, onShowSimilar: handleShowSimilar, onShowDiscussion: handleShowDiscussion, onTrendClick: handleTrendClick, onStar: handleStar, onMarkAsSpam: handleMarkAsSpam, onMarkAsHam: handleMarkAsHam, onMarkProcessed: handleMarkProcessed, onMarkUnprocessed: handleMarkUnprocessed, onUnstar: handleUnstar, onAssign: handleAssign, onDelete: handleDelete, onRestore: handleRestore, onSetSentiment: handleSetSentiment, onChangeTags: handleChangeTags, onChangeSmartFeature: handleChangeSmartFeature, onClickImageTag: handleClickImageTag, onAddNote: handleAddNote, onOpenExternalLink: handleOpenExternalLink, onTranslate: handleTranslate, onSendAnalyticalEvent: sendAnalyticalEvent, onClose: onClose }));
};
/* harmony default export */ const FullMention = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isKeywordHighlightEnabled: (0,currentUser_selectors/* isKeywordHighlightingEnabled */.vZ)(state),
    showMentionSystemInfo: (0,currentUser_selectors/* isSupportUser */.x3)(state),
    showSubjects: (0,themes_selectors/* canShowSubjects */.n7)(state),
    showAspects: (0,themes_selectors/* canShowAspects */.d2)(state),
    showTrends: (0,themes_selectors/* canAccessTrends */.lf)(state),
    showFeedbackLoop: (0,themes_selectors/* canUseFeedbackLoopFeature */.Dj)(state),
    showVisualInsights: (0,themes_selectors/* canUseImageRecognitionFeatures */.ZL)(state),
    feedbackLoopSmartFeaturePermissions: (0,mentionStream_selectors/* getFeedbackLoopSmartFeaturePermissions */.N)(state),
    userLanguage: (0,currentUser_selectors/* getUserLanguage */.mf)(state),
    // @ts-ignore
    canManageMentions: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageMentions'),
    isYoutubeReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state),
}); }, {
    starMentions: commands_model/* mentionStreamCommandsModel */.a.action.starMentions,
    addNoteMentions: commands_model/* mentionStreamCommandsModel */.a.action.addNoteMentions,
    markAsSpamMentions: commands_model/* mentionStreamCommandsModel */.a.action.markAsSpamMentions,
    markAsHamMentions: commands_model/* mentionStreamCommandsModel */.a.action.markAsHamMentions,
    markProcessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markProcessedMentions,
    markUnprocessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markUnprocessedMentions,
    unstarMentions: commands_model/* mentionStreamCommandsModel */.a.action.unstarMentions,
    deleteMentions: commands_model/* mentionStreamCommandsModel */.a.action.deleteMentions,
    restoreMentions: commands_model/* mentionStreamCommandsModel */.a.action.restoreMentions,
    setTagsMentions: commands_model/* mentionStreamCommandsModel */.a.action.setTagsMentions,
    assignMentions: commands_model/* mentionStreamCommandsModel */.a.action.assignMentions,
    setSentimentMentions: commands_model/* mentionStreamCommandsModel */.a.action.setSentimentMentions,
    setFeedbackLoopMentions: commands_model/* mentionStreamCommandsModel */.a.action.setFeedbackLoopMentions,
    filterSimilar: mentionStream_model/* mentionStreamModel */.K.action.filterSimilar,
    filterDuplicates: mentionStream_model/* mentionStreamModel */.K.action.filterDuplicates,
    filterDiscussion: mentionStream_model/* mentionStreamModel */.K.action.filterDiscussion,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(MentionCardContainer));

;// CONCATENATED MODULE: ./src/containers/mentions/FullMention/index.ts


// EXTERNAL MODULE: ./node_modules/react-intersection-observer/react-intersection-observer.m.js
var react_intersection_observer_m = __webpack_require__("PGlZ");
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionCard/components/NoteModal.js






function components_NoteModal_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, components_NoteModal_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function components_NoteModal_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (components_NoteModal_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var NoteModal_NoteModal = /*#__PURE__*/function (_PureComponent) {
  function NoteModal(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, NoteModal);
    _this = components_NoteModal_callSuper(this, NoteModal, [props]);
    (0,defineProperty/* default */.A)(_this, "handleSave", function () {
      _this.props.onSave(_this.state.text);
    });
    (0,defineProperty/* default */.A)(_this, "handleTextChange", function (text) {
      _this.setState({
        text: text
      });
    });
    _this.state = {
      text: _this.props.note
    };
    return _this;
  }
  (0,inherits/* default */.A)(NoteModal, _PureComponent);
  return (0,createClass/* default */.A)(NoteModal, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var note = this.props.note;
      if (prevProps.note !== this.props.note) {
        this.setState({
          text: note
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        isOpen = _this$props.isOpen,
        onClose = _this$props.onClose;
      var text = this.state.text;
      var MODAL_MAX_WIDTH = 300;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Modal/* default */.A, {
        isOpen: isOpen,
        title: l('Add note'),
        maxWidth: MODAL_MAX_WIDTH,
        onRequestClose: onClose,
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextArea/* default */.A, {
          autoFocus: true,
          fullWidth: true,
          value: text,
          rows: 5,
          placeholder: l('Enter your note'),
          onChange: this.handleTextChange
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            label: l('Cancel'),
            onClick: onClose
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: l('Save'),
            onClick: this.handleSave
          })]
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionCard/components/MentionCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionCard_components_MentionCard = ({"overlayedBlock":"BmoCEeMK8QmDiPNGK6Eb","flexCenter":"F_xXV3HwWE1Yg0jKnp8e","smartFeature":"NBt7nl1K0QCdlWVvuhjH","tag":"XrbFGg59nnDmDnYijA9t","visibleScrollBar":"ntwM4t3vtp99OxoffJhO","hiddenScrollBar":"IclMad9Fwv6JNcOjbiM7","focusArea":"OdkvRbkbY9zdEDkLkn1h","commandError":"qFe81XtAk7KJq7kXxUho","commandIcon":"d5PknqlDJTT6gPaVuAAo","procession":"VoiPmad1FH7NV8FwMP39","exampleModeFeedbackButtons":"C_X8rnWlzULovHhrbMU_","feedbackButton":"U70oW5Ok3uQrWqovfc85","selectedFeedback":"MF_ywH_Atr3kOWfAzEP2","processed":"KawIMSbn_VBET8EXr1FH","disabled":"F6ZXB_rVnZtGg4FfnZAt","base":"YAcPVMm03fJKCNCMMoHQ","focused":"DyeH0x5e36gffrUWbrXs","warning":"EnWHcfQLC_3BA3GXCRuS","stacked":"uBu_Fx6IZ5QziVjnEehd","fade":"pljT6iradaHP4fWFsVS3","deletedFromSource":"iw5xSpnVKCq4oTyrexpj","text":"WttCNSYNHZJoGwQggF8C","authorLine":"e99EkRyEQ2YU1HjaKz7j","title":"HHBDDz0xOjD7SkPgkUVe","parentText":"VqFKkdgOknQMdibReX6Y","avatarContainer":"Wmjnv99DhpeocNpL5xYU","avatar":"kSzCRf7jTj0iUWfKCctc","checkboxContainer":"DHBZ2rPwQ9CDqc2FAQ8A","displayed":"WyrjNxMqXZOOZfhrWRWg","author":"NR97fosTp2Dtw_WKVPAN","channel":"j1WH8ZCrJqfZ466IOh6K","header":"dIYTiomglHNC7ypWr7Pw","info":"gMpdYhygtXFEDRofcPhO","details":"MmkZHglD0jEjP6lIa4Ks","assignee":"_6mUTVnNQiw4IHfD4ocs","assigneeIcon":"TTnB1f26q0i9Lf2NY1Qd","assigneeName":"PEzJoSAtXqw_ZIQd69sH","sourceName":"FnMtmUa9bs__3sxIz_4N","toolbar":"IEts4IGj38WPgGpMESPZ","toolbarLeft":"CGIn8Y12pTe1isusbf7A","content":"yOPHd5XCBg3vO0C9GJNN","contentImage":"SLWHj0Fb5jZclUaCQOJg","contentText":"GcnHzy56qFW5AbYII5ig","textWithImage":"NEi4kJdVf30bMhdmJadQ","withCounts":"fjCqc56mO3MVRfncZXpe","duplicates":"lFUFUZ6yk2MLUTvQuIjn","similars":"xWzAdy_gavymx1JV_Ovy","duplicatesIcon":"mjA4JEsZlD_4eFPAMjjC","sentiment":"t65f4R1vSIrKuZI0ahAQ","timePublished":"j0EW2HMfFh3MvBbwygOB","counts":"EFxyPvdlwqkc_vfkegzV","countGroup":"NBQsrQrwMPB8iYNX6WuA","note":"ucj79EXPFQyxPb4GsIrS","withImage":"izj773vLNpCIfNBWnzoQ","systemTags":"oOIJaQ8Hp6ZZ3RvRXHn5","subjects":"XT9rX7ZwgU4swnCYa1hO","aspects":"YUfSJu6rzPEX5WTJfFMB","rating":"yHmfG8HL5JTsNPr9kD9I","ratingNumber":"lzVnqySCp14kH8HPL0P9","mentionControls":"f3OwaYxvjuOmbq8aoykT","mentionControls__feedback-loop":"AT2GlO9O4J75MWYEEfFZ","translationButton":"j4bG1OcD2KHi4Y3lyKgM"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionCard/components/MentionCard.tsx
var components_MentionCard_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var components_MentionCard_assign = (undefined && undefined.__assign) || function () {
    components_MentionCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return components_MentionCard_assign.apply(this, arguments);
};

/* eslint-disable react/sort-comp */
// @ts-nocheck











































var MentionCard_FEEDBACK_LOOP_ICON_SIZE = 12;
var MentionCard_MentionCard = /** @class */ (function (_super) {
    components_MentionCard_extends(MentionCard, _super);
    function MentionCard(props) {
        var _this = _super.call(this, props) || this;
        _this.state = {
            editingNote: false,
            selectedExampleFeedback: null,
        };
        _this.handleClickExampleModeFeedbackButton = function (isCorrect) {
            var _a = _this.props, id = _a.id, themeId = _a.themeId;
            _this.props.onSendRequestedMentionFeedback({ mentionId: id, topicId: themeId, isCorrect: isCorrect });
            _this.setState({ selectedExampleFeedback: isCorrect });
            if (!_this.props.processed) {
                _this.props.onMarkProcessed(_this.props.id);
            }
        };
        _this.handleOpen = function () {
            window.open(_this.props.url, '_blank');
            _this.props.onSendAnalyticalEvent({
                eventType: 'post: open',
                properties: {
                    themeId: _this.props.themeId,
                },
            });
        };
        _this.handleOpenMention = function () {
            _this.props.onOpen(_this.props.id);
        };
        _this.handleToggleStarred = function () {
            if (_this.props.starred) {
                _this.props.onUnstar(_this.props.id);
            }
            else {
                _this.props.onStar(_this.props.id);
            }
        };
        _this.handleDelete = function () {
            _this.handleFocus();
            if (_this.props.onDelete) {
                _this.props.onDelete(_this.props.id);
                _this.focusNext();
            }
        };
        _this.handleRestore = function () {
            if (_this.props.onRestore) {
                _this.props.onRestore(_this.props.id);
            }
        };
        _this.handleToggleSpam = function () {
            if (_this.props.spam) {
                _this.props.onMarkAsHam(_this.props.id);
            }
            else {
                _this.props.onMarkAsSpam(_this.props.id);
            }
        };
        _this.handleToggleProcessed = function () {
            if (_this.props.processed) {
                _this.props.onMarkUnprocessed(_this.props.id);
            }
            else {
                _this.props.onMarkProcessed(_this.props.id);
                _this.focusNext();
            }
        };
        _this.handleSetSentiment = function (sentiment) {
            if (_this.props.onSetSentiment) {
                _this.props.onSetSentiment(_this.props.id, sentiment);
            }
        };
        _this.handleAssign = function (assignee) {
            if (_this.props.onAssign) {
                _this.props.onAssign(_this.props.id, assignee);
            }
        };
        _this.handleChangeTags = function (tags) {
            if (_this.props.onChangeTags) {
                _this.props.onChangeTags(_this.props.id, tags);
            }
        };
        _this.handleChangeSmartFeature = function (smartFeatures) {
            if (_this.props.onChangeSmartFeature) {
                _this.props.onChangeSmartFeature(_this.props.id, smartFeatures);
            }
        };
        _this.handleClickImageTag = function (_a) {
            var type = _a.type, value = _a.value;
            if (_this.props.onClickImageTag) {
                _this.props.onClickImageTag({ type: type, value: value });
            }
        };
        _this.handleShowDuplicates = function () {
            if (_this.props.onShowDuplicates) {
                _this.props.onShowDuplicates(_this.props.textHash);
            }
        };
        _this.handleShowSimilar = function () {
            if (_this.props.onShowSimilar) {
                _this.props.onShowSimilar(_this.props.id);
            }
        };
        _this.handleShowDiscussion = function () {
            if (_this.props.onShowDiscussion) {
                _this.props.onShowDiscussion(_this.props.discussionId);
            }
        };
        _this.handleToggleSelected = function () {
            if (_this.props.selected) {
                _this.props.onDeselect(_this.props.id);
            }
            else {
                _this.props.onSelect(_this.props.id);
            }
        };
        _this.handleOpenTags = function () {
            _this.tagsEditor.current.show();
        };
        _this.handleOpenFeedbackLoop = function () {
            _this.feedbackLoopEditor.current.openEditor();
        };
        _this.handleFocus = function () {
            if (_this.props.onFocus) {
                _this.props.onFocus(_this.props.id);
            }
        };
        _this.handleRequestEditNote = function () {
            _this.setState({
                editingNote: true,
            });
        };
        _this.handleCancelEditingNote = function () {
            _this.setState({
                editingNote: false,
            });
        };
        _this.handleAddNote = function (note) {
            _this.setState({
                editingNote: false,
            });
            if (_this.props.onAddNote) {
                _this.props.onAddNote(_this.props.id, note);
            }
        };
        _this.handleEditTrend = function (trend) { return function () {
            _this.props.showModal('editTrend', {
                topicId: _this.props.themeId,
                trendId: trend.id,
                name: trend.name,
                sentiment: trend.sentiment,
                showFrom: 'mentionStream',
            });
        }; };
        /**
         * React-hotkeys has such issue unresolved (greena13/react-hotkeys#118)
         * If the action handler ends with focusing the next element the action is applied for it also.
         * Like: remove -> remove active -> focus on next one -> next one is active now -> remove active etc.
         * Author of the lib suggests to focus with delay or leave just one HotKeys component on parent level
         */
        _this.focusNext = function () {
            var onFocusNext = _this.props.onFocusNext;
            if (onFocusNext) {
                clearTimeout(_this.focusTimeoutId);
                _this.focusTimeoutId = setTimeout(onFocusNext, 0);
            }
        };
        _this.isMentionWithCounts = function () {
            var _a = _this.props, similarCount = _a.similarCount, duplicatesCount = _a.duplicatesCount, discussionCommentsCount = _a.discussionCommentsCount, engagement = _a.engagement;
            var withEngagement = engagement.length;
            if (withEngagement) {
                return engagement.likes
                    || engagement.dislikes
                    || engagement.engagement
                    || engagement.engagementRate
                    || duplicatesCount > 1
                    || discussionCommentsCount > 1
                    || similarCount;
            }
            return duplicatesCount > 1 || discussionCommentsCount > 1 || similarCount;
        };
        _this.renderToolbar = function () {
            var _a = _this.props, spam = _a.spam, deleted = _a.deleted, starred = _a.starred, canManage = _a.canManage, note = _a.note, inView = _a.inView, deletedFromSource = _a.deletedFromSource, topicTaskStarted = _a.topicTaskStarted;
            if (!canManage && deletedFromSource)
                return null;
            if (!canManage) {
                return ((0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.toolbar) }, { children: (0,jsx_runtime.jsx)(DropDownMenu/* default */.A, components_MentionCard_assign({ component: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "dots" }), position: "bottom right" }, { children: (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('Open mention'), onSelect: _this.handleOpenMention }) })) })));
            }
            return ((0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.toolbar) }, { children: inView && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.toolbarLeft) }, { children: _this.renderCheckbox() })), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Popover/* default */.A, components_MentionCard_assign({ flexibleHeight: true, position: "bottom right", content: _this.renderShareDialog() }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "share", tooltip: l('Share') }) })), (0,jsx_runtime.jsx)(Popover/* default */.A, components_MentionCard_assign({ position: "bottom right", content: _this.renderAssigneeEditor() }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "assign", tooltip: l('Assign') }) })), starred ? ((0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "star-full", tooltip: l('Remove from favorites'), color: "amber", onClick: _this.handleToggleStarred })) : ((0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: deleted, iconType: "star", tooltip: l('Add to favorites'), onClick: _this.handleToggleStarred })), deleted ? ((0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "restore", tooltip: l('Restore'), onClick: _this.handleRestore })) : ((0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "trash", tooltip: l('Move to bin'), onClick: _this.handleDelete })), (0,jsx_runtime.jsxs)(DropDownMenu/* default */.A, components_MentionCard_assign({ component: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "dots" }), position: "bottom right" }, { children: [!deletedFromSource && (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('Open mention'), onSelect: _this.handleOpenMention }), (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: note ? l('Change note') : l('Add note'), onSelect: _this.handleRequestEditNote }), spam ? ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { disabled: deleted, label: l('Not spam'), onSelect: _this.handleToggleSpam })) : ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { disabled: deleted, label: l('Mark as spam'), onSelect: _this.handleToggleSpam }))] }))] })] })) })));
        };
        _this.renderMentionControls = function () {
            var _a;
            var _b = _this.props, inView = _b.inView, tagIds = _b.tagIds, sentiment = _b.sentiment, manualSentiment = _b.manualSentiment, systemTags = _b.systemTags, subjects = _b.subjects, aspects = _b.aspects, trends = _b.trends, canManage = _b.canManage, feedbackLoopSmartFeatures = _b.feedbackLoopSmartFeatures, showFeedbackLoop = _b.showFeedbackLoop, showSystemTags = _b.showSystemTags, showSubjects = _b.showSubjects, showAspects = _b.showAspects, showTrends = _b.showTrends, onTrendClick = _b.onTrendClick;
            return ((0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.mentionControls, (_a = {}, _a[MentionCard_components_MentionCard.withImage] = _this.isWithImage, _a)) }, { children: inView && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [showFeedbackLoop && ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { ref: _this.feedbackLoopEditor, position: "bottom left", activeFeatureName: "systemTags", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(Tooltip/* default */.A, components_MentionCard_assign({ text: l('Edit labels'), position: "top center" }, { children: (0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard['mentionControls__feedback-loop']) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: MentionCard_FEEDBACK_LOOP_ICON_SIZE, type: "circle-edit-outline" }) })) })), onChange: _this.handleChangeSmartFeature })), showTrends
                            && (trends === null || trends === void 0 ? void 0 : trends.map(function (trend) {
                                if (!trend)
                                    return null;
                                return ((0,jsx_runtime.jsx)(other_MentionTrend_MentionTrend, { text: trend.name, trendId: trend.id, sentiment: trend.sentiment, onSendAnalyticalEvent: _this.props.onSendAnalyticalEvent, onClick: onTrendClick, onEditTrend: _this.handleEditTrend(trend) }, trend.id));
                            })), showSystemTags && ((0,jsx_runtime.jsx)(Tag/* TagList */.LY, components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.systemTags) }, { children: systemTags.map(function (tag) { return ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "systemTags", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(mentions_MentionSystemTag_MentionSystemTag, { type: tag }), onChange: _this.handleChangeSmartFeature }, tag)); }) }))), showSubjects && subjects && ((0,jsx_runtime.jsx)(Tag/* TagList */.LY, components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.subjects) }, { children: subjects.map(function (tag) { return ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "subjects", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(mentions_MentionSubject_MentionSubject, { type: tag }), onChange: _this.handleChangeSmartFeature }, tag)); }) }))), showAspects && aspects && ((0,jsx_runtime.jsx)(Tag/* TagList */.LY, components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.aspects) }, { children: aspects.map(function (aspect) { return ((0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, { position: "bottom left", activeFeatureName: "aspects", selected: feedbackLoopSmartFeatures, trigger: (0,jsx_runtime.jsx)(mentions_MentionAspect_MentionAspect, { aspect: aspect.aspect, sentiment: aspect.sentiment }), onChange: _this.handleChangeSmartFeature }, "".concat(aspect.aspect, "_").concat(aspect.sentiment))); }) }))), (0,jsx_runtime.jsx)(MentionTagList_MentionTagList, { tagIds: tagIds, tagsEditorRef: _this.tagsEditor, onChange: _this.handleChangeTags }), (0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, { selected: sentiment, manual: sentiment === manualSentiment, className: classnames_default()(MentionCard_components_MentionCard.sentiment), canChange: canManage, onChange: _this.handleSetSentiment })] })) })));
        };
        _this.renderCounts = function () {
            var _a = _this.props, source = _a.source, engagement = _a.engagement, duplicatesCount = _a.duplicatesCount, similarCount = _a.similarCount, potentialReach = _a.potentialReach, isYoutubeReviewAccount = _a.isYoutubeReviewAccount, discussionCommentsCount = _a.discussionCommentsCount, sourceFormat = _a.sourceFormat;
            return ((0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.counts) }, { children: (0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.countGroup) }, { children: [engagement && ((0,jsx_runtime.jsx)(MentionEngagementCounts/* default */.A, { sourceName: source === null || source === void 0 ? void 0 : source.name, likes: engagement.likes, dislikes: engagement.dislikes, reposts: engagement.reposts, comments: engagement.comments, views: engagement.views, impressions: engagement.impressions, reach: engagement.reach, reactions: engagement.reactions, dateCollected: engagement.dateCollected, shares: engagement.shares, sourceFormat: sourceFormat })), potentialReach > 0 && !isYoutubeReviewAccount && ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "potential-reach" }), tooltipText: sprintf(l('%s potential reach'), numeral_default()(potentialReach).format()), count: potentialReach })), duplicatesCount > 1 && ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "duplicate" }), tooltipText: sprintf(nl('Found %d duplicate', 'Found %d duplicates', duplicatesCount), duplicatesCount), count: duplicatesCount, onClick: _this.handleShowDuplicates })), (0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "similar" }), tooltipText: sprintf(nl('Found %d similar mention', 'Found %d similar mentions', similarCount), similarCount), count: similarCount, onClick: _this.handleShowSimilar }), discussionCommentsCount > 1 && ((0,jsx_runtime.jsx)(MentionParamsCounter/* default */.A, { icon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "comment-multiple-outline" }), tooltipText: (0,jsx_runtime.jsxs)("span", { children: [l('Show the discussion'), (0,jsx_runtime.jsx)("br", {}), sprintf(nl('%d mention', '%d mentions', discussionCommentsCount), discussionCommentsCount)] }), count: discussionCommentsCount, onClick: _this.handleShowDiscussion }))] })) })));
        };
        var addAnalyticalEvent = function (eventType, properties, callbackFunction) {
            return (0,analytics/* addEvent */.W2)(props.onSendAnalyticalEvent, { eventType: eventType, properties: properties })(callbackFunction);
        };
        _this.tagsEditor = (0,react.createRef)();
        _this.feedbackLoopEditor = (0,react.createRef)();
        _this.hotkeyHandlers = [
            {
                hotkey: 'd',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'deleteMention' }, _this.handleDelete),
            },
            {
                hotkey: 's',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'starMention' }, _this.handleToggleStarred),
            },
            {
                hotkey: '1',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'setPositiveSentiment' }, function () { return _this.handleSetSentiment('positive'); }),
            },
            {
                hotkey: '2',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'setNeutralSentiment' }, function () { return _this.handleSetSentiment('neutral'); }),
            },
            {
                hotkey: '3',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'setNegativeSentiment' }, function () { return _this.handleSetSentiment('negative'); }),
            },
            {
                hotkey: 'w',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'setProcessed' }, _this.handleToggleProcessed),
            },
            {
                hotkey: 'shift+1',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'sendToSpam' }, _this.handleToggleSpam),
            },
            {
                hotkey: 'o',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'openOriginalMention' }, _this.handleOpen),
            },
            {
                hotkey: 'enter',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'openMention' }, _this.handleOpenMention),
            },
            {
                hotkey: 'x',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'selectMention' }, _this.handleToggleSelected),
            },
            {
                hotkey: 't',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'openTagsEditor' }, _this.handleOpenTags),
            },
            {
                hotkey: 'f',
                handler: addAnalyticalEvent('Hotkey: used', { type: 'openCorrectionsEditor' }, _this.handleOpenFeedbackLoop),
            }
        ];
        _this.focusTimeoutId = null;
        return _this;
    }
    MentionCard.prototype.componentWillUnmount = function () {
        clearTimeout(this.focusTimeoutId);
    };
    Object.defineProperty(MentionCard.prototype, "isWithImage", {
        get: function () {
            var imageUrl = this.props.imageUrl;
            return !!imageUrl;
        },
        enumerable: false,
        configurable: true
    });
    MentionCard.prototype.isFade = function () {
        var _a = this.props, deleting = _a.deleting, deleted = _a.deleted, author = _a.author, channel = _a.channel, source = _a.source, restored = _a.restored;
        return ((restored || deleting || (author === null || author === void 0 ? void 0 : author.excluding) || (channel === null || channel === void 0 ? void 0 : channel.excluding) || (source === null || source === void 0 ? void 0 : source.excluding))
            && !deleted);
    };
    MentionCard.prototype.renderGeo = function () {
        var _a = this.props, country = _a.country, city = _a.city, region = _a.region;
        if (!country && !city && !region) {
            return null;
        }
        return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "geo" }), country && (0,jsx_runtime.jsx)(CountryName_CountryName, { code: country }), region && !city ? ((0,jsx_runtime.jsxs)("span", { children: [",", (0,jsx_runtime.jsx)(Space/* default */.A, {}), region] })) : null, city && ((0,jsx_runtime.jsxs)("span", { children: [",", (0,jsx_runtime.jsx)(Space/* default */.A, {}), region] }))] }));
    };
    MentionCard.prototype.renderAuthor = function () {
        var _a = this.props, themeId = _a.themeId, author = _a.author, source = _a.source, channel = _a.channel, channelRating = _a.channelRating, postType = _a.postType, resourceType = _a.resourceType, authorGenderFilter = _a.authorGenderFilter, deletedFromSource = _a.deletedFromSource;
        var labelsByGender = {
            review: {
                male: l('posted a review', 'gender: male'),
                female: l('posted a review', 'gender: female'),
                community: l('posted a review', 'gender: community'),
                notDefined: l('posted a review', 'gender: notDefined'),
            },
            comment: {
                male: l('commented', 'gender: male'),
                female: l('commented', 'gender: female'),
                community: l('commented', 'gender: community'),
                notDefined: l('commented', 'gender: notDefined'),
            },
            replyComment: {
                male: l('replied', 'gender: male'),
                female: l('replied', 'gender: female'),
                community: l('replied', 'gender: community'),
                notDefined: l('replied', 'gender: notDefined'),
            },
            repost: {
                male: l('shared a post', 'gender: male'),
                female: l('shared a post', 'gender: female'),
                community: l('shared a post', 'gender: community'),
                notDefined: l('shared a post', 'gender: notDefined'),
            },
            post: {
                male: l('posted', 'gender: male'),
                female: l('posted', 'gender: female'),
                community: l('posted', 'gender: community'),
                notDefined: l('posted', 'gender: notDefined'),
            },
        };
        var showChannel = (channel === null || channel === void 0 ? void 0 : channel.name) && (author === null || author === void 0 ? void 0 : author.uid) !== channel.uid;
        var gender = (!deletedFromSource && authorGenderFilter) || 'notDefined';
        return ((0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.authorLine) }, { children: [author ? ((0,jsx_runtime.jsx)(MentionAuthor, { className: classnames_default()(MentionCard_components_MentionCard.author), themeId: themeId, id: author.uid, name: author.name, nickname: author.nickname, type: author.type, sourceName: source.name, sourceIconUrl: source.iconUrl, description: author.description, subscribers: author.subscribers, avatarUrl: author.avatarUrl, url: author.url })) : (l('Unknown user')), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (postType === 'repost' || postType === 'extendedRepost') && labelsByGender.repost[gender], postType === 'comment' && labelsByGender.comment[gender], postType === 'replyComment' && labelsByGender.replyComment[gender], showChannel && postType === 'post' && resourceType !== 'reviews' && labelsByGender.post[gender], resourceType === 'reviews' && postType === 'post' && labelsByGender.review[gender], (0,jsx_runtime.jsx)(Space/* default */.A, {}), showChannel && ((0,jsx_runtime.jsxs)("span", { children: [l('in', 'channel'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(MentionChannel, { className: classnames_default()(MentionCard_components_MentionCard.channel), themeId: themeId, id: channel.uid, name: channel.name, type: channel.type, sourceIconUrl: source.iconUrl, description: channel.description, subscribers: channel.subscribers, rating: channelRating, avatarUrl: channel.avatarUrl, url: channel.url })] }))] })));
    };
    MentionCard.prototype.renderCheckbox = function () {
        var _a = this.props, selected = _a.selected, topicTaskStarted = _a.topicTaskStarted;
        if (topicTaskStarted) {
            return (0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: true, tooltip: l('Group actions are disabled while topic task is running'), tooltipPosition: (0,mobile/* isSimplifiedView */.O7)() ? 'top right' : 'top center', iconType: "checkbox-empty" });
        }
        return selected ? ((0,jsx_runtime.jsx)(IconButton/* default */.A, { color: "primary", iconType: "checkbox-checked", onClick: this.handleToggleSelected })) : ((0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "checkbox-empty", onClick: this.handleToggleSelected }));
    };
    MentionCard.prototype.renderAssigneeEditor = function () {
        var _a = this.props, themeId = _a.themeId, assignee = _a.assignee;
        return ((0,jsx_runtime.jsx)(containers_AssignUserEditor_AssignUserEditor
        // @ts-ignore
        , { 
            // @ts-ignore
            themeId: themeId, selected: assignee === null || assignee === void 0 ? void 0 : assignee.id, onChange: this.handleAssign }));
    };
    MentionCard.prototype.renderShareDialog = function () {
        var _a = this.props, id = _a.id, url = _a.url, integrations = _a.integrations, source = _a.source;
        return (0,jsx_runtime.jsx)(ShareMentionDialog_ShareMentionDialog, { id: id, mentionUrl: url, mentionIntegrations: integrations, source: source });
    };
    MentionCard.prototype.render = function () {
        var _a, _b, _c, _d, _e, _f, _g, _h;
        var _this = this;
        var _j = this.props, showExampleModeFeedbackLoop = _j.showExampleModeFeedbackLoop, isRequested = _j.isRequested, id = _j.id, isKeywordHighlightEnabled = _j.isKeywordHighlightEnabled, isTranslated = _j.isTranslated, isTranslationLoading = _j.isTranslationLoading, translationError = _j.translationError, canTranslate = _j.canTranslate, inView = _j.inView, url = _j.url, focused = _j.focused, deleted = _j.deleted, processed = _j.processed, canManage = _j.canManage, shortcutsEnabled = _j.shortcutsEnabled, themeId = _j.themeId, title = _j.title, note = _j.note, parentText = _j.parentText, text = _j.text, translatedText = _j.translatedText, translatedTitle = _j.translatedTitle, assignee = _j.assignee, className = _j.className, author = _j.author, rating = _j.rating, imageUrl = _j.imageUrl, imageBrands = _j.imageBrands, imageObjects = _j.imageObjects, imageScenes = _j.imageScenes, imagePeople = _j.imagePeople, imageContentSensitivity = _j.imageContentSensitivity, imageColors = _j.imageColors, imageActivities = _j.imageActivities, imageType = _j.imageType, imageSubtype = _j.imageSubtype, ocrTexts = _j.ocrTexts, source = _j.source, publishedAt = _j.publishedAt, selected = _j.selected, showCheckbox = _j.showCheckbox, duplicatesCount = _j.duplicatesCount, discussionCommentsCount = _j.discussionCommentsCount, dedup = _j.dedup, systemTags = _j.systemTags, commandError = _j.commandError, showVisualInsights = _j.showVisualInsights, showFeedbackLoop = _j.showFeedbackLoop, feedbackLoopViSmartFeatures = _j.feedbackLoopViSmartFeatures, onOpenExternalLink = _j.onOpenExternalLink, deletedFromSource = _j.deletedFromSource, onTranslate = _j.onTranslate, topicTaskStarted = _j.topicTaskStarted;
        var fade = this.isFade();
        var stacked = dedup && duplicatesCount > 1;
        var allowToSelectAuthor = canManage && !topicTaskStarted;
        return ((0,jsx_runtime.jsx)(Hotkeys/* default */.A, components_MentionCard_assign({ id: id, enabled: shortcutsEnabled, hotkeyHandlers: this.hotkeyHandlers, focused: canManage && focused, onFocus: this.handleFocus }, { children: (0,jsx_runtime.jsxs)(Card/* default */.A, components_MentionCard_assign({ fullWidth: true, stacked: stacked, className: classnames_default()(MentionCard_components_MentionCard.base, className, (_a = {},
                    _a[MentionCard_components_MentionCard.stacked] = stacked,
                    _a[MentionCard_components_MentionCard.focused] = focused,
                    _a[MentionCard_components_MentionCard.warning] = commandError,
                    _a[MentionCard_components_MentionCard.deletedFromSource] = deletedFromSource,
                    _a)) }, { children: [fade && (0,jsx_runtime.jsx)("div", { className: classnames_default()(MentionCard_components_MentionCard.fade) }), commandError && ((0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.commandError) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "attention", color: "white", size: 11, className: classnames_default()(MentionCard_components_MentionCard.commandIcon) }), l('last action with this mention failed')] }))), (0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.header) }, { children: [(0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.avatarContainer) }, { children: [(0,jsx_runtime.jsx)(Avatar/* default */.A, { rounded: true, size: "100%", imageUrl: author && author.avatarUrl }), allowToSelectAuthor ? ((0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.checkboxContainer, (_b = {}, _b[MentionCard_components_MentionCard.displayed] = selected || showCheckbox, _b)) }, { children: this.renderCheckbox() }))) : null] })), (0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.info) }, { children: [this.renderAuthor(), (0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.details) }, { children: [(0,jsx_runtime.jsx)(MentionSource_MentionSource, { themeId: themeId, className: classnames_default()(MentionCard_components_MentionCard.sourceName), id: source.id, iconUrl: source.iconUrl, name: source.name }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", components_MentionCard_assign({ href: url, className: classnames_default()(MentionCard_components_MentionCard.timePublished), target: "_blank", rel: "noopener noreferrer", onClick: onOpenExternalLink }, { children: (0,jsx_runtime.jsx)(WithUserTimeZone/* default */.A, { children: function (timeZone) {
                                                        return (0,timeUtils/* getTimeWithTimeZone */.vP)({
                                                            timeZone: timeZone,
                                                            dateTime: publishedAt,
                                                            format: 'LLL',
                                                        });
                                                    } }) })), this.renderGeo()] }))] }))] })), this.renderToolbar(), (0,jsx_runtime.jsx)(helpers_DevInfo_DevInfo, { data: { mention: this.props } }), (0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.content) }, { children: [(0,lodash.isNumber)(rating) && ((0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.rating) }, { children: [(0,jsx_runtime.jsx)(react_rating_esm/* default */.A, { readonly: true, fractions: 2, initialRating: rating, emptySymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "lightgray", size: 24 }), fullSymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "amber", size: 24 }) }), (0,jsx_runtime.jsx)("span", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.ratingNumber) }, { children: numeral_default()(rating).format('0.0') }))] }))), imageUrl && ((0,jsx_runtime.jsx)(ImagePreview/* default */.A, { isSquareImage: true, isSuspiciousContent: (0,isMentionWithSuspiciousContent/* default */.A)(systemTags), className: classnames_default()(MentionCard_components_MentionCard.contentImage), inView: inView, src: imageUrl, imageBrands: imageBrands, imageObjects: imageObjects, imageScenes: imageScenes, imagePeople: imagePeople, imageContentSensitivity: imageContentSensitivity, imageColors: imageColors, imageActivities: imageActivities, imageType: imageType, imageSubtype: imageSubtype, ocrTexts: ocrTexts, showVisualInsights: showVisualInsights, feedbackLoopViSmartFeatures: feedbackLoopViSmartFeatures, showFeedbackLoop: showFeedbackLoop, onChangeSmartFeature: this.handleChangeSmartFeature, onClickImageTag: showVisualInsights ? this.handleClickImageTag : null })), (0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.contentText, (_c = {}, _c[MentionCard_components_MentionCard.textWithImage] = this.isWithImage, _c[MentionCard_components_MentionCard.withCounts] = this.isMentionWithCounts(), _c)) }, { children: [title && ((0,jsx_runtime.jsx)(H3/* default */.A, { children: (0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: isKeywordHighlightEnabled, className: classnames_default()(MentionCard_components_MentionCard.title), text: isTranslated ? translatedTitle : title }) })), parentText && ((0,jsx_runtime.jsx)("p", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.parentText) }, { children: (0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: isKeywordHighlightEnabled, text: parentText }) }))), deletedFromSource ? ((0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: false, text: l('This mention was hidden or deleted from the source and is not available anymore'), className: classnames_default()(MentionCard_components_MentionCard.text) })) : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(MentionText/* default */.A, { isKeywordHighlightEnabled: isKeywordHighlightEnabled, text: isTranslated ? translatedText : text, className: classnames_default()(MentionCard_components_MentionCard.text) }), canTranslate && ((0,jsx_runtime.jsx)(TranslationButton/* default */.A, { className: MentionCard_components_MentionCard.translationButton, isTranslated: isTranslated, isTranslationLoading: isTranslationLoading, translationError: translationError, onClick: onTranslate }))] }))] }))] })), this.renderCounts(), canManage && assignee && ((0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.assignee) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "user", className: classnames_default()(MentionCard_components_MentionCard.assigneeIcon) }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Assigned to'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Popover/* default */.A, components_MentionCard_assign({ position: "bottom left", content: this.renderAssigneeEditor() }, { children: (0,jsx_runtime.jsx)("span", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.assigneeName) }, { children: assignee.fullName })) }))] }))), note && (0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.note, (_d = {}, _d[MentionCard_components_MentionCard.withImage] = this.isWithImage, _d)) }, { children: note })), this.renderMentionControls(), isRequested && showExampleModeFeedbackLoop && ((0,jsx_runtime.jsxs)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.exampleModeFeedbackButtons, (_e = {}, _e[MentionCard_components_MentionCard.disabled] = deleted, _e)) }, { children: [(0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.feedbackButton, (_f = {}, _f[MentionCard_components_MentionCard.selectedFeedback] = this.state.selectedExampleFeedback === true, _f)) }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, components_MentionCard_assign({ basic: true, offset: [16], position: "top right", text: l('Good example') }, { children: (0,jsx_runtime.jsx)("div", components_MentionCard_assign({ role: "presentation", onClick: function () { return _this.handleClickExampleModeFeedbackButton(true); } }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "like", size: 16, color: "white" }) })) })) })), (0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.feedbackButton, (_g = {}, _g[MentionCard_components_MentionCard.selectedFeedback] = this.state.selectedExampleFeedback === false, _g)) }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, components_MentionCard_assign({ basic: true, offset: [16], position: "top right", text: l('Wrong example') }, { children: (0,jsx_runtime.jsx)("div", components_MentionCard_assign({ role: "presentation", onClick: function () { return _this.handleClickExampleModeFeedbackButton(false); } }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "dislike", size: 16, color: "white" }) })) })) }))] }))), canManage && ((0,jsx_runtime.jsx)("div", components_MentionCard_assign({ className: classnames_default()(MentionCard_components_MentionCard.procession, (_h = {}, _h[MentionCard_components_MentionCard.processed] = processed, _h[MentionCard_components_MentionCard.disabled] = deleted, _h)), onClick: this.handleToggleProcessed }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, components_MentionCard_assign({ basic: true, offset: [16], position: "top right", text: processed ? l('Mark as unprocessed') : l('Mark as processed') }, { children: (0,jsx_runtime.jsx)("div", components_MentionCard_assign({ role: "presentation" }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check", size: 16, color: processed ? 'white' : 'gray' }) })) })) }))), (0,jsx_runtime.jsx)(NoteModal_NoteModal, { note: note, isOpen: this.state.editingNote, onSave: this.handleAddNote, onClose: this.handleCancelEditingNote })] })) })));
    };
    return MentionCard;
}(react.PureComponent));
/* harmony default export */ const mentions_MentionCard_components_MentionCard = (MentionCard_MentionCard);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionCard/MentionCard.tsx
var MentionCard_MentionCard_assign = (undefined && undefined.__assign) || function () {
    MentionCard_MentionCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionCard_MentionCard_assign.apply(this, arguments);
};


















var IN_VIEW_MARGIN = '500px 0px 500px 0px';
var MentionCard_MentionCardContainer = function (_a) {
    var isRequested = _a.isRequested, showExampleModeFeedbackLoop = _a.showExampleModeFeedbackLoop, mention = _a.mention, themeId = _a.themeId, dedup = _a.dedup, showCheckbox = _a.showCheckbox, focused = _a.focused, canManage = _a.canManage, showSystemTags = _a.showSystemTags, userLanguage = _a.userLanguage, onFocus = _a.onFocus, onFocusNext = _a.onFocusNext, showTrends = _a.showTrends, showSubjects = _a.showSubjects, showAspects = _a.showAspects, shortcutsEnabled = _a.shortcutsEnabled, isKeywordHighlightEnabled = _a.isKeywordHighlightEnabled, showVisualInsights = _a.showVisualInsights, showFeedbackLoop = _a.showFeedbackLoop, feedbackLoopSmartFeaturePermissions = _a.feedbackLoopSmartFeaturePermissions, isYoutubeReviewAccount = _a.isYoutubeReviewAccount, topicTaskStarted = _a.topicTaskStarted, update = _a.update, updateFilter = _a.updateFilter, starMentions = _a.starMentions, addNoteMentions = _a.addNoteMentions, markAsSpamMentions = _a.markAsSpamMentions, markAsHamMentions = _a.markAsHamMentions, markProcessedMentions = _a.markProcessedMentions, markUnprocessedMentions = _a.markUnprocessedMentions, unstarMentions = _a.unstarMentions, deleteMentions = _a.deleteMentions, restoreMentions = _a.restoreMentions, setTagsMentions = _a.setTagsMentions, assignMentions = _a.assignMentions, setSentimentMentions = _a.setSentimentMentions, filterSimilar = _a.filterSimilar, filterDuplicates = _a.filterDuplicates, filterDiscussion = _a.filterDiscussion, selectMentions = _a.selectMentions, deselectMentions = _a.deselectMentions, setFeedbackLoopMentions = _a.setFeedbackLoopMentions, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendMentionFeedback = _a.sendMentionFeedback, showModal = _a.showModal, onOpenMention = _a.onOpenMention;
    var _b = (0,useMentionTranslation/* useMentionTranslation */.Z)({
        title: mention.title,
        text: mention.text,
        mentionLanguage: mention.language,
        canBackendTranslate: mention.canTranslate,
        userLanguage: userLanguage,
        sendAnalyticalEvent: sendAnalyticalEvent,
    }), canTranslate = _b.canTranslate, isTranslated = _b.isTranslated, isTranslationLoading = _b.isTranslationLoading, translationError = _b.translationError, translation = _b.translation, handleTranslate = _b.translate;
    var handleStar = function (id) {
        starMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleOpen = function (id) {
        if (onOpenMention) {
            onOpenMention(id);
            return;
        }
        update({
            pathname: "/themes/".concat(themeId, "/mentions/").concat(id),
        });
    };
    var handleMarkAsSpam = function (id) {
        markAsSpamMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleMarkProcessed = function (id) {
        markProcessedMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleAddNote = function (id, note) {
        addNoteMentions({ mentionIds: [id], note: note });
    };
    var handleMarkUnprocessed = function (id) {
        markUnprocessedMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleMarkAsHam = function (id) {
        markAsHamMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleUnstar = function (id) {
        unstarMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleChangeTags = function (id, tags) {
        setTagsMentions({ mentionIds: [id], themeId: themeId, tags: tags });
    };
    var handleChangeSmartFeature = function (id, smartFeatures) {
        setFeedbackLoopMentions({ mentionIds: [id], themeId: themeId, smartFeatures: smartFeatures });
    };
    var handleClickImageTag = function (_a) {
        var type = _a.type, value = _a.value;
        updateFilter({ name: type, value: [value] });
        sendAnalyticalEvent({
            eventType: 'Image tag: clicked',
            properties: { type: type, value: value },
        });
    };
    var handleDelete = function (id) {
        deleteMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleRestore = function (id) {
        restoreMentions({ mentionIds: [id], themeId: themeId });
    };
    var handleSetSentiment = function (id, sentiment) {
        setSentimentMentions({ mentionIds: [id], themeId: themeId, sentiment: sentiment });
    };
    var handleAssign = function (id, _a) {
        var assigneeId = _a.assigneeId, message = _a.message;
        assignMentions({ mentionIds: [id], themeId: themeId, assigneeId: assigneeId, message: message });
    };
    var handleShowSimilar = function (similar) {
        filterSimilar({ similar: similar });
    };
    var handleShowDiscussion = function (id) {
        filterDiscussion({ id: id });
    };
    var handleShowDuplicates = function (duplicate) {
        filterDuplicates({ duplicate: duplicate });
    };
    var handleTrendClick = function (id) {
        updateFilter({ name: 'trend', value: [id] });
    };
    var handleSelect = function (id) {
        selectMentions({ mentionIds: [id] });
    };
    var handleDeselect = function (id) {
        deselectMentions({ mentionIds: [id] });
    };
    var handleOpenExternalLink = function () {
        sendAnalyticalEvent({
            eventType: 'Mention stream: external mention opened',
            properties: { source: mention.source.name },
        });
    };
    var feedbackLoopSmartFeatures = (0,smartFeaturesFeedbackLoop/* getMentionFeedbackLoopSmartFeatureValues */.jB)(mention, feedbackLoopSmartFeaturePermissions);
    var feedbackLoopViSmartFeatures = (0,smartFeaturesFeedbackLoop/* getMentionFeedbackLoopViSmartFeatureValues */.uq)(mention, feedbackLoopSmartFeaturePermissions);
    return ((0,jsx_runtime.jsx)(react_intersection_observer_m/* InView */.pL, MentionCard_MentionCard_assign({ rootMargin: IN_VIEW_MARGIN }, { children: function (_a) {
            var inView = _a.inView, ref = _a.ref;
            return ((0,jsx_runtime.jsx)("div", MentionCard_MentionCard_assign({ ref: ref }, { children: (0,jsx_runtime.jsx)(mentions_MentionCard_components_MentionCard, { showExampleModeFeedbackLoop: showExampleModeFeedbackLoop, isRequested: isRequested, isKeywordHighlightEnabled: isKeywordHighlightEnabled, isTranslated: isTranslated, translationError: translationError, isTranslationLoading: isTranslationLoading, aspects: mention.aspects, assignee: mention.assignee, author: mention.author, authorGenderFilter: mention.authorGenderFilter, channel: mention.channel, channelRating: mention.channelRating, city: mention.city, className: mention.className, commandError: mention.commandError, country: mention.country, deleted: mention.deleted, deleting: mention.deleting, restored: mention.restored, duplicatesCount: mention.duplicatesCount, engagement: mention.engagement, potentialReach: mention.potentialReach, id: mention.id, discussionId: mention.discussionId, imageActivities: mention.imageActivities, imageBrands: mention.imageBrands, imageColors: mention.imageColors, imageObjects: mention.imageObjects, imagePeople: mention.imagePeople, imageContentSensitivity: mention.imageContentSensitivity, imageScenes: mention.imageScenes, imageSubtype: mention.imageSubtype, imageType: mention.imageType, imageUrl: mention.imageUrl, integrations: mention.integrations, inView: inView, manualSentiment: mention.manualSentiment, note: mention.note, ocrTexts: mention.ocrTexts, parentText: mention.parentText, postType: mention.postType, processed: mention.processed, publishedAt: mention.publishedAt, rating: mention.rating, region: mention.region, resourceType: mention.resourceType, selected: mention.selected, sentiment: mention.sentiment, similarCount: mention.similarCount, discussionCommentsCount: mention.discussionCommentsCount, source: mention.source, spam: mention.spam, starred: mention.starred, subjects: mention.subjects, systemTags: mention.systemTags, tagIds: mention.tagIds, text: mention.text, canTranslate: canTranslate, translatedTitle: translation === null || translation === void 0 ? void 0 : translation.title, translatedText: translation === null || translation === void 0 ? void 0 : translation.text, textHash: mention.textHash, title: mention.title, trends: mention.trends, url: mention.url, deletedFromSource: mention.deletedFromSource, canManage: canManage, dedup: dedup, feedbackLoopSmartFeatures: feedbackLoopSmartFeatures, feedbackLoopViSmartFeatures: feedbackLoopViSmartFeatures, focused: focused, shortcutsEnabled: shortcutsEnabled, showAspects: showAspects, showCheckbox: showCheckbox, showFeedbackLoop: showFeedbackLoop, showSubjects: showSubjects, showSystemTags: showSystemTags, showTrends: showTrends, showVisualInsights: showVisualInsights, themeId: themeId, showModal: showModal, topicTaskStarted: topicTaskStarted, isYoutubeReviewAccount: isYoutubeReviewAccount, sourceFormat: mention.sourceFormat, onSendAnalyticalEvent: sendAnalyticalEvent, onSendRequestedMentionFeedback: sendMentionFeedback, onAddNote: handleAddNote, onAssign: handleAssign, onChangeSmartFeature: handleChangeSmartFeature, onClickImageTag: handleClickImageTag, onChangeTags: handleChangeTags, onDelete: handleDelete, onDeselect: handleDeselect, onFocus: onFocus, onFocusNext: onFocusNext, onMarkAsHam: handleMarkAsHam, onMarkAsSpam: handleMarkAsSpam, onMarkProcessed: handleMarkProcessed, onMarkUnprocessed: handleMarkUnprocessed, onOpen: handleOpen, onOpenExternalLink: handleOpenExternalLink, onRestore: handleRestore, onSelect: handleSelect, onSetSentiment: handleSetSentiment, onShowDuplicates: handleShowDuplicates, onShowSimilar: handleShowSimilar, onShowDiscussion: handleShowDiscussion, onStar: handleStar, onTrendClick: handleTrendClick, onTranslate: handleTranslate, onUnstar: handleUnstar }) })));
        } })));
};
/* harmony default export */ const mentions_MentionCard_MentionCard = ((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        showTrends: (0,themes_selectors/* canAccessTrends */.lf)(state),
        showSubjects: (0,themes_selectors/* canShowSubjects */.n7)(state),
        showAspects: (0,themes_selectors/* canShowAspects */.d2)(state),
        shortcutsEnabled: (0,currentUser_selectors/* isShortcutsEnabled */.Rm)(state),
        isKeywordHighlightEnabled: (0,currentUser_selectors/* isKeywordHighlightingEnabled */.vZ)(state),
        showVisualInsights: (0,themes_selectors/* canUseImageRecognitionFeatures */.ZL)(state),
        showFeedbackLoop: (0,themes_selectors/* canUseFeedbackLoopFeature */.Dj)(state),
        feedbackLoopSmartFeaturePermissions: (0,mentionStream_selectors/* getFeedbackLoopSmartFeaturePermissions */.N)(state),
        userLanguage: (0,currentUser_selectors/* getUserLanguage */.mf)(state),
        isYoutubeReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state),
        topicTaskStarted: (0,mentionStream_selectors/* isTopicTaskStarted */.sg)(state),
    });
}, {
    starMentions: commands_model/* mentionStreamCommandsModel */.a.action.starMentions,
    addNoteMentions: commands_model/* mentionStreamCommandsModel */.a.action.addNoteMentions,
    markAsSpamMentions: commands_model/* mentionStreamCommandsModel */.a.action.markAsSpamMentions,
    markAsHamMentions: commands_model/* mentionStreamCommandsModel */.a.action.markAsHamMentions,
    markProcessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markProcessedMentions,
    markUnprocessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markUnprocessedMentions,
    unstarMentions: commands_model/* mentionStreamCommandsModel */.a.action.unstarMentions,
    deleteMentions: commands_model/* mentionStreamCommandsModel */.a.action.deleteMentions,
    restoreMentions: commands_model/* mentionStreamCommandsModel */.a.action.restoreMentions,
    setTagsMentions: commands_model/* mentionStreamCommandsModel */.a.action.setTagsMentions,
    assignMentions: commands_model/* mentionStreamCommandsModel */.a.action.assignMentions,
    setSentimentMentions: commands_model/* mentionStreamCommandsModel */.a.action.setSentimentMentions,
    setFeedbackLoopMentions: commands_model/* mentionStreamCommandsModel */.a.action.setFeedbackLoopMentions,
    filterSimilar: mentionStream_model/* mentionStreamModel */.K.action.filterSimilar,
    filterDiscussion: mentionStream_model/* mentionStreamModel */.K.action.filterDiscussion,
    filterDuplicates: mentionStream_model/* mentionStreamModel */.K.action.filterDuplicates,
    selectMentions: selected_model/* mentionStreamSelectedModel */.n.action.selectMentions,
    deselectMentions: selected_model/* mentionStreamSelectedModel */.n.action.deselectMentions,
    update: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendMentionFeedback: insightsCopilot_model/* insightsCopilotStateModel */.e.action.sendMentionFeedback,
    showModal: modals_actions/* showModal */.to,
})(MentionCard_MentionCardContainer));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionCard/index.ts


// EXTERNAL MODULE: ./src/components/other/MentionPreview/index.ts + 2 modules
var MentionPreview = __webpack_require__("bkQi");
;// CONCATENATED MODULE: ./src/containers/mentions/CompactMentionList/CompactMentionList.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CompactMentionList = ({"toolbar":"lq843guCHC1TFL1ysLZR","fullMention":"naQh0Fp6WOrcwSp48zZy"});
;// CONCATENATED MODULE: ./src/containers/mentions/CompactMentionList/CompactMentionList.tsx
var CompactMentionList_assign = (undefined && undefined.__assign) || function () {
    CompactMentionList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CompactMentionList_assign.apply(this, arguments);
};
var CompactMentionList_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




















var CompactMentionList_CompactMentionList = function (_a) {
    var _b = _a.withOwnFilterOnly, withOwnFilterOnly = _b === void 0 ? false : _b, isLoading = _a.isLoading, requestedMentionIds = _a.requestedMentionIds, filter = _a.filter, perPage = _a.perPage, canManageMentions = _a.canManageMentions, showExampleModeFeedbackLoop = _a.showExampleModeFeedbackLoop, showSystemTags = _a.showSystemTags, themeId = _a.themeId, dedup = _a.dedup, mentions = _a.mentions, currentTopicFilter = _a.currentTopicFilter, _c = _a.viewMode, viewMode = _c === void 0 ? 'full' : _c, toolbar = _a.toolbar, className = _a.className, fetchMention = _a.fetchMention, fetchExampleMentions = _a.fetchExampleMentions;
    var toolbarRef = (0,react.useRef)(null);
    var _d = CompactMentionList_read((0,react.useState)(null), 2), selectedMentionId = _d[0], setSelectedMentionId = _d[1];
    (0,react.useEffect)(function () {
        setTimeout(function () { return toolbarRef.current.scrollIntoView({ behavior: 'smooth', block: 'center' }); }, 500);
        var params = {
            themeId: themeId,
            perPage: perPage || 100,
            requestedMentionIds: requestedMentionIds || [],
            filter: getFilterForRequest(),
        };
        params.filter.from = null;
        params.filter.to = null;
        fetchExampleMentions(params);
    }, [themeId, requestedMentionIds, filter]);
    var getFilterForRequest = function () {
        if (withOwnFilterOnly)
            return filter || Filter/* Filter */.dJ.empty();
        return filter || currentTopicFilter;
    };
    var handleOpenSelectedMention = function (id) {
        fetchMention({ themeId: themeId, mentionId: id });
        setSelectedMentionId(id);
        setTimeout(function () { return toolbarRef.current.scrollIntoView({ behavior: 'smooth', block: 'start' }); }, 200);
    };
    var renderFullMentionList = function () { return mentions.map(function (mention) {
        return (0,jsx_runtime.jsx)(mentions_MentionCard_MentionCard, { isRequested: requestedMentionIds === null || requestedMentionIds === void 0 ? void 0 : requestedMentionIds.includes(String(mention.id)), focused: false, showCheckbox: false, showExampleModeFeedbackLoop: showExampleModeFeedbackLoop, mention: mention, themeId: themeId, dedup: dedup, canManage: canManageMentions, showSystemTags: showSystemTags, onFocus: function () { }, onFocusNext: function () { }, onOpenMention: handleOpenSelectedMention }, mention.id);
    }); };
    var renderCompactMentionList = function () { return mentions.map(function (mention) {
        return (0,jsx_runtime.jsx)(MentionPreview/* default */.A, { hideAvatar: true, title: mention.title, text: mention.text, author: mention.author, imageUrl: mention.imageUrl, url: mention.url, publicationDate: mention.publishedAt, sourceName: mention.source.name, tags: mention.systemTags, className: className, sourceFormat: mention.sourceFormat }, mention.id);
    }); };
    var renderSelectedMention = function () {
        var selectedMention = mentions.find(function (mention) { return mention.id === selectedMentionId; });
        return ((0,jsx_runtime.jsx)(Card/* default */.A, CompactMentionList_assign({ noPadding: true, className: CompactMentionList.fullMention }, { children: (0,jsx_runtime.jsx)(FullMention, { mention: selectedMention, themeId: themeId, showSystemTags: showSystemTags, onClose: function () { } }) })));
    };
    var renderMentionList = function () {
        if (selectedMentionId)
            return renderSelectedMention();
        if (viewMode === 'full')
            return renderFullMentionList();
        return renderCompactMentionList();
    };
    var renderToolbar = function () {
        if (selectedMentionId)
            return ((0,jsx_runtime.jsx)(Toolbar/* Toolbar */.M7, CompactMentionList_assign({ align: true, fullWidth: true, className: CompactMentionList.toolbar }, { children: (0,jsx_runtime.jsx)(Toolbar/* ToolbarGroup */.$Q, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { tooltip: l('Go back'), iconType: "back", onClick: function () { return setSelectedMentionId(null); } }) }) })));
        if (toolbar)
            return toolbar;
        return null;
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", CompactMentionList_assign({ ref: toolbarRef }, { children: renderToolbar() })), (0,jsx_runtime.jsx)(Loader/* default */.A, CompactMentionList_assign({ loaded: !isLoading && mentions }, { children: renderMentionList() }))] }));
};
/* harmony default export */ const mentions_CompactMentionList_CompactMentionList = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isLoading: (0,mentionStream_selectors/* isExampleMentionsLoading */.C$)(state),
    // @ts-ignore
    showSystemTags: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'smartTags'),
    canManageMentions: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageMentions'),
    showExampleModeFeedbackLoop: (0,currentUser_selectors/* isCurrentUserAdmin */.u4)(state),
    dedup: (0,filter_selectors/* isFilterDedup */.TF)(state),
    mentions: (0,mentionStream_selectors/* getExampleMentions */._)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    currentTopicFilter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
}); }, {
    showModal: modals_actions/* showModal */.to,
    fetchMention: mentionStream_model/* mentionStreamModel */.K.action.fetchMention,
    fetchExampleMentions: mentionStream_model/* mentionStreamModel */.K.action.fetchExampleMentions,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(CompactMentionList_CompactMentionList));

;// CONCATENATED MODULE: ./src/containers/mentions/CompactMentionList/index.ts


;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/AlertModalContent/AlertModalContent.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AlertModalContent = ({"header":"qgAqpaJIkyqgeKO1_BKL","base":"uuGfz9EjIjVrz8BWtYs4","settingsContainer":"UgCXEzsHPqlqVJ6X9bfO","mentionsContainer":"hR0aUb33ExdBDFta34IG","integrationsContainer":"YF37OkY12L8OvRQDk8Bt","alertCard":"kkTJzzkTqRITrcT4_Ll9"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/AlertModalContent/AlertModalContent.tsx
var AlertModalContent_assign = (undefined && undefined.__assign) || function () {
    AlertModalContent_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AlertModalContent_assign.apply(this, arguments);
};
var AlertModalContent_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var AlertModalContent_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};


























var AlertModalContent_AlertModalContent = function (_a) {
    var showLogoFilter = _a.showLogoFilter, showAudienceInsights = _a.showAudienceInsights, showAudioMonitoring = _a.showAudioMonitoring, showVisualInsights = _a.showVisualInsights, topicId = _a.topicId, topicName = _a.topicName, alert = _a.alert, currentUser = _a.currentUser, topicIntegrations = _a.topicIntegrations, users = _a.users, onClose = _a.onClose, saveAlert = _a.saveAlert, updateAlert = _a.updateAlert, fetchNotificationsUsers = _a.fetchNotificationsUsers, fetchIntegrations = _a.fetchIntegrations, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = AlertModalContent_read((0,react.useState)(alert.title || topicName), 2), title = _b[0], setTitle = _b[1];
    var _c = AlertModalContent_read((0,react.useState)((alert.recipients) || []), 2), recipients = _c[0], setRecipients = _c[1];
    var _d = AlertModalContent_read((0,react.useState)((alert.integrations) || []), 2), integrations = _d[0], setIntegrations = _d[1];
    var _e = AlertModalContent_read((0,react.useState)(alert.deliveryMethod), 2), deliveryMethod = _e[0], setDeliveryMethod = _e[1];
    var _f = AlertModalContent_read((0,react.useState)(alert.trigger), 2), trigger = _f[0], setTrigger = _f[1];
    var _g = AlertModalContent_read((0,react.useState)(alert.frequency), 2), frequency = _g[0], setFrequency = _g[1];
    var _h = AlertModalContent_read((0,react.useState)(alert.filter), 2), filter = _h[0], setFilter = _h[1];
    var _j = AlertModalContent_read((0,react.useState)(false), 2), editingTitle = _j[0], setEditingTitle = _j[1];
    var isEmptyRecipients = !recipients.length && deliveryMethod === Notifications/* DeliveryMethod */.ye.Email;
    var isEmptyIntegrations = !integrations.length && deliveryMethod === Notifications/* DeliveryMethod */.ye.Integration;
    (0,react.useEffect)(function () {
        if (!users.length)
            fetchNotificationsUsers();
        fetchIntegrations({ themeId: topicId });
        if (!alert.isEdit && recipients.length === 0) {
            setRecipients([{ email: currentUser.login, fullName: currentUser.fullName }]);
        }
    }, []);
    var handleCloseAlert = function () {
        setEditingTitle(false);
        onClose();
    };
    var handleSaveAlert = function () {
        try {
            var newAlert = new Alert/* Alert */.F({
                data: {
                    title: title || topicName,
                    trigger: trigger,
                    deliveryMethod: deliveryMethod,
                    frequency: frequency,
                    recipients: recipients,
                    integrations: integrations,
                    filter: filter.toApi(),
                },
            });
            if (alert.isEdit) {
                var updatedAlert = Alert/* Alert */.F.merge(alert, newAlert);
                updateAlert(updatedAlert);
                var newRecipients_1 = updatedAlert.recipients, newTitle_1 = updatedAlert.title, analyticalProps_1 = AlertModalContent_rest(updatedAlert, ["recipients", "title"]);
                sendAnalyticalEvent({ eventType: 'Alerts: update', properties: analyticalProps_1 });
                return;
            }
            saveAlert(newAlert);
            var newRecipients = newAlert.recipients, newTitle = newAlert.title, analyticalProps = AlertModalContent_rest(newAlert, ["recipients", "title"]);
            sendAnalyticalEvent({ eventType: 'Alerts: create', properties: analyticalProps });
        }
        catch (error) {
            console.error('Error saving alert:', error);
        }
        finally {
            onClose();
        }
    };
    var handleStartSetTitle = function () {
        setEditingTitle(true);
        setTitle(title);
    };
    var handleSetFilter = function (f) {
        if (f)
            setFilter(f);
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, AlertModalContent_assign({ className: AlertModalContent.header }, { children: [" ", alert.isEdit ? l('Edit an alert') : l('Create an alert')] })), (0,jsx_runtime.jsxs)("div", AlertModalContent_assign({ className: AlertModalContent.base }, { children: [(0,jsx_runtime.jsxs)("div", AlertModalContent_assign({ className: AlertModalContent.settingsContainer }, { children: [(0,jsx_runtime.jsx)(components_Title_Title, { value: title, isEditing: editingTitle, onChange: setTitle, toggleEditing: handleStartSetTitle }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "24px" }), (0,jsx_runtime.jsx)(components_Filter_Filter, { showSearch: true, shortcutsEnabled: true, value: filter, topicId: topicId, tabPermissions: { trends: false, tags: false, images: showVisualInsights }, filterTypePermissions: {
                                    imageBrand: showLogoFilter,
                                    authorInterests: showAudienceInsights,
                                    authorInterestCategories: showAudienceInsights,
                                    authorJobs: showAudienceInsights,
                                    audioMonitoring: showAudioMonitoring,
                                }, onChange: handleSetFilter, sendAnalyticalEvent: sendAnalyticalEvent }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "24px" }), (0,jsx_runtime.jsx)(components_DeliveryMethod_DeliveryMethod, { value: deliveryMethod, onChange: setDeliveryMethod }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "24px" }), deliveryMethod === Notifications/* DeliveryMethod */.ye.Email && (0,jsx_runtime.jsx)(components_Frequency_Frequency, { value: frequency, onChange: setFrequency }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "24px" }), deliveryMethod === Notifications/* DeliveryMethod */.ye.Email ? ((0,jsx_runtime.jsx)(components_Recipients_Recipients, { value: recipients, onChange: setRecipients, options: users })) : ((0,jsx_runtime.jsx)(components_Integrations_Integrations, { value: integrations, onChange: setIntegrations, options: topicIntegrations, topicId: topicId, onCloseModal: onClose })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "24px" }), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleCloseAlert }), (0,jsx_runtime.jsx)(Tooltip/* default */.A, AlertModalContent_assign({ text: (isEmptyRecipients || isEmptyIntegrations) && l('The list of recipients cannot be empty', 'emailNotification') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: isEmptyRecipients || isEmptyIntegrations, label: l('Apply'), onClick: handleSaveAlert }) }))] })] })), (0,jsx_runtime.jsx)("div", AlertModalContent_assign({ className: AlertModalContent.mentionsContainer }, { children: (0,jsx_runtime.jsx)(mentions_CompactMentionList_CompactMentionList, { perPage: 50, filter: filter, viewMode: "compact", className: AlertModalContent.alertCard }) }))] }))] }));
};
/* harmony default export */ const components_AlertModalContent_AlertModalContent = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    topicIntegrations: (0,integrations_selectors/* getIntegrations */.Yl)(state),
    users: (0,themes_selectors/* getNotificationsUsers */.bE)(state),
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    topicName: (0,themes_selectors/* getCurrentThemeName */.EY)(state),
    showLogoFilter: (0,themes_selectors/* canShowLogoFilter */.N)(state),
    showAudienceInsights: (0,account_selectors/* canShowAudienceInsights */.Po)(state),
    showAudioMonitoring: (0,account_selectors/* isAudioMonitoringEnabled */.Qf)(state),
    showVisualInsights: (0,themes_selectors/* canUseImageRecognitionFeatures */.ZL)(state),
}); }, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    saveAlert: themes_model/* themesModel */.i.action.saveAlert,
    updateAlert: themes_model/* themesModel */.i.action.updateAlert,
    fetchNotificationsUsers: themes_model/* themesModel */.i.action.fetchNotificationsUsers,
    fetchIntegrations: integrations_model/* integrationsModel */.F.action.fetchIntegrations,
}))(AlertModalContent_AlertModalContent));

;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/AlertModalContent/index.tsx


;// CONCATENATED MODULE: ./src/containers/modals/AlertModal/AlertModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AlertModal = ({"base":"N08fgdnK0PZUSSQNVH5w"});
;// CONCATENATED MODULE: ./src/containers/modals/AlertModal/AlertModal.tsx
var AlertModal_assign = (undefined && undefined.__assign) || function () {
    AlertModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AlertModal_assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};








var ALERT_MODAL = 'alertModal';
var ignoredFilterGroupsForAlerts = [
    'dedup',
    'from',
    'to',
    'processed',
    'tagged',
    'starred',
    'assigned',
    'spam',
    'deleted',
    'tag',
    'excludeTag',
    'withImage',
    'origin',
    'trend'
];
var ignoredFilterGlobalOptionsForAlerts = [
    'similar',
    'withTextHighlight'
];
var AlertModal_AlertModal = function (_a) {
    var e_1, _b, e_2, _c;
    var alert = _a.alert, initialAlertFilter = _a.initialAlertFilter, handleHide = _a.handleHide;
    var defaultAlert = (0,react.useMemo)(function () { return Alert/* Alert */.F.empty(); }, []);
    if (!alert && initialAlertFilter) {
        defaultAlert.filter = initialAlertFilter.copyFilter();
        try {
            for (var ignoredFilterGroupsForAlerts_1 = __values(ignoredFilterGroupsForAlerts), ignoredFilterGroupsForAlerts_1_1 = ignoredFilterGroupsForAlerts_1.next(); !ignoredFilterGroupsForAlerts_1_1.done; ignoredFilterGroupsForAlerts_1_1 = ignoredFilterGroupsForAlerts_1.next()) {
                var filterType = ignoredFilterGroupsForAlerts_1_1.value;
                defaultAlert.filter = defaultAlert.filter.withoutFilterGroupByName(filterType);
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (ignoredFilterGroupsForAlerts_1_1 && !ignoredFilterGroupsForAlerts_1_1.done && (_b = ignoredFilterGroupsForAlerts_1.return)) _b.call(ignoredFilterGroupsForAlerts_1);
            }
            finally { if (e_1) throw e_1.error; }
        }
        try {
            for (var ignoredFilterGlobalOptionsForAlerts_1 = __values(ignoredFilterGlobalOptionsForAlerts), ignoredFilterGlobalOptionsForAlerts_1_1 = ignoredFilterGlobalOptionsForAlerts_1.next(); !ignoredFilterGlobalOptionsForAlerts_1_1.done; ignoredFilterGlobalOptionsForAlerts_1_1 = ignoredFilterGlobalOptionsForAlerts_1.next()) {
                var name_1 = ignoredFilterGlobalOptionsForAlerts_1_1.value;
                defaultAlert.filter.removeGlobalOption(name_1);
            }
        }
        catch (e_2_1) { e_2 = { error: e_2_1 }; }
        finally {
            try {
                if (ignoredFilterGlobalOptionsForAlerts_1_1 && !ignoredFilterGlobalOptionsForAlerts_1_1.done && (_c = ignoredFilterGlobalOptionsForAlerts_1.return)) _c.call(ignoredFilterGlobalOptionsForAlerts_1);
            }
            finally { if (e_2) throw e_2.error; }
        }
        defaultAlert.filter.removeFilterGroup(defaultAlert.filter.findByName('tag'));
        defaultAlert.filter.removeFilterGroup(defaultAlert.filter.findByName('trend'));
    }
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, AlertModal_assign({ isOpen: true, fitted: true, withCloseIcon: true, className: AlertModal.base, onRequestClose: handleHide }, { children: (0,jsx_runtime.jsx)(components_AlertModalContent_AlertModalContent, { alert: alert || defaultAlert, onClose: handleHide }) })));
};
/* harmony default export */ const modals_AlertModal_AlertModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)(ALERT_MODAL))(AlertModal_AlertModal));

;// CONCATENATED MODULE: ./src/containers/modals/AlertModal/index.tsx


;// CONCATENATED MODULE: ./src/containers/App/App.tsx
var App_assign = (undefined && undefined.__assign) || function () {
    App_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return App_assign.apply(this, arguments);
};






























var App = function () {
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(BrowserCompatibilityInspector_BrowserCompatibilityInspector, {}), (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}), (0,jsx_runtime.jsx)(HelpModal, {}), (0,jsx_runtime.jsx)(CreateTagModal_CreateTagModal, {}), (0,jsx_runtime.jsx)(CreateRuleModal_NEW, {}), (0,jsx_runtime.jsx)(videoModals_IntroductionModal_IntroductionModal, {}), (0,jsx_runtime.jsx)(videoModals_WalkthroughVideoModal_WalkthroughVideoModal, {}), (0,jsx_runtime.jsx)(ChangePasswordModal_ChangePasswordModal, {}), (0,jsx_runtime.jsx)(modals_ChangeApiKeyModal_ChangeApiKeyModal, {}), (0,jsx_runtime.jsx)(UserPermissionsModal_UserPermissionsModal, {}), (0,jsx_runtime.jsx)(modals_AddChannelsModal_AddChannelsModal, {}), (0,jsx_runtime.jsx)(modals_LogoPickerModal_LogoPickerModal, {}), (0,jsx_runtime.jsx)(modals_VisualTagsPickerModal_VisualTagsPickerModal, {}), (0,jsx_runtime.jsx)(modals_AddChannelsInfoModal_AddChannelsInfoModal, {}), (0,jsx_runtime.jsx)(modals_IntegrationsModal_IntegrationsModal, {}), (0,jsx_runtime.jsx)(modals_HistoryCollectionsModal_HistoryCollectionsModal, {}), (0,jsx_runtime.jsx)(modals_UnavailableFeatureModal_UnavailableFeatureModal, {}), (0,jsx_runtime.jsx)(modals_UnsavedFeatureModal_UnsavedFeatureModal, {}), (0,jsx_runtime.jsx)(CustomDashboardWidget_CustomDashboardWidgetModal, {}), (0,jsx_runtime.jsx)(CustomDashboardTemplates_CustomDashboardTemplatesModal, {}), (0,jsx_runtime.jsx)(CustomDashboardShareModal/* default */.A, {}), (0,jsx_runtime.jsx)(modals_EditTrend_EditTrend, {}), (0,jsx_runtime.jsx)(modals_AlertModal_AlertModal, {}), (0,jsx_runtime.jsx)("div", App_assign({ style: { width: 0, height: 0, position: 'absolute', opacity: 0 } }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "loading", size: 0 }) }))] }));
};
/* harmony default export */ const App_App = (App);

;// CONCATENATED MODULE: ./src/containers/App/index.ts


;// CONCATENATED MODULE: ./src/containers/LogOnPage/LogOnPage.tsx
var LogOnPage_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};







var LogOnPage = function (_a) {
    var loggedOn = _a.loggedOn, logOn = _a.logOn;
    var _b = LogOnPage_read((0,dist/* useSearchParams */.ok)(), 1), searchParams = _b[0];
    var navigate = (0,react_router_dist/* useNavigate */.Zp)();
    var accountId = searchParams.get('accountId');
    var themeId = searchParams.get('themeId');
    (0,react.useEffect)(function () {
        logOn({ themeId: themeId, accountId: accountId });
    }, []);
    (0,react.useEffect)(function () {
        if (loggedOn) {
            navigate(themeId ? "/themes/".concat(themeId) : '/themes');
        }
    }, [loggedOn]);
    return (0,jsx_runtime.jsx)(Spinner/* default */.A, {});
};
/* harmony default export */ const LogOnPage_LogOnPage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    loggedOn: (0,selectors/* isLoggedOn */.e5)(state),
}); }, { logOn: model/* sessionModel */.S.action.logOn })(LogOnPage));

;// CONCATENATED MODULE: ./src/containers/LogOnPage/index.js

;// CONCATENATED MODULE: ./src/components/other/Confirm/Modals/deleteTheme.js
/* eslint-disable import/prefer-default-export */



var confirmThemeDeletion = function confirmThemeDeletion(themeName) {
  var title = l('Are you sure you want to delete topic?', 'themeDelete');
  var actionLabel = l('Delete this topic', 'themeDelete');
  var validationLabel = l('Please type in the name of current topic to confirm', 'themeDelete');
  var validation = function validation(value) {
    return value.toLowerCase() === themeName.toLowerCase().trim();
  };
  var message = /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
    children: [l('This action ', 'themeDelete'), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
      children: l('CANNOT BE UNDONE.', 'themeDelete')
    }), l(' This will permanently delete the ', 'themeDelete'), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
      style: {
        whiteSpace: 'pre'
      },
      children: themeName
    }), l(' topic, mentions, tags, exports and all your work', 'themeDelete')]
  });
  return (0,utils_confirm/* default */.A)({
    title: title,
    message: message,
    actionLabel: actionLabel,
    validation: validation,
    validationLabel: validationLabel
  });
};
// EXTERNAL MODULE: ./src/containers/Head/index.js
var Head = __webpack_require__("xO6Q");
;// CONCATENATED MODULE: ./src/containers/createTheme/CreateThemeButton/CreateThemeButton.js






function CreateThemeButton_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, CreateThemeButton_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function CreateThemeButton_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (CreateThemeButton_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }










var CreateThemeButton = /*#__PURE__*/function (_PureComponent) {
  function CreateThemeButton() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CreateThemeButton);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = CreateThemeButton_callSuper(this, CreateThemeButton, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleOpenCreateThemePage", function () {
      _this.props.push('/themes/new');
    });
    return _this;
  }
  (0,inherits/* default */.A)(CreateThemeButton, _PureComponent);
  return (0,createClass/* default */.A)(CreateThemeButton, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.fetchAccountInfo();
    }
  }, {
    key: "denyPopoverContent",
    get: function get() {
      var themeCreationDisableReason = this.props.themeCreationDisableReason;
      var reasons = {
        SUBSCRIPTION_FEATURE_UNAVAILABLE: {
          header: l('You cannot create a topic in a trial account'),
          text: l('Please, contact our team if you need help with creating a topic')
        },
        THEMES_LIMIT_REACHED: {
          header: l('Topic limit is reached'),
          text: l('Please contact our support team if you want to upgrade your account')
        },
        MENTIONS_LIMIT_REACHED: {
          header: l('Mentions limit is reached'),
          text: l('Please contact our support team if you want to upgrade your account')
        },
        PERMISSION_DENIED: {
          header: l("You don't have permission to create a topic"),
          text: l('Contact the account administrator to give you permission or create your own topic')
        }
      };
      return reasons[themeCreationDisableReason];
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        size = _this$props.size,
        newTopicCreationEnabled = _this$props.newTopicCreationEnabled;
      if (!newTopicCreationEnabled) {
        var popoverContent = this.denyPopoverContent;
        if (!popoverContent) {
          return null;
        }
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          on: "hover",
          placement: "bottom center",
          title: popoverContent.header,
          content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            style: {
              minWidth: '360'
            },
            children: popoverContent.text
          }),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            disabled: true,
            size: size,
            label: l('Create topic')
          })
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        primary: true,
        size: size,
        label: l('Create topic'),
        onClick: this.handleOpenCreateThemePage
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const CreateThemeButton_CreateThemeButton = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    newTopicCreationEnabled: (0,currentUser_selectors/* isTopicCreationEnabled */.A0)(state),
    themeCreationDisableReason: (0,currentUser_selectors/* getThemeCreationDisableReason */.Np)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  push: routing_actions/* push */.VC,
  fetchAccountInfo: account_model/* accountModel */.h.action.fetchAccount
})(CreateThemeButton));
;// CONCATENATED MODULE: ./src/containers/createTheme/CreateThemeButton/index.js

// EXTERNAL MODULE: ./src/components/other/SearchSort/index.ts + 2 modules
var SearchSort = __webpack_require__("gBVS");
// EXTERNAL MODULE: ./node_modules/react-sparklines/build/index.js
var build = __webpack_require__("nCnx");
// EXTERNAL MODULE: ./src/containers/helpers/HistoryCollectionOptionIcon.tsx + 1 modules
var HistoryCollectionOptionIcon = __webpack_require__("8+mS");
// EXTERNAL MODULE: ./src/components/ui/ShortDate/index.js + 2 modules
var ShortDate = __webpack_require__("0ppS");
// EXTERNAL MODULE: ./src/components/ui/SentimentDistributionBar/index.ts + 2 modules
var SentimentDistributionBar = __webpack_require__("NS2V");
// EXTERNAL MODULE: ./node_modules/react-content-loader/dist/react-content-loader.es.js
var react_content_loader_es = __webpack_require__("GRpk");
;// CONCATENATED MODULE: ./src/components/other/Theme/Skeletons/CountSkeleton.tsx
var CountSkeleton_assign = (undefined && undefined.__assign) || function () {
    CountSkeleton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CountSkeleton_assign.apply(this, arguments);
};



var CountSkeleton = function () { return ((0,jsx_runtime.jsxs)(react_content_loader_es/* default */.Ay, CountSkeleton_assign({ speed: 2, width: 140, height: 48, viewBox: "0 0 140 48", backgroundColor: (0,utils_colors/* getColorsByTheme */.hx)().grayLighter, foregroundColor: (0,utils_colors/* getColorsByTheme */.hx)().grayLightest }, { children: [(0,jsx_runtime.jsx)("rect", { x: "13", y: "33", rx: "3", ry: "3", width: "124", height: "8" }), (0,jsx_runtime.jsx)("rect", { x: "50", y: "1", rx: "3", ry: "3", width: "52", height: "21" })] }))); };
/* harmony default export */ const Skeletons_CountSkeleton = (CountSkeleton);

;// CONCATENATED MODULE: ./src/components/other/Theme/Skeletons/SparkLineSvgPath.tsx

var SparkLineSvgPath = function () { return ((0,jsx_runtime.jsx)("path", { d: "M25.3668 29.7643L0 40V50H200V19.5L186.75 12.7545C178.27 8.43743 167.969 10.1252 161.31 16.9227C153.117 25.2866 141.902 30 130.194 30H110.257C108.105 30 105.973 29.5929 103.972 28.8002L88.2074 22.5539C83.3429 20.6264 77.8619 21.0465 73.3479 23.6926L57.8718 32.7648C53.8289 35.1348 48.9502 35.6131 44.524 34.0736L31.6912 29.61C29.6338 28.8944 27.3868 28.9492 25.3668 29.7643Z" })); };
/* harmony default export */ const Skeletons_SparkLineSvgPath = (SparkLineSvgPath);

;// CONCATENATED MODULE: ./src/components/other/Theme/Skeletons/SparkLineSkeleton.tsx
var SparkLineSkeleton_assign = (undefined && undefined.__assign) || function () {
    SparkLineSkeleton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SparkLineSkeleton_assign.apply(this, arguments);
};




var SparkLineSkeleton = function () { return ((0,jsx_runtime.jsxs)(react_content_loader_es/* default */.Ay, SparkLineSkeleton_assign({ speed: 2, width: 200, height: 58, viewBox: "0 0 200 58", backgroundColor: (0,utils_colors/* getColorsByTheme */.hx)().grayLighter, foregroundColor: (0,utils_colors/* getColorsByTheme */.hx)().grayLightest }, { children: [(0,jsx_runtime.jsx)(Skeletons_SparkLineSvgPath, {}), (0,jsx_runtime.jsx)("rect", { x: "0", y: "54", rx: "3", ry: "3", width: "200", height: "4" })] }))); };
/* harmony default export */ const Skeletons_SparkLineSkeleton = (SparkLineSkeleton);

;// CONCATENATED MODULE: ./src/components/other/Theme/Theme.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Theme = ({"base":"X6nvm22q1pX3RXCWBelA","disabled":"hSfwAnyANXnwv2HB9yYt","title":"RHh32PwSZ89HDr7LJn17","info":"sdg5x96H230WtGjOpkPg","query":"nd82nPf6HzmXVY6JumGJ","modified":"nqioum2OgCAij3NJ6Az2","toolbar":"Q82nPcs6X3iSYureQfg_","lastModified":"clkgPpKYL2EugKM6OAYW","lastModifiedBy":"m7u3f66BYilzzFpv_AhQ","sparkline":"Zj96c_ewmrqwZpTKhxVl","mentions":"Dk2TPoglLeFC5kHcMHw5","mentionsLink":"FdwTNczsu4370AQbEcOn","queryTooltip":"qqx0Fp4WTGj14Tg72SBp","queryTooltipText":"uXsKs62FVmM73YSAD0d1"});
;// CONCATENATED MODULE: ./src/components/other/Theme/Theme.tsx
var Theme_assign = (undefined && undefined.__assign) || function () {
    Theme_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Theme_assign.apply(this, arguments);
};






















var EMPTY_SPARKLINE_DATA = [0, 0];
var Theme_Theme = function (_a) {
    var topic = _a.topic, showExplore = _a.showExplore, onDeleteTheme = _a.onDeleteTheme, userTimeZone = _a.userTimeZone;
    var id = topic.id, name = topic.name, lastModifiedBy = topic.lastModifiedBy, lastModified = topic.lastModified, stats = topic.stats, permission = topic.permission;
    var handleDeleteTheme = function () {
        if (onDeleteTheme) {
            onDeleteTheme({ themeId: id, themeName: name });
        }
    };
    var createLink = function (pageType) {
        if (showExplore)
            return "/themes/".concat(id, "/explore");
        return "/themes/".concat(id, "/").concat(pageType);
    };
    var isEmptyStats = (0,lodash.isEmpty)(stats);
    var dynamics = stats.dynamics;
    var sentiment = stats.sentiment;
    var total = stats.total;
    return ((0,jsx_runtime.jsxs)("div", Theme_assign({ className: classnames_default()(Theme.base) }, { children: [permission !== 'view'
                && ((0,jsx_runtime.jsx)("div", Theme_assign({ className: classnames_default()(Theme.toolbar) }, { children: (0,jsx_runtime.jsxs)(DropDownMenu/* default */.A, Theme_assign({ component: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "dots" }), position: "bottom right" }, { children: [(0,jsx_runtime.jsx)(dist/* Link */.N_, Theme_assign({ to: "/themes/".concat(id, "/settings"), className: classnames_default()(Theme.title) }, { children: (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('Settings') }) })), permission === 'manage'
                                && ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('Delete topic'), onSelect: handleDeleteTheme }))] })) }))), (0,jsx_runtime.jsxs)("div", Theme_assign({ className: classnames_default()(Theme.info) }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: (0,jsx_runtime.jsxs)(dist/* Link */.N_, Theme_assign({ to: createLink('mentions'), className: classnames_default()(Theme.title) }, { children: [(0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicScaleIcon */.Hi, { topic: topic }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicSamplingIcon */.I$, { topic: topic }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicFilterIcon */.$2, { topic: topic }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), name] })) }), (0,jsx_runtime.jsx)(Tooltip/* default */.A, Theme_assign({ text: (0,jsx_runtime.jsx)("span", Theme_assign({ className: classnames_default()(Theme.queryTooltipText) }, { children: topic.topicQuery.textQuery })), className: classnames_default()(Theme.queryTooltip), position: "top left" }, { children: (0,jsx_runtime.jsx)("div", Theme_assign({ className: classnames_default()(Theme.query) }, { children: topic.topicQuery.textQuery })) })), (0,jsx_runtime.jsxs)("div", Theme_assign({ className: classnames_default()(Theme.modified) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "user" }), (0,jsx_runtime.jsxs)("div", Theme_assign({ className: classnames_default()(Theme.lastModifiedBy) }, { children: [lastModifiedBy, (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('updated this topic'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ShortDate/* default */.A, { date: lastModified, userTimezone: userTimeZone })] }))] }))] })), renderTotalMentions(), (0,jsx_runtime.jsx)(dist/* Link */.N_, Theme_assign({ to: createLink('dashboard'), className: classnames_default()(Theme.mentionsLink) }, { children: renderSparkline() }))] })));
    function renderTotalMentions() {
        if (isEmptyStats) {
            return ((0,jsx_runtime.jsx)(dist/* Link */.N_, Theme_assign({ to: createLink('mentions'), className: classnames_default()(Theme.mentionsLink) }, { children: (0,jsx_runtime.jsx)("div", Theme_assign({ className: classnames_default()(Theme.mentions) }, { children: (0,jsx_runtime.jsx)(Skeletons_CountSkeleton, {}) })) })));
        }
        return total === undefined ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, Theme_assign({ text: l('This topic has no statistics. Please contact our support team') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "null", color: "gray" }) }))) : ((0,jsx_runtime.jsx)(dist/* Link */.N_, Theme_assign({ to: createLink('mentions'), className: classnames_default()(Theme.mentionsLink) }, { children: (0,jsx_runtime.jsxs)("div", Theme_assign({ className: classnames_default()(Theme.mentions) }, { children: [(0,jsx_runtime.jsx)("div", { children: numeral_default()(total).format('0 a') }), (0,jsx_runtime.jsx)("div", { children: l('mentions') })] })) })));
    }
    function renderSparkline() {
        if (isEmptyStats)
            return (0,jsx_runtime.jsx)("div", Theme_assign({ className: classnames_default()(Theme.sparkline) }, { children: (0,jsx_runtime.jsx)(Skeletons_SparkLineSkeleton, {}) }));
        return ((0,jsx_runtime.jsxs)("div", Theme_assign({ className: classnames_default()(Theme.sparkline) }, { children: [dynamics ? ((0,jsx_runtime.jsx)(build.Sparklines, Theme_assign({ data: dynamics.map(function (date) { return date.count; }), min: 0 }, { children: (0,jsx_runtime.jsx)(build.SparklinesLine, { color: utils_colors/* palette */.MF.primary }) }))) : ((0,jsx_runtime.jsx)(build.Sparklines, Theme_assign({ data: EMPTY_SPARKLINE_DATA }, { children: (0,jsx_runtime.jsx)(build.SparklinesLine, { color: utils_colors/* palette */.MF.error }) }))), sentiment && ((0,jsx_runtime.jsx)(SentimentDistributionBar/* default */.A, { height: 4, negativeCount: sentiment.negative, positiveCount: sentiment.positive, neutralCount: sentiment.neutral, undefinedCount: sentiment.undefined }))] })));
    }
};
var mapStateToProps = function (state) { return ({
    userTimeZone: (0,currentUser_selectors/* getUserTimeZone */.fy)(state),
}); };
/* harmony default export */ const other_Theme_Theme = ((0,react_redux/* connect */.Ng)(mapStateToProps)(Theme_Theme));

;// CONCATENATED MODULE: ./src/components/other/Theme/index.ts


// EXTERNAL MODULE: ./src/components/other/EducationalInfo/index.ts + 5 modules
var EducationalInfo = __webpack_require__("8Xn6");
;// CONCATENATED MODULE: ./src/containers/ThemesPage/components/utils.ts

var getEducationalMaterialsByUseCase = function () { return ({
    brandHealthTracking: {
        title: l('Marketing'),
        description: l('Create dashboards to track your brand\'s health in two clicks.'),
        path: 'articles/4855217-custom-dashboards',
    },
    crisisManagement: {
        title: l('Channels'),
        description: l('Receive a full stream of messages from a user, community or geolocation page'),
        path: 'articles/5563235',
    },
    customerSupport: {
        title: l('Channels'),
        description: l('Receive a full stream of messages from a user, community or geolocation page'),
        path: 'articles/5563235',
    },
    customerExperienceAnalysis: {
        title: l('Trends'),
        description: l('Research the discussed trends, analyze, and work with them'),
        path: 'articles/2923217',
    },
    marketResearch: {
        title: l('Visual Insights'),
        description: l('Analyzing visual content can help you better understand your customers'),
        path: 'articles/3178348',
    },
    trendsAnalysis: {
        title: l('Trends'),
        description: l('Research the discussed trends, analyze, and work with them'),
        path: 'articles/2923217',
    },
    campaignAnalysis: {
        title: l('Dashboard'),
        description: l('Use our pre-built reports to analyze data without effort.'),
        path: 'articles/3175591-analyze-dynamics-and-trends-of-discussions-using-overview',
    },
    influencerMarketing: {
        title: l('Smart Alerts'),
        description: l('Notifications about important mentions and influencers'),
        path: 'articles/881485',
    },
    hrBrandTracking: {
        title: l('Email reports'),
        description: l('Set up automatic daily, weekly and monthly email reports'),
        path: 'articles/803456',
    },
    ownedCommunityMonitoring: {
        title: l('Channels'),
        description: l('Receive a full stream of messages from a user, community or geolocation page'),
        path: 'articles/5563235',
    },
    salesPitchesPreparation: {},
}); };
var getEducationalMaterialsForAll = function () { return [
    {
        title: l('Topic creation'),
        description: l('How to create and set up a topic'),
        path: 'articles/913342',
    },
    {
        title: l('Filters'),
        description: l('How to get data for a specific country, source, author, tonality, tag and other parameters'),
        path: 'articles/1047593',
    },
    {
        title: l('Visual Insights'),
        description: l('Find out how YouScan detects logos, objects, scenes, people and other elements in images'),
        path: 'articles/3178348',
    },
    {
        title: l('Integrations'),
        description: l('Send important mentions to popular messengers, CRM, HelpDesk systems automatically and manually'),
        path: 'articles/2255972',
    },
    {
        title: l('Rules overview'),
        description: l('Find out what you can do with Rules and how useful they are'),
        path: 'articles/1242011',
    },
    {
        title: l('Rules'),
        description: l('Examples of manual processes that YouScan customers often automate using Rules'),
        path: 'articles/3147670',
    },
    {
        title: l('Channels'),
        description: l('Receive a full stream of messages from a user, community or geolocation page'),
        path: 'articles/461615',
    },
    {
        title: l('Trends'),
        description: l('How to find trends in YouScan: work with charts and filters'),
        path: 'articles/2923217',
    },
    {
        title: l('Smart Alerts'),
        description: l('How to enable email notifications about important mentions'),
        path: 'articles/881485',
    }
]; };
var mapEducationalMaterials = function (materials) {
    return materials.map(function (info, index) { return ({
        info: info,
        color: utils_colors/* EDUCATIONAL_MATERIALS_CARD_COLORS */.Fs[index],
    }); });
};

;// CONCATENATED MODULE: ./src/containers/ThemesPage/components/ThemesPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ThemesPage = ({"base":"s6oM5i4TsvlVzwVBivDJ","header":"fu_Tg_Z043EU_TeJaXgQ","titleContainer":"ZJxN0NLe35ZZw9fPUUf7","topicsLimitContainer":"T71elyV8UqrB1fLLxlWe","topicsUsed":"rtUrKsdaz_0tv7lz3Hqg","topic":"FZ0aqDTpDlS1gYGZ5rnY","emptyState":"dhhxMxgcoc2b7XHBvUwm"});
;// CONCATENATED MODULE: ./src/containers/ThemesPage/components/ThemesPage.tsx
var ThemesPage_assign = (undefined && undefined.__assign) || function () {
    ThemesPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemesPage_assign.apply(this, arguments);
};
var ThemesPage_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint react/jsx-no-bind: 0 */
















var EducationalMaterials = function (_a) {
    var userUseCases = _a.userUseCases;
    var educationalMaterialsForAll = getEducationalMaterialsForAll();
    var educationalMaterialsByUseCase = getEducationalMaterialsByUseCase();
    var personalizedMaterials = userUseCases
        .filter(function (useCase) { return useCase !== 'other'; })
        .map(function (useCase) {
        var educationalMaterialsByUseCaseElement = educationalMaterialsByUseCase[useCase];
        if (!Object.keys(educationalMaterialsByUseCaseElement).length) {
            educationalMaterialsByUseCaseElement = educationalMaterialsForAll[Math.floor(Math.random() * educationalMaterialsForAll.length)];
        }
        return educationalMaterialsByUseCaseElement;
    })
        .sort(function () { return 0.5 - Math.random(); });
    var _b = ThemesPage_read(personalizedMaterials, 1), _c = _b[0], personalizedMaterial = _c === void 0 ? educationalMaterialsForAll[0] : _c;
    var _d = ThemesPage_read(educationalMaterialsForAll
        .sort(function () { return 0.5 - Math.random(); })
        .filter(function (item) { return item.path !== personalizedMaterial.path; }), 2), generalMaterial = _d[0], additionalMaterial = _d[1];
    var handleLinkClick = function (_a) {
        var path = _a.path;
        var link = (0,navigation/* createHelpLink */.OP)(path);
        window.open(link, '_blank');
    };
    var cards = mapEducationalMaterials([personalizedMaterial, generalMaterial, additionalMaterial]);
    return (0,jsx_runtime.jsx)(EducationalInfo/* default */.A, { title: l('Research your possibilities'), cards: cards, handleLinkClick: handleLinkClick });
};
var ThemePageEmptyState = function (_a) {
    var search = _a.search;
    if (search) {
        return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(ThemesPage.emptyState), image: "/static/images/empty_themes_not_found.png", title: sprintf(l('No topics satisfy your query "%s"'), search) }));
    }
    return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, ThemesPage_assign({ className: classnames_default()(ThemesPage.emptyState), image: "/static/images/empty_themes.svg", title: (0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Create your first topic') }) }, { children: (0,jsx_runtime.jsx)(CreateThemeButton_CreateThemeButton, { size: "large" }) })));
};
var cache = new dist_es/* CellMeasurerCache */.jS({
    fixedWidth: true,
    defaultHeight: 125,
});
var ThemesPage_ThemesPage = function (_a) {
    var _b;
    var showExplore = _a.showExplore, _c = _a.accountInfo, themesCount = _c.themesCount, themesLimit = _c.themesLimit, themes = _a.themes, loading = _a.loading, sortType = _a.sortType, search = _a.search, userUseCases = _a.userUseCases, onSortChange = _a.onSortChange, onSearch = _a.onSearch, onDeleteTheme = _a.onDeleteTheme;
    var sortTypes = [
        { value: 'NAME', label: l('name', 'themesSort') },
        { value: 'DATE', label: l('date of creation', 'themesSort') },
        { value: 'MENTIONS', label: l('number of mentions', 'themesSort') }
    ];
    return ((0,jsx_runtime.jsxs)("div", ThemesPage_assign({ className: classnames_default()(ThemesPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Topics') }), (0,jsx_runtime.jsxs)("div", ThemesPage_assign({ className: classnames_default()(ThemesPage.header) }, { children: [(0,jsx_runtime.jsxs)("div", ThemesPage_assign({ className: classnames_default()(ThemesPage.titleContainer) }, { children: [(0,jsx_runtime.jsx)(H1/* default */.A, { children: l('Topics') }), themesCount && themesLimit && ((0,jsx_runtime.jsxs)("div", ThemesPage_assign({ className: classnames_default()(ThemesPage.topicsLimitContainer) }, { children: [(0,jsx_runtime.jsx)("span", ThemesPage_assign({ className: classnames_default()(ThemesPage.topicsUsed) }, { children: themesCount })), ' / ', (0,jsx_runtime.jsx)("span", ThemesPage_assign({ className: classnames_default()(ThemesPage.topicsTotal) }, { children: themesLimit }))] })))] })), (0,jsx_runtime.jsx)("div", ThemesPage_assign({ className: classnames_default()(ThemesPage.toolbar) }, { children: (0,jsx_runtime.jsx)(CreateThemeButton_CreateThemeButton, {}) }))] })), (0,jsx_runtime.jsxs)(Card/* default */.A, ThemesPage_assign({ noPadding: true, className: classnames_default()((_b = {}, _b[ThemesPage.loading] = loading, _b)) }, { children: [!loading && (0,jsx_runtime.jsx)(SearchSort/* default */.A, { sortTypes: sortTypes, search: search, selectedSortType: sortType, onSearch: onSearch, onSortChange: onSortChange }), (0,jsx_runtime.jsx)(Loader/* default */.A, ThemesPage_assign({ loaded: !loading, empty: !themes.length, emptyState: (0,jsx_runtime.jsx)(ThemePageEmptyState, { search: search }) }, { children: (0,jsx_runtime.jsx)(dist_es/* WindowScroller */.PG, ThemesPage_assign({ scrollingResetTimeInterval: 500 }, { children: function (_a) {
                                var height = _a.height, scrollTop = _a.scrollTop;
                                return ((0,jsx_runtime.jsx)(dist_es/* AutoSizer */.t$, ThemesPage_assign({ disableHeight: true }, { children: function (_a) {
                                        var width = _a.width;
                                        return ((0,jsx_runtime.jsx)(dist_es/* List */.B8, { autoHeight: true, height: height, width: width, deferredMeasurementCache: cache, rowHeight: cache.rowHeight, rowCount: themes && themes.length, rowRenderer: function (_a) {
                                                var key = _a.key, index = _a.index, style = _a.style, parent = _a.parent;
                                                var theme = themes[index];
                                                return ((0,jsx_runtime.jsx)(dist_es/* CellMeasurer */.dl, ThemesPage_assign({ cache: cache, parent: parent, columnIndex: 0, rowIndex: index }, { children: (0,jsx_runtime.jsx)("div", ThemesPage_assign({ style: style, className: classnames_default()(ThemesPage.topic) }, { children: (0,jsx_runtime.jsx)(other_Theme_Theme, { topic: theme, showExplore: showExplore, onDeleteTheme: onDeleteTheme }) })) }), key));
                                            }, scrollTop: scrollTop }));
                                    } })));
                            } })) }))] })), !loading && (0,jsx_runtime.jsx)(EducationalMaterials, { userUseCases: userUseCases })] })));
};
/* harmony default export */ const components_ThemesPage = ((0,react.memo)(ThemesPage_ThemesPage));

;// CONCATENATED MODULE: ./src/containers/ThemesPage/ThemesPage.tsx
var ThemesPage_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();










// TODO: Move themes display / search / sort to ThemesList component. Then move ThemesPage to pages
var ThemesPageContainer = /** @class */ (function (_super) {
    ThemesPage_extends(ThemesPageContainer, _super);
    function ThemesPageContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleSortChange = function (_a) {
            var value = _a.value;
            _this.props.sortThemes({ sortType: value });
        };
        _this.handleSearch = function (searchQuery) {
            _this.props.searchThemes({ searchQuery: searchQuery });
        };
        _this.handleConfirmDeletion = function (_a) {
            var themeId = _a.themeId, themeName = _a.themeName;
            confirmThemeDeletion(themeName).then(function () { return _this.props.deleteTheme({ themeId: themeId }); });
        };
        return _this;
    }
    ThemesPageContainer.prototype.componentDidMount = function () {
        this.props.fetchThemes();
    };
    ThemesPageContainer.prototype.componentDidUpdate = function (prevProps) {
        var _a = this.props, loading = _a.loading, themes = _a.themes, sendAnalyticalEvent = _a.sendAnalyticalEvent;
        if (prevProps.loading && !loading) {
            sendAnalyticalEvent({ eventType: 'Themes page: loaded', properties: { isEmpty: !themes.length } });
        }
    };
    ThemesPageContainer.prototype.render = function () {
        var _a = this.props, themes = _a.themes, showExplore = _a.showExplore, sortType = _a.sortType, search = _a.search, accountInfo = _a.accountInfo, loading = _a.loading, userUseCases = _a.userUseCases;
        return ((0,jsx_runtime.jsx)(components_ThemesPage, { showExplore: showExplore, loading: loading && themes.length === 0, accountInfo: accountInfo, themes: themes, sortType: sortType, search: search, userUseCases: userUseCases, onSortChange: this.handleSortChange, onSearch: this.handleSearch, onDeleteTheme: this.handleConfirmDeletion }));
    };
    return ThemesPageContainer;
}(react.PureComponent));
/* harmony default export */ const containers_ThemesPage_ThemesPage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    showExplore: (0,currentUser_selectors/* showExplore */.B9)(state),
    sortType: (0,themes_selectors/* getSortType */.BN)(state),
    search: (0,themes_selectors/* getSearchQuery */.V8)(state),
    themes: (0,themes_selectors/* getFilteredThemes */.qn)(state),
    accountInfo: (0,account_selectors/* getAccountInfo */.Gf)(state),
    loading: (0,themes_selectors/* getIsThemesLoading */.$i)(state),
    // @ts-ignore
    userUseCases: (0,currentUser_selectors/* getCurrentUserUseCases */.dh)(state),
}); }, {
    fetchThemes: themes_model/* themesModel */.i.action.fetchThemes,
    searchThemes: themes_model/* themesModel */.i.action.searchThemes,
    deleteTheme: themes_model/* themesModel */.i.action.deleteTheme,
    sortThemes: themes_model/* themesModel */.i.action.sortThemes,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(ThemesPageContainer));

;// CONCATENATED MODULE: ./src/containers/ThemesPage/index.ts


// EXTERNAL MODULE: ./node_modules/lodash/isNil.js
var isNil = __webpack_require__("J2iB");
var isNil_default = /*#__PURE__*/__webpack_require__.n(isNil);
// EXTERNAL MODULE: ./src/api/Hub.js
var Hub = __webpack_require__("ZHGk");
;// CONCATENATED MODULE: ./src/components/ui/FixedAlert/FixedAlert.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FixedAlert = ({"container":"zINdi8ITyeWy1shEuTKx","base":"Ld0jvODohMThurAvc9vU","critical":"tF5nVQb3EDfGHXP50VjT","text":"tmYXca00s1h994KNS655","closeButton":"juikOlkUTjwZ2qnZ6ZiS","closeIcon":"sH_2WiGWvjfs4HMVgT1Z"});
;// CONCATENATED MODULE: ./src/components/ui/FixedAlert/FixedAlert.tsx
var FixedAlert_assign = (undefined && undefined.__assign) || function () {
    FixedAlert_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return FixedAlert_assign.apply(this, arguments);
};
var FixedAlert_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





var FixedAlert_FixedAlert = function (_a) {
    var _b;
    var text = _a.text, closable = _a.closable, critical = _a.critical, className = _a.className, onClick = _a.onClick, onClose = _a.onClose;
    var _c = FixedAlert_read((0,react.useState)(true), 2), shouldShow = _c[0], toggleAppearance = _c[1];
    var handleClose = function () {
        if (onClose) {
            onClose();
        }
        toggleAppearance(false);
    };
    if (!shouldShow) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", FixedAlert_assign({ className: classnames_default()(FixedAlert.container) }, { children: (0,jsx_runtime.jsxs)("div", FixedAlert_assign({ className: classnames_default()(className, FixedAlert.base, (_b = {}, _b[FixedAlert.critical] = critical, _b)) }, { children: [(0,jsx_runtime.jsx)("div", FixedAlert_assign({ className: classnames_default()(FixedAlert.text), onClick: onClick }, { children: text })), closable && ((0,jsx_runtime.jsx)("div", FixedAlert_assign({ className: classnames_default()(FixedAlert.closeButton), onClick: handleClose }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { small: true, iconType: "close", color: "white", className: classnames_default()(FixedAlert.closeIcon) }) })))] })) })));
};
/* harmony default export */ const ui_FixedAlert_FixedAlert = ((0,react.memo)(FixedAlert_FixedAlert));

;// CONCATENATED MODULE: ./src/components/ui/FixedAlert/index.ts


;// CONCATENATED MODULE: ./src/containers/IntegrationAlert/components/IntegrationAlert.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_IntegrationAlert = ({"base":"bJe_NIxMeYFsaFezx9_Y","integrationLogo":"hTqaISDLxxOVtWVdECHc","content":"lHLQnpMEa_UdHwVGm7JM","textContainer":"uk_KavEbmiyz5D1_CNUR","link":"IMAG9O2Y48lDYSD8RWp1"});
;// CONCATENATED MODULE: ./src/containers/IntegrationAlert/components/IntegrationAlert.js





var IntegrationAlert = function IntegrationAlert(_ref) {
  var onClick = _ref.onClick,
    onClose = _ref.onClose;
  return /*#__PURE__*/(0,jsx_runtime.jsx)(ui_FixedAlert_FixedAlert, {
    closable: true,
    className: classnames_default()(components_IntegrationAlert.base),
    text: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_IntegrationAlert.content),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
        src: "/static/images/integrations/whatsApp.svg",
        alt: "WhatsApp logo",
        className: classnames_default()(components_IntegrationAlert.integrationLogo)
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_IntegrationAlert.textContainer),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          children: l('Integrations are not configured in this topic')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
          className: classnames_default()(components_IntegrationAlert.link),
          onClick: onClick,
          children: l('Set up WhatsApp integration to get notifications')
        })]
      })]
    }),
    onClose: onClose
  });
};
/* harmony default export */ const IntegrationAlert_components_IntegrationAlert = (IntegrationAlert);
;// CONCATENATED MODULE: ./src/containers/IntegrationAlert/IntegrationAlert.js






function IntegrationAlert_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function IntegrationAlert_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? IntegrationAlert_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : IntegrationAlert_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function IntegrationAlert_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, IntegrationAlert_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function IntegrationAlert_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (IntegrationAlert_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }










var IntegrationAlertContainer = /*#__PURE__*/function (_PureComponent) {
  function IntegrationAlertContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, IntegrationAlertContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = IntegrationAlert_callSuper(this, IntegrationAlertContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleClick", function () {
      var _this$props = _this.props,
        location = _this$props.location,
        themeId = _this$props.themeId;
      _this.props.push({
        pathname: "/themes/".concat(themeId, "/settings/integrations"),
        query: IntegrationAlert_objectSpread({}, location.query)
      });
      _this.props.sendAnalyticalEvent({
        eventType: 'WhatsApp alert: clicked'
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleClose", function () {
      _this.props.updateUiSettings({
        inviteToIntegrationsSeen: true
      });
      _this.props.sendAnalyticalEvent({
        eventType: 'WhatsApp alert: closed'
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(IntegrationAlertContainer, _PureComponent);
  return (0,createClass/* default */.A)(IntegrationAlertContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.sendAnalyticalEvent({
        eventType: 'WhatsApp alert: showed'
      });
    }
  }, {
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationAlert_components_IntegrationAlert, {
        onClick: this.handleClick,
        onClose: this.handleClose
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const IntegrationAlert_IntegrationAlert = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state)
  };
}, {
  push: routing_actions/* push */.VC,
  updateUiSettings: currentUser_model/* currentUserStateModel */.b.action.updateUiSettings,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(IntegrationAlertContainer));
;// CONCATENATED MODULE: ./src/containers/IntegrationAlert/index.js

// EXTERNAL MODULE: ./src/models/Billing.ts
var Billing = __webpack_require__("ejQr");
// EXTERNAL MODULE: ./src/utils/dates/formats.ts
var formats = __webpack_require__("RYjn");
// EXTERNAL MODULE: ./src/state/billing/selectors.ts
var billing_selectors = __webpack_require__("oqJG");
;// CONCATENATED MODULE: ./src/containers/AccountExpirationAlert/AccountExpirationAlert.tsx
var AccountExpirationAlert_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();











var AccountExpirationAlert = /** @class */ (function (_super) {
    AccountExpirationAlert_extends(AccountExpirationAlert, _super);
    function AccountExpirationAlert() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleAlertClick = function () {
            var type = _this.props.type;
            if (type === 'paidExpiring' || type === 'paidExpired') {
                (0,utils_intercom/* openChat */.JJ)();
            }
        };
        return _this;
    }
    Object.defineProperty(AccountExpirationAlert.prototype, "alertText", {
        get: function () {
            return {
                trialExpiring: this.trialText,
                paidExpiring: this.paidExpiringText,
                paidExpired: this.paidExpiredText,
            };
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(AccountExpirationAlert.prototype, "trialText", {
        get: function () {
            var expireInDays = this.props.expireInDays;
            return expireInDays === 0
                ? l('Your trial expires today! Please contact our support team to continue using YouScan')
                : sprintf(nl('Your trial will expire in %d day', 'Your trial will expire in %d days', expireInDays), expireInDays);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(AccountExpirationAlert.prototype, "paidExpiringText", {
        get: function () {
            var _a = this.props, subscription = _a.subscription, expirationDate = _a.expirationDate;
            var paymentMethod = subscription && subscription.getIn(['billingInfo', 'paymentMethod']);
            return paymentMethod === Billing/* PaymentMethod */.g5.Invoicing
                ? sprintf(l('Your subscription expires on %s. Please, visit billing page in the account settings'), (0,formats/* formatDateWithoutYear */.z8)(new Date(expirationDate)))
                : sprintf(l('Your subscription expires on %s. Please, contact our support team'), (0,formats/* formatDateWithoutYear */.z8)(new Date(expirationDate)));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(AccountExpirationAlert.prototype, "paidExpiredText", {
        get: function () {
            var _a = this.props, deactivationDate = _a.deactivationDate, willBeDeactivatedInDays = _a.willBeDeactivatedInDays, subscription = _a.subscription;
            var paymentMethod = subscription && subscription.getIn(['billingInfo', 'paymentMethod']);
            if (willBeDeactivatedInDays < 1) {
                return paymentMethod === Billing/* PaymentMethod */.g5.Stripe
                    ? l('Your payment is due. Please, check your card balance — today we\'ll charge your card in order to renew your subscription')
                    : l('Your paid period is over. Renew your subscription or your account will be automatically deactivated today!');
            }
            if (willBeDeactivatedInDays < 3) {
                return paymentMethod === Billing/* PaymentMethod */.g5.Stripe
                    ? sprintf(l('Your payment is due %s. Please, check your card balance — on %s we\'ll charge your card in order to renew your subscription'), (0,formats/* formatDateWithoutYear */.z8)(new Date(deactivationDate)), (0,formats/* formatDateWithoutYear */.z8)(new Date(deactivationDate)))
                    : l('Your paid period is over. Renew your subscription or your account will be automatically deactivated ')
                        + moment_default()(deactivationDate).fromNow();
            }
            return l('Your paid period is over. Renew your subscription or your account will be automatically deactivated');
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(AccountExpirationAlert.prototype, "closable", {
        get: function () {
            var _a = this.props, type = _a.type, expireInDays = _a.expireInDays;
            var trialExpiringToday = type === 'trialExpiring' && expireInDays === 0;
            var shouldStayOpen = trialExpiringToday || type === 'paidExpired';
            return !shouldStayOpen;
        },
        enumerable: false,
        configurable: true
    });
    AccountExpirationAlert.prototype.render = function () {
        var _a = this.props, type = _a.type, critical = _a.critical, currentUser = _a.currentUser;
        var paidAccountExpiration = type === 'paidExpiring' || type === 'paidExpired';
        var shouldShowPaidAlert = currentUser && currentUser.isAccountAdmin && paidAccountExpiration;
        var shouldShowAlert = type === 'trialExpiring' || shouldShowPaidAlert;
        if (!shouldShowAlert) {
            return null;
        }
        return ((0,jsx_runtime.jsx)(ui_FixedAlert_FixedAlert, { critical: critical, closable: this.closable, text: this.alertText[type], onClick: this.handleAlertClick }));
    };
    return AccountExpirationAlert;
}(react.PureComponent));
/* harmony default export */ const AccountExpirationAlert_AccountExpirationAlert = ((0,react_redux/* connect */.Ng)(function (state) {
    var expirationAlert = (0,account_selectors/* getAccountExpirationAlert */.pb)(state);
    return {
        subscription: (0,billing_selectors/* getBillingSubscription */.Zj)(state),
        type: expirationAlert.type,
        critical: expirationAlert.critical,
        expireInDays: expirationAlert.expireInDays,
        willBeDeactivatedInDays: expirationAlert.willBeDeactivatedInDays,
        deactivationDate: (0,account_selectors/* getExpectedDeactivationDate */.yW)(state),
        expirationDate: (0,account_selectors/* getAccountExpirationDate */.Bh)(state),
        currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    };
})(AccountExpirationAlert));

;// CONCATENATED MODULE: ./src/containers/AccountExpirationAlert/index.ts


;// CONCATENATED MODULE: ./src/containers/LoggedInLayout/index.js







function LoggedInLayout_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, LoggedInLayout_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function LoggedInLayout_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (LoggedInLayout_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/* eslint-disable no-console */
















var LoggedInLayoutContainer = /*#__PURE__*/function (_PureComponent) {
  function LoggedInLayoutContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, LoggedInLayoutContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = LoggedInLayout_callSuper(this, LoggedInLayoutContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "onMutation", function (mutations) {
      if (mutations.some(utils_intercom/* isIntercomRendered */.Lm)) {
        _this.toggleIntercom();
      }
    });
    return _this;
  }
  (0,inherits/* default */.A)(LoggedInLayoutContainer, _PureComponent);
  return (0,createClass/* default */.A)(LoggedInLayoutContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this2 = this;
      this.$observer = new MutationObserver(this.onMutation);
      this.$observer.observe(document.querySelector('body'), {
        childList: true
      });
      this.props.initHubConnection({
        eventHandlers: [{
          event: Hub/* EVENT_TYPES */.Ru.TASKS,
          handler: function handler(data) {
            return _this2.props.receiveTaskEvent({
              data: data
            });
          }
        }, {
          event: Hub/* EVENT_TYPES */.Ru.MENTIONS_COUNT,
          handler: function handler(data) {
            return _this2.props.receiveMentionCountEvent({
              data: data
            });
          }
        }]
      });
      this.toggleIntercom();
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      if (this.props.showIntroductionVideo && this.props.location.pathname !== '/me/role') {
        this.props.showModal('introductionModal');
      }
      this.toggleIntercom();
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this.$observer.disconnect();
    }
  }, {
    key: "toggleIntercom",
    value: function toggleIntercom() {
      if (isNil_default()(this.props.disableIntercom)) {
        console.info('disableIntercom was Nil');
        return;
      }
      var intercom = (0,utils_intercom/* getIntercomNode */.KQ)();
      if (!intercom) {
        console.info('Intercom container didn\'t render');
        return;
      }
      if (window.getComputedStyle(intercom).display === 'none' && this.props.disableIntercom) {
        console.info('Intercom already hidden from css');
        return;
      }
      this.$observer.disconnect();
      if (this.props.disableIntercom) {
        intercom.style = 'display: none';
        console.info('Intercom container hidden', {
          intercom: intercom,
          disableIntercom: this.props.disableIntercom
        });
        return;
      }
      (0,utils_intercom/* updateWithThrottle */.uA)();
      intercom.style = 'display: block';
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        location = _this$props.location,
        children = _this$props.children,
        showExpirationAlert = _this$props.showExpirationAlert,
        showIntegrationAlert = _this$props.showIntegrationAlert;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(react.Suspense, {
          fallback: /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.A, {}),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {})
        }), showExpirationAlert && location.pathname !== '/me/role' && /*#__PURE__*/(0,jsx_runtime.jsx)(AccountExpirationAlert_AccountExpirationAlert, {}), showIntegrationAlert && /*#__PURE__*/(0,jsx_runtime.jsx)(IntegrationAlert_IntegrationAlert, {})]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const LoggedInLayout = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    showExpirationAlert: (0,account_selectors/* shouldShowExpirationAlert */.yw)(state),
    showIntroductionVideo: (0,currentUser_selectors/* shouldShowIntroductionVideo */.yh)(state),
    showIntegrationAlert: (0,themes_selectors/* shouldShowIntegrationAlert */.dz)(state),
    disableIntercom: !(0,account_selectors/* isIntercomEnabled */.Hg)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  receiveTaskEvent: hubEvents_model/* hubEventsModel */.m.action.receiveTasksHubEvent,
  receiveMentionCountEvent: hubEvents_model/* hubEventsModel */.m.action.receiveMentionCountHubEvent,
  initHubConnection: hubEvents_model/* hubEventsModel */.m.action.initHubConnection
}))(LoggedInLayoutContainer));
// EXTERNAL MODULE: ./node_modules/react-infinite-scroll-component/dist/index.es.js
var index_es = __webpack_require__("GgLZ");
// EXTERNAL MODULE: ./src/hoc/withFilter.js
var withFilter = __webpack_require__("EPN4");
;// CONCATENATED MODULE: ./src/hooks/useScroll.ts
var useScroll_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
/* eslint-disable no-underscore-dangle */
/* eslint-disable import/prefer-default-export */

var THEME_LAYOUT_CONTENT_SELECTOR = '[data-custom-class-name="ThemeLayout__content"]';
var useScrollCheck = window.ResizeObserver
    ? function () {
        var _a = useScroll_read((0,react.useState)(false), 2), hasScroll = _a[0], setHasScroll = _a[1];
        var resizeObserver = (0,react.useMemo)(function () {
            return new ResizeObserver(function (entries) {
                var _hasScroll = entries[0].contentRect.height > window.innerHeight;
                setHasScroll(_hasScroll);
            });
        }, []);
        (0,react.useEffect)(function () {
            resizeObserver.observe(document.querySelector(THEME_LAYOUT_CONTENT_SELECTOR));
            return function () {
                resizeObserver.disconnect();
            };
        }, []);
        (0,react.useEffect)(function () {
            if (hasScroll) {
                resizeObserver.disconnect();
            }
        }, [hasScroll]);
        return { hasScroll: hasScroll };
    }
    // For old browser (IE)
    : function () {
        var _a = useScroll_read((0,react.useState)(false), 2), hasScroll = _a[0], setHasScroll = _a[1];
        var _b = useScroll_read((0,react.useState)(null), 2), savedNode = _b[0], setSavedNode = _b[1];
        (0,react.useEffect)(function () {
            var node = savedNode || document.querySelector(THEME_LAYOUT_CONTENT_SELECTOR);
            var _hasScroll = (node === null || node === void 0 ? void 0 : node.clientHeight) > window.innerHeight;
            setHasScroll(_hasScroll);
            if (!savedNode) {
                setSavedNode(node);
            }
        });
        return { hasScroll: hasScroll };
    };

// EXTERNAL MODULE: ./src/state/gallery/selectors.ts
var gallery_selectors = __webpack_require__("/Jcm");
// EXTERNAL MODULE: ./node_modules/react-masonry-component/lib/index.js
var react_masonry_component_lib = __webpack_require__("pQUg");
var react_masonry_component_lib_default = /*#__PURE__*/__webpack_require__.n(react_masonry_component_lib);
// EXTERNAL MODULE: ./src/components/ui/ProcessedImage/index.tsx + 3 modules
var ProcessedImage = __webpack_require__("PsVH");
// EXTERNAL MODULE: ./src/components/other/SuspiciousImageHandler/index.ts + 2 modules
var SuspiciousImageHandler = __webpack_require__("qWR2");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/components/CollageItem/CollageItem.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const CollageItem_CollageItem = ({"overlayedBlock":"Z8yHvUb1H5SCREqivesT","flexCenter":"Bt8N5dlzQNgmsNVB85Gz","smartFeature":"h5fcNd6PI9SqWPdZa93n","tag":"bGV50OGy_4yROP8YGEqp","visibleScrollBar":"DyE3AzmVoJbgWYvdOiLa","hiddenScrollBar":"C0gjFsJLAnU634vL5qOC","base":"aXwSyzYmY15SG1l919Ub","overlay":"f6NI7AiEy4IUm0iANXE1","preloader":"eok9IDBQB7SHKcT3jiRD","inner":"sS7_K0uu43DySNls71iB","innerOverlay":"KsVqys77woPJ7ax5V7cJ","image":"xv2xzsLI07cnEKzlD_Fl","hidden":"mL5ohnwvKAqpcbok_UcP","info":"W89pKsJoaSvYuDGIm2dq","author":"QiqgTWMZnx9PSYwKhrkG","source":"fX6UXw3px_UKr3MMxAV4","error":"CczgqId1KlFNOQyq_VBS"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/components/CollageItem/CollageItem.js






function CollageItem_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, CollageItem_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function CollageItem_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (CollageItem_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var CollageItem = /*#__PURE__*/function (_Component) {
  function CollageItem() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CollageItem);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = CollageItem_callSuper(this, CollageItem, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      ready: false,
      loadError: false,
      isSuspicious: _this.props.isSuspiciousContent
    });
    (0,defineProperty/* default */.A)(_this, "handleClick", function () {
      var onClick = _this.props.onClick;
      var isSuspicious = _this.state.isSuspicious;
      if (!isSuspicious) onClick();
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeIsSuspicious", function () {
      _this.setState({
        isSuspicious: false
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleLoadSuccess", function () {
      _this.setState({
        ready: true
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleLoadFail", function () {
      _this.setState({
        loadError: true
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderImage", function () {
      var _this$props = _this.props,
        imageBrands = _this$props.imageBrands,
        imageUrl = _this$props.imageUrl,
        title = _this$props.title,
        ocrTexts = _this$props.ocrTexts;
      var _this$state = _this.state,
        ready = _this$state.ready,
        isSuspicious = _this$state.isSuspicious;
      if (!ready) return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(CollageItem_CollageItem.preloader)
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)(SuspiciousImageHandler/* default */.A, {
        isSuspicious: isSuspicious,
        onClick: _this.handleChangeIsSuspicious,
        children: !imageBrands && !ocrTexts ? /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
          alt: title,
          src: imageUrl,
          className: classnames_default()(CollageItem_CollageItem.image),
          onError: _this.handleLoadFail
        }) : /*#__PURE__*/(0,jsx_runtime.jsx)(ProcessedImage/* default */.A, {
          imageBrands: imageBrands,
          ocrTexts: ocrTexts,
          alt: title,
          src: imageUrl,
          className: classnames_default()(CollageItem_CollageItem.image),
          captionClassName: classnames_default()(CollageItem_CollageItem.hidden),
          onError: _this.handleLoadFail
        })
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(CollageItem, _Component);
  return (0,createClass/* default */.A)(CollageItem, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var image = new Image();
      image.src = this.props.imageUrl;
      image.onload = this.handleLoadSuccess;
      image.onerror = this.handleLoadFail;
    }
  }, {
    key: "render",
    value: function render() {
      var loadError = this.state.loadError;
      var _this$props2 = this.props,
        authorName = _this$props2.authorName,
        authorAvatarUrl = _this$props2.authorAvatarUrl,
        sourceName = _this$props2.sourceName,
        className = _this$props2.className;
      if (loadError) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        role: "presentation",
        className: classnames_default()(CollageItem_CollageItem.base, className),
        onClick: this.handleClick,
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(CollageItem_CollageItem.inner),
          children: [this.renderImage(), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(CollageItem_CollageItem.overlay),
            children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(CollageItem_CollageItem.innerOverlay),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Avatar/* default */.A, {
                rounded: true,
                width: "100%",
                alt: authorName,
                imageUrl: authorAvatarUrl
              }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                className: classnames_default()(CollageItem_CollageItem.info),
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                  className: classnames_default()(CollageItem_CollageItem.author),
                  children: authorName
                }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                  className: classnames_default()(CollageItem_CollageItem.source),
                  children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
                    name: sourceName
                  }), " ", sourceName]
                })]
              })]
            })
          })]
        })
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const components_CollageItem_CollageItem = (CollageItem);
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/components/CollageItem/index.js

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/Gallery.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Gallery = ({"moreButton":"C91DnCe1vfwI1uu0m1OH","masonry":"aGRNeiMqY6m6Pmf3Se85"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/components/Collage/Collage.tsx
var Collage_assign = (undefined && undefined.__assign) || function () {
    Collage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Collage_assign.apply(this, arguments);
};
var Collage_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};







var Collage = function (_a) {
    var _b;
    var _c = _a.masonryItemClassName, masonryItemClassName = _c === void 0 ? 'masonryItem' : _c, collageMentions = _a.collageMentions, filter = _a.filter, onImageClick = _a.onImageClick;
    var _d = Collage_read((0,react.useState)(null), 2), realLoadedImages = _d[0], setRealLoadedImages = _d[1];
    var masonry = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        if (masonry.current) {
            setRealLoadedImages(masonry.current.masonry.items.filter(function (i) { return i.size.width && i.size.height; }).length);
        }
    }, [(_b = masonry === null || masonry === void 0 ? void 0 : masonry.current) === null || _b === void 0 ? void 0 : _b.masonry.items.length, filter]);
    if (collageMentions.length === 0 || (masonry.current && realLoadedImages === 0)) {
        return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/empty_gallery.svg", title: l('No images'), message: l('They may have expired, but statistics on them are still available. '
                + "To see new images, select the period closer to today's date.") }));
    }
    return ((0,jsx_runtime.jsxs)("div", Collage_assign({ style: { overflow: 'hidden' } }, { children: [(0,jsx_runtime.jsx)((react_masonry_component_lib_default()), Collage_assign({ ref: masonry, enableResizableChildren: true, className: Gallery.masonry, options: {
                    columnWidth: ".".concat(masonryItemClassName),
                    transitionDuration: '0.2s',
                    itemSelector: ".".concat(masonryItemClassName),
                    fitWidth: true,
                    horizontalOrder: true,
                    percentPosition: true,
                } }, { children: collageMentions.map(function (collageMention) {
                    var _a, _b, _c;
                    return ((0,jsx_runtime.jsx)(components_CollageItem_CollageItem, { isSuspiciousContent: (0,isMentionWithSuspiciousContent/* default */.A)(collageMention.systemTags), className: masonryItemClassName, id: collageMention.id, imageUrl: collageMention.imageUrl, imageBrands: collageMention.imageBrands, ocrTexts: collageMention.ocrTexts, authorName: (_a = collageMention.author) === null || _a === void 0 ? void 0 : _a.name, authorAvatarUrl: (_b = collageMention.author) === null || _b === void 0 ? void 0 : _b.avatarUrl, sourceName: (_c = collageMention.source) === null || _c === void 0 ? void 0 : _c.name, onClick: onImageClick(collageMention.id) }, collageMention.id));
                }) })), realLoadedImages !== null && realLoadedImages < 10 && ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/empty_gallery.svg", title: l('Few images?'), message: l('Some of the older images are not available due to Facebook, Instagram and TikTok content expiration policies.') }))] })));
};
/* harmony default export */ const Collage_Collage = ((0,react.memo)(Collage));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/components/Collage/index.ts


;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/Gallery.tsx
var Gallery_assign = (undefined && undefined.__assign) || function () {
    Gallery_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Gallery_assign.apply(this, arguments);
};
var Gallery_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



















var getAnalyticalEventPayload = function (filter) {
    var _a = (filter === null || filter === void 0 ? void 0 : filter.toJS()) || {}, from = _a.from, to = _a.to;
    return {
        periodDepth: from ? (0,dateUtils/* getDaysDiff */.Du)(Date.parse(from), Date.now()) : 0,
        periodDays: from && to ? (0,dateUtils/* getDaysDiff */.Du)(Date.parse(from), Date.parse(to)) : 0,
    };
};
var Gallery_Gallery = function (_a) {
    var children = _a.children, loading = _a.loading, themeId = _a.themeId, hasMore = _a.hasMore, galleryMentions = _a.galleryMentions, filter = _a.filter, update = _a.update, fetchMoreGalleryMentions = _a.fetchMoreGalleryMentions, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = Gallery_read((0,react.useState)(true), 2), isFirstLoad = _b[0], setIsFirstLoad = _b[1];
    /**
     * We get the filter from URL query.
     * On every filter update we have 2 @@router/LOCATION_CHANGE events
     * so selector is recalculated twice
     */
    var _c = Gallery_read((0,react.useState)(true), 2), isSecondFilterUpdate = _c[0], setIsSecondFilterUpdate = _c[1];
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({
            eventType: 'Gallery: page opened',
            properties: getAnalyticalEventPayload(filter),
        });
        setIsFirstLoad(false);
    }, []);
    // eslint-disable-next-line consistent-return
    (0,react.useEffect)(function () {
        if (isFirstLoad) {
            return function () { };
        }
        if (!isSecondFilterUpdate) {
            sendAnalyticalEvent({
                eventType: 'Gallery: filter applied',
                properties: getAnalyticalEventPayload(filter),
            });
        }
        setIsSecondFilterUpdate(!isSecondFilterUpdate);
    }, [filter]);
    var handleFetchMoreMentions = function () {
        fetchMoreGalleryMentions();
        sendAnalyticalEvent({
            eventType: 'Gallery: "load more" clicked',
        });
    };
    var handleOpenMention = function (id) { return function () {
        update({ pathname: "/themes/".concat(themeId, "/gallery/images/").concat(id) });
    }; };
    var hasScroll = useScrollCheck().hasScroll;
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, Gallery_assign({ loaded: !loading }, { children: function () {
            return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)(index_es/* default */.A, Gallery_assign({ dataLength: galleryMentions.length, next: handleFetchMoreMentions, hasMore: hasMore, loader: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}), style: { overflow: 'hidden' } }, { children: [(0,jsx_runtime.jsx)(Collage_Collage, { masonryItemClassName: "grid-item", collageMentions: galleryMentions, filter: filter, onImageClick: handleOpenMention }), (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {})] })), !hasScroll ? ((0,jsx_runtime.jsx)("div", Gallery_assign({ className: classnames_default()(Gallery.moreButton), onClick: handleFetchMoreMentions }, { children: l('Load more') }))) : null] }));
        } })));
};
/* harmony default export */ const imagesDashboard_Gallery_Gallery = ((0,withRouter/* withRouter */.y)((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    hasMore: (0,gallery_selectors/* hasMoreGalleryMentions */.b4)(state),
    galleryMentions: (0,gallery_selectors/* getGalleryMentions */.Ex)(state),
    loading: (0,gallery_selectors/* isLoadingGalleryMentions */.yi)(state),
}); }, {
    fetchGalleryMentions: gallery_model/* galleryModel */.k.action.fetchMentions,
    fetchMoreGalleryMentions: function () { return gallery_model/* galleryModel */.k.action.fetchMentions({ more: true }); },
    update: routing_actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})((0,withFilter/* default */.A)(function (props) {
    props.fetchGalleryMentions();
})(Gallery_Gallery))));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Gallery/index.ts


;// CONCATENATED MODULE: ./src/utils/translations/segmentationTranslations.js
/* eslint-disable max-len */

var getTranslation = function getTranslation(key, context) {
  if (context === 'team') {
    return getTeamTranslations()[key] || key;
  }
  return getUseCaseTranslations()[key] || key;
};
var getTeamTranslations = function getTeamTranslations() {
  return {
    prAndReputation: l('PR and Reputation'),
    smm: l('SMM'),
    marketing: l('Marketing'),
    analyticsAndConsumerInsights: l('Analytics and Consumer Insights'),
    customerService: l('Customer Service'),
    brandManagement: l('Brand management'),
    sales: l('Sales'),
    humanResources: l('Human Resources'),
    other: l('Other')
  };
};
var getUseCaseTranslations = function getUseCaseTranslations() {
  return {
    other: l('Other'),
    brandHealthTracking: l('Brand health tracking'),
    crisisManagement: l('Crisis management'),
    customerSupport: l('Customer support'),
    customerExperienceAnalysis: l('Customer experience analysis'),
    marketResearch: l('Market research'),
    trendsAnalysis: l('Trends analysis'),
    campaignAnalysis: l('Campaign analysis'),
    influencerMarketing: l('Influencer marketing'),
    hrBrandTracking: l('HR brand tracking'),
    ownedCommunityMonitoring: l('Owned community monitoring'),
    salesPitchesPreparation: l('Sales pitches preparation')
  };
};
;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/utils/useSegmentationSurvey.js



/* eslint-disable no-restricted-syntax */
/* eslint-disable guard-for-in */



var prepareSurvey = function prepareSurvey(teams, useCases) {
  return {
    surveySteps: [{
      title: l('Hello 👋 Let’s get to know each other!'),
      subtitle: l('Please answer 2 simple questions to see how YouScan can best help you.'),
      question: l('What\'s your team responsible for?'),
      options: teams,
      maxChoicesCount: 1,
      category: 'team'
    }, {
      title: l('Hello 👋 Let’s get to know each other!'),
      subtitle: l('Please answer 2 simple questions to see how YouScan can best help you.'),
      question: l('You will use YouScan primarily for:'),
      options: useCases,
      maxChoicesCount: 3,
      category: 'useCases'
    }],
    completeStep: {
      title: l('Thank you for your answer'),
      subtitle: l('Now we know your goal and are ready to help you')
    }
  };
};
function useSegmentationSurvey() {
  var _useState = (0,react.useState)(null),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    survey = _useState2[0],
    setSurvey = _useState2[1];
  var fetch = /*#__PURE__*/function () {
    var _ref = (0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee() {
      var response;
      return regenerator_default().wrap(function _callee$(_context) {
        while (1) switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return apiSingleton/* default */.A.users.getSegmentationOptions();
          case 2:
            response = _context.sent;
            setSurvey(prepareSurvey(response.teams, response.useCases));
          case 4:
          case "end":
            return _context.stop();
        }
      }, _callee);
    }));
    return function fetch() {
      return _ref.apply(this, arguments);
    };
  }();
  (0,react.useEffect)(function () {
    fetch();
  }, []);
  return survey;
}
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
var toConsumableArray = __webpack_require__("+BzW");
// EXTERNAL MODULE: ./src/components/ui/Expander/index.tsx + 1 modules
var Expander = __webpack_require__("k2G7");
;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/components/SegmentationSurvey/SegmentationSurvey.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SegmentationSurvey_SegmentationSurvey = ({"base":"QUzNckteVn9p2O9YwiFD","title":"Ojz5HxCjEGd5rIKfiids","subtitle":"z7Wequ7fvRC5X5anVfe_","pollGroup":"umI0UzVNzdmGWvCN7v0Q","answers":"J5VbTjoKV4T2VHpzhpgW","question":"p2E23bw5bOOq1ZVCIE76","icon":"ZTaRYO1EjpIMdww31QMz","selected":"Fmfq1PvSfwOY3fDokvnU","questionSubtitle":"OEugXz8ksD7bIINd95Fw","options":"K5rk5IEMA_dxBPClBkgM","optionItem":"tVDnoW3LIFMtlbECJ7N6","itemText":"Dfx59IUPQH7G4RPvLKnD","input":"GItqng3va6wYFEjupggf","buttonNext":"NYSWZsSkNFCi6klNgHwY"});
;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/components/SegmentationSurvey/components/SurveyStepIcon.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SurveyStepIcon = ({"content":"lrTmn6hVBCfmecuP899g","checked":"n_kJpY30kTcwCrD3wXde","selected":"tuV_i7jUcbuI6IVpE_az"});
;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/components/SegmentationSurvey/components/SurveyStepIcon.tsx
var SurveyStepIcon_assign = (undefined && undefined.__assign) || function () {
    SurveyStepIcon_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SurveyStepIcon_assign.apply(this, arguments);
};




/**
 * SurveyStepIcon component
 */
var SurveyStepIcon_SurveyStepIcon = function (_a) {
    var _b;
    var className = _a.className, checked = _a.checked, selected = _a.selected, _c = _a.color, color = _c === void 0 ? 'primary' : _c, _d = _a.iconTypeTrue, iconTypeTrue = _d === void 0 ? 'checkbox-marked-circle' : _d, step = _a.step;
    return ((0,jsx_runtime.jsx)("span", SurveyStepIcon_assign({ className: classnames_default()(className, SurveyStepIcon.base) }, { children: (0,jsx_runtime.jsx)("span", SurveyStepIcon_assign({ className: classnames_default()(SurveyStepIcon.content, (_b = {}, _b[SurveyStepIcon.selected] = selected, _b[SurveyStepIcon.checked] = checked, _b)) }, { children: checked
                ? ((0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(SurveyStepIcon.icon), type: iconTypeTrue, color: checked ? color : undefined, size: 21 }))
                : (0,jsx_runtime.jsx)("span", { children: step }) })) })));
};
/* harmony default export */ const components_SurveyStepIcon = (SurveyStepIcon_SurveyStepIcon);

;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/components/SegmentationSurvey/SegmentationSurvey.js







function SegmentationSurvey_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SegmentationSurvey_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SegmentationSurvey_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SegmentationSurvey_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var SegmentationSurvey = /*#__PURE__*/function (_Component) {
  function SegmentationSurvey(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, SegmentationSurvey);
    _this = SegmentationSurvey_callSuper(this, SegmentationSurvey, [props]);
    (0,defineProperty/* default */.A)(_this, "initState", function () {
      var knownFields = {
        choicesCount: 0,
        isComplete: false,
        currentStep: 0,
        surveySteps: _this.props.survey.surveySteps,
        completeStep: _this.props.survey.completeStep
      };
      var steps = _this.props.survey.surveySteps;
      var dynamicFields = {};
      for (var i = 0; i < steps.length; ++i) {
        var category = steps[i].category;
        dynamicFields[category] = [];
        dynamicFields["".concat(category, "Other")] = null;
      }
      _this.state = Object.assign(knownFields, dynamicFields);
    });
    (0,defineProperty/* default */.A)(_this, "handleSelectOption", function (selectedOption, surveyStep, maxChoicesCount, category) {
      return function () {
        var currentStep = _this.state.currentStep;
        if (surveyStep < currentStep) {
          return;
        }
        if (maxChoicesCount === 1) _this.handleSingleSelect(selectedOption, category);else _this.handleMultiSelect(selectedOption, maxChoicesCount, category);
      };
    });
    (0,defineProperty/* default */.A)(_this, "handleSingleSelect", function (selectedOption, category) {
      _this.setState((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, category, [selectedOption]), "".concat(category, "Other"), null));
    });
    (0,defineProperty/* default */.A)(_this, "handleMultiSelect", function (selectedOption, maxChoicesCount, category) {
      var choicesCount = _this.state.choicesCount;
      var categoryAnswers = _this.state[category];

      // check if element exists than remove it
      var index = categoryAnswers.indexOf(selectedOption);
      if (index > -1) {
        categoryAnswers.splice(index, 1);
        _this.setState((0,defineProperty/* default */.A)({
          choicesCount: choicesCount - 1
        }, category, (0,toConsumableArray/* default */.A)(categoryAnswers)));
        if (selectedOption === 'other') _this.setState((0,defineProperty/* default */.A)({}, "".concat(category, "Other"), null));
        return;
      }
      if (choicesCount < maxChoicesCount) {
        _this.setState((0,defineProperty/* default */.A)({
          choicesCount: choicesCount + 1
        }, category, [].concat((0,toConsumableArray/* default */.A)(categoryAnswers.slice(0, choicesCount)), [selectedOption])));
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleNext", function () {
      var _this$state = _this.state,
        currentStep = _this$state.currentStep,
        surveySteps = _this$state.surveySteps;
      var nextStep = currentStep + 1;
      if (nextStep < surveySteps.length) _this.setState({
        currentStep: nextStep
      });else _this.setState({
        isComplete: true,
        currentStep: nextStep
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleOtherEdit", function (value, category, maxChoicesCount) {
      if (!value) _this.handleMultiSelect('other', maxChoicesCount, category);
      _this.setState((0,defineProperty/* default */.A)({}, "".concat(category, "Other"), value === null || value === void 0 ? void 0 : value.trim()));
    });
    (0,defineProperty/* default */.A)(_this, "changeStep", function (nextStep) {
      return function () {
        var _this$state2 = _this.state,
          currentStep = _this$state2.currentStep,
          isComplete = _this$state2.isComplete;
        if (isComplete || nextStep < currentStep) {
          _this.setState({
            isComplete: false,
            currentStep: nextStep
          });
        }
      };
    });
    (0,defineProperty/* default */.A)(_this, "handleSubmit", function () {
      var _this$state3 = _this.state,
        team = _this$state3.team,
        useCases = _this$state3.useCases,
        teamOther = _this$state3.teamOther,
        useCasesOther = _this$state3.useCasesOther;
      _this.props.onSubmit({
        team: team,
        useCases: useCases,
        teamOther: teamOther,
        useCasesOther: useCasesOther
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderTitle", function () {
      var _this$state4 = _this.state,
        currentStep = _this$state4.currentStep,
        surveySteps = _this$state4.surveySteps,
        completeStep = _this$state4.completeStep,
        isComplete = _this$state4.isComplete;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H1/* default */.A, {
          className: classnames_default()(SegmentationSurvey_SegmentationSurvey.title),
          children: isComplete ? completeStep.title : surveySteps[currentStep].title
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          className: classnames_default()(SegmentationSurvey_SegmentationSurvey.subtitle),
          children: isComplete ? completeStep.subtitle : surveySteps[currentStep].subtitle
        })]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderQuestionAnswerContainer", function (survey, surveyStep) {
      var _this$state5 = _this.state,
        currentStep = _this$state5.currentStep,
        isComplete = _this$state5.isComplete;
      var completed = currentStep > surveyStep || isComplete;
      var selected = currentStep === surveyStep;
      var answers = _this.state[survey.category];
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(SegmentationSurvey_SegmentationSurvey.question, (0,defineProperty/* default */.A)({}, SegmentationSurvey_SegmentationSurvey.selected, selected)),
        onClick: _this.changeStep(surveyStep),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_SurveyStepIcon, {
          className: classnames_default()(SegmentationSurvey_SegmentationSurvey.icon),
          step: surveyStep + 1,
          checked: completed,
          selected: selected
        }), completed ? _this.renderAnswers(answers, survey.category) : _this.renderQuestion(survey)]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderQuestion", function (survey) {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          className: classnames_default()(SegmentationSurvey_SegmentationSurvey.title),
          children: survey.question
        }), survey.maxChoicesCount > 1 && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          className: classnames_default()(SegmentationSurvey_SegmentationSurvey.questionSubtitle),
          children: sprintf(l('Choose up to %d options'), survey.maxChoicesCount)
        })]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderAnswers", function (answers, category) {
      var getTranslate = _this.props.getTranslate;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: answers.map(function (answer) {
          var translatedAnswer = getTranslate(answer, category);
          if (answer === 'other') return "".concat(translatedAnswer, " (").concat(_this.state["".concat(category, "Other")].trim(), ")");
          return translatedAnswer;
        }).join(', ')
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderOptions", function (survey, surveyStep) {
      var currentStep = _this.state.currentStep;
      var selectedAnswers = _this.state[survey.category];
      var otherWithoutComment = selectedAnswers.includes('other') && !_this.state["".concat(survey.category, "Other")];
      var isNextDisabled = selectedAnswers.length < 1 || otherWithoutComment;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(SegmentationSurvey_SegmentationSurvey.options),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Expander/* default */.A, {
          expanded: surveyStep === currentStep,
          children: [survey.options.map(function (option) {
            var selected = selectedAnswers.includes(option);
            return _this.renderOptionItem(option, selected, surveyStep, survey.maxChoicesCount, survey.category);
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            className: SegmentationSurvey_SegmentationSurvey.buttonNext,
            primary: true,
            label: "Next",
            disabled: isNextDisabled,
            onClick: _this.handleNext
          })]
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderOptionItem", function (option, selected, surveyStep, maxChoicesCount, category) {
      if (option === 'other' && selected) return _this.renderTextBox(category, maxChoicesCount);
      return _this.renderStaticOption(option, selected, surveyStep, maxChoicesCount, category, null);
    });
    (0,defineProperty/* default */.A)(_this, "renderTextBox", function (category, maxChoicesCount) {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(SegmentationSurvey_SegmentationSurvey.optionItem),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
          className: SegmentationSurvey_SegmentationSurvey.input,
          onChange: function onChange(value) {
            return _this.handleOtherEdit(value, category, maxChoicesCount);
          },
          autoFocus: true
        }), maxChoicesCount === 1 ? /*#__PURE__*/(0,jsx_runtime.jsx)(ui_RadioButton_RadioButton, {
          checked: true
        }) : /*#__PURE__*/(0,jsx_runtime.jsx)(Checkbox/* default */.A, {
          checked: true,
          value: null,
          onChange: function onChange() {
            return _this.handleOtherEdit(null, category, maxChoicesCount);
          }
        })]
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderStaticOption", function (option, selected, surveyStep, maxChoicesCount, category, value) {
      var getTranslate = _this.props.getTranslate;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(SegmentationSurvey_SegmentationSurvey.optionItem, (0,defineProperty/* default */.A)({}, SegmentationSurvey_SegmentationSurvey.selected, selected)),
        onClick: _this.handleSelectOption(option, surveyStep, maxChoicesCount, category),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          className: classnames_default()(SegmentationSurvey_SegmentationSurvey.itemText),
          children: getTranslate(value !== null && value !== void 0 ? value : option, category)
        }), _this.renderControl(selected, maxChoicesCount)]
      }, option);
    });
    (0,defineProperty/* default */.A)(_this, "renderControl", function (selected, maxChoicesCount) {
      if (maxChoicesCount === 1) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(ui_RadioButton_RadioButton, {
          checked: selected
        });
      }
      var disabled = _this.state.choicesCount >= maxChoicesCount && !selected;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Checkbox/* default */.A, {
        checked: selected,
        value: null,
        disabled: disabled
      });
    });
    _this.initState();
    return _this;
  }
  (0,inherits/* default */.A)(SegmentationSurvey, _Component);
  return (0,createClass/* default */.A)(SegmentationSurvey, [{
    key: "render",
    value: function render() {
      var _this2 = this;
      var _this$state6 = this.state,
        surveySteps = _this$state6.surveySteps,
        isComplete = _this$state6.isComplete;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(SegmentationSurvey_SegmentationSurvey.base),
        children: [this.renderTitle(), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          children: surveySteps.map(function (survey, surveyStep) {
            return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(SegmentationSurvey_SegmentationSurvey.pollGroup),
              children: [_this2.renderQuestionAnswerContainer(survey, surveyStep), _this2.renderOptions(survey, surveyStep)]
            }, survey.question);
          })
        }), isComplete && /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          size: "large",
          label: l("Let's start"),
          loading: this.props.loading,
          onClick: this.handleSubmit
        })]
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const components_SegmentationSurvey_SegmentationSurvey = (SegmentationSurvey);
;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/components/SegmentationSurvey/index.js

;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/SegmentationSurveyPage.js











function SegmentationSurveyPage(_ref) {
  var router = _ref.router,
    isUserAdditionalInfoUpdating = _ref.isUserAdditionalInfoUpdating,
    isUserAdditionalInfoUpdated = _ref.isUserAdditionalInfoUpdated,
    clearUpdateBusinessRole = _ref.clearUpdateBusinessRole,
    updateUserAdditionalInfo = _ref.updateUserAdditionalInfo;
  var survey = useSegmentationSurvey();
  (0,react.useEffect)(function () {
    if (isUserAdditionalInfoUpdated) {
      var state = router.location.state;
      var _ref2 = state || {},
        _ref2$pathname = _ref2.pathname,
        pathname = _ref2$pathname === void 0 ? '/themes' : _ref2$pathname,
        query = _ref2.query;
      router.push({
        pathname: pathname,
        query: query
      });
    }
    return function () {
      clearUpdateBusinessRole();
    };
  }, [isUserAdditionalInfoUpdated]);
  var handleSubmit = function handleSubmit(segmentation) {
    updateUserAdditionalInfo({
      team: segmentation.team[0],
      useCases: segmentation.useCases,
      otherTeam: segmentation.teamOther,
      otherUseCases: segmentation.useCasesOther
    });
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
    loaded: survey,
    children: /*#__PURE__*/(0,jsx_runtime.jsx)(components_SegmentationSurvey_SegmentationSurvey, {
      survey: survey,
      loading: isUserAdditionalInfoUpdating,
      getTranslate: getTranslation,
      onSubmit: handleSubmit
    })
  });
}
/* harmony default export */ const SegmentationSurveyPage_SegmentationSurveyPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    isUserAdditionalInfoUpdating: (0,currentUser_selectors/* isUserAdditionalInfoUpdating */.rf)(state),
    isUserAdditionalInfoUpdated: (0,currentUser_selectors/* isUserAdditionalInfoUpdated */["if"])(state)
  };
}, {
  clearUpdateBusinessRole: currentUser_model/* currentUserStateModel */.b.action.clearUpdateUserAdditionalInfo,
  updateUserAdditionalInfo: currentUser_model/* currentUserStateModel */.b.action.updateUserAdditionalInfo
}))(SegmentationSurveyPage));
;// CONCATENATED MODULE: ./src/containers/activateAccount/SegmentationSurveyPage/index.js

// EXTERNAL MODULE: ./src/utils/alert.ts + 3 modules
var utils_alert = __webpack_require__("X4yY");
;// CONCATENATED MODULE: ./src/containers/themeSettings/TagsSettings/components/TagsSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagsSettings = ({"header":"m2wYUDszUM_0HvajSD7F","tag":"wdkN9KgB_cVlxoyjWOOq","tagCount":"Zp4uZH54gm2JDGEIzdoR"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/TagsSettings/components/TagsSettings.js














var TagsSettingsContainer = function TagsSettingsContainer(_ref) {
  var tags = _ref.tags,
    onEditTag = _ref.onEditTag,
    onCreateTag = _ref.onCreateTag,
    onDeleteTag = _ref.onDeleteTag;
  var _useState = (0,react.useState)(''),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    search = _useState2[0],
    handleChangeSearch = _useState2[1];
  var handleCreateTag = function handleCreateTag() {
    if (onCreateTag) {
      onCreateTag();
    }
  };
  var handleEditTag = function handleEditTag(tagId) {
    return function () {
      if (onEditTag) {
        onEditTag(tagId);
      }
    };
  };
  var handleDeleteTag = function handleDeleteTag(tag) {
    return function () {
      if (onDeleteTag) {
        onDeleteTag(tag);
      }
    };
  };
  var getVisibleTags = function getVisibleTags() {
    return tags.filter(function (tag) {
      return tag.name.toLowerCase().includes(search.toLowerCase());
    });
  };
  var visibleTags = getVisibleTags();
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(TagsSettings.header),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
        children: l('Tags')
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        primary: true,
        label: l('Create tag'),
        onClick: handleCreateTag
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
      placeholder: l('Search'),
      leftIcon: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        type: "search"
      }),
      onChange: handleChangeSearch
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
      loaded: true,
      empty: !visibleTags.length,
      emptyStateImage: !tags.length ? '/static/images/empty_tags.png' : '/static/images/empty_search.png',
      emptyStateTitle: !tags.length ? l('You have no tags') : l('No tags were found'),
      children: visibleTags.map(function (tag) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(TagsSettings.tag),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Tag/* default */.Ay, {
            label: tag.name,
            color: tag.color
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            mini: true,
            iconType: "edit",
            onClick: handleEditTag(tag.id)
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            mini: true,
            iconType: "delete",
            onClick: handleDeleteTag(tag)
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(TagsSettings.tagCount),
            children: sprintf(nl('%d mention', '%d mentions', tag.mentionsCount), tag.mentionsCount)
          })]
        }, tag.id);
      })
    })]
  });
};
/* harmony default export */ const components_TagsSettings = (/*#__PURE__*/(0,react.memo)(TagsSettingsContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/TagsSettings/TagsSettings.js






function TagsSettings_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, TagsSettings_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function TagsSettings_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (TagsSettings_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var TagsSettings_TagsSettingsContainer = /*#__PURE__*/function (_Component) {
  function TagsSettingsContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, TagsSettingsContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = TagsSettings_callSuper(this, TagsSettingsContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleEditTag", function (tagId) {
      _this.props.showModal('createTag', {
        tagId: tagId
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCreateTag", function () {
      _this.props.showModal('createTag');
    });
    (0,defineProperty/* default */.A)(_this, "handleDeleteTag", function (tag) {
      var describeTag = _this.props.describeTags[tag.id];
      if (describeTag !== null && describeTag !== void 0 && describeTag.rules.length || describeTag !== null && describeTag !== void 0 && describeTag.filters.length) {
        var message = '';
        if (describeTag.rules.length) message = l('It is used in rules');
        if (describeTag.filters.length) message = l('It is used in saved filters');
        if (describeTag.rules.length && describeTag.filters.length) message = l('It is used in rules and saved filters');
        _this.showErrorNotification({
          title: l('Cannot delete this tag'),
          message: message
        });
        return;
      }
      if (tag.mentionsCount > 0) {
        var _message = /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
            children: [sprintf(nl('You have %d mention marked with this tag.', 'You have %d mentions marked with this tag.', tag.mentionsCount), tag.mentionsCount), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
              children: tag.name
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('will be removed from all mentions and analytics. This action CANNOT be undone.')]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
            children: l('Please note, that removing tag can take some time. ' + 'DO NOT refresh page while this action is in progress')
          })]
        });
        (0,utils_confirm/* default */.A)({
          title: l('Delete this tag?'),
          message: _message,
          actionLabel: l('Delete tag')
        }).then(function () {
          return _this.props.deleteTag(tag.id);
        });
      } else {
        _this.props.deleteTag(tag.id);
      }
    });
    (0,defineProperty/* default */.A)(_this, "showErrorNotification", function (_ref) {
      var title = _ref.title,
        message = _ref.message;
      (0,utils_alert/* default */.A)({
        title: title,
        message: message
      });
      _this.props.clearDeleteTagState();
    });
    return _this;
  }
  (0,inherits/* default */.A)(TagsSettingsContainer, _Component);
  return (0,createClass/* default */.A)(TagsSettingsContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.fetchTagsListWithStats({
        topicId: this.props.topicId
      });
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var _this$props = this.props,
        tags = _this$props.tags,
        loaded = _this$props.loaded,
        sendAnalyticalEvent = _this$props.sendAnalyticalEvent;
      if (!prevProps.loaded && loaded) {
        sendAnalyticalEvent({
          eventType: 'Tags settings: page loaded',
          properties: {
            isEmpty: !tags.length
          }
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var tags = this.props.tags;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(components_TagsSettings, {
        tags: tags,
        onCreateTag: this.handleCreateTag,
        onDeleteTag: this.handleDeleteTag,
        onEditTag: this.handleEditTag
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const TagsSettings_TagsSettings = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    tags: (0,tags_selectors/* getTagsWithStats */.h)(state),
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    loaded: (0,tags_selectors/* isTagsLoaded */.B6)(state),
    describeTags: (0,tags_selectors/* getDescribeTags */.dj)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  deleteTag: tags_model/* tagsModel */.J.action.deleteTag,
  fetchTagsListWithStats: tags_model/* tagsModel */.J.action.fetchTagsWithStats,
  clearDeleteTagState: tags_model/* tagsModel */.J.action.clearDeleteTagState,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(TagsSettings_TagsSettingsContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/TagsSettings/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/TagList.js





/* harmony default export */ const TagList = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, ownProps) {
  return {
    tags: (0,tags_selectors/* getTagListByIds */.ou)(state, ownProps.tagIds)
  };
}), react.memo)(function (_ref) {
  var tags = _ref.tags,
    children = _ref.children;
  return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
    children: children(tags)
  });
}));
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/UserList.js





/* harmony default export */ const UserList = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, ownProps) {
  return {
    users: (0,users_selectors/* getUserListByIds */.lA)(state, ownProps.userIds)
  };
}), react.memo)(function (_ref) {
  var users = _ref.users,
    children = _ref.children;
  return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
    children: children(users)
  });
}));
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/WithIntegrationData.js





/* harmony default export */ const WithIntegrationData = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) {
  return {
    integrations: (0,themes_selectors/* getCurrentThemeIntegrations */.Ch)(state)
  };
}), react.memo)(function (_ref) {
  var id = _ref.id,
    integrations = _ref.integrations,
    children = _ref.children;
  var integration = integrations.find(function (item) {
    return item.get('id') === id;
  });
  if (!integration) {
    return null;
  }
  return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
    children: children(integration)
  });
}));
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/RuleItem.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_RuleItem = ({"base":"oQ5mw555z0EwCp7VRH6X","delete":"GVyi5VSnoAt6IW5N6tVS","name":"sY7gqg1Dfq6_YnNAwthu","positive":"wsIDgY1grCtoWSFdAgnw","negative":"gib1IE054QkHxgyluOar","neutral":"KJreEH3dbxq8cZVFm2BS","message":"dpQq22GtpQszEKUS21CG","action":"yO9PXncDY8VTViqAbyQQ","actionMessage":"oM6BfcvWHeOb4SAUtpdy","filterNonEmpty":"z0eZrqGhSKbS80rXVMJ8"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/RuleItem.js






function RuleItem_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, RuleItem_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function RuleItem_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (RuleItem_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }

















var RuleItem = /*#__PURE__*/function (_PureComponent) {
  function RuleItem() {
    var _this;
    (0,classCallCheck/* default */.A)(this, RuleItem);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = RuleItem_callSuper(this, RuleItem, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleRuleNameClick", function () {
      _this.props.onRuleClick(_this.props.filter);
    });
    (0,defineProperty/* default */.A)(_this, "handleDelete", function () {
      var id = _this.props.id;
      _this.props.onDelete(id);
    });
    (0,defineProperty/* default */.A)(_this, "getRuleName", function () {
      var _Object$keys;
      var actions = _this.props.actions;
      var descriptionGetters = {
        setTags: function setTags(data) {
          var tagIds = data.tagIds;
          if (tagIds.length === 1) {
            return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Add tag ', 'ruleName'), /*#__PURE__*/(0,jsx_runtime.jsx)(TagList, {
                tagIds: tagIds,
                children: function children(tags) {
                  return tags.map(function (tag) {
                    return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                      children: ["'", tag === null || tag === void 0 ? void 0 : tag.name, "'"]
                    }, tag === null || tag === void 0 ? void 0 : tag.name);
                  });
                }
              })]
            });
          }
          if (tagIds.length === 2) {
            return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Add tags ', 'ruleName'), /*#__PURE__*/(0,jsx_runtime.jsx)(TagList, {
                tagIds: tagIds,
                children: function children(tags) {
                  return tags.map(function (tag, index) {
                    return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                      children: ["'", tag === null || tag === void 0 ? void 0 : tag.name, "'", /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), index === 0 && l('and', 'ruleName'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {})]
                    }, tag === null || tag === void 0 ? void 0 : tag.name);
                  });
                }
              })]
            });
          }
          return sprintf(nl('Add %d tag', 'Add %d tags', tagIds.length, 'ruleName'), tagIds.length);
        },
        sendEmail: function sendEmail(data) {
          var userIds = data.userIds;
          if (userIds.length === 1) {
            return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Send an email to ', 'ruleName'), /*#__PURE__*/(0,jsx_runtime.jsx)(UserList, {
                userIds: userIds,
                children: function children(users) {
                  return users.map(function (user) {
                    return user ? user.fullName : l('a deleted user');
                  });
                }
              })]
            });
          }
          if (userIds.length === 2) {
            return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Send email to ', 'ruleName'), /*#__PURE__*/(0,jsx_runtime.jsx)(UserList, {
                userIds: userIds,
                children: function children(users) {
                  return _this.renderEmailRecipients(users, false);
                }
              })]
            });
          }
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: sprintf(nl('Send email to %d user', 'Send email to %d users', userIds.length, 'ruleName'), userIds.length)
          });
        },
        setSentiment: function setSentiment(data) {
          return {
            positive: l('Set positive sentiment'),
            negative: l('Set negative sentiment'),
            neutral: l('Set neutral sentiment')
          }[data.sentiment];
        },
        sendToIntegration: function sendToIntegration() {
          var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
          return /*#__PURE__*/(0,jsx_runtime.jsx)(WithIntegrationData, {
            id: data.integrationId,
            children: function children(integration) {
              return "".concat(l('Send to'), " ").concat(utils_integrations()[integration.type].name, " integration");
            }
          });
        },
        markProcessed: function markProcessed() {
          return l('Mark processed');
        },
        "delete": function _delete() {
          return l('Move to bin');
        },
        doNotSave: function doNotSave() {
          return l('Do not save');
        }
      };
      var actionDescriptions = (_Object$keys = Object.keys(actions)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.map(function (type) {
        return descriptionGetters[type](actions[type]);
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        role: "presentation",
        className: classnames_default()(components_RuleItem.title),
        onClick: _this.handleRuleNameClick,
        children: actionDescriptions.map(function (action, i) {
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [i !== 0 && ' + ', action]
          }, i);
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderEmailRecipients", function (users) {
      var showHelp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
      if (users.includes(undefined)) {
        var existingUsers = [];
        var deletedUsersCount = users.reduce(function (deletedUsers, user) {
          if (!user) return deletedUsers + 1;
          existingUsers.push(user);
          return deletedUsers;
        }, 0);
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          children: [existingUsers.length ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
            children: [existingUsers.map(function (user) {
              return user.fullName;
            }).join(', '), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and', 'rules'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {})]
          }) : '', sprintf(nl('%d deleted user', '%d deleted users', deletedUsersCount), deletedUsersCount), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), showHelp && /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
            text: nl('A deleted user will no longer receive emails', 'Deleted users will no longer receive emails', deletedUsersCount),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: "warning",
              color: "amber",
              size: "small"
            })
          })]
        });
      }
      return users.map(function (user) {
        return user.fullName;
      }).join(', ');
    });
    return _this;
  }
  (0,inherits/* default */.A)(RuleItem, _PureComponent);
  return (0,createClass/* default */.A)(RuleItem, [{
    key: "renderActionList",
    value: function renderActionList() {
      var _this2 = this;
      var actions = this.props.actions;
      var icons = {
        setTags: 'tags',
        setSentiment: 'positive',
        sendEmail: 'email',
        "delete": 'delete',
        markProcessed: 'processed',
        sendToIntegration: 'settings',
        doNotSave: 'doNotSave'
      };
      var messages = {
        setTags: function setTags(data) {
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [nl('Add tag', 'Add tags', data.tagIds.length), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TagList, {
              tagIds: data.tagIds,
              children: function children(tags) {
                return tags.map(function (tag) {
                  return /*#__PURE__*/(0,jsx_runtime.jsx)(Tag/* default */.Ay, {
                    removable: false,
                    id: tag.id,
                    color: tag.color,
                    note: tag.note,
                    createdAt: tag.createdAt,
                    label: tag === null || tag === void 0 ? void 0 : tag.name
                  }, tag.id + (tag === null || tag === void 0 ? void 0 : tag.name));
                });
              }
            })]
          });
        },
        sendEmail: function sendEmail(data) {
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [l('Send email to'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(UserList, {
              userIds: data.userIds,
              children: _this2.renderEmailRecipients
            })]
          });
        },
        setSentiment: function setSentiment(data) {
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
            children: [l('Set ', 'ruleHumanText'), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
              children: {
                positive: l('positive', 'ruleHumanText'),
                negative: l('negative', 'ruleHumanText'),
                neutral: l('neutral', 'ruleHumanText')
              }[data.sentiment]
            }), l(' sentiment', 'ruleHumanText')]
          });
        },
        sendToIntegration: function sendToIntegration(data) {
          return /*#__PURE__*/(0,jsx_runtime.jsx)(WithIntegrationData, {
            id: data.integrationId,
            children: function children(integration) {
              return /*#__PURE__*/(0,jsx_runtime.jsx)(other_IntegrationName_IntegrationName, {
                prefix: l('Send to '),
                id: integration.id,
                type: integration.type,
                to: integration.to
              });
            }
          });
        },
        markProcessed: function markProcessed() {
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: l('Mark as processed')
          });
        },
        "delete": function _delete() {
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: l('Move to bin')
          });
        },
        doNotSave: function doNotSave() {
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: l('Do not save mentions to the topic')
          });
        }
      };
      var keys = Object.keys(actions);
      var messageList = keys.map(function (key) {
        return messages[key](actions[key]);
      });
      var getIconClass = function getIconClass(key) {
        return key === 'setSentiment' ? actions[key].sentiment : null;
      };
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: keys.map(function (key, index) {
          return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_RuleItem.action),
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: icons[key],
              size: 16,
              color: "lightgray",
              className: classnames_default()(components_RuleItem[getIconClass(key)])
            }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              className: classnames_default()(components_RuleItem.actionMessage),
              children: messageList[index]
            })]
          }, key);
        })
      });
    }
  }, {
    key: "renderNewFilter",
    value: function renderNewFilter(filter) {
      var f = Filter/* Filter */.dJ.fromRule(filter);
      return /*#__PURE__*/(0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, {
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(FilterChipPanel/* default */.A, {
          filter: f,
          topicId: this.props.topicId
        })
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        filter = _this$props.filter,
        chipArray = _this$props.chipArray;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_RuleItem.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_RuleItem.name),
          children: [this.getRuleName(), /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            mini: true,
            className: classnames_default()(components_RuleItem["delete"]),
            color: "lightgray",
            iconType: "delete",
            tooltip: l('Delete'),
            onClick: this.handleDelete
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Tag/* TagList */.LY, {
          className: classnames_default()(components_RuleItem.filter, (0,defineProperty/* default */.A)({}, components_RuleItem.filterNonEmpty, chipArray.length !== 0)),
          children: this.renderNewFilter(filter)
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(components_RuleItem.message),
          children: this.renderActionList()
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/RulesSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_RulesSettings = ({"base":"j7Kjq8ttqSmpqhI8cd6Q","header":"mzePoqlW5KgdmzKuOiIW","search":"XhaOJLCOKMYTUkPcsVb1","sort":"K32UJfCsKxB5OVnxMR_g","emptyState":"SJBC2mfuvouPR0QsYVf9","rules":"ryhcR2yYx8DwHFUvku51","rulesCounterMsg":"tnS5Uz9HaMrKryan_5ow","rulesCounter":"J0a9gsXo3juUElnOvq50","searchSortContainer":"HZjWkE0goi8ThmHmx_JX"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/components/RulesSettings.js


function RulesSettings_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function RulesSettings_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? RulesSettings_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : RulesSettings_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }















var RulesSettings = function RulesSettings(_ref) {
  var rules = _ref.rules,
    rulesLoaded = _ref.rulesLoaded,
    rulesCount = _ref.rulesCount,
    rulesLimit = _ref.rulesLimit,
    topicId = _ref.topicId,
    onRuleClick = _ref.onRuleClick,
    onDeleteRule = _ref.onDeleteRule;
  var _useState = (0,react.useState)(''),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    search = _useState2[0],
    handleChangeSearch = _useState2[1];
  var _useState3 = (0,react.useState)({
      value: 'action',
      label: l('Sort by action')
    }),
    _useState4 = (0,slicedToArray/* default */.A)(_useState3, 2),
    sortKey = _useState4[0],
    setSortKey = _useState4[1];
  var handleSortChange = function handleSortChange(newSortKey) {
    setSortKey(newSortKey);
  };
  var handleDeleteRule = function handleDeleteRule(ruleId) {
    if (onDeleteRule) onDeleteRule(ruleId);
  };
  var getVisibleRules = function getVisibleRules() {
    if (!search) return rules;
    return rules.filter(function (rule) {
      var _Object$keys;
      // Get the rule action description
      var actions = rule.actions;
      var ruleActionDescription = (_Object$keys = Object.keys(actions)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.map(function (type) {
        return rulesActionDescription[type](actions[type]);
      }).join();

      // Add the rule action description to the rule object
      var enrichedRule = RulesSettings_objectSpread(RulesSettings_objectSpread({}, rule), {}, {
        ruleActionDescription: ruleActionDescription
      });

      // Convert the enriched rule object into a string and check if the search term is included
      return JSON.stringify(enrichedRule).toLowerCase().includes(search.toLowerCase());
    });
  };
  var rulesActionDescription = {
    setTags: function setTags() {
      return l('Add tag ', 'ruleName');
    },
    sendEmail: function sendEmail() {
      return l('Send email to ', 'ruleName');
    },
    setSentiment: function setSentiment(data) {
      return {
        positive: l('Set positive sentiment'),
        negative: l('Set negative sentiment'),
        neutral: l('Set neutral sentiment')
      }[data.sentiment];
    },
    sendToIntegration: function sendToIntegration(data) {
      return l('Send to');
    },
    markProcessed: function markProcessed() {
      return l('Mark processed');
    },
    "delete": function _delete() {
      return l('Move to bin');
    },
    doNotSave: function doNotSave() {
      return l('Do not save');
    }
  };
  var sortedRulesByActionName = function sortedRulesByActionName(rules) {
    var ruleAction = rules.map(function (rule) {
      var _Object$keys2;
      var actions = rule.actions;
      return (_Object$keys2 = Object.keys(actions)) === null || _Object$keys2 === void 0 ? void 0 : _Object$keys2.map(function (type) {
        return rulesActionDescription[type](actions[type]);
      });
    });
    return rules.sort(function (ruleA, ruleB) {
      var valueA, valueB;
      if (sortKey.value === 'action') {
        valueA = ruleAction[rules.indexOf(ruleA)].join();
        valueB = ruleAction[rules.indexOf(ruleB)].join();
      } else if (sortKey.value === 'date') {
        valueA = ruleA.id;
        valueB = ruleB.id;
      }
      if (valueA < valueB) {
        return -1;
      }
      if (valueA > valueB) {
        return 1;
      }
      return 0;
    });
  };
  var visibleRules = getVisibleRules();
  var sortedRules = sortedRulesByActionName(visibleRules);
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
    className: classnames_default()(components_RulesSettings.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_RulesSettings.header),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(components_RulesSettings.title),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
          children: l('Rules')
        })
      }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_RulesSettings.rulesCounterMsg, components_RulesSettings.rulesCounter),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          children: l('Limit usage')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          children: sprintf(l('%d of %d'), rulesCount, rulesLimit)
        })]
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_RulesSettings.searchSortContainer),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
        placeholder: l('Search'),
        leftIcon: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: "search"
        }),
        className: classnames_default()(components_RulesSettings.search),
        onChange: handleChangeSearch
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, {
        value: sortKey,
        onChange: handleSortChange,
        className: classnames_default()(components_RulesSettings.sort),
        options: [{
          value: 'action',
          label: l('Sort by action')
        }, {
          value: 'date',
          label: l('Sort by date added')
        }]
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
      loaded: rulesLoaded,
      className: classnames_default()(components_RulesSettings.rules),
      empty: !visibleRules.length,
      emptyState: /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
        large: true,
        className: classnames_default()(components_RulesSettings.emptyState),
        image: !rules.length ? '/static/images/empty_rules.svg' : '/static/images/empty_search.png',
        title: !rules.length ? l('You don’t have any rules yet') : l('No rules were found'),
        message: !rules.length ? /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          children: [l(
          // eslint-disable-next-line max-len
          'Use Rules to automate routine tasks. For example, apply tags to mentions that match certain filters. Or send alerts for influencer mentions.', 'ruleSettings'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.OVERVIEW_OF_THE_RULES_FUNCTION),
            target: "_blank",
            rel: "noopener noreferrer",
            children: l('Read more')
          })]
        }) : null
      }),
      children: sortedRules.map(function (rule) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(RuleItem, {
          id: rule.id,
          filter: rule.filter,
          name: rule.name,
          chipArray: rule.chipArray,
          actions: rule.actions,
          topicId: topicId,
          onRuleClick: onRuleClick,
          onDelete: handleDeleteRule
        }, rule.id);
      })
    })]
  });
};
/* harmony default export */ const RulesSettings_components_RulesSettings = (/*#__PURE__*/(0,react.memo)(RulesSettings));
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/RulesSettings.js






function RulesSettings_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, RulesSettings_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function RulesSettings_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (RulesSettings_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }













var RulesSettingsContainer = /*#__PURE__*/function (_PureComponent) {
  function RulesSettingsContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, RulesSettingsContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = RulesSettings_callSuper(this, RulesSettingsContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleRuleClick", function (filter) {
      var _this$props = _this.props,
        themeId = _this$props.themeId,
        sendAnalyticalEvent = _this$props.sendAnalyticalEvent;
      sendAnalyticalEvent({
        eventType: 'Rule: name clicked'
      });

      // TODO: NewFilters: Check why use filter toJS()
      _this.props.updateFilterQuery({
        filter: Filter/* Filter */.dJ.fromRule(filter),
        pathname: "/themes/".concat(themeId, "/mentions")
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDeleteRule", function (ruleId) {
      (0,utils_confirm/* default */.A)({
        title: l('Delete this rule?'),
        message: l('This will not discard all changes but will disable this rule for all future mentions'),
        actionLabel: l('Delete rule')
      }).then(function () {
        return _this.props.deleteRule(ruleId);
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(RulesSettingsContainer, _PureComponent);
  return (0,createClass/* default */.A)(RulesSettingsContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var themeId = this.props.themeId;
      this.props.fetchRules({
        themeId: themeId
      });
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var _this$props2 = this.props,
        themeId = _this$props2.themeId,
        rules = _this$props2.rules,
        loaded = _this$props2.loaded,
        sendAnalyticalEvent = _this$props2.sendAnalyticalEvent;
      if (prevProps.themeId !== themeId) {
        this.props.fetchRules({
          themeId: themeId
        });
      }
      if (!prevProps.loaded && loaded) {
        sendAnalyticalEvent({
          eventType: 'Rules settings: page loaded',
          properties: {
            isEmpty: !rules.length
          }
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props3 = this.props,
        rules = _this$props3.rules,
        rulesLoaded = _this$props3.rulesLoaded,
        rulesCount = _this$props3.rulesCount,
        rulesLimit = _this$props3.rulesLimit,
        themeId = _this$props3.themeId;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(RulesSettings_components_RulesSettings, {
        topicId: themeId,
        rules: rules,
        rulesLoaded: rulesLoaded,
        rulesCount: rulesCount,
        rulesLimit: rulesLimit,
        onRuleClick: this.handleRuleClick,
        onDeleteRule: this.handleDeleteRule
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const RulesSettings_RulesSettings = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    rules: getRulesPreview(state),
    loaded: isRulesLoaded(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    rulesLoaded: isRulesLoaded(state),
    rulesLimit: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'rulesLimit'),
    rulesCount: getRulesCount(state)
  };
}, {
  replaceLocation: routing_actions/* replace */.HC,
  updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
  fetchRules: rules_model/* rulesModel */.h.action.fetchRules,
  deleteRule: rules_model/* rulesModel */.h.action.deleteRule,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(RulesSettingsContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/RulesSettings/index.js

;// CONCATENATED MODULE: ./src/models/topicEditor/components/Provider/TopicEditorContext.tsx
var TopicEditorContext_assign = (undefined && undefined.__assign) || function () {
    TopicEditorContext_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicEditorContext_assign.apply(this, arguments);
};


var TopicEditorContext = (0,react.createContext)(undefined);
var TopicEditorProvider = function (_a) {
    var topic = _a.topic, updateTopic = _a.updateTopic, applyLoading = _a.applyLoading, previewLoaded = _a.previewLoaded, previewLoading = _a.previewLoading, children = _a.children;
    return ((0,jsx_runtime.jsx)(TopicEditorContext.Provider, TopicEditorContext_assign({ value: { topic: topic, updateTopic: updateTopic, previewLoading: previewLoading, previewLoaded: previewLoaded, applyLoading: applyLoading } }, { children: topic ? children : null })));
};
var useTopicEditor = function () {
    var context = (0,react.useContext)(TopicEditorContext);
    if (!context) {
        throw new Error('useTopicEditor must be used within a TopicEditorProvider');
    }
    return context;
};

// EXTERNAL MODULE: ./src/components/ui/Switch/index.ts + 2 modules
var Switch = __webpack_require__("AacN");
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Scale/Scale.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Scale = ({"card":"P3smHXO6LAA6Xshe6CNC","topicScalingEditor":"GwcqgIwVvMSXdy81mCp3","column":"uwHgXqJpNpfDFhls83Mp","additionalText":"iJ3h5tbDi84gMSX4goDm","topicLimitsSection":"UaHuGhOWcXepDXXG1yCZ","nowrap":"MPnOrX5e6DRx1osKY680","arrow":"DStZfcrK4XgEITOqrUpe","switch":"HbyMU13IhuQG3_tuT0x2","limitsExceeded":"cFJMnbDMgKjKS8TiQuXr","inline":"bZydLOHjeRQ0hFPKADvX"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Scale/Scale.tsx
var Scale_assign = (undefined && undefined.__assign) || function () {
    Scale_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Scale_assign.apply(this, arguments);
};
var Scale_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};












var Scale_Scale = function () {
    var _a = useTopicEditor(), topic = _a.topic, updateTopic = _a.updateTopic;
    var _b = Scale_read((0,react.useState)(topic.collectionManagement.scale), 1), initial = _b[0];
    var handleSwitch = function (enable) {
        updateTopic({ collectionManagement: { scale: enable ? topic.collectionManagement.requiredScale : initial } });
    };
    var maxMentionsAmount = topic.collectionManagement.requiredScale * topic.collectionManagement.monthlyLimit;
    if (!topic.collectionManagement.scalingAllowed) {
        return null;
    }
    if (topic.collectionManagement.requiredScale === 1 && topic.collectionManagement.scale === 1) {
        return null;
    }
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, Scale_assign({ className: classnames_default()(Scale.card, Scale.topicScalingEditor) }, { children: [(0,jsx_runtime.jsxs)("div", Scale_assign({ className: Scale.column }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, Scale_assign({ withSubtitle: true }, { children: l('Topic merging') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { height: "4px" }), (0,jsx_runtime.jsx)("div", Scale_assign({ className: Scale.additionalText }, { children: l('Increase the mention limit for this topic using available topics in your account.') }))] })), topic.collectionManagement.topicsLimitExceeded ? renderTopicLimitsExceeded() : renderTopicLimitsUse()] })));
    function renderTopicLimitsUse() {
        var currentScale = topic.collectionManagement.scaleEnabled ? topic.collectionManagement.scale : topic.collectionManagement.requiredScale;
        return ((0,jsx_runtime.jsxs)("div", Scale_assign({ className: Scale.topicLimitsSection }, { children: [(0,jsx_runtime.jsxs)("div", Scale_assign({ className: Scale.column }, { children: [(0,jsx_runtime.jsx)("div", Scale_assign({ className: Scale.additionalText }, { children: l('Topic size') })), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("span", Scale_assign({ className: Scale.nowrap }, { children: sprintf(nl('%d topic', '%d topics', currentScale, 'topicScalingEditor'), currentScale) })), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: Scale.arrow, type: "next", color: "lightgray", size: "medium" }), (0,jsx_runtime.jsx)("span", Scale_assign({ className: Scale.nowrap }, { children: sprintf(nl('%s mention', '%s mentions', maxMentionsAmount, 'topicScalingEditor'), numeral_default()(maxMentionsAmount).format('0,0')) }))] })] })), (0,jsx_runtime.jsx)(Switch/* default */.A, { className: Scale.switch, checked: topic.collectionManagement.scaleEnabled, onChange: handleSwitch })] })));
    }
    function renderTopicLimitsExceeded() {
        var tooltipText = ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('It is possible to scale the topic using available topics in the account.'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('In your account, all topics are in use, no additional topics are available.')] }));
        return ((0,jsx_runtime.jsxs)("div", Scale_assign({ className: Scale.limitsExceeded }, { children: [(0,jsx_runtime.jsx)("div", { children: l('No available topics') }), (0,jsx_runtime.jsx)(Tooltip/* default */.A, Scale_assign({ text: tooltipText, position: "top right" }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray", size: "medium" }) }))] })));
    }
};
/* harmony default export */ const components_Scale_Scale = (Scale_Scale);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/Scale/index.ts


// EXTERNAL MODULE: ./src/components/ui/Badge/index.ts + 4 modules
var Badge = __webpack_require__("5d8y");
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Filter/withFacetsProvider.tsx
var withFacetsProvider_assign = (undefined && undefined.__assign) || function () {
    withFacetsProvider_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return withFacetsProvider_assign.apply(this, arguments);
};




var withFacetsProvider = function (WrappedComponent) {
    return function (props) {
        var topic = useTopicEditor().topic;
        return ((0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, withFacetsProvider_assign({ options: {
                fetchDefaultFacets: topic.isCreating ? filter_model/* filterModel */.W.fetchDefaultFacetsAsync : null,
                fetchFacets: function (filter) { return filter_model/* filterModel */.W.fetchAllFilterFacetsGlobalAsync(withFacetsProvider_assign(withFacetsProvider_assign({}, topic.topicQuery), { filter: filter })); },
                fetchDescribeFilter: function (filter) { return filter_model/* filterModel */.W.fetchGlobalFilterEntities(withFacetsProvider_assign(withFacetsProvider_assign({}, topic.topicQuery), { filter: filter })); },
                useDefaultFacets: !topic.isQuerySelected,
                externalFacetsCachingCriteria: [topic.textQuery, topic.viQuery],
            } }, { children: (0,jsx_runtime.jsx)(WrappedComponent, withFacetsProvider_assign({}, props)) })));
    };
};
/* harmony default export */ const Filter_withFacetsProvider = (withFacetsProvider);

// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ToolbarGroup.tsx + 1 modules
var ToolbarGroup = __webpack_require__("Qjb0");
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Filter/Filter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const topicEditor_components_Filter_Filter = ({"card":"p33HjjqIqOhTf2JIJvmU","base":"NrGM6LRGz8aT5jP6_cWn","filterChipPanel":"uuK6FZVEPJgGb_i4ry_X","noClickBlock":"u39yWeAsevd4TFVivsjf"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Filter/Filter.tsx
var Filter_Filter_assign = (undefined && undefined.__assign) || function () {
    Filter_Filter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Filter_Filter_assign.apply(this, arguments);
};
















var filterTabsConfig = [
    {
        id: 'languages',
        label: function () { return l('Languages'); },
        filterTypes: ['language'],
    },
    {
        id: 'geo',
        label: function () { return l('Geography'); },
        filterTypes: ['countryGroup', 'country', 'region', 'city'],
    },
    {
        id: 'sources',
        label: function () { return l('Sources'); },
        filterTypes: ['resourceType', 'source'],
    },
    {
        id: 'general',
        label: function () { return l('Post types'); },
        filterTypes: ['postType'],
    },
    {
        id: 'authors',
        label: function () { return (0,jsx_runtime.jsxs)("span", { children: [l('Audience'), " ", (0,jsx_runtime.jsx)(Badge/* default */.A.New, { expirationDate: "01-11-2024" })] }); },
        filterTypes: ['gender', 'authorAge', 'authorSubscribers', 'authorInterestCategories', 'authorInterests', 'authorJobs'],
    },
    {
        id: 'images',
        label: function () { return (0,jsx_runtime.jsxs)("span", { children: [l('Visual', 'visualInsights'), " ", (0,jsx_runtime.jsx)(Badge/* default */.A.New, { expirationDate: "01-11-2024" })] }); },
        filterTypes: [
            'imageType',
            'imageSubtype',
            'imageBrand',
            'imageObject',
            'imageScene',
            'imagePeople',
            'imageActivities',
            'imageColors'
        ],
    }
];
var components_Filter_Filter_Filter = function (_a) {
    var _b;
    var topicId = _a.topicId, onFilterApply = _a.onFilterApply;
    var refFilterModal = (0,react.useRef)(null);
    var _c = useTopicEditor(), topic = _c.topic, updateTopic = _c.updateTopic;
    var fetchDescribeFilter = (0,useFacetsContext/* useFacetsContext */.P)().fetchDescribeFilter;
    var handleOpenFilterModal = function () {
        var _a;
        (_a = refFilterModal.current) === null || _a === void 0 ? void 0 : _a.open();
    };
    var handlePreventClick = function (e) {
        e.preventDefault();
        e.stopPropagation();
    };
    var handleApply = function (f) {
        updateTopic({ filter: f });
        onFilterApply === null || onFilterApply === void 0 ? void 0 : onFilterApply();
    };
    var handleUpdatePreviewFilter = function (f) {
        if (!topic.isQuerySelected) {
            fetchDescribeFilter(f, topicId);
        }
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, Filter_Filter_assign({ className: topicEditor_components_Filter_Filter.card }, { children: (0,jsx_runtime.jsxs)("div", Filter_Filter_assign({ className: topicEditor_components_Filter_Filter.base }, { children: [(0,jsx_runtime.jsx)("div", Filter_Filter_assign({ className: topicEditor_components_Filter_Filter.filterChipPanel, onClick: handleOpenFilterModal }, { children: (0,jsx_runtime.jsx)("div", Filter_Filter_assign({ className: topicEditor_components_Filter_Filter.noClickBlock, onClick: handlePreventClick }, { children: (0,jsx_runtime.jsx)(FilterChipPanel_FilterChipPanel/* default */.A, { topicId: topicId, filter: topic.filter.copyFilter(), onUpdate: function (f) {
                                updateTopic({ filter: f });
                            } }) })) })), (0,jsx_runtime.jsxs)(ToolbarGroup/* default */.A, { children: [!!((_b = topic.filter.filterGroups) === null || _b === void 0 ? void 0 : _b.length)
                            && ((0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, label: l('Clear'), onClick: function () { return updateTopic({ filter: null }); } })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(Filters/* default */.A, { hideCounters: !topic.textQuery && !topic.viQuery, countFormat: "0 a", ref: refFilterModal, topicId: topicId, filterTabsConfig: filterTabsConfig, initialFilter: topic.filter.copyFilter(), triggerButtonLabel: l('Filter'), onApply: handleApply, onUpdatePreviewFilter: handleUpdatePreviewFilter })] })] })) })));
};
/* harmony default export */ const models_topicEditor_components_Filter_Filter = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
}); }), Filter_withFacetsProvider)(components_Filter_Filter_Filter));

;// CONCATENATED MODULE: ./src/models/topicEditor/components/Filter/index.ts


;// CONCATENATED MODULE: ./src/models/topicEditor/components/LogoSuggestions/LogoSuggestions.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const LogoSuggestions = ({"searchableList":"qQH3bNBeUItamMV7zoYh","image":"_AZToJk_wkKLiOn3eW1S","button":"ib_kzEH2JOaQDYAMNj9F","suggestion":"eykXaI0mhWqAI5RXWDo7","focused":"yQLrr4WAoS7z2i1Ou2pQ"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/LogoSuggestions/LogoSuggestions.tsx
var LogoSuggestions_assign = (undefined && undefined.__assign) || function () {
    LogoSuggestions_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LogoSuggestions_assign.apply(this, arguments);
};






var LogoSuggestions_LogoSuggestions = function (_a) {
    var accountLogos = _a.accountLogos;
    var _b = useTopicEditor(), topic = _b.topic, updateTopic = _b.updateTopic;
    var renderLogoSuggestion = function (suggestion, focused) {
        var _a;
        return ((0,jsx_runtime.jsxs)("div", LogoSuggestions_assign({ className: classnames_default()(LogoSuggestions.suggestion, LogoSuggestions.suggestionOption, (_a = {}, _a[LogoSuggestions.focused] = focused, _a)) }, { children: [suggestion.label, (0,jsx_runtime.jsx)("img", { className: LogoSuggestions.image, src: suggestion.url, alt: suggestion.label })] }), suggestion.label));
    };
    var createQuery = function (logo) {
        if (!topic.viQuery)
            return "logo:\"".concat(logo.label, "\"");
        return "".concat(topic.viQuery, " OR logo:\"").concat(logo.label, "\"");
    };
    var handleSelectLogo = function (logo) {
        updateTopic({ viQuery: createQuery(logo) });
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, LogoSuggestions_assign({ hideOnScroll: false, position: "top left", on: "click", content: (0,jsx_runtime.jsx)("div", LogoSuggestions_assign({ className: LogoSuggestions.searchableList }, { children: (0,jsx_runtime.jsx)(SearchableListMutable, { autoFocus: true, placeholder: l('Search by logo'), hintText: l('Press Shift + Enter to apply'), sortingProperties: { keys: [function (item) { return item.label; }] }, suggestions: accountLogos, renderItem: renderLogoSuggestion, onSelect: handleSelectLogo }) })) }, { children: (0,jsx_runtime.jsxs)("div", LogoSuggestions_assign({ className: LogoSuggestions.button }, { children: ["+ ", l('Add logo')] })) })));
};
/* harmony default export */ const components_LogoSuggestions_LogoSuggestions = (LogoSuggestions_LogoSuggestions);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/LogoSuggestions/index.tsx


// EXTERNAL MODULE: ./src/containers/AddonsPromote/addons.ts
var AddonsPromote_addons = __webpack_require__("duiz");
;// CONCATENATED MODULE: ./src/components/other/Collapse/Collapse.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Collapse = ({"base":"VdWtrASCET6KWeqyLPs1","open":"EWeDTjBWTLzaLJLQZepT","toggleContainer":"gRbO3ds6U217rJin_FOb","headerSection":"MM0Xj0P9n7oOkc9cvdAP"});
;// CONCATENATED MODULE: ./src/components/other/Collapse/Collapse.tsx
var Collapse_assign = (undefined && undefined.__assign) || function () {
    Collapse_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Collapse_assign.apply(this, arguments);
};
var Collapse_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






var Collapse_Collapse = function (_a) {
    var _b;
    var className = _a.className, defaultOpen = _a.defaultOpen, title = _a.title, closedView = _a.closedView, openView = _a.openView;
    var _c = Collapse_read((0,react.useState)(defaultOpen || false), 2), isOpen = _c[0], setIsOpen = _c[1];
    return ((0,jsx_runtime.jsxs)("div", Collapse_assign({ className: classnames_default()(Collapse.base, (_b = {}, _b[Collapse.open] = isOpen, _b[Collapse.close] = !isOpen, _b), className) }, { children: [(0,jsx_runtime.jsxs)("div", Collapse_assign({ className: Collapse.toggleContainer, onClick: function () { return setIsOpen(!isOpen); } }, { children: [(0,jsx_runtime.jsxs)("div", Collapse_assign({ className: Collapse.headerSection }, { children: [title, (0,jsx_runtime.jsx)(Icon/* default */.A, { type: isOpen ? 'chevron-up' : 'chevron-down', size: 24, color: "gray" })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), !isOpen && closedView] })), isOpen && openView] })));
};
/* harmony default export */ const other_Collapse_Collapse = (Collapse_Collapse);

;// CONCATENATED MODULE: ./src/components/other/Collapse/index.tsx


;// CONCATENATED MODULE: ./src/models/topicEditor/components/ViQuery/ViQuery.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ViQuery = ({"title":"obcjZQmr7_1zyDk01ZxC","subtitle":"fdMShoLD9YnxhPkA4DxJ","label":"MwAM2V4V93BGeerXXAjf","subtitleContainer":"EBSLuVlIsPRNg8PffBFM","queryEditorOpen":"GB2Q4_Cfc5X5rfunW8NE","queryEditorClose":"vs7m9mB01GcmYAgIOayW","modal":"kESthypQy7e9SmYatFsx","queryEditorModal":"L8Y7cZlPjcf4zTaj7Fiw","ctaContent":"HaLiGsmPf0NqfDQf94u7","ctaTitle":"y5gql6U9MFamYPSd1FRw","ctaImageBlock":"C2AarGQSL38ApkzZY3lM","ctaImage":"jMsaYYeRpqaOR4rizMY8","ctaIcon":"LwHv0ERi2pj36VPGcUwS","disabled":"IjFjE6TT7MkKMNy8nvM1"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/ViQuery/ViQuery.tsx
var ViQuery_assign = (undefined && undefined.__assign) || function () {
    ViQuery_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ViQuery_assign.apply(this, arguments);
};
var ViQuery_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

























var ViQuery_ViQuery = function (_a) {
    var _b;
    var accountLogos = _a.accountLogos, visualInsightsEnabled = _a.visualInsightsEnabled, fetchAccountLogos = _a.fetchAccountLogos, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _c = useTopicEditor(), topic = _c.topic, updateTopic = _c.updateTopic;
    var _d = ViQuery_read((0,react.useState)(topic.viQuery), 2), query = _d[0], setQuery = _d[1];
    var _e = ViQuery_read((0,react.useState)(false), 2), isFullScreenMode = _e[0], setIsFullScreenMode = _e[1];
    var showCTA = !visualInsightsEnabled && !(0,mobile/* isSimplifiedView */.O7)();
    (0,react.useEffect)(function () {
        if (accountLogos.length === 0) {
            fetchAccountLogos();
        }
    }, []);
    (0,react.useEffect)(function () {
        setQuery(topic.viQuery);
    }, [topic.viQuery]);
    var handleUpdateQuery = (0,react.useCallback)(function (value) {
        updateTopic({ viQuery: value });
    }, []);
    var handleChange = function (value) {
        setQuery(value);
        handleUpdateQuery(value);
        if (topic.viQueryValidationError) {
            updateTopic({ viQueryValidationError: null });
        }
        if (topic.generalError) {
            updateTopic({ generalError: null });
        }
    };
    var handleToggleFullscreen = function () {
        setIsFullScreenMode(!isFullScreenMode);
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, ViQuery_assign({ hoverable: true, disabled: !showCTA, on: "hover", position: "top center", content: renderCtaContent() }, { children: (0,jsx_runtime.jsx)(other_Collapse_Collapse, { className: classnames_default()((_b = {}, _b[ViQuery.disabled] = !visualInsightsEnabled, _b)), title: (0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.title }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, ViQuery_assign({ className: ViQuery.title }, { children: l('Visual Insights') })), !visualInsightsEnabled && (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "currency-usd", size: 20, className: ViQuery.ctaIcon })] })), closedView: query ? ((0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { readOnly: true, oneLine: true, hideBackground: true, value: query, className: ViQuery.queryEditorClose })) : ((0,jsx_runtime.jsx)(Label/* default */.A, ViQuery_assign({ className: ViQuery.subtitle }, { children: l('Set up a query to find insights on images: logos, text, objects, etc') }))), openView: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.subtitleContainer }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, ViQuery_assign({ className: ViQuery.subtitle }, { children: l('Set up a query to find insights on images: logos, text, objects, etc') })), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "expand", className: ViQuery.iconExpand, onClick: handleToggleFullscreen })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_LogoSuggestions_LogoSuggestions, { accountLogos: accountLogos }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { value: query, queryError: topic.viQueryValidationError, className: ViQuery.queryEditorOpen, onChange: handleChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.label }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: sprintf(nl('%s character', '%s characters', query.length), numeral_default()(query.length).format()) }), (0,jsx_runtime.jsx)(other_QueryHintLink_QueryHintLink, { hintFor: "ocr", analyticalEventName: "Create topic: open help modal" })] })), (0,jsx_runtime.jsxs)(Modal_Modal/* default */.A, ViQuery_assign({ fitted: true, isOpen: isFullScreenMode, className: ViQuery.modal, onRequestClose: handleToggleFullscreen }, { children: [(0,jsx_runtime.jsx)(components_LogoSuggestions_LogoSuggestions, { accountLogos: accountLogos }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { focus: true, value: query, queryError: topic.viQueryValidationError, className: ViQuery.queryEditorModal, onChange: handleChange, onPressEnter: handleChange }), (0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.label }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: sprintf(nl('%s character', '%s characters', query.length), numeral_default()(query.length).format()) }), (0,jsx_runtime.jsx)(other_QueryHintLink_QueryHintLink, { hintFor: "ocr", analyticalEventName: "Create topic: open help modal" })] }))] }))] }) }) })));
    function renderCtaContent() {
        var handleChatClick = function () {
            var addonName = 'Visual Insights';
            var openBy = 'create topic';
            sendAnalyticalEvent === null || sendAnalyticalEvent === void 0 ? void 0 : sendAnalyticalEvent({ eventType: 'Promote Add-ons: click chat button', properties: { addonName: addonName, openBy: openBy } });
            (0,utils_intercom/* showNewMessage */.z$)((0,AddonsPromote_addons/* getChatMessage */.w)(l(addonName)));
        };
        return ((0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.ctaContent }, { children: [(0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.ctaImageBlock }, { children: [(0,jsx_runtime.jsx)("img", { className: ViQuery.ctaImage, src: "/static/images/topic_creation_ocr.svg", alt: "OCR" }), (0,jsx_runtime.jsx)("img", { className: ViQuery.ctaImage, src: "/static/images/topic_creation_logo.svg", alt: "Logo query" })] })), (0,jsx_runtime.jsx)("div", ViQuery_assign({ className: ViQuery.ctaTitle }, { children: l('Get more insights with images') })), (0,jsx_runtime.jsxs)("div", ViQuery_assign({ className: ViQuery.ctaSubtitle }, { children: [l('Ensure you don’t miss mentions on images and logos! Contact our support team to activate Visual Insights add-on.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", ViQuery_assign({ onClick: handleChatClick }, { children: l('Chat with us') }))] }))] })));
    }
};
/* harmony default export */ const components_ViQuery_ViQuery = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    accountLogos: (0,account_selectors/* getAccountLogos */.gW)(state),
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
}); }, {
    fetchAccountLogos: account_model/* accountModel */.h.action.fetchAccountLogos,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(ViQuery_ViQuery));

;// CONCATENATED MODULE: ./src/models/topicEditor/components/ViQuery/index.tsx


// EXTERNAL MODULE: ./src/components/ui/Range/index.ts + 2 modules
var Range = __webpack_require__("7iTR");
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Sampling/Sampling.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Sampling = ({"topicSamplingEditor":"mmcm9lT33248Xv4vbcgw","additionalText":"I5Q3x2BTMZOXZL2XSWEf","switch":"Y__Ba665WoWXlmVIbE7h","rangeContainer":"Ku6j_e6Eqj81vfLaBojJ","range":"N17Fjvpa_4cyM0WDL1lO","inline":"mT7z9r6SMwqJt6UKTt6g"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/Sampling/Sampling.tsx
var Sampling_assign = (undefined && undefined.__assign) || function () {
    Sampling_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Sampling_assign.apply(this, arguments);
};
var Sampling_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};










var toRangeValue = function (value) { return Math.floor(value * 100); };
var fromRangeValue = function (value) { return value / 100; };
var Sampling_Sampling = function () {
    var _a = useTopicEditor(), topic = _a.topic, updateTopic = _a.updateTopic;
    var _b = Sampling_read((0,react.useState)(1), 2), sampling = _b[0], setSampling = _b[1];
    var _c = Sampling_read((0,react.useState)(false), 2), showRange = _c[0], setShowRange = _c[1];
    (0,react.useEffect)(function () {
        if (sampling !== topic.collectionManagement.sampling) {
            setSampling(topic.collectionManagement.sampling);
        }
    }, [topic.collectionManagement.sampling]);
    var handleChange = (0,react.useCallback)(function (values) {
        setSampling(fromRangeValue(values[0]));
    }, []);
    var handleFinalChange = (0,react.useCallback)(function () {
        var values = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            values[_i] = arguments[_i];
        }
        var newSampling = fromRangeValue(values[0]);
        var collectionManagement = {
            sampling: newSampling,
        };
        // If the scale is enabled, we need to recalculate the scale according to the new sampling
        if (topic.collectionManagement.scaleEnabled) {
            collectionManagement.scale = topic.collectionManagement.getRequiredScale(newSampling);
        }
        updateTopic({ collectionManagement: collectionManagement });
    }, [updateTopic]);
    var handleShowRange = (0,react.useCallback)(function () {
        var isShowRange = !showRange;
        var collectionManagement = { sampling: isShowRange ? topic.collectionManagement.requiredSampling : 1 };
        // If sampling turned off, we need to reset the scale to the required scale
        if (topic.collectionManagement.scaleEnabled && !isShowRange) {
            collectionManagement.scale = topic.collectionManagement.getRequiredScale(1);
        }
        setSampling(isShowRange ? topic.collectionManagement.requiredSampling : 1);
        updateTopic({ collectionManagement: collectionManagement });
        setShowRange(isShowRange);
    }, [showRange, updateTopic]);
    return topic.isEditing ? renderReadonlyState() : renderEditableState();
    function renderReadonlyState() {
        var initialSampling = topic.collectionManagement.initialTopic.samplingRate;
        if (!initialSampling || initialSampling === 1) {
            return null;
        }
        return ((0,jsx_runtime.jsxs)(Card/* default */.A, Sampling_assign({ className: Sampling.topicSamplingEditor }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, Sampling_assign({ withSubtitle: true, className: Sampling.inline }, { children: l('Data sampling:') })), " ", toRangeValue(initialSampling), "%"] }), (0,jsx_runtime.jsx)("div", Sampling_assign({ className: Sampling.additionalText }, { children: l("You can't change the sampling rate for an existing topic.") }))] })));
    }
    function renderEditableState() {
        return ((0,jsx_runtime.jsxs)(Card/* default */.A, Sampling_assign({ className: Sampling.topicSamplingEditor }, { children: [renderSwitch(), showRange && renderRange()] })));
    }
    function renderSwitch() {
        var description = ((0,jsx_runtime.jsxs)("div", Sampling_assign({ className: Sampling.additionalText }, { children: [l('Create a topic based on a quick representative sample. Please note: data collected by channels will not be sampled.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", Sampling_assign({ href: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.SAMPLED_TOPICS), target: "_blank", rel: "noopener noreferrer" }, { children: l('Learn more', 'samplingEditor') }))] })));
        return ((0,jsx_runtime.jsx)(Switch/* default */.A, { className: Sampling.switch, label: (0,jsx_runtime.jsx)(H3/* default */.A, Sampling_assign({ withSubtitle: true }, { children: l('Data sampling') })), description: description, checked: showRange, onChange: handleShowRange }));
    }
    function renderRange() {
        return ((0,jsx_runtime.jsxs)("div", Sampling_assign({ className: Sampling.rangeContainer }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Sampling rate') }), (0,jsx_runtime.jsx)("div", Sampling_assign({ className: Sampling.range }, { children: (0,jsx_runtime.jsx)(Range/* default */.A, { values: [toRangeValue(sampling)], min: 1, max: Math.max(2, toRangeValue(topic.collectionManagement.maxSampling)), step: 1, labelSuffix: "%", onChange: handleChange, onFinalChange: handleFinalChange }) }))] })));
    }
};
/* harmony default export */ const components_Sampling_Sampling = (Sampling_Sampling);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/Sampling/index.ts


;// CONCATENATED MODULE: ./src/models/topicEditor/components/TextQuery/TextQuery.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TextQuery = ({"title":"puezIQta4XEp8C0eEodQ","subtitle":"L3SnoueNUccolPZENkK8","label":"EU5OX84Zb_MzhVoxJckA","subtitleContainer":"xNfza_rk7jtcmlHqJIFV","queryEditorOpen":"zmph8iVQdOwX0sUTm0XQ","queryEditorClose":"h7AgSmwtJA0jS75FuaDA","modal":"pgcB0TxfrRyNn4OnFMv8","queryEditorModal":"UmrH3nEuwjfl1eTipLLi"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/TextQuery/TextQuery.tsx
var TextQuery_assign = (undefined && undefined.__assign) || function () {
    TextQuery_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TextQuery_assign.apply(this, arguments);
};
var TextQuery_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};














var TextQuery_TextQuery = function () {
    var _a = useTopicEditor(), topic = _a.topic, updateTopic = _a.updateTopic;
    var _b = TextQuery_read((0,react.useState)(topic.textQuery), 2), query = _b[0], setQuery = _b[1];
    var _c = TextQuery_read((0,react.useState)(false), 2), isFullScreenMode = _c[0], setIsFullScreenMode = _c[1];
    (0,react.useEffect)(function () {
        setQuery(topic.textQuery);
    }, [topic.textQuery]);
    var handleUpdateQuery = (0,react.useCallback)(function (value) {
        updateTopic({ textQuery: value });
    }, []);
    var handleChange = function (value) {
        setQuery(value);
        handleUpdateQuery(value);
        if (topic.textQueryValidationError) {
            updateTopic({ textQueryValidationError: null });
        }
        if (topic.generalError) {
            updateTopic({ generalError: null });
        }
    };
    var handleToggleFullscreen = function () {
        setIsFullScreenMode(!isFullScreenMode);
    };
    return ((0,jsx_runtime.jsx)(other_Collapse_Collapse, { defaultOpen: true, title: (0,jsx_runtime.jsx)(H2/* default */.A, TextQuery_assign({ className: TextQuery.title }, { children: l('Text query') })), closedView: query ? ((0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { readOnly: true, oneLine: true, hideBackground: true, value: query, className: TextQuery.queryEditorClose })) : ((0,jsx_runtime.jsx)(Label/* default */.A, TextQuery_assign({ className: TextQuery.subtitle }, { children: l('Use keywords and operators to find text mentions') }))), openView: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", TextQuery_assign({ className: TextQuery.subtitleContainer }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, TextQuery_assign({ className: TextQuery.subtitle }, { children: l('Use keywords and operators to find text mentions') })), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "expand", className: TextQuery.iconExpand, onClick: handleToggleFullscreen })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { value: query, queryError: topic.textQueryValidationError, className: TextQuery.queryEditorOpen, disabledSuggestions: [
                        AutocompletionSuggestionType.logo,
                        AutocompletionSuggestionType.image,
                        AutocompletionSuggestionType.imageType,
                        AutocompletionSuggestionType.imageSubtype,
                        AutocompletionSuggestionType.imageObject,
                        AutocompletionSuggestionType.imageScene,
                        AutocompletionSuggestionType.imagePerson,
                        AutocompletionSuggestionType.imageActivity,
                        AutocompletionSuggestionType.imageColor
                    ], onChange: handleChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", TextQuery_assign({ className: TextQuery.label }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: sprintf(nl('%s character', '%s characters', query.length), numeral_default()(query.length).format()) }), (0,jsx_runtime.jsx)(other_QueryHintLink_QueryHintLink, { analyticalEventName: "Create topic: open help modal" })] })), (0,jsx_runtime.jsxs)(Modal_Modal/* default */.A, TextQuery_assign({ fitted: true, isOpen: isFullScreenMode, className: TextQuery.modal, onRequestClose: handleToggleFullscreen }, { children: [(0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { focus: true, value: query, queryError: topic.textQueryValidationError, className: TextQuery.queryEditorModal, disabledSuggestions: [AutocompletionSuggestionType.logo], onChange: handleChange, onPressEnter: handleChange }), (0,jsx_runtime.jsxs)("div", TextQuery_assign({ className: TextQuery.label }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: sprintf(nl('%s character', '%s characters', query.length), numeral_default()(query.length).format()) }), (0,jsx_runtime.jsx)(other_QueryHintLink_QueryHintLink, { analyticalEventName: "Create topic: open help modal" })] }))] }))] }) }));
};
/* harmony default export */ const components_TextQuery_TextQuery = (TextQuery_TextQuery);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/TextQuery/index.ts


;// CONCATENATED MODULE: ./src/models/topicEditor/components/NameField/NameField.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NameField_NameField = ({"base":"nkVcg45uOWqrl2Jc7IG5","error":"oTAKt5XSHaIcGUXVCi0F"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/NameField/NameField.tsx
var NameField_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






var NameField_NameField_NameField = function (_a) {
    var _b;
    var propRef = _a.propRef, autoFocus = _a.autoFocus, placeholder = _a.placeholder;
    var _c = useTopicEditor(), topic = _c.topic, updateTopic = _c.updateTopic;
    var _d = NameField_read((0,react.useState)(false), 2), showError = _d[0], setShowError = _d[1];
    var _e = NameField_read((0,react.useState)(topic.name), 2), name = _e[0], setName = _e[1];
    (0,react.useEffect)(function () {
        if (name !== topic.name) {
            setName(topic.name);
        }
        if (name) {
            setShowError(false);
        }
    }, [topic.name]);
    var handleNameChange = function () {
        if (name !== topic.name) {
            updateTopic({ name: name });
        }
    };
    var handleNameInputChange = function (newName) {
        setName(newName);
        setShowError(false);
    };
    var handleFocus = function () {
        if (!name) {
            setShowError(true);
        }
    };
    return ((0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, value: name, autoFocus: autoFocus, placeholder: placeholder, size: "large", propRef: propRef, errorText: showError ? l('Fill in this field') : null, inputClassName: classnames_default()(NameField_NameField.base, (_b = {}, _b[NameField_NameField.error] = showError, _b)), onChange: handleNameInputChange, onBlur: handleNameChange, onFocus: handleFocus }));
};
/* harmony default export */ const components_NameField_NameField = (NameField_NameField_NameField);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/NameField/index.ts


// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewChart/PreviewChart.tsx
var PreviewChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var PreviewChart_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};




var PreviewChart = function (_a) {
    var _b, _c;
    var height = _a.height;
    var topic = useTopicEditor().topic;
    var data = (_b = topic.preview) === null || _b === void 0 ? void 0 : _b.histogram;
    var prevData = (_c = topic.initialPreview) === null || _c === void 0 ? void 0 : _c.histogram;
    if (!(data === null || data === void 0 ? void 0 : data.length))
        return null;
    return ((0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: getChartConfig(PreviewChart_spreadArray([], PreviewChart_read(data), false), {
            height: height,
            initialData: prevData ? PreviewChart_spreadArray([], PreviewChart_read(prevData), false) : null,
        }) }));
};
/* harmony default export */ const PreviewChart_PreviewChart = (PreviewChart);
var getChartConfig = function (data, _a) {
    var _b, _c;
    var height = _a.height, _d = _a.initialData, initialData = _d === void 0 ? undefined : _d;
    return ({
        chart: {
            backgroundColor: 'transparent',
            height: height,
        },
        title: {
            text: 'chartPreview',
            style: { display: 'none' },
        },
        subtitle: {
            text: null,
        },
        xAxis: {
            type: 'datetime',
        },
        yAxis: [
            {
                title: { text: null },
            }
        ],
        tooltip: {
            crosshairs: true,
            xDateFormat: '%d-%m-%Y',
            pointFormat: "".concat(l('Estimated number of mentions:'), " <b>{point.y}</b>"),
        },
        exporting: { enabled: false },
        legend: { enabled: !!initialData },
        plotOptions: {
            area: {
                marker: { enabled: false },
            },
            series: {
                cursor: 'pointer',
                marker: { enabled: false },
            },
        },
        series: [
            initialData
                ? {
                    type: 'spline',
                    name: l('Current query and filters'),
                    pointStart: new Date((_b = initialData[0]) === null || _b === void 0 ? void 0 : _b.key).getTime(),
                    pointInterval: dateUtils/* TIME */.E9.Day,
                    data: initialData.map(function (value) { return value === null || value === void 0 ? void 0 : value.count; }),
                }
                : null,
            {
                type: 'spline',
                name: l('New query and filters'),
                pointStart: new Date((_c = data[0]) === null || _c === void 0 ? void 0 : _c.key).getTime(),
                pointInterval: dateUtils/* TIME */.E9.Day,
                data: data.map(function (value) { return value === null || value === void 0 ? void 0 : value.count; }),
            }
        ].filter(Boolean),
    });
};

;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewChart/index.ts


;// CONCATENATED MODULE: ./src/models/topicEditor/components/MentionsCount/MentionsCount.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionsCount = ({"previewInfo":"VojRvtwYany3_oHmykQG","infoBlock":"IizbijmxmRbyyIJIP9st","mentionCount":"BLn1pPQQJd3M_gcMWN3u","countLabel":"yGe5Z0daentNof8vo55i"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/MentionsCount/MentionsCount.tsx
var MentionsCount_assign = (undefined && undefined.__assign) || function () {
    MentionsCount_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionsCount_assign.apply(this, arguments);
};







var MentionsCount_MentionsCount = function () {
    var topic = useTopicEditor().topic;
    var monthlyCount = topic.collectionManagement.sampledMonthlyCount;
    var dailyCount = topic.collectionManagement.sampledDailyCount;
    var samplingRate = topic.collectionManagement.sampling;
    var sampleTooltip = sprintf(nl('%d%% sample of ≈%d mention.', '%d%% sample of ≈%d mentions.', monthlyCount), samplingRate * 100, monthlyCount);
    var tooltipBase = l('Preview shows estimated number of mentions. Real results for your query might be different');
    var tooltip = samplingRate
        ? sampleTooltip + tooltipBase
        : tooltipBase;
    var roundCount = function (value) {
        return Math.round(value);
    };
    return ((0,jsx_runtime.jsxs)("div", MentionsCount_assign({ className: MentionsCount.previewInfo }, { children: [(0,jsx_runtime.jsx)("div", MentionsCount_assign({ className: MentionsCount.infoBlock }, { children: (0,jsx_runtime.jsxs)(Tooltip/* default */.A, MentionsCount_assign({ text: tooltip }, { children: [(0,jsx_runtime.jsxs)(H1/* default */.A, MentionsCount_assign({ className: MentionsCount.mentionCount }, { children: ["\u2248", numeral_default()(monthlyCount).format('0,0', roundCount)] })), (0,jsx_runtime.jsx)("span", MentionsCount_assign({ className: MentionsCount.countLabel }, { children: l('Mentions in the past month') }))] })) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", MentionsCount_assign({ className: MentionsCount.infoBlock }, { children: (0,jsx_runtime.jsxs)(Tooltip/* default */.A, MentionsCount_assign({ text: tooltip }, { children: [(0,jsx_runtime.jsxs)(H1/* default */.A, MentionsCount_assign({ className: MentionsCount.mentionCount }, { children: ["\u2248", numeral_default()(dailyCount).format('0,0')] })), (0,jsx_runtime.jsx)("span", MentionsCount_assign({ className: MentionsCount.countLabel }, { children: l('Daily average') }))] })) }))] })));
};
/* harmony default export */ const components_MentionsCount_MentionsCount = (MentionsCount_MentionsCount);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/MentionsCount/index.tsx


;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewMentions/PreviewMentions.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const PreviewMentions = ({"filtersCTA":"axVEV7OQYDCHFqeFJGyu","centeredContent":"BgBlOtnyH_mwOQmw6hgU","imagePreview":"vsVBlAwHEG7q5Yj8DzNn"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewMentions/PreviewMentions.tsx
var PreviewMentions_assign = (undefined && undefined.__assign) || function () {
    PreviewMentions_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewMentions_assign.apply(this, arguments);
};











var PreviewMentions_PreviewMentions = function (_a) {
    var _b;
    var visualInsightsEnabled = _a.visualInsightsEnabled, onToggleFiltersCard = _a.onToggleFiltersCard;
    var topic = useTopicEditor().topic;
    var mentions = (_b = topic.preview) === null || _b === void 0 ? void 0 : _b.mentions;
    if (!mentions)
        return null;
    if (mentions.length === 0) {
        return ((0,jsx_runtime.jsx)("div", PreviewMentions_assign({ className: classnames_default()(PreviewMentions.centeredContent) }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/empty_mentions_image.png", title: l('No mentions were found by given query'), message: l('Please check your query or contact our support team') }) })));
    }
    var renderMention = function (mention, idx) {
        var filtersCTAThresholds = [10, 30, 50];
        return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(MentionPreview/* default */.A, { classNameImagePreview: PreviewMentions.imagePreview, showVisualInsights: visualInsightsEnabled, withAuthorInfo: true, author: mention.author, url: mention.url, text: mention.text, title: mention.title, sourceName: mention.source.name, tags: mention.systemTags, squareImageSize: 150, imageUrl: mention.imageUrl, imageType: mention.imageType, imageSubtype: mention.imageSubtype, imageColors: mention.imageColors, imageBrands: mention.imageBrands, imageObjects: mention.imageObjects, imageScenes: mention.imageScenes, imagePeople: mention.imagePeople, imageActivities: mention.imageActivities, imageContentSensitivity: mention.imageContentSensitivity, ocrTexts: mention.ocrTexts, publicationDate: mention.publishedAt, collectionMethod: mention.collectionMethod, sourceFormat: mention.sourceFormat }, mention.url), filtersCTAThresholds.includes(idx) && !!onToggleFiltersCard
                    && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", PreviewMentions_assign({ className: classnames_default()(PreviewMentions.filtersCTA) }, { children: [(0,jsx_runtime.jsx)("img", { alt: "", src: "/static/images/topic_creation_filters_cta.svg" }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("b", { children: [l('Seeing a lot of irrelevant mentions?'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", PreviewMentions_assign({ role: "presentation", onClick: onToggleFiltersCard }, { children: l('Set up a filter') }))] })] }))] }))] }, mention.publishedAt));
    };
    return (0,jsx_runtime.jsx)("div", { children: mentions.map(renderMention) });
};
/* harmony default export */ const components_PreviewMentions_PreviewMentions = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
}); })(PreviewMentions_PreviewMentions));

;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewMentions/index.ts


;// CONCATENATED MODULE: ./src/models/topicEditor/components/MentionsLimitExceeded/MentionsLimitExceeded.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionsLimitExceeded = ({"base":"oPfXCrHRx6bQuhULgJDF","additionalText":"uTocmN1lUh3GmouszxnP"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/MentionsLimitExceeded/MentionsLimitExceeded.tsx
var MentionsLimitExceeded_assign = (undefined && undefined.__assign) || function () {
    MentionsLimitExceeded_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionsLimitExceeded_assign.apply(this, arguments);
};








var MentionsLimitExceeded_MentionsLimitExceeded = function () {
    var topic = useTopicEditor().topic;
    var limit = topic.collectionManagement.scaledMonthlyLimit;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, MentionsLimitExceeded_assign({ className: MentionsLimitExceeded.base }, { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, { children: [sprintf(l('Monthly mention limit of %s exceeded'), numeral_default()(limit).format('0,0')), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "warning", color: "amber" })] }), (0,jsx_runtime.jsx)("div", MentionsLimitExceeded_assign({ className: MentionsLimitExceeded.additionalText }, { children: l('Please refine the query or use available data management tools') }))] })));
};
/* harmony default export */ const components_MentionsLimitExceeded_MentionsLimitExceeded = (MentionsLimitExceeded_MentionsLimitExceeded);

;// CONCATENATED MODULE: ./src/models/topicEditor/components/MentionsLimitExceeded/index.tsx


// EXTERNAL MODULE: ./src/components/ui/ImagePreview/ImagePreview.tsx
var ImagePreview_ImagePreview = __webpack_require__("YQ6q");
;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewImage/PreviewImage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const PreviewImage = ({"moreButton":"GVsjDkOiVSSHGTQlSyRw","masonry":"Y5YTwAq59hzqKteonu31","image":"REXr5Qz_ncBqwkqu_MWP"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewImage/PreviewImage.tsx
var PreviewImage_assign = (undefined && undefined.__assign) || function () {
    PreviewImage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewImage_assign.apply(this, arguments);
};
var PreviewImage_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var PreviewImage_PreviewImage = function () {
    var _a, _b;
    var masonryItemClassName = 'masonryItem';
    var _c = PreviewImage_read((0,react.useState)(null), 2), realLoadedImages = _c[0], setRealLoadedImages = _c[1];
    var masonry = (0,react.useRef)(null);
    var topic = useTopicEditor().topic;
    (0,react.useEffect)(function () {
        if (masonry.current) {
            console.log(masonry.current.masonry.items.filter(function (i) { return i.size.width && i.size.height; }).length);
            setRealLoadedImages(masonry.current.masonry.items.filter(function (i) { return i.size.width && i.size.height; }).length);
        }
    }, [(_a = masonry === null || masonry === void 0 ? void 0 : masonry.current) === null || _a === void 0 ? void 0 : _a.masonry.items.length]);
    var collageMentions = (_b = topic.preview) === null || _b === void 0 ? void 0 : _b.mentions;
    if (!collageMentions)
        return null;
    if (collageMentions.length === 0 /* ||(masonry.current && realLoadedImages === 0) */) {
        return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/empty_gallery.svg", title: l('No images'), message: l('They may have expired, but statistics on them are still available. ' + "To see new images, select the period closer to today's date.") }));
    }
    return ((0,jsx_runtime.jsx)("div", PreviewImage_assign({ style: { overflow: 'hidden' } }, { children: (0,jsx_runtime.jsx)((react_masonry_component_lib_default()), PreviewImage_assign({ ref: masonry, enableResizableChildren: true, className: PreviewImage.masonry, options: {
                columnWidth: ".".concat(masonryItemClassName),
                transitionDuration: '0.2s',
                itemSelector: ".".concat(masonryItemClassName),
                fitWidth: true,
                horizontalOrder: true,
                percentPosition: true,
            } }, { children: collageMentions.map(function (collageMention) { return ((0,jsx_runtime.jsx)(ImagePreview_ImagePreview/* default */.A, { isSquareImage: false, showVisualInsights: true, isSuspiciousContent: (0,isMentionWithSuspiciousContent/* default */.A)(collageMention.systemTags), alt: collageMention.title, className: classnames_default()(PreviewImage.image, masonryItemClassName), src: collageMention.imageUrl, imageType: collageMention.imageType, imageSubtype: collageMention.imageSubtype, imageColors: collageMention.imageColors, imageBrands: collageMention.imageBrands, imageObjects: collageMention.imageObjects, imageScenes: collageMention.imageScenes, imagePeople: collageMention.imagePeople, imageActivities: collageMention.imageActivities, imageContentSensitivity: collageMention.imageContentSensitivity, ocrTexts: collageMention.ocrTexts }, collageMention.id)); }) })) })));
};
/* harmony default export */ const components_PreviewImage_PreviewImage = ((0,react.memo)(PreviewImage_PreviewImage));

;// CONCATENATED MODULE: ./src/models/topicEditor/components/PreviewImage/index.ts


;// CONCATENATED MODULE: ./src/models/topicEditor/components/View/View.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const View = ({"container":"FnaKWSx3_dJPjEiPOXPV","leftContainer":"_7CyfdNmQy4UZzCbKhgCr","rightContainer":"dldlPvrs5h5AfUDLUrRg","leftBlock":"BYHJ8ET0dl6OaDXrQg4Q","rightBlock":"KDxOmpeDQrAKfYdPaR7R","statisticsContainer":"xZgBmdz3iivVtfncMnUv","galleryContainer":"bhN0rD9mJrYwbphoCQfR","mentionsContainer":"_tMp5hXIiBarNRnxB_WC","leftButton":"c3IABkcrNXJmuv9DaA63","rightButton":"F54UvxykOYahMGSWfl9K","hideRight":"j0IUeH_HBujB_PjfwRO1","tabs":"clW20fE97D3a0nEknTB6","previewButtonIcon":"enYwOhAiFpx6C9eBrUoI","endorseContent":"_IroI8zxMc2Jg8qiC7hf"});
;// CONCATENATED MODULE: ./src/models/topicEditor/components/View/View.tsx
var View_assign = (undefined && undefined.__assign) || function () {
    View_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return View_assign.apply(this, arguments);
};
var View_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var View_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var View_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};


























var View_View = function (_a) {
    var _b;
    var visualInsightsEnabled = _a.visualInsightsEnabled, onApply = _a.onApply, onPreview = _a.onPreview, onReset = _a.onReset;
    var _c = useTopicEditor(), topic = _c.topic, previewLoaded = _c.previewLoaded, previewLoading = _c.previewLoading, applyLoading = _c.applyLoading;
    var refNameField = (0,react.useRef)(null);
    var refLeftBlock = (0,react.useRef)(null);
    var _d = View_read((0,react.useState)(false), 2), showRightBlock = _d[0], setShowRightBlock = _d[1];
    var _e = View_read((0,react.useState)(0), 2), selectedTab = _e[0], setSelectedTab = _e[1];
    var handleApply = function () { return View_awaiter(void 0, void 0, void 0, function () {
        var result;
        var _a;
        return View_generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    if (topic.isCreating && topic.name === '') {
                        (_a = refNameField === null || refNameField === void 0 ? void 0 : refNameField.current) === null || _a === void 0 ? void 0 : _a.focus();
                        return [2 /*return*/];
                    }
                    return [4 /*yield*/, onApply()];
                case 1:
                    result = _b.sent();
                    if (result === null || result === void 0 ? void 0 : result.success) {
                        setShowRightBlock(false);
                    }
                    return [2 /*return*/];
            }
        });
    }); };
    var handlePreview = function () {
        onPreview();
        setShowRightBlock(true);
    };
    var handleReset = function () {
        onReset();
        setShowRightBlock(false);
    };
    var handleScrollBottom = function () {
        if (refLeftBlock.current) {
            refLeftBlock.current.scrollTo({
                top: refLeftBlock.current.scrollHeight,
                behavior: 'smooth',
            });
        }
    };
    var handleScrollTop = function () {
        if (refLeftBlock.current) {
            refLeftBlock.current.scrollTo({
                top: 0,
                behavior: 'smooth',
            });
        }
    };
    var tooltipText = ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Your query or filter was changed.'), (0,jsx_runtime.jsx)("br", {}), l('Check the preview first.')] }));
    var tabsConfig = [
        {
            key: 'statistics',
            title: l('Statistics'),
            content: ((0,jsx_runtime.jsxs)("div", View_assign({ className: View.statisticsContainer }, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_MentionsCount_MentionsCount, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), topic.collectionManagement.mentionsLimitExceeded ? (0,jsx_runtime.jsx)(components_MentionsLimitExceeded_MentionsLimitExceeded, {}) : (0,jsx_runtime.jsx)(PreviewChart_PreviewChart, { height: "150px" }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_Sampling_Sampling, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_Scale_Scale, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] }))),
        },
        {
            key: 'mentions',
            title: l('Mentions'),
            content: ((0,jsx_runtime.jsx)("div", View_assign({ className: View.mentionsContainer }, { children: (0,jsx_runtime.jsx)(components_PreviewMentions_PreviewMentions, {}) }))),
        },
        visualInsightsEnabled && {
            key: 'images',
            title: l('Gallery'),
            content: ((0,jsx_runtime.jsx)("div", View_assign({ className: View.galleryContainer }, { children: (0,jsx_runtime.jsx)(components_PreviewImage_PreviewImage, {}) }))),
        }
    ].filter(Boolean);
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [!topic.isEditing && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_NameField_NameField, { placeholder: l('New topic'), propRef: refNameField }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] })), (0,jsx_runtime.jsx)(models_topicEditor_components_Filter_Filter, { onFilterApply: topic.isQuerySelected ? handlePreview : null }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsxs)("div", View_assign({ className: classnames_default()(View.container, (_b = {}, _b[View.hideRight] = (topic.isEditing || (0,mobile/* isSimplifiedView */.O7)()) && !showRightBlock, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", View_assign({ className: View.leftContainer }, { children: [(0,jsx_runtime.jsxs)("div", View_assign({ className: View.leftBlock, ref: refLeftBlock }, { children: [(0,jsx_runtime.jsx)("div", View_assign({ onClick: handleScrollTop }, { children: (0,jsx_runtime.jsx)(components_TextQuery_TextQuery, {}) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", View_assign({ onClick: handleScrollBottom }, { children: (0,jsx_runtime.jsx)(components_ViQuery_ViQuery, {}) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })), (0,jsx_runtime.jsx)("div", View_assign({ className: View.leftButton }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, loading: previewLoading, disabled: !topic.isPreviewAvailable || !topic.isPreviewChanged, label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("span", { children: l('Show preview') }), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: View.previewButtonIcon, type: "chevron-right", size: 20 })] }), onClick: handlePreview }) }))] })), (0,jsx_runtime.jsxs)("div", View_assign({ className: View.rightContainer }, { children: [(0,jsx_runtime.jsx)("div", View_assign({ className: View.rightBlock }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, View_assign({ loaded: !previewLoading, empty: !previewLoaded || !topic.preview.topicInfo, error: !!topic.textQueryValidationError || !!topic.viQueryValidationError || !!topic.generalError, renderError: function () { return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(View.endorseContent), image: "/static/images/create_topic_error.svg", title: l('An error has occurred') })); }, emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(View.endorseContent), image: "/static/images/create_topic_empty_state.svg", title: l('Preview'), message: l('See which mentions will appear in your topic with the current filters and query') }) }, { children: (0,jsx_runtime.jsx)(ui_Tabs_Tabs, { className: View.tabs, tabsConfig: tabsConfig, selectedIndex: selectedTab, onSelect: setSelectedTab }) })) })), (0,jsx_runtime.jsxs)("div", View_assign({ className: View.rightButton }, { children: [topic.isEditing && previewLoaded && ((0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, label: (0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: (0,jsx_runtime.jsx)("span", { children: l('Cancel changes') }) }), onClick: handleReset })), (0,jsx_runtime.jsx)(Tooltip/* default */.A, View_assign({ text: !topic.isPreviewActual && tooltipText }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, loading: applyLoading, label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("span", { children: l(topic.isEditing ? l('Apply') : l('Create topic')) }), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: View.previewButtonIcon, type: "chevron-right", size: 20 })] }), disabled: !topic.isPreviewActual || topic.collectionManagement.mentionsLimitExceeded, onClick: handleApply }) }))] }))] }))] }))] }));
};
/* harmony default export */ const components_View_View = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
}); }, {})(View_View));

;// CONCATENATED MODULE: ./src/models/topicEditor/components/View/index.tsx


;// CONCATENATED MODULE: ./src/models/topicEditor/TopicPreview.ts

var TopicPreview = /** @class */ (function () {
    function TopicPreview(_a) {
        var histogram = _a.histogram, mentions = _a.mentions, topicInfo = _a.topicInfo, signature = _a.signature;
        this.topicInfo = topicInfo;
        this.mentions = mentions;
        this.histogram = histogram;
        this.signature = signature;
    }
    TopicPreview.empty = function () {
        return new TopicPreview({
            topicInfo: null,
            mentions: [],
            histogram: [],
            signature: '',
        });
    };
    TopicPreview.prototype.clone = function () {
        return new TopicPreview({
            topicInfo: this.topicInfo,
            mentions: this.mentions,
            histogram: this.histogram,
            signature: this.signature,
        });
    };
    TopicPreview.prototype.clear = function () {
        this.topicInfo = null;
        this.mentions = [];
        this.histogram = [];
        this.signature = '';
    };
    TopicPreview.fetchPreview = function (topicQuery) {
        return apiSingleton/* default */.A.themes.fetchThemePreview(topicQuery);
    };
    return TopicPreview;
}());


;// CONCATENATED MODULE: ./src/models/topicEditor/TopicCollectionManagement.ts

var TopicCollectionManagement = /** @class */ (function () {
    function TopicCollectionManagement(_a) {
        var sampling = _a.sampling, scale = _a.scale, monthlyCount = _a.monthlyCount, monthlyLimit = _a.monthlyLimit, samplingAllowed = _a.samplingAllowed, scalingAllowed = _a.scalingAllowed, topicsAvailable = _a.topicsAvailable, initialTopic = _a.initialTopic;
        this.sampling = sampling !== null && sampling !== void 0 ? sampling : 1;
        this.scale = scale !== null && scale !== void 0 ? scale : 1;
        this.monthlyCount = monthlyCount !== null && monthlyCount !== void 0 ? monthlyCount : 0;
        this.monthlyLimit = monthlyLimit;
        this.samplingAllowed = samplingAllowed;
        this.scalingAllowed = scalingAllowed;
        this.accountTopicsAvailable = topicsAvailable !== null && topicsAvailable !== void 0 ? topicsAvailable : 0;
        this.initialTopic = initialTopic;
    }
    Object.defineProperty(TopicCollectionManagement.prototype, "isEditing", {
        get: function () {
            return !!this.initialTopic;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "samplingEnabled", {
        get: function () {
            return this.sampling && this.sampling !== 1;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "topicsAvailable", {
        get: function () {
            var _a;
            var available = this.accountTopicsAvailable;
            if (this.isEditing && ((_a = this.initialTopic) === null || _a === void 0 ? void 0 : _a.scale) > 1) {
                available += this.initialTopic.scale;
            }
            return available;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "scaleEnabled", {
        get: function () {
            return this.scale && this.scale !== 1;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "sampledMonthlyCount", {
        get: function () {
            return this.monthlyCount * this.sampling;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "sampledDailyCount", {
        get: function () {
            return this.sampledMonthlyCount / 30;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "scaledMonthlyLimit", {
        get: function () {
            return this.monthlyLimit * this.scale;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "mentionsLimitExceeded", {
        get: function () {
            return this.sampledMonthlyCount > this.scaledMonthlyLimit;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "requiredScale", {
        get: function () {
            return Math.max(1, Math.ceil(this.sampledMonthlyCount / this.monthlyLimit));
        },
        enumerable: false,
        configurable: true
    });
    TopicCollectionManagement.prototype.getRequiredScale = function (sampling) {
        return Math.max(1, Math.ceil((this.monthlyCount * sampling) / this.monthlyLimit));
    };
    Object.defineProperty(TopicCollectionManagement.prototype, "maxScale", {
        get: function () {
            var neededScale = Math.max(1, Math.ceil(this.monthlyCount / this.monthlyLimit));
            if (neededScale > this.topicsAvailable) {
                return this.topicsAvailable;
            }
            return neededScale;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "requiredScaledMonthlyLimit", {
        get: function () {
            return this.monthlyLimit * this.requiredScale;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "maxScaledMonthlyLimit", {
        get: function () {
            return this.monthlyLimit * this.maxScale;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "maxSampling", {
        get: function () {
            return Math.max(0.01, Math.min(this.maxScaledMonthlyLimit / this.monthlyCount, 1));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "requiredSampling", {
        get: function () {
            return Math.max(0.01, Math.min(this.monthlyLimit / this.monthlyCount, 1));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "topicsLimitExceeded", {
        get: function () {
            return this.requiredScale > this.topicsAvailable;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicCollectionManagement.prototype, "isShowScaling", {
        get: function () {
            if (!this.scalingAllowed)
                return false;
            if (this.requiredScale === 1 && this.scale === 1)
                return false;
            return true;
        },
        enumerable: false,
        configurable: true
    });
    TopicCollectionManagement.prototype.update = function (values) {
        (0,lodash.merge)(this, values);
        return this;
    };
    TopicCollectionManagement.prototype.clone = function () {
        return new TopicCollectionManagement({
            sampling: this.sampling,
            scale: this.scale,
            monthlyCount: this.monthlyCount,
            monthlyLimit: this.monthlyLimit,
            samplingAllowed: this.samplingAllowed,
            scalingAllowed: this.scalingAllowed,
            topicsAvailable: this.accountTopicsAvailable,
            initialTopic: this.initialTopic,
        });
    };
    TopicCollectionManagement.prototype.clear = function () {
        if (!this.isEditing) {
            this.sampling = 1;
        }
        this.scale = 1;
        this.monthlyCount = 0;
        this.monthlyLimit = undefined;
        this.samplingAllowed = false;
        this.scalingAllowed = false;
        this.accountTopicsAvailable = 0;
    };
    TopicCollectionManagement.prototype.toApi = function () {
        return {
            sampling: this.sampling === 1 ? null : this.sampling,
            scale: this.scale,
            previewTotal: this.monthlyCount,
        };
    };
    return TopicCollectionManagement;
}());


;// CONCATENATED MODULE: ./src/models/topicEditor/TopicEditor.ts
var TopicEditor_assign = (undefined && undefined.__assign) || function () {
    TopicEditor_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicEditor_assign.apply(this, arguments);
};
var TopicEditor_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var TopicEditor_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};





var TopicEditor = /** @class */ (function () {
    function TopicEditor(_a) {
        var name = _a.name, filter = _a.filter, textQuery = _a.textQuery, viQuery = _a.viQuery, scale = _a.scale, sampling = _a.sampling, initialTopic = _a.initialTopic;
        this.name = name || '';
        this.filter = filter || Filter/* Filter */.dJ.empty();
        this.textQuery = textQuery || '';
        this.viQuery = viQuery || '';
        this.initialTopic = initialTopic;
        this.preview = TopicPreview.empty();
        this.collectionManagement = new TopicCollectionManagement({
            sampling: sampling,
            scale: scale,
            initialTopic: initialTopic,
        });
    }
    Object.defineProperty(TopicEditor.prototype, "isQuerySelected", {
        get: function () {
            return this.textQuery.length > 0 || this.viQuery.length > 0;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicEditor.prototype, "isPreviewActual", {
        get: function () {
            var _a, _b, _c, _d, _e, _f;
            return (((_b = (_a = this.preview) === null || _a === void 0 ? void 0 : _a.topicInfo) === null || _b === void 0 ? void 0 : _b.textQuery) === this.topicForPreview.textQuery
                && ((_d = (_c = this.preview) === null || _c === void 0 ? void 0 : _c.topicInfo) === null || _d === void 0 ? void 0 : _d.viQuery) === this.topicForPreview.viQuery
                && ((_f = (_e = this.preview) === null || _e === void 0 ? void 0 : _e.topicInfo) === null || _f === void 0 ? void 0 : _f.filter.equals(this.topicForPreview.filter)));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicEditor.prototype, "isPreviewChanged", {
        get: function () {
            var _a, _b, _c, _d;
            return (this.topicForPreview.textQuery !== ((_a = this.initialTopic) === null || _a === void 0 ? void 0 : _a.topicQuery.textQuery)
                || this.topicForPreview.viQuery !== ((_b = this.initialTopic) === null || _b === void 0 ? void 0 : _b.topicQuery.viQuery)
                || !this.topicForPreview.filter.equals(Filter/* Filter */.dJ.fromApi((_d = (_c = this.initialTopic) === null || _c === void 0 ? void 0 : _c.topicQuery) === null || _d === void 0 ? void 0 : _d.filter)));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicEditor.prototype, "isPreviewAvailable", {
        get: function () {
            return this.isQuerySelected && !this.textQueryValidationError && !this.viQueryValidationError && !this.isPreviewActual;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicEditor.prototype, "isEditing", {
        get: function () {
            return !!this.initialTopic;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicEditor.prototype, "isCreating", {
        get: function () {
            return !this.isEditing;
        },
        enumerable: false,
        configurable: true
    });
    TopicEditor.prototype.updateTopic = function (values) {
        (0,lodash.merge)(this, values);
        return this;
    };
    TopicEditor.prototype.fetchPreview = function () {
        var _a, _b, _c, _d, _e;
        return TopicEditor_awaiter(this, void 0, void 0, function () {
            var validation, result, param, initialPreview, e_1;
            return TopicEditor_generator(this, function (_f) {
                switch (_f.label) {
                    case 0:
                        _f.trys.push([0, 5, , 6]);
                        this.preview.clear();
                        this.collectionManagement.clear();
                        return [4 /*yield*/, apiSingleton/* default */.A.themes.validateQuery(this.toApi().topicQuery)];
                    case 1:
                        validation = _f.sent();
                        if (!validation.textQueryValidationResult.isValid || !validation.viQueryValidationResult.isValid) {
                            this.textQueryValidationError = (_a = validation.textQueryValidationResult) === null || _a === void 0 ? void 0 : _a.error;
                            this.viQueryValidationError = (_b = validation.viQueryValidationResult) === null || _b === void 0 ? void 0 : _b.error;
                            return [2 /*return*/, this];
                        }
                        return [4 /*yield*/, TopicPreview.fetchPreview(this.toApi().topicQuery)];
                    case 2:
                        result = _f.sent();
                        if (!this.isEditing) return [3 /*break*/, 4];
                        param = {
                            textQuery: ((_c = this.initialTopic) === null || _c === void 0 ? void 0 : _c.topicQuery.textQuery) || null,
                            filter: ((_d = this.initialTopic) === null || _d === void 0 ? void 0 : _d.topicQuery.filter) || null,
                            viQuery: this.isVIEnabled ? ((_e = this.initialTopic) === null || _e === void 0 ? void 0 : _e.topicQuery.viQuery) || null : null,
                        };
                        if (!(param.textQuery || param.viQuery)) return [3 /*break*/, 4];
                        return [4 /*yield*/, TopicPreview.fetchPreview(param)];
                    case 3:
                        initialPreview = _f.sent();
                        this.initialPreview = new TopicPreview({
                            histogram: initialPreview.aggregations.dates.values,
                            mentions: initialPreview.mentions,
                            signature: initialPreview.signature,
                        });
                        _f.label = 4;
                    case 4:
                        this.preview = new TopicPreview({
                            topicInfo: this.topicForPreview,
                            histogram: result.aggregations.dates.values,
                            mentions: result.mentions,
                            signature: result.signature,
                        });
                        this.collectionManagement = new TopicCollectionManagement({
                            sampling: this.collectionManagement.sampling,
                            scale: this.collectionManagement.scale,
                            monthlyCount: result.monthlyCount,
                            monthlyLimit: result.monthlyLimit,
                            samplingAllowed: result.samplingAllowed,
                            scalingAllowed: result.scalingAllowed,
                            topicsAvailable: result.topicsAvailable,
                            initialTopic: this.initialTopic,
                        });
                        return [2 /*return*/, this];
                    case 5:
                        e_1 = _f.sent();
                        this.generalError = e_1;
                        return [2 /*return*/, this];
                    case 6: return [2 /*return*/];
                }
            });
        });
    };
    TopicEditor.prototype.clone = function () {
        var newTopic = new TopicEditor({
            name: this.name,
            filter: this.filter,
            textQuery: this.textQuery,
            viQuery: this.viQuery,
            sampling: this.collectionManagement.sampling,
            scale: this.collectionManagement.scale,
        });
        newTopic.collectionManagement = this.collectionManagement.clone();
        newTopic.preview = this.preview.clone();
        newTopic.textQueryValidationError = this.textQueryValidationError;
        newTopic.viQueryValidationError = this.viQueryValidationError;
        newTopic.initialTopic = this.initialTopic;
        newTopic.initialPreview = this.initialPreview;
        newTopic.isVIEnabled = this.isVIEnabled;
        newTopic.generalError = this.generalError;
        return newTopic;
    };
    Object.defineProperty(TopicEditor.prototype, "topicForPreview", {
        get: function () {
            return {
                textQuery: this.textQuery,
                viQuery: this.viQuery,
                filter: this.filter,
            };
        },
        enumerable: false,
        configurable: true
    });
    TopicEditor.empty = function () {
        return new TopicEditor({
            name: '',
            textQuery: '',
            viQuery: '',
            filter: Filter/* Filter */.dJ.empty(),
            scale: 1,
            sampling: 1,
        });
    };
    TopicEditor.fromApiTopic = function (topic) {
        if (!topic) {
            return null;
        }
        return new TopicEditor({
            name: topic.name,
            viQuery: topic.topicQuery.viQuery,
            textQuery: topic.topicQuery.textQuery,
            filter: Filter/* Filter */.dJ.fromApi(topic.topicQuery.filter),
            scale: topic.scale,
            sampling: topic.samplingRate,
            initialTopic: topic,
        });
    };
    TopicEditor.fromTopicEditor = function (topic) {
        return new TopicEditor({
            name: topic.name,
            viQuery: topic.viQuery,
            textQuery: topic.textQuery,
            filter: topic.filter,
            scale: topic.collectionManagement.scale,
            sampling: topic.collectionManagement.sampling,
            initialTopic: topic.initialTopic,
        });
    };
    TopicEditor.prototype.toApi = function () {
        return TopicEditor_assign({ name: this.name, topicQuery: this.apiTopicQuery, previewSignature: this.preview.signature }, this.collectionManagement.toApi());
    };
    Object.defineProperty(TopicEditor.prototype, "topicQuery", {
        get: function () {
            return {
                filter: this.filter.isEmpty() ? null : this.filter,
                textQuery: this.textQuery || null,
                viQuery: this.viQuery || null,
            };
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(TopicEditor.prototype, "apiTopicQuery", {
        get: function () {
            var topicQuery = {
                filter: this.filter.isEmpty() ? null : this.filter.toApi(),
                textQuery: this.textQuery || null,
                viQuery: this.viQuery || null,
            };
            if (!this.isVIEnabled) {
                topicQuery.viQuery = null;
            }
            return topicQuery;
        },
        enumerable: false,
        configurable: true
    });
    TopicEditor.prototype.equals = function (comparableTopic) {
        var topic = comparableTopic instanceof TopicEditor ? comparableTopic : TopicEditor.fromApiTopic(comparableTopic);
        return (this.name === topic.name
            && this.textQuery === topic.textQuery
            && this.viQuery === topic.viQuery
            && this.filter.equals(topic.filter)
            && this.collectionManagement.scale === topic.collectionManagement.scale
            && this.collectionManagement.sampling === topic.collectionManagement.sampling);
    };
    return TopicEditor;
}());


;// CONCATENATED MODULE: ./src/containers/themeSettings/NameSettings/components/NameSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_NameSettings = ({"changeName":"O_8RagMhm3MnOpi3oDiR","appliedText":"zbQUlNbxFZnj04g4xvGS"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/NameSettings/components/NameSettings.js







var NameSettings = function NameSettings(_ref) {
  var name = _ref.name,
    savedName = _ref.savedName,
    canChangeName = _ref.canChangeName,
    onNameChange = _ref.onNameChange,
    onSave = _ref.onSave;
  var handleNameChange = function handleNameChange(newName) {
    if (onNameChange) {
      onNameChange(newName);
    }
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [!canChangeName && /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
      displayed: true,
      fullWidth: true,
      info: true,
      text: l('You can view all the settings, but you have no access to change them')
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(components_NameSettings.changeName),
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
        fullWidth: true,
        value: name,
        onChange: handleNameChange
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), canChangeName && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          label: l('Apply'),
          disabled: !name || name === savedName,
          onClick: onSave
        })
      })]
    })]
  });
};
/* harmony default export */ const NameSettings_components_NameSettings = (NameSettings);
;// CONCATENATED MODULE: ./src/containers/themeSettings/NameSettings/NameSettings.js






function NameSettings_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, NameSettings_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function NameSettings_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (NameSettings_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var NameSettingsContainer = /*#__PURE__*/function (_Component) {
  function NameSettingsContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, NameSettingsContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = NameSettings_callSuper(this, NameSettingsContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      name: _this.props.savedName
    });
    (0,defineProperty/* default */.A)(_this, "handleNameChange", function (name) {
      var canChangeName = _this.props.canChangeName;
      if (canChangeName && name.length < 75) {
        _this.setState({
          name: name
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleSave", function () {
      var _this$props$setUnsave, _this$props;
      var name = _this.state.name;
      _this.props.updateThemeName({
        name: name.trim()
      });
      (_this$props$setUnsave = (_this$props = _this.props).setUnsavedChangesState) === null || _this$props$setUnsave === void 0 || _this$props$setUnsave.call(_this$props, false);
    });
    return _this;
  }
  (0,inherits/* default */.A)(NameSettingsContainer, _Component);
  return (0,createClass/* default */.A)(NameSettingsContainer, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps, prevState) {
      if (this.props.savedName !== prevProps.savedName) {
        this.setState({
          name: this.props.savedName
        });
      }
      if (this.state.name !== prevState.name) {
        var _this$props$setUnsave2, _this$props2;
        var hasNameChanged = this.props.savedName !== this.state.name;
        (_this$props$setUnsave2 = (_this$props2 = this.props).setUnsavedChangesState) === null || _this$props$setUnsave2 === void 0 || _this$props$setUnsave2.call(_this$props2, hasNameChanged);
      }
    }
  }, {
    key: "render",
    value: function render() {
      var name = this.state.name;
      var _this$props3 = this.props,
        savedName = _this$props3.savedName,
        canChangeName = _this$props3.canChangeName;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(NameSettings_components_NameSettings, {
        name: name,
        savedName: savedName,
        canChangeName: canChangeName,
        onNameChange: this.handleNameChange,
        onSave: this.handleSave
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const NameSettings_NameSettings = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    savedName: (0,themes_selectors/* getCurrentThemeName */.EY)(state),
    canChangeName: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'changeSettings')
  };
}, {
  updateThemeName: themes_model/* themesModel */.i.action.updateThemeName
})(NameSettingsContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/NameSettings/index.js

;// CONCATENATED MODULE: ./src/components/other/Confirm/Modals/stopHistoryCollecting.js


var CANCELLATION_REASON_TITLES = {
  FILTERS_CHANGE: function FILTERS_CHANGE() {
    return l('Filter changes will stop history collection', 'stopHistoryCollecting');
  },
  QUERY_CHANGE: function QUERY_CHANGE() {
    return l('Query changes will stop history collection', 'stopHistoryCollecting');
  }
};
function confirmStopHistoryCollecting(title) {
  var actionLabel = l('Stop collecting', 'stopHistoryCollecting');
  var message = /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
    children: l('Stopped history collection cannot be resumed.', 'stopHistoryCollecting')
  });
  return (0,utils_confirm/* default */.A)({
    title: title(),
    message: message,
    actionLabel: actionLabel,
    buttonType: 'primary'
  });
}
var confirmQueryChange = function confirmQueryChange() {
  return confirmStopHistoryCollecting(CANCELLATION_REASON_TITLES.QUERY_CHANGE);
};
var confirmFiltersChange = function confirmFiltersChange() {
  return confirmStopHistoryCollecting(CANCELLATION_REASON_TITLES.FILTERS_CHANGE);
};
;// CONCATENATED MODULE: ./src/hooks/useBlockNavigation.ts


var useBlockNavigation = function (unsavedChanges, onAction) {
    var navigator = (0,react.useContext)(react_router_dist/* UNSAFE_NavigationContext */.jb).navigator;
    (0,react.useEffect)(function () {
        var unblock = navigator.block(function (tx) {
            if (unsavedChanges) {
                onAction(tx.retry, unblock);
                return false;
            }
            return true;
        });
        if (!unsavedChanges) {
            return unblock();
        }
        return function () {
            unblock();
        };
    }, [unsavedChanges]);
};

;// CONCATENATED MODULE: ./src/containers/themeSettings/GeneralSettings/GeneralSettings.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const GeneralSettings = ({"base":"NdAId5gMdqiojBVqQrhw","view":"_d78PjK0yl_vpQVmeDaY"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/GeneralSettings/GeneralSettings.tsx
var GeneralSettings_assign = (undefined && undefined.__assign) || function () {
    GeneralSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GeneralSettings_assign.apply(this, arguments);
};
var GeneralSettings_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var GeneralSettings_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var GeneralSettings_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};























var GeneralSettings_GeneralSettings = function (_a) {
    var isAnyHistoryCollecting = _a.isAnyHistoryCollecting, visualInsightsEnabled = _a.visualInsightsEnabled, currentTopic = _a.currentTopic, showModal = _a.showModal, fetchTopic = _a.fetchTopic, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = GeneralSettings_read((0,react.useState)(null), 2), topic = _b[0], setTopic = _b[1];
    var _c = GeneralSettings_read((0,react.useState)(false), 2), previewLoading = _c[0], setPreviewLoading = _c[1];
    var _d = GeneralSettings_read((0,react.useState)(false), 2), previewLoaded = _d[0], setPreviewLoaded = _d[1];
    var _e = GeneralSettings_read((0,react.useState)(false), 2), topicEditing = _e[0], setTopicEditing = _e[1];
    var unsavedChanges = (0,react.useMemo)(function () {
        if (!topic) {
            return false;
        }
        return !topic.equals(currentTopic);
    }, [topic]);
    useBlockNavigation(unsavedChanges, function (retry, unblock) {
        showModal('unsavedFeature', {
            onConfirm: function () {
                unblock();
                retry();
            },
            onCancel: function () { },
        });
    });
    (0,react.useEffect)(function () {
        if (!topicEditing && currentTopic) {
            var t = TopicEditor.fromApiTopic(currentTopic);
            t.isVIEnabled = visualInsightsEnabled;
            setTopic(t);
        }
    }, [currentTopic]);
    var updateTopic = function (values) {
        setTopic(function (t) {
            return t.updateTopic(values).clone();
        });
    };
    var fetchPreview = function () { return GeneralSettings_awaiter(void 0, void 0, void 0, function () {
        var newTopic;
        return GeneralSettings_generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    setPreviewLoading(true);
                    setPreviewLoaded(false);
                    return [4 /*yield*/, topic.fetchPreview()];
                case 1:
                    newTopic = _a.sent();
                    setTopic(newTopic.clone());
                    setPreviewLoading(false);
                    setPreviewLoaded(true);
                    return [2 /*return*/];
            }
        });
    }); };
    var resetTopic = function () {
        setTopic(TopicEditor.fromApiTopic(currentTopic));
        setPreviewLoaded(false);
    };
    var editTopic = function () { return GeneralSettings_awaiter(void 0, void 0, void 0, function () {
        var submit, e_1, e_2;
        return GeneralSettings_generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 9, , 11]);
                    submit = function () { return GeneralSettings_awaiter(void 0, void 0, void 0, function () {
                        return GeneralSettings_generator(this, function (_a) {
                            switch (_a.label) {
                                case 0:
                                    setTopicEditing(true);
                                    return [4 /*yield*/, apiSingleton/* default */.A.themes.updateTopic(GeneralSettings_assign({ topicId: currentTopic.id }, topic.toApi()))];
                                case 1:
                                    _a.sent();
                                    fetchTopic({ themeId: currentTopic.id });
                                    setTopicEditing(false);
                                    setTopic(TopicEditor.fromTopicEditor(topic));
                                    sendAnalyticalEvent({
                                        eventType: 'Topic: updated',
                                        properties: {
                                            isFilterChanged: !Filter/* Filter */.dJ.fromApi(currentTopic.topicQuery.filter).equals(topic.filter),
                                            isTextQueryChanged: currentTopic.topicQuery.textQuery && currentTopic.topicQuery.textQuery !== topic.textQuery,
                                            isViQueryChanged: currentTopic.topicQuery.viQuery && currentTopic.topicQuery.viQuery !== topic.viQuery,
                                            isScaleChanged: currentTopic.scale && currentTopic.scale !== topic.collectionManagement.scale,
                                        },
                                    });
                                    return [2 /*return*/, { success: true }];
                            }
                        });
                    }); };
                    if (!isAnyHistoryCollecting) return [3 /*break*/, 6];
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, confirmQueryChange()];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, submit()];
                case 3: return [2 /*return*/, _a.sent()];
                case 4:
                    e_1 = _a.sent();
                    console.warn('User canceled the confirmation dialog.', e_1);
                    return [2 /*return*/, { success: false }];
                case 5: return [3 /*break*/, 8];
                case 6: return [4 /*yield*/, submit()];
                case 7: return [2 /*return*/, _a.sent()];
                case 8: return [3 /*break*/, 11];
                case 9:
                    e_2 = _a.sent();
                    return [4 /*yield*/, (0,utils_alert/* default */.A)({
                            title: l('An error has occurred'),
                            message: l('Topic was not updated. Please try again later.'),
                        })];
                case 10:
                    _a.sent();
                    setTopicEditing(false);
                    return [2 /*return*/, { success: false }];
                case 11: return [2 /*return*/];
            }
        });
    }); };
    return ((0,jsx_runtime.jsxs)("div", GeneralSettings_assign({ className: GeneralSettings.base }, { children: [(0,jsx_runtime.jsxs)(Card/* default */.A, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Topic name') }), (0,jsx_runtime.jsx)(NameSettings_NameSettings, {})] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Loader/* default */.A, GeneralSettings_assign({ loaded: !!currentTopic }, { children: (0,jsx_runtime.jsx)(Card/* default */.A, GeneralSettings_assign({ className: GeneralSettings.view }, { children: (0,jsx_runtime.jsx)(TopicEditorProvider, GeneralSettings_assign({ topic: topic, updateTopic: updateTopic, applyLoading: topicEditing, previewLoaded: previewLoaded, previewLoading: previewLoading }, { children: (0,jsx_runtime.jsx)(components_View_View, { onPreview: fetchPreview, onApply: editTopic, onReset: resetTopic }) })) })) }))] })));
};
/* harmony default export */ const themeSettings_GeneralSettings_GeneralSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    currentTopic: (0,themes_selectors/* getCurrentTheme */.j1)(state),
    isAnyHistoryCollecting: (0,themes_selectors/* isHistoryCollecting */.bb)(state),
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
}); }, {
    showModal: modals_actions/* showModal */.to,
    fetchTopic: themes_model/* themesModel */.i.action.fetchGeneralThemeInfo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(GeneralSettings_GeneralSettings));

;// CONCATENATED MODULE: ./src/containers/themeSettings/GeneralSettings/index.tsx


// EXTERNAL MODULE: ./node_modules/lodash/get.js
var get = __webpack_require__("mwIZ");
var get_default = /*#__PURE__*/__webpack_require__.n(get);
// EXTERNAL MODULE: ./node_modules/lodash/set.js
var set = __webpack_require__("D1y2");
var set_default = /*#__PURE__*/__webpack_require__.n(set);
// EXTERNAL MODULE: ./src/utils/defaultMentionWallSettings.json
var defaultMentionWallSettings = __webpack_require__("R50I");
// EXTERNAL MODULE: ./node_modules/ace-builds/src-noconflict/mode-json.js
var mode_json = __webpack_require__("VeWa");
;// CONCATENATED MODULE: ./src/containers/themeSettings/MentionWallSettings/MentionWallSettingsAdvanceMode.js






function MentionWallSettingsAdvanceMode_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionWallSettingsAdvanceMode_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionWallSettingsAdvanceMode_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionWallSettingsAdvanceMode_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var isJSONValid = function isJSONValid(str) {
  try {
    JSON.parse(str);
  } catch (e) {
    return false;
  }
  return true;
};
var MentionWallSettingsAdvanceMode = /*#__PURE__*/function (_Component) {
  function MentionWallSettingsAdvanceMode(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionWallSettingsAdvanceMode);
    _this = MentionWallSettingsAdvanceMode_callSuper(this, MentionWallSettingsAdvanceMode, [props]);
    (0,defineProperty/* default */.A)(_this, "handleChange", function (value) {
      var settings = value;
      _this.setState({
        settings: settings
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSave", function () {
      _this.props.onSave(_this.state.settings);
    });
    _this.state = {
      settings: JSON.stringify(_this.props.settings, null, 2)
    };
    return _this;
  }
  (0,inherits/* default */.A)(MentionWallSettingsAdvanceMode, _Component);
  return (0,createClass/* default */.A)(MentionWallSettingsAdvanceMode, [{
    key: "render",
    value: function render() {
      var settings = this.state.settings;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
          children: l('Mention wall advance editor')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(react_ace_lib/* default */.Ay, {
          mode: "json",
          theme: "github",
          value: settings,
          onChange: this.handleChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          label: l('Save editor'),
          disabled: !isJSONValid(settings),
          onClick: this.handleSave
        })]
      });
    }
  }]);
}(react.Component);

;// CONCATENATED MODULE: ./src/containers/themeSettings/MentionWallSettings/MentionWallSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionWallSettings = ({"label":"MZkKVf4xVwCxtxYBN3O8","input":"UB2VOPHRXkE9NOJsN1lR","field":"vRTRwYjD8_0aV8tnvukd","advance":"t67MPhoyGVW0ENgpVNRS"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/MentionWallSettings/MentionWallSettings.js










function MentionWallSettings_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionWallSettings_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionWallSettings_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionWallSettings_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
















var MentionWallSettingsContainer = /*#__PURE__*/function (_Component) {
  function MentionWallSettingsContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionWallSettingsContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = MentionWallSettings_callSuper(this, MentionWallSettingsContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      settings: defaultMentionWallSettings,
      showAdvance: false
    });
    (0,defineProperty/* default */.A)(_this, "componentDidMount", /*#__PURE__*/(0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee() {
      var _yield$api$mentionWal, settings;
      return regenerator_default().wrap(function _callee$(_context) {
        while (1) switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return apiSingleton/* default */.A.mentionWall.getSettings({
              themeId: _this.props.themeId
            });
          case 2:
            _yield$api$mentionWal = _context.sent;
            settings = _yield$api$mentionWal.settings;
            _this.setState({
              settings: settings || defaultMentionWallSettings
            });
          case 5:
          case "end":
            return _context.stop();
        }
      }, _callee);
    })));
    (0,defineProperty/* default */.A)(_this, "handleChangeAdvance", function (value) {
      _this.setState({
        settings: JSON.parse(value)
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeSingleProp", function (key, type) {
      return function (event) {
        /**
         * Synthetic event is polled (reused)
         * so in async handlers like setState it can be nullified if without persisting.
         * After switching to React v.17+ pls remove
         */
        event.persist();
        _this.setState(function (prevState) {
          var settings = prevState.settings;
          if (type === 'text') {
            set_default()(settings, key, event.target.value);
          }
          if (type === 'checkbox') {
            set_default()(settings, key, event.target.checked);
          }
          if (type === 'number') {
            set_default()(settings, key, parseInt(event.target.value, 10));
          }
          return {
            settings: settings
          };
        });
      };
    });
    (0,defineProperty/* default */.A)(_this, "handleSave", function () {
      var settings = _this.state.settings;
      _this.setState({
        saving: true
      });
      try {
        apiSingleton/* default */.A.mentionWall.updateSettings({
          themeId: _this.props.themeId,
          settings: settings
        });
        _this.setState({
          saving: false,
          saved: true
        });
        _this.timer = setTimeout(function () {
          return _this.setState({
            saving: false,
            saved: false
          });
        }, 5000);
      } catch (err) {
        _this.setState({
          saving: false,
          saved: false,
          error: true
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleAdvanceMode", function () {
      _this.setState(function (prevState) {
        return {
          showAdvance: !prevState.showAdvance
        };
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderField", function (_ref2) {
      var label = _ref2.label,
        key = _ref2.key,
        isColor = _ref2.isColor,
        _ref2$type = _ref2.type,
        type = _ref2$type === void 0 ? 'text' : _ref2$type;
      var value = get_default()(_this.state.settings, key);
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(MentionWallSettings.field),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(MentionWallSettings.label),
          children: label
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("input", {
          className: classnames_default()(MentionWallSettings.input),
          type: type,
          value: value,
          checked: value,
          onChange: _this.handleChangeSingleProp(key, type)
        }), isColor && /*#__PURE__*/(0,jsx_runtime.jsx)("input", {
          value: value,
          type: "color",
          onChange: _this.handleChangeSingleProp(key, type)
        })]
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(MentionWallSettingsContainer, _Component);
  return (0,createClass/* default */.A)(MentionWallSettingsContainer, [{
    key: "render",
    value: function render() {
      var _this$state = this.state,
        settings = _this$state.settings,
        saving = _this$state.saving,
        saved = _this$state.saved,
        error = _this$state.error;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
          children: l('Mention wall customization')
        }), this.renderField({
          label: l('Refresh interval'),
          key: 'refreshInterval',
          type: 'number'
        }), this.renderField({
          label: l('Header height'),
          key: 'headerStyle.height'
        }), this.renderField({
          label: l('Logo src'),
          key: 'logo'
        }), this.renderField({
          label: l('Logo height'),
          key: 'logoStyle.height'
        }), this.renderField({
          label: l('Background color'),
          key: 'bg',
          isColor: true
        }), this.renderField({
          label: l('Card background gradient'),
          key: 'cardBgColor'
        }), this.renderField({
          label: l('Text color'),
          key: 'textColor',
          isColor: true
        }), this.renderField({
          label: l('Show sentiment'),
          key: 'showSentiment',
          type: 'checkbox'
        }), this.renderField({
          label: l('Show credit'),
          key: 'showCredit',
          type: 'checkbox'
        }), this.renderField({
          label: l('Credit Background color'),
          key: 'creditBg',
          isColor: true
        }), this.renderField({
          label: l('Credit height'),
          key: 'creditStyle.height'
        }), this.renderField({
          label: l('Credit image src'),
          key: 'creditImageSrc'
        }), this.renderField({
          label: l('Credit image height'),
          key: 'creditImageStyle.height'
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          className: classnames_default()(MentionWallSettings.advance),
          onClick: this.handleAdvanceMode,
          children: l('Toggle advance mode')
        }), this.state.showAdvance && /*#__PURE__*/(0,jsx_runtime.jsx)(MentionWallSettingsAdvanceMode, {
          settings: settings,
          onSave: this.handleChangeAdvance
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          label: l('Save settings'),
          loading: saving,
          onClick: this.handleSave
        }), saved && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          children: "Saved!"
        }), error && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
          children: "Error!"
        })]
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const MentionWallSettings_MentionWallSettings = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, ownProps) {
  return {
    themeId: ownProps.params.id,
    savedName: (0,themes_selectors/* getCurrentThemeName */.EY)(state),
    canChangeName: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'changeSettings')
  };
}, {
  updateThemeName: themes_model/* themesModel */.i.action.updateThemeName
}))(MentionWallSettingsContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/MentionWallSettings/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/IntegrationsSettings/components/IntegrationItem.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const IntegrationItem = ({"base":"QUeqJx5aSC3JymKRGoDB","disabled":"yHjazBA64ub9oO1SRJwB","info":"DSLw6C_ZSR75V44n9q_g","text":"faomzcW50gI_clpb150B","name":"Epm8_h2ObFKJm_fPW_aR","description":"IUg3fiM6r9SyhUqksf7R","image":"lpt0be3_oL9r7FlhJ7Jn","actionLabel":"W4y0VVnRnehtALTMzx5p"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/IntegrationsSettings/components/IntegrationItem.tsx
var IntegrationItem_assign = (undefined && undefined.__assign) || function () {
    IntegrationItem_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return IntegrationItem_assign.apply(this, arguments);
};












var Spacer = function () { return (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { width: "2px" }); };
var IntegrationItem_IntegrationItem = function (_a) {
    var _b;
    var name = _a.name, type = _a.type, enabled = _a.enabled, description = _a.description, learnMoreLink = _a.learnMoreLink, configuredIntegrations = _a.configuredIntegrations, typeHidden = _a.typeHidden, typeDisabled = _a.typeDisabled, canChangeIntegrations = _a.canChangeIntegrations, onView = _a.onView, onAdd = _a.onAdd;
    var handleAdd = function () {
        onAdd(type);
    };
    var handleView = function () {
        onView(type);
    };
    if (typeHidden) {
        return null;
    }
    var renderConfigurationButton = function () { return ((0,jsx_runtime.jsx)(Button/* default */.A, { success: true, size: "small", label: (0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.actionLabel) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "settings" }), (0,jsx_runtime.jsx)(Spacer, {}), (0,jsx_runtime.jsx)("span", { children: sprintf(nl('%d integration', '%d integrations', configuredIntegrations.length), configuredIntegrations.length) })] })), "data-hook": "integration-configure", onClick: handleView })); };
    var renderAddIntegrationButton = function (_a) {
        var _b = _a.isDisabled, isDisabled = _b === void 0 ? false : _b;
        return ((0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "small", "data-hook": "integration-add", disabled: isDisabled, label: ((0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.actionLabel) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus" }), (0,jsx_runtime.jsx)(Spacer, {}), (0,jsx_runtime.jsx)("span", { children: l('Add') })] }))), onClick: handleAdd }));
    };
    var renderDisabledAddButton = function () {
        var handleChatClick = function () {
            (0,utils_intercom/* showNewMessage */.z$)(l('Hi! I\'m curious about the Integrations. Could you give me more information about it?'));
        };
        return ((0,jsx_runtime.jsx)(Popover/* default */.A, IntegrationItem_assign({ hoverable: true, on: "hover", position: "bottom right", content: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('This integration is not supported in your account.', 'integrations'), (0,jsx_runtime.jsx)("br", {}), l('Please contact our customer support team to enable it.', 'integrations'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", IntegrationItem_assign({ onClick: handleChatClick }, { children: l('Chat with us') }))] }) }, { children: renderAddIntegrationButton({ isDisabled: true }) })));
    };
    return ((0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.base, (_b = {}, _b[IntegrationItem.disabled] = !enabled, _b)), "data-hook": "integration-".concat(type) }, { children: [(0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.info) }, { children: [(0,jsx_runtime.jsx)("img", { className: classnames_default()(IntegrationItem.image), src: "/static/images/integrations/".concat(type, ".svg"), alt: name }), (0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.text) }, { children: [(0,jsx_runtime.jsx)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.name) }, { children: name })), (0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.description) }, { children: [description, ".", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", IntegrationItem_assign({ href: learnMoreLink, target: "_blank", rel: "noopener noreferrer" }, { children: l('Learn more') }))] }))] }))] })), (0,jsx_runtime.jsxs)("div", IntegrationItem_assign({ className: classnames_default()(IntegrationItem.action) }, { children: [!typeDisabled && !configuredIntegrations.length && canChangeIntegrations && renderAddIntegrationButton({}), !typeDisabled && configuredIntegrations.length > 0 && renderConfigurationButton(), typeDisabled && renderDisabledAddButton()] }))] })));
};
/* harmony default export */ const components_IntegrationItem = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var type = _a.type;
    return ({
        // @ts-ignore
        typeHidden: (0,integrations_selectors/* isIntegrationTypeHidden */.li)(state, type),
        // @ts-ignore
        typeDisabled: (0,integrations_selectors/* isIntegrationTypeUnavailable */.Lz)(state, type),
        // @ts-ignore
        canChangeIntegrations: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'changeIntegrations'),
    });
})(IntegrationItem_IntegrationItem));

;// CONCATENATED MODULE: ./src/containers/themeSettings/IntegrationsSettings/components/ApiPromotion.tsx
var ApiPromotion_assign = (undefined && undefined.__assign) || function () {
    ApiPromotion_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ApiPromotion_assign.apply(this, arguments);
};











// This is a copy of IntegrationItem view
var ApiPromotion = function (_a) {
    var sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var apiInfo = utils_integrations().api;
    var type = 'api';
    var name = apiInfo.name;
    var description = apiInfo.description;
    var learnMoreLink = getDocsLink(type);
    function handleChatClick() {
        var addonName = 'API';
        var openBy = 'integration';
        sendAnalyticalEvent({ eventType: 'Promote Add-ons: click chat button', properties: { addonName: addonName, openBy: openBy } });
        (0,utils_intercom/* showNewMessage */.z$)((0,AddonsPromote_addons/* getChatMessage */.w)(l(addonName)));
    }
    return ((0,jsx_runtime.jsxs)("div", ApiPromotion_assign({ className: IntegrationItem.base, "data-hook": "integration-".concat(type) }, { children: [(0,jsx_runtime.jsxs)("div", ApiPromotion_assign({ className: classnames_default()(IntegrationItem.info) }, { children: [(0,jsx_runtime.jsx)("img", { className: classnames_default()(IntegrationItem.image), src: "/static/images/addonsPromote/API_icon.svg", alt: name }), (0,jsx_runtime.jsxs)("div", ApiPromotion_assign({ className: classnames_default()(IntegrationItem.text) }, { children: [(0,jsx_runtime.jsx)("div", ApiPromotion_assign({ className: classnames_default()(IntegrationItem.name) }, { children: name })), (0,jsx_runtime.jsxs)("div", ApiPromotion_assign({ className: classnames_default()(IntegrationItem.description) }, { children: [description, ".", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", ApiPromotion_assign({ href: learnMoreLink, target: "_blank", rel: "noopener noreferrer" }, { children: l('Learn more') }))] }))] }))] })), (0,jsx_runtime.jsx)("div", ApiPromotion_assign({ className: classnames_default()(IntegrationItem.action) }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, outline: true, size: "small", label: l('Chat with us'), onClick: handleChatClick }) }))] })));
};
/* harmony default export */ const components_ApiPromotion = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(ApiPromotion));

;// CONCATENATED MODULE: ./src/containers/themeSettings/IntegrationsSettings/IntegrationsSettings.tsx
var IntegrationsSettings_assign = (undefined && undefined.__assign) || function () {
    IntegrationsSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return IntegrationsSettings_assign.apply(this, arguments);
};

















var HIDDEN_INTEGRATIONS = ['crmViaEmail'];
var IntegrationsContainer = function (_a) {
    var integrations = _a.integrations, shouldPromoteApiAddon = _a.shouldPromoteApiAddon, themeId = _a.themeId, integrationsLoaded = _a.integrationsLoaded, fetchIntegrations = _a.fetchIntegrations, showModal = _a.showModal;
    (0,react.useEffect)(function () {
        fetchIntegrations({ themeId: themeId });
    }, [themeId]);
    var handleAddIntegration = function (type) {
        showModal('addIntegration', { type: type, add: true });
    };
    var handleViewIntegrations = function (type) {
        showModal('addIntegration', { type: type });
    };
    var getVisibleIntegrations = function () {
        var integrationsData = utils_integrations();
        var configuredIntegrationTypes = integrations.map(function (integration) { return integration.type; });
        if (!configuredIntegrationTypes.includes(IntegrationType.CrmViaEmail)) {
            return Object.keys(integrationsData)
                .filter(function (type) { return !HIDDEN_INTEGRATIONS.includes(type); })
                .reduce(function (filteredIntegrations, type) {
                var _a;
                return (IntegrationsSettings_assign(IntegrationsSettings_assign({}, filteredIntegrations), (_a = {}, _a[type] = integrationsData[type], _a)));
            }, {});
        }
        return integrationsData;
    };
    var visibleIntegrations = getVisibleIntegrations();
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, IntegrationsSettings_assign({ loaded: integrationsLoaded }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Integrations') }), Object.keys(visibleIntegrations).map(function (type) {
                    return visibleIntegrations[type] && ((0,jsx_runtime.jsx)(components_IntegrationItem, { type: type, name: visibleIntegrations[type].name, enabled: visibleIntegrations[type].enabled, description: visibleIntegrations[type].description, configuredIntegrations: integrations.filter(function (integration) { return integration.type === type; }), learnMoreLink: getDocsLink(type), onAdd: handleAddIntegration, onView: handleViewIntegrations }, type));
                }), shouldPromoteApiAddon && ((0,jsx_runtime.jsx)(components_ApiPromotion, {}))] })) }));
};
/* harmony default export */ const IntegrationsSettings = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    integrations: (0,integrations_selectors/* getIntegrations */.Yl)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    integrationsLoaded: (0,integrations_selectors/* isIntegrationsLoaded */.vw)(state),
    shouldPromoteApiAddon: !(0,account_selectors/* isApiAddonAvailable */.S3)(state),
}); }, { fetchIntegrations: integrations_model/* integrationsModel */.F.action.fetchIntegrations, showModal: modals_actions/* showModal */.to }))(IntegrationsContainer));

;// CONCATENATED MODULE: ./src/containers/themeSettings/IntegrationsSettings/index.js

;// CONCATENATED MODULE: ./src/containers/channels/Channels/components/Channels.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_Channels = ({"pageInfo":"iC4JYfi1PJGe52ZUS2g3","noBreak":"cZfOAYwNZo7dhh5IfJuf","searchContainer":"dTbKG6KkNmCMiUdU1Sn5","inputSectionContainer":"xVZACbxQDT7xGBZxr89g","sectionTitle":"ipcX_GeYFtayHVeCURVc","errorStateMessage":"yG2kQMiKunHBlQEzX9x4","errorStateMessage__title":"q8OtoMZwTcdpuVcVzvuy","emptyStateMessage":"LKNsYdP3ifbpa76AXzKe","content":"RbbCL4rpEVbJAf9oXgvm","buttonsContainer":"vA2SEzXenvpsu4tEoCSE","button":"TdtnoNudoScFi2xjYEvB","buttonIcon":"jUGxDtfgg1XtWP6IGhWw","endorseContent":"xlabDFhMnAemkVaXDiuu"});
;// CONCATENATED MODULE: ./src/containers/channels/Channels/components/Channels.tsx
var Channels_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var Channels_assign = (undefined && undefined.__assign) || function () {
    Channels_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Channels_assign.apply(this, arguments);
};




















var Channels = /** @class */ (function (_super) {
    Channels_extends(Channels, _super);
    function Channels() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            search: '',
        };
        _this.handleSearch = (0,lodash.debounce)(function (search) {
            _this.setState({ search: search });
        }, 300);
        _this.knowledgeBaseLink = (0,navigation/* getLinkToHelpYouscan */.vn)((_this.props.coverage === CoverageType.EasternEurope
            ? navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.CHANNELS_LOCAL
            : navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.CHANNELS_GLOBAL));
        _this.renderErrorState = function () {
            return ((0,jsx_runtime.jsxs)("div", Channels_assign({ className: classnames_default()(components_Channels.errorStateMessage) }, { children: [(0,jsx_runtime.jsx)("img", { src: "/static/images/channels-error.svg", alt: "Error occurs" }), (0,jsx_runtime.jsx)(H3/* default */.A, Channels_assign({ className: classnames_default()(components_Channels.errorStateMessage__title) }, { children: l('Something went wrong') })), (0,jsx_runtime.jsx)("p", Channels_assign({ className: classnames_default()(components_Channels.errorStateMessage__msg) }, { children: l('Please contact our support team and we will try to solve this issue.') }))] })));
        };
        _this.renderSearchChannels = function () {
            var onOpenAddChannelModal = _this.props.onOpenAddChannelModal;
            return ((0,jsx_runtime.jsxs)("div", Channels_assign({ className: components_Channels.searchContainer }, { children: [(0,jsx_runtime.jsx)("p", Channels_assign({ className: components_Channels.sectionTitle }, { children: l('You can paste the link to the channel here') })), (0,jsx_runtime.jsx)(channels_SearchChannels_SearchChannels, { className: components_Channels.inputSectionContainer, onSearch: function (url) { return onOpenAddChannelModal({ url: url }); } })] })));
        };
        _this.renderTopSources = function () {
            var _a = _this.props, onOpenAddChannelInfoModal = _a.onOpenAddChannelInfoModal, canShowThreadsChannel = _a.canShowThreadsChannel;
            return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("p", Channels_assign({ className: components_Channels.sectionTitle }, { children: l('...or choose one of the top-sources') })), (0,jsx_runtime.jsx)("div", Channels_assign({ className: components_Channels.buttonsContainer }, { children: getTopChannels().filter(function (x) { return !(x.id === 'threads' && canShowThreadsChannel); }).map(function (channel) { return ((0,jsx_runtime.jsx)(Button/* default */.A, { className: components_Channels.button, label: channel.title, icon: (0,jsx_runtime.jsx)("span", Channels_assign({ className: components_Channels.buttonIcon }, { children: channel.icon })), onClick: function () { return onOpenAddChannelInfoModal({ channel: channel }); } }, channel.id)); }) }))] }));
        };
        return _this;
    }
    Object.defineProperty(Channels.prototype, "visibleChannels", {
        get: function () {
            var _this = this;
            var channels = this.props.channels;
            if (!channels) {
                return null;
            }
            return channels.filter(function (channel) {
                var profile = channel.profile;
                var searchString = _this.state.search.toLowerCase();
                var filterStrings = [
                    profile.name,
                    profile.nickname,
                    channel.source,
                    profile.description,
                    profile.url
                ];
                return filterStrings.some(function (text) { return text === null || text === void 0 ? void 0 : text.toLowerCase().includes(searchString); });
            });
        },
        enumerable: false,
        configurable: true
    });
    Channels.prototype.renderChannelsList = function () {
        var visibleChannels = this.visibleChannels;
        var _a = this.props, channels = _a.channels, loading = _a.loading;
        return channels && !channels.length
            ? ((0,jsx_runtime.jsxs)("div", Channels_assign({ className: classnames_default()(components_Channels.endorseContent) }, { children: [(0,jsx_runtime.jsx)("img", { src: "/static/images/no_channels.png", alt: "No channels" }), (0,jsx_runtime.jsx)(H3/* default */.A, { children: l('You have not added any channels yet') }), (0,jsx_runtime.jsxs)("p", { children: [l(
                            // eslint-disable-next-line max-len
                            'If you want to monitor particular pages outside your topic query and/or containing stopwords, add them as channels. Find more info'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("a", Channels_assign({ href: this.knowledgeBaseLink, target: "_blank", rel: "noopener noreferrer" }, { children: [l('here'), "."] }))] })] })))
            : ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Added channels') }), (0,jsx_runtime.jsx)(TextField/* default */.A, { placeholder: l('Search'), leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), onChange: this.handleSearch }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(Loader/* default */.A, Channels_assign({ loaded: !loading, empty: !visibleChannels || (visibleChannels && !visibleChannels.length), emptyStateImage: "/static/images/empty_search.png", emptyStateTitle: l('No channels were found') }, { children: channels
                            && ((0,jsx_runtime.jsx)("div", Channels_assign({ className: classnames_default()(components_Channels.content) }, { children: visibleChannels.map(function (channel) {
                                    return (0,jsx_runtime.jsx)(ChannelCard_ChannelCard, { channel: channel }, channel.key);
                                }) }))) }))] }));
    };
    Channels.prototype.render = function () {
        var _a = this.props, error = _a.error, canAddChannel = _a.canAddChannel;
        return ((0,jsx_runtime.jsxs)(Card/* default */.A, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Channels') }), (0,jsx_runtime.jsxs)("p", Channels_assign({ className: components_Channels.pageInfo }, { children: [l('Collect mentions from particular pages outside your topic query.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", Channels_assign({ className: components_Channels.noBreak }, { children: [l('Learn more in the'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", Channels_assign({ href: this.knowledgeBaseLink, target: "_blank", rel: "noopener noreferrer" }, { children: l('Knowledge base') })), "."] }))] })), !canAddChannel
                    && ((0,jsx_runtime.jsx)(InfoBox/* default */.A, { displayed: true, fullWidth: true, info: true, text: l('You can view all the settings, but you have no access to change them') })), error ? this.renderErrorState() : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Add new channels') }), this.renderSearchChannels(), this.renderTopSources()] }), this.renderChannelsList()] }))] }));
    };
    return Channels;
}(react.PureComponent));
/* harmony default export */ const Channels_components_Channels = (Channels);

;// CONCATENATED MODULE: ./src/containers/channels/Channels/Channels.js






function Channels_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, Channels_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function Channels_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (Channels_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }










var ChannelsContainer = /*#__PURE__*/function (_PureComponent) {
  function ChannelsContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ChannelsContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = Channels_callSuper(this, ChannelsContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleOpenAddChannelModal", function (props) {
      _this.props.showModal('addChannel', props);
    });
    (0,defineProperty/* default */.A)(_this, "handleOpenAddChannelInfoModal", function (props) {
      _this.props.showModal('addChannelWithInfo', props);
      _this.props.sendAnalyticalEvent({
        eventType: 'Channels settings: top source button clicked',
        props: {
          source: props === null || props === void 0 ? void 0 : props.id
        }
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ChannelsContainer, _PureComponent);
  return (0,createClass/* default */.A)(ChannelsContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var themeId = this.props.themeId;
      this.props.fetchChannels({
        themeId: themeId
      });
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var themeId = this.props.themeId;
      if (prevProps.themeId !== themeId) {
        this.props.fetchChannels({
          themeId: themeId
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        channels = _this$props.channels,
        loading = _this$props.loading,
        error = _this$props.error,
        coverage = _this$props.coverage,
        canAddChannel = _this$props.canAddChannel,
        canShowThreadsChannel = _this$props.canShowThreadsChannel;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Channels_components_Channels, {
        loading: loading,
        channels: channels,
        error: error,
        coverage: coverage,
        canAddChannel: canAddChannel,
        canShowThreadsChannel: canShowThreadsChannel,
        onOpenAddChannelModal: this.handleOpenAddChannelModal,
        onOpenAddChannelInfoModal: this.handleOpenAddChannelInfoModal
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const Channels_Channels = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    channels: getChannels(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    loading: isChannelsLoading(state),
    error: isChannelsRequestFailed(state),
    canAddChannel: (0,themes_selectors/* canAddChannels */.eG)(state),
    coverage: (0,account_selectors/* getAccountCoverage */.Om)(state),
    canShowThreadsChannel: (0,account_selectors/* canShowFacebookForbiddenChannel */.W)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  fetchChannels: channels_model/* channelsModel */.S.action.fetchChannels,
  collectChannelHistory: channels_model/* channelsModel */.S.action.collectChannelHistory,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(ChannelsContainer));
;// CONCATENATED MODULE: ./src/containers/channels/Channels/index.js

// EXTERNAL MODULE: ./src/models/Aggregation.ts
var Aggregation = __webpack_require__("ttpX");
// EXTERNAL MODULE: ./src/hoc/withTopicStats.tsx
var withTopicStats = __webpack_require__("mN0g");
// EXTERNAL MODULE: ./src/components/ui/Table/Table.tsx + 1 modules
var Table = __webpack_require__("AYO0");
// EXTERNAL MODULE: ./src/utils/table.ts
var table = __webpack_require__("pEH6");
;// CONCATENATED MODULE: ./src/containers/dashboard/LinksTable/utils.ts
/* eslint-disable import/prefer-default-export */

var mapNumber = function (value) { return (value > 0 ? numeral_default()(value).format() : '-'); };
var getCsvColumns = function () { return [
    {
        header: l('Link'),
        accessor: function (l) { return l.name; },
    },
    {
        header: l('Engagement'),
        accessor: function (l) { return l.engagement; },
        mapper: mapNumber,
    },
    {
        header: l('Mentions'),
        accessor: function (l) { return l.mentions; },
        mapper: mapNumber,
    },
    {
        header: l('Negative'),
        accessor: function (l) { var _a; return ((_a = l.sentiment) === null || _a === void 0 ? void 0 : _a.negative) || '-'; },
        mapper: mapNumber,
    },
    {
        header: l('Positive'),
        accessor: function (l) { var _a; return ((_a = l.sentiment) === null || _a === void 0 ? void 0 : _a.positive) || '-'; },
        mapper: mapNumber,
    },
    {
        header: l('Neutral'),
        accessor: function (l) { var _a; return ((_a = l.sentiment) === null || _a === void 0 ? void 0 : _a.neutral) || '-'; },
        mapper: mapNumber,
    }
]; };

;// CONCATENATED MODULE: ./src/containers/dashboard/LinksTable/LinksTable.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const LinksTable = ({"header":"IUW5PHXazkTpHBXThiH3"});
;// CONCATENATED MODULE: ./src/containers/dashboard/LinksTable/LinksTable.tsx
var LinksTable_assign = (undefined && undefined.__assign) || function () {
    LinksTable_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LinksTable_assign.apply(this, arguments);
};
var LinksTable_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






















var Tab;
(function (Tab) {
    Tab["Mentions"] = "topLinksByCount";
    Tab["Engagement"] = "topLinksByEngagement";
})(Tab || (Tab = {}));
var LinksTable_LinksTable = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, topLinksByCount = _a.topLinksByCount, topLinksByEngagement = _a.topLinksByEngagement, updateFilter = _a.updateFilter, updateFilterBatched = _a.updateFilterBatched, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = LinksTable_read((0,react.useState)(Tab.Mentions), 2), tab = _b[0], setTab = _b[1];
    var _c = LinksTable_read((0,react.useState)([]), 2), sortedData = _c[0], setSortedData = _c[1];
    (0,react.useEffect)(function () {
        if (tab === Tab.Mentions)
            setSortedData(topLinksByCount);
        if (tab === Tab.Engagement)
            setSortedData(topLinksByEngagement);
    }, [tab, topLinksByCount, topLinksByEngagement]);
    var handleLinkClick = function (link) {
        updateFilter({
            name: 'link',
            value: [link],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var handleLinkSentimentClick = function (link, sentiment) {
        updateFilterBatched({
            updates: [
                { name: 'link', value: [link] },
                { name: 'sentiment', value: [sentiment] }
            ],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var onExport = function () {
        sendAnalyticalEvent({ eventType: 'Links: export csv', properties: { tab: tab } });
        if (sortedData)
            (0,table/* exportCsv */.z)('links', getCsvColumns(), sortedData);
    };
    var rowConfig = (0,react.useMemo)(function () { return ({
        withHighlight: true,
        keyAccessor: function (row) { return row.name; },
        onClick: function (row) { return handleLinkClick(row.name); },
    }); }, []);
    var columnsConfig = (0,react.useMemo)(function () { return ([
        {
            id: 'name',
            accessor: function (row) { return row.name; },
            header: function () { return l('Link'); },
            maxWidth: '30vw',
            minWidth: '150px',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsxs)("span", LinksTable_assign({ title: value }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { size: 14, name: value.split('/')[0] }), " ", value] }));
            },
        },
        {
            id: 'engagement',
            accessor: function (row) { return row.engagement; },
            header: function () { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Engagement'), tab === Tab.Engagement && (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "arrow-down-thin", color: "black" })] })); },
            maxWidth: '10vw',
            minWidth: '50px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: value > 0 ? numeral_default()(value).format() : '-' });
            },
        },
        {
            id: 'mentions',
            accessor: function (row) { return row.mentions; },
            header: function () { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Mentions'), tab === Tab.Mentions && (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "arrow-down-thin", color: "black" })] })); },
            maxWidth: '10vw',
            minWidth: '50px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: numeral_default()(value).format() });
            },
        },
        {
            id: 'sentiment',
            accessor: function (row) { return row.sentiment; },
            header: function () { return l('Sentiment'); },
            minWidth: '30vw',
            cell: function (_a) {
                var row = _a.row;
                return ((0,jsx_runtime.jsx)(SentimentDistributionBar/* default */.A, { height: 8, negativeCount: row.sentiment.negative, positiveCount: row.sentiment.positive, neutralCount: row.sentiment.neutral, undefinedCount: row.sentiment.undefined, onSentimentClick: function (sentiment) { return handleLinkSentimentClick(row.name, sentiment); } }));
            },
        }
    ]); }, [tab]);
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, LinksTable_assign({ loaded: !isFetching, empty: !(sortedData === null || sortedData === void 0 ? void 0 : sortedData.length), emptyStateSize: "large", emptyStateImage: "/static/images/links-table-empty.svg", emptyStateTitle: l('There were no links in the mentions yet') }, { children: (0,jsx_runtime.jsxs)(Card/* default */.A, LinksTable_assign({ noPadding: true }, { children: [(0,jsx_runtime.jsxs)("div", LinksTable_assign({ className: classnames_default()(LinksTable.header) }, { children: [(0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, selected: tab === Tab.Mentions, value: Tab.Mentions, label: l('By mentions'), onSelect: function (v, _) { return setTab(v); } }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { selected: tab === Tab.Engagement, value: Tab.Engagement, label: l('By engagement'), onSelect: function (v, _) { return setTab(v); } })] }), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", label: l('Export CSV'), onClick: onExport })] })), (0,jsx_runtime.jsx)(Table/* default */.A, { data: sortedData, columnsConfig: columnsConfig, rowConfig: rowConfig })] })) })));
};
/* harmony default export */ const dashboard_LinksTable_LinksTable = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('linksTableByCount', {
    aggregations: {
        links: {
            size: 100,
            aggregations: {
                sentiment: {},
            },
        },
    },
}, false, function (state) { return ({
    topLinksByCount: (0,stats_selectors/* getLinksByCount */._u)(state),
}); }), (0,withTopicStats/* default */.A)('linksTableByEngagement', {
    aggregations: {
        links: {
            size: 100,
            sort: Aggregation/* LinksSortOrder */.un.TotalEngagement,
            aggregations: {
                sentiment: {},
            },
        },
    },
}, false, function (state) { return ({
    topLinksByEngagement: (0,stats_selectors/* getLinksByEngagement */.ME)(state),
}); }), react.memo)(LinksTable_LinksTable));

;// CONCATENATED MODULE: ./src/containers/dashboard/LinksTable/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/HostsTable/utils.ts
/* eslint-disable import/prefer-default-export */

var utils_mapNumber = function (value) { return (value > 0 ? numeral_default()(value).format() : '-'); };
var utils_getCsvColumns = function () { return [
    {
        header: l('Host'),
        accessor: function (l) { return l.name; },
    },
    {
        header: l('Engagement'),
        accessor: function (l) { return l.engagement; },
        mapper: utils_mapNumber,
    },
    {
        header: l('Mentions'),
        accessor: function (l) { return l.mentions; },
        mapper: utils_mapNumber,
    },
    {
        header: l('Negative'),
        accessor: function (l) { var _a; return ((_a = l.sentiment) === null || _a === void 0 ? void 0 : _a.negative) || '-'; },
        mapper: utils_mapNumber,
    },
    {
        header: l('Positive'),
        accessor: function (l) { var _a; return ((_a = l.sentiment) === null || _a === void 0 ? void 0 : _a.positive) || '-'; },
        mapper: utils_mapNumber,
    },
    {
        header: l('Neutral'),
        accessor: function (l) { var _a; return ((_a = l.sentiment) === null || _a === void 0 ? void 0 : _a.neutral) || '-'; },
        mapper: utils_mapNumber,
    }
]; };

;// CONCATENATED MODULE: ./src/containers/dashboard/HostsTable/HostsTable.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const HostsTable = ({"header":"xvUwUKQ7m8ttDVrYKOEn"});
;// CONCATENATED MODULE: ./src/containers/dashboard/HostsTable/HostsTable.tsx
var HostsTable_assign = (undefined && undefined.__assign) || function () {
    HostsTable_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HostsTable_assign.apply(this, arguments);
};
var HostsTable_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






















var HostsTable_Tab;
(function (Tab) {
    Tab["Mentions"] = "topHostsByCount";
    Tab["Engagement"] = "topHostsByEngagement";
})(HostsTable_Tab || (HostsTable_Tab = {}));
var HostsTable_HostsTable = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, topHostsByCount = _a.topHostsByCount, topHostsByEngagement = _a.topHostsByEngagement, updateFilter = _a.updateFilter, updateFilterBatched = _a.updateFilterBatched, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = HostsTable_read((0,react.useState)(HostsTable_Tab.Mentions), 2), tab = _b[0], setTab = _b[1];
    var _c = HostsTable_read((0,react.useState)([]), 2), sortedData = _c[0], setSortedData = _c[1];
    (0,react.useEffect)(function () {
        if (tab === HostsTable_Tab.Mentions)
            setSortedData(topHostsByCount);
        if (tab === HostsTable_Tab.Engagement)
            setSortedData(topHostsByEngagement);
    }, [tab, topHostsByCount, topHostsByEngagement]);
    var handleHostClick = function (hostName) {
        updateFilter({
            name: 'host',
            value: [hostName],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var handleHostSentimentClick = function (hostName, sentiment) {
        updateFilterBatched({
            updates: [
                { name: 'host', value: [hostName] },
                { name: 'sentiment', value: [sentiment] }
            ],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var onExport = function () {
        sendAnalyticalEvent({ eventType: 'Hosts: export csv', properties: { tab: tab } });
        if (sortedData)
            (0,table/* exportCsv */.z)('hosts', utils_getCsvColumns(), sortedData);
    };
    var rowConfig = (0,react.useMemo)(function () { return ({
        withHighlight: true,
        keyAccessor: function (row) { return row.name; },
        onClick: function (row) { return handleHostClick(row.name); },
    }); }, []);
    var columnsConfig = (0,react.useMemo)(function () { return ([
        {
            id: 'name',
            accessor: function (row) { return row.name; },
            header: function () { return l('Host'); },
            maxWidth: '30vw',
            minWidth: '150px',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsxs)("span", HostsTable_assign({ title: value }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { size: 14, name: value }), " ", value] }));
            },
        },
        {
            id: 'engagement',
            accessor: function (row) { return row.engagement; },
            header: function () { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Engagement'), tab === HostsTable_Tab.Engagement && (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "arrow-down-thin", color: "black" })] })); },
            maxWidth: '10vw',
            minWidth: '50px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: value > 0 ? numeral_default()(value).format() : '-' });
            },
        },
        {
            id: 'mentions',
            accessor: function (row) { return row.mentions; },
            header: function () { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Mentions'), tab === HostsTable_Tab.Mentions && (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "arrow-down-thin", color: "black" })] })); },
            maxWidth: '10vw',
            minWidth: '50px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: numeral_default()(value).format() });
            },
        },
        {
            id: 'sentiment',
            accessor: function (row) { return row.sentiment; },
            header: function () { return l('Sentiment'); },
            minWidth: '30vw',
            cell: function (_a) {
                var row = _a.row;
                return ((0,jsx_runtime.jsx)(SentimentDistributionBar/* default */.A, { height: 8, negativeCount: row.sentiment.negative, positiveCount: row.sentiment.positive, neutralCount: row.sentiment.neutral, undefinedCount: row.sentiment.undefined, onSentimentClick: function (sentiment) { return handleHostSentimentClick(row.name, sentiment); } }));
            },
        }
    ]); }, [tab]);
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, HostsTable_assign({ loaded: !isFetching, empty: !(sortedData === null || sortedData === void 0 ? void 0 : sortedData.length), emptyStateSize: "large", emptyStateImage: "/static/images/links-table-empty.svg", emptyStateTitle: l('There were no links in the mentions yet') }, { children: (0,jsx_runtime.jsxs)(Card/* default */.A, HostsTable_assign({ noPadding: true }, { children: [(0,jsx_runtime.jsxs)("div", HostsTable_assign({ className: classnames_default()(HostsTable.header) }, { children: [(0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, selected: tab === HostsTable_Tab.Mentions, value: HostsTable_Tab.Mentions, label: l('By mentions'), onSelect: function (v, _) { return setTab(v); } }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { selected: tab === HostsTable_Tab.Engagement, value: HostsTable_Tab.Engagement, label: l('By engagement'), onSelect: function (v, _) { return setTab(v); } })] }), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", label: l('Export CSV'), onClick: onExport })] })), (0,jsx_runtime.jsx)(Table/* default */.A, { columnsConfig: columnsConfig, data: sortedData, rowConfig: rowConfig })] })) })));
};
/* harmony default export */ const dashboard_HostsTable_HostsTable = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('hostsTableByCount', {
    aggregations: {
        hosts: {
            size: 100,
            aggregations: {
                sentiment: {},
            },
        },
    },
}, false, function (state) { return ({
    topHostsByCount: (0,stats_selectors/* getHostsByCount */.uf)(state),
}); }), (0,withTopicStats/* default */.A)('hostsTableByEngagement', {
    aggregations: {
        hosts: {
            size: 100,
            sort: Aggregation/* LinksSortOrder */.un.TotalEngagement,
            aggregations: {
                sentiment: {},
            },
        },
    },
}, false, function (state) { return ({
    topHostsByEngagement: (0,stats_selectors/* getHostsByEngagement */.m2)(state),
}); }), react.memo)(HostsTable_HostsTable));

;// CONCATENATED MODULE: ./src/containers/dashboard/HostsTable/index.ts


// EXTERNAL MODULE: ./src/models/WordCloud.ts
var WordCloud = __webpack_require__("YM4o");
// EXTERNAL MODULE: ./src/hooks/useChartVolume.tsx
var useChartVolume = __webpack_require__("gw6y");
// EXTERNAL MODULE: ./src/state/conversationalInsights/selectors.ts
var conversationalInsights_selectors = __webpack_require__("uLYw");
// EXTERNAL MODULE: ./src/components/other/VolumePopover/index.ts + 2 modules
var VolumePopover = __webpack_require__("H+oc");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordsEndorseContent.tsx + 1 modules
var WordsEndorseContent = __webpack_require__("qu3i");
// EXTERNAL MODULE: ./src/components/other/WordCharts/WordCloud/index.ts + 4 modules
var WordCharts_WordCloud = __webpack_require__("V9th");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordsChartsSwitcher.tsx + 1 modules
var WordsChartsSwitcher = __webpack_require__("/dW3");
// EXTERNAL MODULE: ./src/components/other/WordCharts/utils.ts
var WordCharts_utils = __webpack_require__("9rhG");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/WordCloud/WordCloud.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordCloud_WordCloud = ({"base":"wi2AePtctWy5_ccSeO8g","cloud":"yS71vUhrMKTeT8gpQu05","controls":"dHNs20O8QeppErdB5SGu","chartControlButton":"t9zJB6ja14UHy13yTgcr","legend":"xv7voVTlavMXrSjtSl8T"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/WordCloud/WordCloud.tsx
var WordCloud_assign = (undefined && undefined.__assign) || function () {
    WordCloud_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WordCloud_assign.apply(this, arguments);
};
var WordCloud_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var WordCloud_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */




























var WordCloudContainer = function (_a) {
    var _b, _c, _d;
    var isLoading = _a.isLoading, location = _a.location, wordCloudData = _a.wordCloudData, themeId = _a.themeId, updateFilterBatched = _a.updateFilterBatched, updateHighLevelFilter = _a.updateHighLevelFilter, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendChartExportedEvent = _a.sendChartExportedEvent;
    var _e = WordCloud_read((0,react.useState)(false), 2), showSentiment = _e[0], setShowSentiment = _e[1];
    var _f = (0,WordsChartsSwitcher/* useSortingByUniqueWords */.b)(true), sortByUniqueWords = _f.sortByUniqueWords, setSortByUniqueWords = _f.setSortByUniqueWords;
    var _g = (0,useChartVolume/* default */.Ay)(useChartVolume/* WORD_CHARTS_VOLUME */.uH), volume = _g.volume, usedVolume = _g.usedVolume, setVolume = _g.setVolume, setUsedVolume = _g.setUsedVolume;
    var _h = location.query, wordCloudColorPalette = _h.wordCloudColorPalette, _j = _h.wordCloudOmittedDataKeys, wordCloudOmittedDataKeys = _j === void 0 ? [] : _j;
    (0,react.useEffect)(function () {
        if (!wordCloudColorPalette)
            handleChangeColorPalette('default');
    }, []);
    var handleLegendClick = function (dataKey) {
        var newOmittedDataKeys = wordCloudOmittedDataKeys.includes(dataKey)
            ? wordCloudOmittedDataKeys.filter(function (x) { return x !== dataKey; })
            : WordCloud_spreadArray(WordCloud_spreadArray([], WordCloud_read(wordCloudOmittedDataKeys), false), [dataKey], false);
        updateLocation({ query: { wordCloudOmittedDataKeys: newOmittedDataKeys } });
    };
    var handleChangeColorPalette = function (colorPalette) {
        updateLocation({ query: { wordCloudColorPalette: colorPalette } });
    };
    var handleClick = function (text, wordsKey, sentiment) {
        sendAnalyticalEvent({ eventType: 'dashboard: word cloud clicked' });
        var filterName = WordCharts_utils/* wordChartDataKeyToFilterName */.CJ[wordsKey];
        updateHighLevelFilter({
            name: 'dedup',
            value: sortByUniqueWords,
        });
        updateFilterBatched({
            updates: showSentiment
                ? [
                    { name: filterName, value: [text] },
                    { name: 'sentiment', value: [sentiment] }
                ]
                : [{ name: filterName, value: [text] }],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var handleChangeSortByUniqueWords = function (shouldSort) {
        if (shouldSort === sortByUniqueWords)
            return;
        setSortByUniqueWords(shouldSort);
        sendAnalyticalEvent({
            eventType: 'WordCloud: words switcher changed',
            properties: { sortByUniqueWords: shouldSort },
        });
    };
    var toggleWordsSentiment = function () {
        setShowSentiment(!showSentiment);
        sendAnalyticalEvent({
            eventType: 'WordCloud: words sentiment toggled',
            properties: { showSentiment: !showSentiment },
        });
    };
    var handleChangeUsedVolume = function (newVolume) {
        setUsedVolume(newVolume);
        sendAnalyticalEvent({
            eventType: 'WordCloud: visible range changed',
            properties: { from: newVolume[0], to: newVolume[1] },
        });
    };
    var renderAdditionalHeaderContent = function () {
        return ((0,jsx_runtime.jsx)("div", WordCloud_assign({ className: WordCloud_WordCloud.controls }, { children: (0,jsx_runtime.jsx)(react_media/* default */.A, WordCloud_assign({ query: "(max-width: 1520px)" }, { children: function (smallScreen) {
                    var _a, _b;
                    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [smallScreen ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, WordCloud_assign({ inverted: false, text: l('Sentiment') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: showSentiment, className: classnames_default()((_a = {}, _a[WordCloud_WordCloud.chartControlButton] = !showSentiment, _a)), label: (0,jsx_runtime.jsx)("span", { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive", size: "small" }) }), onClick: toggleWordsSentiment }) }))) : ((0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: showSentiment, className: classnames_default()((_b = {}, _b[WordCloud_WordCloud.chartControlButton] = !showSentiment, _b)), label: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive", size: "small" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Sentiment')] }), onClick: toggleWordsSentiment })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(WordsChartsSwitcher/* default */.A, { value: sortByUniqueWords, onChange: handleChangeSortByUniqueWords }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(VolumePopover/* default */.A, { volume: volume, onChange: setVolume, onFinalChange: handleChangeUsedVolume })] }));
                } })) })));
    };
    var words = (0,react.useMemo)(function () {
        return WordCloud/* WORD_CLOUD_DATA_KEYS */.r.reduce(function (newData, dataKey) {
            var _a;
            return (WordCloud_assign(WordCloud_assign({}, newData), (_a = {}, _a[dataKey] = wordCloudData === null || wordCloudData === void 0 ? void 0 : wordCloudData[dataKey], _a)));
        }, {});
    }, [wordCloudData]);
    var isEmpty = !((_b = words.objects) === null || _b === void 0 ? void 0 : _b.length) && !((_c = words.phrases) === null || _c === void 0 ? void 0 : _c.length) && !((_d = words.hashtags) === null || _d === void 0 ? void 0 : _d.length);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, WordCloud_assign({ className: WordCloud_WordCloud.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, WordCloud_assign({ loaded: !isLoading, className: WordCloud_WordCloud.cloud, empty: isEmpty, emptyState: (0,jsx_runtime.jsx)(WordsEndorseContent/* default */.A, { isEmpty: true, hasError: false }) }, { children: (0,jsx_runtime.jsx)(WordCharts_WordCloud/* default */.A, WordCloud_assign({}, words, { showSentiment: showSentiment, sortByUniqueWords: sortByUniqueWords, usedVolume: usedVolume, colorPalette: location.query.wordCloudColorPalette, defaultOmittedDataKeys: location.query.wordCloudOmittedDataKeys, additionalHeaderContent: renderAdditionalHeaderContent(), onClick: handleClick, onSendAnalyticalEvent: sendAnalyticalEvent, onSendChartExportedEvent: sendChartExportedEvent, onChangeColorPalette: handleChangeColorPalette, onLegendClick: handleLegendClick })) })) })));
};
/* harmony default export */ const conversationalInsights_WordCloud_WordCloud = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    isLoading: (0,conversationalInsights_selectors/* getIsWordCloudLoading */.a4)(state),
    wordCloudData: (0,conversationalInsights_selectors/* getWordCloudData */.YH)(state),
    error: (0,conversationalInsights_selectors/* getWordCloudError */.yp)(state),
}); }, {
    fetchWordCloudData: conversationalInsights_model/* conversationalInsightsModel */.h.action.fetchWordCloud,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    updateHighLevelFilter: filter_model/* filterModel */.W.action.updateHighLevelFilter,
    updateLocation: routing_actions/* update */.yo,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchWordCloudData();
}))(WordCloudContainer));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/WordCloud/index.ts


// EXTERNAL MODULE: ./src/components/other/WordCharts/TrendingWordsChart/index.ts + 6 modules
var TrendingWordsChart = __webpack_require__("xeBz");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/TrendingWordsChart/TrendingWordsChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TrendingWordsChart_TrendingWordsChart = ({"base":"FD_EQBUY_0bTsAcqpXvU","cloud":"b3isQrkCQoVmEDqHUSYx"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/TrendingWordsChart/TrendingWordsChart.tsx
var TrendingWordsChart_assign = (undefined && undefined.__assign) || function () {
    TrendingWordsChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TrendingWordsChart_assign.apply(this, arguments);
};
var TrendingWordsChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var TrendingWordsChart_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};



















var TrendingWordsChartContainer = function (_a) {
    var location = _a.location, trendWords = _a.trendWords, loading = _a.loading, themeId = _a.themeId, error = _a.error, periods = _a.periods, updateFilter = _a.updateFilter, updateHighLevelFilter = _a.updateHighLevelFilter, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendChartExportedEvent = _a.sendChartExportedEvent;
    var _b = (0,WordsChartsSwitcher/* useSortingByUniqueWords */.b)(true), sortByUniqueWords = _b.sortByUniqueWords, setSortByUniqueWords = _b.setSortByUniqueWords;
    var _c = location.query, trendingWordsColorPalette = _c.trendingWordsColorPalette, _d = _c.trendingWordsOmittedDataKeys, trendingWordsOmittedDataKeys = _d === void 0 ? [] : _d;
    (0,react.useEffect)(function () {
        if (!location.query.trendingWordsColorPalette)
            handleChangeColorPalette('default');
    }, []);
    var handleLegendClick = function (dataKey) {
        var newOmittedDataKeys = trendingWordsOmittedDataKeys.includes(dataKey)
            ? trendingWordsOmittedDataKeys.filter(function (x) { return x !== dataKey; })
            : TrendingWordsChart_spreadArray(TrendingWordsChart_spreadArray([], TrendingWordsChart_read(trendingWordsOmittedDataKeys), false), [dataKey], false);
        updateLocation({ query: { trendingWordsOmittedDataKeys: newOmittedDataKeys } });
    };
    var handleChangeColorPalette = function (colorPalette) {
        updateLocation({ query: { trendingWordsColorPalette: colorPalette } });
    };
    var handleWordCloudClick = function (text, wordsKey) {
        sendAnalyticalEvent({ eventType: 'dashboard: TrendWords clicked', properties: { text: text } });
        updateHighLevelFilter({
            name: 'dedup',
            value: true,
        });
        updateFilter({
            name: WordCharts_utils/* wordChartDataKeyToFilterName */.CJ[wordsKey],
            value: [text],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: { dedup: sortByUniqueWords },
            },
        });
    };
    var handleChangeSortByUniqueWords = function (shouldSort) {
        if (shouldSort === sortByUniqueWords)
            return;
        setSortByUniqueWords(shouldSort);
        sendAnalyticalEvent({
            eventType: 'TrendingWords: words switcher changed',
            properties: { sortByUniqueWords: shouldSort },
        });
    };
    var renderAdditionalHeaderContent = function () {
        return (0,jsx_runtime.jsx)(WordsChartsSwitcher/* default */.A, { value: sortByUniqueWords, onChange: handleChangeSortByUniqueWords });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TrendingWordsChart_assign({ className: classnames_default()(TrendingWordsChart_TrendingWordsChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TrendingWordsChart_assign({ loaded: !loading, className: classnames_default()(TrendingWordsChart_TrendingWordsChart.cloud) }, { children: (0,jsx_runtime.jsx)(TrendingWordsChart/* default */.A, { sortByUniqueWords: sortByUniqueWords, colorPalette: trendingWordsColorPalette, defaultOmittedDataKeys: trendingWordsOmittedDataKeys, additionalHeaderContent: renderAdditionalHeaderContent(), words: trendWords === null || trendWords === void 0 ? void 0 : trendWords.words, objects: trendWords === null || trendWords === void 0 ? void 0 : trendWords.objects, emojis: trendWords === null || trendWords === void 0 ? void 0 : trendWords.emojis, hashtags: trendWords === null || trendWords === void 0 ? void 0 : trendWords.hashtags, phrases: trendWords === null || trendWords === void 0 ? void 0 : trendWords.phrases, actions: trendWords === null || trendWords === void 0 ? void 0 : trendWords.actions, characteristics: trendWords === null || trendWords === void 0 ? void 0 : trendWords.characteristics, comparePeriod: periods === null || periods === void 0 ? void 0 : periods.previousDateRange, currentPeriod: periods === null || periods === void 0 ? void 0 : periods.currentDateRange, error: error, onClick: handleWordCloudClick, onSendAnalyticalEvent: sendAnalyticalEvent, onSendChartExportedEvent: sendChartExportedEvent, onChangeColorPalette: handleChangeColorPalette, onLegendClick: handleLegendClick }) })) })));
};
/* harmony default export */ const conversationalInsights_TrendingWordsChart_TrendingWordsChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    trendWords: (0,conversationalInsights_selectors/* getTrendWords */.TQ)(state),
    loading: (0,conversationalInsights_selectors/* getTrendWordsLoading */.zj)(state),
    error: (0,conversationalInsights_selectors/* getTrendWordsError */.zS)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    periods: (0,conversationalInsights_selectors/* getTrendWordsPeriod */.sY)(state),
}); }, {
    fetchTrendWords: conversationalInsights_model/* conversationalInsightsModel */.h.action.fetchTrendWords,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateHighLevelFilter: filter_model/* filterModel */.W.action.updateHighLevelFilter,
    updateLocation: routing_actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchTrendWords();
}), react.memo)(TrendingWordsChartContainer));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/TrendingWordsChart/index.ts


;// CONCATENATED MODULE: ./src/pages/dashboard/WordCloudPage/WordCloudPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordCloudPage = ({"base":"EJpa2KgmhBHB27OsFAHv"});
;// CONCATENATED MODULE: ./src/pages/dashboard/WordCloudPage/WordCloudPage.tsx
var WordCloudPage_assign = (undefined && undefined.__assign) || function () {
    WordCloudPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WordCloudPage_assign.apply(this, arguments);
};












var WordCloudPage_WordCloudPage = function (_a) {
    var showPage = _a.showPage, showTrendingWordsChart = _a.showTrendingWordsChart;
    if (!showPage) {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, title: l('Word cloud is not available in your subscription plan'), image: "/static/images/ic_empty_old_plan.png", message: l('Upgrade subscription plan to use word cloud. '
                        + 'Please, contact our support team to upgrade') })] }));
    }
    return ((0,jsx_runtime.jsxs)("div", WordCloudPage_assign({ className: classnames_default()(WordCloudPage.base) }, { children: [(0,jsx_runtime.jsx)(conversationalInsights_WordCloud_WordCloud, {}), showTrendingWordsChart && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(conversationalInsights_TrendingWordsChart_TrendingWordsChart, {})] }))] })));
};
/* harmony default export */ const dashboard_WordCloudPage_WordCloudPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    showPage: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'wordCloud'),
    showTrendingWordsChart: (0,themes_selectors/* canShowTrendingWordsChart */.c)(state),
}); }), react.memo)(WordCloudPage_WordCloudPage));

;// CONCATENATED MODULE: ./src/pages/dashboard/WordCloudPage/index.ts


;// CONCATENATED MODULE: ./src/state/mentionStream/newCount/selectors.ts
var getNewMentionsCount = function (state) { return state.mentionStreamCount.count; };
var hasStreamNewMentions = function (state) { return state.mentionStreamCount.count !== 0; };

// EXTERNAL MODULE: ./src/state/mentionStream/selected/selectors.ts
var selected_selectors = __webpack_require__("oq+A");
// EXTERNAL MODULE: ./node_modules/react-transition-group/esm/CSSTransition.js + 3 modules
var CSSTransition = __webpack_require__("X0v9");
// EXTERNAL MODULE: ./node_modules/react-stickynode/dist/es/Sticky.js + 11 modules
var Sticky = __webpack_require__("vNy8");
;// CONCATENATED MODULE: ./src/containers/TopicSearchFilter/TopicSearchFilter.tsx










var TopicSearchFilter = function (_a) {
    var shortcutsEnabled = _a.shortcutsEnabled, className = _a.className, value = _a.value, topicId = _a.topicId, sendAnalyticalEvent = _a.sendAnalyticalEvent, onSearch = _a.onSearch;
    return ((0,jsx_runtime.jsx)(other_QuerySearch_QuerySearch, { shortcutsEnabled: shortcutsEnabled, value: value, topicId: topicId, analyticalEventName: "mention stream", className: className, onSearch: onSearch, sendAnalyticalEvent: sendAnalyticalEvent }));
};
/* harmony default export */ const TopicSearchFilter_TopicSearchFilter = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    value: (0,filter_selectors/* getTextFilter */.kc)(state),
    shortcutsEnabled: (0,currentUser_selectors/* isShortcutsEnabled */.Rm)(state),
}); }, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    onSearch: filter_model/* filterModel */.W.action.searchMentionsByQuery,
}), react.memo)(TopicSearchFilter));

;// CONCATENATED MODULE: ./src/containers/TopicSearchFilter/index.ts


// EXTERNAL MODULE: ./node_modules/date-fns/esm/isEqual/index.js
var esm_isEqual = __webpack_require__("zHMj");
// EXTERNAL MODULE: ./src/hooks/useEffectCustom.ts
var useEffectCustom = __webpack_require__("me3u");
;// CONCATENATED MODULE: ./src/containers/PeriodPicker/PeriodPicker.tsx
var PeriodPicker_assign = (undefined && undefined.__assign) || function () {
    PeriodPicker_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PeriodPicker_assign.apply(this, arguments);
};
var PeriodPicker_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};










var PeriodPicker = function (props) {
    var _a = PeriodPicker_read((0,react.useState)(null), 2), period = _a[0], setPeriod = _a[1];
    (0,useEffectCustom/* useEffectCustom */.m)(function () {
        setPeriod(props.period);
    }, [props.period], function (prev, current) {
        var p = prev[0];
        var c = current[0];
        return (0,esm_isEqual/* default */.A)(p.from, c.from) && (0,esm_isEqual/* default */.A)(p.to, c.to);
    });
    var handleChange = function (range) {
        props.sendAnalyticalEvent({ eventType: 'Date range selected' });
        props.onChange(range);
    };
    return (0,jsx_runtime.jsx)(Calendar/* default */.A, PeriodPicker_assign({}, props, { period: period, onChange: handleChange }));
};
/* harmony default export */ const PeriodPicker_PeriodPicker = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    period: (0,filter_selectors/* getPeriod */.ix)(state),
}); }, {
    onChange: filter_model/* filterModel */.W.action.updatePeriod,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(PeriodPicker));

;// CONCATENATED MODULE: ./src/containers/PeriodPicker/index.ts


// EXTERNAL MODULE: ./src/models/insightsCopilot/History.ts
var History = __webpack_require__("vQyv");
// EXTERNAL MODULE: ./src/state/insightsCopilot/selectors.ts
var insightsCopilot_selectors = __webpack_require__("laSw");
// EXTERNAL MODULE: ./src/state/routing/selectors.ts
var routing_selectors = __webpack_require__("KG/6");
;// CONCATENATED MODULE: ./src/hooks/useScrollPosition.js

var isBrowser = typeof window !== 'undefined';
function getScrollPosition(_ref) {
  var element = _ref.element,
    useWindow = _ref.useWindow;
  if (!isBrowser) return {
    x: 0,
    y: 0
  };
  var target = element ? element.current : document.body;
  var position = target.getBoundingClientRect();
  return useWindow ? {
    x: window.scrollX,
    y: window.scrollY
  } : {
    x: position.left,
    y: position.top
  };
}
function useScrollPosition(effect, deps, element, useWindow, wait) {
  var position = (0,react.useRef)(getScrollPosition({
    useWindow: useWindow
  }));
  var throttleTimeout = null;
  var callBack = function callBack() {
    var currPos = getScrollPosition({
      element: element,
      useWindow: useWindow
    });
    effect({
      prevPos: position.current,
      currPos: currPos
    });
    position.current = currPos;
    throttleTimeout = null;
  };
  (0,react.useLayoutEffect)(function () {
    var handleScroll = function handleScroll() {
      if (wait) {
        if (throttleTimeout === null) {
          throttleTimeout = setTimeout(callBack, wait);
        }
      } else {
        callBack();
      }
    };
    window.addEventListener('scroll', handleScroll);
    return function () {
      return window.removeEventListener('scroll', handleScroll);
    };
  }, deps);
}
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Spinner/Spinner.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Spinner_Spinner = ({"base":"gvvb0ck4nPLzuOp4YbfG","withPhrases":"LCYQhH75_M85jdId36cW","container":"yE9o4WdesAMGlviy2bNd","circle":"x4fO1JrYf_xKBaJdCutn","inner":"_gr2P4R8CZ9rFud8wTCg","spin":"oDY09uRMvTLGo0sHcdNQ","demo":"r_Gw8UAqjnfQ3r46Eec2"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Spinner/Spinner.tsx
var Spinner_assign = (undefined && undefined.__assign) || function () {
    Spinner_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Spinner_assign.apply(this, arguments);
};



var Spinner_Spinner_Spinner = function () {
    return ((0,jsx_runtime.jsx)("div", Spinner_assign({ className: Spinner_Spinner.base }, { children: (0,jsx_runtime.jsxs)("div", Spinner_assign({ className: Spinner_Spinner.container }, { children: [(0,jsx_runtime.jsx)("div", Spinner_assign({ className: Spinner_Spinner.circle }, { children: (0,jsx_runtime.jsx)("div", { className: Spinner_Spinner.inner }) })), (0,jsx_runtime.jsx)("div", Spinner_assign({ className: Spinner_Spinner.circle }, { children: (0,jsx_runtime.jsx)("div", { className: Spinner_Spinner.inner }) })), (0,jsx_runtime.jsx)("div", Spinner_assign({ className: Spinner_Spinner.circle }, { children: (0,jsx_runtime.jsx)("div", { className: Spinner_Spinner.inner }) })), (0,jsx_runtime.jsx)("div", Spinner_assign({ className: Spinner_Spinner.circle }, { children: (0,jsx_runtime.jsx)("div", { className: Spinner_Spinner.inner }) })), (0,jsx_runtime.jsx)("div", Spinner_assign({ className: Spinner_Spinner.circle }, { children: (0,jsx_runtime.jsx)("div", { className: Spinner_Spinner.inner }) }))] })) })));
};
/* harmony default export */ const components_Spinner_Spinner = ((0,react.memo)(Spinner_Spinner_Spinner));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Spinner/index.ts


;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Request.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Request = ({"base":"_nK2IG9uLBwQoKDWHvzg","clickable":"Ts8Jstkh9ocr7OkKDnMR","requestContainer":"PzKucv08slzhpjlJPT3V","request":"YVio5drn7WXhKv4ea4so","hideContainer":"jFix83W9dAaWamjyulHj"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Request.tsx
var Request_assign = (undefined && undefined.__assign) || function () {
    Request_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Request_assign.apply(this, arguments);
};






var QuestionRequest = function (_a) {
    var _b;
    var isLoading = _a.isLoading, request = _a.request, onClick = _a.onClick, onHide = _a.onHide;
    return ((0,jsx_runtime.jsxs)("div", Request_assign({ className: classnames_default()(Request.base, (_b = {}, _b[Request.clickable] = !!onClick, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", Request_assign({ className: Request.requestContainer, onClick: onClick }, { children: [isLoading ? (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_Spinner_Spinner, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {})] }) : null, (0,jsx_runtime.jsx)("div", Request_assign({ className: Request.request }, { children: request }))] })), !isLoading && onHide ? ((0,jsx_runtime.jsx)("div", Request_assign({ className: Request.hideContainer }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "delete", tooltip: l('Delete this thread', 'insightsCopilot'), className: Request.hide, onClick: onHide }) }))) : null] })));
};
/* harmony default export */ const Question_Request = (QuestionRequest);

// EXTERNAL MODULE: ./node_modules/react-markdown/lib/react-markdown.js + 123 modules
var react_markdown = __webpack_require__("5MnS");
// EXTERNAL MODULE: ./node_modules/remark-breaks/index.js + 3 modules
var remark_breaks = __webpack_require__("wc9o");
// EXTERNAL MODULE: ./src/models/insightsCopilot/Question.ts
var Question = __webpack_require__("eNss");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/utils/detectStatsConfigPeriod.js
var detectStatsConfigPeriod = __webpack_require__("uZfh");
// EXTERNAL MODULE: ./src/utils/translations/aggregationMetricTranslations.ts
var aggregationMetricTranslations = __webpack_require__("ZFgV");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/utils/customDashboards/dates.tsx
var dates = __webpack_require__("wlTg");
;// CONCATENATED MODULE: ./src/containers/insightsCopilot/Chart/config.ts










var getTranslatedName = function (aggregation, name) {
    switch (aggregation) {
        case 'sentiment': return (0,commonTranslations/* translate */.Tl)(name);
        case 'postTypes': return (0,commonTranslations/* translate */.Tl)(name);
        case 'countries': return (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(name);
        case 'languages': return (0,getLanguageFilterTranslations/* default */.A)(name);
        case 'subjects': return (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(name);
        case 'aspects': return "".concat((0,aspectTranslation/* getAspectLabel */.zS)(name.split('_')[0]), " ").concat((0,commonTranslations/* translate */.Tl)(name.split('_')[1]));
        default: return name;
    }
};
var getPointName = function (aggregation, x) {
    if (aggregation === 'regionIds')
        return x.region;
    if (aggregation === 'cityIds')
        return x.city;
    return x.name || x.key;
};
/* harmony default export */ const Chart_config = (function (type) {
    var configsByType = {
        line: {
            type: 'spline',
            aggregationCreator: function (aggregationName, interval) {
                var _a, _b;
                if (aggregationName === 'date')
                    return {
                        aggregations: (_a = {},
                            _a[aggregationName] = {
                                interval: interval,
                            },
                            _a),
                    };
                return {
                    aggregations: (_b = {},
                        _b[aggregationName] = {
                            aggregations: {
                                date: {
                                    interval: interval,
                                },
                            },
                        },
                        _b),
                };
            },
            optionsCreator: function (s, aggregationName, interval, dimension) {
                var data = s === null || s === void 0 ? void 0 : s[aggregationName];
                if (!data)
                    return {};
                if (aggregationName === 'date') {
                    return {
                        xAxis: {
                            type: 'datetime',
                            title: {
                                text: 'Time',
                                style: {
                                    display: 'none',
                                },
                            },
                        },
                        series: [{
                                name: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(dimension),
                                data: data === null || data === void 0 ? void 0 : data.values.map(function (v) { return v.count; }),
                                pointStart: (new Date(data === null || data === void 0 ? void 0 : data.values[0].dateAsUtc)).getTime(),
                                pointInterval: dateUtils/* TIME */.E9[interval],
                            }],
                    };
                }
                return {
                    xAxis: {
                        type: 'datetime',
                        title: {
                            text: 'Time',
                            style: {
                                display: 'none',
                            },
                        },
                    },
                    series: data === null || data === void 0 ? void 0 : data.values.map(function (v) { return ({
                        key: v.key,
                        name: getTranslatedName(aggregationName, getPointName(aggregationName, v)),
                        data: v.dates.values.map(function (point) { return point.count; }),
                        pointStart: (new Date(v.dates.values[0].dateAsUtc)).getTime(),
                        pointInterval: dateUtils/* TIME */.E9[interval],
                        color: aggregationName === 'sentiment' ? (0,utils_colors/* getSentimentColor */.HS)(v.key) : undefined,
                    }); }),
                };
            },
        },
        bar: {
            type: 'column',
            aggregationCreator: function (aggregationName, interval) {
                var _a, _b;
                if (aggregationName === 'date')
                    return {
                        aggregations: (_a = {},
                            _a[aggregationName] = {
                                interval: interval,
                            },
                            _a),
                    };
                return {
                    aggregations: (_b = {},
                        _b[aggregationName] = {},
                        _b),
                };
            },
            optionsCreator: function (s, aggregationName) {
                var _a;
                var data = s === null || s === void 0 ? void 0 : s[aggregationName];
                if (!data)
                    return {};
                return {
                    xAxis: {
                        categories: data.values.map(function (x) { return ((0,dates/* isDate */.$P)(x.name || x.key)
                            ? moment_default()(x.name || x.key).format('ll')
                            : getTranslatedName(aggregationName, getPointName(aggregationName, x))); }),
                    },
                    series: [{
                            showInLegend: false,
                            colorByPoint: true,
                            data: (_a = data.values) === null || _a === void 0 ? void 0 : _a.map(function (x) { return ({
                                y: x.count,
                                color: aggregationName === 'sentiment' ? (0,utils_colors/* getSentimentColor */.HS)(x.key) : undefined,
                            }); }),
                        }],
                };
            },
        },
        pie: {
            type: 'pie',
            aggregationCreator: function (aggregationName, _interval) {
                var _a;
                return ({
                    aggregations: (_a = {},
                        _a[aggregationName] = {},
                        _a),
                });
            },
            optionsCreator: function (s, aggregationName) {
                var _a;
                var data = s === null || s === void 0 ? void 0 : s[aggregationName];
                if (!data)
                    return {};
                return {
                    series: [{
                            name: aggregationName,
                            data: (_a = data.values) === null || _a === void 0 ? void 0 : _a.map(function (v) { return ({
                                key: v.key,
                                name: getTranslatedName(aggregationName, getPointName(aggregationName, v)),
                                y: v.count,
                                color: aggregationName === 'sentiment' ? (0,utils_colors/* getSentimentColor */.HS)(v.key) : undefined,
                            }); }),
                        }],
                };
            },
        },
    };
    return configsByType[type] || { type: 'spline', aggregationCreator: function () { }, optionsCreator: function () { } };
});

;// CONCATENATED MODULE: ./src/containers/insightsCopilot/Chart/Chart.tsx
var Chart_assign = (undefined && undefined.__assign) || function () {
    Chart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Chart_assign.apply(this, arguments);
};
var Chart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











var Chart = function (_a) {
    var id = _a.id, withoutHeader = _a.withoutHeader, type = _a.type, topicId = _a.topicId, dimension = _a.dimension, aggregation = _a.aggregation, filter = _a.filter, dynamics = _a.dynamics, fetchStats = _a.fetchStats;
    var _b = Chart_read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var chartParams = (0,react.useMemo)(function () { return Chart_config(type); }, [type]);
    (0,react.useEffect)(function () {
        var config = chartParams.aggregationCreator(aggregation, (0,detectStatsConfigPeriod/* getInterval */.A8)(filter.from, filter.to));
        fetchStats({
            key: "insightsCopilotChart_".concat(id),
            filter: filter,
            themeId: topicId,
            statsBy: dimension,
            config: config,
        });
    }, [dimension, aggregation]);
    var config = (0,react.useMemo)(function () {
        if (!dynamics || dynamics.length === 0) {
            return null;
        }
        return Chart_assign({ chart: {
                type: chartParams.type,
                zoomType: 'x',
            }, title: {
                text: "".concat(type, " chart"),
                style: {
                    display: 'none',
                },
            }, subtitle: {
                text: null,
            }, yAxis: [{
                    min: 0,
                    title: {
                        text: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(dimension),
                    },
                }], plotOptions: {
                spline: {
                    marker: {
                        enabled: false,
                    },
                },
            } }, chartParams.optionsCreator(dynamics, aggregation, (0,detectStatsConfigPeriod/* getInterval */.A8)(filter.from, filter.to), dimension));
    }, [dynamics]);
    return ((0,jsx_runtime.jsxs)("div", { children: [withoutHeader ? null : ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { chartRef: chartData })), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData })] }));
};
/* harmony default export */ const Chart_Chart = ((0,react_redux/* connect */.Ng)(function (state, ownProps) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    dynamics: (0,stats_selectors/* getInsightsCopilotDynamics */.Gw)(state, "insightsCopilotChart_".concat(ownProps.id)),
}); }, { fetchStats: stats_model/* statsModel */.l.action.fetchStats })(Chart));

;// CONCATENATED MODULE: ./src/containers/insightsCopilot/Chart/index.ts


// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./src/utils/translations/aggregationTranslations.ts
var aggregationTranslations = __webpack_require__("e+Tg");
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Info.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Info = ({"container":"Bo99A8RbJXKxjCDeep9v","header":"OqtmVIDiXZsevZBCLolg","filtersContainer":"gJUJ51uGZNJ9Nk5mBvxA","additional":"ouQGMH7XFtuNWgH69MzR","autoExtractedFilterMessage":"rHqcPUuzIo19Uw82lmGm","showButton":"r_APNe8nqa_b8ZUfO0zn","hideButtonContainer":"_hprrS8xLxzzDkMVgYYp","filters":"RYr55Hv7Sd3ka0UlSt5r","filter":"ho_xxKjODju2UgUc1n9O","groupedBy":"ILghtM418qdsdQO8cVE6","tag":"jtGxAXSASgEyluAOXdT2","additionalInfoTitle":"qW0V8HEJQ_oov3x42VIH","error":"fgTfbwrtsVF9yGIAePZs"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Info.tsx
var Info_assign = (undefined && undefined.__assign) || function () {
    Info_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Info_assign.apply(this, arguments);
};
var Info_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




















var getFormattedDate = function (date) {
    if (!date)
        return null;
    var momentDate = moment_default()(date);
    if (momentDate.format('HH:mm') !== '00:00') {
        return momentDate.format('lll');
    }
    return momentDate.format('ll');
};
var createStatsId = function (id, type) { return "".concat(id, "_").concat(type); };
var Info_Info = function (_a) {
    var _b = _a.isOpenByDefault, isOpenByDefault = _b === void 0 ? false : _b, _c = _a.hideFooter, hideFooter = _c === void 0 ? false : _c, id = _a.id, type = _a.type, error = _a.error, topicId = _a.topicId, filter = _a.filter, mentionCount = _a.mentionCount, date = _a.date, groupedBy = _a.groupedBy, fetchInsightsCopilotStats = _a.fetchInsightsCopilotStats, onFilterClick = _a.onFilterClick;
    var _d = Info_read((0,react.useState)(isOpenByDefault), 2), isOpened = _d[0], setIsOpened = _d[1];
    (0,react.useEffect)(function () {
        if (!mentionCount)
            fetchInsightsCopilotStats({ id: createStatsId(id, type), topicId: topicId, filter: filter });
    }, [id]);
    (0,react.useEffect)(function () {
        if (error)
            setIsOpened(true);
    }, [error]);
    var renderErrorText = function () {
        if (error.type === 'NoDataError')
            return l('No data available for this period', 'insightsCopilot');
        return l('An error has occurred!', 'insightsCopilot');
    };
    var filtersSection = (0,react.useMemo)(function () {
        if (error)
            return (0,jsx_runtime.jsx)("div", Info_assign({ className: Info.error }, { children: renderErrorText() }));
        if (!filter)
            return l('Preparing your filters...', 'insightsCopilot');
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", { children: [getFormattedDate(filter.from), " ", '->', " ", getFormattedDate(filter.to)] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, { children: (0,jsx_runtime.jsx)(FilterChipPanel_FilterChipPanel/* default */.A, { showNoFilters: false, compactFilter: true, compactInFilterGroup: true, filter: filter, topicId: topicId }) }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { ai: true, ghost: true, size: "small", label: filter.filterGroups.length
                                ? l('Apply filters and period', 'insightsCopilot')
                                : l('Apply period', 'insightsCopilot'), onClick: function () { return onFilterClick(filter); } })] })] }));
    }, [filter, error]);
    return ((0,jsx_runtime.jsx)("div", Info_assign({ className: Info.base }, { children: isOpened
            ? ((0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.container }, { children: [(0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.filtersContainer }, { children: [(filter === null || filter === void 0 ? void 0 : filter.autoExtracted)
                                ? ((0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.autoExtractedFilterMessage }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: 12, type: "ai", color: "purple" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('These filters are automatically extracted from your question', 'insightsCopilot')] })))
                                : null, (0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.filters }, { children: [groupedBy ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", { children: l('Grouped by', 'insightsCopilot') }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", Info_assign({ className: Info.groupedBy }, { children: groupedBy.map(function (x) { return (0,jsx_runtime.jsx)("div", Info_assign({ className: Info.tag }, { children: (0,aggregationTranslations/* translateAggregation */.j)(x) }), x); }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] })) : null, filtersSection] })), (0,jsx_runtime.jsx)("div", Info_assign({ className: Info.hideButtonContainer }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, Info_assign({ position: "left center", text: l('Hide additional info', 'insightsCopilot') }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { className: Info.hideButton, iconType: "chevron-up", onClick: function () { return setIsOpened(false); } }) })) }))] })), hideFooter ? null : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.additional }, { children: [(0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.additionalInfo }, { children: [(0,jsx_runtime.jsx)("div", Info_assign({ className: Info.additionalInfoTitle }, { children: l('Total mentions', 'insightsCopilot') })), (0,jsx_runtime.jsx)("div", Info_assign({ className: Info.additionalInfoBody }, { children: mentionCount
                                                    ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [numeral_default()(mentionCount)
                                                                .format('0,0'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Tooltip/* default */.A, Info_assign({ position: "left center", text: l('This is a number of total mentions when the question was asked.'
                                                                    + ' Copilot uses sampled data to answer your questions', 'insightsCopilot') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: "info-outline", color: "gray" }) }))] }))
                                                    : '–' }))] })), (0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.additionalInfo }, { children: [(0,jsx_runtime.jsx)("div", Info_assign({ className: Info.additionalInfoTitle }, { children: l('Asked on', 'insightsCopilot') })), (0,jsx_runtime.jsx)("div", Info_assign({ className: Info.additionalInfoBody }, { children: moment_default()("".concat(date, "Z"))
                                                    .format('YYYY-MM-DD, LT') }))] }))] }))] }))] })))
            : ((0,jsx_runtime.jsxs)("div", Info_assign({ className: Info.showButton, onClick: function () { return setIsOpened(true); } }, { children: [l('Show additional info', 'insightsCopilot'), " ", (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-down" })] }))) })));
};
/* harmony default export */ const Question_Info = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, ownProps) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    mentionCount: (0,insightsCopilot_selectors/* getInsightsCopilotStatsForAction */.AW)(state, { id: createStatsId(ownProps.id, ownProps.type) }),
}); }, {
    fetchInsightsCopilotStats: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotStats,
}), react.memo)(Info_Info));

// EXTERNAL MODULE: ./src/components/ui/Progressbar/index.ts + 2 modules
var Progressbar = __webpack_require__("b2R6");
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Spinner/AppearingText.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AppearingText = ({"base":"chNky8tLigZ5W8n37JHB","phrase":"XYIyZp9qTUQqzE9HNMg1"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Spinner/AppearingText.tsx
var AppearingText_assign = (undefined && undefined.__assign) || function () {
    AppearingText_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AppearingText_assign.apply(this, arguments);
};
var AppearingText_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





var PHRASE_CHANGE_STEP = 9;
var phrases = [
    function () { return l('Processing mentions at lightning speed', 'insightsCopilot'); },
    function () { return l('Choosing the appropriate tools for analysis', 'insightsCopilot'); },
    function () { return l('Filtering noise and extracting signal', 'insightsCopilot'); },
    function () { return l('Incorporating advanced machine learning techniques', 'insightsCopilot'); },
    function () { return l('Modeling complex relationships and dependencies', 'insightsCopilot'); },
    function () { return l('Identifying patterns and anomalies', 'insightsCopilot'); },
    function () { return l('Optimizing for accuracy and precision', 'insightsCopilot'); },
    function () { return l('Almost there', 'insightsCopilot'); }
];
var secondsPassedFromDate = function (date) {
    var now = moment_default()();
    var d = moment_default()(date);
    var duration = moment_default().duration(now.diff(d));
    return duration.seconds();
};
var getStartingPhraseIndex = function (date) {
    var secondsPassed = secondsPassedFromDate(date);
    var phrasesLength = phrases.length;
    var index = Math.floor(secondsPassed / PHRASE_CHANGE_STEP);
    if (index < 0)
        return 0;
    if (index > phrasesLength - 1)
        return phrasesLength - 1;
    return index;
};
var AppearingTextAnimation = function (_a) {
    var text = _a.text, index = _a.index, total = _a.total;
    var _b = AppearingText_read((0,react.useState)(false), 2), isDone = _b[0], setIsDone = _b[1];
    var _c = AppearingText_read((0,react.useState)(''), 2), currentText = _c[0], setCurrentText = _c[1];
    (0,react.useEffect)(function () {
        setIsDone(false);
        var i = 1;
        var intervalId = setInterval(function () {
            setCurrentText(text.slice(0, i));
            i++;
            if (i > text.length) {
                setIsDone(true);
                clearInterval(intervalId);
            }
        }, 75);
        return function () { return clearInterval(intervalId); };
    }, [text]);
    return ((0,jsx_runtime.jsx)("div", AppearingText_assign({ className: AppearingText.phrase }, { children: currentText })));
};
var AppearingText_Spinner = function (_a) {
    var showFinalStep = _a.showFinalStep, date = _a.date;
    var _b = AppearingText_read((0,react.useState)(''), 2), usedPhrase = _b[0], setUsedPhrase = _b[1];
    var _c = AppearingText_read((0,react.useState)(getStartingPhraseIndex(date)), 2), usedPhraseIndex = _c[0], setUsedPhraseIndex = _c[1];
    (0,react.useEffect)(function () {
        if (showFinalStep) {
            setUsedPhraseIndex(phrases.length - 1);
            setUsedPhrase(phrases[phrases.length - 1]());
            return;
        }
        var phrasesIndex = getStartingPhraseIndex(date);
        setUsedPhrase(phrases[phrasesIndex]());
        var timeout = setInterval(function () {
            if (phrasesIndex === phrases.length - 1) {
                clearInterval(timeout);
                return;
            }
            phrasesIndex += 1;
            setUsedPhraseIndex(phrasesIndex);
            setUsedPhrase(phrases[phrasesIndex]());
        }, PHRASE_CHANGE_STEP * 1000);
        return function () { return clearInterval(timeout); };
    }, [showFinalStep]);
    return ((0,jsx_runtime.jsxs)("div", AppearingText_assign({ className: AppearingText.base }, { children: [(0,jsx_runtime.jsx)(Progressbar/* default */.A, { visibleProgress: true, color: "#9447A0", selected: usedPhraseIndex === phrases.length - 1 ? 100 : (usedPhraseIndex + 1) * 10, total: 100 }), (0,jsx_runtime.jsx)(AppearingTextAnimation, { text: "".concat(usedPhrase, "..."), index: usedPhraseIndex, total: phrases.length })] })));
};
/* harmony default export */ const Spinner_AppearingText = ((0,react.memo)(AppearingText_Spinner));

;// CONCATENATED MODULE: ./src/components/helpers/ScrollTo/ScrollTo.tsx


var ScrollTo = function (_a) {
    var _b = _a.isOneTime, isOneTime = _b === void 0 ? false : _b, _c = _a.behavior, behavior = _c === void 0 ? 'smooth' : _c, _d = _a.block, block = _d === void 0 ? 'end' : _d, _e = _a.inline, inline = _e === void 0 ? 'nearest' : _e;
    var elementRef = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        setTimeout(function () { return elementRef.current.scrollIntoView({
            behavior: behavior,
            block: block,
            inline: inline,
        }); }, 100);
    }, isOneTime ? [] : null);
    return (0,jsx_runtime.jsx)("div", { ref: elementRef });
};
/* harmony default export */ const ScrollTo_ScrollTo = ((0,react.memo)(ScrollTo));

;// CONCATENATED MODULE: ./src/components/helpers/ScrollTo/index.ts


// EXTERNAL MODULE: ./src/utils/localStorage.ts
var utils_localStorage = __webpack_require__("S/wQ");
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/History/History.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const History_History = ({"base":"Gt3D96h9X6hd1VSkD8KJ","answer":"l8kjsWNV4Aw8AH_DoKtn","exampleContainer":"haUZuxk_yjhzFSOB3oYn","example":"UBFCL72iGseETmF7tVV8","selected":"kgMmFF6mfvZNF_KTGHUc","sampleMessage":"qkgqKFFSFgOJz0p9yd0h","reveal":"P8WKWhkOsXqUYDCrE5EU"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/utils.tsx
var insightsCopilot_utils_assign = (undefined && undefined.__assign) || function () {
    insightsCopilot_utils_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return insightsCopilot_utils_assign.apply(this, arguments);
};










var saveIsInsightsCopilotSearchEnhanced = function (value) {
    (0,utils_localStorage/* saveItemToLocalStorage */.e7)('enhanceInsightsCopilotSearch', { isAllowed: value });
};
var getIsInsightsCopilotSearchEnhanced = function () {
    var isAllowed = ((0,utils_localStorage/* getItemFromLocalStorage */.Wu)('enhanceInsightsCopilotSearch') || {}).isAllowed;
    return isAllowed;
};
var PATTERNS = {
    idPatternWithBrackets: /\[(id:\d+)\]/g,
    exampleContentPattern: /\((.*?)\)/g,
};
var renderWithMarkDown = function (text) {
    return ((0,jsx_runtime.jsx)(react_markdown/* ReactMarkdown */.$, insightsCopilot_utils_assign({ className: History_History.displayText, components: {
            p: function (_a) {
                var children = _a.children;
                return (0,jsx_runtime.jsx)("p", insightsCopilot_utils_assign({ style: { marginBottom: '8px' } }, { children: children }));
            },
            strong: function (_a) {
                var children = _a.children;
                return (0,jsx_runtime.jsx)("strong", insightsCopilot_utils_assign({ style: { fontWeight: 500 } }, { children: children }));
            },
            pre: function (_a) {
                var children = _a.children;
                return (0,jsx_runtime.jsx)("div", { children: children });
            },
        }, remarkPlugins: [remark_breaks/* default */.A], linkTarget: "_blank" }, { children: text })));
};
var removeMapper = function (_a) {
    var text = _a.text, patterns = _a.patterns;
    var match = text.match(patterns.idPatternWithBrackets);
    if (match) {
        return text
            .replace(patterns.idPatternWithBrackets, '')
            .replace(patterns.exampleContentPattern, '');
    }
    return text;
};
var replaceMapper = function (_a) {
    var _b;
    var id = _a.id, text = _a.text, patterns = _a.patterns, filter = _a.filter, selectedExampleIds = _a.selectedExampleIds, clickHandler = _a.clickHandler;
    var match = text.match(patterns.idPatternWithBrackets);
    if (match) {
        var ids_1 = match.map(function (x) { return x.replace('[id:', '').replace(']', ''); });
        var isSelected_1 = (0,lodash.isEqual)(selectedExampleIds, ids_1);
        var updatedText = text.replace(/\*\*(.*?)\*\*/g, '<b>$1</b>');
        return ((0,jsx_runtime.jsxs)("div", insightsCopilot_utils_assign({ className: History_History.exampleContainer }, { children: [(0,jsx_runtime.jsx)("span", { dangerouslySetInnerHTML: { __html: updatedText.replace(patterns.idPatternWithBrackets, '').replace(patterns.exampleContentPattern, '') } }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", insightsCopilot_utils_assign({ className: classnames_default()(History_History.example, (_b = {}, _b[History_History.selected] = isSelected_1, _b)), onClick: function () { return clickHandler({ questionId: id, filter: filter, mentionIds: ids_1, pointText: isSelected_1 ? null : text }); } }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "ai", color: "purple", size: "small" }), l('examples', 'insightsCopilot')] })), isSelected_1 ? (0,jsx_runtime.jsx)(ScrollTo_ScrollTo, { isOneTime: true, block: "center" }) : null] })));
    }
    return renderWithMarkDown(text);
};
var handleIdPattern = function (_a) {
    var id = _a.id, filter = _a.filter, mapper = _a.mapper, _b = _a.selectedExampleIds, selectedExampleIds = _b === void 0 ? [] : _b, _c = _a.text, text = _c === void 0 ? '' : _c, _d = _a.clickHandler, clickHandler = _d === void 0 ? function (_id) { } : _d;
    return text === null || text === void 0 ? void 0 : text.replace('\n\n', '\n').split('\n').map(function (t) { return mapper({ id: id, text: t, patterns: PATTERNS, filter: filter, selectedExampleIds: selectedExampleIds, clickHandler: clickHandler }); });
};

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Body.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Body = ({"base":"JczwagVxhM324xvYVhN7","reveal":"t2winwhQAQZNg0yc7Kqc","response":"lxadBkxbiPwoijdygkNO","container":"LRtaQM_IRMGRmoWPIaYj","dimmedAction":"d2CCps8CRdlQSiQD4cBl","displayText":"m5YxPb9POKXTgOqmUAwp","readyMessage":"EEpa0ZfyUijb7cPSd1Qc","error":"SPYDsMHdDDu8wC6Y43JA","copyButton":"sH725XuiUQgIRkroMNkP","copiedMessage":"I1Wq8DQ4z7x146XnbgiU","code":"iZPWfwVhnQdPx2VmLMms"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Body.tsx
var Body_assign = (undefined && undefined.__assign) || function () {
    Body_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Body_assign.apply(this, arguments);
};
var Body_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var Body_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






















var getHeadingComponent = function (heading) { return function () {
    var props = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        props[_i] = arguments[_i];
    }
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), heading.apply(void 0, Body_spreadArray([], Body_read(props), false))] }));
}; };
var enrichWithActionImportanceType = function (response) {
    var validateDisplayTextStatus = function (actionType) { return response.some(function (x) {
        return x.action === Question/* QuestionResponseAction */.i2.ANALYSE_MENTIONS || x.action === actionType;
    }); };
    var shouldHideDisplayText = function () { return validateDisplayTextStatus(Question/* QuestionResponseAction */.i2.EXTRACT_FILTERS); };
    var isDisplayTextImportant = function () { return validateDisplayTextStatus(Question/* QuestionResponseAction */.i2.GATHER_STATISTICS); };
    var getResponseAction = function (x) {
        switch (x.action) {
            case Question/* QuestionResponseAction */.i2.EXTRACT_FILTERS: return Body_assign(Body_assign({}, x), { isMainAction: true });
            case Question/* QuestionResponseAction */.i2.ANALYSE_MENTIONS: return Body_assign(Body_assign({}, x), { isMainAction: true });
            case Question/* QuestionResponseAction */.i2.BUILD_CHART: return Body_assign(Body_assign({}, x), { isMainAction: true });
            case Question/* QuestionResponseAction */.i2.GATHER_STATISTICS: return Body_assign(Body_assign({}, x), { isMainAction: false });
            case Question/* QuestionResponseAction */.i2.DISPLAY_TEXT: return Body_assign(Body_assign({}, x), { isMainAction: response.length > 1 ? isDisplayTextImportant() : true });
            default: return Body_assign(Body_assign({}, x), { isMainAction: false });
        }
    };
    if (response.length === 2 && shouldHideDisplayText()) {
        return response.map(function (x) { return (x.action === Question/* QuestionResponseAction */.i2.DISPLAY_TEXT
            ? (Body_assign(Body_assign({}, x), { isHidden: true }))
            : (Body_assign(Body_assign({}, x), { isMainAction: true }))); });
    }
    return response.map(getResponseAction);
};
var QuestionBody = function (_a) {
    var id = _a.id, date = _a.date, status = _a.status, response = _a.response, selectedExampleIds = _a.selectedExampleIds, onExampleClick = _a.onExampleClick, onFilterClick = _a.onFilterClick, onCopyAnswer = _a.onCopyAnswer, onCancel = _a.onCancel;
    var _b = Body_read((0,react.useState)(false), 2), shouldFinalizeWait = _b[0], setShouldFinalizeWait = _b[1];
    var _c = Body_read((0,react.useState)(status === Question/* QuestionStatus */.Tq.SUCCESS), 2), isReady = _c[0], setIsReady = _c[1];
    var _d = Body_read((0,react.useState)(false), 2), isAnswerCopied = _d[0], setIsAnswerCopied = _d[1];
    var copiedPopover = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        if (status === Question/* QuestionStatus */.Tq.SUCCESS) {
            setShouldFinalizeWait(true);
            setTimeout(function () { return setIsReady(true); }, 1500);
        }
    }, [status]);
    var handleCopyAnswer = function () {
        setIsAnswerCopied(true);
        setTimeout(function () {
            copiedPopover.current.hide();
            setIsAnswerCopied(false);
        }, 1500);
    };
    var renderCopyAnswerButton = function (_a) {
        var _b;
        var answer = _a.answer;
        return ((0,jsx_runtime.jsx)(Popover/* default */.A, Body_assign({ basic: true, fitted: true, ref: copiedPopover, on: "hover", position: "left center", content: (0,jsx_runtime.jsx)("span", Body_assign({ className: Body.copiedMessage }, { children: isAnswerCopied ? l('Answer copied', 'insightsCopilot') : l('Copy answer', 'insightsCopilot') })) }, { children: (0,jsx_runtime.jsx)((react_copy_to_clipboard_lib_default()), Body_assign({ text: (_b = handleIdPattern({
                    id: id,
                    text: answer,
                    filter: null,
                    mapper: removeMapper,
                })) === null || _b === void 0 ? void 0 : _b.join('\n'), onCopy: function () { return onCopyAnswer(answer); } }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { className: Body.copyButton, iconType: "copy", onClick: handleCopyAnswer }) })) })));
    };
    var handleDisplayResponse = function (x, index) {
        var _a;
        var renderResponseAction = function () {
            switch (x.action) {
                case Question/* QuestionResponseAction */.i2.EXTRACT_FILTERS: return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("span", { children: l('Here is a suggested filter', 'insightsCopilot') }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Question_Info, { isOpenByDefault: true, hideFooter: true, id: "".concat(id, "_").concat(index), type: x.action, date: date, error: x.answer.error, filter: x.filter, onFilterClick: onFilterClick })] }));
                case Question/* QuestionResponseAction */.i2.GATHER_STATISTICS: return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("span", { children: [l('Gathering statistics for', 'insightsCopilot'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "\"", x.call_arguments.query, "\""] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Question_Info, { hideFooter: true, id: "".concat(id, "_").concat(index), type: x.action, groupedBy: x.call_arguments.fields, error: x.answer.error, date: date, filter: x.filter, onFilterClick: onFilterClick })] }));
                case Question/* QuestionResponseAction */.i2.ANALYSE_MENTIONS: return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [renderCopyAnswerButton({ answer: x.answer.text }), (0,jsx_runtime.jsx)(Question_Info, { id: "".concat(id, "_").concat(index), type: x.action, error: x.answer.error, date: date, filter: x.filter, onFilterClick: onFilterClick }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), handleIdPattern({
                            id: id,
                            filter: x.filter,
                            selectedExampleIds: selectedExampleIds,
                            text: x.answer.text,
                            mapper: replaceMapper,
                            clickHandler: onExampleClick,
                        })] }));
                case Question/* QuestionResponseAction */.i2.BUILD_CHART: return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Question_Info, { hideFooter: true, id: "".concat(id, "_").concat(index), type: x.action, date: date, groupedBy: [x.call_arguments.aggregation], filter: x.filter, onFilterClick: onFilterClick }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), x.answer.error
                            ? ((0,jsx_runtime.jsxs)("div", { children: [l('Error'), ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), x.answer.error.description] }))
                            : ((0,jsx_runtime.jsx)(Chart_Chart, { withoutHeader: false, id: "".concat(id, "_").concat(index), type: x.call_arguments.chart_type, dimension: x.call_arguments.dimension, aggregation: x.call_arguments.aggregation, filter: x.filter }))] }));
                case Question/* QuestionResponseAction */.i2.DISPLAY_TEXT: return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [renderCopyAnswerButton({ answer: x.call_arguments.text }), (0,jsx_runtime.jsx)(react_markdown/* ReactMarkdown */.$, Body_assign({ className: Body.displayText, components: {
                                h1: getHeadingComponent(H1/* default */.A),
                                h2: getHeadingComponent(H2/* default */.A),
                                h3: getHeadingComponent(H3/* default */.A),
                                code: function (_a) {
                                    var children = _a.children;
                                    return (0,jsx_runtime.jsx)("code", Body_assign({ className: Body.code }, { children: children }));
                                },
                            }, remarkPlugins: [remark_breaks/* default */.A], linkTarget: "_blank" }, { children: x.call_arguments.text }))] }));
                default: return "Error! Unknown action type! [(".concat(x.action, ")]");
            }
        };
        return ((0,jsx_runtime.jsx)("div", Body_assign({ className: classnames_default()((_a = {}, _a[Body.dimmedAction] = !x.isMainAction, _a)) }, { children: renderResponseAction() })));
    };
    if (!isReady)
        return ((0,jsx_runtime.jsxs)("div", Body_assign({ className: Body.container }, { children: [(0,jsx_runtime.jsx)(Spinner_AppearingText, { showFinalStep: shouldFinalizeWait, date: date }), id && id !== Question/* DUMMY_QUESTION_ID */.CY ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ButtonBar/* default */.A, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { ai: true, ghost: true, size: "small", className: Body.cancelButton, label: l('Cancel', 'insightsCopilot'), onClick: function () { return onCancel(id); } }) })] })) : null] })));
    if (status === Question/* QuestionStatus */.Tq.FAILED)
        return ((0,jsx_runtime.jsxs)("div", Body_assign({ className: Body.error }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "error", color: "red", size: "small" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('An error has occurred!', 'insightsCopilot')] })));
    if (status === Question/* QuestionStatus */.Tq.SUCCESS)
        return ((0,jsx_runtime.jsx)("div", Body_assign({ className: Body.base }, { children: enrichWithActionImportanceType(response).filter(function (x) { return x.isHidden !== true; }).map(function (item, i) { return ((0,jsx_runtime.jsx)("div", Body_assign({ className: Body.response }, { children: handleDisplayResponse(item, i) }), i)); }) })));
};
/* harmony default export */ const Question_Body = ((0,react.memo)(QuestionBody));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/FeedbackButtons.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FeedbackButtons = ({"base":"od1P9rc6vRQLcdabHBOy","feedbackType":"Ees64xix1AYvuWIS9i2g"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/FeedbackButtons.tsx
var FeedbackButtons_assign = (undefined && undefined.__assign) || function () {
    FeedbackButtons_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return FeedbackButtons_assign.apply(this, arguments);
};




var QuestionFeedbackButtons = function (_a) {
    var id = _a.id, feedback = _a.feedback, onSendFeedback = _a.onSendFeedback, onHideAnswer = _a.onHideAnswer;
    var handleSendFeedback = function (type) {
        onSendFeedback({ id: id, type: type });
    };
    return ((0,jsx_runtime.jsx)("div", FeedbackButtons_assign({ className: FeedbackButtons.base }, { children: (0,jsx_runtime.jsxs)("div", FeedbackButtons_assign({ className: FeedbackButtons.feedbackType }, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { size: "small", iconType: "delete", tooltip: l('Delete this answer', 'insightsCopilot'), onClick: function () { return onHideAnswer(id); } }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { color: feedback === 'positive' ? 'purple' : 'default', size: "small", iconType: "like", tooltip: l('Correct answer', 'insightsCopilot'), onClick: function () { return handleSendFeedback('positive'); } }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { color: feedback === 'negative' ? 'purple' : 'default', size: "small", iconType: "dislike", tooltip: l('Incorrect answer', 'insightsCopilot'), onClick: function () { return handleSendFeedback('negative'); } })] })) })));
};
/* harmony default export */ const Question_FeedbackButtons = ((0,react.memo)(QuestionFeedbackButtons));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Question.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Question_Question = ({"question":"KDmpmhMDDgP1p2LgGWgT","feedback":"z8wHd7FDsp8nR3U6lTh4","request":"lJ8oPxVy3vi_1YoRkdn3","answer":"SD2JaqlaLp_7qXBamXzW"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Question.tsx
var Question_assign = (undefined && undefined.__assign) || function () {
    Question_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Question_assign.apply(this, arguments);
};







var QuestionContainer = function (_a) {
    var data = _a.data, selectedExampleIds = _a.selectedExampleIds, onFilterClick = _a.onFilterClick, onExampleClick = _a.onExampleClick, onSendFeedback = _a.onSendFeedback, onCopyAnswer = _a.onCopyAnswer, onCancel = _a.onCancel, onHideAnswer = _a.onHideAnswer;
    return ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: (0,jsx_runtime.jsxs)("div", Question_assign({ className: classnames_default()(Question_Question.question) }, { children: [(0,jsx_runtime.jsx)("div", Question_assign({ className: Question_Question.request }, { children: (0,jsx_runtime.jsx)(Question_Request, { isLoading: data.isLoading, request: data.request }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Question_assign({ className: Question_Question.answer }, { children: [(0,jsx_runtime.jsx)(Question_Body, { id: data.id, date: data.date, selectedExampleIds: selectedExampleIds, status: data.status, response: data.response, onCopyAnswer: onCopyAnswer, onExampleClick: onExampleClick, onFilterClick: onFilterClick, onCancel: onCancel }), !data.isLoading && ((0,jsx_runtime.jsx)("div", Question_assign({ className: Question_Question.feedback }, { children: (0,jsx_runtime.jsx)(Question_FeedbackButtons, { id: data.id, feedback: data.feedback, onSendFeedback: onSendFeedback, onHideAnswer: onHideAnswer }) })))] }))] })) }));
};
/* harmony default export */ const components_Question_Question = (QuestionContainer);

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Threads.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Threads = ({"base":"lJcGmxpGsEjhvo57QuVv","question":"e80KxvLaU5SJ0NdLUgnX","shortened":"xWQyz_qyXynR3FQ3E_MB","fall":"X98mM8Ei8CKds3gbju6Z","hide":"Xv26gbh36gCHZFYuqHow"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/Threads.tsx
var Threads_assign = (undefined && undefined.__assign) || function () {
    Threads_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Threads_assign.apply(this, arguments);
};





var ThreadsContainer = function (_a) {
    var data = _a.data, onQuestionClick = _a.onQuestionClick, onHideThread = _a.onHideThread;
    return ((0,jsx_runtime.jsx)("div", Threads_assign({ className: classnames_default()(Threads.base) }, { children: data.map(function (thread, i) { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", Threads_assign({ style: { animationDelay: "".concat(i * 50, "ms") }, className: classnames_default()(Threads.question, Threads.shortened) }, { children: (0,jsx_runtime.jsx)(Question_Request, { isLoading: thread.questions[thread.questions.length - 1].isLoading, request: thread.questions[0].request, onClick: function () { return onQuestionClick(thread.threadId); }, onHide: function () { return onHideThread(thread.threadId); } }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })); }) })));
};
/* harmony default export */ const Question_Threads = (ThreadsContainer);

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Question/index.ts



;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/History/History.tsx
var History_assign = (undefined && undefined.__assign) || function () {
    History_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return History_assign.apply(this, arguments);
};







var History_History_History = function (_a) {
    var data = _a.data, selectedExampleIds = _a.selectedExampleIds, onCopyAnswer = _a.onCopyAnswer, onFilterClick = _a.onFilterClick, onExampleClick = _a.onExampleClick, onChange = _a.onChange, onSendFeedback = _a.onSendFeedback, onCancel = _a.onCancel, onHideAnswer = _a.onHideAnswer, onHideThread = _a.onHideThread;
    var displayedThread = (0,react.useMemo)(function () { return data.getDisplayedThread(); }, [data.threads, data.currentThreadId]);
    if (data.isEmpty && !displayedThread)
        return null;
    var handleThreadClick = function (threadId) {
        setTimeout(function () {
            onChange({ mode: History/* HISTORY_MODE */.Z5.DETAILED, threadId: threadId });
        }, 600);
    };
    if (data.mode === History/* HISTORY_MODE */.Z5.GENERAL) {
        return ((0,jsx_runtime.jsx)(Question_Threads, { data: data.threads, onQuestionClick: handleThreadClick, onHideThread: onHideThread }));
    }
    return ((0,jsx_runtime.jsx)("div", History_assign({ className: classnames_default()(History_History.base) }, { children: displayedThread
            ? (displayedThread.questions.map(function (displayedQuestion) { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_Question_Question, { data: displayedQuestion, selectedExampleIds: selectedExampleIds, onCopyAnswer: onCopyAnswer, onExampleClick: onExampleClick, onFilterClick: onFilterClick, onSendFeedback: onSendFeedback, onCancel: onCancel, onHideAnswer: onHideAnswer }, displayedQuestion.id), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })); }))
            : null })));
};
/* harmony default export */ const components_History_History = ((0,react.memo)(History_History_History));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/History/index.ts


// EXTERNAL MODULE: ./src/models/insightsCopilot/Settings.ts
var Settings = __webpack_require__("9I83");
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Settings/Settings.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Settings_Settings = ({"base":"t2_UedgCXAERht5zufX2","changed":"rpLVRHpzKA9j5RniDdmr","text":"GIqd7qoJXYvcp4MMhah1","label":"Ro9mdvLr3dK5ZkkcESzn"});
;// CONCATENATED MODULE: ./src/utils/insightsCopilotLanguages.ts
/* harmony default export */ const insightsCopilotLanguages = ([
    { label: 'English', alternativeLabel: 'English', value: 'en' },
    { label: 'Português', alternativeLabel: 'Portuguese', value: 'pt' },
    { label: 'Español', alternativeLabel: 'Spanish', value: 'es' },
    { label: 'Қазақ', alternativeLabel: 'Kazakh', value: 'kk' },
    { label: 'Українська', alternativeLabel: 'Ukrainian', value: 'uk' },
    { label: 'Русский (Восточная Европа)', alternativeLabel: 'Russian', value: 'ru' },
    { label: 'Deutsch', alternativeLabel: 'German', value: 'de' },
    { label: 'Italiano', alternativeLabel: 'Italian', value: 'it' },
    { label: 'Français', alternativeLabel: 'French', value: 'fr' },
    { label: 'Shqip', alternativeLabel: 'Albanian', value: 'sq' },
    { label: 'አማርኛ', alternativeLabel: 'Amharic', value: 'am' },
    { label: 'العربية', alternativeLabel: 'Arabic', value: 'ar' },
    { label: 'Հայերեն', alternativeLabel: 'Armenian', value: 'hy' },
    { label: 'বাংলা', alternativeLabel: 'Bengali', value: 'bn' },
    { label: 'Bosanski', alternativeLabel: 'Bosnian', value: 'bs' },
    { label: 'Български', alternativeLabel: 'Bulgarian', value: 'bg' },
    { label: 'မြန်မာစာ', alternativeLabel: 'Burmese', value: 'my' },
    { label: 'Català', alternativeLabel: 'Catalan', value: 'ca' },
    { label: '中文', alternativeLabel: 'Chinese', value: 'zh' },
    { label: 'Hrvatski', alternativeLabel: 'Croatian', value: 'hr' },
    { label: 'Čeština', alternativeLabel: 'Czech', value: 'cs' },
    { label: 'Dansk', alternativeLabel: 'Danish', value: 'da' },
    { label: 'Nederlands', alternativeLabel: 'Dutch', value: 'nl' },
    { label: 'Eesti', alternativeLabel: 'Estonian', value: 'et' },
    { label: 'Suomi', alternativeLabel: 'Finnish', value: 'fi' },
    { label: 'ქართული', alternativeLabel: 'Georgian', value: 'ka' },
    { label: 'Ελληνικά', alternativeLabel: 'Greek', value: 'el' },
    { label: 'ગુજરાતી', alternativeLabel: 'Gujarati', value: 'gu' },
    { label: 'हिन्दी', alternativeLabel: 'Hindi', value: 'hi' },
    { label: 'Magyar', alternativeLabel: 'Hungarian', value: 'hu' },
    { label: 'Íslenska', alternativeLabel: 'Icelandic', value: 'is' },
    { label: 'Bahasa Indonesia', alternativeLabel: 'Indonesian', value: 'id' },
    { label: '日本語', alternativeLabel: 'Japanese', value: 'ja' },
    { label: 'ಕನ್ನಡ', alternativeLabel: 'Kannada', value: 'kn' },
    { label: '한국어', alternativeLabel: 'Korean', value: 'ko' },
    { label: 'Latviešu', alternativeLabel: 'Latvian', value: 'lv' },
    { label: 'Lietuvių', alternativeLabel: 'Lithuanian', value: 'lt' },
    { label: 'Македонски', alternativeLabel: 'Macedonian', value: 'mk' },
    { label: 'Bahasa Melayu', alternativeLabel: 'Malay', value: 'ms' },
    { label: 'മലയാളം', alternativeLabel: 'Malayalam', value: 'ml' },
    { label: 'मराठी', alternativeLabel: 'Marathi', value: 'mr' },
    { label: 'Монгол', alternativeLabel: 'Mongolian', value: 'mn' },
    { label: 'Norsk', alternativeLabel: 'Norwegian', value: 'no' },
    { label: 'فارسی', alternativeLabel: 'Persian', value: 'fa' },
    { label: 'Polski', alternativeLabel: 'Polish', value: 'pl' },
    { label: 'ਪੰਜਾਬੀ', alternativeLabel: 'Punjabi', value: 'pa' },
    { label: 'Română', alternativeLabel: 'Romanian', value: 'ro' },
    { label: 'Српски', alternativeLabel: 'Serbian', value: 'sr' },
    { label: 'Slovenčina', alternativeLabel: 'Slovak', value: 'sk' },
    { label: 'Slovenščina', alternativeLabel: 'Slovenian', value: 'sl' },
    { label: 'Soomaali', alternativeLabel: 'Somali', value: 'so' },
    { label: 'Kiswahili', alternativeLabel: 'Swahili', value: 'sw' },
    { label: 'Svenska', alternativeLabel: 'Swedish', value: 'sv' },
    { label: 'Tagalog', alternativeLabel: 'Tagalog', value: 'tl' },
    { label: 'தமிழ்', alternativeLabel: 'Tamil', value: 'ta' },
    { label: 'తెలుగు', alternativeLabel: 'Telugu', value: 'te' },
    { label: 'ไทย', alternativeLabel: 'Thai', value: 'th' },
    { label: 'Türkçe', alternativeLabel: 'Turkish', value: 'tr' },
    { label: 'اردو', alternativeLabel: 'Urdu', value: 'ur' },
    { label: 'Tiếng Việt', alternativeLabel: 'Vietnamese', value: 'vi' }
]);

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Settings/Settings.tsx
var Settings_assign = (undefined && undefined.__assign) || function () {
    Settings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Settings_assign.apply(this, arguments);
};
var Settings_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};












var getLanguageOption = function (languageCode) {
    return insightsCopilotLanguages.find(function (x) { return x.value === languageCode; });
};
var Settings_Settings_Settings = function (_a) {
    var _b;
    var data = _a.data, onChange = _a.onChange;
    var _c = Settings_read((0,react.useState)(false), 2), isChanged = _c[0], setIsChanged = _c[1];
    var DEFAULT_LANGUAGE = (0,react.useMemo)(function () { return [{
            value: Settings/* DEFAULT_LANGUAGE_CODE */.P,
            label: l('Auto-detect language', 'insightsCopilot'),
            alternativeLabel: l('Auto-detect language', 'insightsCopilot'),
        }]; }, []);
    (0,react.useEffect)(function () {
        setIsChanged(false);
    });
    var handleChangeAutoRun = function (type, value) {
        if (type === 'trends')
            data.changeShowWhenTrendsClicked(value);
        if (type === 'aspects')
            data.changeShowWhenAspectsClicked(value);
        if (type === 'subjects')
            data.changeShowWhenSubjectsClicked(value);
        setIsChanged(true);
        onChange(data.toApi());
    };
    var handleChangeLanguage = function (option, _) {
        data.changeLanguage(option.value);
        setIsChanged(true);
        onChange(data.toApi());
    };
    var isAddonsEnabled = (0,react.useMemo)(function () { return (data.questionsLimit >= 1000); }, [data]);
    return ((0,jsx_runtime.jsxs)("div", Settings_assign({ className: classnames_default()(Settings_Settings.base, (_b = {}, _b[Settings_Settings.changed] = isChanged, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)("div", Settings_assign({ className: Settings_Settings.text }, { children: [(0,jsx_runtime.jsx)("div", { children: l('Usage', 'insightsCopilot') }), (0,jsx_runtime.jsx)("div", { children: isAddonsEnabled
                                    ? (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [data.usedQuestionsCount, " / ", (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "infinite" })] })
                                    : "".concat(data.usedQuestionsCount, " / ").concat(data.questionsLimit) })] })), !isAddonsEnabled ? ((0,jsx_runtime.jsxs)(ExplanationText/* default */.A, { children: [l('To get unlimited access to Insights Copilot reach out to us via ', 'insightsCopilot'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", Settings_assign({ href: "mailto:support@youscan.io" }, { children: l('email', 'insightsCopilot') }))] })) : null] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: data.showWhenTrendsClicked, label: l('Insights Copilot for trends', 'insightsCopilot'), description: (0,jsx_runtime.jsx)(ExplanationText/* default */.A, { children: l('Automatically run Insight Copilot after a trend is clicked', 'insightsCopilot') }), onChange: function (value) { return handleChangeAutoRun('trends', value); } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: data.showWhenAspectsClicked, label: l('Insights Copilot for aspects', 'insightsCopilot'), description: (0,jsx_runtime.jsx)(ExplanationText/* default */.A, { children: l('Automatically run Insight Copilot after an aspect is clicked', 'insightsCopilot') }), onChange: function (value) { return handleChangeAutoRun('aspects', value); } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: data.showWhenSubjectsClicked, label: l('Insights Copilot for subjects', 'insightsCopilot'), description: (0,jsx_runtime.jsx)(ExplanationText/* default */.A, { children: l('Automatically run Insight Copilot after a subject is clicked', 'insightsCopilot') }), onChange: function (value) { return handleChangeAutoRun('subjects', value); } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("span", Settings_assign({ className: classnames_default()(Settings_Settings.label) }, { children: l('Language', 'insightsCopilot') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Select/* default */.A, { isSearchable: true, name: l('Language', 'insightsCopilot'), value: getLanguageOption(data.language), placeholder: l('Auto-detect language', 'insightsCopilot'), options: DEFAULT_LANGUAGE.concat(insightsCopilotLanguages), onChange: handleChangeLanguage })] })));
};
/* harmony default export */ const components_Settings_Settings = (Settings_Settings_Settings);

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Settings/index.ts


;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Header/Header.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Header = ({"base":"APF68WtJ9_izAS7kBKJe","disabled":"Pdf7DJ0c93ew1GvQ1B18","history":"g_F9VjwCbP0Ngelt0q9e","isActive":"vQE04ROOUFusAGxx1CQW","historyButtons":"_FnNEJ5SZwKBcI4krWtP","invisible":"WvSVxH9kfWCVOpkhuoiQ"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Header/Header.tsx
var Header_assign = (undefined && undefined.__assign) || function () {
    Header_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Header_assign.apply(this, arguments);
};





var Header_Header = function (_a) {
    var _b;
    var isLoading = _a.isLoading, currentThreadId = _a.currentThreadId, latestThreadId = _a.latestThreadId, historyMode = _a.historyMode, onClose = _a.onClose, onExpand = _a.onExpand, onChangeHistoryParams = _a.onChangeHistoryParams, onToggleSettings = _a.onToggleSettings;
    var config = (_b = {},
        _b[History/* HISTORY_MODE */.Z5.DISABLED] = {
            leftContent: [
                {
                    iconType: 'close',
                    color: 'purple',
                    action: onClose,
                },
                {
                    iconType: 'expand',
                    color: 'purple',
                    action: onExpand,
                },
                {
                    iconType: 'settings',
                    color: 'purple',
                    action: onToggleSettings,
                }
            ],
            rightContent: [
                {
                    label: l('Latest thread', 'insightsCopilot'),
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.DETAILED, latestThreadId); },
                },
                {
                    label: l('History', 'insightsCopilot'),
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.GENERAL, null); },
                }
            ],
        },
        _b[History/* HISTORY_MODE */.Z5.DETAILED] = {
            leftContent: [
                {
                    iconType: 'home',
                    color: 'purple',
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.DISABLED, null); },
                },
                {
                    iconType: 'expand',
                    color: 'purple',
                    action: onExpand,
                },
                {
                    iconType: 'settings',
                    color: 'purple',
                    action: onToggleSettings,
                }
            ],
            rightContent: [
                {
                    isActive: currentThreadId === latestThreadId,
                    label: l('Latest thread', 'insightsCopilot'),
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.DETAILED, latestThreadId); },
                },
                {
                    label: l('History', 'insightsCopilot'),
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.GENERAL, null); },
                }
            ],
        },
        _b[History/* HISTORY_MODE */.Z5.GENERAL] = {
            leftContent: [
                {
                    iconType: 'home',
                    color: 'purple',
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.DISABLED, null); },
                },
                {
                    iconType: 'expand',
                    color: 'purple',
                    action: onExpand,
                },
                {
                    iconType: 'settings',
                    color: 'purple',
                    action: onToggleSettings,
                }
            ],
            rightContent: [
                {
                    label: l('Latest thread', 'insightsCopilot'),
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.DETAILED, latestThreadId); },
                },
                {
                    isActive: true,
                    label: l('History', 'insightsCopilot'),
                    action: function () { return onChangeHistoryParams(History/* HISTORY_MODE */.Z5.GENERAL, null); },
                }
            ],
        },
        _b);
    var _c = config[historyMode || History/* HISTORY_MODE */.Z5.DISABLED], leftContent = _c.leftContent, rightContent = _c.rightContent;
    return ((0,jsx_runtime.jsxs)("div", Header_assign({ className: Header.base }, { children: [(0,jsx_runtime.jsx)("div", { children: leftContent.map(function (item) { return ((0,jsx_runtime.jsx)(IconButton/* default */.A, { disabled: item.iconType === 'expand' ? false : isLoading, className: Header.button, iconType: item.iconType, color: item.color, onClick: item.action }, item.iconType)); }) }), (0,jsx_runtime.jsx)("div", Header_assign({ className: Header.historyButtons }, { children: latestThreadId ? rightContent.map(function (item) {
                    var _a;
                    return ((0,jsx_runtime.jsx)("div", Header_assign({ className: classnames_default()(Header.history, (_a = {}, _a[Header.isActive] = item.isActive, _a)), onClick: item.action }, { children: item.label }), item.label));
                }) : null }))] })));
};
/* harmony default export */ const components_Header_Header = (Header_Header);

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Header/index.ts


// EXTERNAL MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/utils.ts
var SubjectsFilter_utils = __webpack_require__("TGGk");
;// CONCATENATED MODULE: ./src/models/insightsCopilot/Presets.ts


var CASES = [
    {
        id: 'wom',
        title: function () { return l('Word of Mouth', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/word_of_mouth.png',
        filter: [{ name: 'systemTags', value: ['wom'] }],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('What do people think about our brand or products?', 'insightsCopilot'); },
    },
    {
        id: 'potential-crises',
        title: function () { return l('Potential crises', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/potential_crises.png',
        filter: [{ name: 'subject', value: SubjectsFilter_utils/* SUBJECT_ORDERS */.d.potentialCrisis }],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('Are there any potential crises or topics that we should be aware of?', 'insightsCopilot'); },
    },
    {
        id: 'customer-satisfaction',
        title: function () { return l('Customer satisfaction', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/customer_satisfaction.png',
        filter: [{ name: 'systemTags', value: ['wom'] }, { name: 'sentiment', value: ['positive'] }],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('What do consumers like about our brand or products?', 'insightsCopilot'); },
    },
    {
        id: 'pain-points',
        title: function () { return l('Pain points', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/pain_points.png',
        filter: [
            { name: 'sentiment', value: ['negative'] },
            { name: 'systemTags', value: ['womRecommendation', 'womReview', 'womComplaint'] }
        ],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('What are the main consumer complaints?', 'insightsCopilot'); },
    },
    {
        id: 'news-summary',
        title: function () { return l('News summary', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/news_summary.png',
        filter: [
            { name: 'resourceType', value: ['news', 'blog'] },
            { name: 'postType', value: ['post'] }
        ],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('What are the breaking news about our brand or industry?', 'insightsCopilot'); },
    },
    {
        id: 'swot',
        title: function () { return l('SWOT analysis', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/swot_analysis.png',
        filter: [{ name: 'resourceType', value: ['reviews'] }],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('Make a SWOT analysis based on consumer reviews', 'insightsCopilot'); },
    },
    {
        id: 'brand-associations',
        title: function () { return l('Brand associations', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/brand_associations.png',
        filter: [
            { exclude: true, name: 'gender', value: ['community'] },
            { name: 'resourceType', value: ['social', 'forum'] }
        ],
        queryParams: { isCopilotActive: true },
        getQuestionText: function () { return l('What topics are also mentioned with our brand?', 'insightsCopilot'); },
    },
    {
        id: 'influencers',
        title: function () { return l('Influencers\' opinions', 'insightsCopilot'); },
        iconPath: '/static/images/insights-copilot/influencers_opinions.png',
        filter: [
            { exclude: true, name: 'gender', value: ['community'] },
            { name: 'authorSubscribers', value: { from: '5000' } }
        ],
        queryParams: { orderBy: 'engagement', isCopilotActive: true },
        getQuestionText: function () { return l('What are the opinions and attitudes of influencers towards our brand?', 'insightsCopilot'); },
    }
];
var QUESTIONS = [
    {
        id: 'interestingInsights',
        getQuestionText: function () { return l('What are the most interesting insights?', 'insightsCopilot'); },
    },
    {
        id: 'whatPeopleThink',
        getQuestionText: function () { return l('What do people think, in a nutshell?', 'insightsCopilot'); },
    },
    {
        id: 'mentionedBrands',
        getQuestionText: function () { return l('Which brands are mentioned with ours?', 'insightsCopilot'); },
    }
];
var getDataSpecificQuestion = function () {
    var DATE_THRESHOLD = 15;
    var CURRENT_DAY = moment().date();
    var laterMonthName = moment().subtract(1, 'month').format('MMMM');
    var earlierMonthName = moment().subtract(2, 'months').format('MMMM');
    if (CURRENT_DAY >= DATE_THRESHOLD) {
        laterMonthName = moment().format('MMMM');
        earlierMonthName = moment().subtract(1, 'month').format('MMMM');
    }
    return {
        id: 'monthlySummary',
        getQuestionText: function () { return sprintf(l('What was new in %s compared to %s?', 'insightsCopilot'), laterMonthName, earlierMonthName); },
    };
};
var getPresetQuestions = function (locale) {
    var specificLanguages = ['ru', 'uk'];
    if (specificLanguages.includes(locale)) {
        return QUESTIONS.concat({
            id: 'mentionedBrands',
            getQuestionText: function () { return l('Which brands are mentioned with ours?', 'insightsCopilot'); },
        });
    }
    return QUESTIONS.concat(getDataSpecificQuestion());
};
// moment: previous month
var Presets = /** @class */ (function () {
    function Presets() {
        this._cases = CASES;
        this._questions = QUESTIONS;
    }
    Object.defineProperty(Presets.prototype, "cases", {
        get: function () {
            return this._cases;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Presets.prototype, "questions", {
        get: function () {
            return this._questions;
        },
        enumerable: false,
        configurable: true
    });
    return Presets;
}());


;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/Cases.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Cases = ({"base":"IeViGD3kycv3I9Fg3yDQ","case":"gmrmtKOJlzKHvzr2wQU6","icon":"P2HvuWi23O_iYAwV7RIi"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/Cases.tsx
var Cases_assign = (undefined && undefined.__assign) || function () {
    Cases_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Cases_assign.apply(this, arguments);
};




var Cases_Cases = function (_a) {
    var data = _a.data, onCaseClick = _a.onCaseClick;
    return ((0,jsx_runtime.jsx)("div", Cases_assign({ className: Cases.base }, { children: data.map(function (c, i) { return ((0,jsx_runtime.jsxs)("div", Cases_assign({ className: classnames_default()(Cases.case), onClick: function () { return onCaseClick(Cases_assign(Cases_assign({}, c), { question: c.getQuestionText() })); } }, { children: [(0,jsx_runtime.jsx)("img", { className: classnames_default()(Cases.icon), src: c.iconPath, alt: "" }), (0,jsx_runtime.jsx)("div", Cases_assign({ className: Cases.caseTitle }, { children: c.title() }))] }), i)); }) })));
};
/* harmony default export */ const Presets_Cases = ((0,react.memo)(Cases_Cases));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/Questions.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Questions = ({"base":"jvQn2SGpPZhQnszUNERW","question":"lcQZqumYscV5vlNf34ZE"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/Questions.tsx
var Questions_assign = (undefined && undefined.__assign) || function () {
    Questions_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Questions_assign.apply(this, arguments);
};



var Questions_Questions = function (_a) {
    var data = _a.data, onQuestionClick = _a.onQuestionClick;
    return ((0,jsx_runtime.jsx)("div", Questions_assign({ className: Questions.base }, { children: data.map(function (question) { return ((0,jsx_runtime.jsx)("div", Questions_assign({ className: Questions.question, onClick: function () { return onQuestionClick({ id: question.id, question: question.getQuestionText() }); } }, { children: question.getQuestionText() }), question.id)); }) })));
};
/* harmony default export */ const Presets_Questions = ((0,react.memo)(Questions_Questions));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/Home.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Home = ({"base":"vthSnuISzzv1bW7aZ5TW","disabled":"PbrRwS2H0yXqnmcxj7NR","cases":"IowC9MeDOJgpfUl5cSOo","icon":"Ax9UfXwYO_fFkiUs42gg","bottomPanel":"EACHDR3Z4eid4SOvzbDV","quotaMessage":"Us5cmxvIi5GeTUSGGGag","limitReached":"L9ZCnKt9E1kL83sbOkSN"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/Home.tsx
var Home_assign = (undefined && undefined.__assign) || function () {
    Home_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Home_assign.apply(this, arguments);
};












var Home_Home = function (_a) {
    var _b;
    var availableQuestionsCount = _a.availableQuestionsCount, isLoading = _a.isLoading, onPresetClick = _a.onPresetClick;
    var presets = (0,react.useMemo)(function () { return new Presets(); }, []);
    return ((0,jsx_runtime.jsxs)("div", Home_assign({ className: classnames_default()(Home.base, (_b = {}, _b[Home.disabled] = availableQuestionsCount <= 0 || isLoading, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", Home_assign({ className: Home.cases }, { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, Home_assign({ withSubtitle: true }, { children: [l('Cases', 'insightsCopilot'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: Home.icon, type: "ai", color: "purple" })] })), (0,jsx_runtime.jsx)(ExplanationText/* default */.A, Home_assign({ withoutMargin: true }, { children: l('Ask AI to retrieve and summarize') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Presets_Cases, { data: presets.cases, onCaseClick: onPresetClick })] })), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, Home_assign({ withSubtitle: true }, { children: [l('Questions', 'insightsCopilot'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: Home.icon, type: "ai", color: "purple" })] })), (0,jsx_runtime.jsx)(ExplanationText/* default */.A, Home_assign({ withoutMargin: true }, { children: l('Get insights about chosen mentions') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Presets_Questions, { data: presets.questions, onQuestionClick: onPresetClick })] })] })));
};
/* harmony default export */ const Presets_Home = ((0,react.memo)(Home_Home));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/Presets/index.ts


;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/QuestionField/QuestionField.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const QuestionField = ({"base":"zhEPCRHg21nPWlu62jao","disabled":"VfVAXqVVJoNmw3IRU9iw","container":"SYqm7pfOP1YX7sxQ4plh","checkbox":"CNoXXg9ZD9FnoMdhKJ8k","checkboxIcon":"PbIigiUHOdkFFm8lesox","checkboxLabel":"OjHAh5BfePcEBM67MJ63","textField":"mo1MvGsSiLnfcByRaqSs","button":"sEj7w0blDDyK5zCpFxIA","filterModeSelector":"y3PQ3lX9xFKy6hpMboit"});
;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/QuestionField/QuestionField.tsx
var QuestionField_assign = (undefined && undefined.__assign) || function () {
    QuestionField_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return QuestionField_assign.apply(this, arguments);
};
var QuestionField_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};












var QuestionField_QuestionField = function (_a) {
    var _b;
    var disabled = _a.disabled, isThread = _a.isThread, isLoading = _a.isLoading, textFieldRef = _a.textFieldRef, question = _a.question, onChangeQuestion = _a.onChangeQuestion, onSendQuestion = _a.onSendQuestion, onStartNewThread = _a.onStartNewThread;
    var containerRef = (0,react.useRef)(null);
    var _c = QuestionField_read((0,react.useState)(true), 2), shouldEnhanceQuery = _c[0], setShouldEnhanceQuery = _c[1];
    (0,react.useEffect)(function () {
        var isAllowed = getIsInsightsCopilotSearchEnhanced();
        if ((0,lodash.isBoolean)(isAllowed))
            setShouldEnhanceQuery(isAllowed);
        else
            saveIsInsightsCopilotSearchEnhanced(true);
    }, []);
    var handleShouldEnhanceQueryChange = function (value) {
        setShouldEnhanceQuery(!value);
        saveIsInsightsCopilotSearchEnhanced(!value);
    };
    var handleSendQuestion = function () {
        if (question && question.length > 3 && !isLoading) {
            onSendQuestion(question, {
                isUserSearchedQuestion: true,
                enhanceQuery: shouldEnhanceQuery,
            });
            onChangeQuestion('');
        }
    };
    var textAreaPlaceholder = (0,react.useMemo)(function () {
        if (isLoading)
            return l('Working on an answer', 'insightsCopilot');
        if (isThread)
            return l('Ask follow-up', 'insightsCopilot');
        return l('Ask anything...', 'insightsCopilot');
    }, [isLoading, isThread]);
    return ((0,jsx_runtime.jsxs)("div", QuestionField_assign({ ref: containerRef, className: classnames_default()(QuestionField.base, (_b = {}, _b[QuestionField.disabled] = disabled || isLoading, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", QuestionField_assign({ className: QuestionField.container }, { children: [(0,jsx_runtime.jsx)(TextArea/* default */.A, { fullWidth: true, disabled: isLoading, propRef: textFieldRef, rows: 2, className: QuestionField.textField, placeholder: textAreaPlaceholder, value: question, onChange: onChangeQuestion }), (0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, QuestionField_assign({ className: QuestionField.filterModeSelector }, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { ai: true, value: false, label: l('Extract filters from question', 'insightsCopilot'), selected: shouldEnhanceQuery, onSelect: handleShouldEnhanceQueryChange }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { ai: true, value: true, label: l('Use current filters', 'insightsCopilot'), selected: !shouldEnhanceQuery, onSelect: handleShouldEnhanceQueryChange })] }))] })), (0,jsx_runtime.jsxs)("div", QuestionField_assign({ className: QuestionField.buttons }, { children: [isThread && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, QuestionField_assign({ position: "left center", text: l('Start new thread', 'insightsCopilot') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { ai: true, ghost: true, disabled: isLoading, className: QuestionField.button, label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus" }), onClick: onStartNewThread }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })), !question ? null : ((0,jsx_runtime.jsx)(Tooltip/* default */.A, QuestionField_assign({ position: "left center", text: isThread ? l('Ask follow-up', 'insightsCopilot') : l('Ask', 'insightsCopilot') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { ai: true, disabled: isLoading, loading: isLoading, className: QuestionField.button, label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "ai-send" }), onClick: handleSendQuestion }) })))] }))] })));
};
/* harmony default export */ const components_QuestionField_QuestionField = ((0,react.memo)(QuestionField_QuestionField));

;// CONCATENATED MODULE: ./src/models/insightsCopilot/components/QuestionField/index.ts


// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
;// CONCATENATED MODULE: ./src/containers/Explore/config.ts


var getIconPath = function (iconPath, size) {
    if (size === void 0) { size = 'default'; }
    if (size === 'small')
        return "/static/images/explore/small-icons/".concat(iconPath, ".svg");
    return "/static/images/explore/".concat(iconPath, ".svg");
};
var EXPLORE_CONFIG = [
    {
        title: function () { return l('Engaging content', 'explore'); },
        layoutType: 'small',
        cases: [
            {
                id: 'hot-discussions',
                title: function () { return l('Hot discussions', 'explore'); },
                iconPath: getIconPath((0,colorHandler/* isDarkTheme */.g4)() ? 'discussions_dark' : 'discussions', 'small'),
                path: '/mentions',
                filter: [],
                queryParams: { orderBy: 'comments' },
            },
            {
                id: 'top-reviews',
                title: function () { return l('Top reviews', 'explore'); },
                iconPath: getIconPath((0,colorHandler/* isDarkTheme */.g4)() ? 'reviews_dark' : 'reviews', 'small'),
                path: '/mentions',
                filter: [{ name: 'resourceType', value: ['reviews'] }],
                queryParams: { orderBy: 'engagement' },
            },
            {
                id: 'influencial-authors',
                title: function () { return l('Influential authors', 'explore'); },
                iconPath: getIconPath((0,colorHandler/* isDarkTheme */.g4)() ? 'influencers_dark' : 'influencers', 'small'),
                path: '/audience/list',
                filter: [
                    { exclude: true, name: 'gender', value: ['community'] },
                    { name: 'authorSubscribers', value: { from: '1000' } }
                ],
            },
            {
                id: 'engaging-visuals',
                title: function () { return l('Engaging visuals', 'explore'); },
                iconPath: getIconPath('visuals', 'small'),
                path: '/gallery/visual/engagement',
                permission: 'visualInsights',
                filter: [],
            },
            {
                id: 'trending-tiktoks',
                title: function () { return l('Trending TikToks', 'explore'); },
                iconPath: getIconPath('tiktok', 'small'),
                path: '/gallery/images',
                filter: [{ name: 'sourceId', value: ['tiktok.com'] }],
            },
            {
                id: 'selfies-with-brand',
                title: function () { return l('Selfies with your brand', 'explore'); },
                iconPath: getIconPath('selfies', 'small'),
                path: '/gallery/images',
                permission: 'visualInsightsData',
                filter: [
                    { name: 'imageSubtype', value: ['selfie'] },
                    { name: 'collectionMethod', value: ['ocrText', 'imageLogo'] }
                ],
            }
        ],
    },
    {
        title: function () { return l('Brand health tracking', 'explore'); },
        layoutType: 'default',
        cases: [
            {
                id: 'growing-crises',
                title: function () { return l('Find growing crises', 'explore'); },
                iconPath: getIconPath('crises'),
                path: '/dashboard',
                filter: [{ name: 'sentiment', value: ['negative'] }],
            },
            {
                id: 'negative-press',
                title: function () { return l('Negative press', 'explore'); },
                iconPath: getIconPath('press'),
                path: '/mentions',
                filter: [
                    { name: 'sentiment', value: ['negative'] },
                    { name: 'resourceType', value: ['news', 'blog'] },
                    { name: 'postType', value: ['post'] }
                ],
                queryParams: { orderBy: 'engagement' },
            },
            {
                id: 'where-discussions-happen',
                title: function () { return l('Where discussions happen', 'explore'); },
                iconPath: getIconPath('source'),
                path: '/dashboard/sources',
                filter: [],
            },
            {
                id: 'complaints',
                title: function () { return l('Consumers\' complaints', 'explore'); },
                iconPath: getIconPath('complaints'),
                path: '/dashboard/wordcloud',
                filter: [
                    { exclude: true, name: 'indirect', value: ['false'] },
                    { name: 'systemTags', value: ['womReview', 'womComplaint', 'womRecommendation', 'womComparison'] },
                    { name: 'sentiment', value: ['negative'] }
                ],
                queryParams: {
                    wordCloudColorPalette: 'red',
                    trendingWordsColorPalette: 'red',
                    wordCloudOmittedDataKeys: ['objects', 'actions', 'characteristics', 'hashtags'],
                    trendingWordsOmittedDataKeys: ['objects', 'actions', 'characteristics', 'hashtags'],
                },
            }
        ],
    },
    {
        title: function () { return l('Consumer insights', 'explore'); },
        layoutType: 'default',
        cases: [
            {
                id: 'demographics',
                title: function () { return l('Demographics', 'explore'); },
                iconPath: getIconPath('demographics'),
                path: '/audience/demographics',
                filter: [{ exclude: true, name: 'gender', value: ['community'] }],
            },
            {
                id: 'audience-interests',
                title: function () { return l('Audience interests', 'explore'); },
                iconPath: getIconPath((0,colorHandler/* isDarkTheme */.g4)() ? 'interests_dark' : 'interests'),
                path: '/audience/interests',
                permission: 'audienceInsights',
                filter: [{ exclude: true, name: 'gender', value: ['community'] }],
            },
            {
                id: 'strength-and-weaknesses',
                title: function () { return l('Strengths and weaknesses', 'explore'); },
                iconPath: getIconPath('aspects'),
                path: '/dashboard/aspects',
                filter: [{ name: 'systemTags', value: ['wom'] }],
            },
            {
                id: 'moments-of-consumption',
                title: function () { return l('Moments of consumption', 'explore'); },
                iconPath: getIconPath('moments-of-consumption'),
                path: '/gallery/visual/bubble',
                permission: 'visualInsightsData',
                filter: [
                    { name: 'imageType', value: ['PHOTO'] },
                    { name: 'imagePeople', value: ['man', 'woman'] },
                    { name: 'collectionMethod', value: ['ocrText', 'imageLogo'] }
                ],
                period: { from: (0,dateUtils/* trimToDate */.gf)((0,dateUtils/* getDayTwoWeeksAgo */.jV)()), to: (0,dateUtils/* trimToDate */.gf)(new Date()) },
            }
        ],
    }
];
var createQueryStringForCase = function (caseItem, filter) {
    filter.clear();
    caseItem.filter.forEach(function (f) {
        if (f.exclude)
            filter.doExclude(f.name, f.value);
        else
            filter.doAdd(f.name, f.value);
    });
    if (caseItem.period) {
        filter.from = caseItem.period.from;
        filter.to = caseItem.period.to;
    }
    var queryParams = Object.keys(caseItem.queryParams || {})
        .reduce(function (acc, key) {
        var param = caseItem.queryParams[key];
        if (Array.isArray(param))
            return "".concat(acc, "&").concat(param.map(function (p, i) { return "".concat(key, "[").concat(i, "]=").concat(p); }).join('&'));
        return "".concat(acc, "&").concat(key, "=").concat(param);
    }, '');
    return "".concat(filter.toQueryString()).concat(queryParams);
};

;// CONCATENATED MODULE: ./src/containers/insightsCopilot/InsightsCopilot.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const InsightsCopilot = ({"visibleScrollBar":"R4aRV1ghre7plpMxFqef","hiddenScrollBar":"PfXMS_l92eze1EKWDFQk","base":"oJoG_FWS9x2i71w2HIwg","enlarged":"_30IMgHz6AOh_6V_Ypwg","container":"_cmwT5n_x2FDDw4wwH1Q","modal":"gCqFUWuguHuiz89FjPKK","enlargedModal":"eUDPpMV8Km7eqx9Ea3BM","modalContainer":"VTdXO6k5BJGUO9IJ20Cg","modalContent":"Lt__qK3Db4pvVNwR3XKV","modalMentionStream":"DTHCXB71QTua6_Rx_N93","modelToolbar":"AdvA2sR9J8reVrqeHwHK","content":"FrqN3EllJ_EwItTFkg5W","history":"mvXamwuBUnAxyf6zCGTI","quotaMessage":"E9jykrRV_LzfW7Xg5qsQ"});
;// CONCATENATED MODULE: ./src/containers/insightsCopilot/InsightsCopilot.tsx
var InsightsCopilot_assign = (undefined && undefined.__assign) || function () {
    InsightsCopilot_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return InsightsCopilot_assign.apply(this, arguments);
};
var InsightsCopilot_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





































var handleQuestionByMetaInfoType = function (_a) {
    var aspect = _a.aspect, trend = _a.trend, subject = _a.subject, phrasesBySubjects = _a.phrasesBySubjects, potentialCrisis = _a.potentialCrisis, sentiment = _a.sentiment, handler = _a.handler;
    if (aspect) {
        if (sentiment === 'positive')
            return handler(sprintf(l('What do consumers like about %s?', 'insightsCopilot'), (0,aspectTranslation/* getAspectLabel */.zS)(aspect)), { isNewThread: true, alwaysKeepFilter: true });
        if (sentiment === 'negative')
            return handler(sprintf(l('What do consumers dislike about %s?', 'insightsCopilot'), (0,aspectTranslation/* getAspectLabel */.zS)(aspect)), { isNewThread: true, alwaysKeepFilter: true });
        return handler(sprintf(l('What do consumers say about %s?', 'insightsCopilot'), (0,aspectTranslation/* getAspectLabel */.zS)(aspect)), { isAboutAspect: true, alwaysKeepFilter: true, isNewThread: true });
    }
    if (trend)
        return handler(l('These posts are part of one trend. What is this trend about?', 'insightsCopilot'), { isAboutTrend: true, alwaysKeepFilter: true, isNewThread: true });
    if (subject)
        return handler(sprintf(l('What do consumers say about %s?', 'insightsCopilot'), (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(subject)), { isAboutSubject: true, alwaysKeepFilter: true, isNewThread: true });
    if (phrasesBySubjects)
        return handler(l('Summarize', 'insightsCopilot'), { isAboutSubject: true, alwaysKeepFilter: true, isNewThread: true });
    if (potentialCrisis)
        return handler(l('Are there any potential crises or topics that we should be aware of?', 'insightsCopilot'), { isAboutSubject: true, alwaysKeepFilter: true, isNewThread: true });
    return null;
};
var InsightsCopilot_InsightsCopilot = function (_a) {
    var _b, _c;
    var query = _a.query, filter = _a.filter, topicId = _a.topicId, latestQuestion = _a.latestQuestion, history = _a.history, requestedMentionIds = _a.requestedMentionIds, savedCopilotSettings = _a.savedCopilotSettings, copilotSettings = _a.copilotSettings, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendInsightsCopilotQuestion = _a.sendInsightsCopilotQuestion, clearInsightsCopilotQuestion = _a.clearInsightsCopilotQuestion, clearInsightsCopilotHistory = _a.clearInsightsCopilotHistory, fetchInsightsCopilotHistory = _a.fetchInsightsCopilotHistory, requestInsightsCopilotHistory = _a.requestInsightsCopilotHistory, fetchInsightsCopilotUsage = _a.fetchInsightsCopilotUsage, updateInsightsCopilotSettings = _a.updateInsightsCopilotSettings, cancelInsightsCopilotQuestion = _a.cancelInsightsCopilotQuestion, hideInsightsCopilotAnswer = _a.hideInsightsCopilotAnswer, hideInsightsCopilotThread = _a.hideInsightsCopilotThread, sendFeedback = _a.sendFeedback, updateLocation = _a.updateLocation, updateSearch = _a.updateSearch, updateFilterQuery = _a.updateFilterQuery, updatePeriod = _a.updatePeriod, savePointData = _a.savePointData;
    var _d = InsightsCopilot_read((0,react.useState)(false), 2), isPageScrolledDown = _d[0], setIsPageScrolledDown = _d[1];
    var _e = InsightsCopilot_read((0,react.useState)(false), 2), isExpanded = _e[0], setIsExpanded = _e[1];
    var _f = InsightsCopilot_read((0,react.useState)(false), 2), isSettingsOpen = _f[0], setIsSettingsOpen = _f[1];
    var _g = InsightsCopilot_read((0,react.useState)(null), 2), examplesFilter = _g[0], setExamplesFilter = _g[1];
    var _h = InsightsCopilot_read((0,react.useState)(requestedMentionIds), 2), localRequestedMentionIds = _h[0], setLocalRequestedMentionIds = _h[1];
    var _j = InsightsCopilot_read((0,react.useState)(''), 2), questionText = _j[0], setQuestionText = _j[1];
    var questionFieldRef = (0,react.useRef)(null);
    var copilotMetaData = query.copilotMetaData;
    var availableQuestionsCount = (0,react.useMemo)(function () { return copilotSettings.getAvailableQuestionsCount(); }, [copilotSettings]);
    var simplifiedView = (0,mobile/* isSimplifiedView */.O7)();
    (0,react.useEffect)(function () {
        if (query.copilotMetaData) {
            handleQuestionByMetaInfoType(InsightsCopilot_assign(InsightsCopilot_assign({}, copilotMetaData), { handler: handleSendQuestion }));
            updateLocation({ query: { copilotMetaData: null } });
        }
        (0,utils_intercom/* hideIntercom */.kk)();
        sendAnalyticalEvent({ eventType: 'Insights Copilot: opened' });
        if (!savedCopilotSettings)
            updateInsightsCopilotSettings(copilotSettings.toApi());
        if (simplifiedView)
            handleToggleExpanded(true);
        return function () {
            (0,utils_intercom/* showIntercom */.Lq)();
            clearInsightsCopilotHistory();
        };
    }, []);
    (0,react.useEffect)(function () {
        requestInsightsCopilotHistory({ topicId: topicId });
        fetchInsightsCopilotUsage();
    }, [topicId]);
    (0,react.useEffect)(function () {
        var timeout = setTimeout(function () { return fetchInsightsCopilotHistory({ topicId: topicId }); }, 5000);
        // hack to prevent intercom from showing up
        (0,utils_intercom/* hideIntercom */.kk)();
        if (query.threadId && !history.isEmpty && !history.has(query.threadId)) {
            handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DISABLED, threadId: null });
        }
        if (history.getPendingThreadId()) {
            if (!query.threadId && history.mode !== History/* HISTORY_MODE */.Z5.DISABLED)
                return;
            if (query.threadId === History/* DUMMY_THREAD_ID */.cN || !query.threadId) {
                handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DETAILED, threadId: history.getPendingThreadId() });
            }
        }
        return function () { return clearTimeout(timeout); };
    }, [history]);
    (0,react.useEffect)(function () {
        if (latestQuestion === null || latestQuestion === void 0 ? void 0 : latestQuestion.threadId) {
            handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DETAILED, threadId: latestQuestion.threadId });
            clearInsightsCopilotQuestion();
        }
    }, [latestQuestion]);
    (0,react.useEffect)(function () {
        setLocalRequestedMentionIds(requestedMentionIds);
    }, [requestedMentionIds]);
    useScrollPosition(function (_a) {
        var currPos = _a.currPos;
        if (currPos.y < -110) {
            setIsPageScrolledDown(true);
            return;
        }
        if (isPageScrolledDown)
            setIsPageScrolledDown(false);
    });
    var handleChangeHistoryParams = function (_a) {
        var _b = _a.mode, mode = _b === void 0 ? history.mode : _b, _c = _a.threadId, threadId = _c === void 0 ? history.currentThreadId : _c;
        updateLocation({
            query: { threadId: threadId, copilotHistoryMode: mode },
        });
        setIsSettingsOpen(false);
    };
    var handleCloseAssistant = function () {
        sendAnalyticalEvent({ eventType: 'Insights Copilot: closed' });
        updateLocation({ query: { isCopilotActive: false } });
    };
    var handleSendQuestion = function (question, params) {
        if (params === void 0) { params = {}; }
        if (history.isLoading || !question)
            return;
        var _a = params.isNewThread, isNewThread = _a === void 0 ? false : _a, _b = params.isUserSearchedQuestion, isUserSearchedQuestion = _b === void 0 ? false : _b, _c = params.isAboutTrend, isAboutTrend = _c === void 0 ? false : _c, _d = params.isAboutAspect, isAboutAspect = _d === void 0 ? false : _d, _e = params.isAboutSubject, isAboutSubject = _e === void 0 ? false : _e, _f = params.enhanceQuery, enhanceQuery = _f === void 0 ? false : _f, _g = params.predefinedQuestionId, predefinedQuestionId = _g === void 0 ? null : _g, _h = params.alwaysKeepFilter, alwaysKeepFilter = _h === void 0 ? false : _h;
        var threadId = history.currentThreadId;
        handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DETAILED, threadId: isNewThread ? History/* DUMMY_THREAD_ID */.cN : threadId || History/* DUMMY_THREAD_ID */.cN });
        var shouldEnhanceQuery = enhanceQuery && !alwaysKeepFilter;
        sendInsightsCopilotQuestion({
            request: question,
            threadId: isNewThread ? null : threadId,
            language: copilotSettings.language,
            topicId: topicId,
            filter: shouldEnhanceQuery ? null : filter,
            enhanceQuery: shouldEnhanceQuery,
            isAboutTrend: isAboutTrend,
            isAboutAspect: isAboutAspect,
            isAboutSubject: isAboutSubject,
            predefinedQuestionId: predefinedQuestionId,
        });
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: question asked',
            properties: { question: question, isUserSearchedQuestion: isUserSearchedQuestion, enhanceQuery: enhanceQuery, isAboutTrend: isAboutTrend, isAboutAspect: isAboutAspect, isAboutSubject: isAboutSubject },
        });
    };
    var handleCancel = function (questionId) {
        cancelInsightsCopilotQuestion({ topicId: topicId, questionId: questionId });
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: question request cancelled',
        });
        handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DISABLED, threadId: null });
    };
    var handleHideAnswer = function (questionId) {
        var displayedThread = history.getDisplayedThread();
        var isOneQuestion = displayedThread.questions.length === 1;
        hideInsightsCopilotAnswer({ topicId: topicId, questionId: questionId });
        if (isOneQuestion) {
            handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DISABLED, threadId: null });
        }
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: answer hidden',
            properties: { answerId: questionId },
        });
    };
    var handleHideThread = function (threadId) {
        hideInsightsCopilotThread({ topicId: topicId, threadId: threadId });
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: thread hidden',
            properties: { threadId: threadId },
        });
    };
    var handleStartNewThread = function () {
        handleChangeHistoryParams({ mode: History/* HISTORY_MODE */.Z5.DISABLED, threadId: null });
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: new thread button clicked',
        });
    };
    var handlePresetClick = function (presetItem) {
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: case clicked',
            properties: { caseName: presetItem.id },
        });
        if (presetItem.filter)
            updateSearch({ search: createQueryStringForCase(presetItem, filter) });
        handleSendQuestion(presetItem.question, {
            predefinedQuestionId: presetItem.id,
            enhanceQuery: getIsInsightsCopilotSearchEnhanced(),
            alwaysKeepFilter: !!presetItem.filter,
        });
    };
    var handleFilterApply = function (f) {
        updateFilterQuery({ filter: f });
        updatePeriod({ from: f.from, to: f.to });
        sendAnalyticalEvent({ eventType: 'Insights Copilot: filter applied' });
        handleToggleExpanded(false);
    };
    var handleExampleClick = function (_a) {
        var questionId = _a.questionId, f = _a.filter, mentionIds = _a.mentionIds, pointText = _a.pointText;
        if ((0,lodash.isEqual)(localRequestedMentionIds, mentionIds)) {
            setLocalRequestedMentionIds([]);
            setExamplesFilter(null);
            updateLocation({ query: { requestedMentionIds: null } });
            return;
        }
        sendAnalyticalEvent({ eventType: 'Insights Copilot: example clicked' });
        savePointData({ text: pointText, questionId: questionId });
        setLocalRequestedMentionIds(mentionIds);
        setExamplesFilter(f);
        handleToggleExpanded(true);
    };
    var openMentionStreamWithExamples = function () {
        handleFilterApply(examplesFilter);
        updateLocation({ query: { questionId: null, requestedMentionIds: localRequestedMentionIds } });
        sendAnalyticalEvent({ eventType: 'Insights Copilot: mention stream with examples opened' });
        handleToggleExpanded(false);
    };
    var handleSendFeedback = function (_a) {
        var id = _a.id, type = _a.type;
        sendFeedback({ id: id, type: type, topicId: topicId });
    };
    var handleCopy = function (question) {
        sendAnalyticalEvent({
            eventType: 'Insights Copilot: response copied',
            properties: { question: question },
        });
    };
    var handleToggleExpanded = function (value) {
        if ((0,lodash.isBoolean)(value)) {
            if (!value) {
                if (simplifiedView) {
                    setIsExpanded(value);
                    handleCloseAssistant();
                    return;
                }
                if ((localRequestedMentionIds === null || localRequestedMentionIds === void 0 ? void 0 : localRequestedMentionIds.length) && !(requestedMentionIds === null || requestedMentionIds === void 0 ? void 0 : requestedMentionIds.length)) {
                    setLocalRequestedMentionIds([]);
                }
            }
            setIsExpanded(value);
            return;
        }
        setIsExpanded(!isExpanded);
    };
    var renderContent = function () {
        if (isSettingsOpen)
            return ((0,jsx_runtime.jsx)(components_Settings_Settings, { data: copilotSettings, onChange: updateInsightsCopilotSettings }));
        if (history.isOpen)
            return ((0,jsx_runtime.jsx)(components_History_History, { selectedExampleIds: localRequestedMentionIds, data: history, onCopyAnswer: handleCopy, onFilterClick: handleFilterApply, onExampleClick: handleExampleClick, onChange: handleChangeHistoryParams, onSendFeedback: handleSendFeedback, onHideAnswer: handleHideAnswer, onHideThread: handleHideThread, onCancel: handleCancel }));
        return ((0,jsx_runtime.jsx)(Presets_Home, { questionFieldRef: questionFieldRef, availableQuestionsCount: availableQuestionsCount, isLoading: history.isLoading, onPresetClick: handlePresetClick }));
    };
    var renderBody = function () {
        var _a, _b;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_Header_Header, { isLoading: history.isLoading, historyMode: history.mode, currentThreadId: history.currentThreadId, latestThreadId: history.getLatestThreadId(), onClose: handleCloseAssistant, onExpand: handleToggleExpanded, onChangeHistoryParams: function (mode, threadId) { return handleChangeHistoryParams({
                        mode: mode,
                        threadId: threadId,
                    }); }, onToggleSettings: function () { return setIsSettingsOpen(!isSettingsOpen); } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", InsightsCopilot_assign({ className: classnames_default()(InsightsCopilot.content, (_a = {}, _a[InsightsCopilot.history] = history.isOpen, _a)) }, { children: renderContent() })), history.mode === History/* HISTORY_MODE */.Z5.GENERAL ? null : ((0,jsx_runtime.jsxs)("div", InsightsCopilot_assign({ className: InsightsCopilot.bottomPanel }, { children: [copilotSettings.questionsLimit && availableQuestionsCount <= 10 ? ((0,jsx_runtime.jsxs)("div", InsightsCopilot_assign({ className: classnames_default()(InsightsCopilot.quotaMessage, (_b = {}, _b[InsightsCopilot.limitReached] = availableQuestionsCount <= 0, _b)) }, { children: [(0,jsx_runtime.jsx)("span", { children: sprintf(l('You have %d requests left in your monthly quota.', 'insightsCopilot'), availableQuestionsCount) }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsxs)("span", { children: [l('To get unlimited access reach out to us via ', 'insightsCopilot'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", InsightsCopilot_assign({ href: "mailto:support@youscan.io" }, { children: l('email', 'insightsCopilot') }))] }), (0,jsx_runtime.jsx)("br", {})] }))) : null, (0,jsx_runtime.jsx)(components_QuestionField_QuestionField, { isThread: !!history.currentThreadId, textFieldRef: questionFieldRef, disabled: availableQuestionsCount <= 0, isLoading: history.isLoading, question: questionText, onChangeQuestion: setQuestionText, onSendQuestion: handleSendQuestion, onStartNewThread: handleStartNewThread })] })))] }));
    };
    return ((0,jsx_runtime.jsxs)("div", InsightsCopilot_assign({ className: classnames_default()(InsightsCopilot.base, (_b = {}, _b[InsightsCopilot.enlarged] = isPageScrolledDown, _b)) }, { children: [(0,jsx_runtime.jsx)(Card/* default */.A, InsightsCopilot_assign({ className: InsightsCopilot.container, noPadding: true }, { children: isExpanded ? null : renderBody() })), (0,jsx_runtime.jsx)(Modal/* default */.A, InsightsCopilot_assign({ isOpen: isExpanded, className: classnames_default()(InsightsCopilot.modal, (_c = {}, _c[InsightsCopilot.enlargedModal] = localRequestedMentionIds === null || localRequestedMentionIds === void 0 ? void 0 : localRequestedMentionIds.length, _c)), onRequestClose: function () { return handleToggleExpanded(false); } }, { children: (0,jsx_runtime.jsxs)("div", InsightsCopilot_assign({ className: InsightsCopilot.modalContainer }, { children: [(0,jsx_runtime.jsx)("div", InsightsCopilot_assign({ className: InsightsCopilot.modalContent }, { children: renderBody() })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (localRequestedMentionIds === null || localRequestedMentionIds === void 0 ? void 0 : localRequestedMentionIds.length)
                            ? ((0,jsx_runtime.jsx)("div", InsightsCopilot_assign({ className: InsightsCopilot.modalMentionStream }, { children: (0,jsx_runtime.jsx)(mentions_CompactMentionList_CompactMentionList, { withOwnFilterOnly: true, toolbar: (0,jsx_runtime.jsx)(Toolbar/* Toolbar */.M7, InsightsCopilot_assign({ align: true, fullWidth: true, className: InsightsCopilot.modelToolbar }, { children: (0,jsx_runtime.jsx)(Toolbar/* ToolbarGroup */.$Q, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { tooltip: l('Show example mentions in mention stream', 'insightsCopilot'), iconType: "open", onClick: openMentionStreamWithExamples }) }) })), requestedMentionIds: localRequestedMentionIds }) })))
                            : null] })) }))] })));
};
/* harmony default export */ const insightsCopilot_InsightsCopilot = ((0,redux/* compose */.Zz)(react.memo, (0,react_redux/* connect */.Ng)(function (state) { return ({
    savedCopilotSettings: (0,insightsCopilot_selectors/* getSavedInsightsCopilotSettings */.e6)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state),
    requestedMentionIds: (0,mentionStream_selectors/* getRequestedMentionIds */.ts)(state),
    latestQuestion: (0,insightsCopilot_selectors/* getInsightsCopilotQuestion */.o8)(state),
    history: (0,insightsCopilot_selectors/* getUsedInsightsCopilotHistory */.t9)(state),
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
}); }, {
    updateSearch: routing_actions/* updateSearch */.YX,
    updateLocation: routing_actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendInsightsCopilotQuestion: insightsCopilot_model/* insightsCopilotStateModel */.e.action.sendInsightsCopilotQuestion,
    requestInsightsCopilotHistory: insightsCopilot_model/* insightsCopilotStateModel */.e.action.requestInsightsCopilotHistory,
    fetchInsightsCopilotHistory: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotHistory,
    clearInsightsCopilotHistory: insightsCopilot_model/* insightsCopilotStateModel */.e.action.clearInsightsCopilotHistory,
    clearInsightsCopilotQuestion: insightsCopilot_model/* insightsCopilotStateModel */.e.action.clearInsightsCopilotQuestion,
    fetchInsightsCopilotUsage: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage,
    updateInsightsCopilotSettings: insightsCopilot_model/* insightsCopilotStateModel */.e.action.updateInsightsCopilotSettings,
    cancelInsightsCopilotQuestion: insightsCopilot_model/* insightsCopilotStateModel */.e.action.cancelInsightsCopilotQuestion,
    hideInsightsCopilotAnswer: insightsCopilot_model/* insightsCopilotStateModel */.e.action.hideInsightsCopilotAnswer,
    hideInsightsCopilotThread: insightsCopilot_model/* insightsCopilotStateModel */.e.action.hideInsightsCopilotThread,
    sendFeedback: insightsCopilot_model/* insightsCopilotStateModel */.e.action.sendFeedback,
    savePointData: insightsCopilot_model/* insightsCopilotStateModel */.e.action.savePointData,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    updatePeriod: filter_model/* filterModel */.W.action.updatePeriod,
}))(InsightsCopilot_InsightsCopilot));

;// CONCATENATED MODULE: ./src/containers/insightsCopilot/index.ts


;// CONCATENATED MODULE: ./src/containers/filters/SavedFilters/SavedFilters.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SavedFilters = ({"content":"dDAEEONRDgsWHNxc19cn","buttonBar":"hctARlJfGbBa7gsPScdY","title":"jhub5i9lJ8m23PHv5XtQ","list":"JmJTmW8S5qaLZHPyz8YX","item":"MPDl_SyOvWNJT0Qgx5L_","selected":"BGGA8rxtjCY_9YpbSMK3","name":"HrFWzNS7bHs_9pfc7h2T","removeButton":"pta3IlzTO67YDbgoUrFZ","button":"Cwud4IPJz63hECEfam3G","openButton":"K8h07exSq2tRi5M0NKpG","divider":"QhIqcqiA_Vq2I5gs4huv","createTitle":"utTN8bou8S1rzKkRlfpH","additionalText":"vT8hECOeq7O3ViTyKfmg"});
;// CONCATENATED MODULE: ./src/containers/filters/SavedFilters/SavedFilters.tsx
var SavedFilters_assign = (undefined && undefined.__assign) || function () {
    SavedFilters_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SavedFilters_assign.apply(this, arguments);
};
var SavedFilters_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





















var SavedFilters_SavedFilters = function (_a) {
    var list = _a.list, filter = _a.filter, loaded = _a.loaded, topicId = _a.topicId, selectedFilterId = _a.selectedFilterId, fetchSavedFilters = _a.fetchSavedFilters, saveFilter = _a.saveFilter, canEdit = _a.canEdit, removeSavedFilter = _a.removeSavedFilter, editSavedFilter = _a.editSavedFilter, applySavedFilter = _a.applySavedFilter, clearSelectedSavedFilter = _a.clearSelectedSavedFilter;
    var _b = SavedFilters_read((0,react.useState)(false), 2), showNameModal = _b[0], setShowNameModal = _b[1];
    var _c = SavedFilters_read((0,react.useState)(''), 2), newFilterName = _c[0], setNewFilterName = _c[1];
    var _d = SavedFilters_read((0,react.useState)(undefined), 2), isForceHide = _d[0], setIsForceHide = _d[1];
    (0,react.useEffect)(function () {
        fetchSavedFilters();
        clearSelectedSavedFilter();
    }, [topicId]);
    var selectedFilter = (0,react.useMemo)(function () { var _a; return Filter/* Filter */.dJ.fromNewApi((_a = list === null || list === void 0 ? void 0 : list.find(function (l) { return l.id === selectedFilterId; })) === null || _a === void 0 ? void 0 : _a.filter); }, [filter]);
    var isFilterChanged = (0,react.useMemo)(function () { return !filter.equals(selectedFilter, true); }, [selectedFilter, selectedFilterId]);
    var handleSaveFilter = function (name) {
        saveFilter(name);
        setShowNameModal(false);
        setNewFilterName('');
    };
    var handleApplyFilter = function (savedFilter) { return function () {
        applySavedFilter(savedFilter);
        setIsForceHide(true);
    }; };
    var handleEditFilter = function (name) {
        editSavedFilter(selectedFilterId, name);
    };
    var handleRemoveFilter = function (id) { return function () {
        setIsForceHide(true);
        (0,utils_confirm/* default */.A)({
            title: l('Are you sure you want to delete this saved filter?'),
            actionLabel: l('Delete saved filter'),
        }).then(function () { return removeSavedFilter(id); });
    }; };
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Popover/* default */.A, SavedFilters_assign({ forceHide: isForceHide, hideOnScroll: false, content: renderContent(), onForceHidden: function () { return setIsForceHide(undefined); }, position: "bottom right" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, className: SavedFilters.openButton, label: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "bookmark" }), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-down" })] }) }) })), renderNameModal()] }));
    function renderContent() {
        return ((0,jsx_runtime.jsx)(Loader/* default */.A, SavedFilters_assign({ loaded: loaded }, { children: (0,jsx_runtime.jsxs)("div", SavedFilters_assign({ className: SavedFilters.content }, { children: [(0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, SavedFilters_assign({ className: SavedFilters.buttonBar }, { children: selectedFilter && isFilterChanged ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { className: SavedFilters.button, disabled: filter.isEmpty(), label: l('Save filter as new'), onClick: function () { return setShowNameModal(true); } }), (0,jsx_runtime.jsx)(Button/* default */.A, { className: SavedFilters.button, disabled: filter.isEmpty(), label: l('Update filter'), onClick: function () { return handleEditFilter(); } })] })) : ((0,jsx_runtime.jsx)(Button/* default */.A, { className: SavedFilters.button, disabled: filter.isEmpty() || !isFilterChanged || !canEdit, label: l('Save filter'), onClick: function () {
                                setIsForceHide(true);
                                setShowNameModal(true);
                            } })) })), (0,jsx_runtime.jsx)(Divider/* default */.A, { className: SavedFilters.divider }), !(list === null || list === void 0 ? void 0 : list.length) && ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/empty_magnifierAndBookmark.svg", title: l('Create your first saved filter'), message: (0,jsx_runtime.jsx)("span", { children: l('This feature gives you access to your most frequently used filters in an instant.') }) })), (0,jsx_runtime.jsx)("div", SavedFilters_assign({ className: SavedFilters.list }, { children: list === null || list === void 0 ? void 0 : list.map(function (f) { return ((0,jsx_runtime.jsxs)("div", SavedFilters_assign({ className: SavedFilters.item }, { children: [(0,jsx_runtime.jsxs)("div", SavedFilters_assign({ className: SavedFilters.name, onClick: handleApplyFilter(f) }, { children: [f.name, selectedFilterId === f.id && (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check", color: "primary" })] })), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: SavedFilters.removeButton, type: "trash", color: "gray", onClick: handleRemoveFilter(f.id) })] }), f.id)); }) }))] })) })));
    }
    function renderNameModal() {
        return ((0,jsx_runtime.jsxs)(Modal/* default */.A, SavedFilters_assign({ isOpen: showNameModal, shouldCloseOnEsc: true, shouldCloseOnOverlayClick: true, withCloseIcon: true, onRequestClose: function () {
                setShowNameModal(false);
            } }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, SavedFilters_assign({ className: SavedFilters.createTitle }, { children: l('New saved filter') })), (0,jsx_runtime.jsxs)("div", SavedFilters_assign({ className: SavedFilters.additionalText }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info-outline", size: 14 }), l('The saved filter will be available only in the topic')] })), (0,jsx_runtime.jsx)(TextField/* default */.A, { required: true, autoFocus: true, fullWidth: true, value: newFilterName, label: l('Name'), onChange: setNewFilterName }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: !newFilterName, label: l('Create filter'), onClick: function () { return handleSaveFilter(newFilterName); } }) })] })));
    }
};
/* harmony default export */ const filters_SavedFilters_SavedFilters = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        list: (0,filter_selectors/* savedFilters */.bI)(state),
        loaded: (0,filter_selectors/* loadedSavedFilters */.iv)(state),
        selectedFilterId: (0,filter_selectors/* selectedSavedFilterId */.a_)(state),
        filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
        topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
        canEdit: (0,themes_selectors/* canEditSavedFilter */.Mq)(state),
    });
}, {
    fetchSavedFilters: filter_model/* filterModel */.W.action.fetchSavedFilters,
    saveFilter: filter_model/* filterModel */.W.action.saveFilter,
    editSavedFilter: filter_model/* filterModel */.W.action.editSavedFilter,
    removeSavedFilter: filter_model/* filterModel */.W.action.removeSavedFilter,
    applySavedFilter: filter_model/* filterModel */.W.action.applySavedFilter,
    clearSelectedSavedFilter: filter_model/* filterModel */.W.action.clearSelectedSavedFilter,
}))(SavedFilters_SavedFilters));

// EXTERNAL MODULE: ./src/containers/filters/ThemeFilters/components/TopicFilters.less
var TopicFilters = __webpack_require__("5Jgf");
;// CONCATENATED MODULE: ./src/containers/filters/ThemeFilters/components/TopicFilters.tsx
var TopicFilters_assign = (undefined && undefined.__assign) || function () {
    TopicFilters_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicFilters_assign.apply(this, arguments);
};











var TopicFilters_TopicFilters = function (_a) {
    var className = _a.className, hasClearableFilters = _a.hasClearableFilters, filterTabPermissions = _a.filterTabPermissions, filterPermissions = _a.filterPermissions, showSaveFilter = _a.showSaveFilter, onClearAppliedFilters = _a.onClearAppliedFilters, onApply = _a.onApply, filter = _a.filter, onUpdate = _a.onUpdate, topicId = _a.topicId;
    function renderFilterButton(label) {
        return (0,jsx_runtime.jsx)(Filters/* default */.A, { tabPermissions: filterTabPermissions, filterTypePermissions: filterPermissions, onApply: onApply, initialFilter: filter, triggerButtonLabel: l(label), topicId: topicId }, filter.key());
    }
    function renderSelectedFiltersToolbar() {
        return ((0,jsx_runtime.jsxs)(Toolbar/* Toolbar */.M7, TopicFilters_assign({ className: classnames_default()(TopicFilters/* default */.A.previewFiltersToolbar) }, { children: [(0,jsx_runtime.jsx)(Toolbar/* ToolbarGroup */.$Q, { children: (0,jsx_runtime.jsx)(FilterChipPanel/* default */.A, { filter: filter, onUpdate: onUpdate, topicId: topicId }) }), (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, TopicFilters_assign({ className: classnames_default()(TopicFilters/* default */.A.buttons) }, { children: [!!hasClearableFilters
                            && ((0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, label: l('Clear'), onClick: onClearAppliedFilters })), showSaveFilter
                            ? ((0,jsx_runtime.jsxs)("div", TopicFilters_assign({ className: TopicFilters/* default */.A.joinTogether }, { children: [renderFilterButton('Filters'), (0,jsx_runtime.jsx)(filters_SavedFilters_SavedFilters, {})] })))
                            : renderFilterButton('Choose')] }))] })));
    }
    return ((0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, { children: (0,jsx_runtime.jsx)(Card/* default */.A, TopicFilters_assign({ noPadding: true, className: classnames_default()(className, TopicFilters/* default */.A.base) }, { children: renderSelectedFiltersToolbar() })) }));
};
/* harmony default export */ const components_TopicFilters = ((0,react.memo)(TopicFilters_TopicFilters));

;// CONCATENATED MODULE: ./src/containers/filters/ThemeFilters/TopicFilters.tsx
var TopicFilters_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();










var TopicFiltersContainer = /** @class */ (function (_super) {
    TopicFilters_extends(TopicFiltersContainer, _super);
    function TopicFiltersContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleApplyPreview = function (previewFilter) {
            _this.props.updateFilterQuery({ filter: previewFilter });
        };
        _this.handleUpdateAppliedFilter = function () {
            _this.props.updateFilterQuery({ filter: _this.getAppliedFilter() });
        };
        _this.handleClearAppliedFilters = function () {
            _this.getAppliedFilter().clear();
            // TODO: NewFilters: check
            _this.props.updateFilterQuery({ filter: _this.getAppliedFilter() });
            _this.props.clearSelectedSavedFilter();
        };
        return _this;
    }
    TopicFiltersContainer.prototype.getAppliedFilter = function () {
        return this.props.appliedFilter;
    };
    TopicFiltersContainer.prototype.render = function () {
        var _a;
        var _b = this.props, showCategory = _b.showCategory, trendsAvailable = _b.trendsAvailable, showLabs = _b.showLabs, showVisualInsights = _b.showVisualInsights, showSubjectsFilter = _b.showSubjectsFilter, showAspects = _b.showAspects, showLogoFilter = _b.showLogoFilter, showAudienceInsights = _b.showAudienceInsights, showAudioMonitoring = _b.showAudioMonitoring, showSaveFilter = _b.showSaveFilter, appliedFilter = _b.appliedFilter;
        return ((0,jsx_runtime.jsx)(components_TopicFilters, { showSaveFilter: showSaveFilter, hasClearableFilters: !!((_a = appliedFilter === null || appliedFilter === void 0 ? void 0 : appliedFilter.filterGroups) === null || _a === void 0 ? void 0 : _a.length), filterTabPermissions: {
                systemTags: showCategory,
                subjects: showSubjectsFilter,
                aspects: showAspects,
                trends: trendsAvailable,
                images: showVisualInsights,
                labs: showLabs,
            }, filterPermissions: {
                imageBrand: showLogoFilter,
                authorInterests: showAudienceInsights,
                authorInterestCategories: showAudienceInsights,
                authorJobs: showAudienceInsights,
                audioMonitoring: showAudioMonitoring,
            }, filter: appliedFilter, onUpdate: this.handleUpdateAppliedFilter, onApply: this.handleApplyPreview, onClearAppliedFilters: this.handleClearAppliedFilters, topicId: +this.props.themeId }));
    };
    return TopicFiltersContainer;
}(react.Component));
/* harmony default export */ const ThemeFilters_TopicFilters = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    // @ts-ignore
    showCategory: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'smartTags'),
    trendsAvailable: (0,themes_selectors/* canAccessTrends */.lf)(state),
    appliedFilter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    showLabs: (0,themes_selectors/* canUseExperimentalFilters */.h)(state),
    showVisualInsights: (0,themes_selectors/* canUseImageRecognitionFeatures */.ZL)(state),
    showAudioMonitoring: (0,account_selectors/* isAudioMonitoringEnabled */.Qf)(state),
    showSubjectsFilter: (0,themes_selectors/* canShowSubjects */.n7)(state),
    showAspects: (0,themes_selectors/* canShowAspects */.d2)(state),
    showLogoFilter: (0,themes_selectors/* canShowLogoFilter */.N)(state),
    showAudienceInsights: (0,account_selectors/* canShowAudienceInsights */.Po)(state),
    showSaveFilter: (0,themes_selectors/* canSaveFilter */.SR)(state),
}); }, {
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    clearSelectedSavedFilter: filter_model/* filterModel */.W.action.clearSelectedSavedFilter,
}))(TopicFiltersContainer));

;// CONCATENATED MODULE: ./src/utils/scrollToElement.js
/* harmony default export */ const scrollToElement = (function (id) {
  var targetElement = document.getElementById(id);
  if (!targetElement) {
    console.error("Element \"".concat(id, "\" not found."));
    return;
  }
  var elementHeight = targetElement.offsetHeight;
  var elementTop = targetElement.offsetTop;
  window.scrollTo({
    top: elementTop - window.innerHeight + elementHeight + 200,
    behavior: 'smooth'
  });
});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionList/MentionList.js






function MentionList_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionList_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionList_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionList_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }















var MentionListContainer = /*#__PURE__*/function (_Component) {
  function MentionListContainer(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionListContainer);
    _this = MentionList_callSuper(this, MentionListContainer, [props]);
    (0,defineProperty/* default */.A)(_this, "state", {
      focusedMentionId: null
    });
    (0,defineProperty/* default */.A)(_this, "handleMentionManualFocus", function (focusedMentionId) {
      _this.setState({
        focusedMentionId: focusedMentionId
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleHelpModalOpen", function () {
      _this.props.showModal('help', {
        contentType: 'mentionStream'
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleFocusNextMention", function () {
      var mentions = _this.props.mentions;
      var focusedMentionId = _this.state.focusedMentionId;
      var currFocusedMentionIndex = mentions.findIndex(function (mention) {
        return mention.id === focusedMentionId;
      });
      var nextMention = mentions[currFocusedMentionIndex + 1];
      if (nextMention) {
        var newFocusedMentionId = nextMention.id;
        _this.setState({
          focusedMentionId: newFocusedMentionId
        }, function () {
          setTimeout(function () {
            scrollToElement(newFocusedMentionId);
          }, 0);
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleFocusPrevMention", function () {
      var mentions = _this.props.mentions;
      var focusedMentionId = _this.state.focusedMentionId;
      var currFocusedMentionIndex = mentions.findIndex(function (mention) {
        return mention.id === focusedMentionId;
      });
      if (currFocusedMentionIndex > 0) {
        var newFocusedMentionId = mentions[currFocusedMentionIndex - 1].id;
        _this.setState({
          focusedMentionId: newFocusedMentionId
        }, function () {
          setTimeout(function () {
            scrollToElement(newFocusedMentionId);
          }, 0);
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleResetFocusedMention", function () {
      _this.setState({
        focusedMentionId: null
      });
    });
    _this.hotkeyHandlers = [{
      hotkey: 'up',
      handler: _this.handleFocusPrevMention
    }, {
      hotkey: 'down',
      handler: _this.handleFocusNextMention
    }, {
      hotkey: 'esc',
      handler: _this.handleResetFocusedMention
    }, {
      hotkey: 'shift+/, shift+7',
      handler: (0,analytics/* addEvent */.W2)(props.sendAnalyticalEvent, {
        eventType: 'Hotkey: used',
        properties: {
          type: 'openHotkeysHelp'
        }
      })(_this.handleHelpModalOpen)
    }];
    return _this;
  }
  (0,inherits/* default */.A)(MentionListContainer, _Component);
  return (0,createClass/* default */.A)(MentionListContainer, [{
    key: "render",
    value: function render() {
      var _this2 = this;
      var _this$props = this.props,
        showExampleModeFeedbackLoop = _this$props.showExampleModeFeedbackLoop,
        mentions = _this$props.mentions,
        themeId = _this$props.themeId,
        dedup = _this$props.dedup,
        selectingMentions = _this$props.selectingMentions,
        canManageMentions = _this$props.canManageMentions,
        showSystemTags = _this$props.showSystemTags,
        shortcutsEnabled = _this$props.shortcutsEnabled,
        requestedMentionIds = _this$props.requestedMentionIds;
      var focusedMentionId = this.state.focusedMentionId;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Hotkeys/* default */.A, {
        focused: true,
        enabled: shortcutsEnabled,
        hotkeyHandlers: this.hotkeyHandlers,
        children: mentions.map(function (mention) {
          return /*#__PURE__*/(0,jsx_runtime.jsx)(mentions_MentionCard_MentionCard, {
            showExampleModeFeedbackLoop: showExampleModeFeedbackLoop,
            isRequested: requestedMentionIds.includes(String(mention.id)),
            mention: mention,
            themeId: themeId,
            dedup: dedup,
            showCheckbox: selectingMentions,
            focused: focusedMentionId === mention.id,
            canManage: canManageMentions,
            showSystemTags: showSystemTags,
            sourceFormat: mention.sourceFormat,
            onFocus: _this2.handleMentionManualFocus,
            onFocusNext: _this2.handleFocusNextMention
          }, mention.id);
        })
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const MentionList = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    requestedMentionIds: (0,mentionStream_selectors/* getRequestedMentionIds */.ts)(state),
    shortcutsEnabled: (0,currentUser_selectors/* isShortcutsEnabled */.Rm)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    mentions: (0,mentionStream_selectors/* getMentions */.OM)(state),
    selectingMentions: (0,selected_selectors/* isSelectingMentions */._I)(state),
    dedup: (0,filter_selectors/* isFilterDedup */.TF)(state),
    canManageMentions: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageMentions'),
    showSystemTags: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'smartTags'),
    showExampleModeFeedbackLoop: (0,currentUser_selectors/* isCurrentUserAdmin */.u4)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(MentionListContainer));
;// CONCATENATED MODULE: ./src/containers/MentionWallButton/MentionWallButton.js







var MentionWallButton = function MentionWallButton(_ref) {
  var themeId = _ref.themeId,
    query = _ref.query,
    isAllowed = _ref.isAllowed,
    router = _ref.router,
    showModal = _ref.showModal;
  var createPath = router.createPath;
  var link = createPath({
    query: query,
    pathname: "/themes/".concat(themeId, "/wall")
  });
  var handleClick = function handleClick() {
    return isAllowed ? window.open(link, '_blank') : showModal('unavailableFeature');
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
    iconType: "mention-wall",
    tooltip: l('Open mention wall'),
    "data-hook": "mention-wall",
    onClick: handleClick
  });
};
/* harmony default export */ const MentionWallButton_MentionWallButton = ((0,withRouter/* withRouter */.y)((0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
    isAllowed: (0,themes_selectors/* canViewMentionWall */.i9)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to
})(MentionWallButton)));
;// CONCATENATED MODULE: ./src/components/other/DigestButton/DigestButton.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const DigestButton = ({"digestButton":"VEOl0A1BjmkJZT_Uiw1Y"});
;// CONCATENATED MODULE: ./src/components/other/DigestButton/DigestButton.tsx
var DigestButton_assign = (undefined && undefined.__assign) || function () {
    DigestButton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DigestButton_assign.apply(this, arguments);
};






var DigestButton_DigestButton = function (_a) {
    var themeId = _a.themeId, query = _a.query, trackingLinkType = _a.trackingLinkType;
    return ((0,jsx_runtime.jsx)(dist/* Link */.N_, DigestButton_assign({ to: {
            pathname: "/themes/".concat(themeId, "/digest"),
            search: (0,utils_routing/* queryToSearch */.w)(DigestButton_assign(DigestButton_assign({}, query), { trackingLinkType: trackingLinkType })),
        }, target: "_blank", "data-hook": "digest" }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { tooltip: l('Create a digest'), iconType: "pdf", className: classnames_default()(DigestButton.digestButton) }) })));
};
/* harmony default export */ const other_DigestButton_DigestButton = (DigestButton_DigestButton);

;// CONCATENATED MODULE: ./src/components/other/DigestButton/index.ts


// EXTERNAL MODULE: ./src/state/reports/selectors.ts
var reports_selectors = __webpack_require__("m2yq");
;// CONCATENATED MODULE: ./src/utils/queries.js

function queries_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function queries_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? queries_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : queries_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/* eslint import/prefer-default-export: 0 */

var QUERY_PARAMS_TO_REMOVE = ['starred', 'deleted', 'assigned', 'spam', 'processed'];
var getBaseQuery = function getBaseQuery(query) {
  return QUERY_PARAMS_TO_REMOVE.reduce(function (prev, key) {
    return queries_objectSpread(queries_objectSpread({}, prev), {}, (0,defineProperty/* default */.A)({}, key, undefined));
  }, query);
};
;// CONCATENATED MODULE: ./src/containers/ExportButton/components/ExportOptionLabel.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ExportOptionLabel = ({"base":"Qh_ZKsdxcSKYiy8jdmUW","limit":"tMG2mYD_C_LMiAB57Luc","limitless":"oIJuWILAUtlP4f8s9Xeg","text":"tSEMog2c5bWk_L3PReYe","badge":"SXodaP70OEar7gOlU8Lk"});
;// CONCATENATED MODULE: ./src/containers/ExportButton/components/ExportOptionLabel.js





var ExportOptionLabel = function ExportOptionLabel(_ref) {
  var type = _ref.type,
    format = _ref.format,
    text = _ref.text,
    limitless = _ref.limitless,
    limit = _ref.limit,
    badgeText = _ref.badgeText,
    onSelect = _ref.onSelect;
  var handleSelect = function handleSelect() {
    onSelect(type, format);
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_ExportOptionLabel.base),
    onClick: handleSelect,
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      className: classnames_default()(components_ExportOptionLabel.text),
      children: text
    }), limitless && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      className: classnames_default()(components_ExportOptionLabel.limitless),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        type: "infinite"
      })
    }), limit && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
      className: classnames_default()(components_ExportOptionLabel.limit),
      children: [num(limit), " ", l('max', 'reportGenerationLimit')]
    }), badgeText && /*#__PURE__*/(0,jsx_runtime.jsx)(Badge/* default */.A, {
      className: classnames_default()(components_ExportOptionLabel.badge),
      label: badgeText,
      color: "blue"
    })]
  });
};
/* harmony default export */ const ExportButton_components_ExportOptionLabel = (ExportOptionLabel);
;// CONCATENATED MODULE: ./src/containers/ExportButton/ExportButton.js






function ExportButton_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ExportButton_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ExportButton_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ExportButton_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }

















var ExportButton = /*#__PURE__*/function (_Component) {
  function ExportButton() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ExportButton);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ExportButton_callSuper(this, ExportButton, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      generationFailed: false,
      generationStarted: false
    });
    (0,defineProperty/* default */.A)(_this, "handleCreateReport", function (reportType, reportFormat) {
      _this.props.createReport({
        reportType: reportType,
        reportFormat: reportFormat
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleReset", function () {
      _this.setState({
        generationFailed: false,
        generationStarted: false
      });
      _this.props.clearCreateReportState();
    });
    (0,defineProperty/* default */.A)(_this, "renderHeader", function () {
      var _this$state = _this.state,
        generationStarted = _this$state.generationStarted,
        generationFailed = _this$state.generationFailed;
      if (generationStarted) {
        return l('Report is being generated');
      }
      if (generationFailed) {
        return l('Failed to schedule a report');
      }
      return null;
    });
    (0,defineProperty/* default */.A)(_this, "renderContent", function () {
      var _this$state2 = _this.state,
        generationStarted = _this$state2.generationStarted,
        generationFailed = _this$state2.generationFailed;
      var _this$props = _this.props,
        options = _this$props.options,
        themeId = _this$props.themeId,
        query = _this$props.query,
        showWordReport = _this$props.showWordReport;
      var createPath = _this.props.router.createPath;
      var baseQuery = getBaseQuery(query);
      if (generationStarted) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
            children: l('Open "Export" page to download it')
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
            to: createPath({
              pathname: "/themes/".concat(themeId, "/reports"),
              search: (0,utils_routing/* queryToSearch */.w)(baseQuery)
            }),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              size: "small",
              label: l('Go to export')
            })
          })]
        });
      }
      if (generationFailed) {
        return l("You've reached your limit of mentions to export. Try changing the filter or date range.");
      }
      var exportOptions = {
        mentions: /*#__PURE__*/(0,jsx_runtime.jsx)(ExportButton_components_ExportOptionLabel, {
          type: "mentions",
          format: "excel",
          limit: 1000000,
          text: "".concat(l('Mentions', 'reports'), " (Excel)"),
          onSelect: _this.handleCreateReport
        }, "mentions"),
        mentionsWithFullText: /*#__PURE__*/(0,jsx_runtime.jsx)(ExportButton_components_ExportOptionLabel, {
          type: "mentionsWithFullText",
          format: "excel",
          limit: 1000000,
          text: "".concat(l('Mentions with full text', 'reports'), " (Excel)"),
          onSelect: _this.handleCreateReport
        }, "mentionsWithFullText"),
        authors: /*#__PURE__*/(0,jsx_runtime.jsx)(ExportButton_components_ExportOptionLabel, {
          type: "authors",
          format: "excel",
          limit: 1000000,
          text: l('Authors', 'reports'),
          onSelect: _this.handleCreateReport
        }, "authors")
      };
      if (showWordReport) {
        exportOptions.mentionsWord = /*#__PURE__*/(0,jsx_runtime.jsx)(ExportButton_components_ExportOptionLabel, {
          type: "mentions",
          format: "word",
          limit: 10000,
          text: "".concat(l('Mentions', 'reports'), " (Word)"),
          onSelect: _this.handleCreateReport
        }, "mentionsWord");
        exportOptions.mentionsWithFullTextWord = /*#__PURE__*/(0,jsx_runtime.jsx)(ExportButton_components_ExportOptionLabel, {
          type: "mentionsWithFullText",
          format: "word",
          limit: 10000,
          text: "".concat(l('Mentions with full text', 'reports'), " (Word)"),
          onSelect: _this.handleCreateReport
        }, "mentionsWithFullTextWord");
      }
      return options.map(function (option) {
        return exportOptions[option];
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ExportButton, _Component);
  return (0,createClass/* default */.A)(ExportButton, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      if (!prevProps.reportSchedulingFailed && this.props.reportSchedulingFailed) {
        this.setState({
          generationFailed: true
        });
      }
      if (!prevProps.reportScheduled && this.props.reportScheduled) {
        this.setState({
          generationStarted: true
        });
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this.props.clearCreateReportState();
    }
  }, {
    key: "render",
    value: function render() {
      var _this$state3 = this.state,
        generationStarted = _this$state3.generationStarted,
        generationFailed = _this$state3.generationFailed;
      var options = this.props.options;
      if (!(options !== null && options !== void 0 && options.length)) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
        flowing: true,
        fitted: !generationFailed && !generationStarted,
        title: this.renderHeader(),
        position: "bottom right",
        content: this.renderContent(),
        onHide: this.handleReset,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          iconType: "reports",
          tooltip: l('Create report')
        })
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const ExportButton_ExportButton = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    reportSchedulingFailed: (0,reports_selectors/* isReportSchedulingFailed */.eS)(state),
    reportScheduled: (0,reports_selectors/* isReportScheduled */.C$)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
    showWordReport: (0,account_selectors/* isWordReportEnabled */._w)(state)
  };
}, {
  createReport: reports_model/* reportsModel */.P.action.createReport,
  clearCreateReportState: reports_model/* reportsModel */.P.action.clearCreateReportState
}))(ExportButton));
;// CONCATENATED MODULE: ./src/containers/ExportButton/index.js

;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/CreateAlertButton/CreateAlertButton.tsx







var CreateAlertButton = function (_a) {
    var initialAlertFilter = _a.initialAlertFilter, showModal = _a.showModal;
    var handleClick = function () {
        showModal(ALERT_MODAL, { initialAlertFilter: initialAlertFilter });
    };
    return ((0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "alerts-plus", tooltip: l('Create alert'), onClick: handleClick }));
};
/* harmony default export */ const CreateAlertButton_CreateAlertButton = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    initialAlertFilter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
}); }, {
    showModal: modals_actions/* showModal */.to,
}))(CreateAlertButton));

;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/CreateAlertButton/index.tsx


;// CONCATENATED MODULE: ./src/containers/mentions/MentionsPageTitle/MentionsPageTitle.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionsPageTitle_MentionsPageTitle = ({"title":"CYMAZYogzz5yOU1LDoSh"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionsPageTitle/MentionsPageTitle.js














var MentionsPageTitle = function MentionsPageTitle(_ref) {
  var filter = _ref.filter,
    showDigest = _ref.showDigest,
    params = _ref.params,
    location = _ref.location;
  var getTitle = function getTitle() {
    if (filter.starred) return l('Starred mentions');
    if (filter.processed) return l('Processed mentions');
    if (filter.processed === false) return l('Unprocessed mentions');
    if (filter.spam) return l('Spam mentions');
    if (filter.assigned) return l('Mentions for me');
    if (filter.deleted) return l('Mentions in bin');
    return l('Mentions');
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
    className: classnames_default()(MentionsPageTitle_MentionsPageTitle.title),
    children: [getTitle(), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {
      "double": true
    }), showDigest && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(other_DigestButton_DigestButton, {
        themeId: params.id,
        query: location.query,
        trackingLinkType: "mentions_page"
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {})]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(MentionWallButton_MentionWallButton, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ExportButton_ExportButton, {
      options: ['mentions', 'mentionsWithFullText', 'mentionsWord', 'mentionsWithFullTextWord']
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(CreateAlertButton_CreateAlertButton, {})]
  });
};
/* harmony default export */ const mentions_MentionsPageTitle_MentionsPageTitle = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    filter: (0,filter_selectors/* getHighLevelThemeFilter */.ke)(state),
    showDigest: (0,themes_selectors/* canGenerateDigest */.U8)(state)
  };
}))(MentionsPageTitle));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionsPageTitle/index.js

;// CONCATENATED MODULE: ./src/containers/mentions/MarkAllAsProcessed/MarkAllAsProcessed.js





/* harmony default export */ const MarkAllAsProcessed = ((0,react_redux/* connect */.Ng)(MarkAllAsProcessed_mapStateToProps, {
  markProcessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markProcessedMentions
}, mergeProps)(IconButton/* default */.A));
function MarkAllAsProcessed_mapStateToProps(state) {
  return {
    ids: (0,mentionStream_selectors/* getMentionIds */.p3)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state)
  };
}
function mergeProps(stateProps, dispatchProps) {
  return {
    tooltip: l('Mark all as processed'),
    iconType: 'check-all',
    onClick: function onClick() {
      return dispatchProps.markProcessedMentions({
        mentionIds: stateProps.ids,
        themeId: stateProps.themeId
      });
    }
  };
}
;// CONCATENATED MODULE: ./src/containers/mentions/MarkAllAsProcessed/index.js

;// CONCATENATED MODULE: ./src/state/mentionStream/trends/selectors.ts
var trends_selectors_assign = (undefined && undefined.__assign) || function () {
    trends_selectors_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return trends_selectors_assign.apply(this, arguments);
};
/* eslint import/prefer-default-export: 0 */


var getTopFrequentWords = function (state) { var _a; return (_a = state.mentionStreamTrends.data) === null || _a === void 0 ? void 0 : _a.words.values; };
var mergeTagEntities = function (stat, entities) {
    if (entities[stat.key]) {
        return trends_selectors_assign(trends_selectors_assign({}, entities[stat.key]), stat);
    }
    return stat;
};
var getTags = (0,reselect_es/* createSelector */.Mz)(function (state) { var _a; return (_a = state.mentionStreamTrends.data) === null || _a === void 0 ? void 0 : _a.tags.values; }, entities_new_selectors/* getTagEntities */.ul, function (stats, entities) {
    if (!stats)
        return null;
    return stats.map(function (stat) { return mergeTagEntities(stat, entities); }).filter(Boolean);
});

;// CONCATENATED MODULE: ./src/containers/mentions/DedupSwitcher/DedupSwitcher.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DedupSwitcher = ({"tooltip":"c4Z9CubZl8kXeGm2OBmo"});
;// CONCATENATED MODULE: ./src/containers/mentions/DedupSwitcher/DedupSwitcher.tsx
var DedupSwitcher_assign = (undefined && undefined.__assign) || function () {
    DedupSwitcher_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DedupSwitcher_assign.apply(this, arguments);
};










var DedupSwitcher_DedupSwitcher = function (_a) {
    var dedup = _a.dedup, updateFilterHighLevelFilter = _a.updateFilterHighLevelFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var handleChange = function (checked) {
        sendAnalyticalEvent({ eventType: "Merge duplicates: ".concat(checked ? 'enabled' : 'disabled') });
        updateFilterHighLevelFilter({
            name: 'dedup',
            value: checked,
        });
    };
    return ((0,jsx_runtime.jsx)(Switch/* default */.A, { verticallyAligned: true, label: (0,jsx_runtime.jsxs)("span", { children: [l('Merge duplicates'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Tooltip/* default */.A, DedupSwitcher_assign({ basic: true, on: "hover", position: "bottom right", className: DedupSwitcher.tooltip, text: (0,jsx_runtime.jsx)("span", DedupSwitcher_assign({ className: DedupSwitcher.tooltip }, { children: l('Duplicates are mentions with absolutely identical text (usually reposts).'
                            + ' You can group them to apply different changes to all of them in one click'
                            + ' (add tags, change sentiment, move to bin, etc).'
                            + ' Mentions are not grouped automatically when exporting to Excel') })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) }))] }), checked: dedup, onChange: handleChange }));
};
/* harmony default export */ const mentions_DedupSwitcher_DedupSwitcher = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    dedup: (0,filter_selectors/* isFilterDedup */.TF)(state),
}); }, {
    updateFilterHighLevelFilter: filter_model/* filterModel */.W.action.updateHighLevelFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(DedupSwitcher_DedupSwitcher));

;// CONCATENATED MODULE: ./src/containers/mentions/DedupSwitcher/index.ts


// EXTERNAL MODULE: ./src/components/other/NoResultsText/index.js + 2 modules
var NoResultsText = __webpack_require__("jMZ8");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/components/TagFilter.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagFilter = ({"overlayedBlock":"ON0X6futKUgNTKCFhnjZ","flexCenter":"WPem3tpbB32w63Vs9hgF","smartFeature":"vnXq2C06Qq445pdOt3fr","tag":"O5o4WXh2YxPXK4OIDGyz","visibleScrollBar":"AA7llR6dIT2vXLcnmDpq","hiddenScrollBar":"anZ3w05hQtdZgGpStayO","word":"lZGBfWszVx7t2vudYZUK","label":"PzAvDJ8iiDen99GyHDwJ","selected":"xa_ousm3tyVTLUknaxbS","base":"iNc6OsM2zVzG4_AWiI3M"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/components/TagFilter.tsx
var TagFilter_assign = (undefined && undefined.__assign) || function () {
    TagFilter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagFilter_assign.apply(this, arguments);
};
var TagFilter_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var TagFilter_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};








var getMaxCount = function (tags) { return tags.reduce(function (max, tag) { return Math.max(max, tag.count); }, 0); };
var TagFilter_TagFilter = function (_a) {
    var tags = _a.tags, selected = _a.selected, onFilter = _a.onFilter;
    var handleChange = function (id) { return function () {
        if (selected.indexOf(String(id)) === -1)
            onFilter('tag', TagFilter_spreadArray(TagFilter_spreadArray([], TagFilter_read(selected), false), [id], false));
        else
            onFilter('tag', selected.filter(function (item) { return item !== String(id); }));
    }; };
    var maxCount = getMaxCount(tags);
    return ((0,jsx_runtime.jsx)(react_flip_move_es/* default */.A, TagFilter_assign({ duration: 300, easing: "ease-in" }, { children: tags.map(function (item) {
            var _a;
            return (0,jsx_runtime.jsxs)("div", TagFilter_assign({ className: classnames_default()(TagFilter.base), onClick: handleChange(item.id) }, { children: [(0,jsx_runtime.jsxs)("div", TagFilter_assign({ className: classnames_default()(TagFilter.word, (_a = {}, _a[TagFilter.selected] = selected.includes(String(item.id)), _a)) }, { children: [(0,jsx_runtime.jsx)("span", TagFilter_assign({ className: classnames_default()(TagFilter.label) }, { children: item.name })), (0,jsx_runtime.jsx)(CountLabel/* default */.A, { count: item.count })] })), (0,jsx_runtime.jsx)(Progressbar/* default */.A, { total: maxCount, selected: item.count, color: utils_colors/* tagColors */.Py[item.color] })] }), item.id);
        }) })));
};
/* harmony default export */ const components_TagFilter = ((0,react.memo)(TagFilter_TagFilter));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/components/WordFilter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordFilter = ({"word":"XNOSXO5xvsvHlco2qxww","selected":"OD6eQIqDIiDrrE2_gCyE","wordFilter":"Oi3VUlkk9at0vOQxobvq"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/components/WordFilter.tsx
var WordFilter_assign = (undefined && undefined.__assign) || function () {
    WordFilter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WordFilter_assign.apply(this, arguments);
};
var WordFilter_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var WordFilter_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};








var PROGRESSBAR_COLOR = '#7E99B0';
var MAX_WORD_LENGTH = 20;
var WordFilter_getMaxCount = function (words) {
    if (!words.length)
        return 0;
    return words.reduce(function (max, word) { return Math.max(max, word.count); }, 0);
};
var WordFilter_WordFilter = function (_a) {
    var selected = _a.selected, words = _a.words, onFilter = _a.onFilter;
    var handleChange = function (id) {
        if (selected.indexOf(id) === -1)
            onFilter('word', WordFilter_spreadArray(WordFilter_spreadArray([], WordFilter_read(selected), false), [id], false));
        else
            onFilter('word', selected.filter(function (item) { return item !== id; }));
    };
    var maxCount = WordFilter_getMaxCount(words);
    return ((0,jsx_runtime.jsx)(react_flip_move_es/* default */.A, WordFilter_assign({ duration: 300, easing: "ease-in" }, { children: words.map(function (item) {
            var _a;
            return (0,jsx_runtime.jsxs)("div", WordFilter_assign({ role: "presentation", className: classnames_default()(WordFilter.wordFilter), onClick: function () { return handleChange(item.key); } }, { children: [(0,jsx_runtime.jsxs)("div", WordFilter_assign({ className: classnames_default()(WordFilter.word, (_a = {}, _a[WordFilter.selected] = selected.includes(item.key), _a)) }, { children: [(0,jsx_runtime.jsx)("span", WordFilter_assign({ title: item.key }, { children: (0,truncate/* default */.A)(item.key, MAX_WORD_LENGTH) })), (0,jsx_runtime.jsx)(CountLabel/* default */.A, { count: item.count })] })), (0,jsx_runtime.jsx)(Progressbar/* default */.A, { total: maxCount, selected: item.count, color: PROGRESSBAR_COLOR })] }), item.key);
        }) })));
};
/* harmony default export */ const components_WordFilter = ((0,react.memo)(WordFilter_WordFilter));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/components/MentionStreamSidePanel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionStreamSidePanel = ({"base":"nibzJBsK8fsA7tNproVk","tabContent":"Q78tKgTUFAwJ3kUT6aqu","content":"IWJvWMnQBDwO8cZ_q_Gf"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/components/MentionStreamSidePanel.tsx
var MentionStreamSidePanel_assign = (undefined && undefined.__assign) || function () {
    MentionStreamSidePanel_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionStreamSidePanel_assign.apply(this, arguments);
};
var MentionStreamSidePanel_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











var MentionStreamSidePanel_MentionStreamSidePanel = function (_a) {
    var className = _a.className, sidePanelFilter = _a.sidePanelFilter, words = _a.words, tags = _a.tags, onFilter = _a.onFilter;
    var _b = MentionStreamSidePanel_read((0,react.useState)(0), 2), key = _b[0], handleChangeKey = _b[1];
    var tabsConfig = [
        {
            key: 'words',
            title: l('Words'),
            content: ((0,jsx_runtime.jsx)(Loader/* default */.A, MentionStreamSidePanel_assign({ loaded: words, className: MentionStreamSidePanel.tabContent }, { children: function () { return (words.length
                    ? ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(components_WordFilter, { words: words, selected: sidePanelFilter.word, onFilter: onFilter }) }))
                    : ((0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: l('Looks like no mentions match your filter') }))); } })))
        },
        {
            key: 'tags',
            title: l('Tags'),
            content: ((0,jsx_runtime.jsx)(Loader/* default */.A, MentionStreamSidePanel_assign({ loaded: tags, className: MentionStreamSidePanel.tabContent }, { children: function () { return (tags.length
                    ? ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(components_TagFilter, { tags: tags, selected: sidePanelFilter.tag, onFilter: onFilter }) }))
                    : ((0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: l('Looks like no tagged mentions match your query') }))); } })))
        }
    ];
    return ((0,jsx_runtime.jsx)("div", MentionStreamSidePanel_assign({ className: classnames_default()(className, MentionStreamSidePanel.base) }, { children: (0,jsx_runtime.jsxs)(Card/* default */.A, MentionStreamSidePanel_assign({ noPadding: true }, { children: [(0,jsx_runtime.jsx)("div", MentionStreamSidePanel_assign({ className: classnames_default()(MentionStreamSidePanel.content) }, { children: (0,jsx_runtime.jsx)(mentions_DedupSwitcher_DedupSwitcher, {}) })), (0,jsx_runtime.jsx)(ui_Tabs_Tabs, { fullWidth: true, tabsConfig: tabsConfig, selectedIndex: key, onSelect: handleChangeKey })] })) })));
};
/* harmony default export */ const components_MentionStreamSidePanel = ((0,react.memo)(MentionStreamSidePanel_MentionStreamSidePanel));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/MentionStreamSidePanel.tsx











var MentionStreamSidePanelContainer = function (_a) {
    var sidePanelFilter = _a.sidePanelFilter, words = _a.words, tags = _a.tags, updateFilter = _a.updateFilter, fetchMentionStreamTrends = _a.fetchMentionStreamTrends;
    (0,react.useEffect)(function () {
        fetchMentionStreamTrends();
    }, []);
    var handleFilter = function (name, value) {
        updateFilter({ name: name, value: value });
    };
    return ((0,jsx_runtime.jsx)(components_MentionStreamSidePanel, { words: words, tags: tags, sidePanelFilter: sidePanelFilter, onFilter: handleFilter }));
};
/* harmony default export */ const mentions_MentionStreamSidePanel_MentionStreamSidePanel = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    sidePanelFilter: (0,filter_selectors/* getSidePanelFilter */.I3)(state),
    words: getTopFrequentWords(state),
    tags: getTags(state),
}); }, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    fetchMentionStreamTrends: trends_model/* mentionStreamTrendsModel */.o.action.fetchMentionStremTrends,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchMentionStreamTrends();
}))(MentionStreamSidePanelContainer));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamSidePanel/index.ts


// EXTERNAL MODULE: ./src/state/tasks/selectors.ts + 1 modules
var tasks_selectors = __webpack_require__("ZV04");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamToolbar/components/TopicTaskProgress.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TopicTaskProgress = ({"base":"DAgwuNIL5pcNvVl1i9Zy","active":"b0mUB4Z_anr3F2nxsG7Q","topicProgressToolbar":"DW5qi9slZ2Jj_DvhSuVx","left":"dcYskHfPQ2ZKudMOtrWd","right":"mH5xKX7TLyEWb0Cpj77A","progressContainer":"XYvjBT6LFlXyHywc0XgI","bar":"Bd0RumYkVL_asf4LVbvd","progressInfoContainer":"YolouwAvcztC8632AkxG","progressInfoTitle":"fwfhXEv00V04JiCGOFc9","runningTaskTitle":"A3Y3JmPUojRZmkys3ioH","failedTaskTitle":"QXYC1nVazeydLfAWF6UN","btnBar":"SytXCVfG0N3EEdt9qCc7","btn":"imNjDJ73Tp1k8dpuQp1T","btnRetry":"pVxcZy81ouxJ37zQkGNA"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamToolbar/components/TopicTaskProgress.tsx
var TopicTaskProgress_assign = (undefined && undefined.__assign) || function () {
    TopicTaskProgress_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicTaskProgress_assign.apply(this, arguments);
};
var TopicTaskProgress_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

















var PERCENTAGE_THRESHOLD = 0.5;
var TopicTaskProgress_TopicTaskProgress = function (props) {
    var _a;
    var themeId = props.themeId, pendingLrt = props.pendingLrt, fetchMentions = props.fetchMentions, fetchTasks = props.fetchTasks;
    var _b = TopicTaskProgress_read((0,react.useState)(props.task), 2), task = _b[0], setTask = _b[1];
    var _c = TopicTaskProgress_read((0,react.useState)(false), 2), cancelRequested = _c[0], setCancelRequested = _c[1];
    var isActive = pendingLrt !== null || task;
    // a fallback to get tasks progress if SignalR connection is not established
    var tasksPoller = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        if (themeId)
            fetchTasks({ themeId: themeId });
    }, [themeId]);
    (0,react.useEffect)(function () {
        var timer = setTimeout(function () {
            // we have pendingLrt id but no task, most likely SignalR connection is not established
            if (pendingLrt && !task) {
                tasksPoller.current = setInterval(function () {
                    fetchTasks({ themeId: themeId });
                }, 2000);
                // @ts-ignore
                window.Sentry.captureException(new Error("TopicTask progress didn't arrive; TaskId: ".concat(pendingLrt)));
            }
        }, 2000);
        return function () { return clearTimeout(timer); };
    }, [pendingLrt]);
    (0,react.useEffect)(function () {
        return function () {
            clearTimeout(tasksPoller.current);
        };
    }, []);
    (0,react.useEffect)(function () {
        if (task && !props.task) {
            fetchMentions({ themeId: themeId, loader: false });
            setCancelRequested(false);
            clearTimeout(tasksPoller.current);
        }
        setTask(props.task);
    }, [themeId, props.task]);
    var handleCancel = function () {
        props.onCancel({ themeId: themeId, taskId: task.id });
        setCancelRequested(true);
    };
    var getTimeLeft = function () {
        var total = task.total;
        var processed = task.processed;
        var duration = task.duration;
        return ((total - processed) * duration) / processed;
    };
    var getTaskStatus = function () {
        if (!task)
            return l('Processing...');
        if (task.status === 'failed')
            return l('Task failed. You can retry it or cancel');
        if (cancelRequested)
            return "".concat(l('Stopping'), "...");
        return getRunningTaskName();
    };
    var getRunningTaskName = function () {
        var taskNames = {
            deleteMentions: l('Moving to bin'),
            restoreMentions: l('Restoring'),
            setSentiment: l('Changing sentiment in'),
            setTags: l('Changing tags in'),
            removeTag: l('Removing tag from'),
            assignMentions: l('Assigning'),
            unassignMentions: l('Assigning'),
            starMentions: l('Adding to favorites'),
            unstarMentions: l('Removing from favorites'),
            markProcessed: l('Marking as processed'),
            markUnprocessed: l('Marking as unprocessed'),
            markSpam: l('Marking as spam'),
            markHam: l('Removing from spam'),
            sendToIntegration: l('Sending to integration'),
            permanentlyDeleteMentions: l('Removing from bin'),
            removeAutoCategory: l('Removing auto-category from'),
            setCorrections: l('Processed'),
            applyRule: l('Applying rule to'),
        };
        var ending = sprintf(nl('%s mention', '%s mentions', task.total), numeral_default()(task.total).format('0,0'));
        return "".concat(taskNames[task.type], " ").concat(ending);
    };
    var remainingTime = function () {
        if ((task === null || task === void 0 ? void 0 : task.percentage) > PERCENTAGE_THRESHOLD) {
            return "".concat(l('Remaining'), ": ").concat(moment_default().duration(getTimeLeft(), 'seconds').humanize());
        }
        return l('Calculating time remaining...');
    };
    var isTitleVisible = function () {
        return window.innerWidth >= 1380; // on change, update css of runningTaskTitle class
    };
    var getProgressTooltip = function () {
        return isTitleVisible() ? remainingTime() : "".concat(getRunningTaskName(), "\n").concat(remainingTime());
    };
    var renderContent = function () {
        var _a;
        if (!pendingLrt && !task)
            return null;
        var isFailed = (task === null || task === void 0 ? void 0 : task.status) === 'failed';
        var isRunning = (task === null || task === void 0 ? void 0 : task.status) === 'running';
        var showRunningTaskTitle = isRunning && !cancelRequested;
        return ((0,jsx_runtime.jsxs)("div", TopicTaskProgress_assign({ className: TopicTaskProgress.progressContainer }, { children: [(0,jsx_runtime.jsxs)("div", TopicTaskProgress_assign({ className: TopicTaskProgress.progressInfoContainer }, { children: [showRunningTaskTitle ? ((0,jsx_runtime.jsx)("span", TopicTaskProgress_assign({ className: classnames_default()(TopicTaskProgress.progressInfoTitle, TopicTaskProgress.runningTaskTitle) }, { children: getRunningTaskName() }))) : ((0,jsx_runtime.jsx)("span", TopicTaskProgress_assign({ className: classnames_default()(TopicTaskProgress.progressInfoTitle, (_a = {}, _a[TopicTaskProgress.failedTaskTitle] = isFailed, _a)) }, { children: getTaskStatus() }))), (0,jsx_runtime.jsx)(Space/* default */.A, {}), isRunning ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, TopicTaskProgress_assign({ fullWidth: true, text: getProgressTooltip() }, { children: (0,jsx_runtime.jsx)("div", TopicTaskProgress_assign({ className: TopicTaskProgress.bar }, { children: (0,jsx_runtime.jsx)(Progressbar/* default */.A, { visibleProgress: true, selected: task.percentage, total: 100 }) })) }))) : null] })), task && ((0,jsx_runtime.jsxs)("div", TopicTaskProgress_assign({ className: classnames_default()(TopicTaskProgress.btnBar) }, { children: [isFailed ? ((0,jsx_runtime.jsx)(Button/* default */.A, { disabled: cancelRequested, size: "small", className: classnames_default()(TopicTaskProgress.btn, TopicTaskProgress.btnRetry), label: l('Retry'), onClick: function () { return props.onRetry({ themeId: themeId, taskId: props.task.id }); } })) : null, (0,jsx_runtime.jsx)(Button/* default */.A, { danger: true, ghost: true, disabled: cancelRequested, size: "small", className: classnames_default()(TopicTaskProgress.btn), label: l('Stop'), onClick: handleCancel })] })))] })));
    };
    return ((0,jsx_runtime.jsx)("div", TopicTaskProgress_assign({ className: classnames_default()(TopicTaskProgress.topicProgressToolbar, (_a = {}, _a[TopicTaskProgress.active] = isActive, _a)) }, { children: renderContent() })));
};
/* harmony default export */ const components_TopicTaskProgress = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(TopicTaskProgress_mapStateToProps, {
    fetchMentions: mentionStream_model/* mentionStreamModel */.K.action.fetchMentions,
    onCancel: tasks_model/* tasksModel */.o.action.cancelTask,
    onRetry: tasks_model/* tasksModel */.o.action.retryTask,
    fetchTasks: tasks_model/* tasksModel */.o.action.fetchTasks,
}))(TopicTaskProgress_TopicTaskProgress));
function TopicTaskProgress_mapStateToProps(state) {
    return {
        pendingLrt: (0,mentionStream_selectors/* getPendingLrtId */.Pf)(state),
        themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
        task: (0,tasks_selectors/* getCurrentTask */.$R)(state),
    };
}

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamAddRuleButton/MentionStreamAddRuleButton.js




var MentionStreamAddRuleButton = function MentionStreamAddRuleButton(_ref) {
  var showModal = _ref.showModal,
    displayText = _ref.displayText;
  var handleAddRule = function handleAddRule() {
    // TODO: NewFilters: remove _new
    showModal('createRule_new');
  };
  if (displayText) {
    return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      onClick: handleAddRule,
      children: l('Create rule')
    });
  }
  return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
    color: "amber",
    tooltip: l('Create rule with this filter'),
    iconType: "rules",
    onClick: handleAddRule
  });
};
/* harmony default export */ const MentionStreamAddRuleButton_MentionStreamAddRuleButton = ((0,react_redux/* connect */.Ng)(null, {
  showModal: modals_actions/* showModal */.to
})(MentionStreamAddRuleButton));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamAddRuleButton/index.js

// EXTERNAL MODULE: ./node_modules/react-headroom/dist/index.js
var react_headroom_dist = __webpack_require__("WCBP");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamRefreshIndicator/MentionStreamRefreshIndicator.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionStreamRefreshIndicator_MentionStreamRefreshIndicator = ({"base":"Jxziqy7By6sZsSrJrwPc","container":"zfabC3k0ZMVgLpRJyn5W","disabled":"R99k_W3xRvgjmair2hs9","refresh":"mxOZIYSH9Ijmpc1JvTlz"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamRefreshIndicator/MentionStreamRefreshIndicator.tsx
var MentionStreamRefreshIndicator_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var MentionStreamRefreshIndicator_assign = (undefined && undefined.__assign) || function () {
    MentionStreamRefreshIndicator_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionStreamRefreshIndicator_assign.apply(this, arguments);
};










var MentionStreamRefreshIndicator = /** @class */ (function (_super) {
    MentionStreamRefreshIndicator_extends(MentionStreamRefreshIndicator, _super);
    function MentionStreamRefreshIndicator() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            disabled: false,
        };
        _this.handleRefresh = function () {
            var onRefresh = _this.props.onRefresh;
            _this.setState({ disabled: true });
            onRefresh();
        };
        return _this;
    }
    MentionStreamRefreshIndicator.prototype.componentDidMount = function () {
        this.props.subscribeForUpdates();
    };
    MentionStreamRefreshIndicator.prototype.componentDidUpdate = function (prevProps) {
        if (prevProps.newCount !== this.props.newCount) {
            this.setState({ disabled: false });
        }
        if (prevProps.themeId !== this.props.themeId) {
            this.setState({ disabled: true });
        }
    };
    MentionStreamRefreshIndicator.prototype.componentWillUnmount = function () {
        this.props.unsubscribeFromUpdates();
    };
    MentionStreamRefreshIndicator.prototype.render = function () {
        var _a;
        var newCount = this.props.newCount;
        var disabled = this.state.disabled;
        if (!newCount) {
            return null;
        }
        return ((0,jsx_runtime.jsx)(react_headroom_dist/* default */.A, MentionStreamRefreshIndicator_assign({ disableInlineStyles: true, pinStart: 200, upTolerance: 50, disabled: disabled }, { children: (0,jsx_runtime.jsx)("div", MentionStreamRefreshIndicator_assign({ className: classnames_default()(MentionStreamRefreshIndicator_MentionStreamRefreshIndicator.container, (_a = {}, _a[MentionStreamRefreshIndicator_MentionStreamRefreshIndicator.disabled] = disabled, _a)) }, { children: (0,jsx_runtime.jsxs)("div", MentionStreamRefreshIndicator_assign({ role: "presentation", className: classnames_default()(MentionStreamRefreshIndicator_MentionStreamRefreshIndicator.base), onClick: this.handleRefresh }, { children: [sprintf(nl('There is %d new mention', 'There are %d new mentions', newCount), newCount), (0,jsx_runtime.jsx)("div", MentionStreamRefreshIndicator_assign({ className: classnames_default()(MentionStreamRefreshIndicator_MentionStreamRefreshIndicator.refresh) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "refresh" }) }))] })) })) })));
    };
    return MentionStreamRefreshIndicator;
}(react.Component));
/* harmony default export */ const mentions_MentionStreamRefreshIndicator_MentionStreamRefreshIndicator = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    newCount: getNewMentionsCount(state),
}); }, {
    subscribeForUpdates: hubEvents_model/* hubEventsModel */.m.action.subscribeForMentionsCountUpdate,
    unsubscribeFromUpdates: hubEvents_model/* hubEventsModel */.m.action.unsubscribeFromMentionsCountUpdate,
})(MentionStreamRefreshIndicator));

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamRefreshIndicator/index.js

;// CONCATENATED MODULE: ./src/containers/insightsCopilot/ActivationButton/ActivationButton.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ActivationButton = ({"base":"PXpi8aXMaOh9l7lUieFo","active":"viuV2E250Gg9nIuPGySj","copilotName":"lkjcLiP43_xRm7gtn9Xj"});
;// CONCATENATED MODULE: ./src/containers/insightsCopilot/ActivationButton/ActivationButton.tsx
var ActivationButton_assign = (undefined && undefined.__assign) || function () {
    ActivationButton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ActivationButton_assign.apply(this, arguments);
};




var ActivationButton_ActivationButton = function (_a) {
    var _b;
    var isActive = _a.isActive, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)("button", ActivationButton_assign({ type: "button", className: classnames_default()(ActivationButton.base, (_b = {}, _b[ActivationButton.active] = isActive, _b)), onClick: onClick }, { children: [(0,jsx_runtime.jsx)("div", ActivationButton_assign({ className: classnames_default()(ActivationButton.copilotName) }, { children: l('Insights Copilot', 'insightsCopilot') })), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "ai", color: "purple" })] })));
};
/* harmony default export */ const insightsCopilot_ActivationButton_ActivationButton = (ActivationButton_ActivationButton);

;// CONCATENATED MODULE: ./src/containers/insightsCopilot/ActivationButton/index.ts


;// CONCATENATED MODULE: ./src/utils/mentionStreamToolbar.ts
var getPerPageOptions = function () { return ([
    { value: 10, label: sprintf(l('%d per page'), 10) },
    { value: 25, label: sprintf(l('%d per page'), 25) },
    { value: 50, label: sprintf(l('%d per page'), 50) },
    { value: 100, label: sprintf(l('%d per page'), 100) },
    { value: 200, label: sprintf(l('%d per page'), 200) }
]); };
var getOrderByOptions = function () { return ([
    { value: 'published', label: l('by publication date (new first)') },
    { value: 'publishedAsc', label: l('by publication date (old first)') },
    { value: 'id', label: l('by indexing date') },
    { value: null, label: null, settings: { isDivider: true } },
    { value: 'engagement', label: l('by engagement') },
    { value: 'comments', label: l('by comments') },
    { value: 'views', label: l('by views') },
    { value: 'potentialReach', label: l('by potential reach') },
    { value: 'authorSubscribers', label: l('by author subscribers') },
    { value: 'channelSubscribers', label: l('by channel subscribers') },
    { value: null, label: null, settings: { isDivider: true } },
    { value: 'duplicates', label: l('by number of duplicates') }
]); };

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamToolbar/components/MentionStreamToolbar.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_MentionStreamToolbar = ({"base":"QyBnGbThLoKoN_NPrBBf","container":"v4tQwvOVzcCdT45V3ZfY","left":"EO0shnhReWlMoKcuK_5K","right":"SelvTvpOrdJmhBN6gb2v","stickToTop":"KTdezfw0bCKjCEKB3Dwb","stickyContainer":"wP7RzHX5JRZ6X0NsQtCs","label":"ROuqwFSnQJq7eq2vmFG_","counter":"IokXFa7YxjQQbNmsZL5k","counterLabel":"CjV9XlhCIFURnvtNx3xO","realSelectedCount":"jD8rnGKvmJ1SW3mLBFwG","selectAll":"TFiB4SAOrJ4eQEiM4_3J","warningBox":"Bs63XM8kUFqGuu9pd24I","groupActions":"PM7fy_6QF8EQts9yNYrS"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamToolbar/components/MentionStreamToolbar.js






function MentionStreamToolbar_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function MentionStreamToolbar_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? MentionStreamToolbar_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : MentionStreamToolbar_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function MentionStreamToolbar_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionStreamToolbar_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionStreamToolbar_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionStreamToolbar_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }


























var MentionStreamToolbar = /*#__PURE__*/function (_PureComponent) {
  function MentionStreamToolbar() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionStreamToolbar);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = MentionStreamToolbar_callSuper(this, MentionStreamToolbar, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleSetTags", function (tags) {
      var onSetTags = _this.props.onSetTags;
      var keys = Object.keys(tags);
      var changedTags = keys.reduce(function (acc, x) {
        return MentionStreamToolbar_objectSpread(MentionStreamToolbar_objectSpread({}, acc), {}, (0,defineProperty/* default */.A)({}, x, tags[x]));
      }, {});
      onSetTags(changedTags);
    });
    return _this;
  }
  (0,inherits/* default */.A)(MentionStreamToolbar, _PureComponent);
  return (0,createClass/* default */.A)(MentionStreamToolbar, [{
    key: "renderGroupActions",
    value: function renderGroupActions() {
      var _this$props = this.props,
        themeId = _this$props.themeId,
        starred = _this$props.starred,
        deleted = _this$props.deleted,
        processed = _this$props.processed,
        spam = _this$props.spam,
        assigneeId = _this$props.assigneeId,
        tags = _this$props.tags,
        feedbackLoopSmartFeatures = _this$props.feedbackLoopSmartFeatures,
        sentiment = _this$props.sentiment,
        showFeedbackLoop = _this$props.showFeedbackLoop,
        allSelected = _this$props.allSelected,
        pageSelected = _this$props.pageSelected,
        onMarkAsSpam = _this$props.onMarkAsSpam,
        onMarkAsHam = _this$props.onMarkAsHam,
        onStar = _this$props.onStar,
        onUnstar = _this$props.onUnstar,
        onDelete = _this$props.onDelete,
        onRestore = _this$props.onRestore,
        onSetSentiment = _this$props.onSetSentiment,
        onAssign = _this$props.onAssign,
        onMarkProcessed = _this$props.onMarkProcessed,
        onMarkUnprocessed = _this$props.onMarkUnprocessed,
        onChangeSmartFeature = _this$props.onChangeSmartFeature;
      var showRuleButton = allSelected || pageSelected;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        className: classnames_default()(components_MentionStreamToolbar.groupActions),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(containers_TagsEditor_TagsEditor, {
          position: "bottom center",
          trigger: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            tooltip: l('Tags'),
            iconType: "tags"
          }),
          selected: tags.selected,
          indeterminate: tags.indeterminate,
          themeId: themeId,
          onChange: this.handleSetTags
        }), processed ? /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          iconType: "check",
          tooltip: l('Mark as unprocessed'),
          color: "green",
          onClick: onMarkUnprocessed
        }) : /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          iconType: "check",
          tooltip: l('Mark as processed'),
          onClick: onMarkProcessed
        }), deleted ? /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          tooltip: l('Restore'),
          iconType: "restore",
          onClick: onRestore
        }) : /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          tooltip: l('Move to bin'),
          iconType: "trash",
          onClick: onDelete
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          fitted: true,
          position: "bottom center",
          content: /*#__PURE__*/(0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, {
            selected: sentiment,
            onChange: onSetSentiment
          }),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            tooltip: l('Sentiment'),
            iconType: "positive"
          })
        }), !(0,mobile/* isSimplifiedView */.O7)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
          children: [!allSelected ? /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
            position: "bottom center",
            content: /*#__PURE__*/(0,jsx_runtime.jsx)(containers_AssignUserEditor_AssignUserEditor, {
              themeId: themeId,
              selected: assigneeId,
              onChange: onAssign
            }),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
              tooltip: l('Assign'),
              iconType: "assign"
            })
          }) : /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            iconType: "assign"
          }), showRuleButton && /*#__PURE__*/(0,jsx_runtime.jsx)(MentionStreamAddRuleButton_MentionStreamAddRuleButton, {}), showFeedbackLoop && /*#__PURE__*/(0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, {
            position: "bottom left",
            activeFeatureName: "systemTags",
            selected: feedbackLoopSmartFeatures.selected,
            indeterminate: feedbackLoopSmartFeatures.indeterminate,
            trigger: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
              iconType: "circle-edit-outline",
              tooltip: l('Edit labels')
            }),
            onChange: onChangeSmartFeature
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(DropDownMenu/* default */.A, {
          component: /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            iconType: "dots"
          }),
          preventHideOnClick: (0,mobile/* isSimplifiedView */.O7)(),
          placement: "bottomRight",
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
            children: [(0,mobile/* isSimplifiedView */.O7)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
              children: [showRuleButton && /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
                label: /*#__PURE__*/(0,jsx_runtime.jsx)(MentionStreamAddRuleButton_MentionStreamAddRuleButton, {
                  displayText: true
                })
              }), showFeedbackLoop && /*#__PURE__*/(0,jsx_runtime.jsx)(SmartFeaturesFeedbackLoop/* default */.A, {
                position: "bottom left",
                activeFeatureName: "systemTags",
                selected: feedbackLoopSmartFeatures.selected,
                indeterminate: feedbackLoopSmartFeatures.indeterminate,
                trigger: /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
                  label: l('Edit labels')
                }),
                onChange: onChangeSmartFeature
              }), !allSelected ? /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
                position: "bottom center",
                content: /*#__PURE__*/(0,jsx_runtime.jsx)(containers_AssignUserEditor_AssignUserEditor, {
                  themeId: themeId,
                  selected: assigneeId,
                  onChange: onAssign
                }),
                children: /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
                  label: l('Assign')
                })
              }) : /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
                iconType: "assign"
              })]
            }), spam ? /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              label: l('Remove from spam'),
              onSelect: onMarkAsHam
            }) : /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              label: l('Mark as spam'),
              onSelect: onMarkAsSpam
            }), starred ? /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              label: l('Remove from favorites'),
              onSelect: onUnstar
            }) : /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              label: l('Add to favorites'),
              onSelect: onStar
            })]
          })
        })]
      });
    }
  }, {
    key: "renderPaging",
    value: function renderPaging() {
      var _this$props2 = this.props,
        mentionFrom = _this$props2.mentionFrom,
        mentionTo = _this$props2.mentionTo,
        total = _this$props2.total,
        orderBy = _this$props2.orderBy,
        perPage = _this$props2.perPage,
        onPrevPage = _this$props2.onPrevPage,
        onNextPage = _this$props2.onNextPage,
        onPerPageChange = _this$props2.onPerPageChange,
        onOrderByChange = _this$props2.onOrderByChange,
        topicTaskStarted = _this$props2.topicTaskStarted;
      var perPageOptions = getPerPageOptions();
      var orderByOptions = getOrderByOptions();
      var simplified = (0,mobile/* isSimplifiedView */.O7)() || topicTaskStarted;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(InlineSelect/* default */.A, {
          options: orderByOptions,
          value: orderBy,
          onChange: onOrderByChange,
          children: [simplified ? null : /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: orderByOptions.find(function (o) {
              return o.value === orderBy;
            }).label
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            iconType: "sort"
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(InlineSelect/* default */.A, {
          options: perPageOptions,
          value: perPage,
          onChange: onPerPageChange,
          children: [mentionFrom, "-", mentionTo]
        }), l(' of ', 'mentionsPaging'), numeral_default()(total).format(simplified ? '0a' : null), /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          iconType: "chevron-left",
          disabled: mentionFrom === 1,
          onClick: onPrevPage
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          iconType: "chevron-right",
          disabled: mentionTo >= total,
          onClick: onNextPage
        })]
      });
    }
  }, {
    key: "renderMessage",
    value: function renderMessage() {
      var _this$props3 = this.props,
        total = _this$props3.total,
        perPage = _this$props3.perPage,
        selectedCount = _this$props3.selectedCount,
        pageSelected = _this$props3.pageSelected,
        allSelected = _this$props3.allSelected,
        onSelectAll = _this$props3.onSelectAll,
        topicTaskStarted = _this$props3.topicTaskStarted;
      if (pageSelected && !allSelected && total > perPage && !topicTaskStarted) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
          warning: true,
          displayed: true,
          fullWidth: true,
          className: classnames_default()(components_MentionStreamToolbar.warningBox),
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
              className: classnames_default()(components_MentionStreamToolbar.selectAllInfo),
              children: sprintf(l('You selected all (%d) mentions on current page.'), selectedCount)
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              role: "presentation",
              className: classnames_default()(components_MentionStreamToolbar.selectAll),
              onClick: onSelectAll,
              children: [l('Select all ', 'selectAllLink'), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
                children: num(total)
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('mentions available in this stream.', 'selectAllLink')]
            })]
          })
        });
      }
      return null;
    }
  }, {
    key: "renderCheckbox",
    value: function renderCheckbox() {
      var _this$props4 = this.props,
        allSelected = _this$props4.allSelected,
        pageSelected = _this$props4.pageSelected,
        selecting = _this$props4.selecting,
        canManageMentions = _this$props4.canManageMentions,
        onSelectPage = _this$props4.onSelectPage,
        onDeselectAll = _this$props4.onDeselectAll,
        topicTaskStarted = _this$props4.topicTaskStarted;
      if (!canManageMentions) {
        return null;
      }
      if (topicTaskStarted) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          disabled: true,
          onClick: onSelectPage,
          tooltip: l('Group actions are disabled while topic task is running'),
          tooltipPosition: (0,mobile/* isSimplifiedView */.O7)() ? 'top right' : 'top center',
          iconType: "checkbox-empty"
        });
      }
      if (allSelected) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          onClick: onDeselectAll,
          tooltip: l('Cancel'),
          color: "primary",
          iconType: "checkbox-checked"
        });
      }
      if (pageSelected) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          onClick: onDeselectAll,
          tooltip: l('Cancel'),
          color: "primary",
          iconType: "checkbox-checked"
        });
      }
      if (selecting) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
          onClick: onSelectPage,
          tooltip: l('Select all'),
          color: "primary",
          iconType: "checkbox-indeterminate"
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
        onClick: onSelectPage,
        tooltip: l('Select all'),
        iconType: "checkbox-empty"
      });
    }
  }, {
    key: "renderRealSelectedCountLabel",
    value: function renderRealSelectedCountLabel() {
      var _this$props5 = this.props,
        realCount = _this$props5.realCount,
        calculatingRealCount = _this$props5.calculatingRealCount,
        dedup = _this$props5.dedup;
      if (!dedup) {
        return null;
      }
      if (calculatingRealCount) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        className: classnames_default()(components_MentionStreamToolbar.realSelectedCount),
        children: sprintf(l('(%d with duplicates)'), realCount)
      });
    }
  }, {
    key: "renderRefreshButton",
    value: function renderRefreshButton() {
      var _this$props6 = this.props,
        isRequestedMentionMode = _this$props6.isRequestedMentionMode,
        onQuitRequestedMentionsMode = _this$props6.onQuitRequestedMentionsMode,
        onRefresh = _this$props6.onRefresh,
        topicTaskStarted = _this$props6.topicTaskStarted;
      if (topicTaskStarted) return null;
      if (isRequestedMentionMode) return /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        ai: true,
        link: true,
        label: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            color: "purple",
            type: "back"
          }), l('Show all mentions')]
        }),
        onClick: onQuitRequestedMentionsMode
      });
      return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
        tooltip: l('Refresh'),
        iconType: "refresh",
        onClick: onRefresh
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props7 = this.props,
        showCopilot = _this$props7.showCopilot,
        isCopilotActive = _this$props7.isCopilotActive,
        total = _this$props7.total,
        selecting = _this$props7.selecting,
        allSelected = _this$props7.allSelected,
        selectedCount = _this$props7.selectedCount,
        onRefresh = _this$props7.onRefresh,
        onToggleCopilot = _this$props7.onToggleCopilot,
        topicTaskStarted = _this$props7.topicTaskStarted;
      var activeSelecting = selecting && !topicTaskStarted;
      var displayNumberOfMentions = allSelected ? total : selectedCount;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_MentionStreamToolbar.container),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Sticky/* default */.A, {
          enabled: activeSelecting,
          activeClass: classnames_default()(components_MentionStreamToolbar.stickToTop),
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_MentionStreamToolbar.stickyContainer),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
              className: classnames_default()(components_MentionStreamToolbar.base),
              children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                className: classnames_default()(components_MentionStreamToolbar.left),
                children: [this.renderCheckbox(), activeSelecting ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
                  children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
                    className: classnames_default()(components_MentionStreamToolbar.counter),
                    children: [num(displayNumberOfMentions), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                      className: classnames_default()(components_MentionStreamToolbar.counterLabel),
                      children: l(' selected', 'selectedCounter')
                    }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), this.renderRealSelectedCountLabel()]
                  }), this.renderGroupActions()]
                }) : this.renderRefreshButton(), /*#__PURE__*/(0,jsx_runtime.jsx)(components_TopicTaskProgress, {})]
              }), activeSelecting ? null : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                className: classnames_default()(components_MentionStreamToolbar.right),
                children: this.renderPaging()
              })]
            }), showCopilot ? /*#__PURE__*/(0,jsx_runtime.jsx)(insightsCopilot_ActivationButton_ActivationButton, {
              isActive: isCopilotActive,
              onClick: onToggleCopilot
            }) : null]
          })
        }), this.renderMessage(), /*#__PURE__*/(0,jsx_runtime.jsx)(mentions_MentionStreamRefreshIndicator_MentionStreamRefreshIndicator, {
          onRefresh: onRefresh
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamToolbar/MentionStreamToolbar.js






function MentionStreamToolbar_MentionStreamToolbar_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionStreamToolbar_MentionStreamToolbar_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionStreamToolbar_MentionStreamToolbar_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionStreamToolbar_MentionStreamToolbar_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }




















var MentionStreamToolbarContainer = /*#__PURE__*/function (_Component) {
  function MentionStreamToolbarContainer(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionStreamToolbarContainer);
    _this = MentionStreamToolbar_MentionStreamToolbar_callSuper(this, MentionStreamToolbarContainer, [props]);
    (0,defineProperty/* default */.A)(_this, "handleStar", function () {
      var _this$props = _this.props,
        allSelected = _this$props.allSelected,
        selectedIds = _this$props.selectedIds,
        themeId = _this$props.themeId;
      _this.props.starMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleMarkAsSpam", function () {
      var _this$props2 = _this.props,
        allSelected = _this$props2.allSelected,
        selectedIds = _this$props2.selectedIds,
        themeId = _this$props2.themeId;
      _this.props.markAsSpamMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleMarkProcessed", function () {
      var _this$props3 = _this.props,
        allSelected = _this$props3.allSelected,
        selectedIds = _this$props3.selectedIds,
        themeId = _this$props3.themeId;
      _this.props.markProcessedMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleMarkUnprocessed", function () {
      var _this$props4 = _this.props,
        allSelected = _this$props4.allSelected,
        selectedIds = _this$props4.selectedIds,
        themeId = _this$props4.themeId;
      _this.props.markUnprocessedMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleMarkAsHam", function () {
      var _this$props5 = _this.props,
        allSelected = _this$props5.allSelected,
        selectedIds = _this$props5.selectedIds,
        themeId = _this$props5.themeId;
      _this.props.markAsHamMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleUnstar", function () {
      var _this$props6 = _this.props,
        allSelected = _this$props6.allSelected,
        selectedIds = _this$props6.selectedIds,
        themeId = _this$props6.themeId;
      _this.props.unstarMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSetTags", function (tags) {
      var _this$props7 = _this.props,
        allSelected = _this$props7.allSelected,
        selectedIds = _this$props7.selectedIds,
        themeId = _this$props7.themeId;
      _this.props.setTagsMentions({
        tags: tags,
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeSmartFeature", function (smartFeatures) {
      var _this$props8 = _this.props,
        allSelected = _this$props8.allSelected,
        selectedIds = _this$props8.selectedIds,
        themeId = _this$props8.themeId;
      _this.props.setFeedbackLoopMentions({
        themeId: themeId,
        smartFeatures: smartFeatures,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDelete", function () {
      var _this$props9 = _this.props,
        allSelected = _this$props9.allSelected,
        selectedIds = _this$props9.selectedIds,
        themeId = _this$props9.themeId;
      _this.props.deleteMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleRestore", function () {
      var _this$props10 = _this.props,
        allSelected = _this$props10.allSelected,
        selectedIds = _this$props10.selectedIds,
        themeId = _this$props10.themeId;
      _this.props.restoreMentions({
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSetSentiment", function (sentiment) {
      var _this$props11 = _this.props,
        allSelected = _this$props11.allSelected,
        selectedIds = _this$props11.selectedIds,
        themeId = _this$props11.themeId;
      _this.props.setSentimentMentions({
        sentiment: sentiment,
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleAssign", function (_ref) {
      var assigneeId = _ref.assigneeId,
        message = _ref.message;
      var _this$props12 = _this.props,
        allSelected = _this$props12.allSelected,
        selectedIds = _this$props12.selectedIds,
        themeId = _this$props12.themeId;
      _this.props.assignMentions({
        assigneeId: assigneeId,
        message: message,
        themeId: themeId,
        mentionIds: selectedIds,
        all: allSelected
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDeselectAll", function () {
      _this.props.deselectAllMentions();
    });
    (0,defineProperty/* default */.A)(_this, "handleSelectMentionsOnPage", function () {
      _this.props.selectMentionsOnPage();
    });
    (0,defineProperty/* default */.A)(_this, "handleSelectAllMentions", function () {
      _this.props.selectAllMentions();
    });
    (0,defineProperty/* default */.A)(_this, "handleToggleCopilot", function () {
      _this.props.sendAnalyticalEvent({
        eventType: 'Insights Copilot: open/close button clicked'
      });
      _this.props.updateLocation({
        query: {
          isCopilotActive: !_this.props.copilotActive
        }
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleQuitRequestedMentionsMode", function () {
      _this.props.updateLocation({
        query: {
          requestedMentionIds: null
        }
      });
    });
    _this.props.fetchFeedbackLoopFeatures();
    _this.hotkeyHandlers = [{
      hotkey: 'shift+x',
      handler: (0,analytics/* addEvent */.W2)(props.sendAnalyticalEvent, {
        eventType: 'Hotkey: used',
        properties: {
          type: 'selectMentionsOnPage'
        }
      })(_this.handleSelectMentionsOnPage)
    }, {
      hotkey: 'alt+shift+x',
      handler: (0,analytics/* addEvent */.W2)(props.sendAnalyticalEvent, {
        eventType: 'Hotkey: used',
        properties: {
          type: 'selectAllMentions'
        }
      })(function () {
        _this.handleSelectMentionsOnPage();
        _this.handleSelectAllMentions();
      })
    }];
    return _this;
  }
  (0,inherits/* default */.A)(MentionStreamToolbarContainer, _Component);
  return (0,createClass/* default */.A)(MentionStreamToolbarContainer, [{
    key: "render",
    value: function render() {
      var _this$props13 = this.props,
        showCopilot = _this$props13.showCopilot,
        copilotActive = _this$props13.copilotActive,
        allSelected = _this$props13.allSelected,
        assigneeId = _this$props13.assigneeId,
        calculatingRealCount = _this$props13.calculatingRealCount,
        canManageMentions = _this$props13.canManageMentions,
        requestedMentionIds = _this$props13.requestedMentionIds,
        dedup = _this$props13.dedup,
        deleted = _this$props13.deleted,
        mentionFrom = _this$props13.mentionFrom,
        mentionTo = _this$props13.mentionTo,
        orderBy = _this$props13.orderBy,
        pageSelected = _this$props13.pageSelected,
        perPage = _this$props13.perPage,
        processed = _this$props13.processed,
        realCount = _this$props13.realCount,
        selectedCount = _this$props13.selectedCount,
        selecting = _this$props13.selecting,
        sentiment = _this$props13.sentiment,
        shortcutsEnabled = _this$props13.shortcutsEnabled,
        spam = _this$props13.spam,
        starred = _this$props13.starred,
        tags = _this$props13.tags,
        feedbackLoopSmartFeatures = _this$props13.feedbackLoopSmartFeatures,
        themeId = _this$props13.themeId,
        total = _this$props13.total,
        showFeedbackLoop = _this$props13.showFeedbackLoop,
        topicTaskStarted = _this$props13.topicTaskStarted,
        onNextPage = _this$props13.onNextPage,
        onOrderByChange = _this$props13.onOrderByChange,
        onPerPageChange = _this$props13.onPerPageChange,
        onPrevPage = _this$props13.onPrevPage,
        onRefresh = _this$props13.onRefresh;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Hotkeys/* default */.A, {
        enabled: shortcutsEnabled,
        hotkeyHandlers: this.hotkeyHandlers,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(MentionStreamToolbar, {
          isRequestedMentionMode: (requestedMentionIds === null || requestedMentionIds === void 0 ? void 0 : requestedMentionIds.length) > 0,
          showCopilot: showCopilot,
          isCopilotActive: copilotActive,
          total: total,
          themeId: themeId,
          realCount: realCount,
          calculatingRealCount: calculatingRealCount,
          dedup: dedup,
          perPage: perPage,
          mentionFrom: mentionFrom,
          mentionTo: mentionTo,
          orderBy: orderBy,
          selectedCount: selectedCount,
          allSelected: allSelected,
          pageSelected: pageSelected,
          selecting: selecting,
          canManageMentions: canManageMentions,
          starred: starred,
          deleted: deleted,
          processed: processed,
          spam: spam,
          assigneeId: assigneeId,
          tags: tags,
          sentiment: sentiment,
          feedbackLoopSmartFeatures: feedbackLoopSmartFeatures,
          showFeedbackLoop: showFeedbackLoop,
          topicTaskStarted: topicTaskStarted,
          onRefresh: onRefresh,
          onNextPage: onNextPage,
          onPrevPage: onPrevPage,
          onOrderByChange: onOrderByChange,
          onPerPageChange: onPerPageChange,
          onQuitRequestedMentionsMode: this.handleQuitRequestedMentionsMode,
          onSelectPage: this.handleSelectMentionsOnPage,
          onStar: this.handleStar,
          onUnstar: this.handleUnstar,
          onMarkAsSpam: this.handleMarkAsSpam,
          onMarkAsHam: this.handleMarkAsHam,
          onMarkProcessed: this.handleMarkProcessed,
          onMarkUnprocessed: this.handleMarkUnprocessed,
          onDelete: this.handleDelete,
          onRestore: this.handleRestore,
          onSetTags: this.handleSetTags,
          onAssign: this.handleAssign,
          onSetSentiment: this.handleSetSentiment,
          onDeselectAll: this.handleDeselectAll,
          onSelectAll: this.handleSelectAllMentions,
          onChangeSmartFeature: this.handleChangeSmartFeature,
          onToggleCopilot: this.handleToggleCopilot,
          onSendAnalyticalEvent: this.props.sendAnalyticalEvent
        })
      });
    }
  }]);
}(react.Component);
function MentionStreamToolbar_mapStateToProps(state) {
  return {
    showCopilot: (0,account_selectors/* isInsightsCopilotEnabled */.TT)(state),
    copilotActive: (0,mentionStream_selectors/* isCopilotActive */.Ll)(state),
    selectedCount: (0,mentionStream_selectors/* getSelectedMentionsCount */.U3)(state),
    shortcutsEnabled: (0,currentUser_selectors/* isShortcutsEnabled */.Rm)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    selectedIds: (0,selected_selectors/* getSelectedMentionIds */.aX)(state),
    requestedMentionIds: (0,mentionStream_selectors/* getRequestedMentionIds */.ts)(state),
    allSelected: (0,selected_selectors/* isAllSelected */.dE)(state),
    pageSelected: (0,selected_selectors/* isPageSelected */.Bt)(state),
    selecting: (0,selected_selectors/* isSelectingMentions */._I)(state),
    starred: (0,selected_selectors/* getStarredValue */.jy)(state),
    deleted: (0,selected_selectors/* getDeletedValue */.nP)(state),
    spam: (0,selected_selectors/* getSpamValue */.tt)(state),
    processed: (0,selected_selectors/* getProcessedValue */.m7)(state),
    assigneeId: (0,selected_selectors/* getAssigneeValue */.d6)(state),
    tags: (0,selected_selectors/* getTagsValue */.z)(state),
    sentiment: (0,selected_selectors/* getSentimentValue */.Dd)(state),
    realCount: (0,selected_selectors/* getRealSelectedMentionCount */.R9)(state),
    calculatingRealCount: (0,selected_selectors/* isRealSelectedMentionCountCalculating */.SY)(state),
    dedup: (0,filter_selectors/* isFilterDedup */.TF)(state),
    canManageMentions: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'manageMentions'),
    feedbackLoopSmartFeatures: (0,selected_selectors/* getSelectedMentionsFeedbackLoopSmartFeatureValues */.Lc)(state),
    showFeedbackLoop: (0,themes_selectors/* canUseFeedbackLoopFeature */.Dj)(state),
    topicTaskStarted: (0,mentionStream_selectors/* isTopicTaskStarted */.sg)(state)
  };
}
/* harmony default export */ const MentionStreamToolbar_MentionStreamToolbar = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(MentionStreamToolbar_mapStateToProps, {
  starMentions: commands_model/* mentionStreamCommandsModel */.a.action.starMentions,
  unstarMentions: commands_model/* mentionStreamCommandsModel */.a.action.unstarMentions,
  markAsHamMentions: commands_model/* mentionStreamCommandsModel */.a.action.markAsHamMentions,
  markAsSpamMentions: commands_model/* mentionStreamCommandsModel */.a.action.markAsSpamMentions,
  markProcessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markProcessedMentions,
  markUnprocessedMentions: commands_model/* mentionStreamCommandsModel */.a.action.markUnprocessedMentions,
  deleteMentions: commands_model/* mentionStreamCommandsModel */.a.action.deleteMentions,
  restoreMentions: commands_model/* mentionStreamCommandsModel */.a.action.restoreMentions,
  setTagsMentions: commands_model/* mentionStreamCommandsModel */.a.action.setTagsMentions,
  assignMentions: commands_model/* mentionStreamCommandsModel */.a.action.assignMentions,
  setSentimentMentions: commands_model/* mentionStreamCommandsModel */.a.action.setSentimentMentions,
  deselectAllMentions: selected_model/* mentionStreamSelectedModel */.n.action.deselectAllMentions,
  selectMentionsOnPage: selected_model/* mentionStreamSelectedModel */.n.action.selectMentionsOnPage,
  selectAllMentions: selected_model/* mentionStreamSelectedModel */.n.action.selectAllMentions,
  setFeedbackLoopMentions: commands_model/* mentionStreamCommandsModel */.a.action.setFeedbackLoopMentions,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
  fetchFeedbackLoopFeatures: metaData_model/* metaDataModel */.v.action.fetchFeedbackLoopFeatures,
  updateLocation: routing_actions/* update */.yo
}))(MentionStreamToolbarContainer));
// EXTERNAL MODULE: ./node_modules/react-paginate/dist/react-paginate.js
var react_paginate = __webpack_require__("I+5a");
var react_paginate_default = /*#__PURE__*/__webpack_require__.n(react_paginate);
;// CONCATENATED MODULE: ./src/components/ui/Pagination/Pagination.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Pagination = ({"pagination":"lqR0SG6Ch3lOtNVE82g9","active":"FcDkgG3Kzs0dBO_4xKb5"});
;// CONCATENATED MODULE: ./src/components/ui/Pagination/Pagination.tsx





var Pagination_Pagination = function (_a) {
    var pageNumber = _a.pageNumber, numberOfPages = _a.numberOfPages, onPageChange = _a.onPageChange;
    var handlePageChange = function (_a) {
        var selected = _a.selected;
        if (pageNumber !== selected + 1) {
            onPageChange(selected + 1);
        }
    };
    if (!Number.isInteger(numberOfPages) || numberOfPages < 2) {
        return null;
    }
    return ((0,jsx_runtime.jsx)((react_paginate_default()), { previousLabel: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-left" }), nextLabel: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-right" }), breakLabel: "...", pageCount: numberOfPages, initialPage: pageNumber - 1, marginPagesDisplayed: 2, pageRangeDisplayed: 2, pageLinkClassName: "paginationPage", previousClassName: "previous", nextClassName: "next", containerClassName: Pagination.pagination, pageClassName: "paginationPages", activeClassName: Pagination.active, onPageChange: handlePageChange }));
};
/* harmony default export */ const ui_Pagination_Pagination = ((0,react.memo)(Pagination_Pagination));

;// CONCATENATED MODULE: ./src/components/ui/Pagination/index.ts


;// CONCATENATED MODULE: ./src/components/ui/PageHeader/PageHeader.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const PageHeader = ({"base":"smWihEQ5lYHIfRNy0FnO","toolbar":"jQ641ooHb6eMxDiT9kUF","headerWithSubtitle":"I25c6_wZm7o64u1Wrx9E","heading":"k2gyj_TSn2yATMiM116b","subTitle":"uUT2U1dOcVb7wOxdVQkA"});
;// CONCATENATED MODULE: ./src/components/ui/PageHeader/PageHeader.tsx
var PageHeader_assign = (undefined && undefined.__assign) || function () {
    PageHeader_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PageHeader_assign.apply(this, arguments);
};






/**
 * Component for displaying page header with some additional content.
 * Needed for pages with left navigation drawer (theme layout)
 */
var PageHeader_PageHeader = function (_a) {
    var _b, _c;
    var title = _a.title, subTitle = _a.subTitle, rightContent = _a.rightContent, children = _a.children;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, PageHeader_assign({ noPadding: true, className: classnames_default()(PageHeader.base, (_b = {}, _b[PageHeader.withBottomContent] = children, _b)), id: "_pageHeader" }, { children: [(0,jsx_runtime.jsxs)("div", PageHeader_assign({ className: PageHeader.toolbar }, { children: [(0,jsx_runtime.jsxs)("div", PageHeader_assign({ className: classnames_default()((_c = {}, _c[PageHeader.headerWithSubtitle] = subTitle, _c)) }, { children: [(0,jsx_runtime.jsx)(H1/* default */.A, PageHeader_assign({ className: PageHeader.heading }, { children: title })), subTitle && (0,jsx_runtime.jsx)("div", PageHeader_assign({ className: PageHeader.subTitle }, { children: subTitle }))] })), (0,jsx_runtime.jsx)("div", PageHeader_assign({ className: PageHeader.toolbarInner }, { children: rightContent }))] })), children
                && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Divider/* default */.A, { withoutPadding: true }), (0,jsx_runtime.jsx)("div", PageHeader_assign({ className: PageHeader.bottomContent }, { children: children }))] }))] })));
};
/* harmony default export */ const ui_PageHeader_PageHeader = (PageHeader_PageHeader);

;// CONCATENATED MODULE: ./src/components/ui/PageHeader/index.ts


// EXTERNAL MODULE: ./node_modules/react-scroll-up/index.js
var react_scroll_up = __webpack_require__("qrN4");
;// CONCATENATED MODULE: ./src/components/ui/ScrollUpButton/ScrollUpButton.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ScrollUpButton = ({"base":"Kk9odDAeeRrwBYxlkypl"});
;// CONCATENATED MODULE: ./src/components/ui/ScrollUpButton/ScrollUpButton.tsx
var ScrollUpButton_assign = (undefined && undefined.__assign) || function () {
    ScrollUpButton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ScrollUpButton_assign.apply(this, arguments);
};





var style = {
    position: 'fixed',
    bottom: 15,
    left: 226,
    cursor: 'pointer',
    transitionDuration: '0.2s',
    transitionTimingFunction: 'linear',
    transitionDelay: '0s',
    width: 'min-content',
};
/**
 * Button that scrolls page to the upper point
 */
var ScrollUpButton_ScrollUpButton = function () { return ((0,jsx_runtime.jsx)(react_scroll_up/* default */.A, ScrollUpButton_assign({ showUnder: 1000, style: style }, { children: (0,jsx_runtime.jsx)("div", ScrollUpButton_assign({ className: classnames_default()(ScrollUpButton.base) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-up", size: 32 }) })) }))); };
/* harmony default export */ const ui_ScrollUpButton_ScrollUpButton = (ScrollUpButton_ScrollUpButton);

;// CONCATENATED MODULE: ./src/components/ui/ScrollUpButton/index.ts


// EXTERNAL MODULE: ./src/utils/isNetworkError.js
var isNetworkError = __webpack_require__("+kf1");
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/NetworkCat/NetworkCat.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const NetworkCat = ({"cls-1":"zJBTsjBDPyOssJj_DXyw","cls-2":"iYYS2IsBJP9CuJAt95w_","cls-3":"YLhtlXZ1wBqs7w7B1_xg","cls-4":"R2K1agSRZ1ERlstck0Qj","cls-5":"mf5ujTyUx4OHJ2VY6IhD","cls-6":"RRd8eJqu5AY0UaHQbZW0"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/NetworkCat/NetworkCat.js
/* eslint-disable max-len */




/* harmony default export */ const NetworkCat_NetworkCat = (function (_ref) {
  var className = _ref.className;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("svg", {
    viewBox: "0 0 972.13 513.64",
    className: className,
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      style: {
        fill: '#184054'
      },
      className: classnames_default()(NetworkCat['cls-1']),
      d: "M366.69,160.13l-4.28,6.16c5.52-17.71,12.49-34.66,18-52.37,1.67-5.37,3.44-10.91,7.15-15.14s9.92-6.82,15.1-4.63a210.35,210.35,0,0,1,15.78,76.61Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-1']),
      d: "M294.17,327.52c-23.89-2.67-40.19-25-61.59-36-36.18-18.48-81.69-.91-110.58,27.65-16.11,15.93-29.53,37.13-27.58,59.7s25.38,43.45,46.69,35.79c23.61-8.47,27.91-41.84,49-55.37,15.39-9.86,35.84-6.57,52.69.54s32.37,17.68,50.13,22,39.57.46,48.75-15.35Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-2']),
      d: "M321.64,384.82c61.24,37.75,139.69,29.57,209.78,13.33,49.43-11.46,100.76-27.93,134.49-65.84C691.13,304,703.78,266.19,708,228.48s.76-75.81-2.74-113.6c-1.09-11.8-1.55-23.94-3.87-35.45-29.16-3.8-26.92,18.5-46.83,31.56-12.79,8.39-37.52,10.88-52.27,11.81q-120.21,7.56-239.79,22.56c-14.81,1.86-29.63,3.8-44.18,7.14-15.92,3.66-33.74,8.71-47.64.13C260,146,254.9,133,245,125.17c-24.9-19.6-21.83,49.24-21.25,59.93,1.12,20.74,8.44,39.89,13,60C249.52,300.84,270.7,353.33,321.64,384.82Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-3']),
      d: "M554.27,376c-111.15-10.47-74-167.27-14.15-215.15,46.25-37,115.51-42.64,166.6-12.72a211.94,211.94,0,0,0-118.87,86c-20.4,30.65-49.14,104.16-33.36,139.27Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-2']),
      d: "M803.11,305.18A121.44,121.44,0,0,0,864.87,301a192.16,192.16,0,0,1-51-44.69q-.93,2.44-1.85,4.89Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-2']),
      d: "M623.09,393.65q.36,28.49.71,57c14.67-4,25.8-15.93,34.48-28.42S674.16,396,685,385.33Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-2']),
      d: "M520.75,250.28c-15.44,43.23-8.35,95.53,23.45,128.64,25.3,26.36,63.45,38.19,99.92,36s71.3-17.24,101.38-38c33.21-22.87,62.26-54.15,74.29-92.64s4.05-84.66-26.16-111.38c-18.4-16.27-42.71-24-66.56-29.84C641,122,551.72,163.6,520.75,250.28Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M693.17,263.24c-5-7.29-6.65-17.41-2.15-25.38,4.25-7.53,13.53-10.93,21.78-9.31,7.31,1.42,10.47-9.34,3.11-11.29-13.12-3.46-27.89,3-33.66,15.47-5.31,11.5-2,25.61,8.72,32.71,1.31.87,3.11-.88,2.2-2.2Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M689.32,260.25c-17-16-44-1.2-46.86,19.68-.84,6.06,7.61,7.29,8.33,1.13a22.68,22.68,0,0,1,12.78-17.77c7.71-3.52,15.72-1.75,23.19,1.36,2.49,1,4.36-2.71,2.56-4.4Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M756.8,274.77c.13,5.66,2.16,10.17,4.7,15.11,2.45,4.75,10.4,1.47,8.7-3.67a44.87,44.87,0,0,0-5.65-11.95c-4.41-6-13-1-9.94,5.81,1.71,3.8,4.83,7.69,7.63,10.77q3.38-3.36,6.73-6.73c-3.09-2.49-4.92-6.44-6-10.17-1-3.29-6.22-2.78-6.13.83Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M674.17,350.16c.08.14.16.28.25.42-.09-.63-.17-1.25-.25-1.88-1.17,3.84,2.56,6.27,5.07,8.44a5.18,5.18,0,0,0,8.66-5,16.49,16.49,0,0,0-7.93-9.67,6.05,6.05,0,0,0-8.57,2.89c-1.48,3.49.49,7,3.91,8.16.8.28-.13,0-.3-.15a5.53,5.53,0,0,0,.91.46c.23.13.45.3.69.43.62.32-1-.9,0-.05.4.37.8.73,1.17,1.12.11.11.92.91.38.36s.24.35.3.44l7.09-7.09c-1.5-.69-3-1.42-4.5-2.06a8.39,8.39,0,0,0-2.6-.63,4.5,4.5,0,0,0-3.62,1.32l1.72-.71-.46-.06c-1.7-.21-2.68,2-1.89,3.3Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M688.62,261.88a11.86,11.86,0,0,0-2.43,1.06A6.3,6.3,0,0,0,683,268.5a6.44,6.44,0,0,0,6.43,6.44,6.37,6.37,0,0,0,5.56-3.19,11.42,11.42,0,0,0,1.06-2.44,6,6,0,0,0-7.43-7.43Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-5']),
      d: "M733,248.56c4.32-1.68,7.93-5,11.73-7.6s7.51-5.11,11.33-7.58c8.2-5.31,16.68-10.15,24.75-15.65,3.66-2.49.48-8.09-3.49-6-8.94,4.75-17.11,10.73-25.18,16.83q-5.35,4-10.59,8.25c-3.59,2.88-7.71,5.59-10.32,9.42a1.58,1.58,0,0,0,1.77,2.3Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-5']),
      d: "M745.48,255.44c7,.71,14.8-1.61,21.52-3.46a175.85,175.85,0,0,0,21.63-7.56c6.81-2.86,2.62-12.84-4-9.36a168,168,0,0,1-20.76,9.35c-6.4,2.36-13.53,3.8-19.52,7-2,1.1-.88,3.8,1.08,4Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-5']),
      d: "M667.46,300.45c-7.24,2.42-13.8,7.09-20.32,11-6.93,4.13-14.15,8.15-20.59,13-5.22,3.93-.75,12.42,5.26,9,7.05-4,13.6-9,20.16-13.78,6.14-4.44,13.26-8.66,18.34-14.34,1.82-2,.1-5.87-2.85-4.89Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-5']),
      d: "M672.71,314.15c-6.06,5.16-10.86,12.12-16.54,17.74A223.8,223.8,0,0,1,638,348.12c-5,4,2.14,11.28,7.1,7.1a170.79,170.79,0,0,0,18.2-17.48c5.14-5.82,11.47-12.45,14.55-19.63,1.44-3.37-2.17-6.48-5.13-4Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-6']),
      d: "M583.2,135.44c-1.42-22.52-40.2-12.5-42.91,5.13-1.56,10.14,5.65,20,14.42,24.38,9.53,4.79,21.26,4.42,30.95.36s18.6-12.21,21.14-22.83c3.12-13-5.29-24.29-18.69-25-11.91-.62-24.46,5.76-32.76,14-9,8.9-14.56,23.11-4.18,33.42,9.7,9.64,24.48,7.65,34.66,0,9.77-7.36,15.59-19.48,13.35-31.73-2.1-11.51-11.94-21.33-23.77-22.25-12.42-1-24.53,8.81-25.63,21.31-1.08,12.25,9.42,23.71,21.77,23.88,12.57.17,22.68-10.79,22.51-23.18-.16-11.33-9.61-19.71-20.18-21.6-10.92-2-22.64,1.66-29.92,10.24-9.87,11.64-7.53,29,7,35.46,13,5.78,27.59-1.53,33.29-14,6-13.06-1.78-31-18.29-27.12-13.69,3.26-23.41,18.46-22.79,32a9.75,9.75,0,0,0,8.41,9.53c4.29.51,9.94-2.12,10.65-7,.62-4.24,1.81-8.49,4.78-11.7.66-.71,4.28-2.71,4.4-3.08l-5.08-2.11a.88.88,0,0,1-.25-.57c1.9-1.15-.62,1.93-.05,1-1.25,2-2.89,5-5.76,4.86-1.61-.1-1.88-.76-2.66-1.9,1.16,1.69-.53,1,.47-.46.4-.57.71-1.19,1.16-1.73a11.51,11.51,0,0,1,8.74-3.84,9.8,9.8,0,0,1,4.74.92c.24.13,1.15,1.43,1.1,1.1.86,5-6.44,2.8-3.37-.77,4.95-5.75,10.1,4,9.3,8.37a15.25,15.25,0,0,1-6.33,9.18c-2,1.41-7.5,4.31-9,.81.36.83.12.11.87-1.31a14.39,14.39,0,0,1,1.27-1.91,30.4,30.4,0,0,1,19.9-11.33,8.37,8.37,0,0,1,2.73,0c.51.15,1.29,1.07.45-.12.84,1.19,0,3.66-.38,4.74-1.66,4.31-5.56,7.52-9.54,9.63-8.41,4.44-21.32,4.36-26.11-5.33-2.84-5.75,3.2-9,7.66-11.37,6.32-3.31,14.85-5.07,18.63,2.8.75,1.56,3.38.81,3.27-.89Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M564.29,124.28c3.38,6,7.41,11.65,11.22,17.38,3.28,4.94,10.42-.38,6.51-5-4.43-5.26-8.71-10.69-13.52-15.61-2.15-2.19-5.7.61-4.21,3.25Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-4']),
      d: "M583.29,123.76c-7.4.87-14.44,6.41-20.79,10.08-4.67,2.7,0,10.2,4.14,7.07,3.22-2.46,6.46-4.91,9.63-7.44s6.05-4.54,8-8c.37-.67-.08-1.79-1-1.69Z"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
      className: classnames_default()(NetworkCat['cls-2']),
      d: "M450.1,145.09c20.46-11.29,17.83-32.34,28.41-49.7,15.81-.53,30.19,26.12,33.59,39.7Z"
    })]
  });
});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/NetworkCat/index.js

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/EmptyState/EmptyState.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const EmptyState = ({"emptyState":"z7k8nDusyAjw0sxUx8F4","emptyStateHeader":"CIc4rHfqsAhbRA0ADm0W","emptyStateImage":"hsiS7Ciac4bKUOO64s4x","emptyStateMessage":"Rsz3wZHAZSrMsDthqSYh","emptyStateAfterTopicCreationText":"DWqJKyUgim6GqBy1au79"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/EmptyState/EmptyState.js

function EmptyState_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function EmptyState_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? EmptyState_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : EmptyState_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }







var renderNoMentionsAfterTopicCreationError = function renderNoMentionsAfterTopicCreationError(_ref) {
  var topicId = _ref.topicId,
    isHistoryCollecting = _ref.isHistoryCollecting;
  return isHistoryCollecting ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
      className: classnames_default()(EmptyState.emptyStateHeader),
      children: l('Collecting mentions for the last month', 'emptyState')
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
      className: classnames_default()(EmptyState.emptyStateAfterTopicCreationText),
      children: [l('Mentions will appear here soon.' + ' Check the status of collection in Settings >', 'emptyState'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
        to: "/themes/".concat(topicId, "/settings/collection"),
        children: l('History collection')
      })]
    })]
  }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
      className: classnames_default()(EmptyState.emptyStateHeader),
      children: l('Collect historical data', 'emptyState')
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
      className: classnames_default()(EmptyState.emptyStateAfterTopicCreationText),
      children: [l('New mentions will appear here soon.' + ' To collect the historical data, go to Settings >', 'emptyState'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
        to: "/themes/".concat(topicId, "/settings/collection"),
        children: l('History collection')
      })]
    })]
  });
};
var renderNoMentionsError = function renderNoMentionsError(canCreateRule, onCreateRule) {
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [l('No mentions match your filter. Try changing the filter or date range.', 'emptyState'), canCreateRule && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('If you want to apply actions for all future mentions ' + 'satisfying this filter, you can ', 'emptyState'), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
        onClick: onCreateRule,
        children: [l('create a rule', 'emptyState'), " ", /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: "rules"
        })]
      })]
    })]
  });
};
var EmptyState_renderEmptyState = function renderEmptyState(_ref2) {
  var imageUrl = _ref2.imageUrl,
    content = _ref2.content;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(EmptyState.emptyState),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
      alt: "No mentions",
      className: classnames_default()(EmptyState.emptyStateImage),
      src: imageUrl
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(EmptyState.emptyStateMessage),
      children: content
    })]
  });
};
var EmptyState_EmptyState = function EmptyState(_ref3) {
  var canCreateRule = _ref3.canCreateRule,
    isAfterTopicCreation = _ref3.isAfterTopicCreation,
    isHistoryCollecting = _ref3.isHistoryCollecting,
    topicId = _ref3.topicId,
    hasAdditionalFilterForRules = _ref3.hasAdditionalFilterForRules,
    onCreateRule = _ref3.onCreateRule;
  var getEmptyStateData = function getEmptyStateData() {
    if (isAfterTopicCreation && !hasAdditionalFilterForRules) {
      return {
        imageUrl: '/static/images/empty_mentions_after_topic_creation.png',
        content: renderNoMentionsAfterTopicCreationError({
          topicId: topicId,
          isHistoryCollecting: isHistoryCollecting
        })
      };
    }
    return {
      imageUrl: '/static/images/empty_mentions_image.png',
      content: renderNoMentionsError(canCreateRule, onCreateRule)
    };
  };
  return EmptyState_renderEmptyState(EmptyState_objectSpread({}, getEmptyStateData()));
};
/* harmony default export */ const components_EmptyState_EmptyState = (EmptyState_EmptyState);
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/EmptyState/index.js

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/MentionStreamPage/MentionStreamPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionStreamPage_MentionStreamPage = ({"overlayedBlock":"IBX3LWyPR6A0BcdW3pCG","flexCenter":"UNbtqvfYJ_LsRWwMBDvk","smartFeature":"eBZIvVvoMpIe8hVSFB7V","tag":"OdTi3iu1bjT2y05gWxJH","visibleScrollBar":"UrW6XVjHscHUw5h3YWGO","hiddenScrollBar":"Gi3uHdCiNmWGbVnPpxH_","base":"EatLFn1lUchYm4JhcTqN","content":"bzv4CppT66X425gBNSge","mentions":"GYdyCuLeFaYuksImbLkV","withCopilot":"LZd2z9lpVAGFEbpTdYkl","withPagination":"kbkT_75GzJPJ8F36sihB","heading":"VQxmZvGRk5_TgsWQNtWQ","bottomToolbar":"czRgTfnCx2yLJOdDxwj8","sidePanel":"xyrvC7EaIgvLRcoUY851","refreshStreamButton":"TkGYeFWBqxcJMfirRAhu","errorState":"lPBUrQnJi1Tvd5M1Lq8x","errorText":"bBNd2lJrsQ_fMJiFSxZk","errorImage":"apA7gzGcfQVwMMi7TWqu"});
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/MentionStreamPage/MentionStreamPage.js






function MentionStreamPage_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionStreamPage_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionStreamPage_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionStreamPage_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/* eslint-disable no-console */
/* eslint-disable import/no-unresolved */
































var MentionStreamPage = /*#__PURE__*/function (_PureComponent) {
  function MentionStreamPage() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionStreamPage);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = MentionStreamPage_callSuper(this, MentionStreamPage, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "componentDidUpdate", function (prevProps) {
      var _this$props = _this.props,
        error = _this$props.error,
        mentions = _this$props.mentions,
        loading = _this$props.loading,
        onSendAnalyticalEvent = _this$props.onSendAnalyticalEvent;
      if (error && error !== prevProps.error) {
        window.scrollTo(0, 0);
        console.info('[MentionStreamPage] Something went wrong', error);
        onSendAnalyticalEvent({
          eventType: 'MentionStreamPage: "Something went wrong" error seen',
          properties: {
            error: String(error)
          }
        });
        if ((0,isNetworkError/* default */.A)(error)) {
          onSendAnalyticalEvent({
            eventType: 'MentionStreamPage: "Network error"',
            properties: {
              error: String(error)
            }
          });
        }
      }
      if (prevProps.loading && !loading && !mentions.length) {
        onSendAnalyticalEvent({
          eventType: 'Empty state: Mention stream page'
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "renderError", function () {
      var onPageRefresh = _this.props.onPageRefresh;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(MentionStreamPage_MentionStreamPage.errorState),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(NetworkCat_NetworkCat, {
          className: classnames_default()(MentionStreamPage_MentionStreamPage.errorImage)
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
          children: l('No internet connection')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          className: classnames_default()(MentionStreamPage_MentionStreamPage.errorText),
          children: l('Please check your internet connection and tap refresh button try again')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          size: "small",
          label: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: "refresh",
              style: {
                marginRight: 4
              }
            }), l('Refresh')]
          }),
          className: classnames_default()(MentionStreamPage_MentionStreamPage.refreshStreamButton),
          onClick: onPageRefresh
        })]
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(MentionStreamPage, _PureComponent);
  return (0,createClass/* default */.A)(MentionStreamPage, [{
    key: "renderEmptyState",
    value: function renderEmptyState() {
      var _this$props2 = this.props,
        themeId = _this$props2.themeId,
        canCreateRule = _this$props2.canCreateRule,
        isAfterTopicCreation = _this$props2.isAfterTopicCreation,
        isHistoryCollecting = _this$props2.isHistoryCollecting,
        filters = _this$props2.filters,
        onCreateRule = _this$props2.onCreateRule;

      // TODO: NewFilters: fix - refactor `withFilters` HOC
      var hasAdditionalFilterForRules = !Filter/* Filter */.dJ.createFromImmutableState(filters).isEmpty();
      return /*#__PURE__*/(0,jsx_runtime.jsx)(components_EmptyState_EmptyState, {
        topicId: themeId,
        isAfterTopicCreation: isAfterTopicCreation,
        isHistoryCollecting: isHistoryCollecting,
        hasAdditionalFilterForRules: hasAdditionalFilterForRules,
        canCreateRule: canCreateRule,
        onCreateRule: onCreateRule
      });
    }
  }, {
    key: "renderTitle",
    value: function renderTitle() {
      var _this$props3 = this.props,
        showSimilar = _this$props3.showSimilar,
        showDuplicates = _this$props3.showDuplicates,
        showDiscussion = _this$props3.showDiscussion,
        onGoBackToTheStream = _this$props3.onGoBackToTheStream;
      if (showSimilar) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(MentionStreamPage_MentionStreamPage.heading),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            iconType: "back",
            tooltip: l('Go back to stream'),
            tooltipPosition: "bottom center",
            onClick: onGoBackToTheStream
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Displaying similar')]
        });
      }
      if (showDuplicates) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(MentionStreamPage_MentionStreamPage.heading),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            iconType: "back",
            tooltip: l('Go back to stream'),
            tooltipPosition: "bottom center",
            onClick: onGoBackToTheStream
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Displaying duplicates')]
        });
      }
      if (showDiscussion) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(MentionStreamPage_MentionStreamPage.heading),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
            iconType: "back",
            tooltip: l('Go back to stream'),
            tooltipPosition: "bottom center",
            onClick: onGoBackToTheStream
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Displaying Discussion')]
        });
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        className: classnames_default()(MentionStreamPage_MentionStreamPage.heading),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(mentions_MentionsPageTitle_MentionsPageTitle, {})
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props4 = this.props,
        isCopilotActive = _this$props4.isCopilotActive,
        mentions = _this$props4.mentions,
        error = _this$props4.error,
        page = _this$props4.page,
        perPage = _this$props4.perPage,
        total = _this$props4.total,
        orderBy = _this$props4.orderBy,
        numberOfPages = _this$props4.numberOfPages,
        loading = _this$props4.loading,
        selectingMentions = _this$props4.selectingMentions,
        hasNewMentions = _this$props4.hasNewMentions,
        children = _this$props4.children,
        onPageChange = _this$props4.onPageChange,
        onPerPageChange = _this$props4.onPerPageChange,
        onOrderByChange = _this$props4.onOrderByChange,
        onRefresh = _this$props4.onRefresh,
        onNextPage = _this$props4.onNextPage,
        onPrevPage = _this$props4.onPrevPage;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(MentionStreamPage_MentionStreamPage.base, (0,defineProperty/* default */.A)({}, MentionStreamPage_MentionStreamPage.withGroupActions, selectingMentions)),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Head/* default */.A, {
          isTopicPage: true,
          title: l('Mentions Stream'),
          alert: hasNewMentions
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, {
          title: this.renderTitle(),
          rightContent: /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TopicSearchFilter_TopicSearchFilter, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, {
              showTime: true,
              showPresetRanges: true
            })]
          }),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(ThemeFilters_TopicFilters, {})
        }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(MentionStreamPage_MentionStreamPage.content),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(MentionStreamPage_MentionStreamPage.mentions, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, MentionStreamPage_MentionStreamPage.withCopilot, isCopilotActive), MentionStreamPage_MentionStreamPage.withPagination, numberOfPages >= 2)),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(MentionStreamToolbar_MentionStreamToolbar, {
                total: total,
                orderBy: orderBy,
                perPage: perPage,
                mentionFrom: (page - 1) * perPage + 1,
                mentionTo: mentions.length + (page - 1) * perPage,
                onRefresh: onRefresh,
                onNextPage: onNextPage,
                onPrevPage: onPrevPage,
                onOrderByChange: onOrderByChange,
                onPerPageChange: onPerPageChange
              }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Loader/* default */.A, {
                loaded: !loading,
                empty: !mentions.length,
                emptyState: this.renderEmptyState(),
                error: error,
                renderError: (0,isNetworkError/* default */.A)(error) && this.renderError,
                errorTitle: l('Something went wrong'),
                errorMessage: l('If you see this, contact our support'),
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(CSSTransition/* default */.A, {
                  classNames: "mention",
                  timeout: {
                    enter: 100,
                    exit: 400
                  },
                  children: /*#__PURE__*/(0,jsx_runtime.jsx)(MentionList, {})
                }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
                  className: classnames_default()(MentionStreamPage_MentionStreamPage.bottomToolbar),
                  children: /*#__PURE__*/(0,jsx_runtime.jsx)(MarkAllAsProcessed, {})
                }), /*#__PURE__*/(0,jsx_runtime.jsx)(ui_Pagination_Pagination, {
                  pageNumber: page,
                  numberOfPages: numberOfPages,
                  onPageChange: onPageChange
                })]
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              className: classnames_default()(MentionStreamPage_MentionStreamPage.sidePanel),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Sticky/* default */.A, {
                top: 60,
                children: isCopilotActive ? /*#__PURE__*/(0,jsx_runtime.jsx)(insightsCopilot_InsightsCopilot, {}) : /*#__PURE__*/(0,jsx_runtime.jsx)(mentions_MentionStreamSidePanel_MentionStreamSidePanel, {})
              })
            })]
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(ui_ScrollUpButton_ScrollUpButton, {}), children]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/components/MentionStreamPage/index.js

;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/MentionStreamPage.js







function MentionStreamPage_MentionStreamPage_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, MentionStreamPage_MentionStreamPage_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function MentionStreamPage_MentionStreamPage_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (MentionStreamPage_MentionStreamPage_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }




















var MentionStreamPageContainer = /*#__PURE__*/function (_Component) {
  function MentionStreamPageContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, MentionStreamPageContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = MentionStreamPage_MentionStreamPage_callSuper(this, MentionStreamPageContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handlePageChange", function (page) {
      window.scrollTo(0, 0);
      _this.props.changePage({
        page: page
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleNextPage", function () {
      _this.props.changePage({
        page: _this.props.page + 1
      });
    });
    (0,defineProperty/* default */.A)(_this, "handlePrevPage", function () {
      _this.props.changePage({
        page: _this.props.page - 1
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleOrderByChange", function (orderBy) {
      _this.props.changeOrderBy({
        orderBy: orderBy
      });
    });
    (0,defineProperty/* default */.A)(_this, "handlePerPageChange", function (perPage) {
      _this.props.changePerPage({
        perPage: perPage
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleSelectMention", function (mentionId) {
      _this.props.selectMentions({
        mentionIds: [mentionId]
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDeselectMention", function (mentionId) {
      _this.props.deselectMentions({
        mentionIds: [mentionId]
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleGoBackToTheStream", function () {
      _this.props.restoreStreamState();
    });
    (0,defineProperty/* default */.A)(_this, "handleRefresh", function () {
      _this.props.changePage({
        page: 1
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCreateRule", function () {
      // TODO: NewFilters: remove _new
      _this.props.showModal('createRule_new');
    });
    (0,defineProperty/* default */.A)(_this, "handlePageRefresh", function () {
      _this.props.router.push('/themes');
      _this.props.router.goBack();
    });
    (0,defineProperty/* default */.A)(_this, "fetchData", function () {
      var themeId = _this.props.themeId;
      if (!_this.props.currentTheme) {
        _this.props.fetchThemesWithoutStats();
      }
      _this.props.refreshMentionStream({
        themeId: themeId
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(MentionStreamPageContainer, _Component);
  return (0,createClass/* default */.A)(MentionStreamPageContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.fetchData();
      window.scrollTo(0, 0);
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var themeId = this.props.themeId;
      if (prevProps.themeId !== themeId) {
        this.fetchData();
      }
      if (!isEqual_default()(prevProps.requestedMentionIds, this.props.requestedMentionIds)) {
        this.fetchData();
      }
    }
  }, {
    key: "isAfterTopicCreation",
    get: function get() {
      var _this$props = this.props,
        total = _this$props.total,
        router = _this$props.router;
      return !total && router.location.query.isAfterTopicCreation;
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        themeId = _this$props2.themeId,
        total = _this$props2.total,
        mentions = _this$props2.mentions,
        loading = _this$props2.loading,
        isLoggingOn = _this$props2.isLoggingOn,
        currentTheme = _this$props2.currentTheme,
        filter = _this$props2.filter,
        selectingMentions = _this$props2.selectingMentions,
        pageSelected = _this$props2.pageSelected,
        allSelected = _this$props2.allSelected,
        perPage = _this$props2.perPage,
        page = _this$props2.page,
        orderBy = _this$props2.orderBy,
        error = _this$props2.error,
        hasNewMentions = _this$props2.hasNewMentions,
        canCreateRule = _this$props2.canCreateRule,
        isHistoryCollecting = _this$props2.isHistoryCollecting;
      var numberOfPages = Math.ceil(total / perPage);
      if (!currentTheme) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)(MentionStreamPage, {
        isCopilotActive: this.props.showCopilot,
        mentions: mentions,
        error: error,
        themeId: themeId,
        total: total,
        filters: filter,
        dedup: filter.dedup,
        page: page,
        perPage: perPage,
        orderBy: orderBy,
        numberOfPages: numberOfPages,
        showDuplicates: filter.duplicates,
        showSimilar: filter.similar,
        showDiscussion: filter.discussions,
        loading: loading || isLoggingOn,
        selectingMentions: selectingMentions,
        pageSelected: pageSelected,
        allSelected: allSelected,
        hasNewMentions: hasNewMentions,
        canCreateRule: canCreateRule,
        isAfterTopicCreation: this.isAfterTopicCreation,
        isHistoryCollecting: isHistoryCollecting,
        onSelect: this.handleSelectMention,
        onPageRefresh: this.handlePageRefresh,
        onDeselect: this.handleDeselectMention,
        onGoBackToTheStream: this.handleGoBackToTheStream,
        onPageChange: this.handlePageChange,
        onNextPage: this.handleNextPage,
        onPrevPage: this.handlePrevPage,
        onPerPageChange: this.handlePerPageChange,
        onOrderByChange: this.handleOrderByChange,
        onRefresh: this.handleRefresh,
        onCreateRule: this.handleCreateRule,
        onSendAnalyticalEvent: this.props.sendAnalyticalEvent,
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {})
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const mentions_MentionStreamPage_MentionStreamPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) {
  return {
    requestedMentionIds: (0,mentionStream_selectors/* getRequestedMentionIds */.ts)(state),
    showCopilot: (0,mentionStream_selectors/* isCopilotActive */.Ll)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    mentions: (0,mentionStream_selectors/* getMentions */.OM)(state),
    hasNewMentions: hasStreamNewMentions(state),
    currentTheme: (0,themes_selectors/* getCurrentTheme */.j1)(state),
    selectingMentions: (0,selected_selectors/* isSelectingMentions */._I)(state),
    pageSelected: (0,selected_selectors/* isPageSelected */.Bt)(state),
    allSelected: (0,selected_selectors/* isAllSelected */.dE)(state),
    loading: (0,mentionStream_selectors/* isLoadingMentions */.CG)(state),
    isLoggingOn: (0,selectors/* isLoggingOn */.V5)(state),
    loggedOn: (0,selectors/* isLoggedOn */.e5)(state),
    isHistoryCollecting: (0,themes_selectors/* isCurrentThemeHistoryCollecting */.j_)(state),
    error: (0,mentionStream_selectors/* getMentionStreamError */.vS)(state),
    total: (0,mentionStream_selectors/* getTotalMentions */.or)(state),
    page: (0,mentionStream_selectors/* getCurrentPage */.p$)(state),
    perPage: (0,mentionStream_selectors/* getNumberOfMentionsPerPage */.Kc)(state),
    orderBy: (0,mentionStream_selectors/* getMentionsOrderBy */.NE)(state),
    canCreateRule: !(0,filter_selectors/* getThemeFilterForRule */.t$)(state).isEmpty()
  };
}, {
  refreshMentionStream: mentionStream_model/* mentionStreamModel */.K.action.refreshMentionStream,
  clearMentionStream: mentionStream_model/* mentionStreamModel */.K.action.clearMentionStream,
  changePage: mentionStream_model/* mentionStreamModel */.K.action.changePageNumber,
  restoreStreamState: mentionStream_model/* mentionStreamModel */.K.action.restoreStreamState,
  changePerPage: mentionStream_model/* mentionStreamModel */.K.action.changePerPageNumber,
  changeOrderBy: mentionStream_model/* mentionStreamModel */.K.action.changeOrderBy,
  selectMentions: selected_model/* mentionStreamSelectedModel */.n.action.selectMentions,
  deselectMentions: selected_model/* mentionStreamSelectedModel */.n.action.deselectMentions,
  selectAllMentions: selected_model/* mentionStreamSelectedModel */.n.action.selectAllMentions,
  selectMentionsOnPage: selected_model/* mentionStreamSelectedModel */.n.action.selectMentionsOnPage,
  fetchThemesWithoutStats: themes_model/* themesModel */.i.action.fetchThemesWithoutStats,
  showModal: modals_actions/* showModal */.to,
  updateFilter: filter_model/* filterModel */.W.action.updateFilter,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}), (0,withFilter/* default */.A)(function (props, firstTime) {
  if (!firstTime) {
    props.changePage({
      page: 1
    });
  }
}), withRouter/* withRouter */.y)(MentionStreamPageContainer));
;// CONCATENATED MODULE: ./src/containers/mentions/MentionStreamPage/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/DeleteTheme/components/DeleteTheme.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const DeleteTheme = ({"danger":"PTHFdpK7Ka1E46u4l40M","container":"AHaMn51J9eQeN_mpD6nP"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/DeleteTheme/components/DeleteTheme.js








/* harmony default export */ const components_DeleteTheme = (/*#__PURE__*/(0,react.memo)(function (_ref) {
  var canDeleteTheme = _ref.canDeleteTheme,
    onConfirm = _ref.onConfirm;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
    className: classnames_default()(DeleteTheme.danger),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
      children: l('Delete topic')
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(DeleteTheme.container),
      children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        children: [l('Be careful, topic deletion', 'deleteTopic'), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
          children: l(' CANNOT ', 'deleteTopic')
        }), l('be undone', 'deleteTopic')]
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        danger: true,
        disabled: !canDeleteTheme,
        label: l('Delete topic'),
        onClick: onConfirm
      })]
    })]
  });
}));
;// CONCATENATED MODULE: ./src/containers/themeSettings/DeleteTheme/DeleteTheme.js






function DeleteTheme_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, DeleteTheme_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function DeleteTheme_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (DeleteTheme_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }









var DeleteThemeContainer = /*#__PURE__*/function (_PureComponent) {
  function DeleteThemeContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, DeleteThemeContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = DeleteTheme_callSuper(this, DeleteThemeContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleConfirm", function () {
      var _this$props = _this.props,
        themeName = _this$props.themeName,
        themeId = _this$props.themeId;
      confirmThemeDeletion(themeName).then(function () {
        return _this.props.deleteTheme({
          themeId: themeId
        });
      }).then(function () {
        return setTimeout(function () {
          return _this.props.router.push('/themes');
        }, 100);
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(DeleteThemeContainer, _PureComponent);
  return (0,createClass/* default */.A)(DeleteThemeContainer, [{
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsx)(components_DeleteTheme, {
        canDeleteTheme: this.props.canDeleteTheme,
        onConfirm: this.handleConfirm
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const DeleteTheme_DeleteTheme = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeName: (0,themes_selectors/* getCurrentThemeName */.EY)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    canDeleteTheme: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'deleteTheme')
  };
}, {
  deleteTheme: themes_model/* themesModel */.i.action.deleteTheme
}))(DeleteThemeContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/DeleteTheme/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/ClearMentions/components/ClearMentions.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ClearMentions = ({"container":"Eu4tkF0XMjo6YTG3vLCY"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/ClearMentions/components/ClearMentions.js





function ClearMentions_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ClearMentions_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ClearMentions_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ClearMentions_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var ClearMentions = /*#__PURE__*/function (_PureComponent) {
  function ClearMentions() {
    (0,classCallCheck/* default */.A)(this, ClearMentions);
    return ClearMentions_callSuper(this, ClearMentions, arguments);
  }
  (0,inherits/* default */.A)(ClearMentions, _PureComponent);
  return (0,createClass/* default */.A)(ClearMentions, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        disabled = _this$props.disabled,
        isClearing = _this$props.isClearing;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_ClearMentions.container),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          children: l('This action will delete all mentions collected up to date', 'clearMentions')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          danger: true,
          disabled: disabled,
          loading: isClearing,
          label: l('Clear all data'),
          onClick: this.props.onConfirm
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/themeSettings/ClearMentions/ClearMentions.js






function ClearMentions_ClearMentions_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ClearMentions_ClearMentions_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ClearMentions_ClearMentions_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ClearMentions_ClearMentions_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }











var ClearMentionsContainer = /*#__PURE__*/function (_PureComponent) {
  function ClearMentionsContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ClearMentionsContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ClearMentions_ClearMentions_callSuper(this, ClearMentionsContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleConfirm", function () {
      var _this$props = _this.props,
        isSupport = _this$props.isSupport,
        themeName = _this$props.themeName,
        themeId = _this$props.themeId;
      var title = l('Clear mentions in the topic?', 'clearMentions');
      var actionLabel = l('Clear all mentions', 'clearMentions');
      var validationLabel = l('Please type in the name of current topic to confirm', 'clearMentions');
      var validation = function validation(value) {
        return value.toLowerCase() === themeName.toLowerCase().trim();
      };
      var message = /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        children: [l('This action ', 'clearMentions'), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
          children: l('CANNOT BE UNDONE.', 'clearMentions')
        }), l(' This will permanently delete all mentions in ', 'clearMentions'), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
          style: {
            whiteSpace: 'pre'
          },
          children: themeName
        }), l(' topic', 'clearMentions')]
      });
      return isSupport ? _this.getConfirm({
        themeId: themeId,
        title: title,
        message: message,
        actionLabel: actionLabel
      }) : _this.getConfirm({
        themeId: themeId,
        title: title,
        message: message,
        actionLabel: actionLabel,
        validation: validation,
        validationLabel: validationLabel
      });
    });
    (0,defineProperty/* default */.A)(_this, "getConfirm", function (_ref) {
      var themeId = _ref.themeId,
        title = _ref.title,
        message = _ref.message,
        actionLabel = _ref.actionLabel,
        validation = _ref.validation,
        validationLabel = _ref.validationLabel;
      return (0,utils_confirm/* default */.A)({
        title: title,
        message: message,
        actionLabel: actionLabel,
        validation: validation,
        validationLabel: validationLabel
      }).then(function () {
        return _this.props.clearMentions({
          themeId: themeId
        });
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ClearMentionsContainer, _PureComponent);
  return (0,createClass/* default */.A)(ClearMentionsContainer, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      if (prevProps.isClearing && !this.props.isClearing) {
        return (0,utils_alert/* default */.A)({
          title: l('Data clearing'),
          message: l('All mentions that were collected up to the current time have been successfully deleted')
        });
      }
      return null;
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        isClearing = _this$props2.isClearing,
        canPurgeMentions = _this$props2.canPurgeMentions;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(ClearMentions, {
        disabled: !canPurgeMentions,
        isClearing: isClearing,
        onConfirm: this.handleConfirm
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const ClearMentions_ClearMentions = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeName: (0,themes_selectors/* getCurrentThemeName */.EY)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    isClearing: (0,themes_selectors/* isThemeMentionsClearing */.Au)(state),
    canPurgeMentions: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'purgeMentions'),
    isSupport: (0,currentUser_selectors/* isSupportUser */.x3)(state)
  };
}, {
  clearMentions: themes_model/* themesModel */.i.action.clearMentions
}))(ClearMentionsContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/ClearMentions/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/DangerousSettings/DangerousSettings.js






/* harmony default export */ const DangerousSettings = (function () {
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
        children: l('Clear all data')
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(ClearMentions_ClearMentions, {})]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(DeleteTheme_DeleteTheme, {})]
  });
});
;// CONCATENATED MODULE: ./src/containers/themeSettings/DangerousSettings/index.js

// EXTERNAL MODULE: ./node_modules/date-fns/esm/sub/index.js
var sub = __webpack_require__("7wYy");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/endOfDay/index.js
var endOfDay = __webpack_require__("piIK");
// EXTERNAL MODULE: ./src/utils/historyCollection.js
var historyCollection = __webpack_require__("mo7E");
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionNotification.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const HistoryCollectionNotification = ({"notificationText":"HmTdPGeaSxL52OeXekeZ"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionNotification.tsx
var HistoryCollectionNotification_assign = (undefined && undefined.__assign) || function () {
    HistoryCollectionNotification_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HistoryCollectionNotification_assign.apply(this, arguments);
};
var _a;






var HistoryCollectionNotification_HistoryCollectionNotification = function (_a) {
    var _b;
    var _c = _a.notificationCode, notificationCode = _c === void 0 ? '' : _c, topicId = _a.topicId;
    return ((0,jsx_runtime.jsx)("p", HistoryCollectionNotification_assign({ className: HistoryCollectionNotification.notificationText }, { children: ((_b = VALIDATION_NOTIFICATION_CODE_MAP[notificationCode]) === null || _b === void 0 ? void 0 : _b.call(VALIDATION_NOTIFICATION_CODE_MAP, { topicId: topicId })) || notificationCode }), notificationCode));
};
var VALIDATION_NOTIFICATION_CODE_MAP = (_a = {},
    _a[historyCollection/* NOTIFICATION_TEXT_TYPE */.Px.RESTRICT_DEEP_HISTORY] = function () {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("b", { children: l('Historical data for over one month is not available on your subscription plan.', 'historyCollection') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Contact support@youscan.io for more details.')] }));
    },
    _a[historyCollection/* NOTIFICATION_TEXT_TYPE */.Px.UNSUPPORTED_QUERY_SYMBOLS] = function (_a) {
        var topicId = _a.topicId;
        return ((0,jsx_runtime.jsxs)("b", { children: [l('The search query contains wildcards (*, ?). Please, correct the query in Settings >', 'historyCollection'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(dist/* Link */.N_, HistoryCollectionNotification_assign({ to: "/themes/".concat(topicId, "/settings/general") }, { children: l('General', 'historyCollection') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('or contact the support.', 'historyCollection')] }));
    },
    _a[historyCollection/* NOTIFICATION_TEXT_TYPE */.Px.INVALID_DATE_RANGE] = function () {
        return ((0,jsx_runtime.jsx)("b", { children: l('Please, choose the correct period.', 'historyCollection') }));
    },
    _a[historyCollection/* NOTIFICATION_TEXT_TYPE */.Px.OVER_MENTIONS_LIMIT] = function () {
        return ((0,jsx_runtime.jsx)("b", { children: l('You\'ve ran out of your monthly mentions limit. Contact support if you need more.', 'historyCollection') }));
    },
    _a);
var preventRerender = function (prevProps, nextProps) { return nextProps.isLoading; };
/* harmony default export */ const components_HistoryCollectionNotification = ((0,react.memo)(HistoryCollectionNotification_HistoryCollectionNotification, preventRerender));

;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryPeriod.tsx




var HistoryPeriod = function (_a) {
    var from = _a.from, to = _a.to;
    return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(WithUserTimeZone/* default */.A, { children: function (timeZone) { return (0,timeUtils/* getTimeWithTimeZone */.vP)({
                    timeZone: timeZone,
                    dateTime: from,
                    format: 'L',
                }); } }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "-", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(WithUserTimeZone/* default */.A, { children: function (timeZone) { return (0,timeUtils/* getTimeWithTimeZone */.vP)({
                    timeZone: timeZone,
                    dateTime: to,
                    format: 'L',
                }); } })] }));
};
/* harmony default export */ const components_HistoryPeriod = (HistoryPeriod);

;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionProgress.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const HistoryCollectionProgress = ({"base":"MFjjwgZGKijd5V1RXslx","progressContainer":"EcOvHt_JfEVtFYqqBrFY","bar":"pxH8snZgmI90qOXgiO3w","progressInfoContainer":"oDNcj0oAmtDhCUZKLJk3","inlineBlock":"zJGQNbjUD4bAX5HEX4OQ","savedAmountMessage":"HuHcwkncTelLlKOr1Pis","header":"YgDOjRZ7j4cuCFa2SKpL","content":"cxFDv15OsSaviVXRSpq0","hidden":"j4aQSz74nwMiYspBq1T3"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionProgress.tsx
var HistoryCollectionProgress_assign = (undefined && undefined.__assign) || function () {
    HistoryCollectionProgress_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HistoryCollectionProgress_assign.apply(this, arguments);
};










var HistoryCollectionProgress_MODAL_MAX_WIDTH = 550;
var showAbortModal = function (_a) {
    var saved = _a.saved, onStopHistoryCollection = _a.onStopHistoryCollection;
    (0,utils_confirm/* default */.A)({
        message: ((0,jsx_runtime.jsxs)("div", HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.content }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.header }, { children: l('If you stop historical data collection, it cannot be resumed', 'historyCollection') })), l('We have already saved', 'historyCollection'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), sprintf(nl('%d mention', '%d mentions', saved, 'historyCollection'), saved), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('in your topic', 'historyCollection'), ".", (0,jsx_runtime.jsx)("br", {})] }))),
        actionLabel: l('Stop collection', 'historyCollection'),
        buttonType: 'primary',
        maxModalWidth: HistoryCollectionProgress_MODAL_MAX_WIDTH,
    }).then(onStopHistoryCollection);
};
var HistoryCollectionProgress_HistoryCollectionProgress = function (_a) {
    var _b;
    var from = _a.from, to = _a.to, savedAmount = _a.savedAmount, progress = _a.progress, isHistoryStopAllowed = _a.isHistoryStopAllowed, onStopHistoryCollection = _a.onStopHistoryCollection;
    var showModal = function () { return showAbortModal({
        saved: savedAmount,
        onStopHistoryCollection: onStopHistoryCollection,
    }); };
    return ((0,jsx_runtime.jsxs)("div", HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.base }, { children: [(0,jsx_runtime.jsxs)("div", HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.progressContainer }, { children: [(0,jsx_runtime.jsxs)("div", HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.progressInfoContainer }, { children: [(0,jsx_runtime.jsxs)("span", HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.inlineBlock }, { children: ["".concat(l('Started collection for', 'historyCollectionProgress'), " "), (0,jsx_runtime.jsx)(components_HistoryPeriod, { from: from, to: to })] })), (0,jsx_runtime.jsx)("span", HistoryCollectionProgress_assign({ className: classnames_default()(HistoryCollectionProgress.inlineBlock, HistoryCollectionProgress.savedAmountMessage) }, { children: savedAmount ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("b", { children: numeral_default()(savedAmount).format('0,0') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), nl('mention', 'mentions', savedAmount, 'historyCollection'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('saved', 'historyCollection')] })) : ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: l('Collecting mentions...', 'historyCollection') })) }))] })), (0,jsx_runtime.jsx)("div", HistoryCollectionProgress_assign({ className: HistoryCollectionProgress.bar }, { children: (0,jsx_runtime.jsx)(Progressbar/* default */.A, { visibleProgress: true, selected: progress, total: 100 }) }))] })), (0,jsx_runtime.jsx)(Button/* default */.A, { className: classnames_default()((_b = {},
                    _b[HistoryCollectionProgress.hidden] = !isHistoryStopAllowed,
                    _b)), danger: true, ghost: true, label: l('Stop', 'historyCollection'), onClick: showModal })] })));
};
/* harmony default export */ const components_HistoryCollectionProgress = (HistoryCollectionProgress_HistoryCollectionProgress);

// EXTERNAL MODULE: ./src/components/helpers/Loader/Loader.tsx + 1 modules
var Loader_Loader = __webpack_require__("5+yk");
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionPanel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const HistoryCollectionPanel = ({"card":"wsRmzP3JBsWVPFKfT3rX","title":"xIawW8mwBL4ez4yDDvkF","limits":"IYIf1p1EHXJ8VUjZuy6f","limit":"JKLze33zj3X0FpaWSIrL","disabled":"CpV0EZlCd1Jkx_L8P5qA","collectionControls":"X1TtoH2MTxZ8cAEG_etl"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionPanel.tsx
var HistoryCollectionPanel_assign = (undefined && undefined.__assign) || function () {
    HistoryCollectionPanel_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HistoryCollectionPanel_assign.apply(this, arguments);
};
var HistoryCollectionPanel_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var HistoryCollectionPanel_HistoryCollectionPanel = function (_a) {
    var _b;
    var _c;
    var title = _a.title, _d = _a.historySource, historySource = _d === void 0 ? Topic/* HistorySources */.J9.ELASTIC : _d, historyInfo = _a.historyInfo, historyStatus = _a.historyStatus, historyProgress = _a.historyProgress, historyCollectionValidation = _a.historyCollectionValidation, topicId = _a.topicId, collectionsLimit = _a.collectionsLimit, collectionsUsed = _a.collectionsUsed, isValidationLoading = _a.isValidationLoading, isCollectingOnBackend = _a.isCollectingOnBackend, onValidateHistoryCollection = _a.onValidateHistoryCollection, onCollectHistory = _a.onCollectHistory, onStopCollectHistory = _a.onStopCollectHistory, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _e = HistoryCollectionPanel_read((0,react.useState)(false), 2), isHistoryCollecting = _e[0], setIsHistoryCollecting = _e[1];
    var _f = HistoryCollectionPanel_read((0,react.useState)(true), 2), isDisabled = _f[0], setIsDisabled = _f[1];
    var currentDate = new Date();
    var monthAgoDate = (0,sub/* default */.A)(currentDate, { days: 30 });
    var _g = HistoryCollectionPanel_read((0,react.useState)({
        from: monthAgoDate,
        to: (0,endOfDay/* default */.A)(currentDate),
    }), 2), period = _g[0], setPeriod = _g[1];
    (0,react.useEffect)(function () {
        onValidateHistoryCollection(period);
    }, [period, historyStatus]);
    (0,react.useEffect)(function () {
        if (historyStatus === historyCollection/* HISTORY_STATUS */.W5.COMPLETED) {
            setIsHistoryCollecting(false);
        }
        if (historyStatus === historyCollection/* HISTORY_STATUS */.W5.ABORTED) {
            setIsHistoryCollecting(false);
        }
        if (historyStatus === historyCollection/* HISTORY_STATUS */.W5.COLLECTING) {
            setIsHistoryCollecting(true);
        }
    }, [historyStatus]);
    var notificationCode = (_c = historyCollectionValidation === null || historyCollectionValidation === void 0 ? void 0 : historyCollectionValidation.notificationText) === null || _c === void 0 ? void 0 : _c[0];
    (0,react.useEffect)(function () {
        if (!historyCollectionValidation) {
            return;
        }
        var isPeriodPickerDisabled = historyCollection/* DISABLED_PANEL_NOTIFICATIONS */.Nd.includes(notificationCode);
        setIsDisabled(isPeriodPickerDisabled);
    }, [notificationCode, historyCollectionValidation]);
    var handleUpdatePeriod = function (_a) {
        var updatedFrom = _a.from, updatedTo = _a.to;
        setPeriod({
            from: updatedFrom,
            to: (0,endOfDay/* default */.A)(updatedTo),
        });
        sendAnalyticalEvent({ eventType: 'History collection: dates selected' });
    };
    var handleCollectHistory = function () {
        setIsHistoryCollecting(true);
        onCollectHistory({
            from: period.from,
            to: period.to,
            historySource: historySource,
        });
    };
    var handleStopCollectHistory = function () {
        setIsHistoryCollecting(false);
        onStopCollectHistory(historySource);
    };
    var isLimitsConsidered = !!Number(collectionsLimit);
    var renderLimits = function () { return ((0,jsx_runtime.jsxs)("div", HistoryCollectionPanel_assign({ className: HistoryCollectionPanel.limits }, { children: [collectionsUsed, (0,jsx_runtime.jsxs)("span", HistoryCollectionPanel_assign({ className: HistoryCollectionPanel.limit }, { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), "/ ", collectionsLimit] }))] }))); };
    var renderCollectionControls = function () {
        var _a;
        return ((0,jsx_runtime.jsxs)("div", HistoryCollectionPanel_assign({ className: classnames_default()(HistoryCollectionPanel.collectionControls, (_a = {}, _a[HistoryCollectionPanel.disabled] = isDisabled, _a)) }, { children: [(0,jsx_runtime.jsx)(Calendar/* default */.A, { showPresetRanges: true, position: "right", isDisabled: isDisabled, period: period, onChange: handleUpdatePeriod }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Start collection', 'historyCollection'), loading: isValidationLoading, disabled: isValidationLoading || !(historyCollectionValidation === null || historyCollectionValidation === void 0 ? void 0 : historyCollectionValidation.isAllowed) || isDisabled, onClick: handleCollectHistory })] })));
    };
    var renderHistoryCollectionValidation = function () { return ((0,jsx_runtime.jsx)(components_HistoryCollectionNotification, { isLoading: isValidationLoading, notificationCode: notificationCode, topicId: topicId, sendAnalyticalEvent: sendAnalyticalEvent })); };
    var renderHistoryCollectionProgress = function () {
        var _a = HistoryCollectionPanel_read([
            historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.from,
            historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.to,
            (historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.saved) || 0
        ], 3), lastHistoryFrom = _a[0], lastHistoryTo = _a[1], lastHistorySaved = _a[2];
        return ((0,jsx_runtime.jsx)(Loader_Loader/* default */.A, HistoryCollectionPanel_assign({ className: HistoryCollectionPanel.collectionInfo, loaded: isCollectingOnBackend }, { children: (0,jsx_runtime.jsx)(components_HistoryCollectionProgress, { from: lastHistoryFrom, to: lastHistoryTo, savedAmount: lastHistorySaved, progress: historyProgress, isHistoryStopAllowed: isCollectingOnBackend, onStopHistoryCollection: handleStopCollectHistory }) })));
    };
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, HistoryCollectionPanel_assign({ fullWidth: true, className: HistoryCollectionPanel.card }, { children: [(0,jsx_runtime.jsxs)(H2/* default */.A, HistoryCollectionPanel_assign({ className: classnames_default()(HistoryCollectionPanel.title, (_b = {}, _b[HistoryCollectionPanel.disabled] = isDisabled, _b)) }, { children: [title, isLimitsConsidered && renderLimits()] })), !isHistoryCollecting && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [renderCollectionControls(), renderHistoryCollectionValidation()] })), isHistoryCollecting && renderHistoryCollectionProgress()] })));
};
HistoryCollectionPanel_HistoryCollectionPanel.Disabled = function (_a) {
    var title = _a.title, message = _a.message;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, HistoryCollectionPanel_assign({ fullWidth: true, className: HistoryCollectionPanel.card }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, HistoryCollectionPanel_assign({ className: classnames_default()(HistoryCollectionPanel.title, HistoryCollectionPanel.disabled) }, { children: title })), message] })));
};
/* harmony default export */ const components_HistoryCollectionPanel = (HistoryCollectionPanel_HistoryCollectionPanel);

;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionResults.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const HistoryCollectionResults = ({"mainResults":"nbLp8Wm_dPCThjTCP1px","rejectedResults":"WRxdEi_rw3G37Rp6kGsm"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/HistoryCollectionResults.tsx
var HistoryCollectionResults_assign = (undefined && undefined.__assign) || function () {
    HistoryCollectionResults_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HistoryCollectionResults_assign.apply(this, arguments);
};




var HistoryCollectionResults_HistoryCollectionResults = function (_a) {
    var _b = _a.saved, saved = _b === void 0 ? 0 : _b, rejected = _a.rejected, from = _a.from, to = _a.to;
    var formattedSaved = numeral_default()(saved).format('0,0');
    var formattedRejected = numeral_default()(rejected).format('0,0');
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)("p", HistoryCollectionResults_assign({ className: HistoryCollectionResults.mainResults }, { children: [formattedSaved, " ".concat(nl('mention', 'mentions', saved, 'historyCollection')), " ".concat(l('were saved in the topic for', 'historyCollection'), " "), (0,jsx_runtime.jsx)(components_HistoryPeriod, { from: from, to: to })] })), Boolean(rejected) && ((0,jsx_runtime.jsxs)("p", HistoryCollectionResults_assign({ className: HistoryCollectionResults.rejectedResults }, { children: [formattedRejected, " ".concat(nl('mention', 'mentions', rejected, 'historyCollection')), " ".concat(l('were rejected. We do not save data if it has already been in the topic.', 'historyCollection'))] })))] }));
};
/* harmony default export */ const components_HistoryCollectionResults = (HistoryCollectionResults_HistoryCollectionResults);

;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/CollectionInfoCard.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CollectionInfoCard = ({"buttonContainer":"KQpKl5XczqEtCvQv0mlC","historiesButton":"ro3N8v8JHUQ1ax9Lbgnz","resultsMessageContainer":"tHzp710mAWAB_gMsfjUr","card":"t7fWJNC3dgURy_m12hBV","historiesHeader":"qFVHcNfbOyUYvNtpSSar","historiesTitle":"GFB5KcMMvFIX0H16izIh"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/components/CollectionInfoCard.tsx
var CollectionInfoCard_assign = (undefined && undefined.__assign) || function () {
    CollectionInfoCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CollectionInfoCard_assign.apply(this, arguments);
};








var CollectionInfoCard_CollectionInfoCard = function (_a) {
    var historyInfo = _a.historyInfo, hasHistoryCollections = _a.hasHistoryCollections, onShowHistoryCollections = _a.onShowHistoryCollections;
    var renderHistoryButton = function () { return ((0,jsx_runtime.jsx)("div", CollectionInfoCard_assign({ className: CollectionInfoCard.buttonContainer }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { className: CollectionInfoCard.historiesButton, primary: true, ghost: true, size: "small", label: ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('All collections', 'historyCollection'), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-right", size: "large" })] })), onClick: onShowHistoryCollections }) }))); };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, CollectionInfoCard_assign({ fullWidth: true }, { children: (0,jsx_runtime.jsxs)(Loader_Loader/* default */.A, CollectionInfoCard_assign({ loaded: historyInfo !== null, className: CollectionInfoCard.card }, { children: [(0,jsx_runtime.jsxs)("div", CollectionInfoCard_assign({ className: CollectionInfoCard.historiesHeader }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, CollectionInfoCard_assign({ className: CollectionInfoCard.historiesTitle }, { children: l('Latest collection', 'historyCollection') })), hasHistoryCollections && renderHistoryButton()] })), (0,jsx_runtime.jsx)("div", CollectionInfoCard_assign({ className: CollectionInfoCard.resultsMessageContainer }, { children: (0,jsx_runtime.jsx)(components_HistoryCollectionResults, { saved: historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.saved, rejected: (historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.skipped) + (historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.duplicates), from: historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.from, to: historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.to }) }))] })) })));
};
/* harmony default export */ const components_CollectionInfoCard = (CollectionInfoCard_CollectionInfoCard);

;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/HistoryCollection.tsx
var HistoryCollection_assign = (undefined && undefined.__assign) || function () {
    HistoryCollection_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return HistoryCollection_assign.apply(this, arguments);
};

/* eslint-disable no-shadow */














var THEME_DATA_POLLING_FREQUENCY = 3000;
var HistoryCollectionContainer = function (_a) {
    var themeId = _a.themeId, historyInfo = _a.historyInfo, isHistoryCollecting = _a.isHistoryCollecting, isHistoryValidationLoading = _a.isHistoryValidationLoading, historyCollectionValidation = _a.historyCollectionValidation, previousHistoryCollections = _a.previousHistoryCollections, sendAnalyticalEvent = _a.sendAnalyticalEvent, fetchThemeHistoryData = _a.fetchThemeHistoryData, collectCustomHistory = _a.collectCustomHistory, fetchAccountHistoryStats = _a.fetchAccountHistoryStats, validateHistoryCollection = _a.validateHistoryCollection, stopHistoryCollection = _a.stopHistoryCollection, showModal = _a.showModal;
    (0,react.useEffect)(function () {
        fetchAccountHistoryStats();
        var timer = setInterval(handleFetchHistoryData, THEME_DATA_POLLING_FREQUENCY);
        return function () {
            clearInterval(timer);
        };
    }, []);
    var handleFetchHistoryData = function () {
        fetchThemeHistoryData({ themeId: themeId });
    };
    var handleCustomCollectionStart = function (params) {
        collectCustomHistory(HistoryCollection_assign({ themeId: themeId }, params));
    };
    var handleValidateHistoryCollection = function (params) {
        validateHistoryCollection(HistoryCollection_assign({ themeId: themeId }, params));
    };
    var handleShowHistoryCollections = function () {
        showModal('historyCollections');
    };
    var handleStopHistoryCollection = function (historySource) {
        if (historySource === void 0) { historySource = Topic/* HistorySources */.J9.ELASTIC; }
        stopHistoryCollection({ themeId: themeId, historySource: historySource });
    };
    var HISTORY_COLLECTION_TITLE = l('History collection', 'historyCollection');
    var collectionsInfo = previousHistoryCollections;
    var renderView = function () {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_HistoryCollectionPanel, { title: HISTORY_COLLECTION_TITLE, historyInfo: historyInfo, historyStatus: historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.status, historyProgress: historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.progress, historyCollectionValidation: historyCollectionValidation, topicId: themeId, isValidationLoading: isHistoryValidationLoading, isCollectingOnBackend: isHistoryCollecting, onValidateHistoryCollection: handleValidateHistoryCollection, onCollectHistory: handleCustomCollectionStart, onStopCollectHistory: handleStopHistoryCollection, sendAnalyticalEvent: sendAnalyticalEvent }), collectionsInfo && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_CollectionInfoCard, { historyInfo: collectionsInfo[0], hasHistoryCollections: collectionsInfo.length !== 0, onShowHistoryCollections: handleShowHistoryCollections })] }))] }));
    };
    return renderView();
};
/* harmony default export */ const HistoryCollection = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    historyCollectionValidation: (0,themes_selectors/* getHistoryCollectionValidation */.S$)(state),
    historyInfo: (0,themes_selectors/* getHistoryInfo */.Lf)(state),
    isHistoryCollecting: (0,themes_selectors/* isHistoryCollecting */.bb)(state),
    isHistoryStatsLoading: (0,account_selectors/* isAccountHistoryStatsLoading */.t8)(state),
    isHistoryValidationLoading: (0,themes_selectors/* isHistoryCollectionValidationLoading */.yQ)(state),
    isPaidHistoryCollectionAllowed: (0,themes_selectors/* canRunPaidHistoryCollection */.mS)(state),
    previousHistoryCollections: (0,themes_selectors/* getPreviousHistoryCollections */.xp)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    accountOrigin: (0,account_selectors/* getAccountOrigin */.wr)(state),
    currentUserFullName: (0,currentUser_selectors/* getCurrentUserFullName */.Ro)(state),
}); }, {
    fetchThemeHistoryData: themes_model/* themesModel */.i.action.fetchThemeHistoryData,
    collectCustomHistory: themes_model/* themesModel */.i.action.collectCustomHistory,
    fetchAccountHistoryStats: account_model/* accountModel */.h.action.fetchAccountHistoryStats,
    validateHistoryCollection: themes_model/* themesModel */.i.action.validateHistoryCollection,
    resetHistoryCollectionValidation: themes_model/* themesModel */.i.action.resetHistoryCollectionValidation,
    stopHistoryCollection: themes_model/* themesModel */.i.action.stopHistoryCollection,
    showModal: modals_actions/* showModal */.to,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(HistoryCollectionContainer));

;// CONCATENATED MODULE: ./src/containers/themeSettings/HistoryCollection/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/EngagementCollection/components/EngagementCollection.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_EngagementCollection = ({"base":"umc2qzObXY4KT3s3sMTh"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/EngagementCollection/components/EngagementCollection.js






function EngagementCollection_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, EngagementCollection_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function EngagementCollection_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (EngagementCollection_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }








var EngagementCollection = /*#__PURE__*/function (_PureComponent) {
  function EngagementCollection() {
    var _this;
    (0,classCallCheck/* default */.A)(this, EngagementCollection);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = EngagementCollection_callSuper(this, EngagementCollection, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      from: moment_default()().subtract(1, 'months').startOf('day').toDate(),
      to: moment_default()().startOf('day').toDate()
    });
    (0,defineProperty/* default */.A)(_this, "handlePeriodChange", function (_ref) {
      var from = _ref.from,
        to = _ref.to;
      _this.setState({
        from: from,
        to: to
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCollect", function () {
      var _this$state = _this.state,
        from = _this$state.from,
        to = _this$state.to;
      _this.props.onCollect({
        from: from,
        to: moment_default()(to).endOf('day').toDate()
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(EngagementCollection, _PureComponent);
  return (0,createClass/* default */.A)(EngagementCollection, [{
    key: "render",
    value: function render() {
      var _this$state2 = this.state,
        from = _this$state2.from,
        to = _this$state2.to;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_EngagementCollection.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Calendar/* default */.A, {
          showPresetRanges: true,
          period: {
            from: from,
            to: to
          },
          onChange: this.handlePeriodChange
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(ButtonBar/* default */.A, {
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            label: l('Collect engagement'),
            onClick: this.handleCollect
          })
        })]
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/themeSettings/EngagementCollection/EngagementCollection.js






var EngagementCollectionContainer = function EngagementCollectionContainer(_ref) {
  var themeId = _ref.themeId,
    collectEngagement = _ref.collectEngagement;
  var handleCollect = function handleCollect(_ref2) {
    var from = _ref2.from,
      to = _ref2.to;
    collectEngagement({
      themeId: themeId,
      from: from,
      to: to
    });
    (0,utils_alert/* default */.A)({
      title: l('Engagement collection started'),
      message: l('The engagement collection process for given date period was started and will take some time')
    });
  };
  return /*#__PURE__*/(0,jsx_runtime.jsx)(EngagementCollection, {
    onCollect: handleCollect
  });
};
/* harmony default export */ const EngagementCollection_EngagementCollection = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state)
  };
}, {
  collectEngagement: themes_model/* themesModel */.i.action.collectEngagement
})(EngagementCollectionContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/EngagementCollection/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/CollectionSettings/CollectionSettings.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CollectionSettings_CollectionSettings = ({"collectionContainer":"PYQL3oSqfwEXurwa01Pf","educationalCard":"f_9QxtA7S6_Uu5Zqgkle"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/CollectionSettings/CollectionSettings.js






function CollectionSettings_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, CollectionSettings_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function CollectionSettings_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (CollectionSettings_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }


















var CollectionSettings = /*#__PURE__*/function (_PureComponent) {
  function CollectionSettings() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CollectionSettings);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = CollectionSettings_callSuper(this, CollectionSettings, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleEducationalInfoClick", function (_ref) {
      var link = _ref.link;
      window.open(link, '_blank');
    });
    return _this;
  }
  (0,inherits/* default */.A)(CollectionSettings, _PureComponent);
  return (0,createClass/* default */.A)(CollectionSettings, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        accountCoverage = _this$props.accountCoverage,
        showEngagementCollection = _this$props.showEngagementCollection,
        hasUnlimitedHistoryCollection = _this$props.hasUnlimitedHistoryCollection,
        userLanguage = _this$props.userLanguage;
      var educationalMaterials = (0,historyCollection/* getHistoryCollectionEducationalMaterials */.Iy)({
        accountCoverage: accountCoverage,
        hasUnlimitedHistoryCollection: hasUnlimitedHistoryCollection,
        userLanguage: userLanguage
      });
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
          className: classnames_default()(CollectionSettings_CollectionSettings.collectionContainer),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(HistoryCollection, {
            hasUnlimitedHistoryCollection: hasUnlimitedHistoryCollection
          })
        }), showEngagementCollection && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(H2/* default */.A, {
              children: [l('Engagement collection'), /*#__PURE__*/(0,jsx_runtime.jsx)(Badge/* default */.A.Support, {})]
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(EngagementCollection_EngagementCollection, {})]
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(EducationalInfo/* default */.A, {
          cardClassName: classnames_default()(CollectionSettings_CollectionSettings.educationalCard),
          title: l('History Collection in the Knowledge Base'),
          cards: educationalMaterials,
          handleLinkClick: this.handleEducationalInfoClick
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const themeSettings_CollectionSettings_CollectionSettings = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    accountCoverage: (0,account_selectors/* getAccountCoverage */.Om)(state),
    showEngagementCollection: (0,currentUser_selectors/* isSupportUser */.x3)(state),
    hasUnlimitedHistoryCollection: (0,themes_selectors/* hasUnlimitedHistory */.GF)(state),
    userLanguage: (0,currentUser_selectors/* getUserLanguage */.mf)(state)
  };
}))(CollectionSettings));
;// CONCATENATED MODULE: ./src/containers/themeSettings/CollectionSettings/index.js

// EXTERNAL MODULE: ./src/state/authors/selectors.ts + 1 modules
var authors_selectors = __webpack_require__("SEw9");
;// CONCATENATED MODULE: ./src/state/sources/selectors.ts
var getExcludedSources = function (state) { return state.sources.data; };
/* harmony default export */ const sources_selectors = ((/* unused pure expression or super */ null && (getExcludedSources)));

;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/components/List.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const List = ({"overlayedBlock":"s98MA8Kfl3WmotEFbA31","flexCenter":"KJRNPqzlsk3YdC8ycrwC","smartFeature":"INhBfv2i2pQnyZFzhOUA","tag":"qT9rdJTSRRubWsmlemkZ","visibleScrollBar":"NO3GKAm6DOj4JQRS5DLb","hiddenScrollBar":"dp1ucE8FvDoESVmSCNep","base":"HoJyuNU6RYyiNFqZObB3","search":"_Cnoopfp532hEeoOM_mQ","listActions":"sSOAva5L8xQOlSno98kp","sort":"N3nsLv4egH69KyfJEOoQ","sortSelect":"x5ySssEUTaIUNcBLRy_l","author":"NxLdXj37QKC0tgtk1CIg","channel":"xjDBR7nRy68DOvDldHJe","source":"dHJfvHk_5IAMTaaBgs2H","avatar":"mXsfnQWxK0RSOIJNJbHh","name":"k41erUh24D2xLadb1H2_","sourceName":"wr5Y4E6TTNEHO6TLzc88","excludedSourceName":"Ilmn2tfPsCk6BpG0k5Aj","type":"rkLfGUevJWjIEOwnfHVh","subscribers":"r7iyFuPQaa7INE3zshzQ","button":"vcdTl66mBFsG1RLvEXfW"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/components/ExcludedAuthor.js







var ExcludedAuthor_AVATAR_SIZE = 40;
var ExcludedAuthor = function ExcludedAuthor(_ref) {
  var author = _ref.author,
    onRestore = _ref.onRestore;
  var handleRestore = function handleRestore() {
    if (onRestore) {
      onRestore(author.uid);
    }
  };
  var getAuthorType = function getAuthorType(type) {
    if (type === 'person') {
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: l('Person', 'profile')
      });
    }
    if (type === 'community') {
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        children: l('Community')
      });
    }
    return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      children: "-"
    });
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(List.author),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.avatar),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(Avatar/* default */.A, {
        rounded: true,
        imageUrl: author.avatarUrl,
        size: ExcludedAuthor_AVATAR_SIZE
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.name),
      title: author.name,
      children: author.name
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(List.sourceName),
      title: author.source,
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
        name: author.source
      }), author.source]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.type),
      children: getAuthorType(author.type)
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.subscribers),
      children: author.subscribers > 0 ? sprintf(nl('%d subscriber', '%d subscribers', author.subscribers), author.subscribers) : '-'
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.button),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        size: "small",
        label: l('Restore'),
        onClick: handleRestore
      })
    })]
  });
};
/* harmony default export */ const components_ExcludedAuthor = (/*#__PURE__*/(0,react.memo)(ExcludedAuthor));
;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/components/ChannelsList.js











var ChannelsList_EmptyState = function EmptyState(_ref) {
  var filter = _ref.filter;
  if (filter) {
    return /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
      image: "/static/images/empty_search.png",
      title: l('No publication places were found'),
      message: l('No excluded publication places with given name')
    });
  }
  return /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
    image: "/static/images/no_exclusions.png",
    title: l('No publication places'),
    message: l('Looks like you haven\'t excluded any publication places yet')
  });
};
var ChannelsList = function ChannelsList(_ref2) {
  var excludedChannels = _ref2.excludedChannels,
    onRestore = _ref2.onRestore;
  var _useState = (0,react.useState)(''),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    filter = _useState2[0],
    handleChangeFilter = _useState2[1];
  var handleRestore = function handleRestore(channelId) {
    onRestore(channelId);
  };
  var getChannelsToDisplay = function getChannelsToDisplay() {
    return excludedChannels && excludedChannels.filter(function (channel) {
      return "".concat(channel.name).toLowerCase().includes(filter.toLowerCase());
    });
  };
  var excludedChannelsToShow = getChannelsToDisplay();
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(List.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.search),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
        leftIcon: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: "search"
        }),
        placeholder: l('Search'),
        value: filter,
        onChange: handleChangeFilter
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
      "double": true
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
      loaded: excludedChannelsToShow,
      empty: excludedChannelsToShow && !excludedChannelsToShow.length,
      emptyStateTitle: /*#__PURE__*/(0,jsx_runtime.jsx)(ChannelsList_EmptyState, {
        filter: filter
      }),
      children: excludedChannelsToShow && excludedChannelsToShow.map(function (channel) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(components_ExcludedAuthor, {
          author: channel,
          onRestore: handleRestore
        }, channel.uid);
      })
    })]
  });
};
/* harmony default export */ const components_ChannelsList = (/*#__PURE__*/(0,react.memo)(ChannelsList));
;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/components/AuthorsList.tsx
var AuthorsList_assign = (undefined && undefined.__assign) || function () {
    AuthorsList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorsList_assign.apply(this, arguments);
};











var AuthorsList_EmptyState = function (_a) {
    var search = _a.search;
    if (search) {
        return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/empty_search.png", title: l('No authors were found'), message: l('No excluded authors with given name') }));
    }
    return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/no_exclusions.png", title: l('No authors'), message: l('Looks like you haven\'t excluded any authors yet') }));
};
var AuthorsList = function (_a) {
    var search = _a.search, sortType = _a.sortType, excludedAuthors = _a.excludedAuthors, onSearch = _a.onSearch, onSortChange = _a.onSortChange, onRestore = _a.onRestore;
    var handleRestore = function (authorId) {
        onRestore(authorId);
    };
    var sortTypes = [
        { value: 'DATE', label: l('date of exclusion', 'authorsSort') },
        { value: 'NAME', label: l('name', 'authorsSort') },
        { value: 'SUBSCRIBERS', label: l('number of subscribers', 'authorsSort') }
    ];
    var hasAuthors = excludedAuthors && excludedAuthors.length;
    return ((0,jsx_runtime.jsxs)("div", AuthorsList_assign({ className: classnames_default()(List.base) }, { children: [(0,jsx_runtime.jsxs)("div", AuthorsList_assign({ className: classnames_default()(List.listActions) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), placeholder: l('Search'), value: search, onChange: onSearch }), !!hasAuthors
                        && ((0,jsx_runtime.jsxs)("div", AuthorsList_assign({ className: classnames_default()(List.sort) }, { children: [l('Sort by'), (0,jsx_runtime.jsx)(Select/* default */.A, { className: classnames_default()(List.sortSelect), value: sortTypes.find(function (opt) { return opt.value === sortType; }), isClearable: false, placeholder: l('default'), options: sortTypes, onChange: onSortChange })] })))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(Loader/* default */.A, AuthorsList_assign({ loaded: !!excludedAuthors, empty: !hasAuthors, emptyStateTitle: (0,jsx_runtime.jsx)(AuthorsList_EmptyState, { search: search }) }, { children: excludedAuthors
                    && excludedAuthors.map(function (author) { return ((0,jsx_runtime.jsx)(components_ExcludedAuthor, { author: author, onRestore: handleRestore }, author.uid)); }) }))] })));
};
/* harmony default export */ const components_AuthorsList = ((0,react.memo)(AuthorsList));

;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/components/SourcesList.js












var SourcesList_EmptyState = function EmptyState(_ref) {
  var filter = _ref.filter;
  if (filter) {
    return /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
      image: "/static/images/empty_search.png",
      title: l('No sources were found'),
      message: l('No excluded sources with given name')
    });
  }
  return /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
    image: "/static/images/no_exclusions.png",
    title: l('No sources'),
    message: l('Looks like you haven\'t excluded any sources yet')
  });
};
var SourcesList = function SourcesList(_ref2) {
  var excludedSources = _ref2.excludedSources,
    onRestore = _ref2.onRestore;
  var _useState = (0,react.useState)(''),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    filter = _useState2[0],
    handleChangeFilter = _useState2[1];
  var getSourcesToDisplay = function getSourcesToDisplay() {
    return excludedSources && excludedSources.filter(function (source) {
      return "".concat(source.name).toLowerCase().includes(filter.toLowerCase());
    });
  };
  var handleRestore = function handleRestore(sourceName) {
    return function () {
      onRestore(sourceName);
    };
  };
  var excludedSourcesToShow = getSourcesToDisplay();
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(List.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(List.search),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
        leftIcon: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
          type: "search"
        }),
        placeholder: l('Search'),
        value: filter,
        onChange: handleChangeFilter
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
      "double": true
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
      loaded: excludedSourcesToShow,
      empty: excludedSourcesToShow && !excludedSourcesToShow.length,
      emptyStateTitle: /*#__PURE__*/(0,jsx_runtime.jsx)(SourcesList_EmptyState, {}),
      children: excludedSourcesToShow && excludedSourcesToShow.map(function (source) {
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(List.source),
          children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(List.excludedSourceName),
            title: source.name,
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
              name: source.name
            }), source.name]
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(List.button),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              size: "small",
              label: l('Restore'),
              onClick: handleRestore(source.name)
            })
          })]
        }, source.id);
      })
    })]
  });
};
/* harmony default export */ const components_SourcesList = (/*#__PURE__*/(0,react.memo)(SourcesList));
;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/ExclusionsRecovery.tsx
var ExclusionsRecovery_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var ExclusionsRecovery_assign = (undefined && undefined.__assign) || function () {
    ExclusionsRecovery_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ExclusionsRecovery_assign.apply(this, arguments);
};

/*
    eslint
        react/jsx-no-bind: 0
*/

















var ExclusionsRecovery = /** @class */ (function (_super) {
    ExclusionsRecovery_extends(ExclusionsRecovery, _super);
    function ExclusionsRecovery() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            key: 0,
        };
        _this.handleAuthorsSortChange = function (_a) {
            var value = _a.value;
            _this.props.sortExcludedAuthors({ sortType: value });
        };
        _this.handleAuthorsSearch = function (searchQuery) {
            _this.props.searchExcludedAuthors({ searchQuery: searchQuery });
        };
        _this.handleRestoreAuthor = function (authorId) {
            var themeId = _this.props.themeId;
            _this.props.restoreExcludedAuthor({ themeId: themeId, authorId: authorId });
        };
        _this.handleRestoreSource = function (sourceName) {
            var themeId = _this.props.themeId;
            _this.props.restoreExcludedSource({ themeId: themeId, sourceName: sourceName });
        };
        _this.handleRestoreChannel = function (channelId) {
            var themeId = _this.props.themeId;
            _this.props.restoreExcludedChannel({ themeId: themeId, channelId: channelId });
        };
        return _this;
    }
    ExclusionsRecovery.prototype.componentDidMount = function () {
        var themeId = this.props.themeId;
        this.props.fetchThemeExclusions({ themeId: themeId });
    };
    ExclusionsRecovery.prototype.componentDidUpdate = function (prevProps) {
        var _a = this.props, themeId = _a.themeId, excludedAuthors = _a.excludedAuthors, excludedChannels = _a.excludedChannels, excludedSources = _a.excludedSources, sendAnalyticalEvent = _a.sendAnalyticalEvent;
        if (prevProps.themeId !== themeId) {
            this.props.fetchThemeExclusions({ themeId: themeId });
        }
        if (!prevProps.excludedAuthors && excludedAuthors) {
            sendAnalyticalEvent({
                eventType: 'Excluded authors: page loaded',
                properties: { isEmpty: !excludedAuthors.length },
            });
        }
        if (!prevProps.excludedChannels && excludedChannels) {
            sendAnalyticalEvent({
                eventType: 'Excluded channels: page loaded',
                properties: { isEmpty: !excludedChannels.size },
            });
        }
        if (!prevProps.excludedSources && excludedSources) {
            sendAnalyticalEvent({
                eventType: 'Excluded sources: page loaded',
                properties: { isEmpty: excludedSources.length === 0 },
            });
        }
    };
    ExclusionsRecovery.prototype.render = function () {
        var _this = this;
        var _a = this.props, authorsSearchQuery = _a.authorsSearchQuery, authorsSortType = _a.authorsSortType, excludedAuthors = _a.excludedAuthors, excludedChannels = _a.excludedChannels, excludedSources = _a.excludedSources;
        var tabsConfig = [
            {
                key: 'authors',
                title: l('Authors'),
                content: ((0,jsx_runtime.jsx)(components_AuthorsList, { search: authorsSearchQuery, sortType: authorsSortType, excludedAuthors: excludedAuthors, onSearch: this.handleAuthorsSearch, onSortChange: this.handleAuthorsSortChange, onRestore: this.handleRestoreAuthor })),
            },
            {
                key: 'channels',
                title: l('Publication places'),
                content: ((0,jsx_runtime.jsx)(components_ChannelsList, { excludedChannels: excludedChannels, onRestore: this.handleRestoreChannel })),
            },
            {
                key: 'sources',
                title: l('Sources'),
                content: ((0,jsx_runtime.jsx)(components_SourcesList, { excludedSources: excludedSources, onRestore: this.handleRestoreSource })),
            }
        ];
        return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Excluded') }), (0,jsx_runtime.jsx)(Card/* default */.A, ExclusionsRecovery_assign({ noPadding: true }, { children: (0,jsx_runtime.jsx)(ui_Tabs_Tabs, { fullWidth: true, tabsConfig: tabsConfig, selectedIndex: this.state.key, onSelect: function (key) { return _this.setState({ key: key }); } }) }))] }));
    };
    return ExclusionsRecovery;
}(react.PureComponent));
/* harmony default export */ const ExclusionsRecovery_ExclusionsRecovery = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    authorsSearchQuery: (0,authors_selectors/* getSearchQuery */.V8)(state),
    authorsSortType: (0,authors_selectors/* getSortType */.BN)(state),
    excludedAuthors: (0,authors_selectors/* getFilteredAuthors */.AT)(state),
    excludedSources: getExcludedSources(state),
    excludedChannels: getExcludedChannels(state),
}); }, {
    fetchThemeExclusions: themes_model/* themesModel */.i.action.fetchThemeExclusions,
    restoreExcludedAuthor: authors_model/* authorsModel */.g.action.restoreAuthor,
    restoreExcludedSource: sources_model/* sourcesModel */.o.action.restoreExcludedSource,
    restoreExcludedChannel: channels_model/* channelsModel */.S.action.restoreExcludedChannel,
    searchExcludedAuthors: authors_model/* authorsModel */.g.action.searchExcludedAuthors,
    sortExcludedAuthors: authors_model/* authorsModel */.g.action.sortExcludedAuthors,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(ExclusionsRecovery));

;// CONCATENATED MODULE: ./src/containers/themeSettings/ExclusionsRecovery/index.ts


;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMention/components/AddMention.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AddMention = ({"base":"N5WmgpBLFkiSialETXUK","urlInput":"yEFDkTYoOg0fYc5kGgCv","actionButton":"A33Z_aarzNVW3wacjpNZ"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMention/components/AddMention.js






/* harmony default export */ const components_AddMention = (function (_ref) {
  var url = _ref.url,
    loading = _ref.loading,
    onChangeUrl = _ref.onChangeUrl,
    onRequestMention = _ref.onRequestMention;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(AddMention.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
      autoFocus: true,
      type: "url",
      placeholder: l('Mention\'s url'),
      className: classnames_default()(AddMention.urlInput),
      value: url,
      onChange: onChangeUrl
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
      primary: true,
      loading: loading,
      label: l('Preview mention'),
      className: classnames_default()(AddMention.previewButton),
      onClick: onRequestMention
    })]
  });
});
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMention/AddMention.js






function AddMention_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, AddMention_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function AddMention_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (AddMention_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var AddMentionContainer = /*#__PURE__*/function (_Component) {
  function AddMentionContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, AddMentionContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = AddMention_callSuper(this, AddMentionContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      url: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleChangeUrl", function (url) {
      _this.setState({
        url: url
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleRequestMention", function () {
      var url = _this.state.url;
      _this.props.mentionAdditionPreview({
        url: url
      });
    });
    (0,defineProperty/* default */.A)(_this, "showErrorNotification", function (errorCode) {
      if (errorCode === 'VALIDATION_ERROR') {
        return (0,utils_alert/* default */.A)({
          title: l('An error has occurred'),
          message: l('Given url is not valid')
        });
      }
      return (0,utils_alert/* default */.A)({
        title: l('An error has occurred'),
        message: l('Please contact our support team')
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(AddMentionContainer, _Component);
  return (0,createClass/* default */.A)(AddMentionContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.clearMentionAdditionPreviewState();
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      var _this$props = this.props,
        themeId = _this$props.themeId,
        router = _this$props.router,
        preview = _this$props.preview,
        previewError = _this$props.previewError;
      if (previewError) {
        var _previewError$respons;
        this.showErrorNotification((_previewError$respons = previewError.response.data) === null || _previewError$respons === void 0 ? void 0 : _previewError$respons.errorCode);
        return this.props.clearMentionAdditionPreviewState();
      }
      if (!preview) {
        return null;
      }
      if (preview.alreadyExists) {
        return router.replace("/themes/".concat(themeId, "/settings/add_mention/success"));
      }
      if (!preview.mention) {
        return router.replace({
          pathname: "/themes/".concat(themeId, "/settings/add_mention/form"),
          state: {
            url: this.state.url,
            suggestedResourceType: preview.suggestedResourceType
          }
        });
      }
      return router.replace("/themes/".concat(themeId, "/settings/add_mention/preview"));
    }
  }, {
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
          children: l('Add mention')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(components_AddMention, {
          url: this.state.url,
          loading: this.props.loading,
          onRequestMention: this.handleRequestMention,
          onChangeUrl: this.handleChangeUrl
        })]
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const AddMention_AddMention = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    preview: (0,mentionStream_selectors/* getPreviewMention */.bx)(state),
    previewError: (0,mentionStream_selectors/* getPreviewMentionError */.dg)(state),
    loading: (0,mentionStream_selectors/* isPreviewMentionLoading */.xc)(state)
  };
}, {
  mentionAdditionPreview: mentionStream_model/* mentionStreamModel */.K.action.mentionAdditionPreview,
  clearMentionAdditionPreviewState: mentionStream_model/* mentionStreamModel */.K.action.clearMentionAdditionPreviewState
}))(AddMentionContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMention/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/PreviewMention/components/PreviewMention.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_PreviewMention = ({"base":"QTqHmsqlqpb8AKrW2pdg","header":"cx3yQFZPckqUAJteuAzC","title":"dxOhZzyXn_Q2q8v6ppGQ","avatarContainer":"WjVim71gCobu62CM1yDR","mainInfo":"FighentXEMKXmZ2ZNUd9","publicationDate":"KrcDngNvifMcLETmWUST","publicationInfo":"EdtYdGyBo1KYmZpYIZZX","sourceName":"AT1QdCNBWeTrwWwQjlwQ","text":"qKmdi7ubo2rK9oTv0Fos","content":"fu4M1fouGToOvjOWR9ut","contentText":"TTD8du3lBSFCqSa8FafG","contentImage":"fjyo87HmA4HFWDQqj68n","subscribersCount":"tkgpZM0hmAzgfBpaHqbE"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/PreviewMention/components/PreviewMention.js






function PreviewMention_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, PreviewMention_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function PreviewMention_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (PreviewMention_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var PreviewMention = /*#__PURE__*/function (_Component) {
  function PreviewMention() {
    (0,classCallCheck/* default */.A)(this, PreviewMention);
    return PreviewMention_callSuper(this, PreviewMention, arguments);
  }
  (0,inherits/* default */.A)(PreviewMention, _Component);
  return (0,createClass/* default */.A)(PreviewMention, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        author = _this$props.author,
        url = _this$props.url,
        text = _this$props.text,
        imageUrl = _this$props.imageUrl,
        sourceName = _this$props.sourceName,
        publicationDate = _this$props.publicationDate,
        title = _this$props.title;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(components_PreviewMention.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_PreviewMention.header),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()(components_PreviewMention.avatarContainer),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Avatar/* default */.A, {
              rounded: true,
              imageUrl: author === null || author === void 0 ? void 0 : author.avatarUrl
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_PreviewMention.mainInfo),
            children: [author && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
                className: classnames_default()(components_PreviewMention.authorName),
                children: author.name || author.nickname
              }), author.subscribers !== undefined && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                className: classnames_default()(components_PreviewMention.subscribersCount),
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  type: "users"
                }), " ", numeral_default()(author.subscribers).format('0 a')]
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(components_PreviewMention.publicationInfo),
              children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
                className: classnames_default()(components_PreviewMention.sourceName),
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SourceIcon/* default */.A, {
                  name: sourceName
                }), sourceName]
              }), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
                href: url,
                target: "_blank",
                rel: "noopener noreferrer",
                className: classnames_default()(components_PreviewMention.publicationDate),
                children: moment_default()(publicationDate).format('LLL')
              })]
            })]
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_PreviewMention.content),
          children: [imageUrl && /*#__PURE__*/(0,jsx_runtime.jsx)(ImagePreview/* default */.A, {
            isSquareImage: true,
            className: classnames_default()(components_PreviewMention.contentImage),
            src: imageUrl
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_PreviewMention.contentText, (0,defineProperty/* default */.A)({}, components_PreviewMention.textWithImage, imageUrl)),
            children: [title && /*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(MentionText/* default */.A, {
                className: classnames_default()(components_PreviewMention.title),
                text: title,
                title: title
              })
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(MentionText/* default */.A, {
              text: text,
              className: classnames_default()(components_PreviewMention.text)
            })]
          })]
        })]
      });
    }
  }]);
}(react.Component);

;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/PreviewMention/utils.js
/* eslint import/prefer-default-export: 0 */
var calculatedAlerts = null;
var getErrorAlerts = function getErrorAlerts() {
  if (calculatedAlerts) {
    return calculatedAlerts;
  }
  var getDefaultMessage = function getDefaultMessage() {
    return l('Please contact our support team');
  };
  var getDefaultTitle = function getDefaultTitle() {
    return l('An error has occurred');
  };
  var messages = {
    MENTION_EXISTS: {
      title: getDefaultTitle,
      message: function message() {
        return l('Mention with given url is already in the stream');
      }
    },
    MENTION_SKIPPED: {
      title: getDefaultTitle,
      message: function message(error) {
        var message = error && error.message;
        if (message && message.includes('Text and snippet are empty')) {
          return l('Mention is skipped because the text is empty');
        }
        if (message && message.includes('because of theme rule')) {
          return l('Mention is skipped because of the topic rule');
        }
        return l('Incorrect mention format');
      }
    }
  };
  var nonExistingPropsHandler = {
    get: function get(target, name) {
      return target[name] || {
        title: getDefaultTitle,
        message: getDefaultMessage
      };
    }
  };
  calculatedAlerts = new Proxy(messages, nonExistingPropsHandler);
  return calculatedAlerts;
};
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/PreviewMention/PreviewMention.js






function PreviewMention_PreviewMention_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, PreviewMention_PreviewMention_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function PreviewMention_PreviewMention_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (PreviewMention_PreviewMention_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }















var PreviewMentionContainer = /*#__PURE__*/function (_Component) {
  function PreviewMentionContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, PreviewMentionContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = PreviewMention_PreviewMention_callSuper(this, PreviewMentionContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleAddMention", function () {
      var preview = _this.props.preview;
      _this.props.addMention({
        url: preview === null || preview === void 0 ? void 0 : preview.mention.url
      });
    });
    (0,defineProperty/* default */.A)(_this, "showErrorAlert", function (error) {
      var errorPayload = error.response.data || {};
      var errorCode = errorPayload.errorCode;
      var _getErrorAlerts$error = getErrorAlerts()[errorCode],
        title = _getErrorAlerts$error.title,
        message = _getErrorAlerts$error.message;
      return (0,utils_alert/* default */.A)({
        title: title(),
        message: message(errorPayload)
      }).then(function () {
        return _this.props.clearAddMentionState();
      });
    });
    (0,defineProperty/* default */.A)(_this, "redirectToMentionAddition", function () {
      var themeId = _this.props.themeId;
      _this.props.router.replace("/themes/".concat(themeId, "/settings/add_mention"));
    });
    return _this;
  }
  (0,inherits/* default */.A)(PreviewMentionContainer, _Component);
  return (0,createClass/* default */.A)(PreviewMentionContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      if (!this.props.preview && !this.props.loading) {
        this.redirectToMentionAddition();
      }
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      var _this$props = this.props,
        themeId = _this$props.themeId,
        addMentionError = _this$props.addMentionError,
        addedMentionId = _this$props.addedMentionId;
      if (!addMentionError && !addedMentionId) {
        return null;
      }
      if (addMentionError) {
        return this.showErrorAlert(addMentionError);
      }
      return this.props.router.push("/themes/".concat(themeId, "/settings/add_mention/success"));
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        preview = _this$props2.preview,
        mentionAdding = _this$props2.mentionAdding;
      var mention = preview === null || preview === void 0 ? void 0 : preview.mention;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
          children: l('Add mention')
        }), mention && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(PreviewMention, {
            author: mention.author,
            url: mention.url,
            title: mention.title,
            text: mention.text,
            imageUrl: mention.imageUrl,
            publicationDate: mention.publishedAt,
            sourceName: mention.source.name
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              label: l('Cancel'),
              onClick: this.redirectToMentionAddition
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              loading: mentionAdding,
              label: l('Add mention'),
              onClick: this.handleAddMention
            })]
          })]
        })]
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const PreviewMention_PreviewMention = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    preview: (0,mentionStream_selectors/* getPreviewMention */.bx)(state),
    loading: (0,mentionStream_selectors/* isPreviewMentionLoading */.xc)(state),
    mentionAdding: (0,mentionStream_selectors/* isMentionAdding */.E9)(state),
    addedMentionId: (0,mentionStream_selectors/* getAddedMentionId */.m9)(state),
    addMentionError: (0,mentionStream_selectors/* getAddMentionError */.Ag)(state)
  };
}, {
  addMention: mentionStream_model/* mentionStreamModel */.K.action.addMention,
  clearAddMentionState: mentionStream_model/* mentionStreamModel */.K.action.clearAddMentionState
}))(PreviewMentionContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/PreviewMention/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMentionForm/components/AddMentionForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_AddMentionForm = ({"fieldsContainer":"jD85WI3p4pCt7Xm7X6we","publicationDate":"xf3tDbT7fTVbmjB5Ti_S","timePicker":"ykRG6StXhDy7cQVX6E8O"});
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMentionForm/components/AddMentionForm.js






var AddMentionForm_dec, AddMentionForm_class;
function AddMentionForm_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function AddMentionForm_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? AddMentionForm_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : AddMentionForm_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function AddMentionForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, AddMentionForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function AddMentionForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (AddMentionForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }














var INITIAL_PUBLICATION_DATE = new Date();
var INITIAL_PUBLICATION_TIME = moment_default()().format('LT');

// FIXME: Update redux forms and refactor all forms including this one
var AddMentionForm = (AddMentionForm_dec = (0,redux_form_lib/* reduxForm */.zW)({
  form: 'addMention',
  fields: ['title', 'text', 'url', 'resourceType', 'publicationDate', 'publicationTime']
}, function (state, ownProps) {
  return {
    initialValues: {
      url: ownProps.url,
      publicationDate: INITIAL_PUBLICATION_DATE,
      publicationTime: INITIAL_PUBLICATION_TIME
    }
  };
}), AddMentionForm_dec(AddMentionForm_class = /*#__PURE__*/function (_PureComponent) {
  function AddMentionForm() {
    var _this;
    (0,classCallCheck/* default */.A)(this, AddMentionForm);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = AddMentionForm_callSuper(this, AddMentionForm, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleChangeResourceType", function (value) {
      var resourceType = _this.props.fields.resourceType;
      return resourceType.onChange({
        value: value
      });
    });
    (0,defineProperty/* default */.A)(_this, "getResourceTypes", function () {
      return [{
        value: 'blog',
        label: l('Blog')
      }, {
        value: 'forum',
        label: l('Forum')
      }, {
        value: 'news',
        label: l('News')
      }, {
        value: 'social',
        label: l('Social networks')
      }, {
        value: 'reviews',
        label: l('Reviews')
      }, {
        value: 'messenger',
        label: l('Messengers')
      }];
    });
    (0,defineProperty/* default */.A)(_this, "areAllFieldsFilled", function () {
      var _this$props$fields = _this.props.fields,
        title = _this$props$fields.title,
        url = _this$props$fields.url,
        text = _this$props$fields.text,
        resourceType = _this$props$fields.resourceType,
        publicationDate = _this$props$fields.publicationDate,
        publicationTime = _this$props$fields.publicationTime;
      return title.value && url.value && text.value && resourceType.value && publicationDate.value && publicationTime.value;
    });
    return _this;
  }
  (0,inherits/* default */.A)(AddMentionForm, _PureComponent);
  return (0,createClass/* default */.A)(AddMentionForm, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var suggestedResourceType = this.props.suggestedResourceType;
      if (suggestedResourceType) {
        var resourceType = this.getResourceTypes().find(function (item) {
          return item.value === suggestedResourceType;
        });
        this.handleChangeResourceType(resourceType);
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        handleSubmit = _this$props.handleSubmit,
        _this$props$fields2 = _this$props.fields,
        title = _this$props$fields2.title,
        url = _this$props$fields2.url,
        text = _this$props$fields2.text,
        resourceType = _this$props$fields2.resourceType,
        publicationDate = _this$props$fields2.publicationDate,
        publicationTime = _this$props$fields2.publicationTime;
      var date = publicationDate.value,
        onDateChange = publicationDate.onChange;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("form", {
        onSubmit: handleSubmit,
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_AddMentionForm.fieldsContainer),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, AddMentionForm_objectSpread({
            required: true,
            fullWidth: true,
            name: "url",
            type: "url",
            label: l('URL')
          }, url)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, AddMentionForm_objectSpread({
            required: true,
            fullWidth: true,
            name: "title",
            type: "text",
            label: l('Title')
          }, title)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea/* default */.A, AddMentionForm_objectSpread({
            fullWidth: true,
            required: true,
            rows: 10,
            name: "text",
            type: "text",
            label: l('Text')
          }, text)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, {
            simpleValue: true,
            menuPlacement: "top",
            options: this.getResourceTypes(),
            placeholder: l('Source type'),
            value: resourceType.value,
            onChange: this.handleChangeResourceType
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(components_AddMentionForm.publicationDate),
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Label/* default */.A, {
                required: true,
                children: l('Publication date')
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Calendar/* DayPicker */.h, {
                name: "publicationDate",
                date: date,
                onChange: onDateChange
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
              style: {
                marginBottom: '8px'
              },
              children: "at"
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, AddMentionForm_objectSpread({
              required: true,
              name: "publicationTime",
              type: "time",
              className: classnames_default()(components_AddMentionForm.timePicker)
            }, publicationTime))]
          })]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            type: "button",
            label: l('Cancel'),
            onClick: this.props.onCancel
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
            primary: true,
            disabled: !this.areAllFieldsFilled(),
            loading: this.props.mentionAdding,
            type: "submit",
            label: l('Add mention')
          })]
        })]
      });
    }
  }]);
}(react.PureComponent)) || AddMentionForm_class);

;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMentionForm/AddMentionForm.js






function AddMentionForm_AddMentionForm_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function AddMentionForm_AddMentionForm_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? AddMentionForm_AddMentionForm_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : AddMentionForm_AddMentionForm_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function AddMentionForm_AddMentionForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, AddMentionForm_AddMentionForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function AddMentionForm_AddMentionForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (AddMentionForm_AddMentionForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var AddMentionFormContainer = /*#__PURE__*/function (_Component) {
  function AddMentionFormContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, AddMentionFormContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = AddMentionForm_AddMentionForm_callSuper(this, AddMentionFormContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleAddMention", function (mentionData) {
      var date = new Date();
      var publicationTime = mentionData.publicationTime.split(':');
      var published = new Date(date.setHours.apply(mentionData.publicationDate, publicationTime));
      _this.props.addMention({
        mention: AddMentionForm_AddMentionForm_objectSpread(AddMentionForm_AddMentionForm_objectSpread({}, mentionData), {}, {
          resourceType: mentionData.resourceType.value,
          published: published
        })
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleCancel", function () {
      var themeId = _this.props.themeId;
      _this.props.router.replace({
        pathname: "/themes/".concat(themeId, "/settings/add_mention")
      });
      _this.props.clearMentionAdditionPreviewState();
    });
    return _this;
  }
  (0,inherits/* default */.A)(AddMentionFormContainer, _Component);
  return (0,createClass/* default */.A)(AddMentionFormContainer, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      var _this$props = this.props,
        themeId = _this$props.themeId,
        addMentionError = _this$props.addMentionError,
        addedMentionId = _this$props.addedMentionId;
      if (!addMentionError && !addedMentionId) {
        return null;
      }
      if (addMentionError) {
        var _addMentionError$resp;
        return ((_addMentionError$resp = addMentionError.response.data) === null || _addMentionError$resp === void 0 ? void 0 : _addMentionError$resp.errorCode) === 'MENTION_EXISTS' ? (0,utils_alert/* default */.A)({
          title: l('An error has occurred'),
          message: l('Mention with given url is already in the stream')
        }) : (0,utils_alert/* default */.A)({
          title: l('An error has occurred'),
          message: l('Please contact our support team')
        });
      }
      return this.props.router.push("/themes/".concat(themeId, "/settings/add_mention/success"));
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        location = _this$props2.location,
        mentionAdding = _this$props2.mentionAdding;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
          children: l('Add mention')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(AddMentionForm, {
          url: location.state && location.state.url,
          suggestedResourceType: location.state && location.state.suggestedResourceType,
          mentionAdding: mentionAdding,
          onSubmit: this.handleAddMention,
          onCancel: this.handleCancel
        })]
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const AddMentionForm_AddMentionForm = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    mentionAdding: (0,mentionStream_selectors/* isMentionAdding */.E9)(state),
    addMentionError: (0,mentionStream_selectors/* getAddMentionError */.Ag)(state),
    addedMentionId: (0,mentionStream_selectors/* getAddedMentionId */.m9)(state)
  };
}, {
  clearMentionAdditionPreviewState: mentionStream_model/* mentionStreamModel */.K.action.clearMentionAdditionPreviewState,
  addMention: mentionStream_model/* mentionStreamModel */.K.action.addMention
}))(AddMentionFormContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMentionForm/index.js

;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMentionSuccessMessage/AddMentionSuccessMessage.js





function AddMentionSuccessMessage_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, AddMentionSuccessMessage_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function AddMentionSuccessMessage_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (AddMentionSuccessMessage_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }














var AddMentionSuccessMessage_AddMentionFormContainer = /*#__PURE__*/function (_Component) {
  function AddMentionFormContainer() {
    (0,classCallCheck/* default */.A)(this, AddMentionFormContainer);
    return AddMentionSuccessMessage_callSuper(this, AddMentionFormContainer, arguments);
  }
  (0,inherits/* default */.A)(AddMentionFormContainer, _Component);
  return (0,createClass/* default */.A)(AddMentionFormContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this$props = this.props,
        themeId = _this$props.themeId,
        addedMentionId = _this$props.addedMentionId,
        existingMentionId = _this$props.existingMentionId;
      if (!existingMentionId && !addedMentionId) {
        this.props.router.replace("/themes/".concat(themeId, "/settings/add_mention"));
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this.props.clearMentionAdditionPreviewState();
      this.props.clearAddMentionState();
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        themeId = _this$props2.themeId,
        mentionAlreadyExists = _this$props2.mentionAlreadyExists,
        existingMentionId = _this$props2.existingMentionId,
        addedMentionId = _this$props2.addedMentionId;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
          children: l('Add mention')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
          image: "/static/images/mention_added.png",
          title: mentionAlreadyExists ? l('Mention is already in the stream') : l('Mention successfully added'),
          message: mentionAlreadyExists ? l('You can go to the existing mention or add new one') : l('You can add more mentions or go to the mention you\'ve just added'),
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
              to: "/themes/".concat(themeId, "/settings/add_mention"),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                label: l('Add new mention')
              })
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
              to: mentionAlreadyExists ? "/themes/".concat(themeId, "/mentions/").concat(existingMentionId) : "/themes/".concat(themeId, "/mentions/").concat(addedMentionId),
              target: "_blank",
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                primary: true,
                label: l('To the mention')
              })
            })]
          })
        })]
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const AddMentionSuccessMessage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    addedMentionId: (0,mentionStream_selectors/* getAddedMentionId */.m9)(state),
    existingMentionId: (0,mentionStream_selectors/* getPreviewMentionId */.yQ)(state),
    mentionAlreadyExists: (0,mentionStream_selectors/* isMentionAlreadyExists */.HM)(state)
  };
}, {
  clearAddMentionState: mentionStream_model/* mentionStreamModel */.K.action.clearAddMentionState,
  clearMentionAdditionPreviewState: mentionStream_model/* mentionStreamModel */.K.action.clearMentionAdditionPreviewState
}))(AddMentionSuccessMessage_AddMentionFormContainer));
;// CONCATENATED MODULE: ./src/containers/themeSettings/mentionsAddition/AddMentionSuccessMessage/index.js

// EXTERNAL MODULE: ./src/state/topicsComparison/selectors.ts
var topicsComparison_selectors = __webpack_require__("nqra");
;// CONCATENATED MODULE: ./src/hoc/themesCompare.js







function themesCompare_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function themesCompare_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? themesCompare_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : themesCompare_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function themesCompare_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, themesCompare_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function themesCompare_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (themesCompare_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }














/* harmony default export */ const themesCompare = (function (key, renderTitle, config) {
  var mapStats = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function (_stats) {
    return {};
  };
  return function (Component) {
    var WrappedComponent = /*#__PURE__*/function (_PureComponent) {
      function WrappedComponent() {
        var _this;
        (0,classCallCheck/* default */.A)(this, WrappedComponent);
        for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
          args[_key] = arguments[_key];
        }
        _this = themesCompare_callSuper(this, WrappedComponent, [].concat(args));
        (0,defineProperty/* default */.A)(_this, "getIntervalMs", function () {
          var _this$props = _this.props,
            periodFrom = _this$props.periodFrom,
            periodTo = _this$props.periodTo;
          return dateUtils/* TIME */.E9[(0,detectStatsConfigPeriod/* getInterval */.A8)(periodFrom, periodTo)];
        });
        (0,defineProperty/* default */.A)(_this, "fetchStats", function (props) {
          var periodFrom = props.periodFrom,
            periodTo = props.periodTo,
            statsBy = props.statsBy;
          (0,detectStatsConfigPeriod/* default */.Ay)(config, periodFrom, periodTo);
          props.fetchComparisonStats({
            config: config,
            key: key,
            statsBy: statsBy
          });
        });
        (0,defineProperty/* default */.A)(_this, "renderComponent", function () {
          var _this$props2 = _this.props,
            isFetching = _this$props2.isFetching,
            stats = _this$props2.stats;
          if (!isFetching && stats) {
            return /*#__PURE__*/(0,jsx_runtime.jsx)(Component, themesCompare_objectSpread(themesCompare_objectSpread({}, _this.props), {}, {
              interval: _this.getIntervalMs()
            }));
          }
          return null;
        });
        return _this;
      }
      (0,inherits/* default */.A)(WrappedComponent, _PureComponent);
      return (0,createClass/* default */.A)(WrappedComponent, [{
        key: "componentDidMount",
        value: function componentDidMount() {
          this.fetchStats(this.props);
        }
      }, {
        key: "componentDidUpdate",
        value: function componentDidUpdate(prevProps) {
          var filterChanged = !this.props.filter.equals(prevProps.filter);
          var themesChanged = !isEqual_default()(this.props.themeIds, prevProps.themeIds);
          var hasMetricChanged = prevProps.statsBy !== this.props.statsBy;
          if (filterChanged || themesChanged || hasMetricChanged) {
            this.fetchStats(this.props);
          }
        }
      }, {
        key: "render",
        value: function render() {
          var isFetching = this.props.isFetching;
          return /*#__PURE__*/(0,jsx_runtime.jsxs)(Loader/* default */.A, {
            loaded: !isFetching,
            children: [renderTitle && /*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
              children: renderTitle()
            }), this.renderComponent()]
          });
        }
      }]);
    }(react.PureComponent);
    WrappedComponent.displayName = 'themesCompareCard(WrappedComponent)';
    return (0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
      var _stats$data;
      var stats = (0,topicsComparison_selectors/* getStatsByKey */._$)(state, key) || {};
      var filter = (0,filter_selectors/* getThemeFilter */.Ic)(state);
      var themes = (0,topicsComparison_selectors/* getComparingTopics */.b7)(state);
      var props = {
        filter: filter,
        currentThemeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
        themeIds: (0,topicsComparison_selectors/* getCompareTopicIds */.H9)(state),
        data: stats.data,
        isFetching: stats.isFetching,
        error: stats.error,
        periodFrom: filter.from,
        periodTo: filter.to,
        statsBy: (0,stats_selectors/* getStatsBy */.b8)(state)
      };
      if (!stats.data || ((_stats$data = stats.data) === null || _stats$data === void 0 ? void 0 : _stats$data.length) !== themes.length || stats.isFetching) {
        return props;
      }
      return themesCompare_objectSpread(themesCompare_objectSpread({}, props), {}, {
        stats: stats.data.map(function (stat, idx) {
          return themesCompare_objectSpread(themesCompare_objectSpread({}, themes[idx]), {}, {
            data: mapStats(stat)
          });
        })
      });
    }, {
      fetchComparisonStats: topicsComparison_model/* topicComparisonModel */.M.action.fetchStats
    }))(WrappedComponent);
  };
});
// EXTERNAL MODULE: ./src/utils/chart.js
var chart = __webpack_require__("jxlF");
;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/styles.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_styles = ({"base":"pDpF_NKQ6XWYTQxFfGrm","title":"K5IiLH4eethVcu1Hi_Vs"});
;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/PieChart.tsx
var PieChart_assign = (undefined && undefined.__assign) || function () {
    PieChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PieChart_assign.apply(this, arguments);
};
var PieChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};














var PieChart = function (_a) {
    var stats = _a.stats, updateLocation = _a.updateLocation, sendChartExportedEvent = _a.sendChartExportedEvent;
    var _b = PieChart_read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var handleClick = function (themeId) {
        updateLocation({
            pathname: "/themes/".concat(themeId, "/dashboard"),
            query: {
                themeIds: undefined,
            },
        });
    };
    var getConfig = function () {
        return {
            chart: {
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false,
                type: 'pie',
            },
            title: {
                text: 'pieChart',
                style: {
                    display: 'none',
                },
            },
            subtitle: {
                text: null,
            },
            tooltip: chart/* TOOLTIPS */.H.pie,
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        format: '{point.percentage:.2f}% ({point.y:,.0f})',
                        style: {
                            color: 'black',
                        },
                    },
                    showInLegend: true,
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return handleClick(e.point.key); },
                        },
                    },
                },
            },
            series: [{
                    name: l('Mentions'),
                    data: stats.map(function (stat) { return ({
                        name: stat.name,
                        key: stat.id,
                        y: stat.data,
                    }); }),
                }],
        };
    };
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        sendChartExportedEvent({
            properties: {
                fileType: fileType,
                chartType: 'Topic comparison Share of conversation',
            },
        });
    };
    var config = (0,react.useMemo)(getConfig, [stats]);
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, PieChart_assign({ className: components_styles.base }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Share of conversation'), chartRef: chartData, onChartExport: onChartExport }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData })] })));
};
/* harmony default export */ const components_PieChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateLocation: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), themesCompare('sentiment', null, {
    aggregations: {
        sentiment: {},
    },
}, function (stats) { return stats.aggregations.metricTotal || stats.totalCount; }), react.memo)(PieChart));

;// CONCATENATED MODULE: ./src/utils/getDataPointPeriod.js

/* harmony default export */ const getDataPointPeriod = (function (date, interval, disableOffset) {
  if (interval < dateUtils/* TIME */.E9.Day) {
    var _from = new Date(date);
    var _to = new Date(date + interval);
    var offset = disableOffset ? 0 : _from.getTimezoneOffset() * 60 * 1000;
    return {
      from: new Date(_from.getTime() + offset),
      to: new Date(_to.getTime() + offset)
    };
  }
  var from = new Date(date);
  var to = new Date(date + interval - dateUtils/* TIME */.E9.Day);
  to.setHours(0, 0, 0, 0);
  from.setHours(0, 0, 0, 0);
  return {
    from: from,
    to: to
  };
});
;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/DynamicsCompare.tsx
var DynamicsCompare_assign = (undefined && undefined.__assign) || function () {
    DynamicsCompare_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DynamicsCompare_assign.apply(this, arguments);
};
var DynamicsCompare_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var DynamicsCompare = function (_a) {
    var interval = _a.interval, stats = _a.stats, updateLocation = _a.updateLocation, sendChartExportedEvent = _a.sendChartExportedEvent;
    var _b = DynamicsCompare_read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var handleChartLoad = function (chart) {
        setChartData(chart);
    };
    var handleSeriesClick = function (themeId, date) {
        updateLocation({
            pathname: "/themes/".concat(themeId, "/mentions"),
            query: DynamicsCompare_assign(DynamicsCompare_assign({}, getDataPointPeriod(date, interval)), { themeIds: undefined }),
        });
    };
    var getConfig = function () {
        if (!stats) {
            return null;
        }
        var series = stats.map(function (value) {
            var dates = value.data;
            return {
                dates: dates,
                type: 'spline',
                name: value.name,
                key: value.id,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(dates[0].date).getTime(),
                pointInterval: interval,
                data: dates.map(function (point) { return point.count; }),
            };
        });
        return {
            chart: {
                zoomType: 'x',
            },
            title: {
                text: 'dynamicsCompare',
                style: {
                    display: 'none',
                },
            },
            subtitle: {
                text: null,
            },
            xAxis: {
                type: 'datetime',
                title: {
                    text: l('Time'),
                    style: {
                        display: 'none',
                    },
                },
            },
            yAxis: [{
                    title: {
                        text: null,
                    },
                }],
            tooltip: {
                shared: true,
                crosshairs: true,
                useHTML: true,
                formatter: (0,chart/* splineTooltipFormatter */.h)(),
            },
            plotOptions: {
                spline: {
                    marker: {
                        enabled: false,
                    },
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return handleSeriesClick(e.point.series.options.key, e.point.category); },
                        },
                    },
                },
            },
            series: series,
        };
    };
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        sendChartExportedEvent({
            properties: {
                fileType: fileType,
                chartType: 'Topic comparison Dynamics',
            },
        });
    };
    var config = (0,react.useMemo)(getConfig, [stats]);
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, DynamicsCompare_assign({ className: components_styles.base }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { chartRef: chartData, onChartExport: onChartExport }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: handleChartLoad })] })));
};
/* harmony default export */ const components_DynamicsCompare = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateLocation: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), themesCompare('dynamics', null, {
    aggregations: {
        date: {
            interval: 'Day',
        },
    },
}, function (stats) { var _a, _b; return (_b = (_a = stats === null || stats === void 0 ? void 0 : stats.aggregations) === null || _a === void 0 ? void 0 : _a.dates) === null || _b === void 0 ? void 0 : _b.values; }))(DynamicsCompare));

;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/SentimentCompare.tsx
var SentimentCompare_assign = (undefined && undefined.__assign) || function () {
    SentimentCompare_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentCompare_assign.apply(this, arguments);
};
var SentimentCompare_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var SentimentCompare = function (_a) {
    var stats = _a.stats, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var _b = SentimentCompare_read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var handleClick = function (themeId, sentiment) {
        updateFilter({
            name: 'sentiment',
            value: [sentiment],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
                query: {
                    themeIds: undefined,
                },
            },
        });
    };
    var getConfig = function () {
        var sentimentColors = (0,utils_colors/* getSentimentColors */.ID)();
        return {
            chart: {
                type: 'column',
            },
            title: {
                text: 'sentimentCompare',
                style: {
                    display: 'none',
                },
            },
            subtitle: {
                text: null,
            },
            yAxis: [{
                    title: {
                        text: null,
                    },
                }],
            xAxis: {
                categories: stats.map(function (stat) { return stat.name; }),
                crosshair: true,
            },
            tooltip: {
                crosshairs: true,
                shared: true,
            },
            plotOptions: {
                column: {
                    stacking: 'percent',
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return handleClick(stats[e.point.index].id, e.point.series.options.key); },
                        },
                    },
                },
            },
            series: [
                {
                    name: l('Positive'),
                    key: 'positive',
                    data: stats.map(function (stat) { return stat.data.positive; }),
                    color: sentimentColors.positive,
                },
                {
                    name: l('Neutral'),
                    key: 'neutral',
                    data: stats.map(function (stat) { return stat.data.neutral; }),
                    color: sentimentColors.neutral,
                },
                {
                    name: l('Negative'),
                    key: 'negative',
                    data: stats.map(function (stat) { return stat.data.negative; }),
                    color: sentimentColors.negative,
                }
            ],
        };
    };
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        sendChartExportedEvent({
            properties: {
                fileType: fileType,
                chartType: 'Topic comparison Sentiment',
            },
        });
    };
    var config = (0,react.useMemo)(getConfig, [stats]);
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, SentimentCompare_assign({ className: components_styles.base }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Sentiment'), chartRef: chartData, onChartExport: onChartExport }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData })] })));
};
/* harmony default export */ const components_SentimentCompare = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    push: routing_actions/* push */.VC,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), themesCompare('sentiment', null, {
    aggregations: {
        sentiment: {},
    },
}, function (stats) { return (0,stats_selectors/* getSentimentDistributionTS */.lh)(stats.aggregations.sentiment.values); }), react.memo)(SentimentCompare));

;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/TopicsPicker/TopicsPickerModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TopicsPickerModal = ({"overlayedBlock":"nvEmEwaGqVozCrnrIyNg","flexCenter":"hrb6yWVkqKgIi14DBDag","smartFeature":"UStFB9UAfjmC0mgRIS5T","tag":"WwBw0gshPHoqZUTeFAbb","visibleScrollBar":"ognp5NJSw6QC57GlFZZq","hiddenScrollBar":"yZSO4oPGujo72NM40IzU","filter":"WIQ_f75A1GIGnpJg8gfJ","themes":"eFjPdliQaa6imZuoHVEq","emptyState":"QwuG6fgPcFdjbruW0pLD","buttons":"_S29etp9amUU5wFApJIV","addButton":"NSS87ZNsJrLb7smbqj1W","ghost":"QxyWd0EXkD27KLguIFaA","suggestionFocused":"bgJg35tY1c3re7ZweyjW"});
;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/TopicsPicker/TopicsPickerModal.tsx
var TopicsPickerModal_assign = (undefined && undefined.__assign) || function () {
    TopicsPickerModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicsPickerModal_assign.apply(this, arguments);
};
var TopicsPickerModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};










var TopicsPickerModal_ENTER_KEY = 13;
var TopicsPickerModal_TopicsPickerModal = function (_a) {
    var isOpen = _a.isOpen, themes = _a.themes, selectedTopicIds = _a.selectedTopicIds, onChange = _a.onChange, onCancel = _a.onCancel;
    var _b = TopicsPickerModal_read((0,react.useState)(selectedTopicIds || []), 2), selectedTopics = _b[0], setSelectedTopics = _b[1];
    (0,react.useEffect)(function () {
        if (selectedTopicIds || !isOpen) {
            setSelectedTopics(selectedTopicIds || []);
        }
    }, [selectedTopicIds, isOpen]);
    var handleThemeChange = function (theme) {
        var themeId = theme.id;
        var themeSelected = selectedTopics[themeId] !== undefined
            ? selectedTopics[themeId]
            : selectedTopics.includes(themeId);
        setSelectedTopics(!themeSelected
            ? selectedTopics.concat(themeId)
            : selectedTopics.filter(function (id) { return id !== themeId; }));
    };
    var handleApply = function () {
        onChange(selectedTopics);
    };
    var handleKeyDown = function (e) {
        if (selectedTopicIds.length && e.keyCode === TopicsPickerModal_ENTER_KEY && e.shiftKey) {
            handleApply();
        }
    };
    var renderSuggestion = function (theme, focused) {
        var _a;
        return ((0,jsx_runtime.jsx)("div", TopicsPickerModal_assign({ className: classnames_default()((_a = {}, _a[TopicsPickerModal.suggestionFocused] = focused, _a)) }, { children: (0,jsx_runtime.jsx)(Checkbox/* default */.A, { label: theme.name, checked: selectedTopics.includes(theme.id), value: theme.id }, theme.id) })));
    };
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, TopicsPickerModal_assign({ isOpen: isOpen, title: l('Pick topics to compare'), onRequestClose: onCancel }, { children: (0,jsx_runtime.jsxs)("div", TopicsPickerModal_assign({ role: "presentation", onKeyDown: handleKeyDown }, { children: [(0,jsx_runtime.jsx)(react_media/* default */.A, TopicsPickerModal_assign({ query: "(max-width: 992px)" }, { children: function (matches) { return ((0,jsx_runtime.jsx)(SearchableListMutable, { autoFocus: true, hintText: !matches && l('Press Shift + Enter to apply'), placeholder: l('Search'), className: classnames_default()(TopicsPickerModal.themes), suggestions: themes, sortingProperties: { keys: [function (item) { return item.name; }] }, emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(TopicsPickerModal.emptyState), image: "/static/images/empty_themes.svg", title: l('No topics were found'), message: l('There are no topics with this name') }), renderItem: renderSuggestion, onSelect: handleThemeChange })); } })), (0,jsx_runtime.jsxs)("div", TopicsPickerModal_assign({ className: classnames_default()(TopicsPickerModal.buttons) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: onCancel }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Apply'), onClick: handleApply })] }))] })) })));
};
/* harmony default export */ const TopicsPicker_TopicsPickerModal = ((0,react.memo)(TopicsPickerModal_TopicsPickerModal));

;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/TopicsPicker/SelectedTopicsList.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SelectedTopicsList = ({"base":"_6DwLM3mwn9OayFe89SA","theme":"zhOcpJUVOEfSmdPzHGFV","addThemeButton":"vl6Cd4z0WfudQ_arRVMt"});
;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/TopicsPicker/SelectedTopicsList.tsx
var SelectedTopicsList_assign = (undefined && undefined.__assign) || function () {
    SelectedTopicsList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SelectedTopicsList_assign.apply(this, arguments);
};
var SelectedTopicsList_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};







var SelectedTopicsList_SelectedTopicsList = function (_a) {
    var themes = _a.themes, selectedThemes = _a.selectedThemes, currentTheme = _a.currentTheme, onChange = _a.onChange;
    var _b = SelectedTopicsList_read((0,react.useState)(false), 2), showPickerModal = _b[0], toggleModal = _b[1];
    var handleRemoveTag = function (removeId) {
        onChange(selectedThemes
            .map(function (theme) { return theme.id; })
            .filter(function (id) { return id !== removeId; }));
    };
    var handleChooseThemes = function (themeIds) {
        toggleModal(false);
        onChange(themeIds);
    };
    return ((0,jsx_runtime.jsxs)("div", SelectedTopicsList_assign({ className: classnames_default()(SelectedTopicsList.base) }, { children: [currentTheme
                && (0,jsx_runtime.jsx)(Tag/* default */.Ay, { label: currentTheme === null || currentTheme === void 0 ? void 0 : currentTheme.name }), selectedThemes.map(function (theme) {
                return (0,jsx_runtime.jsx)(Tag/* default */.Ay, { className: classnames_default()(SelectedTopicsList.theme), id: theme.id, removable: true, label: theme.name, onRemove: handleRemoveTag }, theme.id);
            }), (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", primary: true, className: classnames_default()(SelectedTopicsList.addThemeButton), label: l('Change'), onClick: function () { return toggleModal(true); } }), (0,jsx_runtime.jsx)(TopicsPicker_TopicsPickerModal, { selectedTopicIds: selectedThemes.map(function (theme) { return theme.id; }), themes: themes.filter(function (theme) { return theme.id !== currentTheme.id; }), isOpen: showPickerModal, onChange: handleChooseThemes, onCancel: function () { return toggleModal(false); } })] })));
};
/* harmony default export */ const TopicsPicker_SelectedTopicsList = (SelectedTopicsList_SelectedTopicsList);

;// CONCATENATED MODULE: ./src/containers/comparison/Topics/components/TopicsPicker/index.tsx
var TopicsPicker_assign = (undefined && undefined.__assign) || function () {
    TopicsPicker_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicsPicker_assign.apply(this, arguments);
};
var TopicsPicker_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var TopicsPicker_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};














var TopicsPicker = function (_a) {
    var compareThemes = _a.compareThemes, themes = _a.themes, currentTheme = _a.currentTheme, params = _a.params, location = _a.location, sendEvent = _a.sendEvent, updateLocation = _a.updateLocation, fetchThemesWithoutStats = _a.fetchThemesWithoutStats;
    (0,react.useEffect)(function () {
        fetchThemesWithoutStats();
    }, []);
    var handleThemesChange = function (themeIds) {
        var id = parseInt((params === null || params === void 0 ? void 0 : params.id) || '0', 10);
        sendEvent({
            eventType: 'Topic comparison: topic changed',
            properties: {
                topicIds: TopicsPicker_spreadArray([id], TopicsPicker_read(themeIds), false),
            },
        });
        updateLocation({
            pathname: location.pathname,
            query: { themeIds: themeIds },
        });
    };
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, TopicsPicker_assign({ className: components_styles.base }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, TopicsPicker_assign({ className: components_styles.title }, { children: l('Topics to compare') })), (0,jsx_runtime.jsx)(TopicsPicker_SelectedTopicsList, { themes: themes, selectedThemes: compareThemes, currentTheme: currentTheme, onChange: handleThemesChange })] })));
};
/* harmony default export */ const components_TopicsPicker = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    compareThemes: (0,topicsComparison_selectors/* getTopicsToCompareWith */.J4)(state),
    themes: (0,themes_selectors/* getThemesWithoutStats */.aj)(state),
    currentTheme: (0,themes_selectors/* getCurrentTheme */.j1)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    fetchThemesWithoutStats: themes_model/* themesModel */.i.action.fetchThemesWithoutStats,
    sendEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(TopicsPicker));

;// CONCATENATED MODULE: ./src/containers/comparison/Topics/Topics.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Topics = ({"dist":"x5e4Bot3pRH8PGaLV8jy"});
;// CONCATENATED MODULE: ./src/containers/comparison/Topics/Topics.tsx
var Topics_assign = (undefined && undefined.__assign) || function () {
    Topics_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Topics_assign.apply(this, arguments);
};









/* harmony default export */ const Topics_Topics = (function () {
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_TopicsPicker, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_DynamicsCompare, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Topics_assign({ className: classnames_default()(Topics.dist) }, { children: [(0,jsx_runtime.jsx)(components_SentimentCompare, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(components_PieChart, {})] }))] }));
});

;// CONCATENATED MODULE: ./src/containers/comparison/Topics/index.ts


// EXTERNAL MODULE: ./node_modules/lodash/isEmpty.js
var isEmpty = __webpack_require__("E+oP");
var isEmpty_default = /*#__PURE__*/__webpack_require__.n(isEmpty);
;// CONCATENATED MODULE: ./src/hooks/usePrevious.ts
/* eslint-disable import/prefer-default-export */

var usePrevious = function (value) {
    var ref = (0,react.useRef)();
    (0,react.useEffect)(function () {
        ref.current = value;
    }, [value]);
    // Return previous value (happens before update in useEffect above)
    return ref.current;
};

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/components/LogosPicker/SelectedLogos.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SelectedLogos = ({"base":"YAoSDpm7GckJ4p1JScAA","title":"CvpfOd4dwm0obbwpxixw","editButton":"tgIlYzNR_M8JvXu4a1Et","logo":"dV5oisniBTnPSBVKrvZj","colorDot":"p9GTx2Yuci8bwAqB3kiK"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/components/LogosPicker/SelectedLogos.js








/* harmony default export */ const LogosPicker_SelectedLogos = (function (_ref) {
  var selectedLogos = _ref.selectedLogos,
    onChange = _ref.onChange,
    onToggleLogoPicker = _ref.onToggleLogoPicker;
  var handleRemoveTag = function handleRemoveTag(removeId) {
    onChange(selectedLogos.map(function (logo) {
      return logo.id;
    }).filter(function (logoId) {
      return logoId !== removeId;
    }));
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(SelectedLogos.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H3/* default */.A, {
      className: classnames_default()(SelectedLogos.title),
      children: l('Logos')
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      children: [selectedLogos === null || selectedLogos === void 0 ? void 0 : selectedLogos.map(function (logo, index) {
        return /*#__PURE__*/(0,jsx_runtime.jsx)(Tag/* default */.Ay, {
          removable: true,
          className: classnames_default()(SelectedLogos.logo),
          id: logo.id,
          label: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              className: classnames_default()(SelectedLogos.colorDot),
              style: {
                backgroundColor: LOGO_COLORS[index]
              }
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), "".concat(logo.name, " | ").concat(logo.themeName)]
          }),
          onRemove: handleRemoveTag
        }, logo.id);
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        primary: true,
        size: "small",
        label: l('Add'),
        className: classnames_default()(SelectedLogos.editButton),
        onClick: onToggleLogoPicker
      })]
    })]
  });
});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/components/LogosPicker/LogosPicker.js



var LogosPicker = function LogosPicker(_ref) {
  var themeId = _ref.themeId,
    compareLogos = _ref.compareLogos,
    currentThemeLogos = _ref.currentThemeLogos,
    onSelect = _ref.onSelect,
    onToggleLogoPicker = _ref.onToggleLogoPicker;
  var handleSelect = function handleSelect(logosToSelect) {
    onSelect({
      logos: logosToSelect
    });
  };
  (0,react.useEffect)(function () {
    if (compareLogos.length === 0 && currentThemeLogos.length) {
      var logosToSelect = currentThemeLogos.map(function (logo) {
        return "".concat(logo.label, "_in_").concat(themeId);
      });
      handleSelect(logosToSelect);
    }
  }, [currentThemeLogos]);
  return /*#__PURE__*/(0,jsx_runtime.jsx)(LogosPicker_SelectedLogos, {
    currentThemeLogos: currentThemeLogos,
    selectedLogos: compareLogos,
    onChange: handleSelect,
    onToggleLogoPicker: onToggleLogoPicker
  });
};
/* harmony default export */ const LogosPicker_LogosPicker = (/*#__PURE__*/(0,react.memo)(LogosPicker));
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./src/components/charts/Dumbbell/index.ts + 2 modules
var Dumbbell = __webpack_require__("TJkG");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/components/LogosCompareChart/LogosCompareChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const LogosCompareChart = ({"chartBottomContent":"mP4NDR6G0dgDxWgEQh3t"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/components/LogosCompareChart/LogosCompareChart.tsx
var LogosCompareChart_assign = (undefined && undefined.__assign) || function () {
    LogosCompareChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LogosCompareChart_assign.apply(this, arguments);
};













var LogoTooltip = function (_a) {
    var chart = _a.chart;
    var featureValue = "".concat(numeral_default()(chart.point.x).format('0.0'), "%");
    var _b = chart.point, tagName = _b.tagName, uniqueImages = _b.uniqueImages, name = _b.name, withTag = _b.withTag;
    return ((0,jsx_runtime.jsxs)("div", LogosCompareChart_assign({ style: { fontSize: 14, color: (0,utils_colors/* getColorsByTheme */.hx)().textColor } }, { children: [(0,jsx_runtime.jsxs)("h2", LogosCompareChart_assign({ style: { marginBottom: 10, fontWeight: 600 } }, { children: [featureValue, (0,jsx_runtime.jsx)(Space/* default */.A, {}), tagName] })), (0,jsx_runtime.jsxs)("span", { children: [sprintf(l('%s unique images in total with the %s logo,', 'logosComparison'), uniqueImages.toLocaleString('ru-RU'), name), (0,jsx_runtime.jsx)("br", {}), sprintf(l(' %s of them contain', 'logosComparison'), withTag.toLocaleString('ru-RU')), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", LogosCompareChart_assign({ style: { fontWeight: 600 } }, { children: tagName }))] })] })));
};
var LogosComparison = function (_a) {
    var compareLogos = _a.compareLogos, visualInsightsFeatures = _a.visualInsightsFeatures, comparisonSuggestion = _a.comparisonSuggestion, manuallySelectedTags = _a.manuallySelectedTags, onPointClick = _a.onPointClick, onToggleLogoPicker = _a.onToggleLogoPicker, onToggleVisualTagsPicker = _a.onToggleVisualTagsPicker;
    var handleChartExport = function () {
        // VI TODO: add analytical event
    };
    if (!(compareLogos === null || compareLogos === void 0 ? void 0 : compareLogos.length)) {
        return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, LogosCompareChart_assign({ large: true, title: l('Select logos to compare'), message: l('This topic does not contain any logos so we didn\'t pick one automatically. '
                    + 'You can still add any logo from the account to display here'), image: "/static/images/no-logos-in-logo-comparison.svg" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "large", label: l('Add logo'), onClick: onToggleLogoPicker }) })) }));
    }
    if (!(visualInsightsFeatures === null || visualInsightsFeatures === void 0 ? void 0 : visualInsightsFeatures.length)) {
        return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, title: l('Select Visual tags to compare'), image: "/static/images/no-logos-in-logo-comparison.svg" }) }));
    }
    if (!(comparisonSuggestion === null || comparisonSuggestion === void 0 ? void 0 : comparisonSuggestion.length)) {
        return null;
    }
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(Dumbbell/* default */.A, { isRelative: true, title: l('Logo comparison'), info: l('This chart shows the most significant differences between selected logos.'
                + ' A set of visual tags for each logo is arranged in a way that reflects'
                + ' the relative difference between the number of unique images for each tag.'), height: "500px", series: getSeries(comparisonSuggestion), colors: LOGO_COLORS, configOptions: {
                tooltip: {
                    outside: true,
                    useHTML: true,
                    formatter: function () {
                        return (0,server_browser/* renderToString */.F0)(LogoTooltip({ chart: this }));
                    },
                    style: {
                        zIndex: 100,
                    },
                },
                yAxisOptions: {
                    labels: {
                        useHTML: true,
                        formatter: function () {
                            // eslint-disable-next-line react/no-this-in-sfc
                            var label = this.axis.defaultLabelFormatter.call(this);
                            if (manuallySelectedTags === null || manuallySelectedTags === void 0 ? void 0 : manuallySelectedTags.includes(label)) {
                                return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "edit", size: 12, color: "lightgray" }), label] }));
                            }
                            return label;
                        },
                        style: {
                            zIndex: 0,
                        },
                    },
                },
            }, bottomContent: (0,jsx_runtime.jsx)("div", LogosCompareChart_assign({ className: LogosCompareChart.chartBottomContent }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { link: true, primary: true, size: "small", label: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: "edit" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Edit')] }), onClick: onToggleVisualTagsPicker }) })), onClick: onPointClick }) }));
};
/* harmony default export */ const LogosCompareChart_LogosCompareChart = ((0,react.memo)(LogosComparison));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/components/LogosCompareChart/index.ts


;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/Logos.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Logos_Logos = ({"control":"_1Gv8aMlglnAz7XtU7kH"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/Logos.js




function Logos_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function Logos_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? Logos_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Logos_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }




























var Logos = function Logos(_ref) {
  var isLogosLoading = _ref.isLogosLoading,
    themeId = _ref.themeId,
    router = _ref.router,
    accountLogos = _ref.accountLogos,
    compareLogos = _ref.compareLogos,
    currentThemeLogos = _ref.currentThemeLogos,
    compareVisualInsights = _ref.compareVisualInsights,
    manuallySelectedTags = _ref.manuallySelectedTags,
    comparisonSuggestion = _ref.comparisonSuggestion,
    comparisonSuggestionLoading = _ref.comparisonSuggestionLoading,
    isThemesWithoutStatsLoading = _ref.isThemesWithoutStatsLoading,
    filter = _ref.filter,
    update = _ref.update,
    showModal = _ref.showModal,
    sendAnalyticalEvent = _ref.sendAnalyticalEvent,
    fetchThemesWithoutStats = _ref.fetchThemesWithoutStats,
    fetchAccountLogos = _ref.fetchAccountLogos,
    fetchViComparisonAuto = _ref.fetchViComparisonAuto,
    fetchViComparison = _ref.fetchViComparison;
  var _useState = (0,react.useState)(false),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    wasAutoSuggestion = _useState2[0],
    setWasAutoSuggestion = _useState2[1];
  var navigate = (0,react_router_dist/* useNavigate */.Zp)();
  var prev = usePrevious({
    compareVisualInsights: compareVisualInsights,
    compareLogos: compareLogos,
    comparisonSuggestion: comparisonSuggestion || undefined,
    filter: filter
  });
  (0,react.useEffect)(function () {
    fetchThemesWithoutStats();
    fetchAccountLogos();
    sendAnalyticalEvent({
      eventType: 'Compare logos: page opened'
    });
    return function () {
      navigate({
        pathname: window.location.pathname,
        search: (0,utils_routing/* queryToSearch */.w)(Logos_objectSpread(Logos_objectSpread({}, router.location.query), getDefaultViTagsQueryParams()))
      });
    };

    //
  }, []);
  (0,react.useEffect)(function () {
    if (isEqual_default()(prev === null || prev === void 0 ? void 0 : prev.compareVisualInsights, compareVisualInsights) && isEqual_default()(prev === null || prev === void 0 ? void 0 : prev.compareLogos, compareLogos)) {
      return;
    }
    if (!isEmpty_default()(compareLogos) && !isEmpty_default()(compareVisualInsights) && !(comparisonSuggestion !== null && comparisonSuggestion !== void 0 && comparisonSuggestion.length)) {
      sendAnalyticalEvent({
        eventType: 'Compare logos: chart loaded'
      });
    }

    // Page open and viTags or logos are not selected
    if (isEmpty_default()(compareVisualInsights) && !isEmpty_default()(compareLogos)) {
      handleFetchAutoSuggestion();
      return;
    }

    // fetch auto suggestions when logos change
    if (prev !== null && prev !== void 0 && prev.compareLogos && prev.compareLogos.length !== compareLogos.length) {
      handleFetchAutoSuggestion();
      return;
    }

    // Update state after auto suggestion
    if (wasAutoSuggestion) {
      setWasAutoSuggestion(false);
      return;
    }

    // viTags or logos were updated
    if (!isEmpty_default()(compareLogos) && (!isEmpty_default()(compareVisualInsights) || !isEqual_default()(prev === null || prev === void 0 ? void 0 : prev.compareLogos, compareLogos))) {
      handleFetchViComparison();
    }
  }, [compareLogos, compareVisualInsights]);
  (0,react.useEffect)(function () {
    if (wasAutoSuggestion && comparisonSuggestion !== null && comparisonSuggestion !== void 0 && comparisonSuggestion.length) {
      updateCompareVisualInsights();
    }
  }, [comparisonSuggestion]);
  (0,react.useEffect)(function () {
    if (!(prev !== null && prev !== void 0 && prev.filter) || prev !== null && prev !== void 0 && prev.filter.equals(filter)) {
      return;
    }
    handleFetchViComparison();
  }, [filter]);
  var updateCompareVisualInsights = function updateCompareVisualInsights() {
    var features = getDefaultViTagsQueryParams();
    comparisonSuggestion.forEach(function (viTag) {
      features[mapViTagTypeToQueryParam(viTag.tagType)].push(viTag.label);
    });
    handleApplyComparisonFeature(features);
  };
  var handleFetchViComparison = function handleFetchViComparison() {
    fetchViComparison({
      logos: compareLogos,
      viTags: compareVisualInsights
    });
    sendAnalyticalEvent({
      eventType: 'Compare logos: Get manual suggestion'
    });
  };
  var handleFetchAutoSuggestion = function handleFetchAutoSuggestion() {
    setWasAutoSuggestion(true);
    fetchViComparisonAuto({
      logos: compareLogos
    });
    sendAnalyticalEvent({
      eventType: 'Compare logos: Get auto suggestion'
    });
  };
  var handlePointClick = function handlePointClick(_ref2) {
    var point = _ref2.point;
    var type = point.type,
      name = point.name,
      value = point.tagName,
      topicId = point.topicId;
    sendAnalyticalEvent({
      eventType: 'Compare logos: point clicked',
      properties: (0,defineProperty/* default */.A)({
        logo: name
      }, type, value)
    });
    if (topicId) {
      var toggleFilters = function toggleFilters() {
        filter.doSelect(type, [value]);
        filter.doSelect('imageBrand', [name]);
      };
      var query = Logos_objectSpread(Logos_objectSpread({}, router.location.query), getDefaultViTagsQueryParams());
      var queryParams = Object.keys(query).reduce(function (acc, key) {
        return "".concat(acc, "&").concat(key, "=").concat(query[key]);
      }, '');
      toggleFilters();
      window.open(router.createPath({
        pathname: "/themes/".concat(topicId, "/gallery/images"),
        search: "?".concat(filter.toQueryString()).concat(queryParams)
      }), '_blank');
      toggleFilters();
    }
  };
  var handleApplyComparisonFeature = function handleApplyComparisonFeature(features) {
    sendAnalyticalEvent({
      eventType: features.logos ? 'Compare logos: change comparison logos' : 'Compare logos: change comparison vi features',
      properties: Logos_objectSpread({}, features)
    });
    update({
      pathname: router.location.pathname,
      query: Logos_objectSpread(Logos_objectSpread({}, features), {}, {
        manuallySelectedTags: features.logos ? null : features.manuallySelectedTags
      })
    });
  };
  if (isLogosLoading || comparisonSuggestionLoading || isThemesWithoutStatsLoading) {
    return /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.A, {});
  }
  if (!accountLogos.length) {
    return /*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(EndorseContent/* default */.A, {
        large: true,
        title: l('The chart is available with logo recognition feature'),
        message: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          children: [l('To enable paid "Logo Recognition" add-on, reach out to us via chat or email '), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: "mailto:".concat(constants/* SUPPORT_EMAIL */.Te),
            children: constants/* SUPPORT_EMAIL */.Te
          }), "."]
        }),
        image: "/static/images/no-vi-in-logo-comparison.svg"
      })
    });
  }
  var handleToggleLogoPicker = function handleToggleLogoPicker() {
    showModal('logoPickerModal', {
      onChange: handleApplyComparisonFeature
    });
  };
  var handleToggleVisualTagsPicker = function handleToggleVisualTagsPicker() {
    showModal('visualTagsPickerModal', {
      onChange: handleApplyComparisonFeature
    });
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
      className: classnames_default()(Logos_Logos.control),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(LogosPicker_LogosPicker, {
        themeId: themeId,
        compareLogos: compareLogos,
        currentThemeLogos: currentThemeLogos,
        onSelect: handleApplyComparisonFeature,
        onToggleLogoPicker: handleToggleLogoPicker
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(LogosCompareChart_LogosCompareChart, {
      manuallySelectedTags: manuallySelectedTags,
      compareLogos: compareLogos,
      visualInsightsFeatures: compareVisualInsights,
      comparisonSuggestion: comparisonSuggestion,
      onPointClick: handlePointClick,
      onToggleLogoPicker: handleToggleLogoPicker,
      onToggleVisualTagsPicker: handleToggleVisualTagsPicker
    })]
  });
};
/* harmony default export */ const imagesDashboard_Logos_Logos = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    isLogosLoading: (0,account_selectors/* isAccountLogosLoading */.Ej)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    accountLogos: (0,account_selectors/* getAccountLogos */.gW)(state),
    compareLogos: (0,imagesDashboard_selectors/* getCompareLogosWith */.kU)(state),
    currentThemeLogos: (0,account_selectors/* getCurrentThemeLogos */.hZ)(state),
    manuallySelectedTags: (0,imagesDashboard_selectors/* getManuallySelectedVisualTags */.Ct)(state),
    compareVisualInsights: (0,imagesDashboard_selectors/* getCompareVisualInsights */.z6)(state),
    comparisonSuggestion: (0,imagesDashboard_selectors/* getViComparisonSuggestion */.lt)(state),
    comparisonSuggestionLoading: (0,imagesDashboard_selectors/* getViComparisonSuggestionLoading */.B0)(state),
    isThemesWithoutStatsLoading: (0,themes_selectors/* getIsThemesWithoutStatsLoading */.I2)(state),
    filter: (0,filter_selectors/* getThemeFilter */.Ic)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  update: routing_actions/* update */.yo,
  fetchThemesWithoutStats: themes_model/* themesModel */.i.action.fetchThemesWithoutStats,
  fetchAccountLogos: account_model/* accountModel */.h.action.fetchAccountLogos,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
  fetchViComparisonAuto: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchViComparisonAuto,
  fetchViComparison: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchViComparison
}))(Logos));
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Logos/index.js

// EXTERNAL MODULE: ./src/containers/audience/Demographics/utils.ts
var Demographics_utils = __webpack_require__("+Olt");
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/GenderLineChart/GenderLineChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const GenderLineChart = ({"base":"jjNLVSU9Dvmg3wWu4upB","card":"UUINVKDxXp8PnHPTUrKZ","chart":"ImaaeHZsRmFWUEONflSq","container":"YObexHhfoXnai2IAStnT","dataContainer":"fcgsIRIfaKmzqMS4udc1","totalCountLabel":"ZWoOAAeBIIT4wzja1yfE","totalCount":"T3mTAwLCyeWkvn6Ttlhs","distributionItem":"ECOWEPKW0BNx8l9WAmgs","distributionLabel":"MNdH9TxfMSP50HiCtzDD","distributionCount":"bXDOQUR_cicxoOM8nKQV","distributionIcon":"kZqVLtKFmI8vGT4oOQJs"});
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/GenderLineChart/GenderLineChart.tsx
var GenderLineChart_assign = (undefined && undefined.__assign) || function () {
    GenderLineChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GenderLineChart_assign.apply(this, arguments);
};
var GenderLineChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var GenderLineChart_values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};























var GenderLineChart_GenderLineChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, interval = _a.interval, totalCount = _a.totalCount, distribution = _a.distribution, femaleDynamics = _a.femaleDynamics, maleDynamics = _a.maleDynamics, updateFilter = _a.updateFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = GenderLineChart_read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var handleChartLoad = function (chart) {
        setChartData(chart);
    };
    var handleDatePointClick = function (date, gender) {
        updateFilter({
            name: 'gender',
            value: [gender],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/audience/list"),
                query: GenderLineChart_assign({}, getDataPointPeriod(date, interval)),
            },
        });
    };
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        sendAnalyticalEvent({
            eventType: 'Gender line chart: exported',
            properties: {
                fileType: fileType,
                chartType: 'Gender line chart',
            },
        });
    };
    var renderChart = function () {
        if (!femaleDynamics && !maleDynamics)
            return null;
        var series = [];
        if (femaleDynamics) {
            series.push({
                type: 'spline',
                name: l('Female', 'demographics'),
                color: utils_colors/* CATEGORIZED_COLORS */.lC.female,
                key: 'female',
                pointStart: new Date(femaleDynamics[0].dateAsUtc).getTime(),
                pointInterval: interval,
                data: femaleDynamics.map(function (point) { return point.count; }),
            });
        }
        if (maleDynamics) {
            series.push({
                type: 'spline',
                name: l('Male', 'demographics'),
                color: utils_colors/* CATEGORIZED_COLORS */.lC.male,
                key: 'male',
                pointStart: new Date(maleDynamics[0].dateAsUtc).getTime(),
                pointInterval: interval,
                data: maleDynamics.map(function (point) { return point.count; }),
            });
        }
        var config = {
            chart: {
                zoomType: 'x',
                height: 450,
            },
            title: {
                text: 'genderLineChart',
                style: {
                    display: 'none',
                },
            },
            subtitle: {
                text: null,
            },
            xAxis: {
                type: 'datetime',
                title: {
                    text: l('Time'),
                    style: {
                        display: 'none',
                    },
                },
            },
            yAxis: [{
                    title: {
                        text: null,
                    },
                }],
            tooltip: {
                split: true,
                crosshairs: true,
                useHTML: true,
                formatter: (0,chart/* splineTooltipFormatter */.h)(),
            },
            plotOptions: {
                spline: {
                    marker: {
                        enabled: false,
                    },
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return handleDatePointClick(e.point.category, e.point.series.options.key); },
                        },
                    },
                },
            },
            series: series,
        };
        return ((0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: handleChartLoad }));
    };
    var renderCount = function (gender) {
        var _a;
        var info = {
            male: {
                icon: '/static/images/audience/male.svg',
                label: l('Male', 'demographics'),
            },
            female: {
                icon: '/static/images/audience/female.svg',
                label: l('Female', 'demographics'),
            },
            other: {
                icon: null,
                label: l('Other'),
            },
        }[gender];
        return ((0,jsx_runtime.jsxs)("div", GenderLineChart_assign({ className: GenderLineChart.distributionItem }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, GenderLineChart_assign({ className: GenderLineChart.distributionLabel }, { children: [info.label, " ", Math.floor((((_a = distribution[gender]) !== null && _a !== void 0 ? _a : 0) * 100) / totalCount), "%"] })), (0,jsx_runtime.jsx)("span", GenderLineChart_assign({ className: GenderLineChart.distributionCount }, { children: numeral_default()(distribution[gender]).format() }))] }), info.icon
                    ? (0,jsx_runtime.jsx)("img", { className: GenderLineChart.distributionIcon, alt: info.label, src: info.icon })
                    : null] })));
    };
    var renderDistribution = function () {
        if (!distribution)
            return null;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("span", GenderLineChart_assign({ className: GenderLineChart.totalCountLabel }, { children: l('Total authors') })), (0,jsx_runtime.jsx)(H2/* default */.A, GenderLineChart_assign({ className: GenderLineChart.totalCount }, { children: numeral_default()(totalCount).format() })), renderCount('female'), renderCount('male'), renderCount('other')] }));
    };
    return ((0,jsx_runtime.jsxs)("div", GenderLineChart_assign({ className: GenderLineChart.base }, { children: [(0,jsx_runtime.jsx)(Card/* default */.A, GenderLineChart_assign({ className: classnames_default()(GenderLineChart.card, GenderLineChart.chart) }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, GenderLineChart_assign({ loaded: !isFetching }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Authors over time', 'dashboard'), chartRef: chartData, onChartExport: onChartExport }), renderChart()] })) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Card/* default */.A, GenderLineChart_assign({ className: GenderLineChart.card }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, GenderLineChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)("div", GenderLineChart_assign({ className: GenderLineChart.dataContainer }, { children: renderDistribution() })) })) }))] })));
};
var getKeyPredicate = function (key, value) { return function (entity) { return entity[key] === value; }; };
/* harmony default export */ const components_GenderLineChart_GenderLineChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('genderLineChart', {
    aggregations: {
        authorGender: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}, false, function (_state, _a) {
    var e_1, _b;
    var data = _a.data;
    var values = data.aggregations.authorGender.values;
    var maleStats = values.find(getKeyPredicate('key', 'male'));
    var femaleStats = values.find(getKeyPredicate('key', 'female'));
    var totalCount = 0;
    var distribution = { other: 0 };
    try {
        for (var values_1 = GenderLineChart_values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) {
            var value = values_1_1.value;
            var key = value.key;
            if (Demographics_utils/* GENDERS */.n.includes(key))
                distribution[key] = value.count;
            else
                distribution.other += value.count;
            totalCount += value.count;
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (values_1_1 && !values_1_1.done && (_b = values_1.return)) _b.call(values_1);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return {
        totalCount: totalCount,
        distribution: distribution,
        maleDynamics: maleStats && maleStats.dates.values,
        femaleDynamics: femaleStats && femaleStats.dates.values,
    };
}, 'authorsCount'))(GenderLineChart_GenderLineChart));

;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/GenderLineChart/index.ts


// EXTERNAL MODULE: ./src/containers/audience/Demographics/components/AgeDistributionChart/index.ts + 2 modules
var AgeDistributionChart = __webpack_require__("5Xsp");
// EXTERNAL MODULE: ./src/containers/audience/Demographics/components/AudienceMap/index.ts + 2 modules
var AudienceMap = __webpack_require__("wlWs");
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/Demographics.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Demographics = ({"base":"rJuEheaqw7bLWUhAJoAT","age":"axdSEnJL_9vzmylwD0Cu"});
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/Demographics.tsx
var Demographics_assign = (undefined && undefined.__assign) || function () {
    Demographics_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Demographics_assign.apply(this, arguments);
};













var Demographics_Demographics = function (_a) {
    var _b = _a.showPage, showPage = _b === void 0 ? true : _b, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({ eventType: 'Demography: page opened' });
    }, []);
    if (!showPage) {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, title: l('Demography is not available in your subscription plan'), image: "/static/images/ic_empty_old_plan.png", message: l('Upgrade subscription plan to use demography. '
                        + 'Please, contact our support team to upgrade') })] }));
    }
    return ((0,jsx_runtime.jsxs)("div", Demographics_assign({ className: classnames_default()(Demographics.base) }, { children: [(0,jsx_runtime.jsx)(components_GenderLineChart_GenderLineChart, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Demographics_assign({ className: classnames_default()(Demographics.age) }, { children: [(0,jsx_runtime.jsx)(AudienceMap/* default */.A, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(AgeDistributionChart/* default */.A, {})] }))] })));
};
/* harmony default export */ const audience_Demographics_Demographics = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, { sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }), react.memo)(Demographics_Demographics));

;// CONCATENATED MODULE: ./src/containers/audience/Demographics/index.ts


// EXTERNAL MODULE: ./src/containers/audience/Interests/index.ts + 2 modules
var Interests = __webpack_require__("7HtA");
// EXTERNAL MODULE: ./src/containers/audience/Occupations/index.ts + 2 modules
var Occupations = __webpack_require__("8WjO");
// EXTERNAL MODULE: ./src/containers/audience/Authors/index.ts + 10 modules
var Authors = __webpack_require__("w98M");
;// CONCATENATED MODULE: ./src/models/VisualInsights.ts
var VisualInsightsCharts;
(function (VisualInsightsCharts) {
    VisualInsightsCharts["gallery"] = "";
    VisualInsightsCharts["bubble"] = "bubble";
    VisualInsightsCharts["engagement"] = "engagement";
    VisualInsightsCharts["graph"] = "graph";
})(VisualInsightsCharts || (VisualInsightsCharts = {}));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/components/buttonStyles.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const buttonStyles = ({"chartControlButton":"opCT7FTY9DCpJXf6XFpU"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/components/TrendsButton.tsx
var TrendsButton_assign = (undefined && undefined.__assign) || function () {
    TrendsButton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TrendsButton_assign.apply(this, arguments);
};







var TrendsButton = function (_a) {
    var _b;
    var isHighlighted = _a.isHighlighted, onClick = _a.onClick;
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, TrendsButton_assign({ position: "bottom center", text: l('Show recent changes in the popularity of visual tags.') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: isHighlighted, className: classnames_default()((_b = {}, _b[buttonStyles.chartControlButton] = !isHighlighted, _b)), label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { color: "primary", type: "trending-up" }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), l('Trends')] }), onClick: onClick }) })));
};
/* harmony default export */ const components_TrendsButton = (TrendsButton);

// EXTERNAL MODULE: ./src/components/ui/InfoBox/InfoBox.tsx + 1 modules
var InfoBox_InfoBox = __webpack_require__("Ikst");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/components/ComparisonInfo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ComparisonInfo = ({"datesContainer":"Ks2fU_wpGZ_YVHLE982m","date":"w9WI2bicZlJAKdJGSquw","comparisonInfoMessage":"wjnaCYSt9O7BAJAliKPL"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/components/ComparisonInfo.tsx
var ComparisonInfo_assign = (undefined && undefined.__assign) || function () {
    ComparisonInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ComparisonInfo_assign.apply(this, arguments);
};





var ComparisonInfo_ComparisonInfo = function (_a) {
    var isEmpty = _a.isEmpty, dateRanges = _a.dateRanges;
    if (isEmpty) {
        return ((0,jsx_runtime.jsx)(InfoBox_InfoBox/* default */.A, { warning: true, displayed: true, className: ComparisonInfo.comparisonInfoMessage, text: l('No data for the previous period to identify and compare trends.') }));
    }
    return ((0,jsx_runtime.jsxs)("div", ComparisonInfo_assign({ className: ComparisonInfo.datesContainer }, { children: [(0,jsx_runtime.jsxs)("span", ComparisonInfo_assign({ className: ComparisonInfo.date }, { children: [(0,formats/* formatDate */.Yq)(new Date(dateRanges.currentDateRange.from)), " \u2013 ", (0,formats/* formatDate */.Yq)(new Date(dateRanges.currentDateRange.to))] })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('is compared to', 'viCharts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", ComparisonInfo_assign({ className: ComparisonInfo.date }, { children: [(0,formats/* formatDate */.Yq)(new Date(dateRanges.previousDateRange.from)), " \u2013 ", (0,formats/* formatDate */.Yq)(new Date(dateRanges.previousDateRange.to))] }))] })));
};
/* harmony default export */ const components_ComparisonInfo = (ComparisonInfo_ComparisonInfo);

// EXTERNAL MODULE: ./src/components/other/BubbleChart/index.ts
var BubbleChart = __webpack_require__("lZuL");
// EXTERNAL MODULE: ./src/components/other/VisualInsightsChartTooltip/index.ts + 1 modules
var VisualInsightsChartTooltip = __webpack_require__("48Kc");
// EXTERNAL MODULE: ./src/containers/imagesDashboard/utils.ts
var imagesDashboard_utils = __webpack_require__("xRpW");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/BubbleChart/BubbleChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const BubbleChart_BubbleChart = ({"base":"Y4ElkJJdEvmfqQJfkD0Q"});
// EXTERNAL MODULE: ./src/utils/nodeChartUtils.ts
var nodeChartUtils = __webpack_require__("lXfu");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/BubbleChart/BubbleChart.tsx
var BubbleChart_assign = (undefined && undefined.__assign) || function () {
    BubbleChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return BubbleChart_assign.apply(this, arguments);
};
var BubbleChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var BubbleChart_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
























var CHARTS_HEIGHT_OFFSET = 48;
var getChartHeight = function (containerHeight) { return "".concat(containerHeight - CHARTS_HEIGHT_OFFSET, "px"); };
var BubbleChartContainer = function (_a) {
    var isLoading = _a.isLoading, data = _a.data, trends = _a.trends, filter = _a.filter, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateFilter = _a.updateFilter;
    var _b = BubbleChart_read((0,react.useState)(false), 2), isTrendsHighlighted = _b[0], setIsTrendsHighlighted = _b[1];
    var _c = BubbleChart_read((0,react.useState)(null), 2), chartData = _c[0], setChartData = _c[1];
    var _d = (0,useChartVolume/* default */.Ay)(), volume = _d.volume, usedVolume = _d.usedVolume, setVolume = _d.setVolume, setUsedVolume = _d.setUsedVolume;
    var ref = (0,react.useRef)(null);
    var chartHeight = (0,react.useMemo)(function () { var _a; return getChartHeight((_a = ref.current) === null || _a === void 0 ? void 0 : _a.clientHeight); }, [ref.current]);
    var isTrendsEmpty = (0,react.useMemo)(function () { return trends && (Object.keys(trends.data).reduce(function (acc, x) {
        acc += trends.data[x].length;
        return acc;
    }, 0) === 0); }, [trends]);
    var handleChartLoad = function (chart) {
        setChartData(chart);
    };
    var handleChangeChartParams = function (paramType, d) {
        sendAnalyticalEvent({
            eventType: "Visual Insights: ".concat(paramType, " changed"),
            properties: d,
        });
    };
    var handleExportChart = function (properties) {
        sendAnalyticalEvent({
            eventType: "Visual Insights: ".concat(VisualInsightsCharts.bubble, " chart exported"),
            properties: properties,
        });
    };
    var handlePointClick = function (properties) {
        var _a;
        var label = properties.label, type = properties.type;
        var selectedFilter = filter.findByName(type) || { value: [] };
        sendAnalyticalEvent({ eventType: "Visual Insights: ".concat(VisualInsightsCharts.bubble, " clicked"), properties: properties });
        if (!selectedFilter || !((_a = selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.value) === null || _a === void 0 ? void 0 : _a.includes(label))) {
            updateFilter({
                name: type,
                value: BubbleChart_spreadArray([label], BubbleChart_read(selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.value), false),
            });
        }
    };
    var handleChangeHighlighting = function (highlightingType, newValue, handler) {
        handleChangeChartParams(highlightingType, { selectedTab: VisualInsightsCharts.bubble, value: newValue });
        handler(newValue);
    };
    var handleChangeUsedVolume = function (values) {
        setUsedVolume(values);
        handleChangeChartParams('volume', { min: values[0], max: values[1] });
    };
    var bubbleChartData = (0,react.useMemo)(function () { return (0,nodeChartUtils/* formatBubbleChartData */.A7)(data, usedVolume, trends, isTrendsHighlighted); }, [data, usedVolume, trends, isTrendsHighlighted]);
    return ((0,jsx_runtime.jsx)("div", BubbleChart_assign({ className: BubbleChart_BubbleChart.base, ref: ref }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, BubbleChart_assign({ loaded: !isLoading && !!bubbleChartData }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Frequent Visual tags'), chartRef: chartData, additionalContent: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_TrendsButton, { isHighlighted: isTrendsHighlighted, onClick: function () { return handleChangeHighlighting('isTrendsHighlighted', !isTrendsHighlighted, setIsTrendsHighlighted); } }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(VolumePopover/* default */.A, { volume: volume, onChange: setVolume, onFinalChange: handleChangeUsedVolume })] }), onChartExport: handleExportChart }), isTrendsHighlighted ? (0,jsx_runtime.jsx)(components_ComparisonInfo, { isEmpty: isTrendsEmpty, dateRanges: trends.dateRanges }) : null, (0,jsx_runtime.jsx)(BubbleChart/* default */.A, { height: chartHeight, data: bubbleChartData, legendLabelFormatter: imagesDashboard_utils/* getVILabelTranslations */.C, tooltipFormatter: VisualInsightsChartTooltip/* default */.A, onBubbleClick: function (properties) { return handlePointClick(BubbleChart_assign(BubbleChart_assign({}, properties), { isTrendsHighlighted: isTrendsHighlighted, volume: { min: usedVolume[0], max: usedVolume[1] } })); }, onLegendClick: function (type) { return handleChangeChartParams('bubbles sorting', { type: type }); }, onChartLoad: handleChartLoad })] })) })));
};
/* harmony default export */ const imagesDashboard_BubbleChart_BubbleChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isLoading: (0,imagesDashboard_selectors/* getIsVisualInsightsLoading */.U6)(state),
    data: (0,imagesDashboard_selectors/* getVisualInsights */.u1)(state),
    trends: (0,imagesDashboard_selectors/* getVisualInsightsTrends */.km)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchVisualInsights: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchVisualInsights,
    fetchVisualInsightsTrends: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchVisualInsightsTrends,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchVisualInsights({ themeId: props.themeId });
    props.fetchVisualInsightsTrends({ themeId: props.themeId });
}), react.memo)(BubbleChartContainer));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/BubbleChart/index.ts


;// CONCATENATED MODULE: ./src/components/other/VisualInsightsEngagementChart/VisualInsightsEngagementChart.tsx
var VisualInsightsEngagementChart_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var VisualInsightsEngagementChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var VisualInsightsEngagementChart_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};









var LABEL_THRESHOLD = 1.75;
var VisualInsightsEngagementChart = /** @class */ (function (_super) {
    VisualInsightsEngagementChart_extends(VisualInsightsEngagementChart, _super);
    function VisualInsightsEngagementChart(props) {
        var _this = _super.call(this, props) || this;
        _this.handleChartLoad = function (chartData) {
            var onChartLoad = _this.props.onChartLoad;
            chartData.data = { maxPoint: [1, 1], minPoint: [1, 1] };
            if (onChartLoad)
                onChartLoad(chartData);
            else
                _this.setState({ chartData: chartData });
        };
        _this.handleChartExport = function (_a) {
            var fileType = _a.fileType;
            _this.props.onChartExport({
                properties: {
                    fileType: fileType,
                    chartType: 'Visual Insights Engagement',
                },
            });
        };
        _this.getSeriesData = function (imageObj) {
            return imageObj.map(function (image) {
                return {
                    x: image.imagesCount,
                    y: image.engagement,
                    name: image.name,
                    value: image.imagesCount,
                    imagesCount: image.imagesCount,
                    mentionsCount: image.count,
                    engagement: image.engagement,
                    type: image.type,
                };
            });
        };
        _this.getChartData = function () {
            var data = _this.props.data;
            var series = [];
            Object.keys(data).forEach(function (viTagType) {
                var dataByType = data[viTagType];
                var type = (0,utils/* formatVisualInsightsTagTypes */.U)(viTagType);
                var seriesData = _this.getSeriesData(dataByType || []);
                series.push({
                    type: 'scatter',
                    name: type,
                    data: seriesData,
                    color: utils_colors/* visualInsightsChartColors */.Cg[type],
                    marker: {
                        radius: 4,
                        symbol: 'circle',
                    },
                });
            });
            return { series: series };
        };
        _this.getChartMinMaxPoint = function (series) {
            var chartMaxX = 0;
            var chartMaxY = 0;
            var chartMinX = 0;
            var chartMinY = 0;
            series.forEach(function (s) {
                var _a, _b, _c, _d;
                if (s.name === 'line' || !s.visible) {
                    return;
                }
                var maxPointX = (_a = (0,lodash.maxBy)(s.data, 'x')) === null || _a === void 0 ? void 0 : _a.x;
                var maxPointY = (_b = (0,lodash.maxBy)(s.data, 'y')) === null || _b === void 0 ? void 0 : _b.y;
                var minPointX = (_c = (0,lodash.minBy)(s.data, 'x')) === null || _c === void 0 ? void 0 : _c.x;
                var minPointY = (_d = (0,lodash.minBy)(s.data, 'y')) === null || _d === void 0 ? void 0 : _d.y;
                if (!chartMinX && !chartMinY) {
                    chartMinX = minPointX;
                    chartMinY = minPointY;
                }
                if (maxPointX > chartMaxX) {
                    chartMaxX = maxPointX;
                }
                if (maxPointY > chartMaxY) {
                    chartMaxY = maxPointY;
                }
                if (minPointX < chartMinX) {
                    chartMinX = minPointX;
                }
                if (minPointY < chartMinY) {
                    chartMinY = minPointY;
                }
            });
            return [chartMinX, chartMinY, chartMaxX, chartMaxY];
        };
        _this.drawMedian = function (chart) {
            var MAX_POINT_PADDING = 50;
            var _a = VisualInsightsEngagementChart_read(_this.getChartMinMaxPoint(chart.series), 4), minX = _a[0], minY = _a[1], maxX = _a[2], maxY = _a[3];
            chart.data.maxPoint = [maxX, maxY];
            chart.data.minPoint = [minX, minY];
            chart.series[0].setData([]);
            chart.series[0].addPoint([minX || 1, minY || 1]);
            chart.series[0].addPoint([maxX + MAX_POINT_PADDING || 1000, maxY + MAX_POINT_PADDING || 1000]);
        };
        _this.state = {
            chartData: null,
        };
        return _this;
    }
    VisualInsightsEngagementChart.prototype.dataLabelsFormatter = function () {
        var _a, _b, _c;
        var chart = this.series.chart;
        var showAllViTagLabels = true; // TODO: Add ability to hide not popular labels. Add a switch for this param
        if (showAllViTagLabels
            || this.x > ((_a = chart.data) === null || _a === void 0 ? void 0 : _a.maxPoint[0]) / LABEL_THRESHOLD
            || this.y > ((_b = chart.data) === null || _b === void 0 ? void 0 : _b.maxPoint[1]) / LABEL_THRESHOLD) {
            return (_c = this.point) === null || _c === void 0 ? void 0 : _c.name;
        }
        return null;
    };
    VisualInsightsEngagementChart.prototype.renderChart = function () {
        var _this = this;
        var series = this.getChartData().series;
        var config = {
            chart: {
                events: {
                    load: function (e) {
                        _this.drawMedian(e.target);
                    },
                },
                height: this.props.height || '100%',
            },
            title: {
                text: null,
            },
            xAxis: {
                type: 'logarithmic',
                title: {
                    text: l('Unique images', 'viEngagementChart'),
                },
            },
            yAxis: {
                type: 'logarithmic',
                title: {
                    text: l('Engagement'),
                },
            },
            legend: {
                labelFormatter: function () {
                    return (0,imagesDashboard_utils/* getVILabelTranslations */.C)(this.name);
                },
            },
            tooltip: {
                padding: 0,
                outside: true,
                useHTML: true,
                formatter: function () {
                    return (0,VisualInsightsChartTooltip/* default */.A)({ chart: this });
                },
            },
            plotOptions: {
                series: {
                    cursor: 'pointer',
                    events: {
                        hide: function (e) {
                            _this.drawMedian(e.target.chart);
                        },
                        show: function (e) {
                            _this.drawMedian(e.target.chart);
                        },
                        click: function (e) {
                            _this.props.onPointClick({ label: e.point.name, type: e.point.type });
                        },
                    },
                    dataLabels: {
                        enabled: true,
                        formatter: this.dataLabelsFormatter,
                    },
                },
            },
            series: VisualInsightsEngagementChart_spreadArray([
                {
                    type: 'line',
                    name: 'line',
                    dashStyle: 'Dash',
                    color: utils_colors/* colors */.Tj.grayLight,
                    marker: { enabled: false },
                    states: {
                        hover: {
                            lineWidth: 0,
                        },
                    },
                    enableMouseTracking: false,
                    animation: false,
                }
            ], VisualInsightsEngagementChart_read(series), false),
        };
        return ((0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: this.handleChartLoad }));
    };
    VisualInsightsEngagementChart.prototype.render = function () {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [this.props.withExport
                    && ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: (0,jsx_runtime.jsx)("span", { children: l('Distribution by engagement') }), chartRef: this.state.chartData, onChartExport: this.handleChartExport })), this.renderChart()] }));
    };
    return VisualInsightsEngagementChart;
}(react.Component));
/* harmony default export */ const VisualInsightsEngagementChart_VisualInsightsEngagementChart = (VisualInsightsEngagementChart);

;// CONCATENATED MODULE: ./src/components/other/VisualInsightsEngagementChart/index.ts


;// CONCATENATED MODULE: ./src/containers/imagesDashboard/EngagementChart/EngagementChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EngagementChart = ({"base":"l3Dk0jI27VX8YVY6Ty3C"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/EngagementChart/EngagementChart.tsx
var EngagementChart_assign = (undefined && undefined.__assign) || function () {
    EngagementChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return EngagementChart_assign.apply(this, arguments);
};
var EngagementChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var EngagementChart_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
















var EngagementChart_CHARTS_HEIGHT_OFFSET = 48;
var EngagementChart_getChartHeight = function (containerHeight) { return "".concat(containerHeight - EngagementChart_CHARTS_HEIGHT_OFFSET, "px"); };
var EngagementChartContainer = function (_a) {
    var isLoading = _a.isLoading, data = _a.data, filter = _a.filter, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateFilter = _a.updateFilter;
    var _b = EngagementChart_read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var ref = (0,react.useRef)(null);
    var chartHeight = (0,react.useMemo)(function () { var _a; return EngagementChart_getChartHeight((_a = ref.current) === null || _a === void 0 ? void 0 : _a.clientHeight); }, [ref.current]);
    var handleChartLoad = function (chart) {
        setChartData(chart);
    };
    var handleExportChart = function (properties) {
        sendAnalyticalEvent({
            eventType: "Visual Insights: ".concat(VisualInsightsCharts.engagement, " chart exported"),
            properties: properties,
        });
    };
    var handlePointClick = function (properties) {
        var _a;
        var label = properties.label, type = properties.type;
        var selectedFilter = filter.findByName(type) || { value: [] };
        sendAnalyticalEvent({ eventType: "Visual Insights: ".concat(VisualInsightsCharts.engagement, " clicked"), properties: properties });
        if (!selectedFilter || !((_a = selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.value) === null || _a === void 0 ? void 0 : _a.includes(label))) {
            updateFilter({
                name: type,
                value: EngagementChart_spreadArray([label], EngagementChart_read(selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.value), false),
            });
        }
    };
    return ((0,jsx_runtime.jsx)("div", EngagementChart_assign({ className: EngagementChart.base, ref: ref }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, EngagementChart_assign({ loaded: !isLoading && !!data }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Distribution by engagement'), chartRef: chartData, onChartExport: handleExportChart }), (0,jsx_runtime.jsx)(VisualInsightsEngagementChart_VisualInsightsEngagementChart, { height: chartHeight, data: data, onPointClick: handlePointClick, onChartLoad: handleChartLoad, onChartExport: function () { } })] })) })));
};
/* harmony default export */ const EngagementChart_EngagementChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isLoading: (0,imagesDashboard_selectors/* getIsVisualInsightsLoading */.U6)(state),
    data: (0,imagesDashboard_selectors/* getVisualInsights */.u1)(state),
    trends: (0,imagesDashboard_selectors/* getVisualInsightsTrends */.km)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchVisualInsights: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchVisualInsights,
    fetchVisualInsightsTrends: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchVisualInsightsTrends,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchVisualInsights({ themeId: props.themeId });
    props.fetchVisualInsightsTrends({ themeId: props.themeId });
}), react.memo)(EngagementChartContainer));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/EngagementChart/index.ts


;// CONCATENATED MODULE: ./src/containers/imagesDashboard/components/ClustersButton.tsx
var ClustersButton_assign = (undefined && undefined.__assign) || function () {
    ClustersButton_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ClustersButton_assign.apply(this, arguments);
};






var ClustersButton_TrendsButton = function (_a) {
    var _b;
    var isHighlighted = _a.isHighlighted, onClick = _a.onClick;
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, ClustersButton_assign({ position: "bottom center", text: l('Determine groups of visual tags that co-occur frequently.') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: isHighlighted, className: classnames_default()((_b = {}, _b[buttonStyles.chartControlButton] = !isHighlighted, _b)), label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("img", { style: { width: 14 }, src: "/static/images/vi_clusters_icon.svg", alt: "clusters" }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), l('Clusters')] }), onClick: onClick }) })));
};
/* harmony default export */ const ClustersButton = (ClustersButton_TrendsButton);

// EXTERNAL MODULE: ./src/components/other/NetworkGraph/index.ts + 3 modules
var NetworkGraph = __webpack_require__("r7Fg");
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Graph/Graph.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Graph = ({"base":"rD_zEu_vSObtqe0gs1nQ"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Graph/Graph.tsx
var Graph_assign = (undefined && undefined.__assign) || function () {
    Graph_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Graph_assign.apply(this, arguments);
};
var Graph_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var Graph_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};





















var GraphContainer = function (_a) {
    var isLoading = _a.isLoading, trends = _a.trends, data = _a.data, filter = _a.filter, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateFilter = _a.updateFilter;
    var _b = Graph_read((0,react.useState)(false), 2), isTrendsHighlighted = _b[0], setIsTrendsHighlighted = _b[1];
    var _c = Graph_read((0,react.useState)(false), 2), isCommunitiesHighlighted = _c[0], setIsCommunitiesHighlighted = _c[1];
    var ref = (0,react.useRef)(null);
    var isTrendsEmpty = (0,react.useMemo)(function () { return trends && (Object.keys(trends.data).reduce(function (acc, x) {
        acc += trends.data[x].length;
        return acc;
    }, 0) === 0); }, [trends]);
    var handleChangeChartParams = function (paramType, d) {
        sendAnalyticalEvent({
            eventType: "Visual Insights: ".concat(paramType, " changed"),
            properties: d,
        });
    };
    var handlePointClick = function (properties) {
        var _a;
        var label = properties.label, type = properties.type;
        var selectedFilter = filter.findByName(type) || { value: [] };
        sendAnalyticalEvent({ eventType: "Visual Insights: ".concat(VisualInsightsCharts.graph, " clicked"), properties: properties });
        if (!selectedFilter || !((_a = selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.value) === null || _a === void 0 ? void 0 : _a.includes(label))) {
            updateFilter({
                name: type,
                value: Graph_spreadArray([label], Graph_read(selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.value), false),
            });
        }
    };
    var handleChangeHighlighting = function (highlightingType, newValue, handler) {
        handleChangeChartParams(highlightingType, { selectedTab: VisualInsightsCharts.graph, value: newValue });
        handler(newValue);
    };
    var graphData = (0,react.useMemo)(function () { return data === null || data === void 0 ? void 0 : data.getChartData(trends, isCommunitiesHighlighted, isTrendsHighlighted); }, [data, trends, isCommunitiesHighlighted, isTrendsHighlighted]);
    return ((0,jsx_runtime.jsx)("div", Graph_assign({ className: Graph.base, ref: ref }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, Graph_assign({ loaded: !isLoading && !!graphData }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { withoutExport: true, title: l('Frequent Visual tags'), additionalContent: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_TrendsButton, { isHighlighted: isTrendsHighlighted, onClick: function () { return handleChangeHighlighting('isTrendsHighlighted', !isTrendsHighlighted, setIsTrendsHighlighted); } }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ClustersButton, { isHighlighted: isCommunitiesHighlighted, onClick: function () { return handleChangeHighlighting('isCommunitiesHighlighted', !isCommunitiesHighlighted, setIsCommunitiesHighlighted); } })] }) }), isTrendsHighlighted ? (0,jsx_runtime.jsx)(components_ComparisonInfo, { isEmpty: isTrendsEmpty, dateRanges: trends.dateRanges }) : null, (0,jsx_runtime.jsx)(NetworkGraph/* default */.A, { height: "90%", data: graphData, onNodeClick: (0,lodash.debounce)(function (properties) { return handlePointClick(Graph_assign(Graph_assign({}, properties), { isTrendsHighlighted: isTrendsHighlighted, isCommunitiesHighlighted: isCommunitiesHighlighted })); }, 1000) })] })) })));
};
/* harmony default export */ const Graph_Graph = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isLoading: (0,imagesDashboard_selectors/* getIsVisualInsightsInterconnectionsLoading */.jW)(state),
    data: (0,imagesDashboard_selectors/* getVisualInsightsInterconnections */.xy)(state),
    trends: (0,imagesDashboard_selectors/* getVisualInsightsTrends */.km)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchVisualInsightsInterconnections: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchVisualInsightsInterconnections,
    fetchVisualInsightsTrends: imagesDashboard_model/* imagesDashboardModel */.c.action.fetchVisualInsightsTrends,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchVisualInsightsInterconnections({ themeId: props.themeId });
    props.fetchVisualInsightsTrends({ themeId: props.themeId });
}), react.memo)(GraphContainer));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/Graph/index.ts


;// CONCATENATED MODULE: ./src/containers/Explore/Explore.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Explore = ({"section":"iNKRTi1RkL33Kmh85SgV","sectionTitle":"rR6OolyDcb_dewMJB4Og","casesContainer":"kWrUaZutHxEk9nZPohLs","case":"_iaEU2poRVVrbO4d09Wg","small":"p_crzSclbUGSHR0x9lih","disabled":"I5wgxBwzTbazp8Mr61PO","caseContainer":"AsyhbRzjhYiKm3DZSnAW","icon":"df1ROTlFRVdqqavKNjy5","caseTitle":"DXTWg_1N0FKSLRsEi4AP"});
;// CONCATENATED MODULE: ./src/containers/Explore/Explore.tsx
var Explore_assign = (undefined && undefined.__assign) || function () {
    Explore_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Explore_assign.apply(this, arguments);
};


















var Explore_Explore = function (_a) {
    var isVisualInsightsAllowed = _a.isVisualInsightsAllowed, isVisualInsightsDataAvailable = _a.isVisualInsightsDataAvailable, isAudienceInsightsAllowed = _a.isAudienceInsightsAllowed, topicId = _a.topicId, filter = _a.filter, updateLocation = _a.updateLocation, fetchAccountLogos = _a.fetchAccountLogos, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({ eventType: 'Explore: page opened' });
        fetchAccountLogos();
    }, []);
    var getPermissionInfo = function (permissionName) {
        if (!permissionName)
            return { isAllowed: true };
        var getAddonMessage = function (addonTitle) { return ({
            title: sprintf(l('The %s add-on is used for this case, which is not included in your subscription plan'), addonTitle),
            text: sprintf(l('Contact our support team to find out about %s add-on.', 'explore'), addonTitle),
        }); };
        return {
            visualInsights: {
                isAllowed: isVisualInsightsAllowed,
                message: getAddonMessage(l('Visual Insights', 'explore')),
            },
            audienceInsights: {
                isAllowed: isAudienceInsightsAllowed,
                message: getAddonMessage(l('Audience Insights', 'explore')),
            },
            visualInsightsData: {
                isAllowed: isVisualInsightsAllowed && isVisualInsightsDataAvailable,
                message: isVisualInsightsAllowed
                    ? {
                        title: l('Image collection is required for visual analysis'),
                        text: l('To activate this card, set up the collection by text on images in the Topic settings'
                            + ' or contact our support team to enable collection by logos.'),
                    }
                    : getAddonMessage(l('Visual Insights', 'explore')),
            },
        }[permissionName];
    };
    var handleClick = function (item) {
        sendAnalyticalEvent({
            eventType: 'Explore: case clicked',
            properties: { caseName: item.id },
        });
        updateLocation({
            pathname: "/themes/".concat(topicId).concat(item.path),
            search: createQueryStringForCase(item, filter),
        });
    };
    var renderCaseCard = function (c, isSmall, isDisabled) {
        var _a, _b;
        if (isSmall === void 0) { isSmall = false; }
        if (isDisabled === void 0) { isDisabled = false; }
        return ((0,jsx_runtime.jsxs)(Card/* default */.A, Explore_assign({ fullWidth: !isSmall, className: classnames_default()(Explore.case, (_a = {}, _a[Explore.small] = isSmall, _a[Explore.disabled] = isDisabled, _a)), onClick: function () { return handleClick(c); } }, { children: [(0,jsx_runtime.jsx)("img", { className: classnames_default()(Explore.icon, (_b = {}, _b[Explore.small] = isSmall, _b)), src: c.iconPath, alt: "" }), isSmall ? (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}) : (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", Explore_assign({ className: Explore.caseTitle }, { children: c.title() }))] })));
    };
    var renderSections = function (section) {
        var _a;
        var isSmall = section.layoutType === 'small';
        return ((0,jsx_runtime.jsxs)("div", Explore_assign({ className: classnames_default()(Explore.section, (_a = {}, _a[Explore.small] = isSmall, _a)) }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, Explore_assign({ className: Explore.sectionTitle }, { children: section.title().toUpperCase() })), (0,jsx_runtime.jsx)("div", Explore_assign({ className: Explore.casesContainer }, { children: section.cases.map(function (c, index) {
                        var _a;
                        var _b, _c;
                        var permissionInfo = getPermissionInfo(c.permission);
                        return ((0,jsx_runtime.jsx)("div", Explore_assign({ className: classnames_default()(Explore.caseContainer, (_a = {}, _a[Explore.small] = isSmall, _a)) }, { children: (0,jsx_runtime.jsx)(Popover/* default */.A, Explore_assign({ wide: true, inverted: true, fullWidth: true, on: "hover", show: permissionInfo.isAllowed ? false : undefined, title: (_b = permissionInfo.message) === null || _b === void 0 ? void 0 : _b.title, content: (_c = permissionInfo.message) === null || _c === void 0 ? void 0 : _c.text }, { children: renderCaseCard(c, isSmall, !permissionInfo.isAllowed) })) }), index));
                    }) }))] }), section.title()));
    };
    return ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: EXPLORE_CONFIG.map(function (section) { return renderSections(section); }) }) }));
};
/* harmony default export */ const containers_Explore_Explore = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    isVisualInsightsAllowed: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
    isVisualInsightsDataAvailable: (0,themes_selectors/* isVisualInsightsExploreAllowed */.b5)(state),
    isAudienceInsightsAllowed: (0,account_selectors/* canShowAudienceInsights */.Po)(state),
}); }, {
    updateLocation: routing_actions/* updateSearch */.YX,
    fetchAccountLogos: account_model/* accountModel */.h.action.fetchAccountLogos,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(Explore_Explore));

;// CONCATENATED MODULE: ./src/containers/Explore/index.ts


// EXTERNAL MODULE: ./src/components/other/MentionWallCard/index.js + 2 modules
var MentionWallCard = __webpack_require__("0whn");
;// CONCATENATED MODULE: ./src/pages/DemoPage/DemoPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const DemoPage = ({"base":"QbaAyabmYzXoygszO7Ew","header":"knezWbKYgyS2p0MhY1FY","content":"EU_DYwnKhFtBfPkMHFnW","credit":"EnemwGGcu5IUnlQYrpqK","grid":"UyapXWMtbxG6YIAb0RS_"});
;// CONCATENATED MODULE: ./src/pages/DemoPage/DemoPage.tsx
var DemoPage_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var DemoPage_assign = (undefined && undefined.__assign) || function () {
    DemoPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DemoPage_assign.apply(this, arguments);
};

/*
    eslint
        react/jsx-no-bind: 0
*/
















var masonryOptions = {
    itemSelector: '.imageCardDemo',
    columnWidth: 300,
    gutter: 16,
    isFitWidth: true,
};
var DemoPage_config = {
    smw: {
        logo: 'http://smwkyiv.com/img/logo1.png',
        bg: '#262626',
        cardBgColor: 'linear-gradient(45deg, #FFFF00, #FBC02D)',
        creditBg: 'linear-gradient(to bottom, transparent, #262626)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
    },
    ys: {
        logo: '/static/images/logo/mainVersion/logo_outline.svg',
        bg: '#001F26',
        cardBgColor: 'linear-gradient(135deg,#60ca23,#35d88a)',
        creditBg: 'transparent',
        showCredit: false,
        creditHeight: '0px',
        textColor: 'rgba(0,0,0,0.87)',
    },
    bigbrandtheory: {
        logo: '/static/images/bbt.png',
        bg: '#000',
        cardBgColor: 'linear-gradient(45deg, #BDE150, #67df4e)',
        creditBg: 'linear-gradient(to bottom, transparent, #262626)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
    },
    xpdays: {
        logo: '/static/images/xpdays.svg',
        bg: '#000',
        cardBgColor: 'linear-gradient(45deg, #9be15d 0%, #00e3ae 100%)',
        creditBg: 'linear-gradient(to bottom, transparent, #262626)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
    },
    michelin: {
        logo: '/static/images/michelin3.jpg',
        bg: '#004F9E',
        cardBgColor: '#e5edf5',
        creditBg: 'linear-gradient(to bottom, transparent, #004F9E)',
        showCredit: true,
        creditHeight: '15%',
        textColor: 'rgba(0,0,0,0.87)',
        showSentiment: true,
        logoContainerStyle: {
            display: 'none',
        },
    },
    summit42: {
        logo: '/static/images/summit42.png',
        bg: '#000000',
        cardBgColor: '#ffc000',
        creditBg: 'linear-gradient(to bottom, transparent, #000000)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
    },
    iforum: {
        logo: '/static/images/iforum.svg',
        bg: '#000000',
        cardBgColor: '#33CEED',
        creditBg: 'linear-gradient(to bottom, transparent, #000000)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
    },
    smwnyc: {
        logo: '/static/images/smwnyc.svg',
        bg: 'linear-gradient(124deg, #d94b82, #5b4b82 45%, #1b2039)',
        cardBgColor: 'rgba(255, 255, 255, 0.85)',
        creditBg: 'linear-gradient(to bottom, transparent, #1b2039)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
    },
    smwla: {
        logo: '/static/images/smwla.svg',
        bg: 'linear-gradient(124deg, #d94b82, #5b4b82 45%, #1b2039)',
        cardBgColor: 'rgba(255, 255, 255, 0.85)',
        creditBg: 'linear-gradient(to bottom, transparent, #1b2039)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
        logoStyle: {
            maxHeight: '45%',
        },
    },
    smwmexico: {
        logo: '/static/images/smwmexico.svg',
        bg: 'linear-gradient(124deg, #d94b82, #5b4b82 45%, #1b2039)',
        cardBgColor: 'rgba(255, 255, 255, 0.85)',
        creditBg: 'linear-gradient(to bottom, transparent, #1b2039)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.87)',
        logoStyle: {
            maxHeight: '45%',
        },
    },
    saastr2019: {
        logo: '/static/images/saastr2019.png',
        bg: '#2E1229',
        cardBgColor: '#6C3955',
        creditBg: 'linear-gradient(to bottom, transparent, #2E1229)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(255,255,255,0.8)',
    },
    thinkstage: {
        logo: '/static/images/thinkstage.png',
        bg: '#1E293A',
        cardBgColor: '#2f415c',
        creditBg: 'linear-gradient(to bottom, transparent, #1E293A)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(255,255,255,0.8)',
        logoStyle: {
            maxHeight: '55%',
        },
    },
    thinkstage2: {
        logo: '/static/images/thinkstage.png',
        bg: '#0095da',
        cardBgColor: '#ffffff',
        creditBg: 'linear-gradient(to bottom, transparent, #0095da)',
        showCredit: true,
        creditHeight: '20%',
        textColor: 'rgba(0,0,0,0.8)',
        logoStyle: {
            maxHeight: '55%',
        },
        logoContainerStyle: {
            height: 90,
        },
    },
};
var CollagePage = /** @class */ (function (_super) {
    DemoPage_extends(CollagePage, _super);
    function CollagePage() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.fetchMentions = function () {
            _this.props.fetchDemoMentions();
            _this.timer = setTimeout(_this.fetchMentions, 30000);
        };
        return _this;
    }
    CollagePage.prototype.componentDidMount = function () {
        this.props.sendAnalyticalEvent({ eventType: 'Mention wall: page opened' });
        this.props.setCurrentTheme({ themeId: this.props.params.id });
        this.fetchMentions();
        document.getElementsByTagName('body')[0].style.overflow = 'hidden';
        var intercom = document.getElementById('intercom-container');
        if (intercom) {
            intercom.style.display = 'none';
        }
    };
    CollagePage.prototype.componentWillUnmount = function () {
        clearInterval(this.timer);
        document.getElementsByTagName('body')[0].style.overflow = 'auto';
        var intercom = document.getElementById('intercom-container');
        if (intercom) {
            intercom.style.display = 'block';
        }
    };
    CollagePage.prototype.render = function () {
        var _a = this.props, loading = _a.loading, mentions = _a.mentions;
        var opts = DemoPage_config[this.props.params.type];
        return ((0,jsx_runtime.jsxs)("div", DemoPage_assign({ className: classnames_default()(DemoPage.base), style: { background: opts.bg } }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Wall') }), (0,jsx_runtime.jsx)("div", DemoPage_assign({ className: classnames_default()(DemoPage.header), style: opts.logoContainerStyle }, { children: (0,jsx_runtime.jsx)("img", { src: opts.logo, style: opts.logoStyle, alt: "" }) })), opts.showCredit
                    && ((0,jsx_runtime.jsx)("div", DemoPage_assign({ className: classnames_default()(DemoPage.credit), style: { background: opts.creditBg, height: opts.creditHeight } }, { children: (0,jsx_runtime.jsx)("img", { src: "/static/images/youscan.io.svg", alt: "youscan.io" }) }))), (0,jsx_runtime.jsx)("div", DemoPage_assign({ className: classnames_default()(DemoPage.content) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, DemoPage_assign({ loaded: !loading, empty: !mentions.length, emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/empty_gallery.svg", message: l('No mentions match your filter. Try changing the filter or date range.') }) }, { children: function () {
                            return (0,jsx_runtime.jsx)((react_masonry_component_lib_default()), DemoPage_assign({ className: classnames_default()(DemoPage.grid), options: masonryOptions, disableImagesLoaded: false, updateOnEachImageLoad: true }, { children: mentions.map(function (mention) {
                                    return (0,jsx_runtime.jsx)(MentionWallCard/* default */.A, { textColor: opts.textColor, cardBackgroundColor: opts.cardBgColor, showSentiment: opts.showSentiment, sentiment: mention.sentiment, imageUrl: mention.imageUrl, text: mention.text, publishedAt: mention.publishedAt, authorName: mention.author.name, authorAvatar: mention.author.avatarUrl, sourceName: mention.source.name, textSize: "16" }, mention.id);
                                }) }));
                        } })) }))] })));
    };
    return CollagePage;
}(react.PureComponent));
/* harmony default export */ const DemoPage_DemoPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    mentions: (0,mentionStream_selectors/* getMentions */.OM)(state),
    loading: (0,mentionStream_selectors/* isLoadingMentions */.CG)(state),
}); }, {
    fetchDemoMentions: mentionStream_model/* mentionStreamModel */.K.action.fetchDemoMentions,
    setCurrentTheme: themes_model/* themesModel */.i.action.setCurrentTheme,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchDemoMentions();
}))(CollagePage));

;// CONCATENATED MODULE: ./src/pages/DemoPage/index.ts


;// CONCATENATED MODULE: ./src/containers/filters/ThemeAnalyticsFilter/ThemeAnalyticsFilter.tsx


var ThemeAnalyticsFilter = function () {
    return (0,jsx_runtime.jsx)(ThemeFilters_TopicFilters, {});
};
/* harmony default export */ const ThemeAnalyticsFilter_ThemeAnalyticsFilter = (ThemeAnalyticsFilter);

;// CONCATENATED MODULE: ./src/containers/filters/ThemeAnalyticsFilter/index.ts


;// CONCATENATED MODULE: ./src/components/other/BottomWarning/BottomWarning.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const BottomWarning = ({"warningText":"h0if6YQkCVPoXO3KaxlW"});
;// CONCATENATED MODULE: ./src/components/other/BottomWarning/BottomWarning.tsx
var BottomWarning_assign = (undefined && undefined.__assign) || function () {
    BottomWarning_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return BottomWarning_assign.apply(this, arguments);
};



var BottomWarning_BottomWarning = function (_a) {
    var children = _a.children, warningText = _a.warningText, isShowWarning = _a.isShowWarning;
    if (!isShowWarning || !warningText) {
        return (0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: children });
    }
    return ((0,jsx_runtime.jsxs)("div", BottomWarning_assign({ className: "__BottomWarning__" }, { children: [(0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: children }), (0,jsx_runtime.jsx)("div", BottomWarning_assign({ className: classnames_default()(BottomWarning.warningText) }, { children: warningText }))] })));
};
/* harmony default export */ const other_BottomWarning_BottomWarning = (BottomWarning_BottomWarning);

;// CONCATENATED MODULE: ./src/components/other/BottomWarning/index.ts


;// CONCATENATED MODULE: ./src/components/other/YoutubePolicyBottomMessage/YoutubePolicyBottomMessage.tsx
var YoutubePolicyBottomMessage_assign = (undefined && undefined.__assign) || function () {
    YoutubePolicyBottomMessage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return YoutubePolicyBottomMessage_assign.apply(this, arguments);
};





var renderYouTubePolicyWarning = function () {
    var POLICY_URL = 'https://developers.google.com/youtube/terms/developer-policies';
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('All the metrics do not include the statistics from Youtube according to'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", YoutubePolicyBottomMessage_assign({ href: POLICY_URL, target: "_blank", rel: "noopener noreferrer" }, { children: l('Youtube Policies') }))] }));
};
var YoutubePolicyBottomMessage = function (_a) {
    var isYoutubeReviewAccount = _a.isYoutubeReviewAccount, children = _a.children;
    return ((0,jsx_runtime.jsx)(other_BottomWarning_BottomWarning, YoutubePolicyBottomMessage_assign({ isShowWarning: isYoutubeReviewAccount, warningText: renderYouTubePolicyWarning() }, { children: children })));
};
/* harmony default export */ const YoutubePolicyBottomMessage_YoutubePolicyBottomMessage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isYoutubeReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state),
}); })(YoutubePolicyBottomMessage));

;// CONCATENATED MODULE: ./src/components/other/YoutubePolicyBottomMessage/index.ts


;// CONCATENATED MODULE: ./src/pages/LinksPage/LinksPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const LinksPage_LinksPage = ({"base":"k2kmxJqmbxaQ6hAz3tdw","content":"nJ0XfYCSzAPLf5aobd1H"});
;// CONCATENATED MODULE: ./src/pages/LinksPage/LinksPage.tsx
var LinksPage_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var LinksPage_assign = (undefined && undefined.__assign) || function () {
    LinksPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LinksPage_assign.apply(this, arguments);
};





















var LinksPage = /** @class */ (function (_super) {
    LinksPage_extends(LinksPage, _super);
    function LinksPage() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleSelectTab = function (index) {
            var themeId = _this.props.params.id;
            var tabSubPath = _this.getTabs()[index].path;
            _this.props.update({
                pathname: "/themes/".concat(themeId, "/links").concat(tabSubPath),
            });
        };
        _this.getTabs = function () {
            return [
                {
                    path: '',
                    name: l('Links'),
                },
                {
                    path: '/hosts',
                    name: l('Hosts'),
                }
            ];
        };
        return _this;
    }
    LinksPage.prototype.componentDidMount = function () {
        this.props.sendAnalyticalEvent({ eventType: 'Links report opened' });
    };
    LinksPage.prototype.componentDidUpdate = function () {
        if (!this.props.showPage) {
            this.props.router.replace('/themes');
        }
    };
    LinksPage.prototype.render = function () {
        var tabs = this.getTabs();
        var pathname = this.props.location.pathname;
        var themeId = this.props.params.id;
        var selectedTabIndex = tabs.findIndex(function (tab) { return pathname === "/themes/".concat(themeId, "/links").concat(tab.path); });
        var tabsConfig = tabs.map(function (tab) { return ({ key: tab.path, title: tab.name, content: null }); });
        return ((0,jsx_runtime.jsx)(YoutubePolicyBottomMessage_YoutubePolicyBottomMessage, { children: (0,jsx_runtime.jsxs)("div", LinksPage_assign({ className: classnames_default()(LinksPage_LinksPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Top shared URLs') }), (0,jsx_runtime.jsxs)(ui_PageHeader_PageHeader, LinksPage_assign({ title: l('Top shared URLs'), rightContent: (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)(TopicSearchFilter_TopicSearchFilter, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, { showTime: true, showPresetRanges: true })] }) }, { children: [(0,jsx_runtime.jsx)(ThemeAnalyticsFilter_ThemeAnalyticsFilter, {}), (0,jsx_runtime.jsx)(Divider/* default */.A, { withoutPadding: true }), (0,jsx_runtime.jsx)(ui_Tabs_Tabs, { fullWidth: true, tabsConfig: tabsConfig, selectedIndex: selectedTabIndex, onSelect: this.handleSelectTab })] })), (0,jsx_runtime.jsx)("div", LinksPage_assign({ className: classnames_default()(LinksPage_LinksPage.content) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })) }));
    };
    return LinksPage;
}(react.PureComponent));
/* harmony default export */ const pages_LinksPage_LinksPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    showPage: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'links'),
}); }, {
    update: routing_actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(LinksPage));

;// CONCATENATED MODULE: ./src/pages/LinksPage/index.ts


// EXTERNAL MODULE: ./src/components/ui/Menu/index.ts + 2 modules
var Menu = __webpack_require__("yWfC");
;// CONCATENATED MODULE: ./src/containers/HelpMenu/HelpMenu.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const HelpMenu_HelpMenu = ({"base":"RcYFQzMIEL__q6nRhJQO","helpIcon":"RHEUnMUW3dm55p3Fvbhg","label":"Ia_SgW3jnAvUcwZ6LfIa","highlighted":"ac8MXpsZE6CxFHNiudQh","HIGHLIGHT":"GYMbRKcfgHrVvpxOyj0a"});
;// CONCATENATED MODULE: ./src/containers/HelpMenu/HelpMenu.js






function HelpMenu_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, HelpMenu_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function HelpMenu_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (HelpMenu_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }















var HelpMenu = /*#__PURE__*/function (_PureComponent) {
  function HelpMenu(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, HelpMenu);
    _this = HelpMenu_callSuper(this, HelpMenu, [props]);
    (0,defineProperty/* default */.A)(_this, "handleMenuItemClick", function (type) {
      _this.props.sendAnalyticalEvent({
        eventType: 'Help menu item: Clicked',
        properties: {
          type: type
        }
      });
      _this.popover.current.hide();
    });
    (0,defineProperty/* default */.A)(_this, "handleOpenWalkthroughVideoModal", function () {
      _this.props.showModal('walkthroughVideoModal');
      _this.handleMenuItemClick('Walkthrough');
    });
    (0,defineProperty/* default */.A)(_this, "getMenuSettings", function () {
      var settings = {
        knowledgebaseUrl: (0,navigation/* getLinkToHelpYouscan */.vn)(),
        blogUrl: (0,navigation/* getLinkToPromoSite */.CH)(navigation/* PROMO_SITE_PATHS */.h.BLOG),
        academy: (0,navigation/* getLinkToAcademyYouscan */.ud)()
      };
      return settings;
    });
    _this.popover = /*#__PURE__*/(0,react.createRef)();
    return _this;
  }
  (0,inherits/* default */.A)(HelpMenu, _PureComponent);
  return (0,createClass/* default */.A)(HelpMenu, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate() {
      if (this.props.isVideoHighlighted) {
        this.popover.current.show();
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props = this.props,
        className = _this$props.className,
        isVideoHighlighted = _this$props.isVideoHighlighted;
      var settings = this.getMenuSettings();
      var popoverContent = /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(HelpMenu_HelpMenu.menu),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Menu/* default */.A, {
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: settings.knowledgebaseUrl,
            target: "_blank",
            rel: "noopener noreferrer",
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              value: "knowledge_base",
              iconType: "help-box",
              label: l('Knowledge Base'),
              onSelect: this.handleMenuItemClick
            })
          }), settings.academy ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: settings.academy,
            target: "_blank",
            rel: "noopener noreferrer",
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              value: "academy",
              iconType: "academy",
              label: l('Academy'),
              onSelect: this.handleMenuItemClick
            })
          }) : null, /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
            className: classnames_default()((0,defineProperty/* default */.A)({}, HelpMenu_HelpMenu.highlighted, isVideoHighlighted)),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              value: "walkthrough",
              iconType: "video",
              label: l('Walkthrough'),
              onSelect: this.handleOpenWalkthroughVideoModal
            })
          }), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
            href: settings.blogUrl,
            target: "_blank",
            rel: "noopener noreferrer",
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem/* default */.A, {
              value: "new_features_blog",
              iconType: "new-features",
              label: l('New in blog'),
              onSelect: this.handleMenuItemClick
            })
          })]
        })
      });
      if (this.props.isYoutubeReviewAccount) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(HelpMenu_HelpMenu.base, className),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          fitted: true,
          ref: this.popover,
          content: popoverContent,
          position: "bottom center",
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
            type: "help-circle",
            color: "white",
            size: 24,
            className: classnames_default()(HelpMenu_HelpMenu.helpIcon)
          })
        })
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const containers_HelpMenu_HelpMenu = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    isVideoHighlighted: (0,currentUser_selectors/* isIntroductionVideoHighlighted */.Zu)(state),
    isYoutubeReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(HelpMenu));
;// CONCATENATED MODULE: ./src/containers/HelpMenu/index.js

// EXTERNAL MODULE: ./src/utils/account.js
var utils_account = __webpack_require__("zTVD");
;// CONCATENATED MODULE: ./src/containers/UserAccountMenu/components/UserAccountMenu.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_UserAccountMenu = ({"overlayedBlock":"rmhLmbhjmq9ByH0dkNaP","flexCenter":"EgzKbogp1mslu9wV1uq_","smartFeature":"b8ulc51rpXaK84ErncQb","tag":"BwDAwJu80Z413eJY7O7r","visibleScrollBar":"yVVlhUGNosC9uzxR81rA","hiddenScrollBar":"QdoU99700iOxdJKndzrt","base":"D0zi1c25m6LykXrygrGC","info":"hdAFQUm1sb5j2j_ej6ff","profileInfo":"M2Bau7pFYCPZcbz1z7yO","infoContainer":"OfKt_5COHFFUvjHANgZj","namePreview":"jzzLDW7YpKbM4UPnpMKa","name":"t8OfRo6CLp8C_U0RLZM8","email":"zCz6rsOGx60CNf8sHf9y","company":"Aq6FCszjomzDMcTh6JIw","accountName":"G9IlIhKxk8V5sXDu_8nz","menuDown":"xJ6CGIFAMACCHG_vp3Tu"});
;// CONCATENATED MODULE: ./src/containers/UserAccountMenu/components/UserAccountMenu.tsx
var UserAccountMenu_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var UserAccountMenu_assign = (undefined && undefined.__assign) || function () {
    UserAccountMenu_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return UserAccountMenu_assign.apply(this, arguments);
};

// @ts-nocheck











var UserAccountMenu = /** @class */ (function (_super) {
    UserAccountMenu_extends(UserAccountMenu, _super);
    function UserAccountMenu(props) {
        var _this = _super.call(this, props) || this;
        _this.handlePopoverClose = function () {
            _this.popover.current.hide();
        };
        _this.popover = (0,react.createRef)();
        return _this;
    }
    UserAccountMenu.prototype.render = function () {
        var _a = this.props, className = _a.className, userName = _a.userName, userLogin = _a.userLogin, accountName = _a.accountName, isInternationalAccount = _a.isInternationalAccount, canUserSeeAccountSettings = _a.canUserSeeAccountSettings, onLogOut = _a.onLogOut;
        var popverContent = ((0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.menu) }, { children: (0,jsx_runtime.jsxs)(Menu/* default */.A, { children: [(0,jsx_runtime.jsxs)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.profileInfo) }, { children: [(0,jsx_runtime.jsx)(UserAvatar/* default */.A, { round: true, size: 60, additionalIconType: isInternationalAccount ? 'earth' : null, name: userName, email: userLogin }), (0,jsx_runtime.jsxs)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.info) }, { children: [(0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.name) }, { children: userName })), (0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ title: accountName, className: classnames_default()(components_UserAccountMenu.accountName) }, { children: accountName })), (0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.email) }, { children: userLogin }))] }))] })), (0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsx)(dist/* Link */.N_, UserAccountMenu_assign({ to: "/profile", "data-hook": "user-account-profile" }, { children: (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('My settings'), onSelect: this.handlePopoverClose }) })), canUserSeeAccountSettings
                        && ((0,jsx_runtime.jsx)(dist/* Link */.N_, UserAccountMenu_assign({ to: "/settings", "data-hook": "user-account-settings" }, { children: (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('Account settings'), onSelect: this.handlePopoverClose }) }))), (0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: l('Log out'), onSelect: onLogOut })] }) })));
        return ((0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.base, className) }, { children: (0,jsx_runtime.jsx)(Popover/* default */.A, UserAccountMenu_assign({ basic: true, fitted: true, ref: this.popover, content: popverContent, placement: "bottom-start" }, { children: (0,jsx_runtime.jsxs)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.infoContainer), "data-hook": "user-account" }, { children: [!(0,mobile/* isSimplifiedView */.O7)() && ((0,jsx_runtime.jsx)(UserAvatar/* default */.A, { round: true, size: 40, additionalIconType: isInternationalAccount ? 'earth' : null, name: userName, email: userLogin })), (0,jsx_runtime.jsxs)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.info) }, { children: [(0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.namePreview) }, { children: userName })), (0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.company) }, { children: accountName }))] })), (0,jsx_runtime.jsx)("div", UserAccountMenu_assign({ className: classnames_default()(components_UserAccountMenu.menuDown) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-down" }) }))] })) })) })));
    };
    return UserAccountMenu;
}(react.PureComponent));
/* harmony default export */ const UserAccountMenu_components_UserAccountMenu = (UserAccountMenu);

;// CONCATENATED MODULE: ./src/containers/UserAccountMenu/UserAccountMenu.tsx










var UserAccountMenuContainer = function (_a) {
    var user = _a.user, account = _a.account, isAccountSettingsVisible = _a.isAccountSettingsVisible, logOut = _a.logOut, push = _a.push;
    var handleLogOut = function () {
        logOut();
        push('/login');
    };
    if (!user || !account) {
        return null;
    }
    return ((0,jsx_runtime.jsx)(UserAccountMenu_components_UserAccountMenu, { isInternationalAccount: account.accountCoverage === utils_account/* ACCOUNT_COVERAGE_OPTIONS */.oM.GLOBAL, canUserSeeAccountSettings: isAccountSettingsVisible, userLogin: user.login, userName: "".concat(user.firstName, " ").concat(user.lastName), accountName: account.name, onLogOut: handleLogOut }));
};
/* harmony default export */ const UserAccountMenu_UserAccountMenu = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    user: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    account: (0,account_selectors/* getAccountInfo */.Gf)(state),
    isAccountSettingsVisible: (0,currentUser_selectors/* isAccountSettingsVisible */.T$)(state),
}); }, { logOut: model/* sessionModel */.S.action.logOut, push: routing_actions/* push */.VC }), react.memo)(UserAccountMenuContainer));

;// CONCATENATED MODULE: ./src/containers/UserAccountMenu/index.ts


;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/Feature/Feature.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Feature = ({"base":"SaQHm83WeC3plx9_aHBw","unread":"Mi3XErJaSzbtdA8dlcbQ","title":"M5J2adc5DrqXxGyOph2R","unreadIdentifier":"o7kgYgLp3DgJjpQy_EdY","previewText":"OoS5XiP85D0uD1OcBEhq","header":"bmFHihY5u1FMzKXcPN8T","date":"__ZGXSWE_8LW8YQWxJCn"});
;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/Feature/Feature.tsx
var Feature_assign = (undefined && undefined.__assign) || function () {
    Feature_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Feature_assign.apply(this, arguments);
};






var Feature_Feature = function (_a) {
    var _b;
    var unread = _a.unread, id = _a.id, title = _a.title, text = _a.text, previewText = _a.previewText, date = _a.date, onOpen = _a.onOpen, onMarkAsRead = _a.onMarkAsRead;
    var handleOpen = function () {
        onOpen(id);
        onMarkAsRead(id);
    };
    var classes = classnames_default()(Feature.base, (_b = {}, _b[Feature.unread] = unread, _b));
    return ((0,jsx_runtime.jsxs)("div", Feature_assign({ className: classes, onClick: handleOpen }, { children: [(0,jsx_runtime.jsx)("div", Feature_assign({ className: classnames_default()(Feature.date) }, { children: moment_default()(date).format('LL') })), (0,jsx_runtime.jsxs)(H3/* default */.A, Feature_assign({ className: classnames_default()(Feature.title) }, { children: [unread
                        && (0,jsx_runtime.jsx)("div", { className: classnames_default()(Feature.unreadIdentifier) }), title] })), (0,jsx_runtime.jsxs)("p", Feature_assign({ className: classnames_default()(Feature.previewText) }, { children: [previewText, ' ', text && (0,jsx_runtime.jsx)("a", { children: l('Learn more') })] }))] })));
};
/* harmony default export */ const NewFeaturesAnnouncement_Feature_Feature = ((0,react.memo)(Feature_Feature));

;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/Feature/index.tsx


;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/OpenedFeature/OpenedFeature.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const OpenedFeature = ({"base":"_dk8Q9uItNDeroro8ukQ","container":"jOkHlt2kZ22UEaWK5kT2","title":"FPEFHE3A3Jl6BTfVMDDL","text":"PU_KlICdSWKiuNcVVJlc","header":"d4AxycvNdnywrZQmc0wZ","date":"RoDfU94sBL3fWLR4luJp","author":"uGHOtBeHxzuw21B3SdVx","avatar":"i7W7R3RZ9a5G7bspdHLQ"});
;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/OpenedFeature/OpenedFeature.tsx
var OpenedFeature_assign = (undefined && undefined.__assign) || function () {
    OpenedFeature_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OpenedFeature_assign.apply(this, arguments);
};










var OpenedFeature_OpenedFeature = function (_a) {
    var title = _a.title, text = _a.text, date = _a.date, unread = _a.unread, author = _a.author, authorEmail = _a.authorEmail, onClose = _a.onClose;
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, OpenedFeature_assign({ isOpen: true, fitted: true, className: classnames_default()(OpenedFeature.base), onRequestClose: onClose }, { children: (0,jsx_runtime.jsxs)("div", OpenedFeature_assign({ className: classnames_default()(OpenedFeature.container) }, { children: [(0,jsx_runtime.jsxs)("div", OpenedFeature_assign({ className: classnames_default()(OpenedFeature.header) }, { children: [(0,jsx_runtime.jsx)("div", OpenedFeature_assign({ className: classnames_default()(OpenedFeature.date) }, { children: moment_default()(date).format('LL') })), (0,jsx_runtime.jsxs)("div", OpenedFeature_assign({ className: classnames_default()(OpenedFeature.author) }, { children: [author, (0,jsx_runtime.jsx)(UserAvatar/* default */.A, { round: true, size: "40", email: authorEmail, name: author, className: classnames_default()(OpenedFeature.avatar) })] }))] })), (0,jsx_runtime.jsxs)(H1/* default */.A, OpenedFeature_assign({ className: classnames_default()(OpenedFeature.title) }, { children: [unread
                            && (0,jsx_runtime.jsx)("div", { className: classnames_default()(OpenedFeature.unreadIdentifier) }), title] })), (0,jsx_runtime.jsx)("div", OpenedFeature_assign({ className: classnames_default()(OpenedFeature.text) }, { children: (0,jsx_runtime.jsx)(react_markdown/* ReactMarkdown */.$, OpenedFeature_assign({ remarkPlugins: [remark_breaks/* default */.A], linkTarget: "_blank" }, { children: text })) }))] })) })));
};
/* harmony default export */ const NewFeaturesAnnouncement_OpenedFeature_OpenedFeature = ((0,react.memo)(OpenedFeature_OpenedFeature));

;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/OpenedFeature/index.tsx


;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/features.js
/* eslint global-require: 0, max-len: 0 */


var canShowYandexMapsAnnouncement = function canShowYandexMapsAnnouncement(accountId) {
  var yandexAccountIds = [15114, 31556, 31565, 13993, 46853, 10912, 37107, 47005];
  return accountId && !yandexAccountIds.includes(Number(accountId));
};
var users = {
  totoshka: {
    name: {
      ru: 'Катерина Поршнева',
      uk: 'Катерина Поршнєва',
      en: 'Kateryna Porshnieva'
    },
    gravatar: 'kp@youscan.io'
  },
  elena_valery: {
    name: {
      ru: 'Елена Найда',
      uk: 'Олена Найда',
      en: 'Elena Naida'
    },
    gravatar: 'elena.naida@youscan.io'
  },
  markoliinyk: {
    name: {
      ru: 'Марк Олейник',
      uk: 'Марк Олійник',
      en: 'Mark Oliinyk'
    },
    gravatar: 'mark.oliinyk@youscan.io'
  },
  mazurdmt: {
    name: {
      ru: 'Дмитрий Мазур',
      uk: 'Дмитро Мазур',
      en: 'Dmytro Mazur'
    },
    gravatar: 'dmytro.mazur@youscan.io'
  },
  raol: {
    name: {
      ru: 'Олег Ракитский',
      uk: 'Олег Ракитський',
      en: 'Oleg Rakitskiy'
    },
    gravatar: 'oleg.rakitskiy@youscan.io'
  },
  ole: {
    name: {
      ru: 'Алексей Зуев',
      uk: 'Олексій Зуєв',
      en: 'Oleksii Zuiev'
    },
    gravatar: 'oleksii.zuiev@youscan.io'
  },
  mazur_oleksandr: {
    name: {
      ru: 'Александр Мазур',
      uk: 'Олександр Мазур',
      en: 'Oleksandr Mazur'
    },
    gravatar: 'oleksandr.mazur@youscan.io'
  },
  bykbaiev_oleksandr: {
    name: {
      ru: 'Александр Бикбаев',
      uk: 'Олександр Бикбаєв',
      en: 'Oleksandr Bykbaiev'
    },
    gravatar: 'oleksandr.bykbaiev@youscan.io'
  },
  vradchenko: {
    name: {
      ru: 'Виталий Радченко',
      uk: 'Віталій Радченко',
      en: 'Vitalii Radchenko'
    },
    gravatar: 'vitalii.radchenko@youscan.io'
  },
  ivankorneliuk: {
    name: {
      ru: 'Иван Корнелюк',
      uk: 'Іван Корнелюк',
      en: 'Ivan Korneliuk'
    },
    gravatar: 'ivan.korneliuk@youscan.io'
  },
  olena_derebera: {
    name: {
      ru: 'Елена Деребера',
      uk: 'Олена Деребера',
      en: 'Olena Derebera'
    },
    gravatar: 'olena.derebera@youscan.io'
  },
  kibtsa: {
    name: {
      ru: 'Настя Кибец',
      uk: 'Настя Кібець',
      en: 'Nastya Kibets'
    },
    gravatar: 'ak@youscan.io'
  },
  yaroslavtykhonchuk: {
    name: {
      ru: 'Ярослав Тихончук',
      uk: 'Ярослав Тихончук',
      en: 'Yaroslav Tykhonchuk'
    },
    gravatar: 'yaroslav.tykhonchuk@youscan.io'
  },
  oleksandrmelnyk: {
    name: {
      ru: 'Александр Мельник',
      uk: 'Олександр Мельник',
      en: 'Oleksandr Melnyk'
    },
    gravatar: 'oleksandr.melnyk@youscan.io'
  },
  vladyslavholovko: {
    name: {
      ru: 'Владислав Головко',
      uk: 'Владислав Головко',
      en: 'Vladyslav Holovko'
    },
    gravatar: 'vladyslav.holovko@youscan.io'
  },
  paulkhudan: {
    name: {
      ru: 'Павел Худан',
      uk: 'Павло Худан',
      en: 'Paul Khudan'
    },
    gravatar: 'paul.khudan@youscan.io'
  },
  tarasparfeniuk: {
    name: {
      ru: 'Тарас Парфенюк',
      uk: 'Тарас Парфенюк',
      en: 'Taras Parfeniuk'
    },
    gravatar: 'taras.parfeniuk@youscan.io'
  }
};
var types = {
  NEW_FEATURE: 'NEW_FEATURE',
  BUGFIX: 'BUGFIX',
  IMPROVEMENT: 'IMPROVEMENT'
};
/* harmony default export */ const features = ([function () {
  return {
    id: 'first_announce',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Будьте в курсе всех важных изменений в продукте YouScan! 🎉',
      en: 'Stay on top of the latest updates in YouScan! 🎉',
      uk: 'Будьте в курсі всіх важливих змін в продукті YouScan! 🎉'
    },
    previewText: {
      ru: 'Встречайте новый раздел обновлений, заходите сюда, чтобы узнавать о новых функциях и возможностях в продукте YouScan!',
      en: 'Meet "What\'s new?"! Check back here to learn about all new features and possibilities in YouScan!',
      uk: 'Зустрічайте новий розділ оновлень, заходите сюди, щоб дізнаватися про нові функції та можливості в продукті YouScan!'
    },
    text: {
      ru: __webpack_require__("sdss"),
      uk: __webpack_require__("GYtf"),
      en: __webpack_require__("NfEf")
    },
    date: '2018-08-16',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'new_geo',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Улучшенное определение географии и фильтрация 🌎',
      en: 'Improved geography detection and filters 🌎',
      uk: 'Покращене визначення географії і фільтрація 🌎'
    },
    previewText: {
      ru: 'Мы улучшили фильтры, добавили локализацию географии, а также поработали над картой в аналитике.',
      en: "We've improved filters, added localization for geo and upgraded map in analytics.",
      uk: 'Ми покращили фільтри, додали локалізацію географії, а також змінили поведінку карти в аналітиці.'
    },
    text: {
      ru: __webpack_require__("rc4p"),
      uk: __webpack_require__("moeJ"),
      en: __webpack_require__("Tp/Q")
    },
    date: '2018-09-10',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'exclude_filters',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Встречайте исключающие фильтры! 🔥',
      en: 'Meet all-new exclude filters! 🔥',
      uk: 'Зустрiчайте новi фiльтри виключення! 🔥'
    },
    previewText: {
      ru: 'Фильтруйте поток упоминаний со снайперской точностью вместе с новыми исключающими фильтрами!',
      en: 'Filter mentions with extra precision with new exclude filters!',
      uk: 'Фiльтруйте потiк згадувань зі снайперською точністю разом з новими фiльтрами виключення! '
    },
    text: {
      ru: __webpack_require__("lrAa"),
      uk: __webpack_require__("J2pS"),
      en: __webpack_require__("K/fS")
    },
    date: '2018-10-31',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'new_filters_and_api_fields',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Новая фильтрация и поля в API',
      en: 'New filters and more fields in API',
      uk: 'Нова фільтрація та поля в API'
    },
    previewText: {
      ru: 'Фильтруйте по тегам, получайте больше полей в результатах! 🔥',
      en: 'Filter by tags, receive more fields! 🔥',
      uk: 'Фільтруйте по тегах, отримуйте більше полів в результатах! 🔥'
    },
    text: {
      ru: __webpack_require__("sHEt"),
      uk: __webpack_require__("3uNA"),
      en: __webpack_require__("sFdv")
    },
    date: '2018-11-08',
    by: users.raol
  };
}, function () {
  return {
    id: 'new_exclude_filters',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Изменения в работе исключающих фильтров!',
      en: 'Сhanges in exclude filters interface!',
      uk: 'Змiни в роботi фiльтрiв виключення!'
    },
    previewText: {
      ru: 'Мы сделали интерфейс исключающих фильров удобнее, чтобы избежать случайных нажатий!',
      en: 'Now using exclude filters is more convinient.',
      uk: 'Ми зробили iнтерфейс фiльтрiв виключення зручнiшим щоб уникнути випадкових натиснень!'
    },
    text: {
      ru: __webpack_require__("ZidB"),
      uk: __webpack_require__("vUZa"),
      en: __webpack_require__("25rP")
    },
    date: '2018-11-11',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'report_columns',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Новые колонки в отчетах',
      en: 'New columns in reports',
      uk: 'Нові колонки у звітах'
    },
    previewText: {
      ru: 'Мы добавили новые колонки в отчеты "Упоминания", "Упоминания с полным текстом" и "Аналитика".',
      en: 'We have added new colums to reports "Mentions", "Mentions with full text" and "Dashboard".',
      uk: 'Ми додали нові колонки у звіти "Згадування", "Згадування з повним текстом" та "Аналітика".'
    },
    text: {
      ru: __webpack_require__("lG2h"),
      uk: __webpack_require__("Y54P"),
      en: __webpack_require__("nPSa")
    },
    date: '2018-11-23',
    by: users.ole
  };
}, function () {
  return {
    id: 'integrations',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Встречайте новые интеграции 🎉',
      en: 'Meet all-new integrations 🎉',
      uk: 'Зустрічайте нові інтеграції 🎉'
    },
    previewText: {
      ru: 'Получайте упоминания в Telegram, Slack, Zendesk и многое другое!',
      en: 'Receive mentions in Telegram, Slack, Zendesk and much more!',
      uk: 'Отримуйте згадування в Telegram, Slack, Zendesk та багато іншого!'
    },
    text: {
      ru: __webpack_require__("TjzU"),
      uk: __webpack_require__("dMzl"),
      en: __webpack_require__("UuNU")
    },
    date: '2018-11-28',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'autocategories',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Теперь YouScan стал ещё умнее!',
      en: 'YouScan became even smarter!',
      uk: 'Тепер YouScan став ще розумніше!'
    },
    previewText: {
      ru: 'Встречайте новые автокатегории: тизер, подпись и список.',
      en: 'Meet new autocategories: teaser, caption and list.',
      uk: 'Зустрічайте нові автокатегорії: тизер, підпис та список.'
    },
    text: {
      ru: __webpack_require__("tbKR"),
      uk: __webpack_require__("GvVm"),
      en: __webpack_require__("P3cW")
    },
    date: '2018-12-05',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'tags_hotkeys',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Тегируйте упоминания еще быстрее с помощью горячих клавиш!',
      en: 'Even faster mention tagging with new hot keys!',
      uk: 'Тегуйте згадування ще швидше за допомогою гарячих клавіш!'
    },
    previewText: {
      ru: 'Мы добавили возможность применять и создавать теги с клавиатуры, теперь работа с ними стала еще приятнее!',
      en: 'We added the possibility to apply and create tags using your keyboard, now working with them has become even more pleasant!',
      uk: 'Ми додали можливість застосовувати і створювати теги за допомогою клавіатури, тепер працювати з ними стало ще приємніше!'
    },
    text: {
      ru: __webpack_require__("xv3p"),
      uk: __webpack_require__("f64H"),
      en: __webpack_require__("wRIw")
    },
    date: '2019-01-11',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'do_not_save_rule',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новое правило "Не сохранять"!',
      en: 'New rule "Do not save"!',
      uk: 'Нове правило "Не зберігати"!'
    },
    previewText: {
      ru: 'Более эффективное использование возможностей аналитического окна и многое другое.',
      en: 'More efficient analytical window usage and much more.',
      uk: 'Більш ефективне використання можливостей аналітічного вікна та багато іншого.'
    },
    text: {
      ru: __webpack_require__("OsNT"),
      uk: __webpack_require__("8Uqu"),
      en: __webpack_require__("E+T9")
    },
    date: '2019-03-04',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'vi_2_0',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Visual Insights 2.0 🚀',
      en: 'Visual Insights 2.0 🚀',
      uk: 'Visual Insights 2.0 🚀'
    },
    previewText: {
      ru: 'Наша технология распознавания изображений стала еще круче – распознавание персон, активностей и цветов.',
      en: 'YouScan’s AI-powered image recognition just got more powerful with people, actions, and dominant colors detection.',
      uk: 'Наша технологія розпізнавання зображень стала ще потужнішою – розпізнаванням персонажей, активностей і кольорів.'
    },
    text: {
      ru: __webpack_require__("kMii"),
      uk: __webpack_require__("aZ7o"),
      en: __webpack_require__("3i39")
    },
    date: '2019-04-16',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'autocategories_feedback',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Почувствуйте себя укротителем машин 🤖',
      en: 'Help our Autocategories become smarter 🤖',
      uk: 'Відчуйте себе приборкувачем машин 🤖'
    },
    previewText: {
      ru: 'Неточности в определении “коммерции” резали глаз? Теперь вы можете убирать ошибочные автокатегории с упоминаний!',
      en: 'Random errors in “commerce” tag hurt your eyes? Now you can remove autocategories from mentions!',
      uk: 'Випадкові помилки в визначенні “комерції” різали око? Тепер ви можете прибрати автокатегорії зі згадування!'
    },
    text: {
      ru: __webpack_require__("6VKl"),
      uk: __webpack_require__("UDF0"),
      en: __webpack_require__("j8bH")
    },
    date: '2019-04-19',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'yandex_zen',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Вы просили – мы подключили: Яндекс.Дзен!',
      en: 'You wanted – you got it: Yandex.Zen!',
      uk: 'Ви просили – ми підключили: Яндекс.Дзен!'
    },
    previewText: {
      ru: 'Теперь вам доступен мониторинг статей, с возможностью сбора истории от 17 марта.',
      en: 'Articles are available for listening. Historical data is available from March 17.',
      uk: 'Відтепер вам доступний моніторинг статтей, з можливістю збору історії з 17 березня.'
    },
    text: {
      ru: __webpack_require__("MjfK"),
      uk: __webpack_require__("UBr0"),
      en: __webpack_require__("NbAa")
    },
    date: '2019-04-24',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'bpmonline',
    type: types.NEW_FEATURE,
    title: {
      ru: "Новая интеграция с bpm'online CRM",
      en: "New integration with bmp'online CRM",
      uk: "Нова інтеграція з bpm'online CRM"
    },
    previewText: {
      ru: "Автоматически создавайте обращения в bpm'online прямо из YouScan.",
      en: "Automatically create bpm'online cases right from YouScan.",
      uk: "Автоматично створюйте звернення в bpm'online прямо з YouScan."
    },
    text: {
      ru: __webpack_require__("48gE"),
      uk: __webpack_require__("3UDb"),
      en: __webpack_require__("x9Vk")
    },
    date: '2019-05-27',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'aina',
    type: types.NEW_FEATURE,
    title: {
      ru: 'AI ассистент – Aina 🧙‍♀️',
      en: 'AI-powered assistant – Aina 🧙‍♀️',
      uk: 'AI асистент – Aina 🧙‍♀️'
    },
    previewText: {
      ru: 'Встречайте автоматический анализ трендов в YouScan. Aina поможет вам найти горячие тренды и самостоятельно проанализирует где и как они возникают.',
      en: 'Meet the automatic analysis of trends in YouScan. Aina will help you find hot trends and analyze by herself where and how they arise!',
      uk: 'Зустрічайте автоматичний аналіз трендів в YouScan. Aina допоможе вам знайти гарячі тренди і самостійно проаналізує де і як вони виникають.'
    },
    text: {
      ru: __webpack_require__("ttci"),
      uk: __webpack_require__("+mkn"),
      en: __webpack_require__("s16Q")
    },
    date: '2019-06-11',
    by: users.totoshka
  };
}, function () {
  return {
    id: 'newthemehistory',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Мы обновили создание темы и сбор истории 🎉',
      en: 'We updated topic creation and history collection 🎉',
      uk: 'Ми оновили створення теми і збір історії 🎉'
    },
    previewText: {
      ru: 'Настраивайте фильтры прямо при создании темы и собирайте исторю сами.',
      en: 'Configure topic filters during creation and collect history on your own.',
      uk: 'Налаштовуйте фільтри прямо при створенні теми та збирайте історію власноруч.'
    },
    text: {
      ru: __webpack_require__("SKV5"),
      uk: __webpack_require__("SfxI"),
      en: __webpack_require__("JtNl")
    },
    date: '2019-07-01',
    by: users.raol
  };
}, function () {
  return {
    id: 'mentionwall',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Mention Wall – трансляция на экранах \n в два клика.',
      en: 'Mention Wall – broadcast on screens in two clicks.',
      uk: 'Mention Wall – трансляція на екранах у два кліка.'
    },
    previewText: {
      ru: 'Mention Wall позволяет вам превратить упоминания из социальных сетей в увлекательную историю в два клика.',
      en: 'Mention Wall allows you to turn mentions from social networks into an engaging story in two clicks.',
      uk: 'Mention Wall дозволяє вам перетворити згадування із соціальних мереж в цікаву історію в два кліки.'
    },
    text: {
      ru: __webpack_require__("N+eC"),
      uk: __webpack_require__("0m1J"),
      en: __webpack_require__("8VfN")
    },
    date: '2019-07-05',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'new_rules',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новая возможность по работе с правилами',
      en: 'New opportunity to work with rules',
      uk: 'Нова можливість по роботі з правилами'
    },
    previewText: {
      ru: 'Мы знаем, что вам важно иметь возможность полноценно редактировать фильтры, по которым работают правила, но это будет чуть позже. Тем не менее мы постарались максимально упростить эту процедуру уже сейчас.',
      en: 'We know that you want to have the ability to edit filters for rules. We agree, that it is important, but it will be a little bit later. However, we have tried to make this procedure as easy as possible now.',
      uk: 'Ми знаємо, що вам важливо мати можливість повноцінно редагувати фільтри, за якими працюють правила, але це буде трохи пізніше. Проте ми постаралися максимально спростити цю процедуру вже зараз.'
    },
    text: {
      ru: __webpack_require__("wpKM"),
      uk: __webpack_require__("1Qbr"),
      en: __webpack_require__("NRJm")
    },
    date: '2019-07-16',
    by: users.mazur_oleksandr
  };
},
/* while YouTube review is ongoing
() => ({
    id: 'youtube_data',
    type: types.NEW_FEATURE,
    title: {
        ru: 'Еще больше данных с YouTube комментариями',
        en: 'Even more data with YouTube comments',
        uk: 'Ще більше данних з YouTube коментарями',
    },
    previewText: {
        ru: 'Теперь вы можете собирать комментарии к видео по ключевым словам или через каналы.',
        en: 'Now you can collect comments on videos by keywords or through channels.',
        uk: 'Тепер ви можете збирати коментарі до відео за ключовими словами або через канали.',
    },
    text: {
        ru: require('./texts/youtube_data/ru.md'),
        uk: require('./texts/youtube_data/uk.md'),
        en: require('./texts/youtube_data/en.md'),
    },
    date: '2019-07-16',
    by: users.elena_valery,
}), */
function () {
  return {
    id: 'comments_sorting',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новая сортировка по комментариям',
      en: 'New sorting by comments',
      uk: 'Нове сортування за коментарями'
    },
    previewText: {
      ru: 'Мы добавили сортировку по количеству комментариев. С ее помощью вы сможете увидеть самые горячие дисскусии вокруг вашего продукта первыми.',
      en: 'We added sorting by the number of comments.\n With its help, you will able to see the hottest discussions around your product.',
      uk: 'Ми додали сортування за кількістю коментарів.\n З її допомогою ви зможете побачити найгарячіші дискусій навколо вашого продукту першими.'
    },
    text: {
      ru: __webpack_require__("hCMR"),
      uk: __webpack_require__("912A"),
      en: __webpack_require__("03gM")
    },
    date: '2019-07-29',
    by: users.bykbaiev_oleksandr
  };
}, function () {
  return {
    id: 'api_authors',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Мы расширили возможности нашего API',
      en: 'We added more API features',
      uk: 'Ми додали нові можливості до нашого API'
    },
    previewText: {
      ru: 'Теперь через API можно достать статистику по авторам или гео публикации. И выбрать исключающие фильтры, чтобы убрать лишнее.',
      en: 'Import data about authors or publication places statistics by API. And also excluding filters for this data.',
      uk: 'Тепер через API можна дістати статистику по авторам та гео публікації. Або обрати фільтри вилучення, щоб прибрати нерелевантні дані.'
    },
    text: {
      ru: __webpack_require__("1WOu"),
      uk: __webpack_require__("uCuo"),
      en: __webpack_require__("xx/c")
    },
    date: '2019-08-09',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'aina_toggle',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые возможности Aina',
      en: "New Aina's capabilities",
      uk: 'Нові можливості Aina'
    },
    previewText: {
      ru: 'Вы можете скрывать отображения трендов на динамике, для более удобного изучения и экспорта графика. А еще email отчеты теперь отправляет Aina.',
      en: 'You can hide trends visibility on the chart, to analyze or export dynamics without trends. And also, email reports will be coming from Anina.',
      uk: 'Ви можете вимикати відображення трендів на графіку, для більш зручного аналізу та експорту динаміки. А ще email звіти тепер будуть приходити від Aina'
    },
    text: {
      ru: __webpack_require__("X1yf"),
      uk: __webpack_require__("oyWT"),
      en: __webpack_require__("ntPh")
    },
    date: '2019-09-26',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'email_reports',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Встречайте обновленные Email отчеты 🎉',
      en: 'Meet updated Email reports 🎉',
      uk: 'Зустрічайте оновлені Email звіти 🎉'
    },
    previewText: {
      ru: 'В новых отчетах появились ключевые слова, тренды обсуждений и их анализ. А еще мы обновили дизайн, чтобы вам было проще и приятней их смотреть.',
      en: 'Keywords, trends of discussions, and their analysis now can be sent in Email reports. And we have changed the design to make it’s easier and give you more value.',
      uk: 'Ключевые слова, тренды дискуссий и их анализ теперь тоже можно получать в Email отчетах. А еще мы обновили дизайн, чтобы вам было проще и удобней их просматривать.'
    },
    text: {
      ru: __webpack_require__("DyN2"),
      uk: __webpack_require__("Gx/Q"),
      en: __webpack_require__("V4qf")
    },
    date: '2019-09-30',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'subjects',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Мы добавили новый фильтр по тематикам обсуждений',
      en: 'We have added a new filter – Subject detection',
      uk: 'Ми додали новий фільтр за тематиками згадувань'
    },
    previewText: {
      ru: 'Узнайте, в контексте каких тематик пользователи обсуждают ваш бренд больше всего по фильтру Тематики.',
      en: 'Discover the context in which topics your brand is discussed with filter by subjects.',
      uk: 'Дізнайтеся, у контексті яких тематик клієнти обговорюють ваш бренд найбільше за фільтром Тематики.'
    },
    text: {
      ru: __webpack_require__("LtTf"),
      uk: __webpack_require__("maVM"),
      en: __webpack_require__("lhs3")
    },
    date: '2019-09-30',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'digest',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Дайджест – аналитический отчет в два клика 📗',
      en: 'Digest – analytical report in two clicks📗',
      uk: 'Дайджест – аналітичний звіт за два кліка 📗'
    },
    previewText: {
      ru: 'Обзор новой функции и способов ее применения.',
      en: 'New feature overview and application.',
      uk: 'Обзор нової функції і прикладів її використання.'
    },
    text: {
      ru: __webpack_require__("R+wM"),
      uk: __webpack_require__("MOsL"),
      en: __webpack_require__("gPMX")
    },
    date: '2019-10-04',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'sentiment_bert',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Aina стала умнее: новая модель определения тональности 🤖',
      en: 'Aina has just got smarter: a new model for sentiment detection 🤖',
      uk: 'Aina стала розумніше: нова модель визначення тональності 🤖'
    },
    previewText: {
      ru: 'Мы улучшили нашу модель определения тональности, сделав ее более точной. Узнайте, как именно мы это сделали и как это повлияет на вашу тему.',
      en: 'We retrained our sentiment detection model, making it more accurate. Find out exactly how we did it and how it will affect your data.',
      uk: 'Ми покращили нашу модель визначення тональності, зробивши її точнішею. Дізнайтеся, як саме ми це зробили і як це вплине на вашу тему.'
    },
    text: {
      ru: __webpack_require__("YRkN"),
      uk: __webpack_require__("7fnz"),
      en: __webpack_require__("XQGH")
    },
    date: '2019-12-01',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'smartalerts',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Smart Alerts стали еще более смарт 🧠',
      en: 'Smart Alerts became even smarter 🧠',
      uk: 'Smart Alerts стали ще більш смарт 🧠'
    },
    previewText: {
      ru: 'Smart Alerts – это e-mail уведомления о важных упоминаниях и cобытиях в вашей теме. Мы внесли несколько изменений, о которых хотим рассказать в этом анонсе.',
      en: 'Smart Alerts are e-mail notifications about important mentions and events in your monitoring topics. We want to describe some changes that we made in Smart Alert algorithm.',
      uk: 'Smart Alerts – це e-mail сповіщення про важливі згадування і події у вашій темі. Ми зробили декілька змін, про які хочемо розповісти в цьому анонсі.'
    },
    text: {
      ru: __webpack_require__("SkcE"),
      uk: __webpack_require__("WkIz"),
      en: __webpack_require__("Lhs4")
    },
    date: '2019-12-05',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'promo_autocategories',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые promo автокатегории от Aina',
      en: 'New promo autocategories from Aina',
      uk: 'Нові промо автокатегоріі від Aina'
    },
    previewText: {
      ru: 'Кроме того, улучшили качество для существующих автокатегорий.',
      en: 'Moreover, existing categories are improved.',
      uk: 'Крім того, покращили якість для існуючих категорій.'
    },
    text: {
      ru: __webpack_require__("Jqpj"),
      uk: __webpack_require__("34Aj"),
      en: __webpack_require__("sUky")
    },
    date: '2020-01-13',
    by: users.vradchenko
  };
}, function () {
  return {
    id: 'ocr',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Теперь собирать упоминания можно еще и по тексту на картинках! 🖼',
      en: 'Now you can collect mentions with our new text recognition! 🖼',
      uk: 'Тепер збирати згадування можна ще й по тексту на зображеннях! 🖼'
    },
    previewText: {
      ru: 'Узнайте, как собрать больше данных с помощью нового распознавания текста на изображениях.',
      en: 'Learn how to collect more data with the new text recognition on images.',
      uk: 'Дізнайтеся, як зібрати більше даних за допомогою нового розпізнавання тексту на зображеннях.'
    },
    text: {
      ru: __webpack_require__("+ou2"),
      uk: __webpack_require__("BzPB"),
      en: __webpack_require__("s+3Z")
    },
    date: '2020-01-27',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'timepicker_and_darktheme',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Темная сторона YouScan и выбор времени!🕐🌚',
      en: 'Dark side of YouScan and time picker! 🕐🌚',
      uk: 'Темна сторона YouScan і вибір часу! 🕐🌚'
    },
    previewText: {
      ru: 'Узнайте, как пользоваться выбором времени упоминаний и попробовать "Ночной режим".',
      en: 'Learn how to use our new time picker and how to try "Dark mode".',
      uk: 'Дізнайтеся, як користуватися вибором часу згадувань і спробувати "Нічний режим".'
    },
    text: {
      ru: __webpack_require__("xXdq"),
      uk: __webpack_require__("LSRP"),
      en: __webpack_require__("vShw")
    },
    date: '2020-02-06',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'feedback-loop',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Неправильно определилась автоматическая разметка? Теперь это можно поправить',
      en: 'A mention was assigned wrong labels? Now you can fix it',
      uk: 'Неправильно визначилася автоматична розмітка? Тепер це можна виправити'
    },
    previewText: {
      ru: 'Исправляйте разметку автокатегорий, тематик и изображений самостоятельно, и работа AI-ассистента Aina для вашей темы будет улучшаться.',
      en: 'Change Auto-category, Subject, and Visual Insights labels by yourself, and Aina AI assistant will perform better on your topic.',
      uk: 'Виправляйте розмітку автокатегорій, тематик і зображень самостійно, і робота AI-асистента Aina для вашої теми буде покращуватися.'
    },
    text: {
      ru: __webpack_require__("0UFs"),
      uk: __webpack_require__("hlS8"),
      en: __webpack_require__("pt/9")
    },
    date: '2020-03-19',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'aspects',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Аспекты — новая смарт функция от Aina ✨',
      en: 'Aspects — a new smart feature from Aina ✨',
      uk: 'Аспекти — нова смарт функція від Aina ✨'
    },
    previewText: {
      ru: 'Узнайте, с каким настроением авторы пишут о разных аспектах бренда, чтобы найти инсайты о его сильных и слабых сторонах.',
      en: 'Discover how the authors feel about different aspects of your brand and find insights about its strengths and weaknesses.',
      uk: 'Дізнайтеся, з яким настроєм автори пишуть про різні аспекти бренду, щоб знайти інсайти про його сильні та слабкі сторони.'
    },
    text: {
      ru: __webpack_require__("odWR"),
      uk: __webpack_require__("xXP3"),
      en: __webpack_require__("1bsG")
    },
    date: '2020-04-02',
    by: users.bykbaiev_oleksandr
  };
}, function () {
  return {
    id: 'vi-in-gallery',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Улучшения в Визуальных Инсайтах',
      en: 'Visual Insights Improvements',
      uk: 'Покращення у Візуальних Інсайтах'
    },
    previewText: {
      ru: 'В фильтрах появился поиск по объектам, сценам, деятельностям и персонам; а график Визуальные Инсайты теперь в Изображениях.',
      en: 'Search is available in filters by objects, scenes, activities, and people; and the Visual Insights graph is now in the Images.',
      uk: "У фільтрах з'явився пошук, а графік Візуальні Інсайти тепер ще і в Зображеннях."
    },
    text: {
      ru: __webpack_require__("KN5y"),
      uk: __webpack_require__("a8yw"),
      en: __webpack_require__("Sei9")
    },
    date: '2020-05-08',
    by: users.elena_valery
  };
}, function () {
  return {
    id: 'collected_by',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые фильтры — Методы сбора и Косвенные упоминания 💥',
      en: 'New Filters — Collection Methods and Indirect Mentions 💥',
      uk: 'Нові фільтри — Методи збору і Непрямі згадування 💥'
    },
    previewText: {
      ru: 'Теперь можно узнать по какому принципу было собрано упоминание и исключить комментарии без ключевых слов! ',
      en: 'Now you can see why each mention was collected and exclude comments without keywords!',
      uk: 'Тепер можна дізнатися за яким принципом було зібрано згадування і виключити коментарі без ключових слів!'
    },
    text: {
      ru: __webpack_require__("h2tn"),
      uk: __webpack_require__("+a6T"),
      en: __webpack_require__("SkZk")
    },
    date: '2020-05-14',
    by: users.mazur_oleksandr
  };
}, function (_ref) {
  var accountOrigin = _ref.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'new_history_collection_ux',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Улучшения в сборе истории 🔮',
      en: 'Historical data collection improved',
      uk: 'Покращення у зборі історії 🔮'
    },
    previewText: {
      ru: 'Собрать историю и узнать когда будет доступен следующий глубокий сбор теперь можно в два клика',
      en: 'Collecting historical data and checking availability of deep collections have just become easier!',
      uk: 'Зібрати історію та дізнатися коли буде доступний новий глибокий збір тепер можна в два кліка!'
    },
    text: {
      ru: __webpack_require__("oetw"),
      uk: __webpack_require__("p6pV"),
      en: __webpack_require__("SFWi")
    },
    date: '2020-05-15',
    by: users.bykbaiev_oleksandr
  } : {
    id: 'new_history_collection_ux',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Улучшения в сборе истории 🔮',
      en: 'Historical data collection improved',
      uk: 'Покращення у зборі історії 🔮'
    },
    previewText: {
      ru: 'Собрать историю теперь можно в два клика!',
      en: 'Collecting historical data has just become easier!',
      uk: 'Зібрати історію тепер можна в два кліка!'
    },
    text: {
      ru: __webpack_require__("ILNv"),
      uk: __webpack_require__("EFgG"),
      en: __webpack_require__("UZR7")
    },
    date: '2020-05-15',
    by: users.bykbaiev_oleksandr
  };
}, function () {
  return {
    id: 'wom_types',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые WOM автокатегории от Aina 🎉',
      en: 'New WOM auto-categories from Aina  🎉',
      uk: 'Нові WOM автокатегорії від Aina 🎉'
    },
    previewText: {
      ru: 'Находите сообщения с вопросами, рекомендациями и жалобами пользователей еще быстрее с новыми фильтрами.',
      en: 'Find mentions with questions, recommendations, and complaints even faster with new filters.',
      uk: 'Знаходьте згадування з питаннями, рекомендаціями і скаргами користувачів ще швидше з новими фільтрами.'
    },
    text: {
      ru: __webpack_require__("Uz7J"),
      uk: __webpack_require__("36t0"),
      en: __webpack_require__("Vh54")
    },
    date: '2020-07-29',
    by: users.mazur_oleksandr
  };
}, function (_ref2) {
  var accountOrigin = _ref2.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'acts',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новая страница «Документы» в настройках аккаунта 📑',
      en: 'New "Documents" page in account settings 📑',
      uk: 'Нова сторінка «Документи» в налаштуваннях акаунта 📑'
    },
    previewText: {
      ru: 'Теперь вы можете скачать акт о предоставлении ПО в интерфейсе YouScan.',
      en: 'Now you can download Acts on your own from the YouScan interface.',
      uk: 'Тепер ви можете завантажувати акт про надання ПЗ з інтерфейсу YouScan.'
    },
    text: {
      ru: __webpack_require__("bUG1"),
      uk: __webpack_require__("WfS0"),
      en: __webpack_require__("lUfv")
    },
    date: '2020-08-14',
    by: users.bykbaiev_oleksandr
  } : null;
}, function () {
  return {
    id: 'competitor_analysis_by_logo',
    type: types.NEW_FEATURE,
    title: {
      en: 'Innovative competitor analysis with logo recognition 📊',
      ru: 'Инновационный анализ конкурентов с функцией распознавания лого 📊',
      uk: 'Інноваційний аналіз конкурентів з функцією розпізнавання лого 📊'
    },
    previewText: {
      en: "Compare how consumers see your brand and competitors' brands with the new chart for image analysis.",
      ru: 'Сравните как потребители видят ваш бренд и бренды конкурентов с новым графиком для анализа изображений.',
      uk: 'Порівняйте як споживачі бачать ваш бренд і бренди конкурентів з новим графіком для аналізу зображень.'
    },
    text: {
      ru: __webpack_require__("ANuq"),
      uk: __webpack_require__("vXyM"),
      en: __webpack_require__("oKgT")
    },
    date: '2020-08-27',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'mention_stream_sort',
    type: types.NEW_FEATURE,
    title: {
      en: 'Sort by number of followers',
      ru: 'Сортировка по количеству подписчиков',
      uk: 'Сортування по кількості фоловерів'
    },
    previewText: {
      en: 'Work with mentions that more people can see.',
      ru: 'Работайте с упоминаниями, которые могут увидеть больше людей.',
      uk: 'Працюйте зі згадуваннями, які можуть побачити більше людей.'
    },
    text: {
      ru: __webpack_require__("EoFm"),
      uk: __webpack_require__("ZjX6"),
      en: __webpack_require__("UQdN")
    },
    date: '2020-08-28',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'tiktok',
    type: types.NEW_FEATURE,
    title: {
      en: 'TikTok monitoring 🎶',
      ru: 'Мониторинг TikTok 🎶',
      uk: 'Моніторинг TikTok 🎶'
    },
    previewText: {
      en: 'Never miss out on the latest trends with TikTok mentions.',
      ru: 'Будьте в курсе последних трендов с упоминаниями из TikTok.',
      uk: 'Будьте в курсі останніх трендів зі згадуваннями з TikTok.'
    },
    text: {
      ru: __webpack_require__("WG6M"),
      uk: __webpack_require__("0EEf"),
      en: __webpack_require__("gl+P")
    },
    date: '2020-09-09',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'statuspage',
    type: types.NEW_FEATURE,
    title: {
      en: 'YouScan Status',
      ru: 'YouScan Status',
      uk: 'YouScan Status'
    },
    previewText: {
      en: 'Now you can check out information on the system status and scheduled maintenance.',
      ru: 'Теперь вы можете проверить статус работы YouScan и узнать о плановых технических работах.',
      uk: 'Тепер ви можете перевірити статус роботи YouScan і дізнатися про планові технічні роботи.'
    },
    text: {
      ru: __webpack_require__("xs9/"),
      uk: __webpack_require__("0dTF"),
      en: __webpack_require__("6Hj/")
    },
    date: '2020-09-21',
    by: users.ivankorneliuk
  };
}, function (_ref3) {
  var accountOrigin = _ref3.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'angry.space',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Интеграция с Angry.Space',
      en: 'Angry.Space integration',
      uk: 'Інтеграція з Angry.Space'
    },
    previewText: {
      ru: 'Теперь упоминания брендов можно автоматически перенаправлять в Angry.Space.',
      en: 'Now you can redirect brand mentions into Angry.Space automatically.',
      uk: 'Автоматично відправляйте згадування брендів в Angry.Space.'
    },
    text: {
      ru: __webpack_require__("2ot8"),
      uk: __webpack_require__("pvdA"),
      en: __webpack_require__("qSe6")
    },
    date: '2020-11-20',
    by: users.olena_derebera
  } : null;
}, function (_ref4) {
  var accountOrigin = _ref4.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'statements',
    type: types.NEW_FEATURE,
    title: {
      en: 'Statements',
      ru: 'Акты сверки',
      uk: 'Акти звірки'
    },
    previewText: {
      en: 'Now you can download Statements in the YouScan interface',
      ru: 'Теперь вы можете скачать акт сверки прямо в аккаунте YouScan',
      uk: 'Тепер ви можете завантажити акти звірки з акаунту YouScan'
    },
    text: {
      ru: __webpack_require__("wWC2"),
      uk: __webpack_require__("4Lp8"),
      en: __webpack_require__("GX0X")
    },
    date: '2020-11-23',
    by: users.mazur_oleksandr
  } : null;
}, function () {
  return {
    id: 'nsr',
    type: types.NEW_FEATURE,
    title: {
      en: 'New Metric in YouScan 🎄',
      ru: 'Новая метрика в YouScan🎄',
      uk: 'Нова метрика в YouScan 🎄'
    },
    previewText: {
      en: 'Net Sentiment Rate is already available in YouScan Analytics.',
      ru: 'Метрика Net Sentiment Rate теперь доступна в разделе Аналитика.',
      uk: 'Метрика Net Sentiment Rate тепер доступна у розділі Аналітика.'
    },
    text: {
      ru: __webpack_require__("RrD1"),
      uk: __webpack_require__("11Gu"),
      en: __webpack_require__("wbXI")
    },
    date: '2020-12-17',
    by: users.mazur_oleksandr
  };
}, function (_ref5) {
  var accountOrigin = _ref5.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.INTERNATIONAL ? {
    id: 'reddit_and_quora',
    type: types.NEW_FEATURE,
    title: {
      en: 'Full access to Reddit and Quora data 🎉',
      ru: 'Полный доступ к данным с Reddit и Quora 🎉',
      uk: 'Повний доступ до даних з Reddit і Quora 🎉'
    },
    previewText: {
      en: 'Get more insights from the leading discussion and Q&A platforms.',
      ru: 'Больше инсайтов с данными от ключевых платформ для обсуждений.',
      uk: 'Більше інстайтів з даними від ключових платформ для обговорень.'
    },
    text: {
      ru: __webpack_require__("h9z2"),
      uk: __webpack_require__("TZX5"),
      en: __webpack_require__("DIB7")
    },
    date: '2020-12-21',
    by: users.bykbaiev_oleksandr
  } : null;
}, function () {
  return {
    id: 'smartTags',
    type: types.NEW_FEATURE,
    title: {
      en: 'Automate your data workflow using our new Smart Tags feature 🎅',
      ru: 'Автоматизируйте работу с данными с помощью новой функции Умные теги 🎅',
      uk: 'Автоматизуйте роботу з данними за допомогою нової функції Розумні теги 🎅'
    },
    previewText: {
      en: "Don't waste time on manual data tagging — artificial intelligence will do this for you.",
      ru: 'Больше не нужно тратить много времени на ручную разметку, искусственный интеллект сделает всё за вас.',
      uk: 'Більше не треба витрачати багато часу на ручну розмітку, штучний інтелект зробить все за вас.'
    },
    text: {
      ru: __webpack_require__("IhKu"),
      uk: __webpack_require__("Qy4S"),
      en: __webpack_require__("4ygw")
    },
    date: '2021-01-13',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'viEngagementChart',
    type: types.NEW_FEATURE,
    title: {
      en: 'New chart in Visual Insights tab 🎁',
      ru: 'Новый график во вкладке Визуальных Инсайтов 🎁',
      uk: 'Новий графік у вкладці Візуальних Інсайтів 🎁'
    },
    previewText: {
      en: 'Find ideas for engaging content even faster!',
      ru: 'Найти идеи вовлекающего визуального контента стало легче!',
      uk: 'Знайти ідеї контенту для отримання найбільшого залучення стало легше!'
    },
    text: {
      ru: __webpack_require__("uKDF"),
      uk: __webpack_require__("lv7+"),
      en: __webpack_require__("7LrV")
    },
    date: '2021-01-14',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'newWordCloud',
    type: types.NEW_FEATURE,
    title: {
      en: 'Get to know what people say about your brand!',
      ru: 'Узнайте, что говорят о вашем бренде!',
      uk: 'Дізнайтесь, що говорять про ваш бренд!'
    },
    previewText: {
      en: 'Even more insights are now available from Word cloud and the new Trending words chart.',
      ru: 'Получайте еще больше инсайтов из облака слов и нового графика «Тенденции в словах».',
      uk: 'Отримуйте ще більше інсайтів з хмари слів та нового графіку «Тенденції слів».'
    },
    text: {
      ru: __webpack_require__("aFw9"),
      uk: __webpack_require__("a9l8"),
      en: __webpack_require__("n3Ko")
    },
    date: '2021-01-26',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'customDashboards',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Кастомизированные дашборды в YouScan ⭐',
      uk: 'Кастомізовані дашборди в YouScan ⭐',
      en: 'Custom Dashboards in YouScan ⭐'
    },
    previewText: {
      ru: 'Теперь все нужные данные будут у вас под рукой!',
      uk: 'Тепер всі необхідні дані будуть у вас під рукою.',
      en: 'Have all the important data at hand!'
    },
    text: {
      ru: __webpack_require__("+k/P"),
      uk: __webpack_require__("98L0"),
      en: __webpack_require__("tY+l")
    },
    date: '2021-02-05',
    by: users.bykbaiev_oleksandr
  };
}, function () {
  return {
    id: 'customDashboardsGeoStackedWidgets',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Доступны новые виджеты!',
      uk: 'Доступні нові віджети!',
      en: 'New widgets available!'
    },
    previewText: {
      ru: 'Стройте еще более понятные и информативные дашборды в системе YouScan!',
      uk: 'Будуйте ще більш зрозумілі та інформативні дашборди в системі YouScan!',
      en: 'Build even more precise and informative dashboards in YouScan!'
    },
    text: {
      ru: __webpack_require__("HgKG"),
      uk: __webpack_require__("viRP"),
      en: __webpack_require__("avEo")
    },
    date: '2021-02-11',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'imageContentSensitivity',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Спам-детектор стал еще умнее',
      uk: 'Спам детектор став ще розумнішим',
      en: 'Spam detector has become even smarter'
    },
    previewText: {
      ru: 'Алгоритм автоматически будет отправлять картинки неоднозначного характера в спам.',
      uk: 'Алгоритм автоматично відправлятиме картинки в спам.',
      en: 'The algorithm will automatically send problematic and dubious pictures to spam.'
    },
    text: {
      ru: __webpack_require__("K63g"),
      uk: __webpack_require__("LW+G"),
      en: __webpack_require__("g2tT")
    },
    date: '2021-02-18',
    by: users.mazur_oleksandr
  };
}, function (_ref6) {
  var accountOrigin = _ref6.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.INTERNATIONAL ? {
    id: 'news_in_spanish',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Новини для іспаномовних країн 🗞️',
      ru: 'Новости для испаноязычных стран 🗞️',
      en: 'News for Spanish-speaking countries 🗞️ '
    },
    previewText: {
      uk: 'Вчасно реагуйте на важливі публікації в інтернет-ЗМІ.',
      ru: 'Вовремя реагируйте на важные публикации в интернет-СМИ.',
      en: 'Never miss essential articles from online news sources.'
    },
    text: {
      uk: __webpack_require__("9Drb"),
      ru: __webpack_require__("DvNL"),
      en: __webpack_require__("3OWs")
    },
    date: '2020-03-01',
    by: users.mazur_oleksandr
  } : null;
}, function () {
  return {
    id: 'aspectsConsistencyUsageSize',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые Аспекты от Аины! 🎉',
      uk: 'Нові Аспекти від Аіни! 🎉',
      en: 'New Aspects from Aina 🎉'
    },
    previewText: {
      ru: 'Теперь вы с лёгкостью можете узнать, что пользователи думают о Консистенции, расходе или размере вашего продукта!',
      uk: 'Відтепер ви з легкістю можете дізнатися, що користувачі думають щодо консистенції, витрат або розміру вашого продукту!',
      en: 'Now you can easily find out what people think about Consistency, Usage, or Size of your product!'
    },
    text: {
      uk: __webpack_require__("ydfk"),
      en: __webpack_require__("zKtK"),
      ru: __webpack_require__("xhvP")
    },
    date: '2021-03-04',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'customDashboardsWordcloud',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Обновление кастомных дашбордов: новый график и другие улучшения',
      uk: 'Оновлення кастомізованих дашбордів: новий графік та деякі покращення',
      en: 'Custom dashboards update: the new chart and other improvements'
    },
    previewText: {
      ru: 'Встречайте новый график «Частые слова», интервалы дат и улучшение карты',
      uk: 'Зустрічайте новий графік «Часті слова», інтервали дат та покращення карти',
      en: 'Now "Frequent words" chart is available in custom dashboards. We also improved some other widgets'
    },
    text: {
      uk: __webpack_require__("UqGN"),
      en: __webpack_require__("8EBF"),
      ru: __webpack_require__("Edx1")
    },
    date: '2021-03-10',
    by: users.bykbaiev_oleksandr
  };
}, function () {
  return {
    id: 'instagramNonOwnedChannels',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Мониторинг Instagram: новые возможности 📸',
      uk: 'Моніторинг Instagram: нові можливості 📸',
      en: 'Instagram monitoring: new possibilities 📸'
    },
    previewText: {
      ru: 'Узнайте, как собрать максимум полезных данных из Instagram',
      uk: 'Дізнайтесь, як збирати максимум корисних даних з Instagram',
      en: 'Find out how to make the most of Instagram data'
    },
    text: {
      uk: __webpack_require__("vBba"),
      en: __webpack_require__("TU3n"),
      ru: __webpack_require__("jEYb")
    },
    date: '2021-04-07',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'duplicateDashboardsAndMore',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Копирование дашбордов и не только',
      uk: 'Копіювання дашбордів і не тільки',
      en: 'Duplicate dashboards and more'
    },
    previewText: {
      ru: 'Узнайте как копировать дашборды, устанавливать тему по умолчанию, а так же как включать авто-обновление данных на виджете.',
      uk: 'Дізнайтеся, як копіювати дашборди, встановлювати тему за замовчуванням та вмикати автоматичне оновлення даних у віджеті.',
      en: 'Learn how to duplicate dashboards, set a default theme, and turn on automatic data updates in the widget.'
    },
    text: {
      uk: __webpack_require__("EdDh"),
      en: __webpack_require__("rAEm"),
      ru: __webpack_require__("cf36")
    },
    date: '2021-04-13',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'editTrend',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Редактирование трендов',
      uk: 'Редагування трендів',
      en: 'Editing Trends'
    },
    previewText: {
      ru: 'Теперь тональность и название трендов можно менять вручную.',
      uk: 'Тепер тональність і назва трендів можна змінювати вручну.',
      en: 'Now the sentiment and name of trends can be changed manually.'
    },
    text: {
      uk: __webpack_require__("QBeG"),
      en: __webpack_require__("lQdg"),
      ru: __webpack_require__("+ccb")
    },
    date: '2021-07-01',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'customDashboardSharableLink',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Делитесь кастомными дашбордами по ссылке!',
      uk: 'Діліться кастомними дашбордами за посиланням!',
      en: "It's even easier now to share valuable insights with your colleagues."
    },
    previewText: {
      ru: 'Делиться важными данными из системы YouScan стало еще проще.',
      uk: 'Ділитись важливою інформацією з системи YouScan стало ще простіше.',
      en: 'Share custom dashboards via the link!'
    },
    text: {
      uk: __webpack_require__("aKsi"),
      en: __webpack_require__("OhBu"),
      ru: __webpack_require__("xX03")
    },
    date: '2021-07-13',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'smartFeaturesInExcelReport',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Умные функции в отчетах 📈',
      uk: 'Розумні функціЇ у звітах 📈',
      en: 'Smart features in reports 📈'
    },
    previewText: {
      ru: 'Создавайте отчеты с аспектами, тематиками и автокатегориями.',
      uk: 'Створюйте звіти з аспектами, тематиками й автокатегоріями.',
      en: 'Create reports with aspects, subjects and autocategories.'
    },
    text: {
      uk: __webpack_require__("U/Mx"),
      en: __webpack_require__("CnIp"),
      ru: __webpack_require__("CnC2")
    },
    date: '2021-08-25',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'storiesFromOwnedPagesAnnouncement',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Мониторинг Stories для собственных страниц 🎞️',
      uk: 'Моніторинг Stories для власних сторінок 🎞️',
      en: 'Instagram Stories from owned pages 🎞️'
    },
    previewText: {
      ru: 'Instagram Stories уже в YouScan.',
      uk: 'Instagram Stories вже в YouScan.',
      en: 'Instagram Stories collection is already here.'
    },
    text: {
      uk: __webpack_require__("56H2"),
      en: __webpack_require__("OPll"),
      ru: __webpack_require__("WLP0")
    },
    date: '2021-08-27',
    by: users.kibtsa
  };
}, function (_ref7) {
  var accountId = _ref7.accountId;
  return canShowYandexMapsAnnouncement(accountId) ? {
    id: 'yandex_maps',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Мониторинг Яндекс.Карт: новые возможности 🗺️',
      uk: 'Моніторинг Яндекс.Карт: нові можливості 🗺️',
      en: 'Yandex.Maps monitoring: new possibilities 🗺️'
    },
    previewText: {
      ru: 'Больше не нужно добавлять каналы из Яндекс.Карт вручную.',
      uk: 'Більше не потрібно додавати канали з Яндекс.Карт вручну.',
      en: 'You no longer need to add channels from Yandex.Maps manually.'
    },
    text: {
      ru: __webpack_require__("X4xF"),
      uk: __webpack_require__("SUE0"),
      en: __webpack_require__("mJZV")
    },
    date: '2021-09-09',
    by: users.kibtsa
  } : null;
}, function () {
  return {
    id: 'mentionsInInstagramCollection',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Сбор @отмеченных постов и комментариев из Instagram 📸',
      uk: 'Збір @відмічених постів і коментарів з Instagram 📸',
      en: 'Collecting @tagged posts and comments from Instagram 📸'
    },
    previewText: {
      ru: 'Мы улучшили сбор упоминаний из Instagram. Узнать больше',
      uk: 'Ми покращили збір згадувань з Instagram. Дізнатись більше',
      en: 'We improved the Instagram mentions collection. Find out more'
    },
    text: {
      uk: __webpack_require__("1VHE"),
      en: __webpack_require__("iG+2"),
      ru: __webpack_require__("hWiB")
    },
    date: '2021-10-18',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'googlePlayByKeywordsAnnouncement',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Мониторинг Google Play: что нового',
      uk: 'Моніторинг Google Play: що нового',
      en: 'Google Play monitoring: what’s new'
    },
    previewText: {
      ru: 'Получите больше инсайтов с расширенным мониторингом Google Play.',
      uk: 'Отримайте більше інсайтів з розширеним моніторингом Google Play.',
      en: 'Get more insights with broader Google Play monitoring.'
    },
    text: {
      uk: __webpack_require__("tmL2"),
      en: __webpack_require__("BBzT"),
      ru: __webpack_require__("86bX")
    },
    date: '2021-10-29',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'customDashboardsPermissions',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые доступы к кастомизированным дашбордам 📊',
      uk: 'Нові доступи до кастомізованих дашбордів 📊',
      en: 'Updated custom dashboards permissions 📊'
    },
    previewText: {
      ru: 'Мы улучшили логику доступа к кастомизированным дашбордам!',
      uk: 'Ми покращили логіку доступів до кастомізованих дашбордів!',
      en: 'We’ve updated custom dashboards permissions logic!'
    },
    text: {
      uk: __webpack_require__("2mad"),
      en: __webpack_require__("wx1Y"),
      ru: __webpack_require__("whkc")
    },
    date: '2021-11-15',
    by: users.oleksandrmelnyk
  };
}, function (_ref8) {
  var accountOrigin = _ref8.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'newPricingWebinar',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые тарифные планы уже доступны в YouScan 🎉',
      uk: 'Нові тарифні плани вже доступні в YouScan 🎉',
      en: 'YouScan new pricing plans available 🎉'
    },
    previewText: {
      ru: 'Узнайте обо всех преимуществах и новом функционале, который сделает работу с мониторингом еще эффективнее 🚀',
      uk: 'Дізнайтесь більше про всі переваги та нові функції, які зроблять моніторинг ще ефективнішим 🚀',
      en: 'Learn more about all the benefits and new features that will make the monitoring even more efficient 🚀'
    },
    text: {
      uk: __webpack_require__("z97u"),
      en: __webpack_require__("Rgzv"),
      ru: __webpack_require__("SD2b")
    },
    date: '2021-12-07',
    by: users.yaroslavtykhonchuk
  } : null;
}, function () {
  return {
    id: 'filterBySource',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новый фильтр «По названию источника» 🎄',
      uk: 'Новий фільтр «По назві джерела» 🎄',
      en: 'New filter “By source name” 🎄'
    },
    previewText: {
      ru: 'Собирайте упоминания только из самых важных источников с помощью нового фильтра.',
      uk: 'Збирайте згадування лише з найважливіших джерел за допомогою нового фільтру.',
      en: 'Collect mentions only from the most important sources using the new filter.'
    },
    text: {
      uk: __webpack_require__("Ev/k"),
      en: __webpack_require__("qc0a"),
      ru: __webpack_require__("8OnP")
    },
    date: '2021-12-21',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'improvedVI',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Аналитика Visual Insights стала еще умнее!',
      uk: 'Аналітика Visual Insights стала розумнішою!',
      en: 'Visual Insights analytics improvements!'
    },
    previewText: {
      ru: 'Получайте еще больше инсайтов благодаря улучшенному визуальному анализу.',
      uk: 'Отримуйте ще більше інсайтів завдяки покращеному візуальному аналізу.',
      en: 'Get more insights with improved visual analysis.'
    },
    text: {
      uk: __webpack_require__("X58T"),
      en: __webpack_require__("R7lX"),
      ru: __webpack_require__("l6ba")
    },
    date: '2021-12-22',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'topicsMerging',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Функция объединения тем 🎉',
      uk: 'Функція об’єднання тем 🎉',
      en: 'Topics merging 🎉'
    },
    previewText: {
      ru: 'Управляйте лимитами количества упоминаний в темах!',
      uk: 'Керуйте лімітами кількості згадувань в темах!',
      en: 'Control mentions limits in your topics!'
    },
    text: {
      uk: __webpack_require__("U4+8"),
      en: __webpack_require__("4wa+"),
      ru: __webpack_require__("kMv0")
    },
    date: '2022-01-04',
    by: users.vladyslavholovko
  };
}, function (_ref9) {
  var _accountInfo$subscrip;
  var accountInfo = _ref9.accountInfo;
  return (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip === void 0 ? void 0 : _accountInfo$subscrip.planType) === 'standard' ? {
    id: 'new_filters',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые фильтры и гибкие операторы',
      uk: 'Нові фільтри та гнучкі оператори',
      en: 'New filters and flexible operators'
    },
    previewText: {
      ru: 'Находите еще больше инсайтов с новыми фильтрами в YouScan!',
      uk: 'Знаходьте ще більше інсайтів з новими фільтрами в YouScan!',
      en: 'Find more insights with new filters in YouScan!'
    },
    text: {
      ru: __webpack_require__("SdVb"),
      uk: __webpack_require__("+p6j"),
      en: __webpack_require__("EUrA")
    },
    date: '2022-01-31',
    by: users.mazur_oleksandr
  } : null;
}, function (_ref10) {
  var _accountInfo$subscrip2;
  var accountInfo = _ref10.accountInfo;
  return (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip2 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip2 === void 0 ? void 0 : _accountInfo$subscrip2.planType) === 'listen' ? {
    id: 'new_filters_for_listen',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые фильтры и гибкие операторы',
      uk: 'Нові фільтри та гнучкі оператори',
      en: 'New filters and flexible operators'
    },
    previewText: {
      ru: 'Находите еще больше инсайтов с новыми фильтрами в YouScan!',
      uk: 'Знаходьте ще більше інсайтів з новими фільтрами в YouScan!',
      en: 'Find more insights with new filters in YouScan!'
    },
    text: {
      ru: __webpack_require__("SdVb"),
      uk: __webpack_require__("+p6j"),
      en: __webpack_require__("EUrA")
    },
    date: '2022-02-08',
    by: users.mazur_oleksandr
  } : null;
}, function (_ref11) {
  var _accountInfo$subscrip3, _accountInfo$subscrip4;
  var accountInfo = _ref11.accountInfo;
  return (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip3 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip3 === void 0 ? void 0 : _accountInfo$subscrip3.planType) === 'pro' || (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip4 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip4 === void 0 ? void 0 : _accountInfo$subscrip4.planType) === 'analyze' ? {
    id: 'new_filters_for_pro_analyze',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые фильтры и гибкие операторы',
      uk: 'Нові фільтри та гнучкі оператори',
      en: 'New filters and flexible operators'
    },
    previewText: {
      ru: 'Находите еще больше инсайтов с новыми фильтрами в YouScan!',
      uk: 'Знаходьте ще більше інсайтів з новими фільтрами в YouScan!',
      en: 'Find more insights with new filters in YouScan!'
    },
    text: {
      ru: __webpack_require__("SdVb"),
      uk: __webpack_require__("+p6j"),
      en: __webpack_require__("EUrA")
    },
    date: '2022-02-14',
    by: users.mazur_oleksandr
  } : null;
}, function (_ref12) {
  var _accountInfo$subscrip5, _accountInfo$subscrip6, _accountInfo$subscrip7, _accountInfo$subscrip8;
  var accountInfo = _ref12.accountInfo;
  return (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip5 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip5 === void 0 ? void 0 : _accountInfo$subscrip5.planType) !== 'standard' && (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip6 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip6 === void 0 ? void 0 : _accountInfo$subscrip6.planType) !== 'listen' && (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip7 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip7 === void 0 ? void 0 : _accountInfo$subscrip7.planType) !== 'pro' && (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip8 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip8 === void 0 ? void 0 : _accountInfo$subscrip8.planType) !== 'analyze' ? {
    id: 'new_filters_for_all',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Новые фильтры и гибкие операторы',
      uk: 'Нові фільтри та гнучкі оператори',
      en: 'New filters and flexible operators'
    },
    previewText: {
      ru: 'Находите еще больше инсайтов с новыми фильтрами в YouScan!',
      uk: 'Знаходьте ще більше інсайтів з новими фільтрами в YouScan!',
      en: 'Find more insights with new filters in YouScan!'
    },
    text: {
      ru: __webpack_require__("SdVb"),
      uk: __webpack_require__("+p6j"),
      en: __webpack_require__("EUrA")
    },
    date: '2022-03-17',
    by: users.mazur_oleksandr
  } : null;
}, function (_ref13) {
  var _accountInfo$subscrip9, _accountInfo$subscrip10, _accountInfo$subscrip11, _accountInfo$subscrip12;
  var accountInfo = _ref13.accountInfo;
  return (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip9 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip9 === void 0 ? void 0 : _accountInfo$subscrip9.planType) === 'listen' || (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip10 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip10 === void 0 ? void 0 : _accountInfo$subscrip10.planType) === 'analyze' || (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip11 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip11 === void 0 ? void 0 : _accountInfo$subscrip11.planType) === 'innovate' || (accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip12 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip12 === void 0 ? void 0 : _accountInfo$subscrip12.planType) === 'enterprise' ? {
    id: 'unlimited_history_collection',
    type: types.IMPROVEMENT,
    title: {
      ru: 'Запускайте исторические сборы самостоятельно! 🧙‍♀️',
      uk: 'Запускайте історичні збори самостійно! 🧙‍♀️',
      en: 'Launch history collection yourself! 🧙‍♀️'
    },
    previewText: {
      ru: 'Долгожданное улучшение в запуске исторических сборов.',
      uk: 'Довгоочікуване покращення запуску історичних зборів.',
      en: 'Long-awaited improvement of historical data collections.'
    },
    text: {
      ru: __webpack_require__("Ug8X"),
      uk: __webpack_require__("7or5"),
      en: __webpack_require__("CWKJ")
    },
    date: '2022-04-07',
    by: users.vladyslavholovko
  } : null;
}, function () {
  return {
    id: 'internalSearchImprov',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Поиск упоминаний внутри темы: что нового 🔎',
      uk: 'Пошук згадувань в темі: що нового 🔎',
      en: 'Internal topic search: what’s new 🔎'
    },
    previewText: {
      ru: 'Долгожданное улучшение в поиске по теме',
      uk: 'Довгоочікуване покращення пошуку по темі',
      en: 'Long-awaited improvement of internal topic search'
    },
    text: {
      uk: __webpack_require__("IkgA"),
      en: __webpack_require__("r/Hm"),
      ru: __webpack_require__("ftjQ")
    },
    date: '2022-04-22',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'templatesForCustomDashboards',
    type: types.NEW_FEATURE,
    title: {
      ru: 'Шаблоны для кастомизированных дашбордов 📊',
      uk: 'Шаблони для кастомізованих дашбордів 📊',
      en: 'Templates for custom dashboards 📊'
    },
    previewText: {
      ru: 'Создавать кастомизированные дашборды стало еще проще!',
      uk: 'Створювати кастомізовані дашборди стало ще простіше!',
      en: 'Creating custom dashboards is easier than ever!'
    },
    text: {
      uk: __webpack_require__("mFHd"),
      en: __webpack_require__("gK9W"),
      ru: __webpack_require__("58j8")
    },
    date: '2022-04-25',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'visualInsightsGraph',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Аналітика Visual Insights стає потужнішою 🪄',
      en: 'Advanced Visual Insights analytics 🪄'
    },
    previewText: {
      uk: 'Отримуйте ще більше інсайтів завдяки покращеному візуальному аналізу',
      en: 'Get more insights with improved visual analysis'
    },
    text: {
      uk: __webpack_require__("oDWi"),
      en: __webpack_require__("Qg1/")
    },
    date: '2022-05-03',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'newSmartFeatureLanguages',
    type: types.IMPROVEMENT,
    title: {
      uk: 'Розумні функції доступні для нових мов 🌍',
      en: 'Smart features available for new languages 🌍'
    },
    previewText: {
      uk: 'Отримайте більше інсайтів з розумними функціями, що працюють для нових чотирьох мов',
      en: 'Get more insights with smart features in four more languages'
    },
    text: {
      uk: __webpack_require__("2YHi"),
      en: __webpack_require__("qPyj")
    },
    date: '2022-05-09',
    by: users.paulkhudan
  };
}, function () {
  return {
    id: 'mentionWidget',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Віджет зі згадуваннями 📈',
      en: 'Mention widget 📈'
    },
    previewText: {
      uk: 'Новий корисний віджет для кастомних дашбордів!',
      en: 'New useful widget for custom dashboards!'
    },
    text: {
      uk: __webpack_require__("i9qC"),
      en: __webpack_require__("8PSa")
    },
    date: '2022-05-11',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'coverageMay2022',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Нові джерела моніторингу 🌍',
      en: 'What’s new in coverage 🌍'
    },
    previewText: {
      uk: 'Дізнайтесь, які нові популярні джерела ми тепер моніторимо',
      en: 'Find out which new popular sources we now monitor'
    },
    text: {
      uk: __webpack_require__("s6RN"),
      en: __webpack_require__("7mo3")
    },
    date: '2022-05-25',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'linkedinChannels',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Моніторинг Linkedin 🕵️‍',
      en: 'Linkedin monitoring 🕵️‍'
    },
    previewText: {
      uk: 'Дізнайтесь, що пишуть користувачі про вашу компанію в Linkedin',
      en: 'Find out what people say about your company on Linkedin'
    },
    text: {
      uk: __webpack_require__("jyS/"),
      en: __webpack_require__("8i9F")
    },
    date: '2022-06-02',
    by: users.yaroslavtykhonchuk
  };
}, function (_ref14) {
  var _accountInfo$subscrip13, _accountInfo$subscrip14, _accountInfo$subscrip15, _accountInfo$subscrip16;
  var accountOrigin = _ref14.accountOrigin,
    accountInfo = _ref14.accountInfo;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.INTERNATIONAL && (((_accountInfo$subscrip13 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip13 === void 0 ? void 0 : _accountInfo$subscrip13.planType) === 'listen' || ((_accountInfo$subscrip14 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip14 === void 0 ? void 0 : _accountInfo$subscrip14.planType) === 'analyze' || ((_accountInfo$subscrip15 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip15 === void 0 ? void 0 : _accountInfo$subscrip15.planType) === 'innovate' || ((_accountInfo$subscrip16 = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip16 === void 0 ? void 0 : _accountInfo$subscrip16.planType) === 'enterprise') ? {
    id: 'twitterHistory',
    type: types.NEW_FEATURE,
    title: {
      en: 'Historical data from Twitter',
      uk: 'Історичні дані з Twitter'
    },
    previewText: {
      en: 'Collect historical data from Twitter to track important insights.',
      uk: 'Збирайте історичні дані з Twitter, щоб не загубити жоден інсайт.'
    },
    text: {
      en: __webpack_require__("XlNN"),
      uk: __webpack_require__("olYu")
    },
    date: '2022-06-03',
    by: users.olena_derebera
  } : null;
}, function () {
  return {
    id: 'audienceInsights',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Аудиторія 👨‍👩‍👧‍👦',
      en: 'Audience insights 👨‍👩‍👧‍👦'
    },
    previewText: {
      uk: 'Дізнайтесь найцікавіші деталі про ваших споживачів!',
      en: 'Get to know your audience better!'
    },
    text: {
      uk: __webpack_require__("i0+8"),
      en: __webpack_require__("gdVQ")
    },
    date: '2022-06-15',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'videosFromTwitch',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Відео з Twitch 🎮',
      en: 'Videos from Twitch 🎮‍'
    },
    previewText: {
      uk: 'Ловіть маркетингові тренди із даними з Twitch.',
      en: 'Be at the cutting edge of marketing with data from Twitch.'
    },
    text: {
      uk: __webpack_require__("2GZd"),
      en: __webpack_require__("NXxd")
    },
    date: '2022-06-21',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'statisticsBy',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Статистика за 📈',
      en: 'Statistics by📈'
    },
    previewText: {
      uk: 'Аналізуйте дані на основі різних показників, як залучення та перегляди.',
      en: 'Analyze your data based on important metrics like engagement and views.'
    },
    text: {
      uk: __webpack_require__("6hdL"),
      en: __webpack_require__("EGua")
    },
    date: '2022-06-28',
    by: users.vladyslavholovko
  };
}, function () {
  return {
    id: 'similarMentions',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Схожі згадування 🔎',
      en: 'Similar mentions 🔎'
    },
    previewText: {
      uk: 'Нехай система допоможе знайти згадування зі схожим контентом!',
      en: 'Let the system help you find mentions with similar content!'
    },
    text: {
      uk: __webpack_require__("zTPL"),
      en: __webpack_require__("MD/D")
    },
    date: '2022-06-30',
    by: users.tarasparfeniuk
  };
}, function () {
  return {
    id: 'improvedWidgetCreationFlow',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Покращений процес створення віджетів 🎉',
      en: 'Improved widget creation flow 🎉'
    },
    previewText: {
      uk: 'Створити віджет для вашого кастомізованого дашборду тепер простіше!',
      en: 'Creating widgets in your custom dashboards becomes effortless and intuitive!'
    },
    text: {
      uk: __webpack_require__("dfuH"),
      en: __webpack_require__("Zuz4")
    },
    date: '2022-07-01',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'explore',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Досліджуйте ваші теми 🧭',
      en: 'Explore your topics 🧭'
    },
    previewText: {
      uk: 'Дізнайтеся що відбувається у вашій темі лише за декілька кліків!',
      en: 'Find insights in your topic in just a few clicks!'
    },
    text: {
      uk: __webpack_require__("V4P9"),
      en: __webpack_require__("CeZJ")
    },
    date: '2022-07-05',
    by: users.markoliinyk
  };
}, function (_ref15) {
  var accountOrigin = _ref15.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'ecommerceUaPampikPanama',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Дізнайтесь, що думають ваші клієнти, завдяки новими джерелами!',
      en: 'More consumer insights with new sources!'
    },
    previewText: {
      uk: 'pampik.com та panama.ua',
      en: 'pampik.com and panama.ua'
    },
    text: {
      uk: __webpack_require__("rCsK"),
      en: __webpack_require__("+PHZ")
    },
    date: '2022-07-11',
    by: users.kibtsa
  } : null;
}, function () {
  return {
    id: 'pinterestFirehose',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Моніторинг Pinterest 🖼️',
      en: 'Pinterest monitoring 🖼️'
    },
    previewText: {
      uk: 'Досліджуйте візуальні тренди завдяки даним з Pinterest',
      en: 'Explore visual trends with data from Pinterest'
    },
    text: {
      uk: __webpack_require__("EB8G"),
      en: __webpack_require__("v2a1")
    },
    date: '2022-07-12',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'customDashboardPowepointExport',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Експорт кастомізованих дашбордів в PowerPoint 🪧',
      en: 'Export custom dashboards as a PowerPoint report 🪧'
    },
    previewText: {
      uk: 'Отримайте красивий звіт PowerPoint у декілька кліків!',
      en: 'Get a beautiful PowerPoint report in just a few clicks!'
    },
    text: {
      uk: __webpack_require__("Lu+Q"),
      en: __webpack_require__("hqj8")
    },
    date: '2022-07-15',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'compareLineWidget',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Показники вашого бренду та його конкурентів в одному графіку 💼',
      en: 'Compare your brand with competitors in one chart 💼'
    },
    previewText: {
      uk: 'Довгоочікуване оновлення для ваших кастомізованих дашбордів!',
      en: 'Long-awaited update for your custom dashboards!'
    },
    text: {
      uk: __webpack_require__("u63t"),
      en: __webpack_require__("YfSt")
    },
    date: '2022-07-19',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'navigation',
    type: types.IMPROVEMENT,
    title: {
      uk: 'Оновлена навігація ↩️',
      en: 'Updated Navigation ↩️'
    },
    previewText: {
      uk: 'Все на своїх місцях!',
      en: 'Everything is in the right place!'
    },
    text: {
      uk: __webpack_require__("qhDX"),
      en: __webpack_require__("1EH5")
    },
    date: '2022-07-26',
    by: users.markoliinyk
  };
}, function (_ref16) {
  var accountOrigin = _ref16.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.INTERNATIONAL ? {
    id: 'twitterCollectionForClients',
    type: types.IMPROVEMENT,
    title: {
      en: 'Historical collection from Twitter: what’s new🕵️‍♀️',
      uk: 'Збір історії з Twitter: що нового🕵️‍♀️'
    },
    previewText: {
      en: 'It’s now easier to collect historical data from Twitter!',
      uk: 'Дізнайтесь, як зібрати історичні дані з Twitter в два кліка!'
    },
    text: {
      en: __webpack_require__("QNCO"),
      uk: __webpack_require__("4kD+")
    },
    date: '2022-08-10',
    by: users.vladyslavholovko
  } : null;
}, function () {
  return {
    id: 'comparePieWidget',
    type: types.NEW_FEATURE,
    title: {
      en: 'Comparing several topics becomes as easy as pie 🍰',
      uk: 'Порівнювати аналітику по темах стало ще простіше 🍰'
    },
    previewText: {
      en: 'New possibilities of pie chart widget!',
      uk: 'Нові можливості секторного віджету!'
    },
    text: {
      en: __webpack_require__("k2Do"),
      uk: __webpack_require__("EYSv")
    },
    date: '2022-08-24',
    by: users.vladyslavholovko
  };
}, function () {
  return {
    id: 'compareStackedBarWidget',
    type: types.NEW_FEATURE,
    title: {
      en: 'The stacked bar chart has a new trick up its sleeve! 🧙‍',
      uk: 'Магія накопичувальної гістограми 🧙‍'
    },
    previewText: {
      en: 'Compare the topics in stacked bar chart widget!',
      uk: 'Порівнюйте теми в кастомізованих дашбордах'
    },
    text: {
      en: __webpack_require__("Cayw"),
      uk: __webpack_require__("2soQ")
    },
    date: '2022-09-02',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'tiktokStickers',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Стікери з TikTok 🎬',
      en: 'TikTok Stickers 🎬'
    },
    previewText: {
      uk: 'Не пропустіть важливі згадування з покращеним покриттям TikTok.',
      en: 'Don\'t miss important mentions with improved TikTok coverage.'
    },
    text: {
      uk: __webpack_require__("LZVo"),
      en: __webpack_require__("9g+D")
    },
    date: '2022-09-05',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'compareBarAndSpiderWidget',
    type: types.NEW_FEATURE,
    title: {
      en: 'Comparison is now available in Bar and Spider charts!',
      uk: 'Порівнюйте теми в Гістограмі та Радіальному віджеті!'
    },
    previewText: {
      en: 'We have new additions to our comparison widget family!',
      uk: 'Більше можливостей в ваших кастомізованих дашбордах! '
    },
    text: {
      en: __webpack_require__("6AMt"),
      uk: __webpack_require__("oHhE")
    },
    date: '2022-09-21',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'starRating',
    type: types.NEW_FEATURE,
    title: {
      en: 'The stars have aligned! ⭐️',
      uk: 'Зірки зійшлись! ⭐️'
    },
    previewText: {
      en: 'Score ratings are now available in Filters.',
      uk: 'Рейтинги вже доступні в Фільтрах!'
    },
    text: {
      en: __webpack_require__("VtKi"),
      uk: __webpack_require__("n6wu")
    },
    date: '2022-10-18',
    by: users.vladyslavholovko
  };
}, function () {
  return {
    id: 'socialSearch',
    type: types.NEW_FEATURE,
    title: {
      en: 'Social search✨️',
      uk: 'Social search✨'
    },
    previewText: {
      en: 'Get unlimited insights without creating a topic',
      uk: 'Інсайти без обмежень і створення тем'
    },
    text: {
      en: __webpack_require__("GbSE"),
      uk: __webpack_require__("yn7+")
    },
    date: '2022-10-19',
    by: users.markoliinyk
  };
}, function (_ref17) {
  var accountOrigin = _ref17.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'instagramReels',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Instagram Reels та нові фільтри 🎞️',
      en: 'Instagram Reels and new filters 🎞️'
    },
    previewText: {
      uk: 'Аналізуйте нові дані з Інстаграм із гнучкими фільтрами',
      en: 'Analyze new data from Instagram with flexible filters'
    },
    text: {
      uk: __webpack_require__("UQ+k"),
      en: __webpack_require__("jOwg")
    },
    date: '2022-10-20',
    by: users.kibtsa
  } : {
    id: 'instagramReels',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Instagram Reels та нові фільтри 🎞️',
      en: 'Instagram Reels and new filters 🎞️'
    },
    previewText: {
      uk: 'Аналізуйте нові дані з Інстаграм із гнучкими фільтрами',
      en: 'Analyze new data from Instagram with flexible filters'
    },
    text: {
      uk: __webpack_require__("zGU0"),
      en: __webpack_require__("huuW")
    },
    date: '2022-10-20',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'newCalendar',
    type: types.IMPROVEMENT,
    title: {
      en: 'Navigate through calendar swiftly 🚅️',
      uk: 'Оновлений календар 🎈'
    },
    previewText: {
      en: 'Go to the desired period in a few clicks',
      uk: 'Обирайте потрібний період у кілька кліків'
    },
    text: {
      en: __webpack_require__("qufy"),
      uk: __webpack_require__("yvBa")
    },
    date: '2022-10-25',
    by: users.vladyslavholovko
  };
}, function () {
  return {
    id: 'msTeams',
    type: types.NEW_FEATURE,
    title: {
      en: 'Check out our brand new integration 💌',
      uk: 'Нова інтеграція вже в YouScan 💌'
    },
    previewText: {
      en: 'Receive mentions from YouScan to channels in Microsoft Teams!',
      uk: 'Надсилайте згадування з YouScan у ваші Microsoft Teams канали!'
    },
    text: {
      en: __webpack_require__("8fyt"),
      uk: __webpack_require__("n/85")
    },
    date: '2022-10-27',
    by: users.ole
  };
}, function (_ref18) {
  var accountCoverage = _ref18.accountInfo.accountCoverage;
  return accountCoverage === utils_account/* ACCOUNT_COVERAGE_OPTIONS */.oM.GLOBAL ? {
    id: 'audioMonitoring',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Аудіо моніторинг 🎧',
      en: 'Audio Monitoring 🎧'
    },
    previewText: {
      uk: 'Дізнайтесь, як ваш бренд згадують у відео',
      en: 'Sounds good'
    },
    text: {
      uk: __webpack_require__("Upnc"),
      en: __webpack_require__("gG1y")
    },
    date: '2022-11-07',
    by: users.kibtsa
  } : null;
}, function (_ref19) {
  var accountOrigin = _ref19.accountInfo.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'hotline',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Відгуки з hotline.ua ☎️',
      en: 'Reviews from hotline.ua ☎️'
    },
    previewText: {
      uk: 'Дізнайтесь, що пишуть про ваш магазин чи товари',
      en: 'Analyze reviews on your shop or products'
    },
    text: {
      uk: __webpack_require__("8uDF"),
      en: __webpack_require__("g5HK")
    },
    date: '2022-11-08',
    by: users.kibtsa
  } : null;
}, function () {
  return {
    id: 'queryComplexOperators',
    type: types.NEW_FEATURE,
    title: {
      en: 'Meet new advanced search operators 🔎',
      uk: 'Нові пошукові оператори 🔎'
    },
    previewText: {
      en: 'Bring your query to the next level!',
      uk: 'Більше можливостей в ваших пошукових запитах!'
    },
    text: {
      en: __webpack_require__("Xovi"),
      uk: __webpack_require__("5fuh")
    },
    date: '2022-11-08',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'savedFilters',
    type: types.NEW_FEATURE,
    title: {
      en: 'Saved filters 🗃',
      uk: 'Збережені фільтри 🗃'
    },
    previewText: {
      en: 'Save filters for easy access later.',
      uk: 'Зберігайте набір фільтрів в потоці згадувань!'
    },
    text: {
      en: __webpack_require__("2lCO"),
      uk: __webpack_require__("YFBY")
    },
    date: '2022-11-09',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'dataSampling',
    type: types.NEW_FEATURE,
    title: {
      en: 'Sampled topics! ✨',
      uk: 'Вибірка данник (data sampling)! ✨'
    },
    previewText: {
      en: 'Our new add-on that helps you work with high-volume data.',
      uk: 'Наш новий адд-он, який допомагає працювати з великими обсягами даних.'
    },
    text: {
      en: __webpack_require__("Uez3"),
      uk: __webpack_require__("7Pbo")
    },
    date: '2022-11-11',
    by: users.ole
  };
}, function () {
  return {
    id: 'channelsOpenTable',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Відгуки з OpenTable 🍽️‍',
      en: 'Reviews from OpenTable 🍽️'
    },
    previewText: {
      uk: 'Оновлення для компаній, які працюють у ресторанному бізнесі',
      en: 'More food for thought for companies operating in the restaurant business'
    },
    text: {
      uk: __webpack_require__("cGZI"),
      en: __webpack_require__("mNzy")
    },
    date: '2022-11-14',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'sharesEngagementFacebook',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Новини про новини! 📰',
      en: 'We come bearing engaging news! 📰'
    },
    previewText: {
      uk: 'Дізнавайтесь які новинні статті привернули більше уваги',
      en: 'Engagement is now available for news articles'
    },
    text: {
      uk: __webpack_require__("05gE"),
      en: __webpack_require__("5K50")
    },
    date: '2022-11-18',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'tiktokCaptions',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Аудіо моніторинг з TikTok 🔊',
      en: 'Tiktok: Audio Monitoring 🔊'
    },
    previewText: {
      uk: 'Не проґавте згадування вашого бренда у тіктоках',
      en: 'Find out when people mention your brand in tiktoks'
    },
    text: {
      uk: __webpack_require__("m1Nn"),
      en: __webpack_require__("CdlT")
    },
    date: '2022-11-21',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'customDashboardLegendAlias',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Редагуйте легенди в кастомізованих дашбордах ✍️',
      en: 'Edit graph legends in Custom Dashboards ✍️'
    },
    previewText: {
      uk: 'Використовуйте звичні назви!',
      en: 'Use the names that work for you!'
    },
    text: {
      uk: __webpack_require__("D7Ws"),
      en: __webpack_require__("8FNR")
    },
    date: '2022-11-21',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'mercadolibre',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Mercadolibre 🤝️',
      en: 'Mercadolibre 🤝'
    },
    previewText: {
      uk: 'Більше відгуків з Латинської Америки',
      en: 'Got Reviews?'
    },
    text: {
      uk: __webpack_require__("1zjG"),
      en: __webpack_require__("C2Tg")
    },
    date: '2022-11-25',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'wordcloud_improvements',
    type: types.IMPROVEMENT,
    title: {
      uk: 'Нові можливості Хмари слів',
      en: 'Unlock the power of WordCloud'
    },
    previewText: {
      uk: 'Знаходьте важливі інсайти в текстових даних!',
      en: 'Streamline your analysis and quickly find meaningful insights!'
    },
    text: {
      uk: __webpack_require__("mn7P"),
      en: __webpack_require__("p+3e")
    },
    date: '2022-12-06',
    by: users.markoliinyk
  };
}, function (_ref20) {
  var accountCoverage = _ref20.accountInfo.accountCoverage;
  return accountCoverage === utils_account/* ACCOUNT_COVERAGE_OPTIONS */.oM.GLOBAL ? {
    id: 'newEcommerce',
    type: types.NEW_FEATURE,
    title: {
      uk: '10 нових e-commerce сайтів 🛒',
      en: '10 new e-commerce websites 🛒'
    },
    previewText: {
      uk: 'Відгуків багато не буває',
      en: 'Don’t miss valuable reviews'
    },
    text: {
      uk: __webpack_require__("jFkV"),
      en: __webpack_require__("T6tM")
    },
    date: '2022-12-07',
    by: users.kibtsa
  } : null;
}, function () {
  return {
    id: 'potentialReach',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Потенційне Охоплення 🚀',
      en: 'Potential Reach 🚀'
    },
    previewText: {
      uk: 'Завчасно визначте найвпливовіші згадки',
      en: 'Identify the most impactful mentions early'
    },
    text: {
      uk: __webpack_require__("7kFA"),
      en: __webpack_require__("cOYb")
    },
    date: '2022-12-20',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'mentionTranslation',
    type: types.NEW_FEATURE,
    title: {
      en: 'No mention is lost in translation!',
      uk: 'Жодних мовних барʼєрів в YouScan!'
    },
    previewText: {
      en: 'Instant translation now available in YouScan',
      uk: 'Тепер в YouScan доступний миттєвий переклад'
    },
    text: {
      en: __webpack_require__("k/IW"),
      uk: __webpack_require__("GYAf")
    },
    date: '2022-12-22',
    by: users.vladyslavholovko
  };
}, function () {
  return {
    id: 'brandedDashboards',
    type: types.NEW_FEATURE,
    title: {
      en: 'Personalize your Custom Dashboard! 🧑🏻‍🎨',
      uk: 'Персоналізуйте ваш Кастомізований Дашборд! 🧑🏻‍🎨'
    },
    previewText: {
      en: 'Your logo is now visible on your dashboard.',
      uk: 'Додавайте свій логотип на дашборд!'
    },
    text: {
      en: __webpack_require__("BV1H"),
      uk: __webpack_require__("oyl3")
    },
    date: '2023-01-04',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'colorSchemes',
    type: types.NEW_FEATURE,
    title: {
      en: 'Color your data 🎨',
      uk: 'Розфарбуйте свої дані ‍🎨'
    },
    previewText: {
      en: 'Kick off 2023 with the new colors!',
      uk: 'Почніть 2023 рік з новими кольорами!'
    },
    text: {
      en: __webpack_require__("nys5"),
      uk: __webpack_require__("4lCy")
    },
    date: '2023-01-13',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'customDashboardNewFilters',
    type: types.NEW_FEATURE,
    title: {
      en: 'Filter all the way! 🛷',
      uk: 'Фільтруйте, ніби ніхто не бачить 🛷'
    },
    previewText: {
      en: 'Filter dashboard graphs just like you do in topics',
      uk: 'Фільтруйте графіки в дашбордах так само, як і в темах'
    },
    text: {
      en: __webpack_require__("iK0G"),
      uk: __webpack_require__("YKBg")
    },
    date: '2023-01-16',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'spanishLanguageInterface',
    type: types.NEW_FEATURE,
    title: {
      en: 'YouScan interface in Spanish 🇪🇸',
      uk: 'Інтерфейс YouScan іспанською мовою 🇪🇸',
      es: 'Interfaz de YouScan en Español 🇪🇸'
    },
    previewText: {
      en: '¡Hola! Meet the brand new language of YouScan interface',
      uk: '¡Hola! Зустрічайте нову мову інтерфейсу в YouScan',
      es: '¡Hola! ¡Bienvenida a nuestro interfaz nuevo en español!'
    },
    text: {
      en: __webpack_require__("rEWk"),
      uk: __webpack_require__("+z+T"),
      es: __webpack_require__("67uD")
    },
    date: '2023-01-17',
    by: users.yaroslavtykhonchuk
  };
}, function (_ref21) {
  var accountOrigin = _ref21.accountOrigin;
  return accountOrigin === utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL ? {
    id: 'mentionsWordReport',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Звіти в форматі Word 📑',
      en: 'Reports in Word format 📑'
    },
    previewText: {
      uk: 'Довгоочікуване оновлення вже на нашій платформі - відтепер ви можете завантажувати згадування в форматі Word.',
      en: 'Long awaited addition to our platform - from now on, you can download mentions in Word format.'
    },
    text: {
      uk: __webpack_require__("EprT"),
      en: __webpack_require__("ZOOG")
    },
    date: '2023-01-30',
    by: users.yaroslavtykhonchuk
  } : null;
}, function () {
  return {
    id: 'channelsYelp',
    type: types.NEW_FEATURE,
    title: {
      en: 'Reviews from Yelp',
      uk: 'Відгуки з Yelp',
      es: 'Opiniones de Yelp'
    },
    previewText: {
      en: 'Find valuable insights about your local business',
      uk: 'Знаходьте цінні інсайти про різноманітні заклади',
      es: 'Encuentra unos insights valiosos sobre tu negocio local'
    },
    text: {
      en: __webpack_require__("N0hP"),
      uk: __webpack_require__("Q03w"),
      es: __webpack_require__("yekJ")
    },
    date: '2023-02-02',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'linkedinNonOwnedChannels',
    type: types.NEW_FEATURE,
    title: {
      en: 'LinkedIn monitoring 2.0',
      uk: 'Моніторинг LinkedIn 2.0',
      es: 'Monitoreo LinkedIn 2.0'
    },
    previewText: {
      en: 'Monitor and analyze your competitors or industry leaders!',
      uk: 'Моніторте та аналізуйте своїх конкурентів чи лідерів індустрії!',
      es: '¡Monitorea y analiza a tus competidores o líderes de la industria!'
    },
    text: {
      en: __webpack_require__("MQXf"),
      uk: __webpack_require__("jdAr"),
      es: __webpack_require__("7GuT")
    },
    date: '2023-02-21',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'facebookOwnPageReviews',
    type: types.NEW_FEATURE,
    title: {
      en: 'Facebook reviews in YouScan 👍🏻 👎🏻',
      uk: 'Відгуки з Facebook в YouScan 👍🏻 👎🏻',
      es: 'Reseñas de Facebook en YouScan 👍🏻 👎🏻'
    },
    previewText: {
      en: 'Become one step closer to your audience.',
      uk: 'Станьте на один крок ближче до своїх споживачів.',
      es: 'Acércate un paso más a tu audiencia.'
    },
    text: {
      en: __webpack_require__("NCqx"),
      uk: __webpack_require__("ivD9"),
      es: __webpack_require__("w7Tt")
    },
    date: '2023-02-27',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'updatedSubjects',
    type: types.IMPROVEMENT,
    title: {
      en: 'Next level subjects 🤩',
      uk: 'Тематики нового покоління 🤩',
      es: 'Siguiente nivel de temas 🤩'
    },
    previewText: {
      en: 'Unlimited understanding of your audience with enhanced subjects',
      uk: 'Нескінченне розуміння аудиторії за допомогою покращених тематик',
      es: 'Comprende mejor a tu audiencia con nuestros temas actualizados'
    },
    text: {
      en: __webpack_require__("0aFK"),
      uk: __webpack_require__("TANM"),
      es: __webpack_require__("lj3o")
    },
    date: '2023-03-14',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'updatedChannels',
    type: types.IMPROVEMENT,
    title: {
      en: 'Coco your Channels',
      uk: 'Не ходіть по інших каналах 📺',
      es: 'No lo pierdas en nuestros Canales 📺'
    },
    previewText: {
      en: 'Adding channels has never been more stylish!',
      uk: 'Що ви бачите перед собою? Це - не скарб, це ваші нові канали!',
      es: '¡Agregar canales nunca ha sido tan fácil!'
    },
    text: {
      en: __webpack_require__("MVnA"),
      uk: __webpack_require__("f9BR"),
      es: __webpack_require__("LtFf")
    },
    date: '2023-03-27',
    by: users.vladyslavholovko
  };
}, function () {
  return {
    id: 'improvedSentiment',
    type: types.IMPROVEMENT,
    title: {
      en: 'Sentiment detection beyond limits 🌎',
      uk: 'Тональність без меж 🌎',
      es: 'Detección de sentimientos más allá de los límites 🌎'
    },
    previewText: {
      en: 'Get a global view of customer sentiment',
      uk: 'Дослідіть, як ваш бренд сприймають у всьому світі',
      es: 'Obten una visión global del sentimiento del cliente'
    },
    text: {
      en: __webpack_require__("bEg4"),
      uk: __webpack_require__("uiVO"),
      es: __webpack_require__("iehT")
    },
    date: '2023-03-27',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'insightsCopilot',
    type: types.NEW_FEATURE,
    title: {
      en: 'YouScan Insights Copilot! ✨',
      uk: 'YouScan Insights Copilot! ✨',
      es: 'YouScan Insights Copilot! ✨'
    },
    previewText: {
      en: 'Revolutionize your social media game with ChatGPT',
      uk: 'Революція в моніторингу соціальних медіа з ChatGPT',
      es: 'Revoluciona tus redes sociales con ChatGPT'
    },
    text: {
      en: __webpack_require__("5tvo"),
      uk: __webpack_require__("2zN0"),
      es: __webpack_require__("DkJ1")
    },
    date: '2023-04-25',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'createTopicLogo',
    type: types.NEW_FEATURE,
    title: {
      en: 'Logo-go-go 🚀',
      uk: 'Логоманія 🚀',
      es: 'Logomanía 🚀'
    },
    previewText: {
      en: 'Collecting logos: a building block for your brand!',
      uk: 'Розпізнавання лого: не обмежуйте свій моніторинг!',
      es: 'Reconocimiento de logotipos: ¡no detengas el crecimiento de tu marca!'
    },
    text: {
      en: __webpack_require__("bV7Z"),
      uk: __webpack_require__("GVOk"),
      es: __webpack_require__("jKPn")
    },
    date: '2023-04-27',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'newCalendar',
    type: types.NEW_FEATURE,
    title: {
      en: 'It’s a date 💖',
      uk: 'Все за календарем 👌',
      es: 'Ya está aquí el nuevo calendario ⚡️'
    },
    previewText: {
      en: 'Simplify your time travels with the click of a button',
      uk: 'Спростіть свої подорожі в часі одним кліком',
      es: 'Simplifique sus viajes en el tiempo con sólo pulsar un botón'
    },
    text: {
      en: __webpack_require__("hYy6"),
      uk: __webpack_require__("51Zi"),
      es: __webpack_require__("sRec")
    },
    date: '2023-05-01',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'betterSearch',
    type: types.NEW_FEATURE,
    title: {
      en: 'Find what you\'re looking for 🔍',
      uk: 'Знаходьте те, що шукаєте 🔍',
      es: 'Encuentra lo que buscas 🔍'
    },
    previewText: {
      en: 'No extra effort and no extra mentions',
      uk: 'Без зайвих зусиль і зайвих згадок',
      es: 'Sin esfuerzos ni menciones adicionales'
    },
    text: {
      en: __webpack_require__("4yR+"),
      uk: __webpack_require__("Q/o6"),
      es: __webpack_require__("2HI7")
    },
    date: '2023-05-11',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'tiktokChannels',
    type: types.NEW_FEATURE,
    title: {
      en: 'TikTok on the clock 🕰️',
      uk: 'Шок: ми додали в канали TikTok 🤩',
      es: 'TikTok, el reloj da el toque  🕰️'
    },
    previewText: {
      en: 'Collect posts from any TikTok page',
      uk: 'Збирайте дописи з будь-якої сторінки TikTok',
      es: 'Recopilar publicaciones de cualquier página de TikTok'
    },
    text: {
      en: __webpack_require__("P5fw"),
      uk: __webpack_require__("K4cw"),
      es: __webpack_require__("yuVn")
    },
    date: '2023-05-23',
    by: users.tarasparfeniuk
  };
}, function () {
  return {
    id: 'metaAdsChannels',
    type: types.NEW_FEATURE,
    title: {
      en: 'Join the dark side 🕶️',
      uk: 'Переходьте на темний бік 🕶️',
      es: 'Únete al lado oscuro 🕶️'
    },
    previewText: {
      en: 'Collect Dark posts from Facebook and Instagram',
      uk: 'Збирайте темні пости з Facebook та Instagram',
      es: 'Recopilar publicaciones oscuras de Facebook e Instagram'
    },
    text: {
      en: __webpack_require__("nksj"),
      uk: __webpack_require__("+QKG"),
      es: __webpack_require__("SSgE")
    },
    date: '2023-05-25',
    by: users.tarasparfeniuk
  };
}, function () {
  return {
    id: 'queryLength',
    type: types.IMPROVEMENT,
    title: {
      en: '10K is The Limit 🔝',
      uk: 'Спробуйте запит у 10K 🔝',
      es: '10K es el límite 🔝'
    },
    previewText: {
      en: 'More space for your creativity with search queries',
      uk: 'Більше простору для творчості з пошуковими запитами',
      es: 'Más espacio para su creatividad con las consultas de búsqueda'
    },
    text: {
      en: __webpack_require__("jr/T"),
      uk: __webpack_require__("KGlv"),
      es: __webpack_require__("gq04")
    },
    date: '2023-06-01',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'recurrentEmailReports',
    type: types.IMPROVEMENT,
    title: {
      en: 'You\'ve Got Email 💌',
      uk: 'Ідеальний звіт 💌',
      es: 'Tienes un e-mail 💌'
    },
    previewText: {
      en: 'Three long-awaited customizations for email reports',
      uk: 'Три довгоочікувані кастомізації для звітів на email',
      es: 'Tres personalizaciones muy esperadas para los informes por correo electrónico'
    },
    text: {
      en: __webpack_require__("B0IB"),
      uk: __webpack_require__("d8FH"),
      es: __webpack_require__("Sif2")
    },
    date: '2023-06-13',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'influenceScore',
    type: types.NEW_FEATURE,
    title: {
      en: 'Deeper Dive into Audience Insights 🤿',
      uk: 'Глибше занурення в Аудиторні Інсайти 🤿',
      es: 'Análisis de audiencias aún más profundo 🤿'
    },
    previewText: {
      en: 'Discover the perfect influencer fit',
      uk: 'Знаходьте ідеального інфлюенсера',
      es: 'Descubre al influencer perfecto'
    },
    text: {
      en: __webpack_require__("naMM"),
      uk: __webpack_require__("DaOz"),
      es: __webpack_require__("JNoF")
    },
    date: '2023-06-26',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'userPermissions',
    type: types.NEW_FEATURE,
    title: {
      en: 'User Permissions Power-Up 🔐',
      uk: 'увікни…уві…Увімкніть доступи до тем 🔐',
      es: 'Permisos de usuario Encendido 🔐'
    },
    previewText: {
      en: 'Control topic creation like a boss',
      uk: 'Контролюйте створення тем як бос',
      es: 'Controla la creación de temas como un jefe'
    },
    text: {
      en: __webpack_require__("We5E"),
      uk: __webpack_require__("J28R"),
      es: __webpack_require__("3LdF")
    },
    date: '2023-07-04',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'portugueseBrazilian',
    type: types.NEW_FEATURE,
    title: {
      en: 'Você fala português? 🇧🇷',
      es: 'Você fala português? 🇧🇷'
    },
    previewText: {
      en: 'Switch YouScan to Brazilian Portuguese',
      es: 'Cambiar YouScan al portugués de Brasil'
    },
    text: {
      en: __webpack_require__("ZBig"),
      es: __webpack_require__("uYRz")
    },
    date: '2023-07-17',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'textWidget',
    type: types.NEW_FEATURE,
    title: {
      en: 'And a dash of text ✏️',
      uk: 'Слова не зайві ✏️',
      es: 'Y una pizca de texto ✏️'
    },
    previewText: {
      en: 'Text widget on Dashboards',
      uk: 'Текстовий віджет на Дашбордах',
      es: 'Widget de texto en Tableros'
    },
    text: {
      en: __webpack_require__("+ehP"),
      uk: __webpack_require__("l//O"),
      es: __webpack_require__("XFmy")
    },
    date: '2023-07-25',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'customDashboardDefaultFilter',
    type: types.NEW_FEATURE,
    title: {
      en: 'Just save it!',
      uk: 'Налаштуйте раз, користуйтесь завжди',
      es: '¡Guárdalo!'
    },
    previewText: {
      en: 'Saved filters on Dashboards',
      uk: 'Збережені фільтри на Дашбордах',
      es: 'Filtros guardados en Tableros'
    },
    text: {
      en: __webpack_require__("whWF"),
      uk: __webpack_require__("ELX8"),
      es: __webpack_require__("EkfA")
    },
    date: '2023-08-07',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'filtersForRecurrentReports',
    type: types.NEW_FEATURE,
    title: {
      en: 'Sharp focus ✂️',
      uk: 'Чіткий фокус 📷',
      es: 'Enfoque nítido ✂️'
    },
    previewText: {
      en: 'Filters for recurrent reports',
      uk: 'Фільтри для регулярних звітів',
      es: 'Filtros para informes recurrentes'
    },
    text: {
      en: __webpack_require__("vjBF"),
      uk: __webpack_require__("1NqG"),
      es: __webpack_require__("u9nb")
    },
    date: '2023-08-17',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'tiktokChannelsNextLevel',
    type: types.NEW_FEATURE,
    title: {
      en: 'Next-level TikTok channels 🎡',
      uk: 'Нестримні TikTok канали 🎡',
      es: 'Canales de TikTok de siguiente nivel 🎡'
    },
    previewText: {
      en: 'Collect comments from any TikTok page',
      uk: 'Збирайте коментарі з будь-якої сторінки TikTok',
      es: 'Recoge los comentarios de cualquier página de TikTok'
    },
    text: {
      en: __webpack_require__("3/fq"),
      uk: __webpack_require__("WNde"),
      es: __webpack_require__("sQOz")
    },
    date: '2023-08-17',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'comparisonWidget',
    type: types.NEW_FEATURE,
    title: {
      en: 'Compare like a pro',
      uk: 'Порівнюйте як професіонал',
      es: 'Compara como un profesional'
    },
    previewText: {
      en: 'Meet Comparison widget in Dashboards',
      uk: 'Зустрічайте віджет "Порівняння" на Дашбордах',
      es: 'Aquí está nuestro Widget Comparativo en los Dashboards'
    },
    text: {
      en: __webpack_require__("lTw5"),
      uk: __webpack_require__("aYHc"),
      es: __webpack_require__("RHqb")
    },
    date: '2023-08-18',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'authorOperators',
    type: types.NEW_FEATURE,
    title: {
      en: 'Breaking through the AuthorSphere 🚀',
      uk: 'Логічні оператори авторизовано ✅',
      es: 'Conoce los operadores de autor 👨‍👩‍👧‍👦'
    },
    previewText: {
      en: 'Author-based operators for monitoring',
      uk: 'Використовуйте моніторинг за авторами',
      es: 'Haz tu búsqueda aún más precisa'
    },
    text: {
      en: __webpack_require__("FOxG"),
      uk: __webpack_require__("LMpP"),
      es: __webpack_require__("gtuU")
    },
    date: '2023-08-31',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'socialSearchExtended',
    type: types.NEW_FEATURE,
    title: {
      en: '1 year of Social Search 🥳',
      uk: '1 рік Social Search 🥳',
      es: '1 año de Social Search 🥳'
    },
    previewText: {
      en: 'Get insights for the last 12 months',
      uk: 'Отримуйте інсайти за останні 12 місяців',
      es: 'Obtén la información de los últimos 12 meses'
    },
    text: {
      en: __webpack_require__("Rhhl"),
      uk: __webpack_require__("KCmR"),
      es: __webpack_require__("9nz0")
    },
    date: '2023-09-06',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'insightsCopilotInReports',
    type: types.NEW_FEATURE,
    title: {
      en: 'Insights Copilot announces new flight: to your email 👩‍✈️',
      uk: 'Новий рейс Insights Copilot: на вашу пошту 👩‍✈️',
      es: 'Nuevo vuelo de Insights Copilot: tu correo como destino 👩‍✈️'
    },
    previewText: {
      en: 'Get insightful summaries automatically delivered to your inbox',
      uk: 'Отримуйте підсумки разом із регулярними звітами',
      es: 'Recibe resúmenes detallados automáticamente en tu buzón'
    },
    text: {
      en: __webpack_require__("T2hp"),
      uk: __webpack_require__("gWV9"),
      es: __webpack_require__("sHRH")
    },
    date: '2023-09-18',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'discussion',
    type: types.NEW_FEATURE,
    title: {
      en: 'Peek behind the post 🗨️',
      uk: 'У вирі подій 🗨️',
      es: 'Mirar detrás del post🗨️'
    },
    previewText: {
      en: 'Discover a brand-new way to analyze comments',
      uk: 'Відкрийте для себе новий спосіб аналізу коментарів',
      es: 'Descubre una nueva forma de analizar los comentarios'
    },
    text: {
      en: __webpack_require__("9jF1"),
      uk: __webpack_require__("Xqj6"),
      es: __webpack_require__("5d69")
    },
    date: '2023-09-20',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'mobileImprove',
    type: types.NEW_FEATURE,
    title: {
      en: 'Mobile version 📱',
      uk: 'Мобільна версія 📱',
      es: 'Versión móvil 📱'
    },
    previewText: {
      en: 'YouScan on your smartphone!',
      uk: 'YouScan у вашому смартфоні!',
      es: '¡YouScan en tu smartphone!'
    },
    text: {
      en: __webpack_require__("S43K"),
      uk: __webpack_require__("g/4n"),
      es: __webpack_require__("TijJ")
    },
    date: '2023-10-10',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'insightsCopilot1.5',
    type: types.IMPROVEMENT,
    title: {
      en: 'Elevate your insights game! 💫',
      uk: 'Підвищуйте ефективність своєї аналітичної гри! 💫',
      es: '¡Mejora tu juego de insights! 💫'
    },
    previewText: {
      en: 'Enhanced Insights Copilot for quicker and more effective exploration of ideas.',
      uk: 'Покращений Insights Copilot для швидшого та ефективнішого дослідження ідей.',
      es: 'Insights Copilot se ha mejorado para una exploración más rápida y efectiva de ideas.'
    },
    text: {
      en: __webpack_require__("iMhI"),
      uk: __webpack_require__("TqgB"),
      es: __webpack_require__("ypQJ")
    },
    date: '2023-11-20',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'editTopicPreview',
    type: types.IMPROVEMENT,
    title: {
      en: 'Seamless Topic Editing',
      uk: 'Редагування тем 2.0',
      es: 'Edición de temas sin fisuras'
    },
    previewText: {
      en: 'See how your edits affect your topic',
      uk: 'Перевірте як ваші правки повпливають на збір в темі',
      es: 'Experimente un flujo de trabajo armonioso editando consultas'
    },
    text: {
      en: __webpack_require__("x9Dn"),
      uk: __webpack_require__("pBG0"),
      es: __webpack_require__("eTlw")
    },
    date: '2023-11-28',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'betterSearchInTopics',
    type: types.IMPROVEMENT,
    title: {
      en: 'Better search 🕵️',
      uk: 'Покращений пошук 🕵️',
      es: 'Mejora en la búsqueda 🕵️'
    },
    previewText: {
      en: 'Easily find needed mentions inside your topics',
      uk: 'Швидко знаходьте потрібні згадки в темах',
      es: 'Encuentra fácilmente menciones relevantes dentro de tus temas'
    },
    text: {
      en: __webpack_require__("0Vwr"),
      uk: __webpack_require__("N00P"),
      es: __webpack_require__("3sqh")
    },
    date: '2023-12-05',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'updatesForDashboards',
    type: types.IMPROVEMENT,
    title: {
      en: '3 Updates For Dashboards 😍',
      uk: 'Три оновлення дашбордів 😍',
      es: '3 Actualizaciones Para Tableros 😍'
    },
    previewText: {
      en: 'Enhance your dashboard experience',
      uk: 'Покращення для поціновувачів дашбордів',
      es: 'Mejore su experiencia con los tableros'
    },
    text: {
      en: __webpack_require__("Ozqr"),
      uk: __webpack_require__("Xa6l"),
      es: __webpack_require__("H7DG")
    },
    date: '2023-12-07',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'facebookReels',
    type: types.NEW_FEATURE,
    title: {
      en: 'Facebook Channels Update 🎞️',
      uk: 'Оновлення каналів Facebook 🎞️',
      es: 'Actualización sobre Canales de Facebook 🎞️'
    },
    previewText: {
      en: 'Don’t miss any reel and comment',
      uk: 'Не пропустіть жодного рілс та коментаря',
      es: 'No te pierdas ningún reels y comentario'
    },
    text: {
      en: __webpack_require__("J5k7"),
      uk: __webpack_require__("bAhR"),
      es: __webpack_require__("uHVE")
    },
    date: '2023-12-08',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'socialSearchWordcloud',
    type: types.NEW_FEATURE,
    title: {
      en: 'Changing the Social Search Climate',
      uk: 'Зміни клімату у Соціальному Пошуку',
      es: 'Cambiar el clima de búsqueda social'
    },
    previewText: {
      en: 'Unlock insights instantly with WordCloud ⛅️',
      uk: 'Знаходьте миттєві інсайти за допомогою Хмари слів ⛅️',
      es: 'Obtén información al instante con WordCloud ⛅️'
    },
    text: {
      en: __webpack_require__("3vRL"),
      uk: __webpack_require__("sjsQ"),
      es: __webpack_require__("za0C")
    },
    date: '2024-01-12',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'channelsExpedia',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Відгуки з Expedia',
      en: 'Reviews from Expedia',
      es: 'Opiniones de Expedia'
    },
    previewText: {
      uk: 'Знаходьте більше інсайтів про ваш біснес',
      en: 'Find more insights about your business',
      es: 'Encuentra unos insights valiosos sobre tu negocio'
    },
    text: {
      uk: __webpack_require__("ka6g"),
      en: __webpack_require__("s4nG"),
      es: __webpack_require__("kHG9")
    },
    date: '2024-01-23',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'countryGroup',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Фільтрація за Регіонами! 🧭',
      en: 'Region-Based Filtering 🧭',
      es: 'Filtrado basado en regiones 🧭'
    },
    previewText: {
      uk: 'Не витрачайте час на вибір країн вручну!',
      en: 'Say goodbye to the tedious task of handpicking countries!',
      es: 'Despídase de la tediosa tarea de seleccionar países a mano!'
    },
    text: {
      uk: __webpack_require__("5EiD"),
      en: __webpack_require__("+Wfp"),
      es: __webpack_require__("RiV1")
    },
    date: '2024-01-24',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'whatsAppIntegration',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Згадки у вашому WhatsApp 📲',
      en: 'Real-time mentions to your WhatsApp 📲',
      es: 'Menciones en tiempo real en su WhatsApp 📲'
    },
    previewText: {
      uk: 'Не пропускайте жодної важливої згадки',
      en: 'Never miss an important mention',
      es: 'No se pierda ninguna mención importante'
    },
    text: {
      uk: __webpack_require__("JakL"),
      en: __webpack_require__("6d7D"),
      es: __webpack_require__("P+vX")
    },
    date: '2024-01-31',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'compareDifferentPeriodsOnDashboards',
    type: types.NEW_FEATURE,
    title: {
      en: 'Date Range Comparison on Dashboards ⏳',
      uk: 'Порівняння періодів у Дашбордах ⏳',
      es: 'Comparación de intervalos de fechas en cuadros de mando ⏳'
    },
    previewText: {
      en: 'Open the Power of Comparative Insights',
      uk: 'Відкрийте для себе можливості порівняльної аналітики',
      es: 'Descubra el poder de la información comparativa'
    },
    text: {
      uk: __webpack_require__("Q1/k"),
      en: __webpack_require__("t74Y"),
      es: __webpack_require__("Sip2")
    },
    date: '2024-02-13',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'nsrMetric',
    type: types.NEW_FEATURE,
    title: {
      en: 'NSR is all around 🙌 ',
      es: 'NSR Widget 🙌',
      uk: 'NSR виходить на перший план 🙌'
    },
    previewText: {
      en: 'Visualize NSR on Your Dashboards ',
      es: 'Visualiza el NSR en tus tableros',
      uk: 'Візуалізуйте NSR на дашбордах'
    },
    text: {
      es: __webpack_require__("MmKP"),
      uk: __webpack_require__("bP9P"),
      en: __webpack_require__("lZmE")
    },
    date: '2024-02-16',
    by: users.tarasparfeniuk
  };
}, function () {
  return {
    id: 'ssoIntegration',
    type: types.NEW_FEATURE,
    title: {
      en: 'SSO Integration 🔐',
      es: 'Integración SSO 🔐',
      uk: 'SSO 🔐'
    },
    previewText: {
      en: 'Seamless Access and Enhanced Security',
      es: 'Acceso sin interrupciones y mayor seguridad',
      uk: 'Заходьте в акаунт без зайвих зусиль'
    },
    text: {
      es: __webpack_require__("AXNz"),
      uk: __webpack_require__("o4bE"),
      en: __webpack_require__("T5sC")
    },
    date: '2024-03-21',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'ownedPostMetrics',
    type: types.NEW_FEATURE,
    title: {
      en: 'Dive Deep into Post Performance Insights 👀',
      es: 'Profundice en la información sobre el rendimiento de los puestos ',
      uk: 'Заглиблюйтесь в інсайти про продуктивність публікацій 👀'
    },
    previewText: {
      en: 'Reach and impressions for owned data ',
      es: 'Alcance e impresiones de datos propios',
      uk: 'Охоплення та покази для власних даних '
    },
    text: {
      es: __webpack_require__("3L0b"),
      uk: __webpack_require__("qtgK"),
      en: __webpack_require__("QNOL")
    },
    date: '2024-04-09',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'alerts',
    type: types.NEW_FEATURE,
    title: {
      en: 'Be alert 📩',
      es: 'Esté alerta  📩',
      uk: 'Будьте проінформовані 📩'
    },
    previewText: {
      en: 'Staying informed just got a whole lot easier!',
      es: 'Mantenerse informado es ahora mucho más fácil!',
      uk: 'Залишатися в курсі подій стало набагато простіше!'
    },
    text: {
      en: __webpack_require__("HdW4"),
      es: __webpack_require__("6AP0"),
      uk: __webpack_require__("K7/7")
    },
    date: '2024-05-29',
    by: users.oleksandrmelnyk
  };
}, function () {
  return {
    id: 'insightsCopilot2_0',
    type: types.NEW_FEATURE,
    title: {
      en: 'Insights Copilot 2.0 🚀',
      es: 'Insights Copilot 2.0 🚀',
      uk: 'Insights Copilot 2.0 🚀'
    },
    previewText: {
      en: 'Unlock next-level insights with the evolution of Insights Copilot!',
      es: 'Desbloquee información de nivel superior con la evolución de Insights Copilot.',
      uk: 'Відкрийте для себе інсайти нового рівня з потужно оновленим Insights Copilot!'
    },
    text: {
      en: __webpack_require__("CO8o"),
      es: __webpack_require__("bmW/"),
      uk: __webpack_require__("oLi/")
    },
    date: '2024-06-05',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'conversationalInsights',
    type: types.NEW_FEATURE,
    title: {
      en: 'Conversation Insights 💬',
      es: 'Insights de Conversación 💬',
      uk: 'Інсайти обговорень 💬'
    },
    previewText: {
      en: 'A magic map for all conversations in your topic',
      es: 'Un mapa mágico de todas las conversaciones sobre tu tema',
      uk: 'Чарівна карта усіх розмов у вашій темі'
    },
    text: {
      en: __webpack_require__("6vv5"),
      es: __webpack_require__("Wft0"),
      uk: __webpack_require__("MrqM")
    },
    date: '2024-07-24',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'audienceInsightsUpdate',
    type: types.IMPROVEMENT,
    title: {
      en: 'New Metrics for Better Influencer Discovery! 🔭',
      es: 'Nuevas métricas para una mejor detección de influencers! 🔭',
      uk: 'Нові метрики для кращого пошуку інфлюенсерів! 🔭'
    },
    previewText: {
      en: 'Boost Your Influencer Strategy!',
      es: '¡Mejora tu estrategia de influencers!',
      uk: 'Покращте свою стратегію роботи з інфлюенсерами!'
    },
    text: {
      en: __webpack_require__("lyjP"),
      es: __webpack_require__("13kN"),
      uk: __webpack_require__("2Ijm")
    },
    date: '2024-08-26',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'youtubeFilter',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Новий фільтр для YouTube',
      en: 'New filter for YouTube',
      es: 'Nuevo filtro para YouTube'
    },
    previewText: {
      uk: 'Легко знайди свої Shorts!',
      en: 'Find Your Shorts Easily!',
      es: '¡Localiza tus Shorts de manera fácil!'
    },
    text: {
      uk: __webpack_require__("3EB2"),
      en: __webpack_require__("lnuq"),
      es: __webpack_require__("OuIF")
    },
    date: '2024-08-28',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'twitchLiveViaChannels',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Twitch Live 🕹️',
      en: 'Twitch Live 🕹️',
      es: 'Twitch Live 🕹️'
    },
    previewText: {
      uk: 'Збирайте стріми та нові метрики',
      en: 'Collect livestreams and new metrics',
      es: 'Recopilar livestreams y nuevas métricas'
    },
    text: {
      uk: __webpack_require__("DUDX"),
      en: __webpack_require__("UcHs"),
      es: __webpack_require__("mqq0")
    },
    date: '2024-09-02',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'topicCreationAndEditingFlow',
    type: types.NEW_FEATURE,
    title: {
      uk: 'Розширюйте горизонти пошуку 💥',
      en: 'Level Up Your Search! 💥',
      es: ''
    },
    previewText: {
      uk: 'Нове створення та редагування тем!',
      en: 'Streamlined Topic Creation and Editing Flow!',
      es: ''
    },
    text: {
      uk: __webpack_require__("ZKsl"),
      en: __webpack_require__("HgjH"),
      es: __webpack_require__("7Tzd")
    },
    date: '2024-09-05',
    by: users.mazur_oleksandr
  };
}, function () {
  return {
    id: 'imageSearchQueries',
    title: {
      en: 'Image Search Queries',
      uk: 'Запити для пошуку зображень',
      es: 'Consultas de búsqueda de imágenes'
    },
    previewText: {
      en: 'Unlock a New Level of Visual Insights Searches! 🌅',
      uk: 'Відкрийте новий рівень пошуку візуальних інсайтів! 🌅 ',
      es: '¡Desbloquea un nuevo nivel de información visual! 🌅'
    },
    text: {
      en: __webpack_require__("na62"),
      uk: __webpack_require__("Al6E"),
      es: __webpack_require__("awjw")
    },
    date: '2024-09-26',
    by: users.markoliinyk
  };
}, function () {
  return {
    id: 'bluesky',
    type: types.NEW_FEATURE,
    title: {
      en: 'Bluesky data collection',
      uk: 'Збір даних з Bluesky',
      es: 'Recogida de datos Bluesky'
    },
    previewText: {
      en: 'Discover What’s Being Said in New Spaces 🛰️',
      uk: 'Відкривайте нові горизонти соціальних мереж 🛰️',
      es: 'Descubra lo que se dice en los nuevos espacios 🛰️'
    },
    text: {
      en: __webpack_require__("Uf/w"),
      uk: __webpack_require__("YToJ"),
      es: __webpack_require__("lU8c")
    },
    date: '2024-10-02',
    by: users.kibtsa
  };
}, function () {
  return {
    id: 'accountStatistics',
    type: types.NEW_FEATURE,
    title: {
      en: 'Statistics 📊',
      uk: 'Статистика 📊',
      es: 'Estadísticas 📊'
    },
    previewText: {
      en: 'Let Us Handle the Stats, You Focus on the Insights!',
      uk: 'Фокусуйтесь на інсайтах, а статистику ми візьмемо на себе!',
      es: 'Deje que nosotros nos ocupemos de las estadísticas y concéntrese en la información!'
    },
    text: {
      en: __webpack_require__("Fwde"),
      uk: __webpack_require__("akKb"),
      es: __webpack_require__("l/BD")
    },
    date: '2024-10-10',
    by: users.yaroslavtykhonchuk
  };
}, function () {
  return {
    id: 'amazon',
    type: types.NEW_FEATURE,
    title: {
      en: 'Amazon 🛒',
      uk: 'Amazon 🛒',
      es: 'Amazon 🛒'
    },
    previewText: {
      en: 'Track Amazon Reviews Effortlessly! 🛒',
      uk: 'Відстежуйте відгуки з Amazon без зусиль! 🛒',
      es: 'Sigue las reseñas de Amazon sin esfuerzo! 🛒'
    },
    text: {
      en: __webpack_require__("8Hw+"),
      uk: __webpack_require__("FnGy"),
      es: __webpack_require__("EdOT")
    },
    date: '2024-10-10',
    by: users.kibtsa
  };
}]);
;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/NewFeaturesAnnouncement.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const NewFeaturesAnnouncement_NewFeaturesAnnouncement = ({"base":"Y1NPyM8Zx682pxoMjDg3","title":"IZunfmUmC7tGY0qaKZnS","icon":"ZK0zDuu72XvkUF7vJ1yb","content":"rSdleNbkpASAa6wWpCIK","iconContainer":"sZspcvRVfzFqWVsGkPw6","bubble":"bAuV2cD1m84FtCZpv9J1","bubbleIn":"Q8kjoGOPMK7YUCoyoIgG"});
;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/NewFeaturesAnnouncement.js






function NewFeaturesAnnouncement_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, NewFeaturesAnnouncement_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function NewFeaturesAnnouncement_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (NewFeaturesAnnouncement_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



















var MEGAPHONE_SVG_PATH = 'M5.4,7.83h.06A3.23,3.23,0,0,0,2.15,11a3.31,3.31,0,0,0,3.31,3.25c-.14,0-.06,0-.06,' + '0a.7.7,0,0,0,.7-.71v-5A.7.7,0,0,0,5.4,7.83ZM20.4,3C13.17,8,10.21,7.33,8.28,7.36h-.4a.79.79,0,0,0-.' + '79.79V14a.79.79,0,0,0,.79.79h.4a16.07,16.07,0,0,1,3.23.21v5.67a.51.51,0,0,0,.51.51h2.42a.51.51,0,0' + ',0,.52-.51V16a30.59,30.59,0,0,1,5.44,3.13s1.45.61,1.45-1.45V4.4C21.85,2.34,20.4,3,20.4,3Z';
var NewFeaturesAnnouncement = /*#__PURE__*/function (_PureComponent) {
  function NewFeaturesAnnouncement(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, NewFeaturesAnnouncement);
    _this = NewFeaturesAnnouncement_callSuper(this, NewFeaturesAnnouncement, [props]);
    (0,defineProperty/* default */.A)(_this, "handleModalClose", function () {
      _this.setState({
        openedFeatureId: null
      });
      _this.popover.current.show();
    });
    (0,defineProperty/* default */.A)(_this, "handleOpenFeature", function (id) {
      _this.popover.current.hide();
      _this.setState({
        openedFeatureId: id
      });
      _this.props.sendAnalyticalEvent({
        eventType: 'Announcements: feature opened',
        properties: {
          id: id
        }
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleMarkFeatureAsRead", function (id) {
      _this.props.markAnnouncementAsRead({
        ids: [id]
      });
      _this.props.sendAnalyticalEvent({
        eventType: 'Announcements: feature marked as read',
        properties: {
          id: id
        }
      });
    });
    (0,defineProperty/* default */.A)(_this, "handlePopoverShow", function () {
      _this.setAnnounceLastOpenDate();
      _this.props.sendAnalyticalEvent({
        eventType: 'Announcements: opened'
      });
    });
    (0,defineProperty/* default */.A)(_this, "handlePopoverHide", function () {
      _this.props.sendAnalyticalEvent({
        eventType: 'Announcements: all features marked as read'
      });
    });
    (0,defineProperty/* default */.A)(_this, "setAnnounceLastOpenDate", function () {
      _this.props.updateUiSettings({
        announcementOpenedAt: moment_default()().utc().format()
      });
    });
    (0,defineProperty/* default */.A)(_this, "getFeatures", function () {
      var _this$props = _this.props,
        accountOrigin = _this$props.accountOrigin,
        accountId = _this$props.accountId,
        announcementsRead = _this$props.announcementsRead,
        accountInfo = _this$props.accountInfo;
      var locale = (0,i18n/* getLocale */.JK)();

      // Be extra careful when changing code of this function!
      var generateId = function generateId(feature) {
        return "".concat(feature.title.en, "__").concat(feature.date).replace(/[^a-zA-Z0-9 ]/g, '').replace(/[ ]/g, '_');
      };

      // Don't force new users to click on all the features
      // Treat only recent ones as unread
      var unreadFrom = moment_default()().subtract(31, 'days');
      return features.map(function (getFeature) {
        return getFeature({
          accountOrigin: accountOrigin,
          accountId: accountId,
          accountInfo: accountInfo
        });
      }).filter(function (feature) {
        return Boolean(feature);
      }).map(function (feature) {
        return {
          id: generateId(feature),
          unread: !announcementsRead.includes(generateId(feature)) && moment_default()(feature.date).isAfter(unreadFrom),
          title: feature.title[locale] || feature.title.en,
          previewText: feature.previewText[locale] || feature.previewText.en,
          text: (feature.text[locale] || feature.text.en)["default"],
          date: feature.date,
          author: feature.by.name[locale] || feature.by.name.en,
          authorEmail: feature.by.gravatar
        };
      }).reverse();
    });
    _this.state = {
      openedFeatureId: null
    };
    _this.popover = /*#__PURE__*/(0,react.createRef)();
    return _this;
  }
  (0,inherits/* default */.A)(NewFeaturesAnnouncement, _PureComponent);
  return (0,createClass/* default */.A)(NewFeaturesAnnouncement, [{
    key: "showBubble",
    get: function get() {
      var dayWeekAgo = moment_default()((0,dateUtils/* getDayWeekAgo */.AZ)());
      var allFeatures = this.getFeatures();
      var latestFeature = allFeatures[0];
      return !moment_default()(latestFeature.date).isBefore(dayWeekAgo) && moment_default()(latestFeature.date).isSameOrAfter(moment_default()(this.props.announcementLastOpenedAtDate));
    }
  }, {
    key: "render",
    value: function render() {
      var _this2 = this;
      var openedFeatureId = this.state.openedFeatureId;
      var announcements = this.getFeatures();
      var openedAnnouncement = announcements.find(function (announcement) {
        return announcement.id === openedFeatureId;
      });
      var popoverContent = /*#__PURE__*/(0,jsx_runtime.jsx)((react_isolated_scroll_lib_default()), {
        className: classnames_default()(NewFeaturesAnnouncement_NewFeaturesAnnouncement.content),
        children: announcements.map(function (announcement) {
          return /*#__PURE__*/(0,jsx_runtime.jsx)(NewFeaturesAnnouncement_Feature_Feature, {
            id: announcement.id,
            title: announcement.title,
            previewText: announcement.previewText,
            text: announcement.text,
            type: announcement.type,
            date: announcement.date,
            unread: announcement.unread,
            onOpen: _this2.handleOpenFeature,
            onMarkAsRead: _this2.handleMarkFeatureAsRead
          }, announcement.id);
        })
      });
      if (this.props.isYoutubeReviewAccount || !this.props.announcementsEnabled) {
        return null;
      }
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
        className: classnames_default()(NewFeaturesAnnouncement_NewFeaturesAnnouncement.base),
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
          style: {
            minWidth: '370px'
          },
          fitted: true,
          header: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(NewFeaturesAnnouncement_NewFeaturesAnnouncement.title),
            children: l("What's new?")
          }),
          headerToolbar: /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
            text: l('Here you can find all important updates in YouScan'),
            children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
              type: "help-circle",
              color: "gray"
            })
          }),
          content: popoverContent,
          position: "bottom right",
          ref: this.popover,
          onShow: this.handlePopoverShow,
          onHide: this.handlePopoverHide,
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(NewFeaturesAnnouncement_NewFeaturesAnnouncement.iconContainer),
            children: [this.showBubble && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
              className: classnames_default()(NewFeaturesAnnouncement_NewFeaturesAnnouncement.bubble)
            }), /*#__PURE__*/(0,jsx_runtime.jsx)("svg", {
              viewBox: "0 0 24 24",
              className: classnames_default()(NewFeaturesAnnouncement_NewFeaturesAnnouncement.icon),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
                d: MEGAPHONE_SVG_PATH,
                fill: "white"
              })
            })]
          })
        }), openedFeatureId && /*#__PURE__*/(0,jsx_runtime.jsx)(NewFeaturesAnnouncement_OpenedFeature_OpenedFeature, {
          id: openedAnnouncement.id,
          title: openedAnnouncement.title,
          previewText: openedAnnouncement.previewText,
          text: openedAnnouncement.text,
          date: openedAnnouncement.date,
          author: openedAnnouncement.author,
          authorEmail: openedAnnouncement.authorEmail,
          onClose: this.handleModalClose
        })]
      });
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const containers_NewFeaturesAnnouncement_NewFeaturesAnnouncement = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    accountId: (0,account_selectors/* getAccountId */.PU)(state),
    accountOrigin: (0,account_selectors/* getAccountOrigin */.wr)(state),
    announcementsRead: (0,currentUser_selectors/* getAnnouncementsRead */.DB)(state),
    announcementLastOpenedAtDate: (0,currentUser_selectors/* announcementLastOpenedAt */.IY)(state),
    accountInfo: (0,account_selectors/* getAccountInfo */.Gf)(state),
    isYoutubeReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state),
    announcementsEnabled: (0,account_selectors/* announcementsEnabled */.KQ)(state)
  };
}, {
  markAnnouncementAsRead: currentUser_model/* currentUserStateModel */.b.action.markAnnouncementAsRead,
  updateUiSettings: currentUser_model/* currentUserStateModel */.b.action.updateUiSettings,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(NewFeaturesAnnouncement));
;// CONCATENATED MODULE: ./src/containers/NewFeaturesAnnouncement/index.js

;// CONCATENATED MODULE: ./src/containers/AddonsPromote/AddonsPromote.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AddonsPromote = ({"base":"SZSe_sshtB37DXKHM1HZ","modal":"f15klcc94YXP_Eqw4PEg","h1":"HVKFYiQ4HZNEGYyqfYWz","container":"nHpFxnsg5GRpFK7dg_Lh","item":"BQW5_LB6WxLLLw6jC26B","imageContainer":"LFehR_QUVJsQBMVQohoR","image":"p9gSx6T9QF0QnC2Tfmu4","textContainer":"SFCS0luU010IKxwj9C7x","title":"Y3DfN6NE5uHiVjeOKqyr","text":"fINjykd2jC7AFrZSsp2Z","button":"D0C4HiV31nF2kks9JgeC"});
;// CONCATENATED MODULE: ./src/containers/AddonsPromote/AddonsPromote.tsx
var AddonsPromote_assign = (undefined && undefined.__assign) || function () {
    AddonsPromote_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AddonsPromote_assign.apply(this, arguments);
};
var AddonsPromote_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
















var AddonsPromote_AddonsPromote = function (_a) {
    var _b;
    var accountInfo = _a.accountInfo, triggerButton = _a.triggerButton, sendAnalyticalEvent = _a.sendAnalyticalEvent, router = _a.router, isReviewAccount = _a.isReviewAccount;
    if (isReviewAccount)
        return null;
    var addons = (0,react.useMemo)(function () { return (0,AddonsPromote_addons/* getAddons */.E)(accountInfo); }, [accountInfo]);
    var _c = AddonsPromote_read((0,react.useState)(false), 2), open = _c[0], setOpen = _c[1];
    var _d = AddonsPromote_read((0,react.useState)(0), 2), startWatchingTime = _d[0], setStartWatchingTime = _d[1];
    var _e = AddonsPromote_read((0,react.useState)(0), 2), addonHoverCount = _e[0], setAddonHoverCount = _e[1];
    var _f = AddonsPromote_read((0,react.useState)(), 2), openBy = _f[0], setOpenBy = _f[1];
    var enabledAddons = ((_b = accountInfo === null || accountInfo === void 0 ? void 0 : accountInfo.subscriptionPlan) === null || _b === void 0 ? void 0 : _b.addons) ? Object.keys(accountInfo.subscriptionPlan.addons) : [];
    (0,react.useEffect)(function () {
        var _a, _b;
        if ((_b = (_a = router === null || router === void 0 ? void 0 : router.location) === null || _a === void 0 ? void 0 : _a.query) === null || _b === void 0 ? void 0 : _b.showAddonsPromoteModal) {
            var by = 'link';
            setOpenBy(by);
            setOpen(true);
            sendAnalyticalEvent({ eventType: 'Promote Add-ons: open modal', properties: { openBy: by } });
        }
    }, []);
    (0,react.useEffect)(function () {
        if (open) {
            setStartWatchingTime(performance.now());
            setAddonHoverCount(0);
            var url = new URL(window.location.toString());
            url.searchParams.delete('showAddonsPromoteModal');
            window.history.pushState({}, '', url.toString());
        }
        if (!open && startWatchingTime) {
            var endWatchingTime = performance.now();
            var watchingTime = (endWatchingTime - startWatchingTime) / 60000;
            sendAnalyticalEvent({ eventType: 'Promote Add-ons: hide modal', properties: { watchingTime: watchingTime, addonHoverCount: addonHoverCount, openBy: openBy } });
        }
    }, [open]);
    var handleOpen = function () {
        var by = 'button';
        setOpen(true);
        setOpenBy(by);
        sendAnalyticalEvent({ eventType: 'Promote Add-ons: open modal', properties: { openBy: by } });
    };
    var handleClose = function () {
        setOpen(false);
        setOpenBy(undefined);
    };
    var handleHover = function () {
        setAddonHoverCount(function (s) { return s + 1; });
    };
    var handleChatClick = function (addonName) { return function () {
        sendAnalyticalEvent({ eventType: 'Promote Add-ons: click chat button', properties: { addonName: addonName, openBy: openBy } });
        (0,utils_intercom/* showNewMessage */.z$)((0,AddonsPromote_addons/* getChatMessage */.w)(addonName));
    }; };
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", AddonsPromote_assign({ onClick: handleOpen }, { children: triggerButton })), (0,jsx_runtime.jsx)(Modal_Modal/* default */.A, AddonsPromote_assign({ withCloseIcon: true, shouldCloseOnEsc: true, shouldCloseOnOverlayClick: true, className: AddonsPromote.modal, isOpen: open, onRequestClose: handleClose }, { children: (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H1/* default */.A, AddonsPromote_assign({ className: AddonsPromote.h1 }, { children: l('Unlock the full power of YouScan with advanced capabilities') })), (0,jsx_runtime.jsx)("div", AddonsPromote_assign({ className: AddonsPromote.container }, { children: addons.map(function (_a) {
                                var addon = _a.addon, imageUrl = _a.imageUrl, text = _a.text, title = _a.title, learnMoreLink = _a.learnMoreLink;
                                return ((0,jsx_runtime.jsxs)("div", AddonsPromote_assign({ className: AddonsPromote.item, onMouseLeave: handleHover }, { children: [(0,jsx_runtime.jsx)("div", AddonsPromote_assign({ className: AddonsPromote.imageContainer }, { children: (0,jsx_runtime.jsx)("img", { className: AddonsPromote.image, src: imageUrl, alt: "" }) })), (0,jsx_runtime.jsxs)("div", AddonsPromote_assign({ className: AddonsPromote.textContainer }, { children: [(0,jsx_runtime.jsx)("div", AddonsPromote_assign({ className: AddonsPromote.title }, { children: title })), (0,jsx_runtime.jsxs)("div", AddonsPromote_assign({ className: AddonsPromote.text }, { children: [text, learnMoreLink && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", AddonsPromote_assign({ className: classnames_default()(AddonsPromote.link), target: "_blank", rel: "noopener noreferrer", href: (0,navigation/* getLinkToHelpYouscan */.vn)(learnMoreLink) }, { children: l('Learn more') }))] }))] })), enabledAddons.includes(addon.type) ? ((0,jsx_runtime.jsx)(Button/* default */.A, { className: AddonsPromote.button, outline: true, label: l('Enabled'), disabled: true, secondary: true })) : ((0,jsx_runtime.jsx)(Button/* default */.A, { className: AddonsPromote.button, primary: true, outline: true, label: l('Chat with us'), onClick: handleChatClick(title) }))] }))] }), title));
                            }) }))] }) }))] }));
};
/* harmony default export */ const containers_AddonsPromote_AddonsPromote = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state),
    accountInfo: (0,account_selectors/* getAccountInfo */.Gf)(state),
}); }, { sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }))(AddonsPromote_AddonsPromote));

;// CONCATENATED MODULE: ./src/containers/AddonsPromote/index.ts


;// CONCATENATED MODULE: ./src/pages/UserLayout/UserLayout.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const UserLayout = ({"base":"tvZiDodvteKPcE0hhan6","logo":"e6Px9taofvkH04zjrGhR","content":"eMYwyrpY3Aq82V8nSZR3","menuItem":"TZFBNomlWG69JGDmL5Su","selectedMenuItem":"VH23Fkxws8fNsOz0G_QA","menuBar":"Gk6JAi0iA4YB1n4iOSXa","addonLink":"MxHiD8xPA4Wh1UsX89_t","highlighter":"gUEQq3zq2vmr11lDCCp_"});
;// CONCATENATED MODULE: ./src/pages/UserLayout/UserLayout.tsx
var UserLayout_assign = (undefined && undefined.__assign) || function () {
    UserLayout_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return UserLayout_assign.apply(this, arguments);
};
















var Highlighter = (0,jsx_runtime.jsx)("div", { className: classnames_default()(UserLayout.highlighter) });
var DashboardsLabel = function () { return ((0,jsx_runtime.jsx)("span", { children: l('Dashboards') })); };
var UserLayout_UserLayout = function (_a) {
    var _b, _c, _d;
    var location = _a.location, socialSearchEnabled = _a.socialSearchEnabled, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var activePageName = (0,react.useMemo)(function () {
        if (location.pathname.includes('/dashboards'))
            return 'dashboards';
        if (location.pathname === '/themes')
            return 'themes';
        if (location.pathname.includes('/search'))
            return 'search';
        return null;
    }, [location]);
    var isDashboardsList = activePageName === 'dashboards';
    var isTopicsList = activePageName === 'themes';
    var isSearch = activePageName === 'search';
    var onDashboardsTabClick = function () {
        sendAnalyticalEvent({
            eventType: 'Custom dashboards tab: clicked',
        });
    };
    return ((0,jsx_runtime.jsxs)("div", UserLayout_assign({ className: classnames_default()(UserLayout.base) }, { children: [(0,jsx_runtime.jsxs)("div", UserLayout_assign({ className: classnames_default()(UserLayout.menuBar) }, { children: [(0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, UserLayout_assign({ className: UserLayout.menu }, { children: [(0,jsx_runtime.jsx)("img", { src: "/static/images/logo/mainVersion/logo_outline_white.svg", className: classnames_default()(UserLayout.logo, 'simplifiedViewHidden'), alt: "" }), (0,jsx_runtime.jsxs)(dist/* Link */.N_, UserLayout_assign({ to: "/themes", className: classnames_default()(UserLayout.menuItem, (_b = {}, _b[UserLayout.selectedMenuItem] = isTopicsList, _b)) }, { children: [l('Topics'), isTopicsList && Highlighter] })), (0,jsx_runtime.jsxs)(dist/* Link */.N_, UserLayout_assign({ to: "/dashboards", className: classnames_default()(UserLayout.menuItem, (_c = {}, _c[UserLayout.selectedMenuItem] = isDashboardsList, _c)), onClick: onDashboardsTabClick }, { children: [(0,jsx_runtime.jsx)(DashboardsLabel, {}), isDashboardsList && Highlighter] })), socialSearchEnabled
                                ? ((0,jsx_runtime.jsxs)(dist/* Link */.N_, UserLayout_assign({ to: "/search", className: classnames_default()(UserLayout.menuItem, (_d = {}, _d[UserLayout.selectedMenuItem] = isSearch, _d)) }, { children: [l('Search'), isSearch && Highlighter] })))
                                : null, (0,jsx_runtime.jsx)(containers_AddonsPromote_AddonsPromote, { triggerButton: (0,jsx_runtime.jsx)("div", UserLayout_assign({ className: classnames_default()(UserLayout.menuItem, UserLayout.addonLink) }, { children: l('Addons') })) })] })), (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)(containers_NewFeaturesAnnouncement_NewFeaturesAnnouncement, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(containers_HelpMenu_HelpMenu, {}), (0,jsx_runtime.jsx)(UserAccountMenu_UserAccountMenu, {})] })] })), (0,jsx_runtime.jsx)("div", UserLayout_assign({ className: classnames_default()(UserLayout.content) }, { children: (0,jsx_runtime.jsx)(react.Suspense, UserLayout_assign({ fallback: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) })) }))] })));
};
/* harmony default export */ const pages_UserLayout_UserLayout = ((0,withRouter/* withRouter */.y)((0,react_redux/* connect */.Ng)(function (state) { return ({
    socialSearchEnabled: (0,account_selectors/* canShowSocialSearch */.hj)(state),
}); }, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(UserLayout_UserLayout)));

;// CONCATENATED MODULE: ./src/pages/UserLayout/index.ts


;// CONCATENATED MODULE: ./src/components/ui/CardTabs/Tabs.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CardTabs_Tabs = ({"tabs":"_jMXW7SGIJeftOaEcg9d","tab":"Szid49SpSXwDoL0D1uoC","selected":"Jpp0BcnqNKTPxzM6jfAL","disabled":"vCtreXJGv_FRJUDEt8vw","tabIcon":"uQYeu3i6OTdILSZPB7Ka"});
;// CONCATENATED MODULE: ./src/components/ui/CardTabs/Tab.tsx
var Tab_assign = (undefined && undefined.__assign) || function () {
    Tab_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Tab_assign.apply(this, arguments);
};





var Tab_Tab = function (_a) {
    var _b;
    var selected = _a.selected, disabled = _a.disabled, id = _a.id, icon = _a.icon, label = _a.label, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, Tab_assign({ "data-hook": id, id: id, fullWidth: true, className: classnames_default()(CardTabs_Tabs.tab, (_b = {}, _b[CardTabs_Tabs.selected] = selected, _b[CardTabs_Tabs.disabled] = disabled, _b)), onClick: onClick }, { children: [icon ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("img", { className: CardTabs_Tabs.tabIcon, alt: icon.alt, src: icon.src }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { double: true })] })) : null, label] })));
};
/* harmony default export */ const CardTabs_Tab = (Tab_Tab);

;// CONCATENATED MODULE: ./src/components/ui/CardTabs/Tabs.tsx
var CardTabs_Tabs_assign = (undefined && undefined.__assign) || function () {
    CardTabs_Tabs_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CardTabs_Tabs_assign.apply(this, arguments);
};







var DEFAULT_DISABLED_MESSAGE = {
    title: function () { return l('This feature is not supported in your subscription'); },
    text: function () { return l('Please contact our customer support team to choose the optimal subscription plan to enable it.'); },
};
var CardTabs_Tabs_Tabs = function (_a) {
    var _b;
    var selectedTabIndex = _a.selectedTabIndex, fullWidth = _a.fullWidth, className = _a.className, options = _a.options, onSelect = _a.onSelect;
    return ((0,jsx_runtime.jsx)("div", CardTabs_Tabs_assign({ className: classnames_default()(CardTabs_Tabs.tabs, (_b = {}, _b[CardTabs_Tabs.fullWidth] = fullWidth, _b), className) }, { children: options.map(function (option, index) {
            var _a, _b;
            return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, CardTabs_Tabs_assign({ wide: true, fullWidth: true, text: ((_a = option.disabled) === null || _a === void 0 ? void 0 : _a.rule)
                    ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: option.disabled.title || DEFAULT_DISABLED_MESSAGE.title() }), (0,jsx_runtime.jsx)("span", { children: option.disabled.text || DEFAULT_DISABLED_MESSAGE.text() })] }))
                    : null }, { children: (0,jsx_runtime.jsx)(CardTabs_Tab, { selected: selectedTabIndex === index, disabled: (_b = option.disabled) === null || _b === void 0 ? void 0 : _b.rule, id: option.id, label: option.label, icon: option.icon, onClick: function () { return onSelect(index); } }) }), option.id));
        }) })));
};
/* harmony default export */ const ui_CardTabs_Tabs = ((0,react.memo)(CardTabs_Tabs_Tabs));

;// CONCATENATED MODULE: ./src/components/ui/CardTabs/index.ts


;// CONCATENATED MODULE: ./src/pages/AudiencePage/AudiencePage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AudiencePage = ({"base":"B9tt0LOtNIpoCZQwKT13","content":"Oi0u8nMiTcaoDL970zrU"});
;// CONCATENATED MODULE: ./src/pages/AudiencePage/AudiencePage.tsx
var AudiencePage_assign = (undefined && undefined.__assign) || function () {
    AudiencePage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AudiencePage_assign.apply(this, arguments);
};

// @ts-nocheck






















var AudiencePage_AudiencePage = function (_a) {
    var showAudienceInsights = _a.showAudienceInsights, topicId = _a.topicId, location = _a.location, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var getTabs = function () {
        var darkModeIconPrefix = (0,colorHandler/* isDarkTheme */.g4)() ? '_dark' : '';
        return [
            {
                id: 'authors-list',
                path: '/list',
                label: l('Authors'),
                icon: {
                    alt: 'authors list',
                    src: "/static/images/audience/list".concat(darkModeIconPrefix, ".svg"),
                },
            },
            {
                id: 'authors-demographics',
                path: '/demographics',
                label: l('Demographics'),
                icon: {
                    alt: 'demographics',
                    src: "/static/images/audience/demographics".concat(darkModeIconPrefix, ".svg"),
                },
            },
            {
                disabled: { rule: !showAudienceInsights },
                id: 'authors-interests',
                path: '/interests',
                label: l('Interests'),
                icon: {
                    alt: 'interests',
                    src: "/static/images/audience/interests".concat(darkModeIconPrefix, ".svg"),
                },
            },
            {
                disabled: { rule: !showAudienceInsights },
                id: 'authors-occupations',
                path: '/occupations',
                label: l('Occupations'),
                icon: {
                    alt: 'occupations',
                    src: "/static/images/audience/occupations".concat(darkModeIconPrefix, ".svg"),
                },
            }
        ].filter(Boolean);
    };
    var tabs = (0,react.useMemo)(function () { return getTabs(); }, []);
    var handleSelectTab = function (index) {
        var _a = tabs[index], id = _a.id, path = _a.path;
        sendAnalyticalEvent({ eventType: "Authors: ".concat(id, " clicked") });
        updateLocation({
            pathname: "/themes/".concat(topicId, "/audience").concat(path),
            query: AudiencePage_assign({}, location.query),
        });
    };
    var getSelectedTabIndex = function () { return tabs.findIndex(function (tab) { return location.pathname === "/themes/".concat(topicId, "/audience").concat(tab.path); }); };
    return ((0,jsx_runtime.jsx)(YoutubePolicyBottomMessage_YoutubePolicyBottomMessage, { children: (0,jsx_runtime.jsxs)("div", AudiencePage_assign({ className: classnames_default()(AudiencePage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Audience Insights') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, AudiencePage_assign({ title: (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)("div", { children: l('Audience Insights') }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ExportButton_ExportButton, { options: ['authors'] })] }), rightContent: (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)(TopicSearchFilter_TopicSearchFilter, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, { showTime: true, showPresetRanges: true })] }) }, { children: (0,jsx_runtime.jsx)(ThemeAnalyticsFilter_ThemeAnalyticsFilter, {}) })), (0,jsx_runtime.jsx)(ui_CardTabs_Tabs, { fullWidth: true, selectedTabIndex: getSelectedTabIndex(), options: tabs, onSelect: handleSelectTab }), (0,jsx_runtime.jsx)("div", AudiencePage_assign({ className: classnames_default()(AudiencePage.content) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })) }));
};
/* harmony default export */ const pages_AudiencePage_AudiencePage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    showAudienceInsights: (0,account_selectors/* canShowAudienceInsights */.Po)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(AudiencePage_AudiencePage));

;// CONCATENATED MODULE: ./src/pages/AudiencePage/index.ts


;// CONCATENATED MODULE: ./src/containers/TopicNavigation/NavigationItem/NavigationItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NavigationItem = ({"base":"shQzLbOidY_uCv2YBfh4","children":"drEosgDrxrbA_m5viyVC","active":"TIuY8_OIERbxhymrTeX9","icon":"pQBe7sl5waqocyWJLmRA","iconSelected":"OTkErvPk3TZSOP3S_KeF"});
;// CONCATENATED MODULE: ./src/containers/TopicNavigation/NavigationItem/NavigationItem.tsx
var NavigationItem_assign = (undefined && undefined.__assign) || function () {
    NavigationItem_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return NavigationItem_assign.apply(this, arguments);
};





var ICON_SIZE = 18;
var NavigationItem_NavigationItem = function (_a) {
    var _b, _c;
    var id = _a.id, isActive = _a.isActive, label = _a.label, iconType = _a.iconType, link = _a.link;
    return ((0,jsx_runtime.jsx)("div", NavigationItem_assign({ "data-hook": "nav-item-".concat(id) }, { children: (0,jsx_runtime.jsxs)(dist/* Link */.N_, NavigationItem_assign({ to: link, className: classnames_default()(NavigationItem.base, (_b = {}, _b[NavigationItem.active] = isActive, _b)) }, { children: [iconType
                    ? ((0,jsx_runtime.jsx)("div", NavigationItem_assign({ className: classnames_default()(NavigationItem.icon, (_c = {}, _c[NavigationItem.iconSelected] = isActive, _c)) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: ICON_SIZE }) })))
                    : null, (0,jsx_runtime.jsx)("div", NavigationItem_assign({ className: classnames_default()(NavigationItem.label) }, { children: label }))] })) })));
};
/* harmony default export */ const TopicNavigation_NavigationItem_NavigationItem = (NavigationItem_NavigationItem);

;// CONCATENATED MODULE: ./src/containers/TopicNavigation/NavigationItem/index.ts


;// CONCATENATED MODULE: ./src/containers/TopicNavigation/NavigationGroup/NavigationGroup.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NavigationGroup = ({"title":"BCmSpoLsSwB8XkSSpq70","additionalGroup":"iIH2v1NnIk5af4W0vIC3","expanderButton":"KIybyB6537IeURIYrY2a"});
;// CONCATENATED MODULE: ./src/containers/TopicNavigation/NavigationGroup/NavigationGroup.tsx
var NavigationGroup_assign = (undefined && undefined.__assign) || function () {
    NavigationGroup_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return NavigationGroup_assign.apply(this, arguments);
};
var NavigationGroup_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var ExpanderButton = function (_a) {
    var isExpanded = _a.isExpanded, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)("div", NavigationGroup_assign({ className: NavigationGroup.expanderButton, onClick: onClick }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: isExpanded ? 'menu-up' : 'menu-down', size: 18 }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), isExpanded ? l('Fewer', 'navigation') : l('More', 'navigation')] })));
};
var NavigationGroup_NavigationGroup = function (_a) {
    var _b;
    var isAdditionalGroup = _a.isAdditionalGroup, title = _a.title, items = _a.items, subItems = _a.subItems, basePath = _a.basePath, baseQuery = _a.baseQuery, query = _a.query, isActive = _a.isActive, createPath = _a.createPath;
    var _c = NavigationGroup_read((0,react.useState)(false), 2), isExpanded = _c[0], setIsExpanded = _c[1];
    var renderNavigationItem = function (item) {
        return ((0,jsx_runtime.jsx)(TopicNavigation_NavigationItem_NavigationItem, { id: item.id, isActive: item.getIsActive
                ? isActive("".concat(basePath).concat(item.activePath || item.path)) && item.getIsActive(query)
                : isActive("".concat(basePath).concat(item.activePath || item.path)), label: item.getLabel(), iconType: item.iconType, link: createPath({
                pathname: item.isAbsolutePath ? item.path : "".concat(basePath).concat(item.path),
                query: item.query ? NavigationGroup_assign(NavigationGroup_assign({}, baseQuery), item.query) : baseQuery,
            }) }, item.id));
    };
    return ((0,jsx_runtime.jsxs)("div", NavigationGroup_assign({ className: classnames_default()(NavigationGroup.base, (_b = {}, _b[NavigationGroup.additionalGroup] = isAdditionalGroup, _b)) }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, NavigationGroup_assign({ className: NavigationGroup.title }, { children: title })), items.map(renderNavigationItem), subItems ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Expander/* default */.A, NavigationGroup_assign({ expanded: isExpanded }, { children: subItems.map(renderNavigationItem) })), (0,jsx_runtime.jsx)(ExpanderButton, { isExpanded: isExpanded, onClick: function () { return setIsExpanded(!isExpanded); } })] })) : null] })));
};
/* harmony default export */ const TopicNavigation_NavigationGroup_NavigationGroup = (NavigationGroup_NavigationGroup);

;// CONCATENATED MODULE: ./src/containers/TopicNavigation/NavigationGroup/index.ts


;// CONCATENATED MODULE: ./src/containers/TopicNavigation/config.tsx


/* harmony default export */ const TopicNavigation_config = (function (_a) {
    var showSettings = _a.showSettings, showVisualInsights = _a.showVisualInsights, isMobileView = _a.isMobileView;
    return [
        isMobileView && {
            getTitle: function () { return l('Navigations'); },
            items: [
                {
                    id: 'topics',
                    getLabel: function () { return l('Topics'); },
                    path: '/themes',
                    iconType: '',
                    isAbsolutePath: true,
                },
                {
                    id: 'dashboards',
                    getLabel: function () { return l('Dashboards'); },
                    path: '/dashboards',
                    iconType: '',
                    isAbsolutePath: true,
                },
                {
                    id: 'search',
                    getLabel: function () { return l('Search'); },
                    path: '/search',
                    iconType: '',
                    isAbsolutePath: true,
                }
            ],
        },
        {
            getTitle: function () { return ''; },
            items: [
                {
                    id: 'explore',
                    getLabel: function () { return l('Explore'); },
                    path: '/explore',
                    iconType: 'explore',
                }
            ],
        },
        {
            getTitle: function () { return l('Mentions'); },
            items: [
                {
                    id: 'mention-stream-all',
                    getLabel: function () { return l('All', 'navigation'); },
                    path: '/mentions',
                    iconType: 'infinity',
                    getIsActive: function (_a) {
                        var starred = _a.starred, deleted = _a.deleted, assigned = _a.assigned, spam = _a.spam, processed = _a.processed;
                        return !spam && !starred && !deleted && !assigned && processed === undefined;
                    },
                },
                {
                    id: 'mention-stream-unprocessed',
                    getLabel: function () { return l('Unprocessed', 'navigation'); },
                    path: '/mentions',
                    query: { processed: false },
                    iconType: 'checkbox-blank-badge-outline',
                    getIsActive: function (_a) {
                        var processed = _a.processed;
                        return processed === 'false';
                    },
                },
                {
                    id: 'mention-stream-processed',
                    getLabel: function () { return l('Processed', 'navigation'); },
                    path: '/mentions',
                    query: { processed: true },
                    iconType: 'checkbox-checked-outline',
                    getIsActive: function (_a) {
                        var processed = _a.processed;
                        return processed === 'true';
                    },
                },
                {
                    id: 'mention-stream-starred',
                    getLabel: function () { return l('Starred', 'navigation'); },
                    path: '/mentions',
                    query: { starred: true },
                    iconType: 'star-full',
                    getIsActive: function (_a) {
                        var starred = _a.starred;
                        return starred;
                    },
                }
            ],
            hiddenItems: [
                {
                    id: 'mention-stream-assigned',
                    getLabel: function () { return l('For me', 'navigation'); },
                    path: '/mentions',
                    query: { assigned: true },
                    iconType: 'user',
                    getIsActive: function (_a) {
                        var assigned = _a.assigned;
                        return assigned;
                    },
                },
                {
                    id: 'mention-stream-spam',
                    getLabel: function () { return l('Spam', 'navigation'); },
                    path: '/mentions',
                    query: { spam: true },
                    iconType: 'spam',
                    getIsActive: function (_a) {
                        var spam = _a.spam;
                        return spam;
                    },
                },
                {
                    id: 'mention-stream-deleted',
                    getLabel: function () { return l('Bin', 'navigation'); },
                    path: '/mentions',
                    query: { deleted: true },
                    iconType: 'trash',
                    getIsActive: function (_a) {
                        var deleted = _a.deleted;
                        return deleted;
                    },
                }
            ],
        },
        {
            getTitle: function () { return l('Analytics'); },
            items: [
                {
                    id: 'dashboard',
                    getLabel: function () { return l('General', 'navigation'); },
                    path: '/dashboard',
                    iconType: 'dashboard',
                },
                {
                    id: 'links',
                    getLabel: function () { return l('Top shared URLs', 'navigation'); },
                    path: '/links',
                    iconType: 'link',
                }
            ],
        },
        {
            getTitle: function () { return l('Insights'); },
            items: [
                {
                    id: 'conversations',
                    activePath: '/conversations',
                    getLabel: function () { return (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Conversation', 'navigation'), (0,jsx_runtime.jsx)(Badge/* default */.A.New, {})] }); },
                    path: '/conversations',
                    iconType: 'conversations',
                },
                {
                    id: 'gallery',
                    activePath: '/gallery',
                    getLabel: function () { return l('Visual', 'navigation'); },
                    path: showVisualInsights ? '/gallery/visual' : '/gallery/images',
                    iconType: 'gallery',
                },
                {
                    id: 'authors',
                    getLabel: function () { return l('Audience', 'navigation'); },
                    path: '/audience/list',
                    iconType: 'authors',
                }
            ],
        },
        {
            isAdditionalGroup: true,
            getTitle: function () { return ''; },
            items: [
                {
                    id: 'export',
                    getLabel: function () { return l('Export', 'navigation'); },
                    path: '/reports',
                    iconType: 'reports',
                },
                {
                    id: 'alerts',
                    getLabel: function () { return l('Alerts', 'navigation'); },
                    path: '/alerts',
                    iconType: 'alerts',
                },
                {
                    id: 'reports',
                    getLabel: function () { return l('Reports', 'navigation'); },
                    path: '/email_reports',
                    iconType: 'notifications',
                },
                showSettings && {
                    id: 'settings',
                    getLabel: function () { return l('Settings', 'navigation'); },
                    path: '/settings',
                    iconType: 'settings',
                }
            ].filter(Boolean),
        }
    ].filter(Boolean);
});

;// CONCATENATED MODULE: ./src/containers/TopicNavigation/TopicNavigation.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TopicNavigation = ({"overlayedBlock":"MUBsu1SYntZfgheEsDvy","flexCenter":"ydYyrDoxctCABmVTPpvr","smartFeature":"bryCiFkC_6skBdYq_Vn6","tag":"Mv3oqalbllDZfqFcuAOG","visibleScrollBar":"bF11tKKx8pgquSBTpr2b","hiddenScrollBar":"Nt6IVG1Dn5fRs9aypB59","base":"gN6208sUmiTypgoo8h1H","container":"__tOluqflrxZJXWS7423","explore":"Y_KsoO3jLF6cpRtWzVLQ","visualInsightsBadge":"qMXesZAO4945ZFZRdvoC"});
;// CONCATENATED MODULE: ./src/containers/TopicNavigation/TopicNavigation.tsx
var TopicNavigation_assign = (undefined && undefined.__assign) || function () {
    TopicNavigation_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopicNavigation_assign.apply(this, arguments);
};













var getBasePath = function (topicId) { return "/themes/".concat(topicId); };
var TopicLeftNavigation = function (_a) {
    var topicId = _a.topicId, className = _a.className, query = _a.query, showSettings = _a.showSettings, showVisualInsights = _a.showVisualInsights, router = _a.router;
    var isActive = router.isActive, createPath = router.createPath;
    var basePath = (0,react.useMemo)(function () { return getBasePath(topicId); }, [topicId]);
    var baseQuery = (0,react.useMemo)(function () { return getBaseQuery(query); }, [query]);
    var isMobileView = (0,mobile/* isSimplifiedView */.O7)();
    return ((0,jsx_runtime.jsx)("div", TopicNavigation_assign({ className: classnames_default()(className, TopicNavigation.base), "data-hook": "nav-menu" }, { children: TopicNavigation_config({ showSettings: showSettings, showVisualInsights: showVisualInsights, isMobileView: isMobileView }).map(function (group, index) { return ((0,jsx_runtime.jsx)(TopicNavigation_NavigationGroup_NavigationGroup, { isAdditionalGroup: group === null || group === void 0 ? void 0 : group.isAdditionalGroup, query: query || {}, basePath: basePath, baseQuery: baseQuery, title: group.getTitle(), items: group.items, subItems: group.hiddenItems, isActive: isActive, createPath: createPath }, index)); }) })));
};
/* harmony default export */ const TopicNavigation_TopicNavigation = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
    // @ts-ignore
    showSettings: (0,themes_selectors/* getCurrentThemePermissionValue */.EC)(state, 'viewSettings'),
    showVisualInsights: (0,themes_selectors/* canUseImageRecognitionFeatures */.ZL)(state),
}); }), react.memo)(TopicLeftNavigation));

;// CONCATENATED MODULE: ./src/containers/TopicNavigation/index.ts


// EXTERNAL MODULE: ./src/utils/themeFilterUtils.ts
var themeFilterUtils = __webpack_require__("oLrK");
;// CONCATENATED MODULE: ./src/containers/ThemeSelector/components/ThemeSelector.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_ThemeSelector = ({"overlayedBlock":"XV5xcuaGc6nunRZL3XkM","flexCenter":"oP163KzJ84F5Q7et5dvv","smartFeature":"mdldXJd7hUmLeepU_qnW","tag":"yfWLpJpHFXUWnpxhCC44","visibleScrollBar":"P8zvSNpdeQXXT68Gg_dh","hiddenScrollBar":"snUL3WCTx0lRESBruKUg","base":"rAhBP3bZQLNeQOCUfrSY","name":"VyNXTmncY1G1PJ656dGQ","popoverContent":"bci06NndaFquwdOXseKV","themes":"srk5hcccRvigffqL2_w9","suggestion":"LKskrdkfGgiHrtP3rCng","suggestionFocused":"S_vGnhNJpA2DqTbUOYQm","selected":"z4NUwqkF6tbvyCCzJ7hs"});
;// CONCATENATED MODULE: ./src/containers/ThemeSelector/components/ThemeSelector.tsx
var ThemeSelector_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var ThemeSelector_assign = (undefined && undefined.__assign) || function () {
    ThemeSelector_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemeSelector_assign.apply(this, arguments);
};

/* eslint-disable react/sort-comp */









var ThemeSelector = /** @class */ (function (_super) {
    ThemeSelector_extends(ThemeSelector, _super);
    function ThemeSelector(props) {
        var _this = _super.call(this, props) || this;
        _this.handleSelectTheme = function (theme) {
            var _a;
            (_a = _this.popover.current) === null || _a === void 0 ? void 0 : _a.hide();
            _this.props.onSelect(theme.id.toString());
        };
        _this.renderSuggestion = function (suggestion, focused) {
            var _a;
            var currentTheme = _this.props.currentTheme;
            return ((0,jsx_runtime.jsxs)("div", ThemeSelector_assign({ className: classnames_default()(components_ThemeSelector.suggestion, (_a = {}, _a[components_ThemeSelector.suggestionFocused] = focused, _a[components_ThemeSelector.selected] = suggestion.id === currentTheme.id, _a)) }, { children: [(0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicScaleIcon */.Hi, { topic: suggestion }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicSamplingIcon */.I$, { topic: suggestion }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicFilterIcon */.$2, { topic: suggestion }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", ThemeSelector_assign({ title: suggestion.name }, { children: suggestion.name }))] })));
        };
        _this.renderPopoverContent = function () {
            var _a = _this.props, loading = _a.loading, currentTheme = _a.currentTheme, themes = _a.themes;
            return ((0,jsx_runtime.jsx)("div", ThemeSelector_assign({ className: classnames_default()(components_ThemeSelector.popoverContent) }, { children: (0,jsx_runtime.jsx)(SearchableListMutable, { autoFocus: true, fullWidth: true, isLoading: loading, placeholder: l('Search'), emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { small: true, image: "/static/images/empty_search.png", title: l('No topics were found'), message: l('There are no topics with this name') }), suggestions: currentTheme && themes, sortingProperties: { keys: [function (item) { return item.name; }] }, renderItem: _this.renderSuggestion, onSelect: _this.handleSelectTheme }) })));
        };
        _this.popover = (0,react.createRef)();
        return _this;
    }
    ThemeSelector.prototype.render = function () {
        var _a = this.props, currentTheme = _a.currentTheme, className = _a.className;
        return ((0,jsx_runtime.jsx)(Popover/* default */.A, ThemeSelector_assign({ basic: true, ref: this.popover, position: "bottom left", content: this.renderPopoverContent() }, { children: (0,jsx_runtime.jsxs)("div", ThemeSelector_assign({ className: classnames_default()(components_ThemeSelector.base, className) }, { children: [(0,jsx_runtime.jsx)("div", ThemeSelector_assign({ className: classnames_default()(components_ThemeSelector.name) }, { children: currentTheme && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicScaleIcon */.Hi, { topic: currentTheme }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicSamplingIcon */.I$, { topic: currentTheme }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicFilterIcon */.$2, { topic: currentTheme }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", ThemeSelector_assign({ title: currentTheme.name }, { children: currentTheme.name }))] })) })), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-down", className: classnames_default()(components_ThemeSelector.iconDown) })] })) })));
    };
    return ThemeSelector;
}(react.PureComponent));
/* harmony default export */ const ThemeSelector_components_ThemeSelector = (ThemeSelector);

;// CONCATENATED MODULE: ./src/containers/ThemeSelector/ThemeSelector.tsx
var ThemeSelector_ThemeSelector_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();













var ThemeSelectorContainer = /** @class */ (function (_super) {
    ThemeSelector_ThemeSelector_extends(ThemeSelectorContainer, _super);
    function ThemeSelectorContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleThemeSelect = function (themeId) {
            var _a = _this.props, filter = _a.filter, location = _a.location;
            var savedPathname = location.pathname.split('/').slice(3).join('/');
            console.log((0,utils_routing/* queryToSearch */.w)((0,themeFilterUtils/* getSavingFilter */.ro)(filter)));
            _this.props.push({
                pathname: "/themes/".concat(themeId, "/").concat(savedPathname),
                search: (0,utils_routing/* queryToSearch */.w)((0,themeFilterUtils/* getSavingFilter */.ro)(filter)),
            });
            _this.props.fetchGeneralThemeInfo({ themeId: themeId });
        };
        return _this;
    }
    ThemeSelectorContainer.prototype.componentDidMount = function () {
        var _a = this.props, currentTheme = _a.currentTheme, themes = _a.themes;
        if (!currentTheme || (0,lodash.isEmpty)(themes)) {
            this.props.fetchThemesWithoutStats();
        }
    };
    ThemeSelectorContainer.prototype.render = function () {
        var _a = this.props, themes = _a.themes, currentTheme = _a.currentTheme, className = _a.className;
        return ((0,jsx_runtime.jsx)(ThemeSelector_components_ThemeSelector, { loading: (0,lodash.isEmpty)(themes), themes: themes, currentTheme: currentTheme, className: className, onSelect: this.handleThemeSelect }));
    };
    return ThemeSelectorContainer;
}(react.PureComponent));
/* harmony default export */ const ThemeSelector_ThemeSelector = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
    return ({
        currentTheme: (0,themes_selectors/* getCurrentTheme */.j1)(state),
        themes: (0,themes_selectors/* getThemesWithoutStats */.aj)(state),
        filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    });
}, {
    push: routing_actions/* push */.VC,
    fetchThemesWithoutStats: themes_model/* themesModel */.i.action.fetchThemesWithoutStats,
    fetchGeneralThemeInfo: themes_model/* themesModel */.i.action.fetchGeneralThemeInfo,
}))(ThemeSelectorContainer));

;// CONCATENATED MODULE: ./src/containers/ThemeSelector/index.js

// EXTERNAL MODULE: ./src/models/Authorization.ts
var Authorization = __webpack_require__("XSTB");
;// CONCATENATED MODULE: ./src/state/notifications/selectors.ts

var isNotificationsLoading = function (state) { return state.notifications.loading; };
var getNotificationSettings = function (state) { var _a; return (_a = state.notifications) === null || _a === void 0 ? void 0 : _a.notificationSettings; };
var getNotificationAuthorizations = (0,reselect_es/* createSelector */.Mz)(getNotificationSettings, function (settings) { return settings && settings.authorizations; });
var getAuthorizationRequireType = (0,reselect_es/* createSelector */.Mz)(getNotificationSettings, function (settings) { return settings && settings.authorizationRequire; });

;// CONCATENATED MODULE: ./src/containers/notifications/components/NotificationItem/NotificationItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NotificationItem = ({"base":"KEPjpkMITiMfjIa26cL5","closeIcon":"Gkq9AMd1VCSpdnFeKFwu","title":"mczgzJnH9cdRTtjYFBeP","description":"ceq8wINBsF28Tn83PkoG","actionBar":"J5ZmlIUZhaltkJNupQkt","callToAction":"g3vuack01av7YCRpaxS8"});
;// CONCATENATED MODULE: ./src/containers/notifications/components/NotificationItem/NotificationItem.tsx
var NotificationItem_assign = (undefined && undefined.__assign) || function () {
    NotificationItem_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return NotificationItem_assign.apply(this, arguments);
};









var NotificationItem_NotificationItem = function (_a) {
    var content = _a.content, onHide = _a.onHide, onClick = _a.onClick, onSecondaryClick = _a.onSecondaryClick;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, NotificationItem_assign({ fullWidth: false, className: classnames_default()(NotificationItem.base) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "close", size: "default", className: classnames_default()(NotificationItem.closeIcon), onClick: function () { return onHide(content.id); } }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "warning", color: content.warning }), (0,jsx_runtime.jsx)(H3/* default */.A, NotificationItem_assign({ className: classnames_default()(NotificationItem.title) }, { children: content.title })), (0,jsx_runtime.jsx)("span", NotificationItem_assign({ className: classnames_default()(NotificationItem.description) }, { children: content.description }))] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, NotificationItem_assign({ className: classnames_default()(NotificationItem.actionBar) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, label: content.buttonLabel, className: classnames_default()(NotificationItem.callToAction), onClick: onClick }), onSecondaryClick && content.secondaryButtonLabel && ((0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, label: content.secondaryButtonLabel, className: classnames_default()(NotificationItem.callToAction), onClick: function () { return onSecondaryClick(content.id); } }))] }))] })));
};
/* harmony default export */ const components_NotificationItem_NotificationItem = (NotificationItem_NotificationItem);

;// CONCATENATED MODULE: ./src/containers/notifications/components/NotificationItem/index.ts


;// CONCATENATED MODULE: ./src/containers/notifications/SocialAccountAuthorizations/SocialAccountAuthorizations.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SocialAccountAuthorizations = ({"notificationContainer":"VKBP3PzmubdHrByXHJgE"});
;// CONCATENATED MODULE: ./src/containers/notifications/SocialAccountAuthorizations/SocialAccountAuthorizations.tsx
var SocialAccountAuthorizations_assign = (undefined && undefined.__assign) || function () {
    SocialAccountAuthorizations_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SocialAccountAuthorizations_assign.apply(this, arguments);
};










var ANALYTICAL_EVENT_MESSAGES_BY_STATUS = {
    SHOWN: 'Social accounts authorizations: notification shown',
    HIDDEN: 'Social accounts authorizations: notification closed',
    BUTTON_CLICK: 'Social accounts authorizations: button click',
};
var ExpiredSocialAccountAuthorizations = function (_a) {
    var isLoading = _a.isLoading, authorizationRequire = _a.authorizationRequire, notificationAuthorizations = _a.notificationAuthorizations, push = _a.push, fetchNotificationSettings = _a.fetchNotificationSettings, hideAuthorizationNotification = _a.hideAuthorizationNotification, hideAuthorizationExpirationNotification = _a.hideAuthorizationExpirationNotification, muteAuthorizationExpirationNotification = _a.muteAuthorizationExpirationNotification, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        fetchNotificationSettings();
        sendAnalyticalEvent({ eventType: ANALYTICAL_EVENT_MESSAGES_BY_STATUS.SHOWN });
    }, []);
    if (isLoading)
        return null;
    if (authorizationRequire === Authorization/* AuthorizationRequireType */.Fg.NotRequire && !notificationAuthorizations.length)
        return null;
    var handleClickButtonRemindLater = function (id) {
        sendAnalyticalEvent({
            eventType: ANALYTICAL_EVENT_MESSAGES_BY_STATUS.BUTTON_CLICK,
            properties: {
                button: 'Remind later',
            },
        });
        muteAuthorizationExpirationNotification({ authorizationId: id });
    };
    var handleClickButtonLabel = function () {
        sendAnalyticalEvent({
            eventType: ANALYTICAL_EVENT_MESSAGES_BY_STATUS.BUTTON_CLICK,
            properties: {
                button: 'Add Social account',
            },
        });
        push({
            pathname: '/settings/social_accounts',
        });
    };
    var handleClickCloseIcon = function (id) {
        sendAnalyticalEvent({ eventType: ANALYTICAL_EVENT_MESSAGES_BY_STATUS.HIDDEN });
        if (!id) {
            hideAuthorizationNotification();
        }
        else {
            hideAuthorizationExpirationNotification({ authorizationId: id });
        }
    };
    return ((0,jsx_runtime.jsxs)("div", SocialAccountAuthorizations_assign({ className: SocialAccountAuthorizations.notificationContainer }, { children: [authorizationRequire !== Authorization/* AuthorizationRequireType */.Fg.NotRequire
                ? ((0,jsx_runtime.jsx)(components_NotificationItem_NotificationItem, { content: {
                        title: authorizationRequire === Authorization/* AuthorizationRequireType */.Fg.RequireInstagram
                            ? l('Instagram data is not collected', 'socialAccounts')
                            : l('Facebook + Instagram data is not collected', 'socialAccounts'),
                        description: l('Add a Social account to start collecting data', 'socialAccounts'),
                        buttonLabel: l('Add Social account', 'socialAccounts'),
                        warning: 'red',
                    }, onClick: handleClickButtonLabel, onHide: function () { return handleClickCloseIcon(''); } }))
                : null, (notificationAuthorizations === null || notificationAuthorizations === void 0 ? void 0 : notificationAuthorizations.length) > 0
                ? (notificationAuthorizations.map(function (authorization) {
                    var notification = getNotification(authorization);
                    if (!notification)
                        return null;
                    return ((0,jsx_runtime.jsx)(components_NotificationItem_NotificationItem, { content: notification, onClick: handleClickButtonLabel, onSecondaryClick: handleClickButtonRemindLater, onHide: handleClickCloseIcon }, authorization.id));
                }))
                : null] })));
};
function getNotification(authorization) {
    var id = authorization.id, substatus = authorization.substatus, type = authorization.type, name = authorization.name, channelsCount = authorization.channelsCount;
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringRegularCollectionConnected) {
        return {
            id: id,
            title: type === Authorization/* AuthorizationType */.s0.Facebook
                ? l('Data collection will be stopped in 7 days: Facebook', 'socialAccounts')
                : l('Data collection will be stopped in 7 days: Facebook and Instagram', 'socialAccounts'),
            description: "".concat(l('Re-authorize the Social account "', 'socialAccounts')).concat(name).concat(l('" to ensure data is collected', 'socialAccounts')),
            buttonLabel: l('AUTHORIZE', 'socialAccounts'),
            warning: 'amber',
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredRegularCollectionConnected) {
        return {
            id: id,
            title: type === Authorization/* AuthorizationType */.s0.Facebook
                ? l('Data collection stopped: Facebook', 'socialAccounts')
                : l('Data collection stopped: Facebook and Instagram', 'socialAccounts'),
            description: "".concat(l('The Social account "', 'socialAccounts')).concat(name).concat(l('" has expired. Please re-authorize it.', 'socialAccounts')),
            buttonLabel: l('AUTHORIZE', 'socialAccounts'),
            secondaryButtonLabel: l('REMIND LATER', 'socialAccounts'),
            warning: 'red',
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringChannelsConnected) {
        return {
            id: id,
            title: sprintf(nl('Data collection will be stopped in 7 days: %d channel', 'Data collection will be stopped in 7 days: %d channels', channelsCount, 'socialAccounts'), channelsCount),
            description: "".concat(l('Re-authorize the Social account "', 'socialAccounts')).concat(name).concat(l('" to ensure data is collected', 'socialAccounts')),
            buttonLabel: l('AUTHORIZE', 'socialAccounts'),
            warning: 'amber',
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredChannelsConnected) {
        return {
            id: id,
            title: sprintf(nl('Data collection stopped: %d channel', 'Data collection stopped: %d channels', channelsCount, 'socialAccounts'), channelsCount),
            description: "".concat(l('The Social account "', 'socialAccounts')).concat(name).concat(l('" has expired. Please re-authorize it.', 'socialAccounts')),
            buttonLabel: l('AUTHORIZE', 'socialAccounts'),
            secondaryButtonLabel: l('REMIND LATER', 'socialAccounts'),
            warning: 'red',
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringNoChannelsConnected) {
        return {
            id: id,
            title: "".concat(l('The Social account "', 'socialAccounts')).concat(name).concat(l('" is expiring in 7 days.', 'socialAccounts')),
            description: l('Please re-authorize it.', 'socialAccounts'),
            buttonLabel: l('AUTHORIZE', 'socialAccounts'),
            warning: 'amber',
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredNoChannelsConnected) {
        return {
            id: id,
            title: "".concat(l('The Social account "', 'socialAccounts')).concat(name).concat(l('" has expired.', 'socialAccounts')),
            description: l('Please re-authorize it.', 'socialAccounts'),
            buttonLabel: l('AUTHORIZE', 'socialAccounts'),
            warning: 'red',
        };
    }
    return null;
}
var connectedComponent = (0,react_redux/* connect */.Ng)(function (state) { return ({
    notificationAuthorizations: getNotificationAuthorizations(state),
    authorizationRequire: getAuthorizationRequireType(state),
    isLoading: isNotificationsLoading(state),
}); }, {
    push: routing_actions/* push */.VC,
    hideAuthorizationNotification: notifications_model/* NotificationsModel */.C.action.hideAuthorizationNotification,
    hideAuthorizationExpirationNotification: notifications_model/* NotificationsModel */.C.action.hideAuthorizationExpirationNotification,
    muteAuthorizationExpirationNotification: notifications_model/* NotificationsModel */.C.action.muteAuthorizationExpirationNotification,
    fetchNotificationSettings: notifications_model/* NotificationsModel */.C.action.fetchNotificationSettings,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(ExpiredSocialAccountAuthorizations);
/* harmony default export */ const SocialAccountAuthorizations_SocialAccountAuthorizations = (connectedComponent);

;// CONCATENATED MODULE: ./src/containers/notifications/SocialAccountAuthorizations/index.ts


// EXTERNAL MODULE: ./src/containers/notifications/NotificationsStacker/index.ts + 2 modules
var NotificationsStacker = __webpack_require__("cFE2");
;// CONCATENATED MODULE: ./src/containers/helpers/SyncThemeIdWithStore.js





function SyncThemeIdWithStore_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, SyncThemeIdWithStore_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function SyncThemeIdWithStore_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (SyncThemeIdWithStore_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var SyncThemeIdWithStore = /*#__PURE__*/function (_PureComponent) {
  function SyncThemeIdWithStore() {
    (0,classCallCheck/* default */.A)(this, SyncThemeIdWithStore);
    return SyncThemeIdWithStore_callSuper(this, SyncThemeIdWithStore, arguments);
  }
  (0,inherits/* default */.A)(SyncThemeIdWithStore, _PureComponent);
  return (0,createClass/* default */.A)(SyncThemeIdWithStore, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.setCurrentTheme({
        themeId: this.props.params.id
      });
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var themeId = this.props.params.id;
      var prevThemeId = prevProps.params.id;
      if (prevThemeId !== themeId) {
        this.props.setCurrentTheme({
          themeId: themeId
        });
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this.props.resetCurrentTheme();
    }
  }, {
    key: "render",
    value: function render() {
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {});
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const helpers_SyncThemeIdWithStore = ((0,redux/* compose */.Zz)(
// FIXME: Legacy component. Need to be replaced with library to sync react router params with redux
(0,react_redux/* connect */.Ng)(undefined, {
  setCurrentTheme: themes_model/* themesModel */.i.action.setCurrentTheme,
  resetCurrentTheme: themes_model/* themesModel */.i.action.resetCurrentTheme
}), withRouter/* withRouter */.y)(SyncThemeIdWithStore));
;// CONCATENATED MODULE: ./src/pages/ThemeLayout/ThemeLayout.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ThemeLayout_ThemeLayout = ({"overlayedBlock":"i9X2Fv1m7_oeh8kLY3U7","flexCenter":"ilVTompddMg6_RTcSLAR","smartFeature":"CBFpNVRmitiMiPAyM3OA","tag":"NvVJDuTwnahgEpXS2ywB","visibleScrollBar":"ivOOGFWKaredkksP9VIi","hiddenScrollBar":"w55J2pZBh8dPS5xVvQ2Z","base":"MoEKQsAL9G8AMzARGP4g","menuButton":"KXrBt4QTDQpLmLQca3gY","content":"wATyn7uCTMRMUGFdjPc1","menuBar":"PD6cfIakscpoToFqulhE","themeSelector":"vBpXhuL7dzxCDAkk4aZg","menuItem":"xPCutJV0gkngXGJ8QXht","nav":"GFMYGrCdxb8YI4NYZJbB","navOpened":"z5P2A3vsRb2KIPHww5RJ","page":"zB6u16BTwh21y8RmGDiu","arrowIcon":"MWEd0IFVCiycfSuTpFHw"});
;// CONCATENATED MODULE: ./src/pages/ThemeLayout/ThemeLayout.tsx
var ThemeLayout_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var ThemeLayout_assign = (undefined && undefined.__assign) || function () {
    ThemeLayout_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemeLayout_assign.apply(this, arguments);
};




























var FULL_VIEW_WIDTH = 992;
var ThemeLayout = /** @class */ (function (_super) {
    ThemeLayout_extends(ThemeLayout, _super);
    function ThemeLayout() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            showNav: false,
        };
        _this.handleToggleNav = function () {
            _this.setState(function (prevState) { return ({ showNav: !prevState.showNav }); });
        };
        _this.handlePageClick = function () {
            if (window.innerWidth < FULL_VIEW_WIDTH && _this.state.showNav) {
                _this.setState({ showNav: false });
            }
        };
        _this.handleDashboardsClick = function () {
            _this.props.sendAnalyticalEvent({
                eventType: 'Custom dashboards tab: clicked from topic',
            });
        };
        _this.renderContent = function () {
            var _a;
            var socialSearchEnabled = _this.props.socialSearchEnabled;
            var showNav = _this.state.showNav;
            if (!_this.isThemeFilterReadyForUse) {
                return null;
            }
            return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", ThemeLayout_assign({ className: classnames_default()(ThemeLayout_ThemeLayout.menuBar) }, { children: [(0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)("div", ThemeLayout_assign({ className: classnames_default()(ThemeLayout_ThemeLayout.menuButton) }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "menu", onClick: _this.handleToggleNav }) })), (0,jsx_runtime.jsx)(ThemeSelector_ThemeSelector, { className: classnames_default()(ThemeLayout_ThemeLayout.themeSelector) }), (0,jsx_runtime.jsx)(dist/* Link */.N_, ThemeLayout_assign({ to: "/themes", className: classnames_default()(ThemeLayout_ThemeLayout.menuItem) }, { children: (0,jsx_runtime.jsx)("span", { children: l('Topics') }) })), (0,jsx_runtime.jsx)(dist/* Link */.N_, ThemeLayout_assign({ to: "/dashboards", className: classnames_default()(ThemeLayout_ThemeLayout.menuItem), onClick: _this.handleDashboardsClick }, { children: (0,jsx_runtime.jsx)("span", { children: l('Dashboards') }) })), socialSearchEnabled ? ((0,jsx_runtime.jsx)(dist/* Link */.N_, ThemeLayout_assign({ to: "/search", className: classnames_default()(ThemeLayout_ThemeLayout.menuItem) }, { children: (0,jsx_runtime.jsx)("span", { children: l('Search') }) }))) : null, (0,jsx_runtime.jsx)(containers_AddonsPromote_AddonsPromote, { triggerButton: (0,jsx_runtime.jsx)("div", ThemeLayout_assign({ className: ThemeLayout_ThemeLayout.menuItem }, { children: l('Addons') })) })] }), (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)(containers_NewFeaturesAnnouncement_NewFeaturesAnnouncement, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(containers_HelpMenu_HelpMenu, {}), (0,jsx_runtime.jsx)(UserAccountMenu_UserAccountMenu, {})] })] })), (0,jsx_runtime.jsxs)("div", ThemeLayout_assign({ className: classnames_default()(ThemeLayout_ThemeLayout.content), "data-custom-class-name": "ThemeLayout__content" }, { children: [(0,jsx_runtime.jsx)(TopicNavigation_TopicNavigation, { className: classnames_default()(ThemeLayout_ThemeLayout.nav, (_a = {}, _a[ThemeLayout_ThemeLayout.navOpened] = showNav, _a)) }), (0,jsx_runtime.jsx)(NotificationsStacker/* default */.A, { children: (0,jsx_runtime.jsx)(SocialAccountAuthorizations_SocialAccountAuthorizations, {}) }), (0,jsx_runtime.jsx)("div", ThemeLayout_assign({ className: classnames_default()(ThemeLayout_ThemeLayout.page), onClick: _this.handlePageClick }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] }))] }));
        };
        return _this;
    }
    ThemeLayout.prototype.componentDidMount = function () {
        this.props.fetchThemeData({ themeId: this.props.params.id });
        if (this.props.visualInsightsEnabled)
            this.props.fetchVisualTags();
    };
    ThemeLayout.prototype.componentDidUpdate = function (prevProps) {
        var _a = this.props, themeDetails = _a.themeDetails, themeId = _a.themeId, filterReady = _a.filterReady, query = _a.query;
        if (!prevProps.visualInsightsEnabled && this.props.visualInsightsEnabled)
            this.props.fetchVisualTags();
        var theme = themeDetails[String(themeId)];
        if (filterReady || !theme)
            return;
        if (query === null || query === void 0 ? void 0 : query.filterGroups) {
            this.props.setFilterReady({ ready: true });
            return;
        }
        var converted = Filter/* Filter */.dJ.fromLegacyQuery(query);
        if (!converted.filterGroups.length) {
            this.props.setFilterReady({ ready: true });
            return;
        }
        this.props.updateFilterQuery({ filter: converted, clearAdditionalParams: true });
    };
    ThemeLayout.prototype.componentWillUnmount = function () {
        this.props.setFilterReady({ ready: false });
    };
    Object.defineProperty(ThemeLayout.prototype, "isThemeFilterReadyForUse", {
        get: function () {
            return this.props.filterReady;
        },
        enumerable: false,
        configurable: true
    });
    ThemeLayout.prototype.render = function () {
        return ((0,jsx_runtime.jsxs)("div", ThemeLayout_assign({ className: classnames_default()(ThemeLayout_ThemeLayout.base) }, { children: [(0,jsx_runtime.jsx)(helpers_SyncThemeIdWithStore, {}), this.renderContent()] })));
    };
    return ThemeLayout;
}(react.PureComponent));
/* harmony default export */ const pages_ThemeLayout_ThemeLayout = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    themeDetails: (0,themes_selectors/* getThemeDetails */.se)(state),
    filterReady: (0,themes_selectors/* isFilterReady */.iV)(state),
    socialSearchEnabled: (0,account_selectors/* canShowSocialSearch */.hj)(state),
}); }, {
    fetchThemeData: themes_model/* themesModel */.i.action.fetchThemeData,
    setFilterReady: themes_model/* themesModel */.i.action.setFilterReady,
    fetchVisualTags: stats_model/* statsModel */.l.action.fetchVisualTags,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(ThemeLayout));

;// CONCATENATED MODULE: ./src/pages/ThemeLayout/index.ts


// EXTERNAL MODULE: ./src/components/ui/Section/index.ts + 2 modules
var Section = __webpack_require__("/4sX");
// EXTERNAL MODULE: ./src/components/ui/TextField/TextField.tsx + 1 modules
var TextField_TextField = __webpack_require__("mVWl");
;// CONCATENATED MODULE: ./src/containers/profileSettings/EditUserInfo/components/EditUserForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_EditUserForm = ({"base":"AYAF6kijZKBdpJ_oiolw","section":"tKmJnjEZBMeHPQ2QGLhY"});
;// CONCATENATED MODULE: ./src/containers/profileSettings/EditUserInfo/components/EditUserForm.js






var EditUserForm_dec, EditUserForm_class;
function EditUserForm_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function EditUserForm_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? EditUserForm_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : EditUserForm_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function EditUserForm_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, EditUserForm_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function EditUserForm_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (EditUserForm_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }









var EditUserForm = (EditUserForm_dec = (0,redux_form_lib/* reduxForm */.zW)({
  form: 'editUser',
  fields: ['firstName', 'lastName', 'phone', 'skype', 'position']
}, function (_state, ownProps) {
  return {
    initialValues: {
      firstName: ownProps.firstName,
      lastName: ownProps.lastName,
      phone: ownProps.phone,
      position: ownProps.position
    }
  };
}), EditUserForm_dec(EditUserForm_class = /*#__PURE__*/function (_PureComponent) {
  function EditUserForm() {
    (0,classCallCheck/* default */.A)(this, EditUserForm);
    return EditUserForm_callSuper(this, EditUserForm, arguments);
  }
  (0,inherits/* default */.A)(EditUserForm, _PureComponent);
  return (0,createClass/* default */.A)(EditUserForm, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        handleSubmit = _this$props.handleSubmit,
        _this$props$fields = _this$props.fields,
        firstName = _this$props$fields.firstName,
        lastName = _this$props$fields.lastName,
        phone = _this$props$fields.phone,
        position = _this$props$fields.position,
        changing = _this$props.changing;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("form", {
        className: classnames_default()(components_EditUserForm.base),
        onSubmit: handleSubmit,
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Section/* default */.A, {
          label: l('Main info'),
          className: classnames_default()(components_EditUserForm.section),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField/* default */.A, EditUserForm_objectSpread({
            fullWidth: true,
            required: true,
            name: "firstName",
            type: "text",
            label: l('First name')
          }, firstName)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField/* default */.A, EditUserForm_objectSpread({
            fullWidth: true,
            required: true,
            name: "lastName",
            type: "text",
            label: l('Last name')
          }, lastName))]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Section/* default */.A, {
          label: l('Additional info'),
          className: classnames_default()(components_EditUserForm.section),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField/* default */.A, EditUserForm_objectSpread({
            fullWidth: true,
            name: "phone",
            type: "tel",
            label: l('Phone number')
          }, phone)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField/* default */.A, EditUserForm_objectSpread({
            fullWidth: true,
            required: true,
            name: "position",
            type: "text",
            label: l('Job title')
          }, position))]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
          primary: true,
          loading: changing,
          type: "submit",
          label: l('Save')
        })]
      });
    }
  }]);
}(react.PureComponent)) || EditUserForm_class);

;// CONCATENATED MODULE: ./src/containers/profileSettings/EditUserInfo/EditUserInfo.tsx
var EditUserInfo_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();







var EditUserInfo = /** @class */ (function (_super) {
    EditUserInfo_extends(EditUserInfo, _super);
    function EditUserInfo() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleSubmit = function (info) {
            _this.props.changeUserInfo({ info: info });
        };
        _this.showStatusMessage = function (_a) {
            var title = _a.title, message = _a.message;
            (0,utils_alert/* default */.A)({ title: title, message: message });
            _this.props.clearChangeUserInfoState();
        };
        return _this;
    }
    EditUserInfo.prototype.componentDidUpdate = function () {
        var _a = this.props, error = _a.error, userInfoChanged = _a.userInfoChanged;
        if (error) {
            this.showStatusMessage({
                title: l('An error has occurred'),
                message: l('If reloading of the page doesn\'t fix the problem contact our support team'),
            });
        }
        if (userInfoChanged) {
            this.showStatusMessage({
                title: l('Your info successfully changed'),
                message: l('All info that you\'ve changed was successfully updated'),
            });
        }
    };
    EditUserInfo.prototype.render = function () {
        var _a = this.props, currentUser = _a.currentUser, userinfoChanging = _a.userinfoChanging;
        return ((0,jsx_runtime.jsx)("div", { children: currentUser
                && ((0,jsx_runtime.jsx)(EditUserForm, { firstName: currentUser.firstName, lastName: currentUser.lastName, position: currentUser.position, skype: currentUser.skype, phone: currentUser.phone, changing: userinfoChanging, onSubmit: this.handleSubmit })) }));
    };
    return EditUserInfo;
}(react.Component));
/* harmony default export */ const EditUserInfo_EditUserInfo = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    error: (0,currentUser_selectors/* getCurrentUserChangeError */.Xc)(state),
    userInfoChanged: (0,currentUser_selectors/* isCurrentUserInfoChanged */.NZ)(state),
    userinfoChanging: (0,currentUser_selectors/* isCurrentUserInfoChanging */.k4)(state),
}); }, {
    changeUserInfo: currentUser_model/* currentUserStateModel */.b.action.changeUserInfo,
    clearChangeUserInfoState: currentUser_model/* currentUserStateModel */.b.action.clearChangeUserInfoState,
})(EditUserInfo));

;// CONCATENATED MODULE: ./src/containers/profileSettings/EditUserInfo/index.tsx


;// CONCATENATED MODULE: ./src/containers/profileSettings/ApiKeySettings/ApiKeySettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ApiKeySettings_ApiKeySettings = ({"horizontalContainer":"AyvRJVot89DHLqtelOqR","horizontalContainerTitle":"DJvjPKJj8ZUUw9mM8Xgq","loading":"gQJDKgPntusolWTfKxpL","apiKey":"CaKArHZMDVqVRkaj46IY","apiKeyButton":"l_M71QMMhPoJAuhNSsQH"});
;// CONCATENATED MODULE: ./src/containers/profileSettings/ApiKeySettings/ApiKeySettings.js















var ApiKeySettings = function ApiKeySettings(_ref) {
  var apiKey = _ref.apiKey,
    error = _ref.error,
    loading = _ref.loading,
    apiKeyFunctionalityEnabled = _ref.apiKeyFunctionalityEnabled,
    showModal = _ref.showModal,
    createApiKey = _ref.createApiKey;
  var _useState = (0,react.useState)(false),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    isApiKeyCreationTriggered = _useState2[0],
    setIsApiKeyCreationTriggered = _useState2[1];
  var handleApiKeyCreation = function handleApiKeyCreation() {
    setIsApiKeyCreationTriggered(true);
    createApiKey();
  };
  (0,react.useEffect)(function () {
    if (apiKey && isApiKeyCreationTriggered) {
      setIsApiKeyCreationTriggered(false);
      showModal('changeApiKey');
    }
  }, [apiKey]);
  (0,react.useEffect)(function () {
    if (error) {
      (0,utils_alert/* default */.A)({
        title: l('An error has occurred'),
        message: l('If reloading of the page doesn\'t fix the problem contact our support team')
      });
    }
  }, [error]);
  if (!apiKeyFunctionalityEnabled) {
    return null;
  }
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
    children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Loader/* default */.A, {
      loaded: !loading,
      className: classnames_default()(ApiKeySettings_ApiKeySettings.horizontalContainer, (0,defineProperty/* default */.A)({}, ApiKeySettings_ApiKeySettings.loading, loading)),
      children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(H2/* default */.A, {
        className: classnames_default()(ApiKeySettings_ApiKeySettings.horizontalContainerTitle),
        children: [l('API Key', 'changeApiKeyCardLabel'), apiKey && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
          className: classnames_default()(ApiKeySettings_ApiKeySettings.apiKey),
          children: ['‧'.repeat(12), apiKey]
        })]
      }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
        primary: true,
        ghost: !!apiKey,
        className: classnames_default()(ApiKeySettings_ApiKeySettings.apiKeyButton),
        label: apiKey ? l('Re-create') : l('Create'),
        onClick: handleApiKeyCreation
      })]
    })
  });
};
/* harmony default export */ const profileSettings_ApiKeySettings_ApiKeySettings = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    apiKey: (0,currentUser_selectors/* getCurrentUserMaskedApiKey */.V_)(state),
    error: (0,currentUser_selectors/* getCurrentUserApiKeyError */.QC)(state),
    loading: (0,currentUser_selectors/* isCurrentUserApiKeyLoading */.EW)(state),
    apiKeyFunctionalityEnabled: (0,currentUser_selectors/* isApiKeyCreationEnabled */.kl)(state)
  };
}, {
  showModal: modals_actions/* showModal */.to,
  createApiKey: currentUser_model/* currentUserStateModel */.b.action.generateApiKey
})(ApiKeySettings));
;// CONCATENATED MODULE: ./src/containers/profileSettings/ApiKeySettings/index.js

// EXTERNAL MODULE: ./node_modules/moment-timezone/index.js
var moment_timezone = __webpack_require__("f0Wu");
var moment_timezone_default = /*#__PURE__*/__webpack_require__.n(moment_timezone);
;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/MockedChart.tsx
var MockedChart_assign = (undefined && undefined.__assign) || function () {
    MockedChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MockedChart_assign.apply(this, arguments);
};



var MockedPieChart = function (_a) {
    var colors = _a.colors;
    var config = {
        chart: {
            plotBackgroundColor: null,
            plotBorderWidth: null,
            plotShadow: false,
            type: 'pie',
            height: '150px',
        },
        title: {
            text: 'mock',
            style: {
                display: 'none',
            },
        },
        subtitle: {
            text: null,
        },
        tooltip: {
            enabled: false,
        },
        plotOptions: {
            pie: {
                allowPointSelect: true,
                cursor: 'pointer',
                dataLabels: {
                    enabled: false,
                },
                showInLegend: false,
            },
            series: {
                cursor: 'pointer',
                point: {
                    events: {
                        click: function () { },
                        hover: function () { },
                    },
                },
            },
        },
        colors: colors,
        legend: {
            enabled: false,
        },
        series: [{
                legend: {
                    enabled: false,
                },
                name: 'mock',
                colorByPoint: true,
                data: colors.map(function (color, index) { return ({
                    name: "mock-".concat(index),
                    y: colors.length - index,
                }); }),
            }],
    };
    return ((0,jsx_runtime.jsx)("div", MockedChart_assign({ style: { width: 150 } }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config }) })));
};
/* harmony default export */ const MockedChart = ((0,react.memo)(MockedPieChart));

;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/MockedLegendItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MockedLegendItem = ({"base":"PK9aT_cCfI127oD5M2Jg","label":"speoNNB_kB0YpVXIACAA"});
;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/MockedLegendItem.tsx
var MockedLegendItem_assign = (undefined && undefined.__assign) || function () {
    MockedLegendItem_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MockedLegendItem_assign.apply(this, arguments);
};


var MockedLegendItem_MockedLegendItem = function (_a) {
    var color = _a.color, size = _a.size;
    return ((0,jsx_runtime.jsxs)("div", MockedLegendItem_assign({ className: MockedLegendItem.base }, { children: [(0,jsx_runtime.jsx)("div", { style: { borderRadius: '50%', backgroundColor: color, width: size, height: size } }), (0,jsx_runtime.jsx)("div", { className: MockedLegendItem.label, style: { height: size, width: 30 } })] })));
};
/* harmony default export */ const ColorSchemeSelector_MockedLegendItem = (MockedLegendItem_MockedLegendItem);

;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/MockedLegend.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MockedLegend = ({"base":"jzzKVYMIr1EwkjsheOEn","vertical":"RPtx4HuShpcunZai_DQr"});
;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/MockedLegend.tsx
var MockedLegend_assign = (undefined && undefined.__assign) || function () {
    MockedLegend_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MockedLegend_assign.apply(this, arguments);
};




var MockedLegend_MockedLegend = function (_a) {
    var colors = _a.colors, _b = _a.itemSize, itemSize = _b === void 0 ? 10 : _b;
    return ((0,jsx_runtime.jsx)("div", MockedLegend_assign({ className: classnames_default()(MockedLegend.base), style: { gridTemplateColumns: colors.length > 3 ? 'repeat(4, 1fr)' : 'repeat(3, 1fr)' } }, { children: colors.map(function (color) { return ((0,jsx_runtime.jsx)(ColorSchemeSelector_MockedLegendItem, { color: color, size: itemSize }, color)); }) })));
};
/* harmony default export */ const ColorSchemeSelector_MockedLegend = (MockedLegend_MockedLegend);

;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/ColorScheme.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ColorScheme = ({"base":"qZYwjC8bUJFOwPgqWoTP","selected":"SyiQs8IyvyDBYqxNUdPU","header":"YqrpaBGS8fu48sVSIyEj","container":"ur154Yv1Y2l1idcTwMKd","chart":"QIctEYgyw7kZVhLdMlsV"});
;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/ColorScheme.tsx
var ColorScheme_assign = (undefined && undefined.__assign) || function () {
    ColorScheme_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ColorScheme_assign.apply(this, arguments);
};









var ColorScheme_ColorScheme = function (_a) {
    var _b;
    var isSelected = _a.isSelected, colorScheme = _a.colorScheme, onClick = _a.onClick;
    var colors = (0,utils_colors/* getChartColorSchemes */.SM)(colorScheme).slice(0, 8);
    var sentimentColors = Object.values(utils_colors/* sentimentByChartColorScheme */.xb[colorScheme]).filter(function (x) { return x !== ''; });
    return ((0,jsx_runtime.jsxs)("div", ColorScheme_assign({ className: classnames_default()(ColorScheme.base, (_b = {}, _b[ColorScheme.selected] = isSelected, _b)), onClick: function () { return onClick(colorScheme); } }, { children: [(0,jsx_runtime.jsxs)("div", ColorScheme_assign({ className: ColorScheme.header }, { children: [(0,jsx_runtime.jsx)(ui_RadioButton_RadioButton, { checked: isSelected }), colorHandler/* ColorSchemeLabels */.WE[colorScheme]()] })), (0,jsx_runtime.jsxs)("div", ColorScheme_assign({ className: ColorScheme.container }, { children: [(0,jsx_runtime.jsxs)("div", ColorScheme_assign({ className: ColorScheme.chart }, { children: [(0,jsx_runtime.jsx)(MockedChart, { colors: colors }), (0,jsx_runtime.jsx)(ColorSchemeSelector_MockedLegend, { colors: colors })] })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", ColorScheme_assign({ className: ColorScheme.chart }, { children: [(0,jsx_runtime.jsx)(MockedChart, { colors: sentimentColors }), (0,jsx_runtime.jsx)(ColorSchemeSelector_MockedLegend, { colors: sentimentColors })] }))] }))] })));
};
/* harmony default export */ const ColorSchemeSelector_ColorScheme = (ColorScheme_ColorScheme);

;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/ColorSchemeSelector.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ColorSchemeSelector = ({"header":"jlS2St9_3jt0_E5_DODn","container":"are2QtsI2R935cldgDtq","scheme":"NLI3hFOARLFc2rZtkJ_w","colorPreview":"VwynG9mIN0hnc1KkZSbv","colorPreviewItem":"rZ8qxfAj8dpkkhsseJKo"});
;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/ColorSchemeSelector.tsx
var ColorSchemeSelector_assign = (undefined && undefined.__assign) || function () {
    ColorSchemeSelector_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ColorSchemeSelector_assign.apply(this, arguments);
};
var ColorSchemeSelector_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var ColorSchemeSelector_ColorSchemeSelector = function (_a) {
    var selectedColorScheme = _a.selectedColorScheme, onChange = _a.onChange;
    var _b = ColorSchemeSelector_read((0,react.useState)(false), 2), isOpen = _b[0], setIsOpen = _b[1];
    return ((0,jsx_runtime.jsxs)("div", ColorSchemeSelector_assign({ className: ColorSchemeSelector.base }, { children: [(0,jsx_runtime.jsxs)("div", ColorSchemeSelector_assign({ className: ColorSchemeSelector.header }, { children: [(0,jsx_runtime.jsx)("div", { children: l('Color scheme') }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", ColorSchemeSelector_assign({ className: ColorSchemeSelector.scheme, onClick: function () { return setIsOpen(!isOpen); } }, { children: [colorHandler/* ColorSchemeLabels */.WE[selectedColorScheme](), " ", (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-right" })] }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", ColorSchemeSelector_assign({ className: ColorSchemeSelector.colorPreview }, { children: (0,utils_colors/* getCurrentChartColorScheme */.KK)().map(function (color) { return ((0,jsx_runtime.jsx)("div", { className: ColorSchemeSelector.colorPreviewItem, style: { backgroundColor: color } }, color)); }) })), isOpen && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)("div", ColorSchemeSelector_assign({ className: ColorSchemeSelector.container }, { children: colorHandler/* ALL_COLOR_SCHEME_TYPES */.eI.map(function (colorScheme) { return ((0,jsx_runtime.jsx)(ColorSchemeSelector_ColorScheme, { isSelected: selectedColorScheme === colorScheme, colorScheme: colorScheme, onClick: onChange }, colorScheme)); }) }))] }))] })));
};
/* harmony default export */ const other_ColorSchemeSelector_ColorSchemeSelector = (ColorSchemeSelector_ColorSchemeSelector);

;// CONCATENATED MODULE: ./src/components/other/ColorSchemeSelector/index.ts


;// CONCATENATED MODULE: ./src/components/other/ColorThemeSelector/ColorTheme.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ColorTheme = ({"base":"Hg6yvKZWBWSH8wHoPh2g","selected":"nOVk7j4m6MV3HiZrJuIR","header":"EyKXcC_T7jGi_B2s_yzP","container":"SslRb9ztQUel9xMxSlAN","image":"SE9wM8u2WZJQ6paVz_Ad"});
;// CONCATENATED MODULE: ./src/components/other/ColorThemeSelector/ColorTheme.tsx
var ColorTheme_assign = (undefined && undefined.__assign) || function () {
    ColorTheme_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ColorTheme_assign.apply(this, arguments);
};





var ColorTheme_ColorScheme = function (_a) {
    var _b;
    var isSelected = _a.isSelected, theme = _a.theme, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)("div", ColorTheme_assign({ className: classnames_default()(ColorTheme.base, (_b = {}, _b[ColorTheme.selected] = isSelected, _b)), onClick: function () { return onClick(theme); } }, { children: [(0,jsx_runtime.jsxs)("div", ColorTheme_assign({ className: ColorTheme.header }, { children: [(0,jsx_runtime.jsx)(ui_RadioButton_RadioButton, { checked: isSelected }), colorHandler/* ThemeLabels */.L9[theme]()] })), (0,jsx_runtime.jsx)("div", ColorTheme_assign({ className: ColorTheme.container }, { children: (0,jsx_runtime.jsx)("img", { className: ColorTheme.image, src: "/static/images/".concat(theme, "_theme.png"), alt: "".concat(theme, " theme") }) }))] })));
};
/* harmony default export */ const ColorThemeSelector_ColorTheme = (ColorTheme_ColorScheme);

;// CONCATENATED MODULE: ./src/components/other/ColorThemeSelector/ColorThemeSelector.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ColorThemeSelector = ({"header":"llLrT4Gz55KjGVEIZ4GQ","themes":"NhFuV96oKjMefdwbPQNe"});
;// CONCATENATED MODULE: ./src/components/other/ColorThemeSelector/ColorThemeSelector.tsx
var ColorThemeSelector_assign = (undefined && undefined.__assign) || function () {
    ColorThemeSelector_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ColorThemeSelector_assign.apply(this, arguments);
};





var ColorThemeSelector_ColorThemeSelector = function (_a) {
    var selectedTheme = _a.selectedTheme, onChange = _a.onChange;
    return ((0,jsx_runtime.jsxs)("div", ColorThemeSelector_assign({ className: ColorThemeSelector.base }, { children: [(0,jsx_runtime.jsx)("div", ColorThemeSelector_assign({ className: ColorThemeSelector.header }, { children: l('Theme') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", ColorThemeSelector_assign({ className: ColorThemeSelector.themes }, { children: colorHandler/* ALL_THEME_TYPES */.mw.map(function (theme) { return ((0,jsx_runtime.jsx)(ColorThemeSelector_ColorTheme, { isSelected: selectedTheme === theme, theme: theme, onClick: onChange }, theme)); }) }))] })));
};
/* harmony default export */ const other_ColorThemeSelector_ColorThemeSelector = (ColorThemeSelector_ColorThemeSelector);

;// CONCATENATED MODULE: ./src/components/other/ColorThemeSelector/index.ts


// EXTERNAL MODULE: ./src/utils/getCurrentTimeZone.js
var getCurrentTimeZone = __webpack_require__("ynXH");
;// CONCATENATED MODULE: ./src/containers/profileSettings/InterfaceSettings/components/InterfaceSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const InterfaceSettings = ({"listItem":"WFfOclAc9N17Qy8KRm5O","hotkeysLabel":"qBSCIG7MchDw5sz5_YzT","helpLink":"Hqk6TRh6e1fmOxEbZyI5","label":"zzhdzr80MaOeYDPTFhYh","languageSelect":"QJAbU1LzeUUORnlsmH9y","hotkeysSwitch":"sgy1y_F3QZUxxlO7v0_Z","timeZoneSelect":"umDkgZF11l0hZKDVQJ3v"});
;// CONCATENATED MODULE: ./src/containers/profileSettings/InterfaceSettings/components/InterfaceSettings.tsx
var InterfaceSettings_assign = (undefined && undefined.__assign) || function () {
    InterfaceSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return InterfaceSettings_assign.apply(this, arguments);
};
var InterfaceSettings_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



















var beautifyTimeZone = function (name) { return "(GMT ".concat(moment_timezone_default().tz(name).format('Z'), ") ").concat(name === null || name === void 0 ? void 0 : name.replace('_', ' ')); };
var timezoneOpts = moment_timezone_default().tz.names()
    .map(function (name) { return ({
    value: name,
    label: beautifyTimeZone(name),
}); });
var languageOptions = [
    {
        value: 'eng',
        label: 'English',
    },
    {
        value: 'ukr',
        label: 'Українська',
    },
    {
        value: 'spa',
        label: 'Español',
    },
    {
        value: 'por-bra',
        label: 'Português do Brasil',
    },
    {
        value: 'rus',
        label: 'Русский (Центральная Азия)',
    }
];
var getLanguageOptions = function () { return languageOptions; };
var InterfaceSettings_InterfaceSettings = function (_a) {
    var user = _a.user, onUpdateSettings = _a.onUpdateSettings, sendAnalyticsEvent = _a.sendAnalyticsEvent;
    var languages = getLanguageOptions();
    var _b = InterfaceSettings_read((0,react.useState)(localStorage.getItem('theme')), 2), currentTheme = _b[0], changeCurrentTheme = _b[1];
    var _c = InterfaceSettings_read((0,react.useState)((0,colorHandler/* getCurrentColorSchemeType */.uS)()), 2), currentColorScheme = _c[0], changeCurrentColorScheme = _c[1];
    var handleChangeTheme = function (theme) {
        (0,colorHandler/* changeTheme */.KN)(theme);
        changeCurrentTheme(theme);
        sendAnalyticsEvent({
            eventType: 'Profile: change theme',
            properties: { theme: theme },
        });
    };
    var handleChangeColorScheme = function (colorScheme) {
        (0,colorHandler/* changeColorScheme */.vi)(colorScheme);
        changeCurrentColorScheme(colorScheme);
        sendAnalyticsEvent({
            eventType: 'Profile: change color scheme',
            properties: { colorScheme: colorScheme },
        });
    };
    return ((0,jsx_runtime.jsxs)(Section/* default */.A, InterfaceSettings_assign({ className: classnames_default()(InterfaceSettings.base) }, { children: [(0,jsx_runtime.jsx)("span", InterfaceSettings_assign({ className: classnames_default()(InterfaceSettings.label) }, { children: l('Time Zone', 'profile') })), (0,jsx_runtime.jsx)(Select/* default */.A, { isClearable: true, isSearchable: true, className: classnames_default()(InterfaceSettings.timeZoneSelect), value: timezoneOpts.find(function (tz) { return tz.value === user.settings.timeZone; }), placeholder: beautifyTimeZone((0,getCurrentTimeZone/* default */.A)()), options: timezoneOpts.filter(function (x) { return !x.value.includes('Kiev'); }), onChange: function (item) { return onUpdateSettings('timeZone', item ? item.value : null); } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)("span", InterfaceSettings_assign({ className: classnames_default()(InterfaceSettings.label) }, { children: l('Language', 'profile') })), (0,jsx_runtime.jsx)(Select/* default */.A, { isClearable: false, className: classnames_default()(InterfaceSettings.languageSelect), value: languages.find(function (opt) { return opt.value === user.settings.language; }), placeholder: l('default'), options: languages, onChange: function (_a) {
                    var value = _a.value;
                    return onUpdateSettings('language', value);
                } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: user.settings.shortcutsEnabled, label: (0,jsx_runtime.jsx)("span", InterfaceSettings_assign({ className: classnames_default()(InterfaceSettings.label) }, { children: l('Enable Hotkeys', 'profile') })), description: (0,jsx_runtime.jsxs)(ExplanationText/* default */.A, { children: [l('Hotkeys are keyboard shortcuts you can use on the Mention Stream page.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", InterfaceSettings_assign({ target: "_blank", rel: "noopener noreferrer", href: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.HOT_KEYS) }, { children: l('More info') }))] }), className: classnames_default()(InterfaceSettings.hotkeysSwitch), onChange: function (newValue) { return onUpdateSettings('shortcutsEnabled', newValue); } }), (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: user.settings.keywordHighlightingEnabled, label: (0,jsx_runtime.jsx)("span", InterfaceSettings_assign({ className: classnames_default()(InterfaceSettings.label) }, { children: l('Enable keywords highlights', 'profile') })), description: (0,jsx_runtime.jsx)(ExplanationText/* default */.A, { children: l('If this option is enabled, keywords in the Mention Stream will be highlighted.') }), className: classnames_default()(InterfaceSettings.hotkeysSwitch), onChange: function (newValue) { return onUpdateSettings('keywordHighlightingEnabled', newValue); } }), (0,jsx_runtime.jsx)(other_ColorThemeSelector_ColorThemeSelector, { selectedTheme: currentTheme, onChange: handleChangeTheme }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(other_ColorSchemeSelector_ColorSchemeSelector, { selectedColorScheme: currentColorScheme, onChange: handleChangeColorScheme })] })));
};
/* harmony default export */ const components_InterfaceSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, { sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }), react.memo)(InterfaceSettings_InterfaceSettings));

;// CONCATENATED MODULE: ./src/containers/profileSettings/InterfaceSettings/InterfaceSettings.tsx
var InterfaceSettings_InterfaceSettings_assign = (undefined && undefined.__assign) || function () {
    InterfaceSettings_InterfaceSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return InterfaceSettings_InterfaceSettings_assign.apply(this, arguments);
};








var InterfaceSettingsContainer = function (_a) {
    var user = _a.user, updateUserSettings = _a.updateUserSettings;
    var handleUpdateSettings = function (settingName, newValue) {
        var _a;
        updateUserSettings({
            update: (_a = {},
                _a[settingName] = newValue,
                _a),
        });
    };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, InterfaceSettings_InterfaceSettings_assign({ loaded: Boolean(user) }, { children: function () { return ((0,jsx_runtime.jsx)(components_InterfaceSettings, { user: user, onUpdateSettings: handleUpdateSettings })); } })));
};
/* harmony default export */ const profileSettings_InterfaceSettings_InterfaceSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    user: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
}); }, { updateUserSettings: currentUser_model/* currentUserStateModel */.b.action.updateUserSettings }), react.memo)(InterfaceSettingsContainer));

;// CONCATENATED MODULE: ./src/containers/profileSettings/InterfaceSettings/index.js

;// CONCATENATED MODULE: ./src/containers/profileSettings/ChangePassword/ChangePassword.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChangePassword_ChangePassword = ({"base":"Ah5FsfjYA6K7R1XtoaMA","horizontalContainer":"AGdzSNZJmJIfe5cONVEF","horizontalContainerTitle":"vFiVr_WRBOlmj22_rgZl"});
;// CONCATENATED MODULE: ./src/containers/profileSettings/ChangePassword/ChangePassword.tsx
var ChangePassword_assign = (undefined && undefined.__assign) || function () {
    ChangePassword_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChangePassword_assign.apply(this, arguments);
};










var ChangePassword_ChangePassword_ChangePassword = function (_a) {
    var ssoEnabled = _a.ssoEnabled, showModal = _a.showModal;
    var handleOpenChangePasswordModal = function () {
        showModal('changePassword');
    };
    var withTooltip = function (children) {
        return (0,jsx_runtime.jsx)(Tooltip/* default */.A, ChangePassword_assign({ text: l("You're using SSO with YouScan, that's why change password not available.") }, { children: children }));
    };
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, ChangePassword_assign({ className: classnames_default()(ChangePassword_ChangePassword.horizontalContainer) }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, ChangePassword_assign({ className: classnames_default()(ChangePassword_ChangePassword.horizontalContainerTitle) }, { children: l('Change password', 'changePasswordCardLabel') })), ssoEnabled ? (withTooltip((0,jsx_runtime.jsx)(Button/* default */.A, { disabled: true, primary: true, className: classnames_default()(ChangePassword_ChangePassword.base), label: l('Change'), onClick: handleOpenChangePasswordModal }))) : ((0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, className: classnames_default()(ChangePassword_ChangePassword.base), label: l('Change'), onClick: handleOpenChangePasswordModal }))] })));
};
/* harmony default export */ const profileSettings_ChangePassword_ChangePassword = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    ssoEnabled: (0,account_selectors/* isSsoEnabled */.dk)(state),
}); }, { showModal: modals_actions/* showModal */.to })(ChangePassword_ChangePassword_ChangePassword));

;// CONCATENATED MODULE: ./src/containers/profileSettings/ChangePassword/index.ts


;// CONCATENATED MODULE: ./src/pages/ProfilePage/ProfilePage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ProfilePage = ({"base":"AMYyzNLCTniqbmNfmeh8"});
;// CONCATENATED MODULE: ./src/pages/ProfilePage/ProfilePage.tsx
var ProfilePage_assign = (undefined && undefined.__assign) || function () {
    ProfilePage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ProfilePage_assign.apply(this, arguments);
};











/* harmony default export */ const ProfilePage_ProfilePage = (function () { return ((0,jsx_runtime.jsxs)("div", ProfilePage_assign({ className: classnames_default()(ProfilePage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('My settings') }), (0,jsx_runtime.jsxs)(Card/* default */.A, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('My info') }), (0,jsx_runtime.jsx)(EditUserInfo_EditUserInfo, {})] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(Card/* default */.A, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Interface settings') }), (0,jsx_runtime.jsx)(profileSettings_InterfaceSettings_InterfaceSettings, {})] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(profileSettings_ApiKeySettings_ApiKeySettings, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(profileSettings_ChangePassword_ChangePassword, {})] }))); });

;// CONCATENATED MODULE: ./src/pages/ProfilePage/index.ts


;// CONCATENATED MODULE: ./src/pages/ImagesPage/ImagesPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ImagesPage = ({"base":"Y2wDvr6Exkk5oJ4ghCvK","content":"_X83tB0iBCqhm7yWoa8U"});
;// CONCATENATED MODULE: ./src/pages/ImagesPage/ImagesPage.tsx
var ImagesPage_assign = (undefined && undefined.__assign) || function () {
    ImagesPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ImagesPage_assign.apply(this, arguments);
};





















var ImagesPage_ImagesPage = function (_a) {
    var topicId = _a.topicId, showVisualInsights = _a.showVisualInsights, params = _a.params, location = _a.location, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var tabs = (0,react.useMemo)(function () { return [
        {
            id: 'tab-item-gallery',
            path: '/images',
            label: l('Gallery'),
            icon: {
                alt: 'gallery',
                src: '/static/images/images-page-icons/vi_gallery_icon.svg',
            },
        },
        {
            disabled: { rule: !showVisualInsights },
            id: 'tab-item-visual-insights',
            path: "/visual/".concat(VisualInsightsCharts.bubble),
            chartType: VisualInsightsCharts.bubble,
            label: l('Overview'),
            icon: {
                alt: 'overview',
                src: '/static/images/images-page-icons/vi_icon.svg',
            },
        },
        {
            disabled: { rule: !showVisualInsights },
            id: 'tab-item-engagement',
            path: "/visual/".concat(VisualInsightsCharts.engagement),
            chartType: VisualInsightsCharts.engagement,
            label: l('Engagement'),
            icon: {
                alt: 'engagement',
                src: '/static/images/images-page-icons/vi_engagement_icon.svg',
            },
        },
        {
            disabled: { rule: !showVisualInsights },
            id: 'tab-item-interconnections',
            path: "/visual/".concat(VisualInsightsCharts.graph),
            chartType: VisualInsightsCharts.graph,
            label: l('Relations'),
            icon: {
                alt: 'relations',
                src: '/static/images/images-page-icons/vi_graph_icon.svg',
            },
        },
        {
            disabled: { rule: !showVisualInsights },
            id: 'tab-item-logo-comparison',
            path: '/logo-comparison',
            label: l('Logo comparison'),
            icon: {
                alt: 'logo comparison',
                src: '/static/images/images-page-icons/vi_logo_comparison_icon.svg',
            },
        }
    ].filter(Boolean); }, [showVisualInsights]);
    (0,react.useEffect)(function () {
        if (location.pathname.endsWith('visual') || location.pathname.endsWith('visual/')) {
            updateLocation({
                pathname: "/themes/".concat(topicId, "/gallery").concat(tabs.find(function (tab) { return tab.chartType; }).path),
            });
        }
    }, []);
    var handleSelectTab = function (index) {
        var tId = params.id;
        var _a = tabs[index], id = _a.id, path = _a.path, chartType = _a.chartType;
        sendAnalyticalEvent({
            eventType: "Visual Insights: ".concat(id, " clicked"),
        });
        updateLocation({
            pathname: "/themes/".concat(tId, "/gallery").concat(path),
        });
    };
    var getSelectedTabIndex = function () {
        return tabs.findIndex(function (tab) { return location.pathname === "/themes/".concat(topicId, "/gallery").concat(tab.path); });
    };
    return ((0,jsx_runtime.jsx)(YoutubePolicyBottomMessage_YoutubePolicyBottomMessage, { children: (0,jsx_runtime.jsxs)("div", ImagesPage_assign({ className: classnames_default()(ImagesPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Visual Insights') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, ImagesPage_assign({ title: l('Visual Insights'), rightContent: (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)(TopicSearchFilter_TopicSearchFilter, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, { showTime: true, showPresetRanges: true })] }) }, { children: (0,jsx_runtime.jsx)(ThemeAnalyticsFilter_ThemeAnalyticsFilter, {}) })), (0,jsx_runtime.jsx)(ui_CardTabs_Tabs, { fullWidth: true, selectedTabIndex: getSelectedTabIndex(), options: tabs, onSelect: handleSelectTab }), (0,jsx_runtime.jsx)("div", ImagesPage_assign({ className: classnames_default()(ImagesPage.content) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })) }));
};
/* harmony default export */ const pages_ImagesPage_ImagesPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    showVisualInsights: (0,themes_selectors/* canUseImageRecognitionFeatures */.ZL)(state),
}); }, { updateLocation: routing_actions/* update */.yo, sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }))(ImagesPage_ImagesPage));

;// CONCATENATED MODULE: ./src/pages/ImagesPage/index.ts


;// CONCATENATED MODULE: ./src/pages/MentionPage/MentionPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionPage_MentionPage = ({"base":"BaHf108nojnZClPnliYX"});
;// CONCATENATED MODULE: ./src/pages/MentionPage/MentionPage.tsx
var MentionPage_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var MentionPage_assign = (undefined && undefined.__assign) || function () {
    MentionPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionPage_assign.apply(this, arguments);
};















var MentionPage_MODAL_MAX_WIDTH = 700;
var MentionPage = /** @class */ (function (_super) {
    MentionPage_extends(MentionPage, _super);
    function MentionPage() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleClose = function () {
            var pathArray = _this.props.location.pathname.split('/');
            var newPathname = pathArray.slice(0, -1).join('/');
            _this.props.update({
                pathname: newPathname,
            });
        };
        return _this;
    }
    MentionPage.prototype.componentDidMount = function () {
        this.props.fetchMention({ themeId: this.props.params.id, mentionId: this.props.params.mentionId });
    };
    MentionPage.prototype.render = function () {
        var _a = this.props, mention = _a.mention, loading = _a.loading, themeId = _a.themeId, showSystemTags = _a.showSystemTags;
        return ((0,jsx_runtime.jsx)(Modal/* default */.A, MentionPage_assign({ isOpen: true, fitted: true, maxWidth: MentionPage_MODAL_MAX_WIDTH, className: classnames_default()(MentionPage_MentionPage.base), onRequestClose: this.handleClose }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, MentionPage_assign({ loaded: !loading && mention }, { children: (0,jsx_runtime.jsx)(FullMention, { mention: mention, themeId: themeId, showSystemTags: showSystemTags, onClose: this.handleClose }) })) })));
    };
    return MentionPage;
}(react.PureComponent));
/* harmony default export */ const pages_MentionPage_MentionPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    loading: (0,mentionStream_selectors/* isOpenedMentionLoading */.wk)(state),
    mention: (0,mentionStream_selectors/* getOpenedMention */.oL)(state),
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    showSystemTags: (0,account_selectors/* getSubscriptionFeatureValue */.ts)(state, 'smartTags'),
}); }, {
    fetchMention: mentionStream_model/* mentionStreamModel */.K.action.fetchMention,
    update: routing_actions/* update */.yo,
}))(MentionPage));

;// CONCATENATED MODULE: ./src/pages/MentionPage/index.ts


;// CONCATENATED MODULE: ./src/containers/ReportsTable/ReportsTable.js






function ReportsTable_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ReportsTable_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ReportsTable_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ReportsTable_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/*
    eslint
    react/jsx-no-bind: 0
*/

























var getHumanReportPeriod = function getHumanReportPeriod(from, to) {
  var fromDate = new Date(from);
  var toDate = new Date(to);
  var areDatesWithinOneDay = fromDate.getDate() === toDate.getDate() && fromDate.getMonth() === toDate.getMonth() && fromDate.getFullYear() === toDate.getFullYear();
  if ((0,dateUtils/* isTimeSelected */.np)(fromDate) || (0,dateUtils/* isTimeSelected */.np)(toDate)) {
    return "".concat(moment_default()(fromDate).format('L'), " ").concat(moment_default()(fromDate).format('LT')) + " - ".concat(areDatesWithinOneDay ? '' : moment_default()(toDate).format('L'), " ").concat(moment_default()(toDate).format('LT'));
  }
  if (toDate - fromDate === dateUtils/* TIME */.E9.Day) {
    return moment_default()(toDate).subtract(1, 'days').format('L');
  }
  return "".concat(moment_default()(fromDate).format('L'), " - ").concat(moment_default()(toDate).subtract(1, 'days').format('L'));
};
var ReportsTable = /*#__PURE__*/function (_Component) {
  function ReportsTable() {
    var _this;
    (0,classCallCheck/* default */.A)(this, ReportsTable);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = ReportsTable_callSuper(this, ReportsTable, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleDownloadReport", function (downloadLink, reportType, reportFormat) {
      _this.props.sendAnalyticalEvent({
        eventType: 'Reports: report downloaded',
        properties: {
          reportType: reportType,
          reportFormat: reportFormat
        }
      });
      window.location.assign(downloadLink);
    });
    (0,defineProperty/* default */.A)(_this, "getReportTypeTranslation", function () {
      return {
        general: l('Dashboard', 'reports'),
        mentions: l('Mentions', 'reports'),
        mentionsWithFullText: l('Mentions (full text)', 'reports'),
        authors: l('Authors', 'reports')
      };
    });
    (0,defineProperty/* default */.A)(_this, "fetchMoreReports", function () {
      var themeId = _this.props.themeId;
      _this.fetchReportsTableData({
        themeId: themeId,
        more: true
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderTable", function () {
      var reports = _this.props.reports;
      if (!reports) {
        return null;
      }
      var rowConfig = {
        withHighlight: true,
        keyAccessor: function keyAccessor(row) {
          return row.id;
        }
      };
      var columnsConfig = [{
        id: 'userName',
        accessor: function accessor(row) {
          return row.userName;
        },
        header: function header() {
          return l('User');
        },
        maxWidth: '20vw',
        minWidth: '200px',
        sortable: true,
        cell: function cell(_ref) {
          var value = _ref.value,
            row = _ref.row;
          return /*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(UserAvatar/* default */.A, {
              round: true,
              size: 30,
              imageUrl: row.user && row.user.avatarUrl,
              email: row.user && row.user.email,
              name: row.user && row.user.fullName
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), value]
          });
        }
      }, {
        id: 'type',
        accessor: function accessor(row) {
          return row.reportType;
        },
        header: function header() {
          return l('Type');
        },
        maxWidth: '10vw',
        minWidth: '100px',
        width: 'auto',
        align: 'center',
        sortable: true,
        cell: function cell(_ref2) {
          var value = _ref2.value;
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: _this.getReportTypeTranslation()[value]
          });
        }
      }, {
        id: 'format',
        accessor: function accessor(row) {
          return row.reportFormat;
        },
        header: function header() {
          return l('Format');
        },
        maxWidth: '10vw',
        minWidth: '100px',
        width: 'auto',
        align: 'center',
        sortable: true,
        cell: function cell(_ref3) {
          var value = _ref3.value;
          return value && value === 'word' ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: "Word"
          }) : /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: "Excel"
          });
        }
      }, {
        id: 'dateCreated',
        accessor: function accessor(row) {
          return row.dateCreated;
        },
        header: function header() {
          return l('Date created');
        },
        maxWidth: '20vw',
        minWidth: '170px',
        align: 'center',
        sortable: true,
        cell: function cell(_ref4) {
          var value = _ref4.value;
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: moment_default()(value).format('lll')
          });
        }
      }, {
        id: 'period',
        accessor: function accessor(row) {
          return row.from;
        },
        header: function header() {
          return l('Period');
        },
        maxWidth: '20vw',
        minWidth: '190px',
        align: 'center',
        sortable: true,
        cell: function cell(_ref5) {
          var row = _ref5.row;
          return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: getHumanReportPeriod(row.from, row.to)
          });
        }
      }, {
        id: 'status',
        accessor: function accessor(row) {
          return row.status;
        },
        header: function header() {
          return l('Status');
        },
        maxWidth: '20vw',
        minWidth: '150px',
        align: 'center',
        cell: function cell(_ref6) {
          var value = _ref6.value,
            row = _ref6.row;
          if (value === 'generated') {
            return /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              size: "small",
              primary: true,
              label: l('Download'),
              onClick: function onClick() {
                return _this.handleDownloadReport(row.downloadLink, row.reportType, row.reportFormat);
              }
            });
          }
          if (value === 'error') {
            return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
              text: l('Report generation failed'),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "error",
                color: "red"
              })
            });
          }
          if (value === 'scheduled') {
            return /*#__PURE__*/(0,jsx_runtime.jsx)(Tooltip/* default */.A, {
              text: l('Generation of this report is in queue'),
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                type: "info",
                color: "gray"
              })
            });
          }
          return /*#__PURE__*/(0,jsx_runtime.jsx)(Progressbar/* default */.A, {
            visibleProgress: true,
            selected: row.progress,
            total: 1
          });
        }
      }];
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Table/* default */.A, {
        data: reports,
        columnsConfig: columnsConfig,
        rowConfig: rowConfig
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(ReportsTable, _Component);
  return (0,createClass/* default */.A)(ReportsTable, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.fetchReportsTableData({
        themeId: this.props.themeId
      });
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      var _this$props = this.props,
        themeId = _this$props.themeId,
        reports = _this$props.reports,
        loading = _this$props.loading;
      if (themeId !== prevProps.themeId) {
        this.fetchReportsTableData({
          themeId: themeId
        });
      }
      if (prevProps.loading && !loading) {
        this.props.sendAnalyticalEvent({
          eventType: 'Reports: page loaded',
          properties: {
            isEmpty: !reports.length
          }
        });
      }
    }
  }, {
    key: "fetchReportsTableData",
    value: function fetchReportsTableData(_ref7) {
      var themeId = _ref7.themeId,
        more = _ref7.more;
      this.props.fetchReports({
        themeId: themeId,
        more: more
      });
      this.props.fetchUsers({
        themeId: themeId
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        reports = _this$props2.reports,
        moreReportsAvailable = _this$props2.moreReportsAvailable,
        loading = _this$props2.loading;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Loader/* default */.A, {
        loaded: !loading,
        empty: !(reports !== null && reports !== void 0 && reports.length),
        emptyStateSize: "large",
        emptyStateTitle: l('You haven\'t created reports yet'),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
          noPadding: true,
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(index_es/* default */.A, {
            dataLength: reports.length,
            hasMore: moreReportsAvailable,
            next: this.fetchMoreReports,
            loader: /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.A, {}),
            style: {
              overflow: 'hidden',
              paddingBottom: '8px'
            },
            children: this.renderTable()
          })
        })
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const ReportsTable_ReportsTable = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    reports: (0,reports_selectors/* getReports */.Q4)(state),
    moreReportsAvailable: (0,reports_selectors/* hasMoreReports */.tQ)(state),
    loading: (0,reports_selectors/* getIsReportsLoading */.Ii)(state)
  };
}, {
  fetchUsers: users_model/* usersModel */.O.action.fetchUsers,
  fetchReports: reports_model/* reportsModel */.P.action.fetchReports,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}))(ReportsTable));
;// CONCATENATED MODULE: ./src/containers/ReportsTable/index.js

;// CONCATENATED MODULE: ./src/pages/ReportsPage/ReportsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ReportsPage = ({"base":"Kb0I9DuMksugjWIIqRd6","content":"XktfdcRsJ2p8evMVToQg"});
;// CONCATENATED MODULE: ./src/pages/ReportsPage/ReportsPage.tsx
var ReportsPage_assign = (undefined && undefined.__assign) || function () {
    ReportsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ReportsPage_assign.apply(this, arguments);
};






/* harmony default export */ const ReportsPage_ReportsPage = (function () { return ((0,jsx_runtime.jsxs)("div", ReportsPage_assign({ className: classnames_default()(ReportsPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Reports') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, { title: l('Reports') }), (0,jsx_runtime.jsx)("div", ReportsPage_assign({ className: classnames_default()(ReportsPage.content) }, { children: (0,jsx_runtime.jsx)(ReportsTable_ReportsTable, {}) }))] }))); });

;// CONCATENATED MODULE: ./src/pages/ReportsPage/index.ts


;// CONCATENATED MODULE: ./src/pages/NotFoundPage/NotFoundPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NotFoundPage = ({"base":"ISluouPFCmSkK65tbCA4","image":"S4JP9wKSHlduCi0uRTAK","text":"WqLtS4AkoiIzb1nRNws1"});
;// CONCATENATED MODULE: ./src/pages/NotFoundPage/NotFoundPage.tsx
var NotFoundPage_assign = (undefined && undefined.__assign) || function () {
    NotFoundPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return NotFoundPage_assign.apply(this, arguments);
};





var NotFoundPage_NotFoundPage = function () { return ((0,jsx_runtime.jsxs)("div", NotFoundPage_assign({ className: classnames_default()(NotFoundPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Not found') }), (0,jsx_runtime.jsx)("img", { src: "/static/images/404.svg", className: classnames_default()(NotFoundPage.image), alt: "404" }), (0,jsx_runtime.jsx)(H2/* default */.A, { children: l('404 error') }), (0,jsx_runtime.jsx)("p", NotFoundPage_assign({ className: classnames_default()(NotFoundPage.text) }, { children: l('Page not found') }))] }))); };
/* harmony default export */ const pages_NotFoundPage_NotFoundPage = (NotFoundPage_NotFoundPage);

;// CONCATENATED MODULE: ./src/pages/NotFoundPage/index.ts


// EXTERNAL MODULE: ./src/utils/statsBy.ts
var utils_statsBy = __webpack_require__("4ok8");
;// CONCATENATED MODULE: ./src/containers/SelectStatsBy/SelectStatsBy.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SelectStatsBy = ({"statsBy":"QYro_776TLfis1CkZkO3","disabled":"HXSbxE3y_9HZbAjRSlu2"});
;// CONCATENATED MODULE: ./src/containers/SelectStatsBy/SelectStatsBy.js











function SelectStatsBy_SelectStatsBy(_ref) {
  var setStatsBy = _ref.setStatsBy,
    currentTabName = _ref.currentTabName,
    _ref$isDisabled = _ref.isDisabled,
    isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
    statsBy = _ref.statsBy,
    sendAnalyticalEvent = _ref.sendAnalyticalEvent;
  var changeStatsBy = function changeStatsBy(_ref2) {
    var value = _ref2.value;
    sendAnalyticalEvent({
      eventType: '"Statistics by" changed.',
      properties: {
        selectedValue: value,
        tab: currentTabName
      }
    });
    setStatsBy({
      statsBy: value
    });
  };
  var options = (0,utils_statsBy/* getStatsByOptionsForAnalytics */.oW)();
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
      className: classnames_default()(SelectStatsBy.label, (0,defineProperty/* default */.A)({}, SelectStatsBy.disabled, isDisabled)),
      children: l('Statistics by:')
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Select/* default */.A, {
      isDisabled: isDisabled,
      isClearable: false,
      className: classnames_default()(SelectStatsBy.statsBy),
      value: options.find(function (opt) {
        return opt.value === statsBy;
      }),
      placeholder: l('default'),
      menuPosition: "top",
      options: options,
      onChange: changeStatsBy
    })]
  });
}
/* harmony default export */ const containers_SelectStatsBy_SelectStatsBy = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    statsBy: (0,stats_selectors/* getStatsBy */.b8)(state)
  };
}, {
  setStatsBy: stats_model/* statsModel */.l.action.setStatsBy,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent
})(SelectStatsBy_SelectStatsBy));
;// CONCATENATED MODULE: ./src/containers/SelectStatsBy/index.js

;// CONCATENATED MODULE: ./src/pages/dashboard/DashboardPage/utils.ts
var reportViewedPathTypes = {
    '/dashboard': 'overview',
    '/tags': 'tags',
    '/sentiment': 'sentiment',
    '/aspects': 'aspects',
    '/sources': 'sources',
    '/demographics': 'demographics',
    '/wordcloud': 'wordCloud',
    '/visual': 'visualInsights',
};
var getReportViewedType = function (locationPathname) {
    var tabPathName = locationPathname.slice(locationPathname.lastIndexOf('/'));
    return reportViewedPathTypes[tabPathName];
};
var createDelayedEvent = function () { return ({
    delayedEvent: undefined,
    remove: function () {
        clearTimeout(this.delayedEvent);
    },
    set: function (callback) {
        this.delayedEvent = setTimeout(callback, 5000);
    },
}); };

;// CONCATENATED MODULE: ./src/pages/dashboard/DashboardPage/DashboardPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DashboardPage = ({"base":"IkvysB5dQ8tKYr4PRkCj","content":"VtAgt4gCoK7ZTCW2AR7q","pageHeader":"w5PdaNzpuJbOhnmnEOWN"});
;// CONCATENATED MODULE: ./src/pages/dashboard/DashboardPage/DashboardPage.tsx
var DashboardPage_assign = (undefined && undefined.__assign) || function () {
    DashboardPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DashboardPage_assign.apply(this, arguments);
};

























var DashboardPage_DashboardPage = function (_a) {
    var _b;
    var visualInsightsEnabled = _a.visualInsightsEnabled, showDigest = _a.showDigest, showAspects = _a.showAspects, params = _a.params, router = _a.router, sendReportViewedEvent = _a.sendReportViewedEvent, updateLocation = _a.updateLocation, fetchVisualTags = _a.fetchVisualTags;
    var delayedReportViewedEvent = createDelayedEvent();
    (0,react.useEffect)(function () {
        setDelayedReportViewedEvent();
        return function () { return removeDelayedReportViewedEvent(); };
    }, []);
    (0,react.useEffect)(function () {
        removeDelayedReportViewedEvent();
        setDelayedReportViewedEvent();
    }, [router.location.pathname]);
    (0,react.useEffect)(function () {
        if (visualInsightsEnabled)
            fetchVisualTags();
    }, [visualInsightsEnabled]);
    var tabs = (0,react.useMemo)(function () {
        return [
            {
                path: '',
                label: l('Overview'),
                id: 'tab-item-overview',
            },
            {
                path: '/tags',
                label: l('Tags'),
                id: 'tab-item-tags',
            },
            {
                path: '/sentiment',
                label: l('Sentiment'),
                id: 'tab-item-sentiment',
            },
            {
                path: '/sources',
                label: l('Sources'),
                id: 'tab-item-sources',
            },
            {
                path: '/aspects',
                label: l('Aspects'),
                id: 'tab-item-aspects',
            },
            {
                path: '/wordcloud',
                label: l('Word cloud'),
                id: 'tab-item-word-cloud',
            },
            {
                path: '/compare',
                label: l('Comparison'),
                id: 'tab-item-compare',
            }
        ].filter(Boolean);
    }, [showAspects]);
    var handleSelectTab = function (index) {
        var tabSubPath = tabs[index].path;
        updateLocation({
            pathname: "/themes/".concat(params.id, "/dashboard").concat(tabSubPath),
        });
    };
    var setDelayedReportViewedEvent = function () {
        var reportType = getReportViewedType(location.pathname);
        var reportViewedAnalyticalCallback = function () { return sendReportViewedEvent({ reportType: reportType }); };
        delayedReportViewedEvent.set(reportViewedAnalyticalCallback);
    };
    var removeDelayedReportViewedEvent = function () {
        delayedReportViewedEvent.remove();
    };
    var _c = router.location, query = _c.query, pathname = _c.pathname;
    var selectedTabIndex = tabs.findIndex(function (tab) { return pathname === "/themes/".concat(params.id, "/dashboard").concat(tab.path); }) || 0;
    return ((0,jsx_runtime.jsx)(YoutubePolicyBottomMessage_YoutubePolicyBottomMessage, { children: (0,jsx_runtime.jsxs)("div", DashboardPage_assign({ className: classnames_default()(DashboardPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Analytics') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, DashboardPage_assign({ title: (0,jsx_runtime.jsxs)("span", DashboardPage_assign({ className: classnames_default()(DashboardPage.pageHeader) }, { children: [l('Analytics'), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { double: true }), showDigest && ((0,jsx_runtime.jsx)(other_DigestButton_DigestButton, { themeId: params.id, query: query, trackingLinkType: "dashboard_page" }))] })), rightContent: (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [tabs[selectedTabIndex].id !== 'tab-item-word-cloud' && ((0,jsx_runtime.jsx)(containers_SelectStatsBy_SelectStatsBy, { currentTabName: (_b = tabs[selectedTabIndex].id) === null || _b === void 0 ? void 0 : _b.slice('tab-item-'.length) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(TopicSearchFilter_TopicSearchFilter, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, { showTime: true, showPresetRanges: true })] }) }, { children: (0,jsx_runtime.jsx)(ThemeAnalyticsFilter_ThemeAnalyticsFilter, {}) })), (0,jsx_runtime.jsx)(ui_CardTabs_Tabs, { fullWidth: true, selectedTabIndex: selectedTabIndex, options: tabs, onSelect: handleSelectTab }), (0,jsx_runtime.jsx)("div", DashboardPage_assign({ className: classnames_default()(DashboardPage.content) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })) }));
};
/* harmony default export */ const dashboard_DashboardPage_DashboardPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    showDigest: (0,themes_selectors/* canGenerateDigest */.U8)(state),
    showAspects: (0,themes_selectors/* canShowAspects */.d2)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    fetchVisualTags: stats_model/* statsModel */.l.action.fetchVisualTags,
    sendReportViewedEvent: analytics_model/* analyticsStateModel */.j.action.sendReportViewedEvent,
}), react.memo)(DashboardPage_DashboardPage));

;// CONCATENATED MODULE: ./src/pages/dashboard/DashboardPage/index.ts


;// CONCATENATED MODULE: ./src/containers/topicEditing/ThemeCreated/ThemeCreated.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ThemeCreated = ({"base":"vvcN52i0bZhUsDYVv7Vi","header":"sKd0LOxJR9EgfK5fl4b6","topicsListButton":"wZFLrmBc8JN3Ug_sjpbm","collectionInfoContainer":"S0Douaodu2bEu5wrVwDJ","content":"ZnLKMTbs2HiL5kjulWWR","section":"r9sx08bei09sMzKiJAhZ","title":"y4wQemkVAV3bbaRXvYAp","list":"BUkWeVYdS6sGVYgHM231","extraInfo":"wgzAYeVZnWewAu5QHPC0","buttons":"u6oOEN9yb9V7Erg8JDuW"});
;// CONCATENATED MODULE: ./src/containers/topicEditing/ThemeCreated/ThemeCreated.tsx
var ThemeCreated_assign = (undefined && undefined.__assign) || function () {
    ThemeCreated_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemeCreated_assign.apply(this, arguments);
};










var ThemeCreated_ThemeCreated = function (_a) {
    var themeId = _a.themeId;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, ThemeCreated_assign({ className: ThemeCreated.base }, { children: [(0,jsx_runtime.jsxs)(H2/* default */.A, ThemeCreated_assign({ className: ThemeCreated.header }, { children: [l('Topic created!'), " ", (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check", color: "green" })] })), (0,jsx_runtime.jsxs)("div", ThemeCreated_assign({ className: ThemeCreated.collectionInfoContainer }, { children: [(0,jsx_runtime.jsxs)(H1/* default */.A, ThemeCreated_assign({ className: ThemeCreated.header }, { children: [l('Data collection started'), " ", (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check", color: "green" })] })), (0,jsx_runtime.jsxs)("div", ThemeCreated_assign({ className: ThemeCreated.content }, { children: [l('We collect automatically:'), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("ul", ThemeCreated_assign({ className: ThemeCreated.list }, { children: [(0,jsx_runtime.jsx)("li", { children: l('Real time data - all mentions starting from now') }), (0,jsx_runtime.jsx)("li", { children: l('Historical data - mentions over the last month') })] }))] }))] })), (0,jsx_runtime.jsx)("div", ThemeCreated_assign({ className: ThemeCreated.buttons }, { children: (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, { children: [(0,jsx_runtime.jsx)(dist/* Link */.N_, ThemeCreated_assign({ to: "/themes" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, ghost: true, size: "large", label: l('Go to the topics list'), className: ThemeCreated.topicsListButton }) })), (0,jsx_runtime.jsx)(dist/* Link */.N_, ThemeCreated_assign({ to: "/themes/".concat(themeId, "/mentions?isAfterTopicCreation=true") }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "large", label: l('Show mentions') }) }))] }) }))] })));
};
/* harmony default export */ const topicEditing_ThemeCreated_ThemeCreated = (ThemeCreated_ThemeCreated);

;// CONCATENATED MODULE: ./src/containers/topicEditing/CreateTheme/CreateTheme.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CreateTheme = ({"base":"y0cp3Kucq12JA8VVXeQT","back":"UN5KpQ2TVSrCsS7A6BVU"});
;// CONCATENATED MODULE: ./src/containers/topicEditing/CreateTheme/CreateTheme.tsx
var CreateTheme_assign = (undefined && undefined.__assign) || function () {
    CreateTheme_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CreateTheme_assign.apply(this, arguments);
};
var CreateTheme_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var CreateTheme_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var CreateTheme_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var CreateTheme_CreateTheme = function (_a) {
    var visualInsightsEnabled = _a.visualInsightsEnabled, sendCreateTopicSuccess = _a.sendCreateTopicSuccess;
    var _b = CreateTheme_read((0,react.useState)(TopicEditor.empty()), 2), topic = _b[0], setTopic = _b[1];
    var _c = CreateTheme_read((0,react.useState)(false), 2), previewLoading = _c[0], setPreviewLoading = _c[1];
    var _d = CreateTheme_read((0,react.useState)(false), 2), previewLoaded = _d[0], setPreviewLoaded = _d[1];
    var _e = CreateTheme_read((0,react.useState)(false), 2), topicCreating = _e[0], setTopicCreating = _e[1];
    var _f = CreateTheme_read((0,react.useState)(null), 2), createdTopic = _f[0], setCreatedTopic = _f[1];
    var navigate = (0,react_router_dist/* useNavigate */.Zp)();
    (0,react.useEffect)(function () {
        if (visualInsightsEnabled) {
            setTopic(function (t) {
                var newTopic = t.clone();
                newTopic.isVIEnabled = true;
                return newTopic;
            });
        }
    }, []);
    var handleBack = function () {
        navigate('/themes');
    };
    var updateTopic = function (values) {
        setTopic(function (t) {
            var newTopic = t.updateTopic(values).clone();
            return newTopic;
        });
    };
    var fetchPreview = function () { return CreateTheme_awaiter(void 0, void 0, void 0, function () {
        var newTopic;
        return CreateTheme_generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    setPreviewLoading(true);
                    setPreviewLoaded(false);
                    return [4 /*yield*/, topic.fetchPreview()];
                case 1:
                    newTopic = _a.sent();
                    setTopic(newTopic.clone());
                    setPreviewLoading(false);
                    setPreviewLoaded(true);
                    return [2 /*return*/];
            }
        });
    }); };
    var createTopic = function () { return CreateTheme_awaiter(void 0, void 0, void 0, function () {
        var t, e_1;
        var _a;
        return CreateTheme_generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 4]);
                    setTopicCreating(true);
                    return [4 /*yield*/, apiSingleton/* default */.A.themes.create(topic.toApi())];
                case 1:
                    t = _b.sent();
                    setTopicCreating(false);
                    setCreatedTopic(t);
                    if (!((_a = t === null || t === void 0 ? void 0 : t._links) === null || _a === void 0 ? void 0 : _a.historyAutoStart.denied)) {
                        apiSingleton/* default */.A.themes.collectHistory({ themeId: t.id });
                    }
                    sendCreateTopicSuccess(t);
                    return [2 /*return*/, { success: true }];
                case 2:
                    e_1 = _b.sent();
                    return [4 /*yield*/, (0,utils_alert/* default */.A)({
                            title: l('An error has occurred'),
                            message: l('Topic was not created. Please try again later.'),
                        })];
                case 3:
                    _b.sent();
                    setTopicCreating(false);
                    return [2 /*return*/, { success: false }];
                case 4: return [2 /*return*/];
            }
        });
    }); };
    if (createdTopic) {
        return (0,jsx_runtime.jsx)(topicEditing_ThemeCreated_ThemeCreated, { themeId: createdTopic.id });
    }
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, CreateTheme_assign({ className: CreateTheme.base }, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { className: CreateTheme.back, iconType: "back", size: 20, onClick: handleBack }), (0,jsx_runtime.jsx)(TopicEditorProvider, CreateTheme_assign({ topic: topic, updateTopic: updateTopic, applyLoading: topicCreating, previewLoaded: previewLoaded, previewLoading: previewLoading }, { children: (0,jsx_runtime.jsx)(components_View_View, { onPreview: fetchPreview, onApply: createTopic }) }))] })));
};
/* harmony default export */ const topicEditing_CreateTheme_CreateTheme = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    visualInsightsEnabled: (0,account_selectors/* isVisualInsightsEnabled */.PP)(state),
}); }, {
    sendCreateTopicSuccess: analytics_model/* analyticsStateModel */.j.action.sendCreateTopicSuccess,
})(CreateTheme_CreateTheme));

;// CONCATENATED MODULE: ./src/containers/topicEditing/CreateTheme/index.ts


;// CONCATENATED MODULE: ./src/pages/CreateThemePage/CreateThemePage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CreateThemePage = ({"base":"luTAP5qB2c66VN75NeYL","content":"U9qz97rNGaalEErTI4Pa"});
;// CONCATENATED MODULE: ./src/pages/CreateThemePage/CreateThemePage.tsx
var CreateThemePage_assign = (undefined && undefined.__assign) || function () {
    CreateThemePage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CreateThemePage_assign.apply(this, arguments);
};








var CreateThemePage_CreateThemePage = function (_a) {
    var sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({ eventType: 'Topic creation: page opened' });
    }, []);
    return ((0,jsx_runtime.jsxs)("div", CreateThemePage_assign({ className: classnames_default()(CreateThemePage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Create topic') }), (0,jsx_runtime.jsx)("div", CreateThemePage_assign({ className: classnames_default()(CreateThemePage.content) }, { children: (0,jsx_runtime.jsx)(topicEditing_CreateTheme_CreateTheme, {}) }))] })));
};
/* harmony default export */ const pages_CreateThemePage_CreateThemePage = ((0,react_redux/* connect */.Ng)(null, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(CreateThemePage_CreateThemePage));

;// CONCATENATED MODULE: ./src/pages/CreateThemePage/index.ts


;// CONCATENATED MODULE: ./src/pages/PublicPageLayout/PublicPageLayout.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const PublicPageLayout = ({"base":"cxtAi9Lmj70sVcN0FN0Q","logo":"GYY0xz4O_qtuZZ3Oicxl","content":"xP0e96OW2vO2zOo1aVLB"});
;// CONCATENATED MODULE: ./src/pages/PublicPageLayout/PublicPageLayout.tsx
var PublicPageLayout_assign = (undefined && undefined.__assign) || function () {
    PublicPageLayout_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PublicPageLayout_assign.apply(this, arguments);
};







/* harmony default export */ const PublicPageLayout_PublicPageLayout = (function (_a) {
    var _b = _a.shouldShowLogo, shouldShowLogo = _b === void 0 ? true : _b;
    return ((0,jsx_runtime.jsxs)("div", PublicPageLayout_assign({ className: classnames_default()(PublicPageLayout.base) }, { children: [shouldShowLogo
                && ((0,jsx_runtime.jsx)("img", { alt: "", src: (0,colorHandler/* isDarkTheme */.g4)() ? '/static/images/logo/mainVersion/logo_outline_white.svg' : '/static/images/logo/mainVersion/logo_outline.svg', className: classnames_default()(PublicPageLayout.logo) })), (0,jsx_runtime.jsx)("div", PublicPageLayout_assign({ className: classnames_default()(PublicPageLayout.content) }, { children: (0,jsx_runtime.jsx)(react.Suspense, PublicPageLayout_assign({ fallback: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}) }, { children: (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }) })) }))] })));
});

;// CONCATENATED MODULE: ./src/pages/PublicPageLayout/index.ts


// EXTERNAL MODULE: ./src/components/charts/Line/index.ts + 1 modules
var Line = __webpack_require__("+GA5");
;// CONCATENATED MODULE: ./src/containers/dashboard/TagsLineChart/TagsLineChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagsLineChart = ({"base":"luff4OzDGxLYJoaj4FVo"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TagsLineChart/TagsLineChart.tsx
var TagsLineChart_assign = (undefined && undefined.__assign) || function () {
    TagsLineChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagsLineChart_assign.apply(this, arguments);
};

















var CHART_LEGENT_ITEMS_COUNT = 15;
var TagsLineChart_TagsLineChart = function (_a) {
    var isFetching = _a.isFetching, dynamics = _a.dynamics, themeId = _a.themeId, interval = _a.interval, updateFilter = _a.updateFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendChartExportedEvent = _a.sendChartExportedEvent;
    (0,react.useEffect)(function () {
        if (!isFetching && !(dynamics === null || dynamics === void 0 ? void 0 : dynamics.length)) {
            sendAnalyticalEvent({ eventType: 'Empty state: tags dashboard' });
        }
    }, [dynamics]);
    var handleDatePointClick = function (date, tag) {
        updateFilter({
            name: 'tag',
            value: [tag],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: TagsLineChart_assign({}, getDataPointPeriod(date, interval)),
            },
        });
    };
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: TagsLineChart_assign(TagsLineChart_assign({}, properties), { chartType: 'Tags Dynamics' }),
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!dynamics)
            return null;
        return dynamics
            .map(function (v) {
            var dates = v.dates;
            return {
                dates: dates,
                type: 'spline',
                name: v.name,
                key: v.key,
                color: v.color,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(dates[0].date).getTime(),
                pointInterval: interval,
                data: dates.map(function (point) { return point.count; }),
            };
        })
            .filter(function (_a) {
            var key = _a.key;
            return key;
        })
            .map(function (serie, index) { return (TagsLineChart_assign(TagsLineChart_assign({}, serie), { showInLegend: index < CHART_LEGENT_ITEMS_COUNT })); });
    }, [dynamics]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TagsLineChart_assign({ className: classnames_default()(TagsLineChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TagsLineChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Line/* default */.A, { title: l('Tags Dynamics'), series: series, 
                // @ts-ignore
                getTooltipFormatter: chart/* splineTooltipFormatter */.h, onClick: handleDatePointClick, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_TagsLineChart_TagsLineChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('tagsDynamics', {
    aggregations: {
        tags: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}, false, function (state) { return ({
    dynamics: (0,stats_selectors/* getTagDynamics */.HQ)(state),
}); }), react.memo)(TagsLineChart_TagsLineChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/TagsLineChart/index.ts


;// CONCATENATED MODULE: ./src/components/charts/Bar/Bar.tsx
var Bar_assign = (undefined && undefined.__assign) || function () {
    Bar_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Bar_assign.apply(this, arguments);
};
var Bar_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





var BarChart = function (_a) {
    var _b = _a.isColumn, isColumn = _b === void 0 ? true : _b, title = _a.title, series = _a.series, _c = _a.configOptions, configOptions = _c === void 0 ? {} : _c, onClick = _a.onClick, onSendChartExportedEvent = _a.onSendChartExportedEvent;
    var _d = Bar_read((0,react.useState)(null), 2), chartData = _d[0], setChartData = _d[1];
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({ properties: { fileType: fileType } });
    };
    var config = (0,react.useMemo)(function () {
        if (!series) {
            return [];
        }
        return Bar_assign({ chart: {
                type: isColumn ? 'column' : 'bar',
            }, title: {
                text: title,
                style: {
                    display: 'none',
                },
            }, subtitle: {
                text: null,
            }, yAxis: [{
                    title: {
                        text: null,
                    },
                }], tooltip: chart/* TOOLTIPS */.H.bar, plotOptions: {
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return onClick(e.point.category, e.point.series.options.key); },
                        },
                    },
                },
            }, series: series }, configOptions);
    }, [series, configOptions]);
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: title, chartRef: chartData, onChartExport: onChartExport }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData })] }));
};
/* harmony default export */ const Bar = (BarChart);

;// CONCATENATED MODULE: ./src/components/charts/Bar/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/TagsBarChart/TagsBarChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagsBarChart = ({"base":"OYaE18Wp5PVTg236bs5Q"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TagsBarChart/TagsBarChart.tsx
var TagsBarChart_assign = (undefined && undefined.__assign) || function () {
    TagsBarChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagsBarChart_assign.apply(this, arguments);
};














var TagsBarChart_TagsBarChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, stats = _a.stats, statsBy = _a.statsBy, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleTagClick = function (tagId) {
        updateFilter({
            name: 'tag',
            value: [tagId],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: TagsBarChart_assign(TagsBarChart_assign({}, properties), { chartType: 'Total tagged mentions' }),
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!stats)
            return null;
        return [{
                data: stats.map(function (stat) { return stat.total; }),
                colorByPoint: true,
                showInLegend: false,
            }];
    }, [stats]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TagsBarChart_assign({ className: classnames_default()(TagsBarChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TagsBarChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Bar, { title: l('Total tagged mentions'), series: series, configOptions: {
                    xAxis: {
                        categories: stats === null || stats === void 0 ? void 0 : stats.map(function (stat) { return stat.name; }),
                    },
                    tooltip: {
                        crosshairs: true,
                        pointFormat: "".concat(utils_statsBy/* AVAILABLE_STATS_BY */.wd[statsBy].selectLabel(), ": <b>{point.y:,.0f}</b><br/>"),
                    },
                    plotOptions: {
                        series: {
                            cursor: 'pointer',
                            point: {
                                events: {
                                    click: function (e) { return handleTagClick(stats.find(function (stat) { return stat.name === e.point.category; }).id); },
                                },
                            },
                        },
                    },
                }, onClick: function () { }, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_TagsBarChart_TagsBarChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('tagsBarChart', {
    aggregations: {
        tags: {},
    },
}, false, function (state) { return ({
    stats: (0,stats_selectors/* getTagsCounts */.mz)(state),
}); }), react.memo)(TagsBarChart_TagsBarChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/TagsBarChart/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/TagsSentimentChart/TagsSentimentChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagsSentimentChart = ({"base":"Q6T4iK5hxN6bR8fNPPnw"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TagsSentimentChart/TagsSentimentChart.tsx
var TagsSentimentChart_assign = (undefined && undefined.__assign) || function () {
    TagsSentimentChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagsSentimentChart_assign.apply(this, arguments);
};















var TagsSentimentChart_TagsSentimentChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, stats = _a.stats, updateFilterBatched = _a.updateFilterBatched, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleClick = function (tag, sentiment) {
        updateFilterBatched({
            updates: [
                { name: 'tag', value: [tag] },
                { name: 'sentiment', value: [sentiment] }
            ],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    var handleChartExport = function (properties) {
        sendChartExportedEvent({
            properties: TagsSentimentChart_assign(TagsSentimentChart_assign({}, properties), { chartType: 'Tags by sentiment' }),
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!stats)
            return null;
        var sentimentColors = (0,utils_colors/* getSentimentColors */.ID)();
        return [
            {
                name: l('Positive'),
                key: 'positive',
                data: stats.map(function (stat) { return stat.sentiment.positive; }),
                color: sentimentColors.positive,
            },
            {
                name: l('Neutral'),
                key: 'neutral',
                data: stats.map(function (stat) { return stat.sentiment.neutral; }),
                color: sentimentColors.neutral,
            },
            {
                name: l('Negative'),
                key: 'negative',
                data: stats.map(function (stat) { return stat.sentiment.negative; }),
                color: sentimentColors.negative,
            }
        ];
    }, [stats]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TagsSentimentChart_assign({ className: classnames_default()(TagsSentimentChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TagsSentimentChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Bar, { title: l('Tags by sentiment'), series: series, configOptions: {
                    xAxis: {
                        categories: stats === null || stats === void 0 ? void 0 : stats.map(function (stat) { return stat.name; }),
                        crosshair: true,
                    },
                    tooltip: chart/* TOOLTIPS */.H.column,
                    plotOptions: {
                        column: {
                            stacking: 'percent',
                        },
                        series: {
                            cursor: 'pointer',
                            point: {
                                events: {
                                    click: function (e) {
                                        var _a;
                                        return handleClick((_a = stats.find(function (stat) { return stat.name === e.point.category; })) === null || _a === void 0 ? void 0 : _a.id, e.point.series.options.key);
                                    },
                                },
                            },
                            states: {
                                inactive: {
                                    opacity: 0.8,
                                },
                            },
                        },
                    },
                }, onClick: function () { }, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_TagsSentimentChart_TagsSentimentChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('tagsSentimentChart', {
    aggregations: {
        tags: {
            aggregations: {
                sentiment: {},
            },
        },
    },
}, false, function (state) { return ({
    stats: (0,stats_selectors/* getTagsSentiment */.fy)(state),
}); }), react.memo)(TagsSentimentChart_TagsSentimentChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/TagsSentimentChart/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/TagSelector/TagSelector.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagSelector = ({"base":"MPL0CDZXPsmLz3cRdufa","title":"O95DG9NV9r2hSwFpUFzg","inputContainer":"dyO7ocse5XDAcVRkW9er","chooseAll":"bJ6QwFjvIhn8dOTC04Fe","fadeIn":"HDzEdYSjVhBkRYAq68hY","chooseAllLabel":"NrwMCjEzZBK9okaNCSLB","emptyState":"UvxQmcPVxo_VEMnFcXz2"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TagSelector/TagSelector.tsx
var TagSelector_assign = (undefined && undefined.__assign) || function () {
    TagSelector_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagSelector_assign.apply(this, arguments);
};
var TagSelector_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var TagSelector_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};



















var TagSelector_TagSelector = function (_a) {
    var isFetching = _a.isFetching, query = _a.query, tags = _a.tags;
    var _b = TagSelector_read((0,react.useState)(''), 2), search = _b[0], setSearch = _b[1];
    var _c = TagSelector_read((0,dist/* useSearchParams */.ok)(), 2), _ = _c[0], setSearchParams = _c[1];
    function getSelectedTags() {
        if (!(query === null || query === void 0 ? void 0 : query.selectedTags))
            return [];
        if (typeof query.selectedTags === 'string') {
            return [Number(query.selectedTags)];
        }
        return query.selectedTags;
    }
    (0,react.useEffect)(function () {
        if (!(tags === null || tags === void 0 ? void 0 : tags.length))
            return;
        var selectedTags = getSelectedTags();
        if (tags.some(function (tag) { return selectedTags.find(function (st) { return Number(st) === Number(tag.id); }); }))
            return;
        setSearchParams((0,utils_routing/* queryToSearch */.w)(TagSelector_assign(TagSelector_assign({}, query), { selectedTags: tags.slice(0, 5).map(function (tag) { return tag.id; }) })));
    }, [tags]);
    var handleSelectAllTags = function () {
        var selectedTags = getSelectedTags();
        var visibleTagIds = getVisibleTags().map(function (tag) { return tag.id; });
        setSearchParams((0,utils_routing/* queryToSearch */.w)(TagSelector_assign(TagSelector_assign({}, query), { selectedTags: selectedTags.concat(visibleTagIds) })));
    };
    var handleSelectTag = function (tagId) {
        var selectedTags = getSelectedTags();
        var newTags = selectedTags.includes(String(tagId))
            ? selectedTags.filter(function (id) { return id !== String(tagId); })
            : TagSelector_spreadArray(TagSelector_spreadArray([], TagSelector_read(selectedTags), false), [tagId], false);
        if (newTags.length === 0) {
            return;
        }
        setSearchParams((0,utils_routing/* queryToSearch */.w)(TagSelector_assign(TagSelector_assign({}, query), { selectedTags: newTags })));
    };
    var getVisibleTags = function () {
        if (search) {
            return tags.filter(function (tag) { return tag
                .name
                .toLowerCase()
                .includes(search.toLowerCase()); });
        }
        return tags;
    };
    var selectedTags = getSelectedTags();
    var visibleTags = getVisibleTags();
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TagSelector_assign({ className: TagSelector.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TagSelector_assign({ loaded: !isFetching, empty: !(tags === null || tags === void 0 ? void 0 : tags.length), emptyState: ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: TagSelector.emptyState, image: "/static/images/tag-list-empty.svg", title: l('There are no tags for the selected period or filters', 'tagDashboard'), message: l('Select another period or filters to see analytics', 'tagDashboard') })) }, { children: function () { return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H2/* default */.A, TagSelector_assign({ className: TagSelector.title }, { children: l('Choose tags') })), (0,jsx_runtime.jsxs)("div", TagSelector_assign({ className: classnames_default()(TagSelector.inputContainer) }, { children: [tags && tags.length > 10
                                && ((0,jsx_runtime.jsx)(TextField/* default */.A, { leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), placeholder: l('Search'), value: search, onChange: setSearch })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), search && visibleTags.length !== 0
                                && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("a", TagSelector_assign({ role: "presentation", className: classnames_default()(TagSelector.chooseAll), onClick: handleSelectAllTags }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check-all" }), ' ', (0,jsx_runtime.jsx)("span", TagSelector_assign({ className: classnames_default()(TagSelector.chooseAllLabel) }, { children: l('Select all found tags') }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] }))] })), (0,jsx_runtime.jsx)(Tag/* TagList */.LY, { children: visibleTags.map(function (tag) {
                            return (0,jsx_runtime.jsx)(Tag/* default */.Ay, { id: tag.id, selectable: true, selected: selectedTags.includes(String(tag.id)), label: tag.name, color: tag.color, onClick: handleSelectTag }, tag.id);
                        }) })] })); } })) })));
};
/* harmony default export */ const dashboard_TagSelector_TagSelector = ((0,redux/* compose */.Zz)((0,withTopicStats/* default */.A)('tagsSelector', {
    aggregations: {
        tags: {},
    },
}, false, function (state) { return ({
    tags: (0,stats_selectors/* getTags */.Q2)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
}); }))(TagSelector_TagSelector));

;// CONCATENATED MODULE: ./src/containers/dashboard/TagSelector/index.ts


;// CONCATENATED MODULE: ./src/pages/dashboard/TagsPage/TagsPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TagsPage = ({"base":"Lwdxj5aQo2RdURplr4L9","emptyState":"uyfsP08hFJgcUCYZwIM5","dynamics":"WklhVXWS1oF1U7DVqdMM","distribution":"xy_vxGY7sTKHfbmwdFh4"});
;// CONCATENATED MODULE: ./src/pages/dashboard/TagsPage/TagsPage.tsx
var TagsPage_assign = (undefined && undefined.__assign) || function () {
    TagsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagsPage_assign.apply(this, arguments);
};

















var TagsPage_TagsPage = function (_a) {
    var tagsLoading = _a.tagsLoading, tags = _a.tags, topicId = _a.topicId, fetchTags = _a.fetchTags;
    (0,react.useEffect)(function () {
        fetchTags({ topicId: topicId });
    }, [topicId]);
    return ((0,jsx_runtime.jsx)("div", TagsPage_assign({ className: classnames_default()(TagsPage.base) }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, TagsPage_assign({ loaded: !tagsLoading, empty: !tags.length, emptyState: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(TagsPage.emptyState), image: "/static/images/tag-list-empty.svg", title: l('There are no tags in this topic yet', 'tagDashboard'), message: (0,jsx_runtime.jsxs)("span", { children: [l('Learn how to segment mentions with tags in the', 'tagDashboard'), ' ', (0,jsx_runtime.jsx)("a", TagsPage_assign({ className: classnames_default()(TagsPage.link), target: "_blank", rel: "noopener noreferrer", href: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.WHAT_ARE_TAGS_AND_HOW_TO_USE) }, { children: l('knowledge base', 'tagDashboard') }))] }) }) }, { children: [(0,jsx_runtime.jsx)(dashboard_TagSelector_TagSelector, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", TagsPage_assign({ className: classnames_default()(TagsPage.dynamics) }, { children: (0,jsx_runtime.jsx)(dashboard_TagsLineChart_TagsLineChart, {}) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", TagsPage_assign({ className: classnames_default()(TagsPage.distribution) }, { children: [(0,jsx_runtime.jsx)(dashboard_TagsBarChart_TagsBarChart, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(dashboard_TagsSentimentChart_TagsSentimentChart, {})] }))] })) })));
};
/* harmony default export */ const dashboard_TagsPage_TagsPage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    tags: (0,tags_selectors/* getTags */.Q2)(state),
    tagsLoading: (0,tags_selectors/* getTagsLoading */.Od)(state),
}); }, {
    fetchTags: tags_model/* tagsModel */.J.action.fetchTags,
})(TagsPage_TagsPage));

;// CONCATENATED MODULE: ./src/pages/dashboard/TagsPage/index.ts


;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/components/MenuLink.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MenuLink = ({"base":"DqklyZuTGiacCCzLS_Gi","selected":"gmSTSXkbEqyNm2MeZBUv","label":"cBLUihQlNUh_dv6UQ9NQ"});
;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/components/MenuLink.tsx
var MenuLink_assign = (undefined && undefined.__assign) || function () {
    MenuLink_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MenuLink_assign.apply(this, arguments);
};





var MenuLink_MenuLink = (function (_a) {
    var _b;
    var to = _a.to, label = _a.label, selected = _a.selected, name = _a.name;
    return ((0,jsx_runtime.jsx)(dist/* NavLink */.k2, MenuLink_assign({ to: to, className: classnames_default()(MenuLink.base, (_b = {}, _b[MenuLink.selected] = selected, _b)), "data-hook": "menu-item-".concat(name) }, { children: (0,jsx_runtime.jsx)("div", MenuLink_assign({ className: classnames_default()(MenuLink.label) }, { children: label })) })));
});
/* harmony default export */ const components_MenuLink = ((0,react.memo)(MenuLink_MenuLink));

;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/components/ThemeSettingsMenu.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ThemeSettingsMenu = ({"menuContainer":"JIRS570UO0ndZEWd_Trj","list":"uoH79xu2cKWGwuFyH3lU"});
;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/components/ThemeSettingsMenu.tsx
var ThemeSettingsMenu_assign = (undefined && undefined.__assign) || function () {
    ThemeSettingsMenu_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemeSettingsMenu_assign.apply(this, arguments);
};












var MENU_OFFSET_TOP = 68;
var ThemeSettingsMenu_ThemeSettingsMenu = function (_a) {
    var themeId = _a.themeId, query = _a.query, router = _a.router, showAuditTab = _a.showAuditTab, showHistoryTab = _a.showHistoryTab, showChannelsTab = _a.showChannelsTab, showAddMentionTab = _a.showAddMentionTab, showIntegrationsTab = _a.showIntegrationsTab, showAdministrationTab = _a.showAdministrationTab, showMentionWallCustomizationTab = _a.showMentionWallCustomizationTab;
    var isActive = router.isActive, createPath = router.createPath;
    var basePath = "/themes/".concat(themeId, "/settings");
    var baseQuery = getBaseQuery(query);
    function renderMenu() {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(showMentionWallCustomizationTab || showAuditTab) && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)(Card/* default */.A, ThemeSettingsMenu_assign({ noPadding: true, className: ThemeSettingsMenu.list }, { children: [showAuditTab && ((0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                        pathname: "".concat(basePath, "/audit"),
                                        query: baseQuery,
                                    }), selected: isActive("".concat(basePath, "/audit")), label: (0,jsx_runtime.jsxs)("span", { children: [l('Audit'), " ", (0,jsx_runtime.jsx)(Badge/* default */.A.Support, {})] }), name: "audit" })), showMentionWallCustomizationTab && ((0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                        pathname: "".concat(basePath, "/mention_wall"),
                                        query: baseQuery,
                                    }), selected: isActive("".concat(basePath, "/mention_wall")), label: (0,jsx_runtime.jsxs)("span", { children: [l('Mention wall'), " ", (0,jsx_runtime.jsx)(Badge/* default */.A.Support, {})] }), name: "mention-wall" }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { className: "simplifiedViewHidden" })] })), (0,jsx_runtime.jsxs)(Card/* default */.A, ThemeSettingsMenu_assign({ noPadding: true, className: ThemeSettingsMenu.list }, { children: [(0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/general")), label: l('General'), name: "general" }), showHistoryTab && ((0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/collection"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/collection")), label: l('History collection'), name: "history" })), (0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/rules"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/rules")), label: l('Rules'), name: "rules" }), (0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/tags"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/tags")), label: l('Tags'), name: "tags" }), showIntegrationsTab && ((0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/integrations"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/integrations")), label: l('Integrations'), name: "integrations" })), (0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/excluded"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/excluded")), label: l('Excluded'), name: "excluded" }), showAddMentionTab && ((0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/add_mention"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/add_mention")), label: l('Add mention'), name: "add-mention" })), (0,jsx_runtime.jsx)(components_MenuLink, { to: showChannelsTab && createPath({
                                pathname: "".concat(basePath, "/channels"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/channels")), label: (0,jsx_runtime.jsx)(Tooltip/* default */.A, ThemeSettingsMenu_assign({ position: "top right", text: !showChannelsTab && (0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: l('Channels cannot be added to a sampled topic') }) }, { children: l('Channels') })), name: "channels" }), (0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/deletion"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/deletion")), label: l('Delete topic'), name: "deletion" }), showAdministrationTab && ((0,jsx_runtime.jsx)(components_MenuLink, { to: createPath({
                                pathname: "".concat(basePath, "/administration"),
                                query: baseQuery,
                            }), selected: isActive("".concat(basePath, "/administration")), label: (0,jsx_runtime.jsx)("span", { children: l('Administration') }), name: "admin" }))] }))] }));
    }
    return (0,mobile/* isSimplifiedView */.O7)() ? ((0,jsx_runtime.jsx)("div", ThemeSettingsMenu_assign({ className: classnames_default()(ThemeSettingsMenu.menuContainer) }, { children: (0,jsx_runtime.jsx)("div", { children: renderMenu() }) }))) : ((0,jsx_runtime.jsx)(Sticky/* default */.A, ThemeSettingsMenu_assign({ top: MENU_OFFSET_TOP, className: classnames_default()(ThemeSettingsMenu.menuContainer) }, { children: renderMenu() })));
};
/* harmony default export */ const components_ThemeSettingsMenu = ((0,withRouter/* withRouter */.y)(ThemeSettingsMenu_ThemeSettingsMenu));

;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/ThemeSettingsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ThemeSettingsPage = ({"base":"JsxG35dmHuVZ0cFe_QD8","page":"X_32uqtt9VL7STvdYHSO","content":"G4zMohKhzNEbTWVRkvlv"});
;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/ThemeSettingsPage.tsx
var ThemeSettingsPage_assign = (undefined && undefined.__assign) || function () {
    ThemeSettingsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemeSettingsPage_assign.apply(this, arguments);
};















var ThemeSettingsPage_ThemeSettingsPage = function (_a) {
    var themeId = _a.themeId, query = _a.query, isYoutubeReviewAccount = _a.isYoutubeReviewAccount, showHistoryTab = _a.showHistoryTab, showChannelsTab = _a.showChannelsTab, showAuditTab = _a.showAuditTab, showIntegrationsTab = _a.showIntegrationsTab, showAddMentionTab = _a.showAddMentionTab, showAdministrationTab = _a.showAdministrationTab, showMentionWallCustomizationTab = _a.showMentionWallCustomizationTab, samplingRate = _a.samplingRate;
    return ((0,jsx_runtime.jsxs)("div", ThemeSettingsPage_assign({ className: classnames_default()(ThemeSettingsPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Settings') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, { title: l('Settings') }), (0,jsx_runtime.jsxs)("div", ThemeSettingsPage_assign({ className: classnames_default()(ThemeSettingsPage.page) }, { children: [(0,jsx_runtime.jsx)("div", ThemeSettingsPage_assign({ className: classnames_default()(ThemeSettingsPage.content) }, { children: (0,jsx_runtime.jsx)(react.Suspense, ThemeSettingsPage_assign({ fallback: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) })) })), (0,jsx_runtime.jsx)(components_ThemeSettingsMenu, { themeId: themeId, query: query, showAuditTab: showAuditTab, showHistoryTab: showHistoryTab, showIntegrationsTab: showIntegrationsTab, showChannelsTab: showChannelsTab && !samplingRate && !isYoutubeReviewAccount, showAddMentionTab: showAddMentionTab && !isYoutubeReviewAccount, showAdministrationTab: showAdministrationTab, showMentionWallCustomizationTab: showMentionWallCustomizationTab })] }))] })));
};
/* harmony default export */ const pages_ThemeSettingsPage_ThemeSettingsPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
    showAuditTab: (0,currentUser_selectors/* isCurrentUserAdmin */.u4)(state),
    showChannelsTab: (0,themes_selectors/* canViewChannels */.E7)(state),
    isYoutubeReviewAccount: (0,account_selectors/* isYoutubeReviewAccount */.$b)(state),
    showHistoryTab: (0,themes_selectors/* canViewHistory */.yu)(state),
    showIntegrationsTab: (0,themes_selectors/* canViewIntegrations */.Hy)(state),
    showAdministrationTab: (0,themes_selectors/* canAdministrateCurrentTheme */.k7)(state),
    showAddMentionTab: (0,themes_selectors/* canAddMention */.M2)(state),
    showMentionWallCustomizationTab: (0,themes_selectors/* canCustomizeMentionWall */.O9)(state),
    samplingRate: (0,themes_selectors/* getCurrentThemeSamplingRate */.MC)(state),
}); }), react.memo)(ThemeSettingsPage_ThemeSettingsPage));

;// CONCATENATED MODULE: ./src/pages/ThemeSettingsPage/index.ts


;// CONCATENATED MODULE: ./src/pages/ThemeNotFoundPage/ThemeNotFoundPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ThemeNotFoundPage = ({"base":"TG4Hg7wNn3REgJmjzz3O","image":"oUpYpX5WW7Nu8WFr8Xwj","message":"tfll5AdYF_VFSSbYoPdw","themesLink":"mGVA0vDi1ReEaMNBD54r"});
;// CONCATENATED MODULE: ./src/pages/ThemeNotFoundPage/ThemeNotFoundPage.tsx
var ThemeNotFoundPage_assign = (undefined && undefined.__assign) || function () {
    ThemeNotFoundPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ThemeNotFoundPage_assign.apply(this, arguments);
};







/* harmony default export */ const ThemeNotFoundPage_ThemeNotFoundPage = (function () { return ((0,jsx_runtime.jsxs)("div", ThemeNotFoundPage_assign({ className: classnames_default()(ThemeNotFoundPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Topic not found') }), (0,jsx_runtime.jsx)("img", { src: "/static/images/theme_not_found.svg", className: classnames_default()(ThemeNotFoundPage.image), alt: "Topic not found" }), (0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Topic not found') }), (0,jsx_runtime.jsx)("p", ThemeNotFoundPage_assign({ className: classnames_default()(ThemeNotFoundPage.message) }, { children: l('Looks like you don\'t have this topic in your account. '
                + 'Try to go back to topics and choose one') })), (0,jsx_runtime.jsx)(dist/* Link */.N_, ThemeNotFoundPage_assign({ to: "/themes" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Back to Topics'), className: classnames_default()(ThemeNotFoundPage.themesLink), primary: true }) }))] }))); });

;// CONCATENATED MODULE: ./src/pages/ThemeNotFoundPage/index.ts


// EXTERNAL MODULE: ./src/models/emailNotification/Report.tsx
var Report = __webpack_require__("x8Pq");
;// CONCATENATED MODULE: ./src/models/emailNotification/components/Type/Type.tsx



var Type = function (_a) {
    var options = _a.options, value = _a.value, onChange = _a.onChange;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Type', 'emailReports') }), (0,jsx_runtime.jsx)(Select/* default */.A, { options: options, value: value, onChange: onChange })] }));
};
/* harmony default export */ const Type_Type = (Type);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/Type/index.tsx


// EXTERNAL MODULE: ./node_modules/react-input-mask/index.js
var react_input_mask = __webpack_require__("82Mt");
var react_input_mask_default = /*#__PURE__*/__webpack_require__.n(react_input_mask);
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/TimeInput/utils.tsx
var TimeInput_utils_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
function isValidTime(time) {
    var _a = TimeInput_utils_read(time.split(':')
        .map(function (str) { return str.replace('_', ''); }), 2), hour = _a[0], minute = _a[1];
    var hourNum = Number(hour);
    var minuteNum = Number(minute);
    if ((hour === null || hour === void 0 ? void 0 : hour.length) === 1) {
        if (hourNum < 0 || hourNum > 2) {
            return false;
        }
    }
    if ((hour === null || hour === void 0 ? void 0 : hour.length) === 2) {
        if (hourNum < 0 || hourNum > 24) {
            return false;
        }
    }
    if (hourNum === 24 && minuteNum !== 0) {
        return false;
    }
    if ((minute === null || minute === void 0 ? void 0 : minute.length) === 1) {
        if (minuteNum < 0 || minuteNum > 5) {
            return false;
        }
    }
    if ((minute === null || minute === void 0 ? void 0 : minute.length) === 2) {
        if (minuteNum < 0 || minuteNum > 59) {
            return false;
        }
    }
    return true;
}
function formatFinalTime(time) {
    if (!time) {
        return time;
    }
    var _a = TimeInput_utils_read((time.includes(':') ? time : time.concat(':')).split(':'), 2), hour = _a[0], minute = _a[1];
    if ((hour === null || hour === void 0 ? void 0 : hour.length) !== 2) {
        hour = (hour === null || hour === void 0 ? void 0 : hour.length) === 0 ? '00' : "0".concat(hour);
    }
    if ((minute === null || minute === void 0 ? void 0 : minute.length) !== 2) {
        minute = (minute === null || minute === void 0 ? void 0 : minute.length) === 0 ? '00' : "".concat(minute, "0");
    }
    return "".concat(hour, ":").concat(minute);
}

;// CONCATENATED MODULE: ./src/containers/emailNotification/components/TimeInput/TimeInput.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TimeInput = ({"input":"_kaCJFdeWt2BF7ed8WjV"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/TimeInput/TimeInput.tsx
var TimeInput_assign = (undefined && undefined.__assign) || function () {
    TimeInput_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TimeInput_assign.apply(this, arguments);
};







var TimeInput_TimeInput = function (_a) {
    var value = _a.value, className = _a.className, defaultValue = _a.defaultValue, onChange = _a.onChange;
    var input = (0,react.useRef)();
    var handleChange = function (e) {
        var v = e.target.value;
        if (isValidTime(v)) {
            onChange(v);
        }
        else {
            onChange(value);
        }
    };
    var handleBlur = function () {
        if (!value && defaultValue) {
            onChange(defaultValue);
            return;
        }
        onChange(formatFinalTime(value));
    };
    return ((0,jsx_runtime.jsx)((react_input_mask_default()), TimeInput_assign({ value: value, mask: "99:99", maskPlaceholder: "hh:mm", maskChar: "", disabled: false, onChange: handleChange, onBlur: handleBlur }, { children: function () { return (0,jsx_runtime.jsx)(TextField/* default */.A, { className: className, inputClassName: TimeInput.input, useNativeOnChangeSignature: true, propRef: input, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "clock" }) }); } })));
};
/* harmony default export */ const components_TimeInput_TimeInput = (TimeInput_TimeInput);

;// CONCATENATED MODULE: ./src/utils/translations/dayOfWeekTranslations.ts
var translateDayOfWeek = function (key) { return ({
    sunday: l('Sunday'),
    monday: l('Monday'),
    tuesday: l('Tuesday'),
    wednesday: l('Wednesday'),
    thursday: l('Thursday'),
    friday: l('Friday'),
    saturday: l('Saturday'),
})[key] || key; };

;// CONCATENATED MODULE: ./src/containers/emailNotification/components/DayOfWeekSelection/DayOfWeekSelection.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DayOfWeekSelection = ({"container":"swZE33Nq2DUrLILUX1Az","dayButton":"dCpqFjf2ngIjM_XMfuTI","selected":"TMqOnp2B7mKRZ3F3SxOQ"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/DayOfWeekSelection/DayOfWeekSelection.tsx
var DayOfWeekSelection_assign = (undefined && undefined.__assign) || function () {
    DayOfWeekSelection_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DayOfWeekSelection_assign.apply(this, arguments);
};



var DayOfWeekSelection_DayOfWeekSelection = function (_a) {
    var _b = _a.startFromSunday, startFromSunday = _b === void 0 ? false : _b, onSelect = _a.onSelect, selectedDay = _a.selectedDay;
    var daysOfWeek = startFromSunday
        ? ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday']
        : ['monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday'];
    var handleDaySelect = function (day) {
        onSelect(day);
    };
    return ((0,jsx_runtime.jsx)("div", DayOfWeekSelection_assign({ className: DayOfWeekSelection.container }, { children: daysOfWeek.map(function (day) { return ((0,jsx_runtime.jsx)("button", DayOfWeekSelection_assign({ className: "".concat(DayOfWeekSelection.dayButton, " ").concat(selectedDay === day.toLowerCase() ? DayOfWeekSelection.selected : ''), onClick: function () { return handleDaySelect(day); } }, { children: translateDayOfWeek(day) }), day)); }) })));
};
/* harmony default export */ const components_DayOfWeekSelection_DayOfWeekSelection = (DayOfWeekSelection_DayOfWeekSelection);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/DeliveryTime/DeliveryTime.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DeliveryTime = ({"inlineInput":"bvi0Lm7vqyTV5mUYVedg"});
;// CONCATENATED MODULE: ./src/models/emailNotification/components/DeliveryTime/DeliveryTime.tsx
var DeliveryTime_assign = (undefined && undefined.__assign) || function () {
    DeliveryTime_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DeliveryTime_assign.apply(this, arguments);
};








var DeliveryTime_DeliveryTime = function (_a) {
    var frequency = _a.frequency, valueTime = _a.valueTime, defaultValueTime = _a.defaultValueTime, valuePeriod = _a.valuePeriod, defaultValuePeriod = _a.defaultValuePeriod, valueDay = _a.valueDay, onChangeDay = _a.onChangeDay, onChangePeriod = _a.onChangePeriod, onChangeTime = _a.onChangeTime;
    var getDeliveryTimeText = function () {
        if (frequency === Notifications/* NotificationFrequency */.gJ.Daily)
            return l('Every day at', 'emailReports');
        if (frequency === Notifications/* NotificationFrequency */.gJ.Weekly)
            return l('At', 'emailReports');
        return l('First day of each month at', 'emailReports');
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Delivery time', 'emailReports') }), (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)("span", { children: getDeliveryTimeText() }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(components_TimeInput_TimeInput, { value: valueTime, defaultValue: defaultValueTime, onChange: onChangeTime, className: DeliveryTime.inlineInput })] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), frequency === Notifications/* NotificationFrequency */.gJ.Daily && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("span", { children: l('For the period from', 'emailReports') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(components_TimeInput_TimeInput, { value: valuePeriod === null || valuePeriod === void 0 ? void 0 : valuePeriod.from, defaultValue: defaultValuePeriod.from, onChange: function (v) { return onChangePeriod(function (s) { return (DeliveryTime_assign(DeliveryTime_assign({}, s), { from: v })); }); }, className: DeliveryTime.inlineInput }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", { children: l('to', 'emailReports') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(components_TimeInput_TimeInput, { value: valuePeriod === null || valuePeriod === void 0 ? void 0 : valuePeriod.to, defaultValue: defaultValuePeriod.to, className: DeliveryTime.inlineInput, onChange: function (v) { return onChangePeriod(function (s) { return (DeliveryTime_assign(DeliveryTime_assign({}, s), { to: v })); }); } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] })), frequency === Notifications/* NotificationFrequency */.gJ.Weekly && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("span", { children: l('Every', 'emailReports') }), (0,jsx_runtime.jsx)(components_DayOfWeekSelection_DayOfWeekSelection, { selectedDay: valueDay, startFromSunday: false, onSelect: onChangeDay }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }))] }));
};
/* harmony default export */ const components_DeliveryTime_DeliveryTime = (DeliveryTime_DeliveryTime);

;// CONCATENATED MODULE: ./src/models/emailNotification/components/DeliveryTime/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/components/EditModal/EditModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EditModal = ({"inlineInput":"Qs0Yh7J5Bqgbkf5eFFRn","modal":"hcL9uJEubLxKV7YdIXEJ","fullWidth":"dptiOaUGPNbWyIehCdgi","defaultTitle":"k3aIfzWhjxAnIjAgBp1B","editIcon":"tDsTXttG40J4p2t_Dnxu","title":"VTKQbBAe7UZGQHEDG_AN","error":"so_wbxM8hWr0ySUuW4DQ"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/components/EditModal/EditModal.tsx
var EditModal_assign = (undefined && undefined.__assign) || function () {
    EditModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return EditModal_assign.apply(this, arguments);
};
var EditModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
















var EditModal_EditModal = function (_a) {
    var report = _a.report, open = _a.open, users = _a.users, topicName = _a.topicName, topicId = _a.topicId, onClose = _a.onClose, onApply = _a.onApply;
    var _b = EditModal_read((0,react.useState)(report.frequency), 2), frequency = _b[0], setFrequency = _b[1];
    var _c = EditModal_read((0,react.useState)(report.title), 2), title = _c[0], setTitle = _c[1];
    var _d = EditModal_read((0,react.useState)(report.deliveryTime.time), 2), deliveryTime = _d[0], setDeliveryTime = _d[1];
    var _e = EditModal_read((0,react.useState)(report.deliveryTime.dayOfWeek), 2), deliveryDayOfWeek = _e[0], setDeliveryDayOfWeek = _e[1];
    var _f = EditModal_read((0,react.useState)(report.period), 2), period = _f[0], setPeriod = _f[1];
    var _g = EditModal_read((0,react.useState)(report.recipients), 2), recipients = _g[0], setRecipients = _g[1];
    var _h = EditModal_read((0,react.useState)(report.filter), 2), filter = _h[0], setFilter = _h[1];
    var _j = EditModal_read((0,react.useState)(false), 2), editingTitle = _j[0], setEditingTitle = _j[1];
    var isEmptyRecipients = !recipients.length;
    var getDefaultTitle = function () {
        if (frequency === Notifications/* NotificationFrequency */.gJ.Daily) {
            if (period.from === report.period.from && period.to === report.period.to) {
                return "".concat(topicName, ": ").concat(report.translateFrequency(frequency));
            }
            return "".concat(topicName, ": ").concat(report.translateFrequency(frequency), ", ").concat(l('for', 'emailReports'), " ").concat(period.from, " - ").concat(period.to);
        }
        return "".concat(topicName, ": ").concat(report.translateFrequency(frequency));
    };
    function handleSave() {
        try {
            var newReport = new Report/* Report */.p({
                data: {
                    frequency: frequency,
                    title: title || getDefaultTitle(),
                    recipients: recipients,
                    deliveryTime: {
                        time: deliveryTime,
                        dayOfWeek: deliveryDayOfWeek,
                    },
                    period: period,
                    filter: filter.toApi(),
                },
            });
            if (report.isEdit) {
                var updatedReport = Report/* Report */.p.merge(report, newReport);
                onApply(updatedReport);
            }
            else {
                onApply(newReport);
            }
        }
        catch (_a) {
            console.error('Error saving report');
        }
        finally {
            onClose();
        }
    }
    function handleClose() {
        var newReport = new Report/* Report */.p({
            data: {
                frequency: frequency,
                title: title,
                deliveryTime: { time: deliveryTime, dayOfWeek: deliveryDayOfWeek },
                period: period,
                recipients: recipients,
                filter: filter.toApi(),
            },
        });
        var hasChange = Report/* Report */.p.isEqual(report, newReport);
        onClose(hasChange);
        setEditingTitle(false);
    }
    var handleStartSetTitle = function () {
        setEditingTitle(true);
        setTitle(title || getDefaultTitle());
    };
    function handleSetFilter(f) {
        if (f)
            setFilter(f);
    }
    return ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(Modal_Modal/* default */.A, EditModal_assign({ withCloseIcon: true, isOpen: open, className: EditModal.modal, shouldCloseOnEsc: false, shouldCloseOnOverlayClick: false, onRequestClose: handleClose }, { children: (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: report.isEdit ? l('Edit report') : l('Create report') }), (0,jsx_runtime.jsx)(Type_Type, { options: Report/* Report */.p.getReportFrequencies(), value: Report/* Report */.p.getReportFrequencies().find(function (t) { return t.value === frequency; }), onChange: function (_a) {
                            var value = _a.value;
                            return setFrequency(value);
                        } }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(components_Title_Title, { value: title, isEditing: editingTitle, defaultValue: title || getDefaultTitle(), onChange: setTitle, toggleEditing: handleStartSetTitle }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(components_DeliveryTime_DeliveryTime, { frequency: frequency, valueTime: deliveryTime, defaultValueTime: report.deliveryTime.time, valuePeriod: period, defaultValuePeriod: report.period, valueDay: deliveryDayOfWeek, onChangeDay: setDeliveryDayOfWeek, onChangePeriod: setPeriod, onChangeTime: setDeliveryTime }), (0,jsx_runtime.jsx)(components_Recipients_Recipients, { value: recipients, onChange: setRecipients, options: users }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(components_Filter_Filter, { value: filter, topicId: topicId, onChange: handleSetFilter }), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleClose }), (0,jsx_runtime.jsx)(Tooltip/* default */.A, EditModal_assign({ text: (isEmptyRecipients) && l('The list of recipients cannot be empty', 'emailNotification') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: isEmptyRecipients, label: l('Apply'), onClick: handleSave }) }))] })] }) })) }));
};
/* harmony default export */ const components_EditModal_EditModal = (EditModal_EditModal);

;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/components/EditModal/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/Tile/Tile.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Tile = ({"base":"bvlFI8li2jiqyBQyrYqi"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/Tile/Tile.tsx
var Tile_assign = (undefined && undefined.__assign) || function () {
    Tile_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Tile_assign.apply(this, arguments);
};




var Tile_Tile = function (_a) {
    var children = _a.children, className = _a.className, iconType = _a.iconType, _b = _a.iconSize, iconSize = _b === void 0 ? 20 : _b, _c = _a.iconColor, iconColor = _c === void 0 ? 'gray' : _c;
    return ((0,jsx_runtime.jsxs)("div", Tile_assign({ className: classnames_default()(className, Tile.base) }, { children: [iconType && (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize, color: iconColor }), children] })));
};

;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/ItemTile/ItemTile.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ItemTile = ({"baseItem":"gMLa8nfBPsOROlupTNB3","removeIcon":"eAdZRoXEfj86jgxkhUvV","editIcon":"X8PQ7cCsPZPNazHJrImS"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/ItemTile/ItemTile.tsx
var ItemTile_assign = (undefined && undefined.__assign) || function () {
    ItemTile_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ItemTile_assign.apply(this, arguments);
};




var ItemTile_ItemTile = function (_a) {
    var children = _a.children, onEdit = _a.onEdit, onRemove = _a.onRemove;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, ItemTile_assign({ className: ItemTile.baseItem }, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "edit", className: ItemTile.editIcon, onClick: onEdit }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "trash", className: ItemTile.removeIcon, onClick: onRemove }), children] })));
};
/* harmony default export */ const Tiles_ItemTile_ItemTile = (ItemTile_ItemTile);

;// CONCATENATED MODULE: ./src/containers/emailNotification/components/Tiles/ItemTile/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/components/ReportsList/ReportsList.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ReportsList = ({"base":"WJCAdHkYosPmwwXvJ17i","topBlock":"a4cXUcgte2xI93rkodqS","title":"Hg7dvuyEJh8yvxfF_uAr","frequency":"AP7MK2ZE118xRDjAL_Yt","midBlock":"dMYYWPvcyO_D5J2gg0Ul","filters":"UMcyqZ2t7DBgWP0nyFz1","recipients":"hWr2Z6EObISea_n7cZVe","tile":"T_qjbRsZtir3cg5TBOuL"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/components/ReportsList/ReportsList.tsx
var ReportsList_assign = (undefined && undefined.__assign) || function () {
    ReportsList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ReportsList_assign.apply(this, arguments);
};








var ReportsList_ReportsList = function (_a) {
    var topicId = _a.topicId, reports = _a.reports, onEdit = _a.onEdit, onRemove = _a.onRemove;
    var renderItem = function (report) {
        var _a, _b;
        return ((0,jsx_runtime.jsxs)(Tiles_ItemTile_ItemTile, ReportsList_assign({ onEdit: function () { return onEdit(report); }, onRemove: function () { return onRemove(report); } }, { children: [(0,jsx_runtime.jsxs)("div", ReportsList_assign({ className: ReportsList.topBlock }, { children: [(0,jsx_runtime.jsx)("div", ReportsList_assign({ className: ReportsList.title }, { children: report.title })), (0,jsx_runtime.jsx)("div", ReportsList_assign({ className: ReportsList.frequency }, { children: report.translateFrequency(report.frequency) }))] })), (0,jsx_runtime.jsxs)("div", ReportsList_assign({ className: ReportsList.midBlock }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Creator', 'emailReports') }), (0,jsx_runtime.jsx)(Tiles_RecipientTile_RecipientTile, { className: ReportsList.tile, value: report.creatorEmail, label: report.creatorFullName })] }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Delivery time', 'emailReports') }), (0,jsx_runtime.jsx)(Tile_Tile, ReportsList_assign({ className: ReportsList.tile, iconType: "clock-outline" }, { children: report.getDeliveryTimeText() }))] }), report.showPeriodTile && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Includes data', 'emailReports') }), (0,jsx_runtime.jsxs)(Tile_Tile, ReportsList_assign({ className: ReportsList.tile }, { children: [l('From', 'emailReports'), " ", (_a = report.period) === null || _a === void 0 ? void 0 : _a.from, " ", l('to', 'emailReports'), " ", (_b = report.period) === null || _b === void 0 ? void 0 : _b.to] }))] }))] })), (0,jsx_runtime.jsxs)("div", ReportsList_assign({ className: ReportsList.filters }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Filters') }), (0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, { children: (0,jsx_runtime.jsx)(FilterChipPanel_FilterChipPanel/* default */.A, { compactFilter: true, filter: report.filter, topicId: topicId }) })] })), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Recipients', 'emailReports') }), (0,jsx_runtime.jsx)("div", ReportsList_assign({ className: ReportsList.recipients }, { children: report.recipients.map(function (r) { return ((0,jsx_runtime.jsx)(Tiles_RecipientTile_RecipientTile, { className: ReportsList.tile, value: r.email, label: r.fullName, unsubscribed: r.unsubscribed }, r.email)); }) }))] })] }), report.id));
    };
    return (0,jsx_runtime.jsx)("div", ReportsList_assign({ className: ReportsList.base }, { children: reports.map(renderItem) }));
};
/* harmony default export */ const components_ReportsList_ReportsList = (ReportsList_ReportsList);

;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/components/ReportsList/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/components/SamplingRateNotification/SamplingRateNotification.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SamplingRateNotification = ({"samplingWarning":"exvI8peY_4lAErDuLYpi"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/components/SamplingRateNotification/SamplingRateNotification.tsx
var SamplingRateNotification_assign = (undefined && undefined.__assign) || function () {
    SamplingRateNotification_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SamplingRateNotification_assign.apply(this, arguments);
};




var SamplingRateNotification_SamplingRateNotification = function (_a) {
    var samplingRate = _a.samplingRate;
    if (!samplingRate)
        return null;
    return ((0,jsx_runtime.jsxs)("div", SamplingRateNotification_assign({ className: SamplingRateNotification.samplingWarning }, { children: [sprintf(l('The topic sample rate is %d%s'), samplingRate * 100, '%'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("span", { children: l('Reports and Alerts will be based on limited but representative data.') })] })));
};
/* harmony default export */ const components_SamplingRateNotification_SamplingRateNotification = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    samplingRate: (0,themes_selectors/* getCurrentThemeSamplingRate */.MC)(state),
}); })(SamplingRateNotification_SamplingRateNotification));

;// CONCATENATED MODULE: ./src/containers/emailNotification/components/SamplingRateNotification/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/EmailReportSettings.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EmailReportSettings = ({"header":"qI9e1MzQAfaMu_86iAiw"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/EmailReportSettings.tsx
var EmailReportSettings_assign = (undefined && undefined.__assign) || function () {
    EmailReportSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return EmailReportSettings_assign.apply(this, arguments);
};
var EmailReportSettings_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var EmailReportSettings_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint max-len: 0 */

















var EmailReportSettings_EmailReportSettings = function (_a) {
    var _b, _c;
    var topicId = _a.topicId, topicName = _a.topicName, currentUser = _a.currentUser, users = _a.users, reports = _a.reports, reportsLoaded = _a.reportsLoaded, error = _a.error, sendAnalyticalEvent = _a.sendAnalyticalEvent, fetchNotificationsUsers = _a.fetchNotificationsUsers, fetchReports = _a.fetchReports, saveReport = _a.saveReport, updateReport = _a.updateReport, removeReport = _a.removeReport;
    var _d = EmailReportSettings_read((0,react.useState)(false), 2), openModal = _d[0], setOpenModal = _d[1];
    var _e = EmailReportSettings_read((0,react.useState)(null), 2), selectedReport = _e[0], setSelectedReport = _e[1];
    var sortedReports = reports && currentUser ? Report/* Report */.p.sort(reports, currentUser.login) : [];
    var noPermission = ((_c = (_b = error === null || error === void 0 ? void 0 : error.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.message) === 'THEME_PERMISSION_DENIED';
    (0,react.useEffect)(function () {
        fetchReports();
        if (!users.length)
            fetchNotificationsUsers();
    }, [topicId]);
    var handleOpenModal = function (report) {
        setOpenModal(true);
        if (report) {
            setSelectedReport(report);
        }
        else {
            var defaultReport = Report/* Report */.p.empty();
            defaultReport.recipients = [{ email: currentUser.login, fullName: currentUser.fullName }];
            setSelectedReport(defaultReport);
        }
    };
    var handleClose = function (wasChanged) {
        if (wasChanged) {
            (0,utils_confirm/* default */.A)({
                title: l('Unsaved changes'),
                message: l('Do you really want to close the form? All unsaved changes will be lost.'),
                actionLabel: l('Close without saving'),
            }).then(function () {
                setOpenModal(false);
            });
            return;
        }
        setOpenModal(false);
        setSelectedReport(null);
    };
    var handleRemove = function (report) {
        (0,utils_confirm/* default */.A)({
            title: l('Delete report'),
            message: l('Are you sure you want to delete report?'),
            actionLabel: l('Yes, delete'),
        }).then(function () {
            removeReport(report.id);
            sendAnalyticalEvent({ eventType: 'Recurrent email reports: remove' });
        });
    };
    var handleSaveReport = function (report) {
        if (report.id) {
            updateReport(report);
            var recipients_1 = report.recipients, title_1 = report.title, analyticalProps_1 = EmailReportSettings_rest(report, ["recipients", "title"]);
            sendAnalyticalEvent({ eventType: 'Recurrent email reports: update', properties: analyticalProps_1 });
            return;
        }
        saveReport(report);
        var recipients = report.recipients, title = report.title, analyticalProps = EmailReportSettings_rest(report, ["recipients", "title"]);
        sendAnalyticalEvent({ eventType: 'Recurrent email reports: create', properties: analyticalProps });
    };
    var loaded = sortedReports ? true : reportsLoaded;
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)(Card/* default */.A, EmailReportSettings_assign({ className: EmailReportSettings.header }, { children: [(0,jsx_runtime.jsx)(H1/* default */.A, { children: l('Reports') }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: noPermission, label: l('Create report', 'emailReports'), onClick: function () { return handleOpenModal(); } })] })), (0,jsx_runtime.jsx)(Loader/* default */.A, EmailReportSettings_assign({ loaded: loaded, empty: !reports.length, emptyStateImage: "/static/images/integrations-modal-all-mentions.svg", emptyStateTitle: l("You don't have any reports created yet"), emptyStateMessage: l('Email reports provide a summary of your monitoring work. These reports help you stay updated on the key changes in metrics and discussion trends, and contain examples of mentions that received the highest engagement over a certain time period.'), emptyStateSize: "large", error: noPermission, errorImage: "/static/images/ic_empty_old_plan.png", errorTitle: l("You don't have access to view and create reports.", 'emailReports'), errorMessage: l('Please contact your account manager.', 'emailReports') }, { children: (0,jsx_runtime.jsx)(components_ReportsList_ReportsList, { reports: sortedReports, topicId: topicId, onEdit: handleOpenModal, onRemove: handleRemove }) })), selectedReport && ((0,jsx_runtime.jsx)(components_EditModal_EditModal, { open: openModal, users: users, topicName: topicName, topicId: topicId, report: selectedReport, onApply: handleSaveReport, onClose: handleClose })), (0,jsx_runtime.jsx)(components_SamplingRateNotification_SamplingRateNotification, {})] }));
};
/* harmony default export */ const emailNotification_EmailReportSettings_EmailReportSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    topicName: (0,themes_selectors/* getCurrentThemeName */.EY)(state),
    currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    reports: (0,themes_selectors/* getReports */.Q4)(state),
    reportsLoaded: (0,themes_selectors/* isReportsLoaded */.TZ)(state),
    error: (0,themes_selectors/* getReportsError */.OO)(state),
    users: (0,themes_selectors/* getNotificationsUsers */.bE)(state),
}); }, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchNotificationsUsers: themes_model/* themesModel */.i.action.fetchNotificationsUsers,
    fetchReports: themes_model/* themesModel */.i.action.fetchReports,
    saveReport: themes_model/* themesModel */.i.action.saveReport,
    updateReport: themes_model/* themesModel */.i.action.updateReport,
    removeReport: themes_model/* themesModel */.i.action.removeReport,
}))(EmailReportSettings_EmailReportSettings));

;// CONCATENATED MODULE: ./src/containers/emailNotification/EmailReportSettings/index.tsx


;// CONCATENATED MODULE: ./src/pages/EmailReportPage/EmailReportPage.tsx


var EmailReportPage = function () { return ((0,jsx_runtime.jsx)(emailNotification_EmailReportSettings_EmailReportSettings, {})); };
/* harmony default export */ const EmailReportPage_EmailReportPage = (EmailReportPage);

;// CONCATENATED MODULE: ./src/pages/EmailReportPage/index.ts


;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/SmartAlertSettings/SmartAlertSettings.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SmartAlertSettings = ({"base":"nHZ4BWMPocfVUZtJoyEp","tooltipText":"qqxg8TPl3ih8J3QttIWt","tooltipIcon":"dF4W5LXGQu75R7UG5uGS"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/SmartAlertSettings/SmartAlertSettings.tsx
var SmartAlertSettings_assign = (undefined && undefined.__assign) || function () {
    SmartAlertSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SmartAlertSettings_assign.apply(this, arguments);
};
var SmartAlertSettings_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var SmartAlertSettings_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};














var SmartAlertSettings_SmartAlertSettings = function (_a) {
    var _b;
    var topicId = _a.topicId, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _c = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.themes.fetchNotificationSettings), fetchNotification = _c.fetch, notificationData = _c.data;
    var _d = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.themes.enableAlertSetting), enableAlert = _d.fetch, enablingAlert = _d.loading;
    var _e = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.themes.disableAlertSetting), disableAlert = _e.fetch, disablingAlert = _e.loading;
    (0,react.useEffect)(function () {
        fetchNotification({ topicId: topicId });
    }, [topicId]);
    var handleChange = function (enabled) { return SmartAlertSettings_awaiter(void 0, void 0, void 0, function () {
        return SmartAlertSettings_generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    if (!enabled) return [3 /*break*/, 2];
                    return [4 /*yield*/, enableAlert({ topicId: topicId })];
                case 1:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 2: return [4 /*yield*/, disableAlert({ topicId: topicId })];
                case 3:
                    _a.sent();
                    _a.label = 4;
                case 4:
                    sendAnalyticalEvent({ eventType: "Theme: smart alerts ".concat(enabled ? 'enabled' : 'disabled') });
                    fetchNotification({ topicId: topicId });
                    return [2 /*return*/];
            }
        });
    }); };
    var updating = enablingAlert || disablingAlert;
    var isAlertsEnabled = (_b = notificationData === null || notificationData === void 0 ? void 0 : notificationData.smartAlerts) === null || _b === void 0 ? void 0 : _b.enabled;
    return ((0,jsx_runtime.jsxs)("div", SmartAlertSettings_assign({ className: SmartAlertSettings.base }, { children: [(0,jsx_runtime.jsxs)("div", { children: [l('Smart alerts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Tooltip/* default */.A, SmartAlertSettings_assign({ on: "click", position: "bottom right", text: (0,jsx_runtime.jsxs)("div", SmartAlertSettings_assign({ className: SmartAlertSettings.tooltipText }, { children: [l('If this option is enabled, you will receive email notifications'
                                    + ' when something important happens in any of the current'
                                    + ' topics. Such as: spikes in engagement, new posts from'
                                    + ' influencers, sudden growth in mentions, etc.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", SmartAlertSettings_assign({ href: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.SMART_ALERTS), target: "_blank", rel: "noopener noreferrer" }, { children: l('More info') }))] })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "info-outline", className: SmartAlertSettings.tooltipIcon }) }))] }), (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: isAlertsEnabled, loading: updating, onChange: handleChange })] })));
};
/* harmony default export */ const components_SmartAlertSettings_SmartAlertSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
}); }, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(SmartAlertSettings_SmartAlertSettings));

;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/SmartAlertSettings/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/AlertList/AlertList.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AlertList = ({"base":"M_ZxYduvU8LnHL0qkmZH","midBlock":"kn7cz0SfDuuSsXA3dEV8","tile":"x3GjwbaWqfEIzvzBRrgA","recipients":"EpABAa4TCQgK6XxA7HDb","filters":"J4nYEgHJ92cvrcGRbouq"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/AlertList/AlertList.tsx
var AlertList_assign = (undefined && undefined.__assign) || function () {
    AlertList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AlertList_assign.apply(this, arguments);
};











var AlertList_AlertList = function (_a) {
    var alerts = _a.alerts, topicId = _a.topicId, onEdit = _a.onEdit, onRemove = _a.onRemove;
    var renderItem = function (alert) {
        return ((0,jsx_runtime.jsxs)(Tiles_ItemTile_ItemTile, AlertList_assign({ onEdit: function () { return onEdit(alert); }, onRemove: function () { return onRemove(alert); } }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: alert.title }), (0,jsx_runtime.jsxs)("div", AlertList_assign({ className: AlertList.midBlock }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Creator', 'emailNotifications') }), (0,jsx_runtime.jsx)(Tiles_RecipientTile_RecipientTile, { className: AlertList.tile, value: alert.creatorEmail, label: alert.creatorFullName })] }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Delivery method', 'emailNotification') }), (0,jsx_runtime.jsx)(Tile_Tile, AlertList_assign({ className: AlertList.tile, iconType: alert.deliveryMethod === Notifications/* DeliveryMethod */.ye.Email ? 'email-outline' : 'message-outline' }, { children: alert.deliveryMethodToString() }))] }), alert.isShowFrequency && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Frequency', 'emailNotification') }), (0,jsx_runtime.jsx)(Tile_Tile, AlertList_assign({ className: AlertList.tile }, { children: alert.frequencyToString() }))] }))] })), (0,jsx_runtime.jsxs)("div", AlertList_assign({ className: AlertList.filters }, { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Filters', 'emailNotifications') }), (0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, { children: (0,jsx_runtime.jsx)(FilterChipPanel/* default */.A, { compactFilter: true, compactInFilterGroup: true, filter: alert.filter, topicId: topicId }) })] })), (0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Recipients', 'emailNotifications') }), (0,jsx_runtime.jsx)("div", AlertList_assign({ className: AlertList.recipients }, { children: alert.deliveryMethod === Notifications/* DeliveryMethod */.ye.Email
                        ? alert.recipients.map(function (r) { return ((0,jsx_runtime.jsx)(Tiles_RecipientTile_RecipientTile, { className: AlertList.tile, value: r.email, label: r.fullName, unsubscribed: r.unsubscribed }, r.email)); })
                        : alert.integrations.map(function (i) { return ((0,jsx_runtime.jsx)(Tiles_RecipientTile_RecipientTile, { className: AlertList.tile, label: i.fullName, imageUrl: Alert/* Alert */.F.getIntegrationImageUrl(i.integrationType) }, i.id)); }) }))] }), alert.id));
    };
    return ((0,jsx_runtime.jsx)("div", AlertList_assign({ className: AlertList.base }, { children: alerts.map(renderItem) })));
};
/* harmony default export */ const components_AlertList_AlertList = (AlertList_AlertList);

;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/components/AlertList/index.tsx


;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/AlertSettings.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AlertSettings = ({"header":"xGBP7qBmYSyDPjbDG4Kr","title":"V2ijAdk8181LSZAKt0qV"});
;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/AlertSettings.tsx
var AlertSettings_assign = (undefined && undefined.__assign) || function () {
    AlertSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AlertSettings_assign.apply(this, arguments);
};
var AlertSettings_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var AlertSettings_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};

/* eslint max-len: 0 */

















var AlertSettings_AlertSettings = function (_a) {
    var _b, _c;
    var topic = _a.topic, alertsLoaded = _a.alertsLoaded, error = _a.error, alerts = _a.alerts, showModal = _a.showModal, sendAnalyticalEvent = _a.sendAnalyticalEvent, fetchAlerts = _a.fetchAlerts, removeAlert = _a.removeAlert;
    var noPermission = ((_c = (_b = error === null || error === void 0 ? void 0 : error.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.message) === 'THEME_PERMISSION_DENIED';
    (0,react.useEffect)(function () {
        fetchAlerts();
    }, []);
    var handleOpenModal = function () {
        showModal(ALERT_MODAL, { onSave: fetchAlerts });
    };
    var handleRemoveAlert = function (alert) {
        (0,utils_confirm/* default */.A)({
            title: l('Delete alert'),
            message: l('Are you sure you want to delete alert?'),
            actionLabel: l('Yes, delete'),
        }).then(function () { return AlertSettings_awaiter(void 0, void 0, void 0, function () {
            return AlertSettings_generator(this, function (_a) {
                removeAlert(alert.id);
                sendAnalyticalEvent({ eventType: 'Alert: remove' });
                return [2 /*return*/];
            });
        }); });
    };
    var handleEditAlert = function (alert) {
        showModal(ALERT_MODAL, { alert: alert });
    };
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)(Card/* default */.A, AlertSettings_assign({ className: AlertSettings.header }, { children: [(0,jsx_runtime.jsxs)("div", AlertSettings_assign({ className: AlertSettings.title }, { children: [(0,jsx_runtime.jsx)(H1/* default */.A, { children: l('Alerts') }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Create alert'), onClick: handleOpenModal })] })), (0,jsx_runtime.jsx)(components_SmartAlertSettings_SmartAlertSettings, {})] })), (0,jsx_runtime.jsx)(Loader_Loader/* default */.A, AlertSettings_assign({ loaded: alertsLoaded && !!topic, empty: !alerts.length, emptyStateImage: "/static/images/integrations-modal-all-mentions.svg", emptyStateTitle: l("You don't have any alerts created yet"), emptyStateMessage: l('Alerts are notifications automatically sent to your email or messenger. You can choose and apply filters to decide which mentions will trigger an alert. This way, you’ll stay informed with the most relevant updates directly in your inbox or messenger.'), emptyStateSize: "large", error: noPermission, errorImage: "/static/images/ic_empty_old_plan.png", errorTitle: l("You don't have access to view and create alerts.", 'emailNotification'), errorMessage: l('Please contact your account manager.', 'emailNotification') }, { children: function () { return ((0,jsx_runtime.jsx)(components_AlertList_AlertList, { topicId: topic.id, alerts: alerts, onEdit: handleEditAlert, onRemove: handleRemoveAlert })); } })), (0,jsx_runtime.jsx)(components_SamplingRateNotification_SamplingRateNotification, {})] }));
};
/* harmony default export */ const emailNotification_AlertSettings_AlertSettings = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    topic: (0,themes_selectors/* getCurrentTheme */.j1)(state),
    alerts: (0,themes_selectors/* getAlerts */.qu)(state),
    alertsLoaded: (0,themes_selectors/* isAlertsLoaded */.VD)(state),
    error: (0,themes_selectors/* getAlertsError */.S1)(state),
}); }, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchAlerts: themes_model/* themesModel */.i.action.fetchAlerts,
    removeAlert: themes_model/* themesModel */.i.action.removeAlert,
    showModal: modals_actions/* showModal */.to,
}))(AlertSettings_AlertSettings));

;// CONCATENATED MODULE: ./src/containers/emailNotification/AlertSettings/index.tsx


;// CONCATENATED MODULE: ./src/pages/AlertsPage/AlertsPage.tsx


var AlertsPage = function () {
    return ((0,jsx_runtime.jsx)(emailNotification_AlertSettings_AlertSettings, {}));
};
/* harmony default export */ const AlertsPage_AlertsPage = (AlertsPage);

;// CONCATENATED MODULE: ./src/pages/AlertsPage/index.tsx


// EXTERNAL MODULE: ./src/components/ui/ShareLink/index.ts + 2 modules
var ShareLink = __webpack_require__("3aHs");
// EXTERNAL MODULE: ./src/components/other/MentionWall/index.js + 2 modules
var MentionWall = __webpack_require__("a63D");
;// CONCATENATED MODULE: ./src/pages/PrivateMentionWall/PrivateMentionWall.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const PrivateMentionWall_PrivateMentionWall = ({"base":"RQ2Abd2EWuRkMSofEkZi","share":"pn_AdDlN1YjqX7ervZ0I","close":"LhQNKMoK6GzWzTbRFx3A","announcement":"Mn4Ye6PLEilRrPL_79ly"});
;// CONCATENATED MODULE: ./src/pages/PrivateMentionWall/PrivateMentionWall.tsx
var PrivateMentionWall_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var PrivateMentionWall_assign = (undefined && undefined.__assign) || function () {
    PrivateMentionWall_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PrivateMentionWall_assign.apply(this, arguments);
};
var PrivateMentionWall_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var PrivateMentionWall_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};

/* eslint-disable no-underscore-dangle */






















var PrivateMentionWall = /** @class */ (function (_super) {
    PrivateMentionWall_extends(PrivateMentionWall, _super);
    function PrivateMentionWall() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            mentions: [],
            loading: true,
            settings: undefined,
            showShareWidget: false,
            shareLink: '',
            hasFetchedMentions: false,
        };
        _this.handleCloseShareWidget = function () {
            _this.setState({ showShareWidget: false });
        };
        _this.handleShareMentionWall = function () { return PrivateMentionWall_awaiter(_this, void 0, void 0, function () {
            var url;
            return PrivateMentionWall_generator(this, function (_a) {
                switch (_a.label) {
                    case 0: return [4 /*yield*/, apiSingleton/* default */.A.mentionWall.share({ themeId: this.props.themeId, filter: this.props.filter })];
                    case 1:
                        url = (_a.sent()).url;
                        this.props.sendAnalyticalEvent({ eventType: 'Mention wall: public url created' });
                        this.setState({ shareLink: url });
                        return [2 /*return*/];
                }
            });
        }); };
        _this.fetchMentions = function () { return PrivateMentionWall_awaiter(_this, void 0, void 0, function () {
            var params, mentions, settings, validMentions;
            return PrivateMentionWall_generator(this, function (_a) {
                switch (_a.label) {
                    case 0:
                        params = {
                            themeId: this.props.themeId,
                            filter: this.props.filter,
                            perPage: this.isWithScroll ? 150 : 50,
                            page: 1,
                            orderBy: this.props.orderBy,
                        };
                        return [4 /*yield*/, apiSingleton/* default */.A.mentions.listBase(params)];
                    case 1:
                        mentions = (_a.sent()).mentions;
                        return [4 /*yield*/, apiSingleton/* default */.A.mentionWall.getSettings({ themeId: this.props.themeId })];
                    case 2:
                        settings = (_a.sent()).settings;
                        validMentions = mentions.filter(function (mention) { return !(0,isMentionWithSuspiciousContent/* default */.A)(mention.systemTags); });
                        this.setState({ mentions: validMentions, settings: settings });
                        this.timer = setTimeout(this.fetchMentions, 30000);
                        return [2 /*return*/];
                }
            });
        }); };
        _this.renderShareWidget = function () {
            var _a = _this.state, showShareWidget = _a.showShareWidget, shareLink = _a.shareLink;
            if (!showShareWidget) {
                return null;
            }
            if (shareLink) {
                return ((0,jsx_runtime.jsxs)("div", PrivateMentionWall_assign({ className: classnames_default()(PrivateMentionWall_PrivateMentionWall.share) }, { children: [(0,jsx_runtime.jsx)(ShareLink/* default */.A, { value: shareLink, size: "small" }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()(PrivateMentionWall_PrivateMentionWall.close), iconType: "close", onClick: _this.handleCloseShareWidget })] })));
            }
            return ((0,jsx_runtime.jsxs)("div", PrivateMentionWall_assign({ className: classnames_default()(PrivateMentionWall_PrivateMentionWall.share) }, { children: [l('This mention wall is available for authorized users only'), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, size: "small", label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "link" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Share public link')] }), onClick: _this.handleShareMentionWall }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()(PrivateMentionWall_PrivateMentionWall.close), iconType: "close", onClick: _this.handleCloseShareWidget })] })));
        };
        return _this;
    }
    PrivateMentionWall.prototype.componentDidMount = function () {
        (0,utils_intercom/* hideIntercom */.kk)();
        this.props.sendAnalyticalEvent({ eventType: 'Mention wall: private page opened' });
        this.props.fetchTheme({ themeId: this.props.themeId });
    };
    PrivateMentionWall.prototype.componentDidUpdate = function () {
        return PrivateMentionWall_awaiter(this, void 0, void 0, function () {
            var _a, currentTheme, themeId, theme;
            return PrivateMentionWall_generator(this, function (_b) {
                switch (_b.label) {
                    case 0:
                        _a = this.props, currentTheme = _a.currentTheme, themeId = _a.themeId;
                        (0,utils_intercom/* hideIntercom */.kk)();
                        if (this.state.hasFetchedMentions) {
                            return [2 /*return*/];
                        }
                        theme = currentTheme ? currentTheme[themeId] : null;
                        if (!theme) return [3 /*break*/, 2];
                        this.setState({
                            showShareWidget: !theme._links.shareMentionWall.denied,
                            hasFetchedMentions: true,
                        });
                        return [4 /*yield*/, this.fetchMentions()];
                    case 1:
                        _b.sent();
                        this.setState({ loading: false });
                        _b.label = 2;
                    case 2: return [2 /*return*/];
                }
            });
        });
    };
    PrivateMentionWall.prototype.componentWillUnmount = function () {
        (0,utils_intercom/* showIntercom */.Lq)();
        clearInterval(this.timer);
    };
    Object.defineProperty(PrivateMentionWall.prototype, "isWithScroll", {
        get: function () {
            return this.props.location.query.withScroll === 'true';
        },
        enumerable: false,
        configurable: true
    });
    PrivateMentionWall.prototype.render = function () {
        var _a = this.state, loading = _a.loading, mentions = _a.mentions, settings = _a.settings;
        return ((0,jsx_runtime.jsxs)("div", PrivateMentionWall_assign({ className: classnames_default()(PrivateMentionWall_PrivateMentionWall.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('YouScan Mention Wall') }), this.renderShareWidget(), (0,jsx_runtime.jsx)(MentionWall/* default */.A, { withScroll: this.isWithScroll, mentions: mentions, loading: loading, settings: settings })] })));
    };
    return PrivateMentionWall;
}(react.PureComponent));
/* harmony default export */ const pages_PrivateMentionWall_PrivateMentionWall = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, ownProps) { return ({
    currentTheme: (0,themes_selectors/* getThemeDetails */.se)(state),
    themeId: ownProps.params.id,
    filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    orderBy: (0,mentionStream_selectors/* getMentionsOrderBy */.NE)(state),
}); }, {
    fetchTheme: themes_model/* themesModel */.i.action.fetchGeneralThemeInfo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(PrivateMentionWall));

;// CONCATENATED MODULE: ./src/pages/PrivateMentionWall/index.ts


;// CONCATENATED MODULE: ./src/containers/imagesDashboard/PreviewGallery/PreviewGallery.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const PreviewGallery = ({"base":"jhL4ZeU05KuWVDnsbkcG","cta":"mfITY1I7xIA4wdvQyk9w"});
;// CONCATENATED MODULE: ./src/containers/imagesDashboard/PreviewGallery/PreviewGallery.tsx
var PreviewGallery_assign = (undefined && undefined.__assign) || function () {
    PreviewGallery_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewGallery_assign.apply(this, arguments);
};

















var PreviewGallery_PreviewGallery = function (_a) {
    var themeId = _a.themeId, filter = _a.filter, isGalleryMentionsLoading = _a.isGalleryMentionsLoading, galleryMentions = _a.galleryMentions, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var handleImageClick = function (id) { return function () {
        updateLocation({ pathname: "/themes/".concat(themeId, "/gallery/visual/").concat(id) });
    }; };
    var handleViewGalleryClick = function () {
        sendAnalyticalEvent({ eventType: 'Visual Insights: open gallery clicked' });
        updateLocation({ pathname: "/themes/".concat(themeId, "/gallery/images") });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, PreviewGallery_assign({ className: classnames_default()(PreviewGallery.base) }, { children: (0,jsx_runtime.jsxs)(Loader_Loader/* default */.A, PreviewGallery_assign({ loaded: !isGalleryMentionsLoading }, { children: [(0,jsx_runtime.jsx)(Collage_Collage, { collageMentions: galleryMentions, filter: filter, onImageClick: handleImageClick }), !isGalleryMentionsLoading && ((0,jsx_runtime.jsxs)("div", PreviewGallery_assign({ className: PreviewGallery.cta, onClick: handleViewGalleryClick }, { children: [(0,jsx_runtime.jsx)("span", { children: l('View all', 'visualInsightsPreviewGallery') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { size: "medium", type: "arrow-right" })] })))] })) })));
};
/* harmony default export */ const imagesDashboard_PreviewGallery_PreviewGallery = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isGalleryMentionsLoading: (0,gallery_selectors/* isLoadingGalleryMentions */.yi)(state),
    galleryMentions: (0,gallery_selectors/* getGalleryMentions */.Ex)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchGalleryMentions: gallery_model/* galleryModel */.k.action.fetchMentions,
}), (0,withFilter/* default */.A)(function (props) {
    props.fetchGalleryMentions();
}), react.memo)(PreviewGallery_PreviewGallery));

;// CONCATENATED MODULE: ./src/containers/imagesDashboard/PreviewGallery/index.ts


;// CONCATENATED MODULE: ./src/pages/VisualInsightsPage/VisualInsightsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const VisualInsightsPage = ({"base":"aFVEwVqgVufAsi61uDx8","container":"cBTIimYfYvONKCaCaKy0","charts":"aGONbOweMYkAdV_2_8Po","chartCard":"VPSgszUvHLwdg9OQ908C","previewGallery":"vbbEcnmUJ9EZLSfmhtxr"});
;// CONCATENATED MODULE: ./src/pages/VisualInsightsPage/VisualInsightsPage.tsx
var VisualInsightsPage_assign = (undefined && undefined.__assign) || function () {
    VisualInsightsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return VisualInsightsPage_assign.apply(this, arguments);
};






var VisualInsightsPage_VisualInsightsPage = function () { return ((0,jsx_runtime.jsx)("div", VisualInsightsPage_assign({ className: VisualInsightsPage.base }, { children: (0,jsx_runtime.jsxs)("div", VisualInsightsPage_assign({ className: VisualInsightsPage.container }, { children: [(0,jsx_runtime.jsx)("div", VisualInsightsPage_assign({ className: VisualInsightsPage.charts }, { children: (0,jsx_runtime.jsx)(Card/* default */.A, VisualInsightsPage_assign({ className: VisualInsightsPage.chartCard }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) })) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { className: "simplifiedViewHidden" }), (0,jsx_runtime.jsx)("div", VisualInsightsPage_assign({ className: VisualInsightsPage.previewGallery }, { children: (0,jsx_runtime.jsx)(imagesDashboard_PreviewGallery_PreviewGallery, {}) }))] })) }))); };
/* harmony default export */ const pages_VisualInsightsPage_VisualInsightsPage = (VisualInsightsPage_VisualInsightsPage);

;// CONCATENATED MODULE: ./src/pages/VisualInsightsPage/index.ts


// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var settings_selectors = __webpack_require__("YQsP");
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountSettingsMenu/components/MenuLink.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AccountSettingsMenu_components_MenuLink = ({"base":"kAcRbzCE9NgOIKPvmVsT","label":"QB7tTXyKVphQvoFmQuy_","selected":"FGkqrAsqQ7uiglNIwDpH"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountSettingsMenu/components/MenuLink.js





var components_MenuLink_MenuLink = function MenuLink(_ref) {
  var to = _ref.to,
    label = _ref.label,
    selected = _ref.selected;
  return /*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
    to: to,
    className: classnames_default()(AccountSettingsMenu_components_MenuLink.base, (0,defineProperty/* default */.A)({}, AccountSettingsMenu_components_MenuLink.selected, selected)),
    children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(AccountSettingsMenu_components_MenuLink.label),
      children: label
    })
  });
};
/* harmony default export */ const accountSettings_AccountSettingsMenu_components_MenuLink = (components_MenuLink_MenuLink);
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountSettingsMenu/components/AccountSettingsMenu.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_AccountSettingsMenu = ({"base":"E0RvRTg7aGtyOV93hl4N","list":"mXQCYi1wvLhdHdYtF2wF"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountSettingsMenu/components/AccountSettingsMenu.js










var AccountSettingsMenu_MENU_OFFSET_TOP = 68;
var BASE_PATH = '/settings';
var AccountSettingsMenu = function AccountSettingsMenu(_ref) {
  var router = _ref.router,
    showUsersMenuItem = _ref.showUsersMenuItem,
    showAdministrationMenuItem = _ref.showAdministrationMenuItem,
    showBillingMenuItem = _ref.showBillingMenuItem,
    showDocumentsMenuItem = _ref.showDocumentsMenuItem,
    showAccountSettings = _ref.showAccountSettings,
    showAccountStatistics = _ref.showAccountStatistics;
  if (!showAccountSettings) return null;
  function renderMenu() {
    return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
      children: [showAdministrationMenuItem && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
          noPadding: true,
          className: components_AccountSettingsMenu.list,
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
            to: "".concat(BASE_PATH, "/administration"),
            selected: router.isActive("".concat(BASE_PATH, "/administration")),
            label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
              children: [l('Administration'), /*#__PURE__*/(0,jsx_runtime.jsx)(Badge/* default */.A.Support, {})]
            })
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          className: "simplifiedViewHidden"
        })]
      }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        noPadding: true,
        className: components_AccountSettingsMenu.list,
        children: [/*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
          to: "".concat(BASE_PATH, "/general"),
          selected: router.isActive("".concat(BASE_PATH, "/general")),
          label: l('Account info')
        }), showUsersMenuItem && /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
          to: "".concat(BASE_PATH, "/users"),
          selected: router.isActive("".concat(BASE_PATH, "/users")),
          label: l('Users')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
          to: "".concat(BASE_PATH, "/social_accounts"),
          selected: router.isActive("".concat(BASE_PATH, "/social_accounts")),
          label: l('Social accounts')
        }), showBillingMenuItem && /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
          to: "".concat(BASE_PATH, "/billing"),
          selected: router.isActive("".concat(BASE_PATH, "/billing")),
          label: l('Billing')
        }), showDocumentsMenuItem && /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
          to: "".concat(BASE_PATH, "/documents"),
          selected: router.isActive("".concat(BASE_PATH, "/documents")),
          label: l('Documents')
        }), showAccountStatistics && /*#__PURE__*/(0,jsx_runtime.jsx)(accountSettings_AccountSettingsMenu_components_MenuLink, {
          to: "".concat(BASE_PATH, "/statistics"),
          selected: router.isActive("".concat(BASE_PATH, "/statistics")),
          label: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            children: l('Statistics')
          })
        })]
      })]
    });
  }
  return (0,mobile/* isSimplifiedView */.O7)() ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
    className: classnames_default()(components_AccountSettingsMenu.base),
    children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      children: renderMenu()
    })
  }) : /*#__PURE__*/(0,jsx_runtime.jsx)(Sticky/* default */.A, {
    top: AccountSettingsMenu_MENU_OFFSET_TOP,
    className: classnames_default()(components_AccountSettingsMenu.base),
    children: renderMenu()
  });
};
/* harmony default export */ const AccountSettingsMenu_components_AccountSettingsMenu = ((0,withRouter/* withRouter */.y)(AccountSettingsMenu));
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountSettingsMenu/AccountSettingsMenu.tsx
var AccountSettingsMenu_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();








var AccountSettingsMenuContainer = /** @class */ (function (_super) {
    AccountSettingsMenu_extends(AccountSettingsMenuContainer, _super);
    function AccountSettingsMenuContainer() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    AccountSettingsMenuContainer.prototype.componentDidMount = function () {
        if (!this.props.accountInfo) {
            this.props.fetchAccountInfo();
        }
    };
    AccountSettingsMenuContainer.prototype.render = function () {
        var _a = this.props, isAdmin = _a.isAdmin, showAdministrationMenuItem = _a.showAdministrationMenuItem, showAccountDocumentsPage = _a.showAccountDocumentsPage, showAccountSettings = _a.showAccountSettings, showAccountStatistics = _a.showAccountStatistics;
        return ((0,jsx_runtime.jsx)(AccountSettingsMenu_components_AccountSettingsMenu, { showUsersMenuItem: isAdmin, showAdministrationMenuItem: showAdministrationMenuItem, showBillingMenuItem: isAdmin, showDocumentsMenuItem: showAccountDocumentsPage && isAdmin, showAccountSettings: showAccountSettings, showAccountStatistics: showAccountStatistics }));
    };
    return AccountSettingsMenuContainer;
}(react.PureComponent));
/* harmony default export */ const AccountSettingsMenu_AccountSettingsMenu = ((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        isAdmin: (0,currentUser_selectors/* isCurrentUserAccountAdmin */.B5)(state),
        showAdministrationMenuItem: (0,settings_selectors/* canAdministrateAccount */.R_)(state),
        accountInfo: (0,settings_selectors/* getAccountInfo */.Gf)(state),
        showAccountDocumentsPage: (0,account_selectors/* isAccountDocumentsEnabled */.UE)(state),
        showAccountSettings: (0,currentUser_selectors/* isAccountSettingsVisible */.T$)(state),
        showAccountStatistics: (0,currentUser_selectors/* isAccountStatisticsVisible */.Pq)(state),
    });
}, { fetchAccountInfo: settings_model/* settingsModel */.N.action.fetchAccountInfo })(AccountSettingsMenuContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountSettingsMenu/index.ts


;// CONCATENATED MODULE: ./src/containers/accountSettings/SubscriptionSettingsButton/SubscriptionSettingsButton.tsx






var SubscriptionSettingsButton = function (_a) {
    var showModal = _a.showModal, canManageSubscriptionPlan = _a.canManageSubscriptionPlan;
    if (!canManageSubscriptionPlan)
        return null;
    var handleClick = function () { return showModal('subscriptionSettings'); };
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Badge/* default */.A.Support, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Subscription settings'), onClick: handleClick })] }));
};
/* harmony default export */ const SubscriptionSettingsButton_SubscriptionSettingsButton = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    canManageSubscriptionPlan: (0,settings_selectors/* canChangeAccountSubscriptionPlan */.YI)(state),
}); }, {
    showModal: modals_actions/* showModal */.to,
})(SubscriptionSettingsButton));

;// CONCATENATED MODULE: ./src/containers/accountSettings/SubscriptionSettingsButton/index.ts


;// CONCATENATED MODULE: ./src/pages/AccountSettingsPage/utils.js

/* eslint-disable import/prefer-default-export */


var MATERIALS = (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.INTERNATIONAL, function () {
  return [{
    info: {
      title: l('Connecting an Instagram account to YouScan'),
      description: l('To collect data from Instagram, you must have an Instagram Business account connected to YouScan.'),
      link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.INSTAGRAM_AUTHORIZATION)
    }
  }, {
    info: {
      title: l('Adding Channels to your topic'),
      description: l('Add pages or profiles as channels to collect all posts and comments.'),
      link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.CHANNELS_LOCAL)
    },
    color: 'green'
  }, {
    info: {
      title: l('LinkedIn: authorization and monitoring'),
      description: l('How to add LinkedIn account to YouScan to collect data'),
      link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.ADDING_LINKEDIN_ACCOUNT_AUTHORIZATION)
    },
    color: 'orange'
  }];
}), utils_account/* ACCOUNT_ORIGIN_OPTIONS */.eR.LOCAL, function () {
  return [{
    info: {
      title: l('Connecting an Instagram account to YouScan'),
      description: l('Learn how to connect Instagram Business account to YouScan.'),
      link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.INSTAGRAM_AUTHORIZATION)
    }
  }, {
    info: {
      title: l('Adding Channels to your topic'),
      description: l('Add pages or profiles as channels to collect all posts and comments.'),
      link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.CHANNELS_LOCAL)
    },
    color: 'green'
  }, {
    info: {
      title: l('LinkedIn: authorization and monitoring'),
      description: l('How to add LinkedIn account to YouScan to collect data'),
      link: (0,navigation/* getLinkToHelpYouscan */.vn)(navigation/* HELP_YOUSCAN_PATH_NAMES */.MH.ADDING_LINKEDIN_ACCOUNT_AUTHORIZATION)
    },
    color: 'orange'
  }];
});
var getSocialAccountsEducationalMaterials = function getSocialAccountsEducationalMaterials(origin) {
  return MATERIALS[origin]();
};
;// CONCATENATED MODULE: ./src/pages/AccountSettingsPage/AccountSettingsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AccountSettingsPage_AccountSettingsPage = ({"base":"suqzxtE_yDrV8bF4XoIO","container":"p4Q96R56ljAJt8cnW9Xn","contentContainer":"JFij8T1o4i99XbZLiONA","pageLabel":"_pKfe5nXu9zwOnAkT9Sl","educationalInfoContainer":"V_65_BF977Dzht0kNKyc"});
;// CONCATENATED MODULE: ./src/pages/AccountSettingsPage/AccountSettingsPage.js
















var AccountSettingsPage = function AccountSettingsPage(_ref) {
  var accountOrigin = _ref.accountOrigin;
  var location = (0,react_router_dist/* useLocation */.zy)();
  var translations = {
    general: l('Account info'),
    users: l('Users'),
    administration: l('Administration'),
    statistics: l('Statistics'),
    integrations: l('Integrations'),
    management: l('Management'),
    create: l('Add user'),
    edit: l('Edit user'),
    billing: l('Billing'),
    social_accounts: l('Social accounts'),
    logo: l('Logo'),
    documents: l('Documents'),
    features: l('Features')
  };
  var additionalPageHeaderContent = {
    general: /*#__PURE__*/(0,jsx_runtime.jsx)(SubscriptionSettingsButton_SubscriptionSettingsButton, {})
  };
  var locationPath = location.pathname.split('/').pop();
  var handleEducationalInfoClick = function handleEducationalInfoClick(_ref2) {
    var link = _ref2.link;
    window.open(link, '_blank');
  };
  var socialAccountsEducationalMaterials = getSocialAccountsEducationalMaterials(accountOrigin);
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(AccountSettingsPage_AccountSettingsPage.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Head/* default */.A, {
      title: l('Settings')
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(AccountSettingsPage_AccountSettingsPage.container),
      children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Card/* default */.A, {
        noPadding: true,
        className: classnames_default()(AccountSettingsPage_AccountSettingsPage.contentContainer),
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(H2/* default */.A, {
          className: classnames_default()(AccountSettingsPage_AccountSettingsPage.pageLabel),
          children: [translations[locationPath], additionalPageHeaderContent[locationPath]]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Divider/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(react.Suspense, {
          fallback: /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.A, {}),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {})
        })]
      }), locationPath === 'social_accounts' && !!socialAccountsEducationalMaterials.length && /*#__PURE__*/(0,jsx_runtime.jsx)(EducationalInfo/* default */.A, {
        title: l('Social accounts in the knowledge base'),
        cards: socialAccountsEducationalMaterials,
        handleLinkClick: handleEducationalInfoClick
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(AccountSettingsMenu_AccountSettingsMenu, {})]
  });
};
/* harmony default export */ const pages_AccountSettingsPage_AccountSettingsPage = ((0,react_redux/* connect */.Ng)(function (state) {
  return {
    accountOrigin: (0,account_selectors/* getAccountOrigin */.wr)(state)
  };
})(AccountSettingsPage));
;// CONCATENATED MODULE: ./src/pages/AccountSettingsPage/index.js

// EXTERNAL MODULE: ./src/components/ui/DynamicsIndicator/index.ts + 2 modules
var DynamicsIndicator = __webpack_require__("jRR2");
;// CONCATENATED MODULE: ./src/containers/dashboard/TopSourcesList/SourceItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourceItem = ({"base":"XYkVhK_VxPq3tmceAjno","count":"loaDhcJVUN_kyFj4RQq4","nameContainer":"F9IzUGWGCRWwtOJdeuEU","name":"fjmihim8gh6xyiYDSUqy","totalValue":"k2Si87QEaVe9G0rT1ewt","total":"GQh9sKxZHQ8qzcYyxWMz","percentage":"eUFOK0Q1NijXTooQQl_Q","sparkline":"UTxknsI2UjITeKXabdtS"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TopSourcesList/SourceItem.tsx
var SourceItem_assign = (undefined && undefined.__assign) || function () {
    SourceItem_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourceItem_assign.apply(this, arguments);
};

/* eslint react/jsx-no-bind: 0 */






/* harmony default export */ const TopSourcesList_SourceItem = (function (_a) {
    var id = _a.id, dates = _a.dates, percentage = _a.percentage, count = _a.count, total = _a.total, name = _a.name, prevTotal = _a.prevTotal, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)("div", SourceItem_assign({ className: classnames_default()(SourceItem.base), onClick: function () { return onClick(id); } }, { children: [(0,jsx_runtime.jsxs)("div", SourceItem_assign({ className: classnames_default()(SourceItem.count) }, { children: [count, "."] })), (0,jsx_runtime.jsxs)("div", SourceItem_assign({ className: classnames_default()(SourceItem.nameContainer) }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: name }), (0,jsx_runtime.jsx)("span", SourceItem_assign({ className: classnames_default()(SourceItem.name), title: name }, { children: name }))] })), (0,jsx_runtime.jsxs)("div", SourceItem_assign({ className: classnames_default()(SourceItem.total) }, { children: [(0,jsx_runtime.jsx)(DynamicsIndicator/* default */.A, { value: total - prevTotal, showText: false }), (0,jsx_runtime.jsx)("span", SourceItem_assign({ className: classnames_default()(SourceItem.totalValue) }, { children: total > 1000000 ? numeral_default()(total).format('0.0a') : numeral_default()(total).format() }))] })), (0,jsx_runtime.jsxs)("div", SourceItem_assign({ className: classnames_default()(SourceItem.percentage) }, { children: [percentage === 0 ? '<1' : percentage, "%"] })), (0,jsx_runtime.jsx)("div", SourceItem_assign({ className: classnames_default()(SourceItem.sparkline) }, { children: (0,jsx_runtime.jsx)(build.Sparklines, SourceItem_assign({ height: 25, data: dates && dates.map(function (date) { return date.count; }) }, { children: (0,jsx_runtime.jsx)(build.SparklinesLine, { color: "orange" }) })) }))] })));
});

;// CONCATENATED MODULE: ./src/containers/dashboard/TopSourcesList/TopSourcesList.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TopSourcesList = ({"base":"ODbvsI3RBSgI59S2DOm2","title":"Hyrhpw_R1KDPBW7124Ay"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TopSourcesList/TopSourcesList.tsx
var TopSourcesList_assign = (undefined && undefined.__assign) || function () {
    TopSourcesList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TopSourcesList_assign.apply(this, arguments);
};














var TopSourcesList_TopSourcesList = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, sources = _a.sources, updateFilter = _a.updateFilter;
    var handleClick = function (source) {
        updateFilter({
            name: 'source',
            value: [source],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TopSourcesList_assign({ className: classnames_default()(TopSourcesList.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TopSourcesList_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H2/* default */.A, TopSourcesList_assign({ className: classnames_default()(TopSourcesList.title) }, { children: l('Top sources') })), sources
                        && sources.map(function (source, i) { return ((0,jsx_runtime.jsx)(TopSourcesList_SourceItem, { count: i + 1, name: source.name, id: source.id, percentage: source.percentage, total: source.total, prevTotal: source.prevTotal, dates: source.dates, onClick: handleClick }, source.id)); })] }) })) })));
};
/* harmony default export */ const dashboard_TopSourcesList_TopSourcesList = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, { updateFilter: filter_model/* filterModel */.W.action.updateFilter }), (0,withTopicStats/* default */.A)('topSourcesList', {
    aggregations: {
        sources: {
            size: 10,
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}, true, function (state) { return ({
    sources: (0,stats_selectors/* getTopSourcesStats */.$6)(state),
}); }), react.memo)(TopSourcesList_TopSourcesList));

;// CONCATENATED MODULE: ./src/containers/dashboard/TopSourcesList/index.ts


// EXTERNAL MODULE: ./src/components/charts/Pie/index.ts + 1 modules
var Pie = __webpack_require__("+GHa");
;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesPieChart/SourcesPieChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourcesPieChart = ({"base":"P6vZLbdecfveaBRXR74y"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesPieChart/SourcesPieChart.tsx
var SourcesPieChart_assign = (undefined && undefined.__assign) || function () {
    SourcesPieChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourcesPieChart_assign.apply(this, arguments);
};













var SourcesPieChart_SourcesPieChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, counts = _a.counts, otherCount = _a.otherCount, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleSourceClick = function (source) {
        if (source === 'other') {
            var excludedSources = counts.map(function (stat) { return stat.id; });
            updateFilter({
                name: 'sourceId',
                value: excludedSources,
                exclude: true,
                locationOptions: {
                    pathname: "/themes/".concat(themeId, "/dashboard"),
                },
            });
            return;
        }
        updateFilter({
            name: 'sourceId',
            value: [source],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    var handleSendChartExportedEvent = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SourcesPieChart_assign(SourcesPieChart_assign({}, properties), { chartType: 'Sources Distribution' }),
        });
    };
    var getStats = function () {
        if (!counts)
            return null;
        return [{
                name: l('Mentions count'),
                data: counts.map(function (stat) { return ({
                    name: stat.name,
                    key: stat.id,
                    y: stat.total || 0,
                }); }).concat({
                    name: l('Other'),
                    key: 'other',
                    y: otherCount,
                }),
            }];
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SourcesPieChart_assign({ className: SourcesPieChart.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SourcesPieChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Pie/* default */.A, { title: l('Sources distribution'), series: getStats(), onClick: handleSourceClick, onSendChartExportedEvent: handleSendChartExportedEvent }) })) })));
};
/* harmony default export */ const dashboard_SourcesPieChart_SourcesPieChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sourcesPieChart', {
    aggregations: {
        sources: {
            size: 7,
        },
    },
}, false, function (state) { return ({
    counts: (0,stats_selectors/* getSourcesCountsForPie */.sl)(state),
    otherCount: (0,stats_selectors/* getSourcesOtherCount */.aJ)(state),
}); }), react.memo)(SourcesPieChart_SourcesPieChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesPieChart/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesBarChart/SourcesBarChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourcesBarChart = ({"base":"rbtpBPUCbreq9eE3bAEC"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesBarChart/SourcesBarChart.tsx
var SourcesBarChart_assign = (undefined && undefined.__assign) || function () {
    SourcesBarChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourcesBarChart_assign.apply(this, arguments);
};












var SourcesBarChart_SourcesBarChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, counts = _a.counts, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleSourceClick = function (sourceName) {
        var sourceId = counts.find(function (stat) { return stat.name === sourceName; }).id;
        updateFilter({
            name: 'sourceId',
            value: [sourceId],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    var handleSendChartExportedEvent = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SourcesBarChart_assign(SourcesBarChart_assign({}, properties), { chartType: 'Mentions by source' }),
        });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SourcesBarChart_assign({ className: SourcesBarChart.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SourcesBarChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Bar, { title: l('Мentions by source'), series: [{
                        type: 'column',
                        colorByPoint: true,
                        data: (counts === null || counts === void 0 ? void 0 : counts.map(function (stat) { return ({ y: stat.total, percentage: stat.percentage }); })) || [],
                        showInLegend: false,
                    }], configOptions: {
                    xAxis: {
                        categories: (counts === null || counts === void 0 ? void 0 : counts.map(function (stat) { return stat.name; })) || [],
                    },
                }, onClick: handleSourceClick, onSendChartExportedEvent: handleSendChartExportedEvent }) })) })));
};
/* harmony default export */ const dashboard_SourcesBarChart_SourcesBarChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sourcesBarChart', {
    aggregations: {
        sources: {
            size: 7,
        },
    },
}, false, function (state) { return ({
    counts: (0,stats_selectors/* getSourcesCounts */.hd)(state),
}); }))(SourcesBarChart_SourcesBarChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesBarChart/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesLineChart/SourcesLineChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourcesLineChart = ({"base":"nDIauSF2w422phjwQzWK"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesLineChart/SourcesLineChart.tsx
var SourcesLineChart_assign = (undefined && undefined.__assign) || function () {
    SourcesLineChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourcesLineChart_assign.apply(this, arguments);
};

















var SourcesLineChart_SourcesLineChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, totalSourcesCount = _a.totalSourcesCount, interval = _a.interval, dynamics = _a.dynamics, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleClick = function (date, source) {
        updateFilter({
            name: 'sourceId',
            value: [source],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: SourcesLineChart_assign({}, getDataPointPeriod(date, interval)),
            },
        });
    };
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SourcesLineChart_assign(SourcesLineChart_assign({}, properties), { chartType: 'Sources Dynamics' }),
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!dynamics)
            return null;
        return dynamics.map(function (value) {
            var dates = value.dates;
            return {
                dates: dates,
                type: 'spline',
                name: value.name,
                key: value.key,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(dates[0].date).getTime(),
                pointInterval: interval,
                data: dates.map(function (point) { return point.count; }),
            };
        });
    }, [interval, dynamics]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SourcesLineChart_assign({ className: classnames_default()(SourcesLineChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SourcesLineChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Line/* default */.A, { title: totalSourcesCount && totalSourcesCount > 7
                    ? sprintf(l('Sources (top 7 out of %s)'), num(totalSourcesCount))
                    : l('Sources'), series: series, onClick: handleClick, 
                // @ts-ignore
                getTooltipFormatter: chart/* splineTooltipFormatter */.h, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_SourcesLineChart_SourcesLineChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sourcesDynamics', {
    aggregations: {
        sources: {
            size: 7,
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
        sourcesCount: {},
    },
}, false, function (state) { return ({
    dynamics: (0,stats_selectors/* getSourceDynamics */.sV)(state),
    totalSourcesCount: (0,stats_selectors/* getTotalSourcesCount */.mZ)(state) || 0,
}); }), react.memo)(SourcesLineChart_SourcesLineChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesLineChart/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesSentimentChart/SourcesSentimentChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourcesSentimentChart = ({"base":"KVnRIjCiH5epwxKDIgEa"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesSentimentChart/SourcesSentimentChart.tsx
var SourcesSentimentChart_assign = (undefined && undefined.__assign) || function () {
    SourcesSentimentChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourcesSentimentChart_assign.apply(this, arguments);
};















var SourcesSentimentChart_SourcesSentimentChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, stats = _a.stats, updateFilterBatched = _a.updateFilterBatched, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleClick = function (source, sentiment) {
        updateFilterBatched({
            updates: [
                { name: 'sentiment', value: [sentiment] },
                { name: 'sourceId', value: [source] }
            ],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SourcesSentimentChart_assign(SourcesSentimentChart_assign({}, properties), { chartType: 'Sentiment by source' }),
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!stats)
            return null;
        var sentimentColors = (0,utils_colors/* getSentimentColors */.ID)();
        return [
            {
                name: l('Positive'),
                key: 'positive',
                data: stats.map(function (stat) { return stat.sentiment.positive; }),
                color: sentimentColors.positive,
            },
            {
                name: l('Neutral'),
                key: 'neutral',
                data: stats.map(function (stat) { return stat.sentiment.neutral; }),
                color: sentimentColors.neutral,
            },
            {
                name: l('Negative'),
                key: 'negative',
                data: stats.map(function (stat) { return stat.sentiment.negative; }),
                color: sentimentColors.negative,
            }
        ];
    }, [stats]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SourcesSentimentChart_assign({ className: classnames_default()(SourcesSentimentChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SourcesSentimentChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Bar, { title: l('Sentiment by source'), series: series, configOptions: {
                    xAxis: {
                        categories: stats === null || stats === void 0 ? void 0 : stats.map(function (stat) { return stat.name; }),
                        crosshair: true,
                    },
                    tooltip: chart/* TOOLTIPS */.H.column,
                    plotOptions: {
                        column: {
                            stacking: 'percent',
                        },
                        series: {
                            cursor: 'pointer',
                            point: {
                                events: {
                                    click: function (e) { return handleClick(stats.find(function (stat) { return stat.name === e.point.category; }).id, e.point.series.options.key); },
                                },
                            },
                        },
                    },
                }, onClick: function () { }, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_SourcesSentimentChart_SourcesSentimentChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sourcesSentimentChart', {
    aggregations: {
        sources: {
            size: 7,
            aggregations: {
                sentiment: {},
            },
        },
    },
}, false, function (state) { return ({
    stats: (0,stats_selectors/* getSourcesSentiment */.Cc)(state),
}); }), react.memo)(SourcesSentimentChart_SourcesSentimentChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SourcesSentimentChart/index.ts


;// CONCATENATED MODULE: ./src/pages/dashboard/SourcesPage/SourcesPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourcesPage = ({"base":"_w6D_OMLCgC0OvhdnDxV","dynamics":"I0pV7twxun0nYdELrw9R","distribution":"YRTyiX6YyAGPIr47h8Z7","distributionItem":"MKBtlJw0pplsyV3Fb5tH","hint":"TwzEwJ4l6JfuhohdcAn9"});
;// CONCATENATED MODULE: ./src/pages/dashboard/SourcesPage/SourcesPage.tsx
var SourcesPage_assign = (undefined && undefined.__assign) || function () {
    SourcesPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourcesPage_assign.apply(this, arguments);
};











var SourcesPage_SourcesPage = function () {
    return ((0,jsx_runtime.jsxs)("div", SourcesPage_assign({ className: classnames_default()(SourcesPage.base) }, { children: [(0,jsx_runtime.jsx)("div", SourcesPage_assign({ className: classnames_default()(SourcesPage.dynamics) }, { children: (0,jsx_runtime.jsx)(dashboard_SourcesLineChart_SourcesLineChart, {}) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", SourcesPage_assign({ className: classnames_default()(SourcesPage.distribution) }, { children: [(0,jsx_runtime.jsx)("div", SourcesPage_assign({ className: SourcesPage.distributionItem }, { children: (0,jsx_runtime.jsx)(dashboard_TopSourcesList_TopSourcesList, {}) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", SourcesPage_assign({ className: SourcesPage.distributionItem }, { children: (0,jsx_runtime.jsx)(dashboard_SourcesPieChart_SourcesPieChart, {}) }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", SourcesPage_assign({ className: classnames_default()(SourcesPage.distribution) }, { children: [(0,jsx_runtime.jsx)("div", SourcesPage_assign({ className: SourcesPage.distributionItem }, { children: (0,jsx_runtime.jsx)(dashboard_SourcesSentimentChart_SourcesSentimentChart, {}) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", SourcesPage_assign({ className: SourcesPage.distributionItem }, { children: (0,jsx_runtime.jsx)(dashboard_SourcesBarChart_SourcesBarChart, {}) }))] }))] })));
};
/* harmony default export */ const dashboard_SourcesPage_SourcesPage = ((0,react.memo)(SourcesPage_SourcesPage));

;// CONCATENATED MODULE: ./src/pages/dashboard/SourcesPage/index.ts


;// CONCATENATED MODULE: ./src/state/dashboard/selectors.ts
var dashboard_selectors_assign = (undefined && undefined.__assign) || function () {
    dashboard_selectors_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return dashboard_selectors_assign.apply(this, arguments);
};
/* eslint-disable import/prefer-default-export */


var getCountries = function (state) { return state.dashboard.geo.countries; };
var isGeoForMapLoading = function (state) { return state.dashboard.geo.isLoading; };
var getGeoForMap = (0,reselect_es/* createSelector */.Mz)(getCountries, entities_new_selectors/* getGeoEntities */.vQ, function (countries, entities) { return countries.map(function (country) { return ({
    key: country.key,
    count: country.count,
    regionIds: country.regionIds.values.map(function (region) {
        var regionInfo = entities[region.key];
        if (!regionInfo)
            return null;
        return dashboard_selectors_assign(dashboard_selectors_assign({}, regionInfo), { count: region.count });
    }),
}); }); });

// EXTERNAL MODULE: ./src/3rd-party/mapdata/index.js + 26 modules
var mapdata = __webpack_require__("gXmr");
// EXTERNAL MODULE: ./node_modules/highcharts/highmaps.js
var highmaps = __webpack_require__("bIOw");
var highmaps_default = /*#__PURE__*/__webpack_require__.n(highmaps);
;// CONCATENATED MODULE: ./src/components/charts/Map/Map.tsx
var Map_assign = (undefined && undefined.__assign) || function () {
    Map_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Map_assign.apply(this, arguments);
};
var Map_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable import/no-named-as-default */




var Map = function (_a) {
    var className = _a.className, title = _a.title, series = _a.series, _b = _a.configOptions, configOptions = _b === void 0 ? {} : _b, onSendChartExportedEvent = _a.onSendChartExportedEvent;
    var _c = Map_read((0,react.useState)(null), 2), chartData = _c[0], setChartData = _c[1];
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({
            properties: { fileType: fileType },
        });
    };
    var config = (0,react.useMemo)(function () { return (Map_assign({ title: {
            text: title || 'worldMap',
            style: {
                display: 'none',
            },
        }, chart: {
            height: 600,
        }, mapNavigation: {
            enabled: true,
            enableMouseWheelZoom: false,
            enableDoubleClickZoomTo: true,
            enableDoubleClickZoom: true,
            buttonOptions: {
                verticalAlign: 'bottom',
            },
        }, plotOptions: {
            series: {
                tooltip: {
                    pointFormat: '{point.name}: {point.value}',
                },
            },
        }, series: series }, configOptions)); }, [series, configOptions]);
    return ((0,jsx_runtime.jsxs)("div", Map_assign({ className: className }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: title, chartRef: chartData, onChartExport: onChartExport }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { constructorType: "mapChart", options: config, highcharts: (highmaps_default()), callback: setChartData })] })));
};
/* harmony default export */ const Map_Map = ((0,react.memo)(Map));

;// CONCATENATED MODULE: ./src/components/charts/Map/index.ts


;// CONCATENATED MODULE: ./src/components/charts/GeoMap/GeoMap.tsx
var GeoMap_assign = (undefined && undefined.__assign) || function () {
    GeoMap_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GeoMap_assign.apply(this, arguments);
};
var GeoMap_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable import/no-named-as-default */






var GeoMap = function (_a) {
    var className = _a.className, title = _a.title, isLoading = _a.isLoading, geo = _a.geo, _b = _a.configOptions, configOptions = _b === void 0 ? {} : _b, onSendAnalyticalEvent = _a.onSendAnalyticalEvent, onSendChartExportedEvent = _a.onSendChartExportedEvent, onRegionClick = _a.onRegionClick;
    var _c = GeoMap_read((0,react.useState)(null), 2), country = _c[0], setCountry = _c[1];
    var _d = GeoMap_read((0,react.useState)(null), 2), chartData = _d[0], setChartData = _d[1];
    var handleCountryClick = function (c) {
        if (constants/* SUPPORTED_COUNTRIES_WITH_REGIONS */.j4.includes(c)) {
            setCountry(c);
            onSendAnalyticalEvent({ eventType: 'country on map clicked' });
        }
    };
    var handleRegionClick = function (regionId) {
        onRegionClick({ regionId: regionId });
        onSendAnalyticalEvent({ eventType: 'region on map clicked' });
    };
    var handleBackToWorldMap = function () {
        setCountry(null);
    };
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({
            properties: { fileType: fileType, country: country },
        });
    };
    var renderWorldMap = function () {
        var data = geo.map(function (g) { return g === null || g === void 0 ? void 0 : g.map(function (c) { return ({
            'hc-key': c.key,
            value: c.count,
            name: (0,getCountryNameTranslation/* default */.Ay)(c.key),
            category: c.category,
        }); }); });
        var config = {
            series: data.map(function (d, i) {
                var _a;
                return ({
                    data: d,
                    mapData: (0,getCountryNameTranslation/* getTranslatedChartWorldMap */.pc)(mapdata/* world */.z),
                    tooltip: {
                        pointFormat: '{point.name}: {point.value}',
                    },
                    name: ((_a = d[0]) === null || _a === void 0 ? void 0 : _a.category) || "".concat(l('Mentions'), ":"),
                    borderWidth: 0.5,
                    events: {
                        click: function (e) { return handleCountryClick(e.point['hc-key']); },
                    },
                    colorAxis: i,
                });
            }),
            configOptions: GeoMap_assign({ chart: {
                    height: 600,
                } }, configOptions),
        };
        return (0,jsx_runtime.jsx)(Map_Map, GeoMap_assign({ title: title }, config, { onSendChartExportedEvent: onSendChartExportedEvent }));
    };
    var renderCountryMap = function (c) {
        if (isLoading)
            return null;
        var data = geo
            .map(function (g) { return g
            .find(function (d) { return d.key === c; })
            .regionIds
            .filter(function (f) { return f && f.mapRegions !== undefined; })
            .map(function (r) { return (GeoMap_assign(GeoMap_assign({}, r), { 'hc-key': r.mapRegions[0], value: r.count, category: r.category })); }); });
        var config = {
            series: data.map(function (d) {
                var _a;
                return ({
                    data: d,
                    mapData: (0,getCountryNameTranslation/* getTranslatedChartCountryMap */.b6)(mapdata/* countries */.X[country], data),
                    tooltip: {
                        pointFormat: '{point.name}: {point.value}',
                    },
                    name: ((_a = d[0]) === null || _a === void 0 ? void 0 : _a.category) || "".concat(l('Mentions'), ":"),
                    borderWidth: 0.5,
                    events: {
                        click: function (e) { return handleRegionClick(e.point.regionId); },
                    },
                });
            }),
            configOptions: configOptions,
        };
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "back", onClick: handleBackToWorldMap }), (0,jsx_runtime.jsx)(Map_Map, GeoMap_assign({ title: title }, config, { onSendChartExportedEvent: onSendChartExportedEvent }))] }));
    };
    return ((0,jsx_runtime.jsx)("div", GeoMap_assign({ className: className }, { children: country ? renderCountryMap(country) : renderWorldMap() })));
};
/* harmony default export */ const GeoMap_GeoMap = ((0,react.memo)(GeoMap));

;// CONCATENATED MODULE: ./src/components/charts/GeoMap/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/GeoMap/GeoMap.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const dashboard_GeoMap_GeoMap = ({"base":"xq7_GzLzeQLF9E1wEtqV"});
;// CONCATENATED MODULE: ./src/containers/dashboard/GeoMap/GeoMap.tsx
var GeoMap_GeoMap_assign = (undefined && undefined.__assign) || function () {
    GeoMap_GeoMap_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GeoMap_GeoMap_assign.apply(this, arguments);
};

















var GeoMapContainer = function (_a) {
    var geo = _a.geo, isLoading = _a.isLoading, statsBy = _a.statsBy, themeId = _a.themeId, fetchGeoData = _a.fetchGeoData, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        fetchGeoData({ themeId: themeId, statsBy: statsBy });
    }, [statsBy]);
    var handleUpdateFilter = function (_a) {
        var regionId = _a.regionId;
        updateFilter({
            name: 'region',
            value: [regionId],
        });
    };
    var handleSendAnalyticalEvent = function (_a) {
        var eventType = _a.eventType;
        sendAnalyticalEvent({ eventType: "dashboard: ".concat(eventType) });
    };
    var handleSendChartExportedEvent = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: {
                fileType: properties.fileType,
                chartType: "Geo Map: ".concat(properties.country ? properties.country : 'world'),
            },
        });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, GeoMap_GeoMap_assign({ className: dashboard_GeoMap_GeoMap.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, GeoMap_GeoMap_assign({ loaded: !isLoading }, { children: (0,jsx_runtime.jsx)(GeoMap_GeoMap, { isLoading: isLoading, title: (0,utils_statsBy/* getGeoMapLabel */.K)(statsBy), geo: [geo], onRegionClick: handleUpdateFilter, onSendAnalyticalEvent: handleSendAnalyticalEvent, onSendChartExportedEvent: handleSendChartExportedEvent }) })) })));
};
/* harmony default export */ const containers_dashboard_GeoMap_GeoMap = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        geo: getGeoForMap(state),
        isLoading: isGeoForMapLoading(state),
        statsBy: (0,stats_selectors/* getStatsBy */.b8)(state),
        themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    });
}, {
    fetchGeoData: dashboard_model/* dashboardModel */._.action.fetchGeoData,
    push: routing_actions/* push */.VC,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withFilter/* default */.A)(function (props, isFirstTime) {
    if (!isFirstTime)
        props.fetchGeoData({ themeId: props.themeId, statsBy: props.statsBy });
}))(GeoMapContainer));

;// CONCATENATED MODULE: ./src/containers/dashboard/GeoMap/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/TrendList/TrendList.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TrendList = ({"base":"fSAJZPJmCUjAc7G7mAbu","title":"TwRYJsTC62ZBCac0XVYt","cloud":"I3jDIt95eVffQH7ZYiWD","trendContainer":"r9OcDu1YrRtEo4UB0dLD","edit":"V_4BRXPsxiCtB6N8gy7X","trendName":"g4WNIs2TuqGNzY1hs3wq","emptyState":"QMlXN22Z3j_oOXX9uoRp","emptyStateTitle":"Q8ZvhIookjDjwIvMGtXl","emptyStateText":"g0PkeEdcoyFKbLykB3b6"});
;// CONCATENATED MODULE: ./src/containers/dashboard/TrendList/TrendList.tsx
var TrendList_assign = (undefined && undefined.__assign) || function () {
    TrendList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TrendList_assign.apply(this, arguments);
};



















var TrendList_TrendList = function (_a) {
    var isFetching = _a.isFetching, isCopilotLimitReached = _a.isCopilotLimitReached, filter = _a.filter, themeId = _a.themeId, trendList = _a.trendList, copilotSettings = _a.copilotSettings, showModal = _a.showModal, updateFilter = _a.updateFilter, updateFilterQuery = _a.updateFilterQuery, fetchInsightsCopilotUsage = _a.fetchInsightsCopilotUsage, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        fetchInsightsCopilotUsage();
    }, []);
    var handleInsightsCopilotCall = function (id) {
        var copilotParams = {
            isCopilotActive: true,
            copilotMetaData: isCopilotLimitReached ? null : { trend: id },
        };
        var trendFilterGroup = filter.findByName('trend');
        if (trendFilterGroup)
            filter.removeFilterGroup(trendFilterGroup);
        filter.doAdd('trend', [id]);
        updateFilterQuery({
            filter: filter,
            pathname: "/themes/".concat(themeId, "/mentions"),
            queryParams: TrendList_assign({ orderBy: 'engagement' }, copilotParams),
        });
    };
    var handleTrendClick = function (id) {
        sendAnalyticalEvent({ eventType: 'Trends: trend word clicked' });
        if (copilotSettings.showWhenTrendsClicked) {
            handleInsightsCopilotCall(id);
            return;
        }
        updateFilter({
            name: 'trend',
            value: [id],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: { orderBy: 'engagement' },
            },
        });
    };
    var handleEditTrend = function (trend) {
        showModal('editTrend', {
            topicId: themeId,
            trendId: trend.key,
            name: trend.name,
            sentiment: trend.sentiment,
            showFrom: 'analytics',
        });
    };
    var sortedTrends = (0,react.useMemo)(function () {
        return trendList === null || trendList === void 0 ? void 0 : trendList.sort(function (a, b) { return a.engagement < b.engagement; });
    }, [trendList]);
    var renderTrends = function () {
        if (!trendList)
            return null;
        return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H2/* default */.A, TrendList_assign({ className: TrendList.title }, { children: l('Trends') })), sortedTrends.map(function (trend) { return ((0,jsx_runtime.jsxs)("div", TrendList_assign({ role: "presentation", className: classnames_default()(TrendList.trendContainer) }, { children: [(0,jsx_runtime.jsx)("div", TrendList_assign({ className: classnames_default()(TrendList.trendName), style: { borderColor: (0,utils_colors/* getSentimentColor */.HS)(trend.sentiment) }, title: trend.count, onClick: function () { return handleTrendClick(trend.key); } }, { children: trend.name })), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(TrendList.edit), type: "edit", onClick: function () { return handleEditTrend(trend); } })] }), trend.key)); })] }));
    };
    var renderEmptyState = function () {
        return ((0,jsx_runtime.jsx)("div", TrendList_assign({ className: classnames_default()(TrendList.emptyState) }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/trendChart.svg", title: (0,jsx_runtime.jsx)("span", TrendList_assign({ className: classnames_default()(TrendList.emptyStateTitle) }, { children: l('No trends detected') })), message: (0,jsx_runtime.jsx)("span", TrendList_assign({ className: classnames_default()(TrendList.emptyStateText) }, { children: l('Try changing applied filter or period to see trends') })) }) })));
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, TrendList_assign({ className: classnames_default()(TrendList.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, TrendList_assign({ loaded: !isFetching, empty: !(trendList === null || trendList === void 0 ? void 0 : trendList.length), emptyState: renderEmptyState() }, { children: renderTrends() })) })));
};
/* harmony default export */ const dashboard_TrendList_TrendList = ((0,redux/* compose */.Zz)((0,withTopicStats/* default */.A)('trendList', {
    aggregations: {
        trends: {
            size: 10,
            aggregations: {
                date: {},
                sentiment: {},
                engagement: {},
            },
        },
    },
}, false, function (state) { return ({
    trendList: (0,stats_selectors/* getTrendsList */.d7)(state),
    isCopilotLimitReached: (0,insightsCopilot_selectors/* isInsightsCopilotLimitReached */.hh)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state),
}); }), (0,react_redux/* connect */.Ng)(null, {
    showModal: modals_actions/* showModal */.to,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchInsightsCopilotUsage: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage,
}), react.memo)(TrendList_TrendList));

;// CONCATENATED MODULE: ./src/containers/dashboard/TrendList/index.ts


// EXTERNAL MODULE: ./node_modules/hierarchical-clustering/lib/index.js
var hierarchical_clustering_lib = __webpack_require__("rSJV");
var hierarchical_clustering_lib_default = /*#__PURE__*/__webpack_require__.n(hierarchical_clustering_lib);
;// CONCATENATED MODULE: ./src/utils/stopwords.js
// This is stopwords that ML guys asked to use in order to filter gibberish from tranding words
// I hope it's temporary solution
/* harmony default export */ const stopwords = (['а', 'або', 'адже', 'аж', 'але', 'ало', 'б', 'багато', 'без', 'безперервно', 'близько', 'более', 'больше', 'був', 'буває', 'буде', 'будемо', 'будет', 'будете', 'будеш', 'будто', 'буду', 'будуть', 'будь', 'будь ласка', 'була', 'були', 'було', 'бути', 'бы', 'был', 'была', 'были', 'было', 'быть', 'більш', 'більше', 'в', 'важлива', 'важливе', 'важливий', 'важливі', 'вам', 'вами', 'вас', 'ваш', 'ваша', 'ваше', 'ваші', 'вгору', 'вдалині', 'вдруг', 'ведь', 'весь', 'вже', 'ви', 'вміти', 'вниз', 'внизу', 'во', 'вона', 'вони', 'воно', 'восьмий', 'вот', 'впрочем', 'все', 'всегда', 'всего', 'всех', 'всею', 'всього', 'всьому', 'всю', 'вся', 'всім', 'всіх', 'втім', 'вы', 'від', 'відсотків', 'він', 'вісім', 'вісімнадцятий', 'вісімнадцять', 'г', 'где', 'геть', 'говорив', 'да', 'давно', 'даже', 'далеко', 'далі', 'даром', 'два', 'двадцятий', 'двадцять', 'дванадцятий', 'дванадцять', 'двох', 'дві', 'де', "дев'ятий", "дев'ятнадцятий", "дев'ятнадцять", "дев'ять", 'день', 'десятий', 'десять', 'для', 'до', 'добре', 'довго', 'досить', 'другий', 'друго', 'другой', 'дуже', 'дякую', 'дійсно', 'е', 'его', 'ее', 'ей', 'ему', 'если', 'есть', 'еще', 'ж', 'же', 'життя', 'з', 'за', 'завжди', 'зазвичай', 'зайнята', 'зайнятий', 'зайнято', 'зайняті', 'занадто', 'зараз', 'зате', 'зачем', 'звичайно', 'звідси', 'звідусіль', 'здається', 'здесь', 'значить', 'знову', 'зовсім', 'зі', 'и', 'из', 'из-за', 'или', 'им', 'иногда', 'их', 'його', 'йому', 'к', 'каже', 'как', 'какая', 'какой', 'ким', 'когда', 'кого', 'кожен', 'кожна', 'кожне', 'кожні', 'коли', 'кому', 'конечно', 'краще', 'кругом', 'крім', 'кто', 'куда', 'куди', 'кілька', 'ледве', 'ли', 'лише', 'лучше', 'люди', 'людина', 'м', 'майже', 'мало', 'мати', 'межд', 'мене', 'менше', 'меня', 'мені', 'ми', 'миру', 'мне', 'много', 'мною', 'могти', 'мож', 'може', 'может', 'можна', 'можно', 'можуть', 'мой', 'моя', 'моє', 'мої', 'мы', 'міг', 'між', 'мій', 'мільйонів', 'на', 'навколо', 'навіть', 'навіщо', 'нагорі', 'над', 'надо', 'назад', 'найбільш', 'наконец', 'нам', 'нами', 'нарешті', 'нас', 'наш', 'наша', 'наше', 'наші', 'не можна', 'небудь', 'него', 'недалеко', 'нее', 'ней', 'нельзя', 'немає', 'нерідко', 'нет', 'нещодавно', 'нею', 'неї', 'ни', 'нибудь', 'нижче', 'низько', 'никогда', 'ним', 'ними', 'них', 'ничего', 'но', 'ну', 'нх', 'нього', 'ніби', 'ніж', 'ній', 'ніколи', 'нікуди', 'нічого', 'о', 'об', 'обидва', 'один', 'одинадцятий', 'одинадцять', 'однак', 'одного', 'одного разу', 'однієї', 'он', 'она', 'они', 'опять', 'особливо', 'ось', 'от', "п'ятий", "п'ятнадцятий", "п'ятнадцять", "п'ять", 'перед', 'перший', 'по', 'повинно', 'под', 'поки', 'пора', 'поруч', 'посеред', 'после', 'потом', 'потому', 'потрібно', 'потім', 'початку', 'почти', 'прекрасно', 'при', 'про', 'просто', 'проти', 'під', 'пізніше', 'пір', 'після', 'раз', 'разве', 'рано', 'раніше', 'раптом', 'року', 'років', 'році', 'рік', 'с', 'сам', 'сама', 'саме', 'самим', 'самими', 'самих', 'самого', 'самому', 'саму', 'самі', 'самій', 'свого', 'свою', 'своє', 'своєї', 'свої', 'своїх', 'себе', 'себя', 'сейчас', 'сих', 'сказав', 'сказала', 'сказати', 'скрізь', 'скільки', 'со', 'собою', 'собі', 'совсем', 'спасибі', 'спочатку', 'справ', 'став', 'суть', 'сьогодні', 'сьомий', 'сім', 'сімнадцятий', 'сімнадцять', 'т', 'та', 'так', 'така', 'таке', 'такий', 'також', 'такой', 'такі', 'там', 'твоя', 'твоє', 'твій', 'тебе', 'тебя', 'теж', 'тем', 'тепер', 'теперь', 'ти', 'тим', 'тими', 'тисяч', 'тих', 'то', 'тобою', 'тобі', 'тогда', 'того', 'тоді', 'тоже', 'той', 'только', 'том', 'тому', 'тот', 'тою', 'треба', 'третій', 'три', 'тринадцятий', 'тринадцять', 'трохи', 'ту', 'туди', 'тут', 'ты', 'ті', 'тільки', 'у', 'уж', 'уже', 'усюди', 'усіма', 'хорошо', 'хоть', 'хотіти', 'хоч', 'хоча', 'хочеш', 'хто', 'хіба', 'це', 'цей', 'цим', 'цими', 'цих', 'цього', 'цьому', 'цю', 'ця', 'ці', 'цієї', 'час', 'часто', 'частіше', 'часу', 'чего', 'чем', 'через', 'четвертий', 'чи', 'численна', 'численне', 'численний', 'численні', 'чого', 'чому', 'чотири', 'чотирнадцятий', 'чотирнадцять', 'что', 'чтоб', 'чтобы', 'чудово', 'чуть', 'шостий', 'шістнадцятий', 'шістнадцять', 'шість', 'ще', 'що', 'щоб', 'эти', 'этого', 'этой', 'этом', 'этот', 'эту', 'я', 'як', 'яка', 'яку', 'який', 'яких', 'якого', 'якої', 'якщо', 'які', 'є', 'і', "ім'я", 'іноді', 'інша', 'інше', 'інший', 'інших', 'інші', 'їй', 'їм', 'їх', 'її']);
;// CONCATENATED MODULE: ./src/containers/dashboard/SignificantWordList/utils.ts
var SignificantWordList_utils_assign = (undefined && undefined.__assign) || function () {
    SignificantWordList_utils_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SignificantWordList_utils_assign.apply(this, arguments);
};
var SignificantWordList_utils_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var SignificantWordList_utils_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};


var getMaxSentiment = function (rawData) {
    var _a;
    if (rawData === void 0) { rawData = []; }
    return (_a = rawData.reduce(function (prev, current) {
        return (prev && prev.count > current.count) ? prev : current;
    })) === null || _a === void 0 ? void 0 : _a.key;
};
var avg = function (dists) { return dists.reduce(function (a, b) { return a + b; }) / dists.length; };
var distance = function (a, b) {
    var result = 0;
    for (var index = 0; index < a.length; index += 1) {
        result += Math.pow((a[index] - b[index]), 2);
    }
    return Math.sqrt(result) / a.length;
};
var scale = function (sample) {
    var upperBound = 1.0;
    var max = Math.max.apply(Math, SignificantWordList_utils_spreadArray([], SignificantWordList_utils_read(sample), false));
    var scaleFactor = max === 0 ? 1 : upperBound / max;
    return sample.map(function (e) { return e * scaleFactor; });
};
var getSignificantWords = function (data) {
    if (!data || !data.aggregations.significantWords.values.length) {
        return [];
    }
    // 1. Получаем двумерную матрицу (дата-слово)
    var wordMatrix = data
        .aggregations.significantWords.values
        .filter(function (word) { return word.key.length > 2; })
        .map(function (word) { return ({
        key: word.key,
        count: word.count,
        dates: word.dates.values,
        sentiment: getMaxSentiment(word.sentiment.values),
        average: word.count / word.dates.values.length,
    }); });
    // 2. Для каждой клетки матрицы считаем отношение посчитанного
    //    на предыдущем шаге значения к среднему для этого слова
    var wordMatrixDist = wordMatrix.map(function (word) {
        var averageCount = word.average;
        word.dates.forEach(function (date) { date.dist = date.count / (averageCount || 1); });
        return word;
    });
    // 3. Считаем максимальное значение посчитанного параметра по каждому дню
    var factors = {};
    var dates = wordMatrixDist[0].dates;
    var _loop_1 = function (i) {
        factors[dates[i].key] = Math.max.apply(Math, SignificantWordList_utils_spreadArray([], SignificantWordList_utils_read(wordMatrixDist.map(function (word) { return word.dates[i].dist; })), false));
    };
    for (var i = 0; i < dates.length; i += 1) {
        _loop_1(i);
    }
    // 4. нормализуем значения матрицы по нему,
    //    при этом изначальные значения возводим в степень 1,05,
    //    иначе для длинных периодов мы получим большое количество
    //    топ-слов по всем дням с одинаковым значением 1.00
    var wordMatrixNormalized = wordMatrixDist.map(function (word) { return (SignificantWordList_utils_assign(SignificantWordList_utils_assign({}, word), { factor: word.dates.reduce(function (max, _a) {
            var key = _a.key, dist = _a.dist;
            return Math.max(max, (Math.pow((dist), 1.05)) / (factors[key] || 1));
        }, 0) })); });
    // 5. group similar words
    var similarityThreshold = 0.022;
    var scaledCounts = wordMatrixNormalized.map(function (word) { return scale(word.dates.map(function (date) { return date.count; })); });
    var options = { input: scaledCounts, distance: distance, linkage: avg, maxLinkage: similarityThreshold };
    var levels = hierarchical_clustering_lib_default()(options);
    var topLevelClusters = levels[levels.length - 1].clusters;
    var wordClusters = topLevelClusters
        .map(function (cluster) {
        var words = cluster.map(function (index) { return wordMatrixNormalized[index]; });
        return words.sort(function (a, b) { return b.factor - a.factor; })[0];
    });
    // 6. Считаем максимальное значение посчитанного параметра
    //    для каждого слова по всем дням
    //    и сортируем по этому максимальному значению
    var result = wordClusters
        .filter(function (cluster) { return !stopwords.includes(cluster.key); })
        .sort(function (a, b) { return b.factor - a.factor; })
        .slice(0, 10);
    return result;
};

;// CONCATENATED MODULE: ./src/containers/dashboard/SignificantWordList/SignificantWordList.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SignificantWordList = ({"base":"A_jMUHJs8hdJSPp__s43","cloud":"_silqUAxxWMvf6miqz5H","wordContainer":"stOB51gYP8JNi5z3dJLk","wordName":"pyYfUjjvZBJLTytAmPq5","sparkline":"SpRGZ3a0IcJSAzLJiaYZ"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SignificantWordList/SignificantWordList.tsx
var SignificantWordList_assign = (undefined && undefined.__assign) || function () {
    SignificantWordList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SignificantWordList_assign.apply(this, arguments);
};

/* eslint react/jsx-no-bind: 0 */















var SPARKLINE_HEIGHT = 35;
var SignificantWordList_SignificantWordList = function (_a) {
    var isFetching = _a.isFetching, data = _a.data, updateFilter = _a.updateFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var handleWordClick = function (word) {
        sendAnalyticalEvent({ eventType: 'Trends: hot trend clicked' });
        updateFilter({
            name: 'word',
            value: [word],
        });
    };
    var significantWords = (0,react.useMemo)(function () { return getSignificantWords(data === null || data === void 0 ? void 0 : data.toJS()); }, [data]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SignificantWordList_assign({ className: classnames_default()(SignificantWordList.base) }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, SignificantWordList_assign({ loaded: !isFetching, className: classnames_default()(SignificantWordList.list) }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Hot trends') }), significantWords.map(function (word) {
                    return (0,jsx_runtime.jsxs)("div", SignificantWordList_assign({ className: classnames_default()(SignificantWordList.wordContainer), onClick: function () { return handleWordClick(word.key); } }, { children: [(0,jsx_runtime.jsx)("div", SignificantWordList_assign({ className: classnames_default()(SignificantWordList.wordName), title: word.key }, { children: word.key })), (0,jsx_runtime.jsx)("div", SignificantWordList_assign({ className: classnames_default()(SignificantWordList.sparkline) }, { children: (0,jsx_runtime.jsx)(build.Sparklines, SignificantWordList_assign({ height: SPARKLINE_HEIGHT, data: word.dates.map(function (date) { return date.count; }) }, { children: (0,jsx_runtime.jsx)(build.SparklinesLine, { color: (0,utils_colors/* getSentimentColor */.HS)(word.sentiment) }) })) }))] }), word.key);
                })] })) })));
};
/* harmony default export */ const dashboard_SignificantWordList_SignificantWordList = ((0,redux/* compose */.Zz)((0,withTopicStats/* default */.A)('significantWords', {
    aggregations: {
        significantWords: {
            size: 200,
            aggregations: {
                sentiment: {},
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}, false), (0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(SignificantWordList_SignificantWordList));

;// CONCATENATED MODULE: ./src/containers/dashboard/SignificantWordList/index.ts


;// CONCATENATED MODULE: ./src/components/other/LineChartTrendTooltip/LineChartTrendTooltip.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const LineChartTrendTooltip = ({"tooltipHeading":"dAFxglf_8hF1rmOKIFGc","tooltipSubHeading":"X8_h_h_pEYjIQZBH0Tag","tooltipCount":"OuqsSfM7MXIdleb0gaNg"});
;// CONCATENATED MODULE: ./src/components/other/LineChartTrendTooltip/LineChartTrendTooltip.tsx
var LineChartTrendTooltip_assign = (undefined && undefined.__assign) || function () {
    LineChartTrendTooltip_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LineChartTrendTooltip_assign.apply(this, arguments);
};
var LineChartTrendTooltip_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











var TREND_TOOLTIP_MAX_WIDTH = 295;
var mapObject = function (object, callback) {
    if (!object)
        return [];
    return Object.entries(object).map(function (_a) {
        var _b = LineChartTrendTooltip_read(_a, 2), key = _b[0], value = _b[1];
        return callback(value, key);
    });
};
var LineChartTrendTooltip_LineChartTrendTooltip = function (_a) {
    var _b, _c, _d;
    var chart = _a.chart;
    var trend = chart.point.trend;
    var genderMapping = {
        male: {
            name: l('Male', 'trendDetails'),
            color: utils_colors/* CATEGORIZED_COLORS */.lC.male,
        },
        female: {
            name: l('Female', 'trendDetails'),
            color: utils_colors/* CATEGORIZED_COLORS */.lC.female,
        },
        community: {
            name: l('Community', 'trendDetails'),
            color: utils_colors/* CATEGORIZED_COLORS */.lC.community,
        },
    };
    var isNotEmpty = function (field) { return !!field; };
    var trendHasDetails = ((_b = trend.region) === null || _b === void 0 ? void 0 : _b.length)
        || isNotEmpty(trend.genders)
        || isNotEmpty(trend.sources)
        || isNotEmpty(trend.systemTags);
    var renderTrendDetails = function (value, percentage, icon) { return ((0,jsx_runtime.jsxs)("div", LineChartTrendTooltip_assign({ style: {
            whiteSpace: 'nowrap',
            marginRight: '16px',
            marginTop: '4px',
        } }, { children: [icon, (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", LineChartTrendTooltip_assign({ className: classnames_default()(LineChartTrendTooltip.tooltipValue) }, { children: value })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), Math.ceil(percentage * 100), "%"] }))); };
    return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("h5", LineChartTrendTooltip_assign({ style: {
                    fontSize: 14,
                    lineHeight: 1.2,
                    whiteSpace: 'normal',
                    color: (0,utils_colors/* getSentimentColor */.HS)(trend.sentiment),
                    marginBottom: 10,
                    width: TREND_TOOLTIP_MAX_WIDTH,
                } }, { children: trend.name })), (0,jsx_runtime.jsxs)("div", LineChartTrendTooltip_assign({ style: { fontSize: 14, color: '#949393', whiteSpace: 'nowrap', display: 'flex' } }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", { children: l('Mentions', 'trendTooltip') }), (0,jsx_runtime.jsx)(H3/* default */.A, LineChartTrendTooltip_assign({ className: classnames_default()(LineChartTrendTooltip.tooltipHeading) }, { children: ((_c = trend.totalCount) === null || _c === void 0 ? void 0 : _c.toLocaleString('ru-RU')) || '-' }))] }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { width: "24px" }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", { children: l('Engagement', 'trendTooltip') }), (0,jsx_runtime.jsx)(H3/* default */.A, LineChartTrendTooltip_assign({ className: classnames_default()(LineChartTrendTooltip.tooltipHeading) }, { children: trend.engagement.toLocaleString('ru-RU') }))] }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { width: "24px" }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", { children: l('Authors', 'trendTooltip') }), (0,jsx_runtime.jsx)(H3/* default */.A, LineChartTrendTooltip_assign({ className: classnames_default()(LineChartTrendTooltip.tooltipHeading) }, { children: trend.authorsCount.toLocaleString('ru-RU') }))] }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, { width: "32px" })] })), trendHasDetails
                ? ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("hr", { style: {
                                border: 'none',
                                borderTop: '1px dashed #e2e2e2',
                                marginLeft: '-10px',
                                marginRight: '-10px',
                            } }), (0,jsx_runtime.jsxs)("div", LineChartTrendTooltip_assign({ style: {
                                fontSize: 13,
                                color: '#949393',
                                whiteSpace: 'normal',
                                verticalAlign: 'middle',
                                display: 'flex',
                                flexFlow: 'row wrap',
                            } }, { children: [mapObject(trend.systemTags, function (percentage, systemTag) { return (renderTrendDetails((0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(systemTag).label, percentage, (0,jsx_runtime.jsx)(Icon/* default */.A, { type: systemTag, size: 13 }))); }), mapObject(trend.genders, function (percentage, gender) { return (renderTrendDetails(genderMapping[gender].name, percentage, (0,jsx_runtime.jsx)("span", LineChartTrendTooltip_assign({ style: { color: genderMapping[gender].color } }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: gender, color: genderMapping[gender].color, size: 14 }) })))); }), mapObject(trend.sources, function (percentage, source) { return (renderTrendDetails(source, percentage, (0,jsx_runtime.jsx)("span", LineChartTrendTooltip_assign({ style: { verticalAlign: 'middle' } }, { children: (0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: source, size: 12, alt: source }) })))); }), (_d = trend.region) === null || _d === void 0 ? void 0 : _d.map(function (region) { return (renderTrendDetails(region.name, region.share, (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "geo", size: 13 }))); })] }))] }))
                : null] }));
};
/* harmony default export */ const other_LineChartTrendTooltip_LineChartTrendTooltip = (LineChartTrendTooltip_LineChartTrendTooltip);

;// CONCATENATED MODULE: ./src/components/other/LineChartTrendTooltip/index.ts


// EXTERNAL MODULE: ./node_modules/date-fns/esm/format/index.js + 15 modules
var format = __webpack_require__("1ihG");
;// CONCATENATED MODULE: ./src/components/other/LineChartMentionTooltip/LineChartMentionTooltip.tsx
var LineChartMentionTooltip_assign = (undefined && undefined.__assign) || function () {
    LineChartMentionTooltip_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LineChartMentionTooltip_assign.apply(this, arguments);
};








var LineChartMentionTooltip = function (_a) {
    var chart = _a.chart, _b = _a.statsBy, statsBy = _b === void 0 ? utils_statsBy/* DEFAULT_STATS_BY */._b : _b, interval = _a.interval;
    var colors = (0,utils_colors/* getColorsByTheme */.hx)();
    var getPeriod = function () {
        if (interval === dateUtils/* TIME */.E9.hour) {
            return (0,format/* default */.A)(new Date(chart.point.x), 'HH:mm');
        }
        if (interval === dateUtils/* TIME */.E9.day) {
            return (0,formats/* formatLongLocalizedDate */.DV)(new Date(chart.point.x));
        }
        if (interval === dateUtils/* TIME */.E9.week) {
            return "".concat((0,formats/* formatLongLocalizedDate */.DV)(new Date(chart.point.x)), " - ").concat((0,formats/* formatLongLocalizedDate */.DV)(new Date(chart.point.x + interval - dateUtils/* TIME */.E9.Day)));
        }
        return (0,formats/* formatLongLocalizedDate */.DV)(new Date(chart.point.x));
    };
    return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("h5", LineChartMentionTooltip_assign({ style: {
                    fontSize: 13,
                    color: colors.textColor,
                    marginBottom: 8,
                } }, { children: sprintf((0,utils_statsBy/* getChartTooltipLabel */.W1)(statsBy, chart.point.y), chart.point.y.toLocaleString('ru-RU')) })), (0,jsx_runtime.jsxs)("span", LineChartMentionTooltip_assign({ style: {
                    fontSize: 13,
                    color: colors.secondaryTextColor,
                    whiteSpace: 'nowrap',
                } }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "calendar", size: 13, style: { marginRight: 2 } }), getPeriod()] }))] }));
};
/* harmony default export */ const LineChartMentionTooltip_LineChartMentionTooltip = (LineChartMentionTooltip);

;// CONCATENATED MODULE: ./src/components/other/LineChartMentionTooltip/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/GeneralLineChart/GeneralLineChart.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const GeneralLineChart_GeneralLineChart = ({"base":"dLA11ekZZxAL_K9gGXOv","tooltipHeading":"cPR1UAy4JhbQFK0huCg3","noTrendsCaption":"o6k6BskGEULpb_lxkXwg","chartControlButton":"Pp1E5uihyswMoMyi5Vjw"});
;// CONCATENATED MODULE: ./src/containers/dashboard/GeneralLineChart/GeneralLineChart.js







function GeneralLineChart_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, GeneralLineChart_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function GeneralLineChart_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (GeneralLineChart_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }















var TREND_BUBBLE_OPACITY = 0.8;
var GeneralLineChart = /*#__PURE__*/function (_PureComponent) {
  function GeneralLineChart() {
    var _this;
    (0,classCallCheck/* default */.A)(this, GeneralLineChart);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = GeneralLineChart_callSuper(this, GeneralLineChart, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      chartData: null,
      shouldShowTrends: true
    });
    (0,defineProperty/* default */.A)(_this, "handleChartLoad", function (chart) {
      _this.setState({
        chartData: chart
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleToggleTrends", function () {
      var onSendAnalyticalEvent = _this.props.onSendAnalyticalEvent;
      _this.setState(function (prevState) {
        return {
          shouldShowTrends: !prevState.shouldShowTrends
        };
      }, function () {
        return onSendAnalyticalEvent("Aina in dashboard: ".concat(_this.state.shouldShowTrends ? 'enabled' : 'disabled'));
      });
    });
    (0,defineProperty/* default */.A)(_this, "getDataPoints", function () {
      var _this$props = _this.props,
        dates = _this$props.dates,
        onTrendPointClick = _this$props.onTrendPointClick,
        onTrendPointHover = _this$props.onTrendPointHover;
      var trendDataPoints = dates.reduce(function (trendPoints, data) {
        var _data$trend;
        var trendKey = (_data$trend = data.trend) === null || _data$trend === void 0 ? void 0 : _data$trend.key;
        var displayTrend = trendKey && !trendPoints.find(function (point) {
          return point.trend.key === trendKey;
        });
        if (!displayTrend) return trendPoints;
        var trendPoint = {
          x: new Date(data.date).getTime(),
          y: data.count,
          z: data.trend.engagement,
          date: data.date,
          count: data.count,
          trend: {
            key: data.trend.key,
            count: data.trend.count,
            totalCount: data.trend.totalCount,
            name: data.trend.name,
            authorsCount: data.trend.authorsCount,
            engagement: data.trend.engagement,
            sentiment: data.trend.sentiment,
            sources: data.trend.trendDetails.sources,
            genders: data.trend.trendDetails.genders,
            postTypes: data.trend.trendDetails.postTypes,
            region: data.trend.trendDetails.region,
            systemTags: data.trend.trendDetails.systemTags
          },
          marker: {
            fillColor: (0,utils_colors/* opacity */.ke)((0,utils_colors/* getSentimentColor */.HS)(data.trend.sentiment), TREND_BUBBLE_OPACITY)
          },
          events: {
            click: function click(e) {
              return onTrendPointClick(e.point.trend.key);
            },
            mouseOver: function mouseOver() {
              return onTrendPointHover();
            }
          }
        };
        return [].concat((0,toConsumableArray/* default */.A)(trendPoints), [trendPoint]);
      }, []);
      var trendDataPointsBySentiment = {
        positive: [],
        neutral: [],
        negative: []
      };
      trendDataPoints.forEach(function (point) {
        var trendSentiment = point.trend.sentiment;
        if (trendSentiment === 'undefined') {
          return trendDataPointsBySentiment.neutral.push(point);
        }
        return trendDataPointsBySentiment[trendSentiment].push(point);
      });
      var mentionDataPoints = dates.map(function (point) {
        return point.count;
      });
      var overlayDataPoints = trendDataPoints.map(function (point) {
        return {
          x: point.x,
          y: point.y,
          marker: {
            fillColor: (0,utils_colors/* getSentimentColor */.HS)(point.trend.sentiment),
            symbol: 'T'
          }
        };
      });
      return {
        mentionDataPoints: mentionDataPoints,
        trendDataPointsBySentiment: trendDataPointsBySentiment,
        overlayDataPoints: overlayDataPoints
      };
    });
    (0,defineProperty/* default */.A)(_this, "generateSeries", function () {
      var shouldShowTrends = _this.state.shouldShowTrends;
      var trendsAvailable = _this.props.trendsAvailable;
      var dataPoints = _this.getDataPoints();
      var trendDataPointsBySentiment = dataPoints.trendDataPointsBySentiment,
        mentionDataPoints = dataPoints.mentionDataPoints,
        overlayDataPoints = dataPoints.overlayDataPoints;
      var series = [{
        type: 'areaspline',
        name: l('Mentions'),
        key: 'mentions',
        marker: {
          fillColor: 'white',
          lineColor: (0,utils_colors/* getGeneralDynamicsColor */.wM)('line'),
          lineWidth: 1
        },
        fillOpacity: 0.5,
        animation: false,
        data: mentionDataPoints,
        states: {
          hover: {
            lineWidthPlus: 0
          }
        }
      }];
      if (trendsAvailable && shouldShowTrends) {
        series.push({
          includeInCSVExport: false,
          type: 'bubble',
          name: l('Trends'),
          key: 'trends',
          states: {
            hover: {
              halo: {
                size: 4,
                attributes: {
                  fill: 'transparent',
                  'stroke-width': 2,
                  stroke: (0,utils_colors/* opacity */.ke)((0,utils_colors/* getSentimentColor */.HS)('positive'), TREND_BUBBLE_OPACITY)
                }
              }
            }
          },
          marker: {
            lineWidth: 0,
            states: {
              hover: {
                lineWidth: 0
              }
            }
          },
          data: trendDataPointsBySentiment.positive
        }, {
          includeInCSVExport: false,
          type: 'bubble',
          name: l('Trends'),
          key: 'trends',
          states: {
            hover: {
              halo: {
                size: 4,
                attributes: {
                  fill: 'transparent',
                  'stroke-width': 2,
                  stroke: (0,utils_colors/* opacity */.ke)((0,utils_colors/* getSentimentColor */.HS)('neutral'), TREND_BUBBLE_OPACITY)
                }
              }
            }
          },
          marker: {
            lineWidth: 0,
            states: {
              hover: {
                lineWidth: 0
              }
            }
          },
          data: trendDataPointsBySentiment.neutral
        }, {
          includeInCSVExport: false,
          type: 'bubble',
          name: l('Trends'),
          key: 'trends',
          states: {
            hover: {
              halo: {
                size: 4,
                attributes: {
                  fill: 'transparent',
                  'stroke-width': 2,
                  stroke: (0,utils_colors/* opacity */.ke)((0,utils_colors/* getSentimentColor */.HS)('negative'), TREND_BUBBLE_OPACITY)
                }
              }
            }
          },
          marker: {
            lineWidth: 0,
            states: {
              hover: {
                lineWidth: 0
              }
            }
          },
          data: trendDataPointsBySentiment.negative
        }, {
          includeInCSVExport: false,
          type: 'scatter',
          name: l('Mentions'),
          key: 'mentions',
          states: {
            hover: {
              enabled: true,
              halo: {
                size: 0
              }
            }
          },
          marker: {
            symbol: 'circle',
            lineWidth: 0,
            states: {
              hover: {
                lineWidth: 0
              }
            }
          },
          animation: false,
          data: overlayDataPoints
        });
      }
      return series;
    });
    (0,defineProperty/* default */.A)(_this, "onChartExport", function (_ref) {
      var fileType = _ref.fileType;
      var shouldShowTrends = _this.state.shouldShowTrends;
      _this.props.onSendChartExportedEvent({
        properties: {
          fileType: fileType,
          chartType: "General Dynamics".concat(shouldShowTrends ? ' with trends' : '')
        }
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(GeneralLineChart, _PureComponent);
  return (0,createClass/* default */.A)(GeneralLineChart, [{
    key: "hasTrends",
    get: function get() {
      var dates = this.props.dates;
      return dates && dates.filter(function (date) {
        return date.trend;
      }).length > 0;
    }
  }, {
    key: "renderChart",
    value: function renderChart() {
      var _this$props2 = this.props,
        dates = _this$props2.dates,
        interval = _this$props2.interval,
        statsBy = _this$props2.statsBy,
        onDatePointClick = _this$props2.onDatePointClick;
      if (!dates) return null;
      var config = {
        chart: {
          height: '400px',
          zoomType: 'x'
        },
        time: {
          useUTC: false
        },
        title: {
          text: 'generalDynamics',
          style: {
            display: 'none'
          }
        },
        subtitle: {
          text: null
        },
        xAxis: {
          type: 'datetime',
          title: {
            text: l('Time'),
            style: {
              display: 'none'
            }
          }
        },
        yAxis: [{
          title: {
            text: null
          },
          floor: 0
        }],
        colors: [(0,utils_colors/* getGeneralDynamicsColor */.wM)('line')],
        legend: {
          enabled: false
        },
        tooltip: {
          useHTML: true,
          crosshairs: true,
          formatter: function formatter() {
            var tooltip = LineChartMentionTooltip_LineChartMentionTooltip({
              chart: this,
              statsBy: statsBy,
              interval: interval
            });
            if (this.point.trend) {
              tooltip = other_LineChartTrendTooltip_LineChartTrendTooltip({
                chart: this
              });
            }
            return tooltip;
          }
        },
        plotOptions: {
          areaspline: {
            marker: {
              enabled: false
            }
          },
          bubble: {
            minSize: 30,
            maxSize: 60,
            marker: {
              fillOpacity: 1
            }
          },
          series: {
            pointStart: new Date(dates[0].date).getTime(),
            pointInterval: interval,
            cursor: 'pointer',
            point: {
              events: {
                click: function click(e) {
                  return onDatePointClick(e.point.category, e.point.series.options.key);
                }
              }
            },
            fillColor: {
              linearGradient: [0, 0, 0, 300],
              stops: [[0, Highcharts.Color((0,utils_colors/* getGeneralDynamicsColor */.wM)('line')).setOpacity(0.75).get('rgba')], [1, Highcharts.Color((0,utils_colors/* getGeneralDynamicsColor */.wM)('line')).setOpacity(0).get('rgba')]]
            },
            states: {
              inactive: {
                opacity: 0.8
              }
            }
          }
        },
        series: this.generateSeries()
      };
      return /*#__PURE__*/(0,jsx_runtime.jsx)((highcharts_react_min_default()), {
        options: config,
        callback: this.handleChartLoad
      });
    }
  }, {
    key: "render",
    value: function render() {
      var shouldShowTrends = this.state.shouldShowTrends;
      var _this$props3 = this.props,
        dates = _this$props3.dates,
        trendsAvailable = _this$props3.trendsAvailable,
        statsBy = _this$props3.statsBy;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.A, {
        className: classnames_default()(GeneralLineChart_GeneralLineChart.base),
        children: /*#__PURE__*/(0,jsx_runtime.jsxs)(Loader/* default */.A, {
          loaded: dates === null || dates === void 0 ? void 0 : dates.length,
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ChartHeader/* default */.A, {
            title: (0,utils_statsBy/* getGeneralLineChartLabel */.pM)(statsBy),
            caption: trendsAvailable && shouldShowTrends && !this.hasTrends && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
              className: classnames_default()(GeneralLineChart_GeneralLineChart.noTrendsCaption),
              children: l('No specific trends found for this period')
            }),
            additionalContent: trendsAvailable ? /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              size: "small",
              ghost: true,
              primary: shouldShowTrends,
              className: classnames_default()((0,defineProperty/* default */.A)({}, GeneralLineChart_GeneralLineChart.chartControlButton, !shouldShowTrends)),
              label: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
                children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
                  color: "primary",
                  type: "trending-up"
                }), /*#__PURE__*/(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), l('Trends')]
              }),
              onClick: this.handleToggleTrends
            }) : null,
            chartRef: this.state.chartData,
            onChartExport: this.onChartExport
          }), this.renderChart()]
        })
      });
    }
  }]);
}(react.PureComponent);

;// CONCATENATED MODULE: ./src/containers/dashboard/GeneralLineChart/index.js






function GeneralLineChart_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function GeneralLineChart_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? GeneralLineChart_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : GeneralLineChart_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function dashboard_GeneralLineChart_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, dashboard_GeneralLineChart_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function dashboard_GeneralLineChart_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (dashboard_GeneralLineChart_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }















var GeneralLineChartContainer = /*#__PURE__*/function (_Component) {
  function GeneralLineChartContainer() {
    var _this;
    (0,classCallCheck/* default */.A)(this, GeneralLineChartContainer);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = dashboard_GeneralLineChart_callSuper(this, GeneralLineChartContainer, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "handleInsightsCopilotCall", function (id) {
      var filter = _this.props.filter;
      var copilotParams = {
        isCopilotActive: true,
        copilotMetaData: _this.props.isCopilotLimitReached ? null : {
          trend: id
        }
      };
      var trendFilterGroup = filter.findByName('trend');
      if (trendFilterGroup) filter.removeFilterGroup(trendFilterGroup);
      filter.doAdd('trend', [id]);
      _this.props.updateFilterQuery({
        filter: filter,
        pathname: "/themes/".concat(_this.props.themeId, "/mentions"),
        queryParams: GeneralLineChart_objectSpread({
          orderBy: 'engagement'
        }, copilotParams)
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleTrendPointClick", function (id) {
      _this.props.sendAnalyticalEvent({
        eventType: 'Trends: trend bubble clicked'
      });
      if (_this.props.copilotSettings.showWhenTrendsClicked) {
        _this.handleInsightsCopilotCall(id);
        return;
      }
      _this.props.updateFilter({
        name: 'trend',
        value: [id],
        locationOptions: {
          pathname: "/themes/".concat(_this.props.themeId, "/mentions"),
          query: {
            orderBy: 'engagement'
          }
        }
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleTrendHover", function () {
      _this.props.sendAnalyticalEvent({
        eventType: 'Trends: trend bubble hovered'
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleDatePointClick", function (date) {
      var _this$props = _this.props,
        themeId = _this$props.themeId,
        interval = _this$props.interval;
      _this.props.update({
        pathname: "/themes/".concat(themeId, "/mentions"),
        query: GeneralLineChart_objectSpread(GeneralLineChart_objectSpread({}, getDataPointPeriod(date, interval, true)), {}, {
          page: 1
        })
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(GeneralLineChartContainer, _Component);
  return (0,createClass/* default */.A)(GeneralLineChartContainer, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.fetchInsightsCopilotUsage();
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props2 = this.props,
        interval = _this$props2.interval,
        dynamics = _this$props2.dynamics,
        trendsAvailable = _this$props2.trendsAvailable,
        statsBy = _this$props2.statsBy,
        sendAnalyticalEvent = _this$props2.sendAnalyticalEvent,
        sendChartExportedEvent = _this$props2.sendChartExportedEvent;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(GeneralLineChart, {
        interval: interval,
        dates: dynamics,
        trendsAvailable: trendsAvailable,
        statsBy: statsBy,
        onSentimentFilter: this.handleFilterSentiment,
        onDatePointClick: this.handleDatePointClick,
        onTrendPointClick: this.handleTrendPointClick,
        onTrendPointHover: this.handleTrendHover,
        onSendAnalyticalEvent: sendAnalyticalEvent,
        onSendChartExportedEvent: sendChartExportedEvent
      });
    }
  }]);
}(react.Component);
/* harmony default export */ const dashboard_GeneralLineChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
  return {
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    trendsAvailable: (0,themes_selectors/* canAccessTrends */.lf)(state),
    statsBy: (0,stats_selectors/* getStatsBy */.b8)(state),
    isCopilotLimitReached: (0,insightsCopilot_selectors/* isInsightsCopilotLimitReached */.hh)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state)
  };
}, {
  update: routing_actions/* update */.yo,
  updateFilter: filter_model/* filterModel */.W.action.updateFilter,
  updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
  sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
  sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
  fetchInsightsCopilotUsage: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage
}), (0,withTopicStats/* default */.A)('generalDynamics', {
  aggregations: {
    date: {
      interval: 'Day',
      aggregations: {
        trends: {
          size: 5,
          metric: 'engagementSum',
          aggregations: {
            authorsCount: {},
            engagement: {}
          }
        }
      }
    },
    sentiment: {},
    trends: {
      size: 50,
      aggregations: {
        date: {},
        sentiment: {},
        engagement: {}
      }
    }
  }
}, false, function (state) {
  return {
    dynamics: (0,stats_selectors/* getTrendDynamics */.sf)(state)
  };
}))(GeneralLineChartContainer));
// EXTERNAL MODULE: ./src/components/ui/SecondaryText/index.ts + 2 modules
var SecondaryText = __webpack_require__("JSD5");
;// CONCATENATED MODULE: ./src/components/other/Metric/Metric.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Metric = ({"base":"YVYLN4k8ayGGY2dtf2Dj","title":"ERnQbeuX_MQa93iHlQTS","count":"toUf7bFHM98jE5LrOECo","dynamicsPlaceholder":"A46zeGT01oyGH7iAnBiB"});
;// CONCATENATED MODULE: ./src/components/other/Metric/Metric.tsx
var Metric_assign = (undefined && undefined.__assign) || function () {
    Metric_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Metric_assign.apply(this, arguments);
};











var Metric_Metric = function (_a) {
    var _b = _a.shouldRenderDynamics, shouldRenderDynamics = _b === void 0 ? true : _b, _c = _a.shouldFormatCount, shouldFormatCount = _c === void 0 ? true : _c, _d = _a.isPercentDynamics, isPercentDynamics = _d === void 0 ? true : _d, title = _a.title, count = _a.count, dynamics = _a.dynamics, tooltipText = _a.tooltipText, tooltipPosition = _a.tooltipPosition;
    var renderDynamic = function () {
        if (!shouldRenderDynamics)
            return null;
        return dynamics
            ? (0,jsx_runtime.jsx)(DynamicsIndicator/* default */.A, { isPercentDynamics: isPercentDynamics, value: dynamics })
            : (0,jsx_runtime.jsx)("span", Metric_assign({ className: Metric.dynamicsPlaceholder }, { children: "\u2013" }));
    };
    return ((0,jsx_runtime.jsxs)("div", Metric_assign({ className: Metric.base }, { children: [(0,jsx_runtime.jsx)(SecondaryText/* default */.A, Metric_assign({ className: Metric.title }, { children: title })), tooltipText && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Tooltip/* default */.A, Metric_assign({ on: "hover", position: tooltipPosition, text: tooltipText }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(H1/* default */.A, Metric_assign({ className: Metric.count }, { children: shouldFormatCount ? numeral_default()(count).format() : count })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), renderDynamic()] })));
};
/* harmony default export */ const other_Metric_Metric = ((0,react.memo)(Metric_Metric));

;// CONCATENATED MODULE: ./src/components/other/Metric/index.ts


// EXTERNAL MODULE: ./src/containers/dashboard/OverviewInfoCard/utils.ts
var OverviewInfoCard_utils = __webpack_require__("Z8P+");
;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/TotalCountCard/TotalCountCard.tsx




var TotalCountCardContainer = function (_a) {
    var data = _a.data, prevData = _a.prevData, statsBy = _a.statsBy;
    return ((0,jsx_runtime.jsx)(other_Metric_Metric, { title: (0,utils_statsBy/* getTotalCountCardLabel */.Kl)(statsBy), count: data, dynamics: (0,OverviewInfoCard_utils/* getDiff */.G)(prevData, data) }));
};
/* harmony default export */ const TotalCountCard = (TotalCountCardContainer);

;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/TotalCountCard/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/AuthorsCountCard/AuthorsCountCard.tsx



var AuthorsCountCardContainer = function (_a) {
    var data = _a.data, prevData = _a.prevData;
    return ((0,jsx_runtime.jsx)(other_Metric_Metric, { title: l('Total authors'), count: data, dynamics: (0,OverviewInfoCard_utils/* getDiff */.G)(prevData, data) }));
};
/* harmony default export */ const AuthorsCountCard = (AuthorsCountCardContainer);

;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/AuthorsCountCard/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/EngagementCountCard/EngagementCountCard.tsx



var EngagementCountContainer = function (_a) {
    var data = _a.data, prevData = _a.prevData;
    return ((0,jsx_runtime.jsx)(other_Metric_Metric, { title: l('Engagement'), tooltipText: l('Total amount of likes, reposts and comments'), count: data, dynamics: (0,OverviewInfoCard_utils/* getDiff */.G)(prevData, data) }));
};
/* harmony default export */ const EngagementCountCard = (EngagementCountContainer);

;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/EngagementCountCard/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/NsrCountCard/NsrCountCard.tsx


var NsrCountCardContainer = function (_a) {
    var data = _a.data, prevData = _a.prevData;
    return ((0,jsx_runtime.jsx)(other_Metric_Metric, { isPercentDynamics: false, title: l('NSR'), tooltipText: l('Net Sentiment Rate is a measurement of overall sentiment in a topic, on a -100 to 100 scale, with zero being neutral.'), tooltipPosition: "top left", count: data, dynamics: Math.round(data - prevData) }));
};
/* harmony default export */ const NsrCountCard = (NsrCountCardContainer);

;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/NsrCountCard/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/SentimentDistribution/SentimentDistribution.tsx






var SentimentDistributionContainer = function (_a) {
    var data = _a.data, prevData = _a.prevData;
    if (!data)
        return null;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(other_Metric_Metric, { title: (0,jsx_runtime.jsxs)("span", { children: [l('Negative'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* SentimentIcon */.p, { type: "negative" })] }), count: data.negative, dynamics: (0,OverviewInfoCard_utils/* getDiff */.G)(prevData.negative, data.negative) }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(other_Metric_Metric, { title: (0,jsx_runtime.jsxs)("span", { children: [l('Positive'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* SentimentIcon */.p, { type: "positive" })] }), count: data.positive, dynamics: (0,OverviewInfoCard_utils/* getDiff */.G)(prevData.positive, data.positive) }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(other_Metric_Metric, { title: (0,jsx_runtime.jsxs)("span", { children: [l('Neutral'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* SentimentIcon */.p, { type: "neutral" })] }), count: data.neutral, dynamics: (0,OverviewInfoCard_utils/* getDiff */.G)(prevData.neutral, data.neutral) })] }));
};
/* harmony default export */ const SentimentDistribution = (SentimentDistributionContainer);

;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/SentimentDistribution/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/components/SentimentDistribution/SentimentDistributionBar.tsx




var BAR_HEIGHT = 6;
var SentimentDistributionBarContainer = function (_a) {
    var data = _a.data, updateFilter = _a.updateFilter;
    var handleSentimentClick = function (sentiment) {
        updateFilter({ name: 'sentiment', value: [sentiment] });
    };
    if (!data)
        return null;
    return ((0,jsx_runtime.jsx)(SentimentDistributionBar/* default */.A, { height: BAR_HEIGHT, positiveCount: data.positive, neutralCount: data.neutral, negativeCount: data.negative, undefinedCount: data.undefined, onSentimentClick: handleSentimentClick }));
};
/* harmony default export */ const SentimentDistribution_SentimentDistributionBar = ((0,react_redux/* connect */.Ng)(null, { updateFilter: filter_model/* filterModel */.W.action.updateFilter })(SentimentDistributionBarContainer));

;// CONCATENATED MODULE: ./src/containers/dashboard/WithDashboardOverviewData/WithDashboardOverviewData.tsx
var WithDashboardOverviewData_assign = (undefined && undefined.__assign) || function () {
    WithDashboardOverviewData_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WithDashboardOverviewData_assign.apply(this, arguments);
};





var WithDashboardOverviewData = function (_a) {
    var children = _a.children, statsBy = _a.statsBy, data = _a.data;
    return ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: children(WithDashboardOverviewData_assign(WithDashboardOverviewData_assign({}, data), { statsBy: statsBy })) }));
};
/* harmony default export */ const WithDashboardOverviewData_WithDashboardOverviewData = ((0,redux/* compose */.Zz)((0,withTopicStats/* default */.A)('statsOverview', {
    aggregations: {
        sentiment: {},
        authorsCount: {},
        engagement: {},
    },
}, true, function (state) { return ({
    data: (0,stats_selectors/* getStatsOverview */.FI)(state),
}); }), react.memo)(WithDashboardOverviewData));

;// CONCATENATED MODULE: ./src/containers/dashboard/WithDashboardOverviewData/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/style.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const OverviewInfoCard_style = ({"base":"GGluPH8s63kStcCucjbQ","infoCard":"U3iG4jzaVm7IxR5gAfNQ","small":"Ki1oZ73wIDGxJl9HtCRp","metricsRow":"jN1FTLsE8w5fca9r0MFC","metricsTitle":"shHPSbq5oy2pUMH4bQdk","metricsContainer":"gSpaE_7IfTl2t06sOE7y","content":"n_EdEmppDtUBvEIbO89Y","sentimentCard":"uZsjS0Wxju4vgT7FX1GC","smallCardsContainer":"g24h3hO3Qjr66WcHHuhZ"});
;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/OverviewInfoCard.tsx
var OverviewInfoCard_assign = (undefined && undefined.__assign) || function () {
    OverviewInfoCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OverviewInfoCard_assign.apply(this, arguments);
};
var OverviewInfoCard_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var SCREEN_SIZE_THRESHOLD = 1600;
var OverviewInfoCard = function () {
    var _a = OverviewInfoCard_read((0,react.useState)(window.innerWidth < SCREEN_SIZE_THRESHOLD), 2), isSmallScreen = _a[0], setIsSmallScreen = _a[1];
    (0,react.useEffect)(function () {
        var handleResize = function () {
            if (window.innerWidth < SCREEN_SIZE_THRESHOLD)
                setIsSmallScreen(true);
            else
                setIsSmallScreen(false);
        };
        window.addEventListener('resize', handleResize);
    }, []);
    if (isSmallScreen) {
        return ((0,jsx_runtime.jsx)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.smallCardsContainer }, { children: (0,jsx_runtime.jsx)(WithDashboardOverviewData_WithDashboardOverviewData, { children: function (_a) {
                    var statsBy = _a.statsBy, total = _a.total, prevTotal = _a.prevTotal, authorsCount = _a.authorsCount, prevAuthorsCount = _a.prevAuthorsCount, engagementCount = _a.engagementCount, prevEngagementCount = _a.prevEngagementCount, sentiment = _a.sentiment, prevSentiment = _a.prevSentiment, nsrCount = _a.nsrCount, prevNsrCount = _a.prevNsrCount;
                    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Card/* default */.A, OverviewInfoCard_assign({ className: classnames_default()(OverviewInfoCard_style.infoCard, OverviewInfoCard_style.small) }, { children: (0,jsx_runtime.jsxs)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsRow }, { children: [(0,jsx_runtime.jsx)(TotalCountCard, { data: total, prevData: prevTotal, statsBy: statsBy }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(AuthorsCountCard, { data: authorsCount, prevData: prevAuthorsCount }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(EngagementCountCard, { data: engagementCount, prevData: prevEngagementCount })] })) })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(Card/* default */.A, OverviewInfoCard_assign({ className: OverviewInfoCard_style.sentimentCard }, { children: [(0,jsx_runtime.jsxs)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsRow }, { children: [(0,jsx_runtime.jsx)(NsrCountCard, { data: nsrCount, prevData: prevNsrCount }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(SentimentDistribution, { data: sentiment, prevData: prevSentiment })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(SentimentDistribution_SentimentDistributionBar, { data: sentiment })] }))] }));
                } }) })));
    }
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, OverviewInfoCard_assign({ className: OverviewInfoCard_style.infoCard }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsTitle }, { children: l('Metrics') })), (0,jsx_runtime.jsx)(WithDashboardOverviewData_WithDashboardOverviewData, { children: function (_a) {
                    var statsBy = _a.statsBy, total = _a.total, prevTotal = _a.prevTotal, authorsCount = _a.authorsCount, prevAuthorsCount = _a.prevAuthorsCount, engagementCount = _a.engagementCount, prevEngagementCount = _a.prevEngagementCount, sentiment = _a.sentiment, prevSentiment = _a.prevSentiment, nsrCount = _a.nsrCount, prevNsrCount = _a.prevNsrCount;
                    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsContainer }, { children: [(0,jsx_runtime.jsxs)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsRow }, { children: [(0,jsx_runtime.jsx)(TotalCountCard, { data: total, prevData: prevTotal, statsBy: statsBy }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(AuthorsCountCard, { data: authorsCount, prevData: prevAuthorsCount })] })), (0,jsx_runtime.jsxs)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsRow }, { children: [(0,jsx_runtime.jsx)(EngagementCountCard, { data: engagementCount, prevData: prevEngagementCount }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(NsrCountCard, { data: nsrCount, prevData: prevNsrCount })] }))] })), (0,jsx_runtime.jsx)(SentimentDistribution_SentimentDistributionBar, { data: sentiment }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)("div", OverviewInfoCard_assign({ className: OverviewInfoCard_style.metricsRow }, { children: (0,jsx_runtime.jsx)(SentimentDistribution, { data: sentiment, prevData: prevSentiment }) }))] }));
                } })] })));
};
/* harmony default export */ const OverviewInfoCard_OverviewInfoCard = ((0,react.memo)(OverviewInfoCard));

;// CONCATENATED MODULE: ./src/containers/dashboard/OverviewInfoCard/index.ts


// EXTERNAL MODULE: ./src/components/ui/Card/Card.tsx + 2 modules
var Card_Card = __webpack_require__("mR4S");
;// CONCATENATED MODULE: ./src/pages/dashboard/OverviewPage/OverviewPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const OverviewPage = ({"base":"c24iwLsWfozneIx6rIXj","loaderCard":"NjMpcNyYdu4ju0Ls4vfH","highlights":"VRMrTKBxaogkIEKP0hz7","dynamics":"cL0EFOKfO_ZxAUtH8_GQ","lineChart":"VYmhkG5dyVU_w7CmPRdp","infoCard":"omWrVQbViyh368iUp0vX","geo":"dKNuGczJ2xb0d3KA7s_Q"});
;// CONCATENATED MODULE: ./src/pages/dashboard/OverviewPage/OverviewPage.tsx
var OverviewPage_assign = (undefined && undefined.__assign) || function () {
    OverviewPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OverviewPage_assign.apply(this, arguments);
};














var OverviewPage_OverviewPage = function (_a) {
    var themeDetailsLoading = _a.themeDetailsLoading, trendsAvailable = _a.trendsAvailable;
    var renderWordStatistics = function () {
        if (trendsAvailable) {
            return (0,jsx_runtime.jsx)(dashboard_TrendList_TrendList, {});
        }
        return (0,jsx_runtime.jsx)(dashboard_SignificantWordList_SignificantWordList, {});
    };
    var renderLoaderCard = function () { return ((0,jsx_runtime.jsx)(Card_Card/* default */.A, OverviewPage_assign({ className: OverviewPage.loaderCard }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, OverviewPage_assign({ loaded: false }, { children: null })) }))); };
    var themeLoaded = !themeDetailsLoading && typeof trendsAvailable !== 'undefined';
    return ((0,jsx_runtime.jsxs)("div", OverviewPage_assign({ className: OverviewPage.base }, { children: [(0,jsx_runtime.jsxs)("div", OverviewPage_assign({ className: OverviewPage.dynamics }, { children: [(0,jsx_runtime.jsx)("div", OverviewPage_assign({ className: OverviewPage.lineChart }, { children: (0,jsx_runtime.jsx)(dashboard_GeneralLineChart, {}) })), (0,jsx_runtime.jsx)("div", OverviewPage_assign({ className: OverviewPage.infoCard }, { children: (0,jsx_runtime.jsx)(OverviewInfoCard_OverviewInfoCard, {}) }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", OverviewPage_assign({ className: OverviewPage.geo }, { children: [(0,jsx_runtime.jsx)(containers_dashboard_GeoMap_GeoMap, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), themeLoaded ? renderWordStatistics() : renderLoaderCard()] }))] })));
};
/* harmony default export */ const dashboard_OverviewPage_OverviewPage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeDetailsLoading: (0,themes_selectors/* isThemeDetailsLoading */.Mn)(state),
    trendsAvailable: (0,themes_selectors/* canAccessTrends */.lf)(state),
}); })((0,react.memo)(OverviewPage_OverviewPage)));

;// CONCATENATED MODULE: ./src/pages/dashboard/OverviewPage/index.ts


;// CONCATENATED MODULE: ./src/pages/UnderConstructionPage/UnderConstructionPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const UnderConstructionPage = ({"base":"A7jmtPAwEm2BBfBF29Wg","image":"qX0dBUxc7hoDlvNUDOpG"});
;// CONCATENATED MODULE: ./src/pages/UnderConstructionPage/UnderConstructionPage.tsx
var UnderConstructionPage_assign = (undefined && undefined.__assign) || function () {
    UnderConstructionPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return UnderConstructionPage_assign.apply(this, arguments);
};





var UnderConstructionPage_UnderConstructionPage = function () { return ((0,jsx_runtime.jsxs)("div", UnderConstructionPage_assign({ className: classnames_default()(UnderConstructionPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Not found') }), (0,jsx_runtime.jsx)("img", { src: "/static/images/under_construct.svg", className: classnames_default()(UnderConstructionPage.image), alt: "" }), (0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Coming soon') }), (0,jsx_runtime.jsx)("p", { children: l('We are currently working on this page') })] }))); };
/* harmony default export */ const pages_UnderConstructionPage_UnderConstructionPage = (UnderConstructionPage_UnderConstructionPage);

;// CONCATENATED MODULE: ./src/pages/UnderConstructionPage/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentPieChart/SentimentPieChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentPieChart = ({"base":"jtLgssIB_k8hkuw76aNM"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentPieChart/SentimentPieChart.tsx
var SentimentPieChart_assign = (undefined && undefined.__assign) || function () {
    SentimentPieChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentPieChart_assign.apply(this, arguments);
};














var SentimentPieChart_SentimentPieChart = function (_a) {
    var themeId = _a.themeId, sentimentDistribution = _a.sentimentDistribution, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleSentimentClick = function (sentiment) {
        updateFilter({
            name: 'sentiment',
            value: [sentiment],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/dashboard"),
            },
        });
    };
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SentimentPieChart_assign(SentimentPieChart_assign({}, properties), { chartType: 'Sentiment Distribution' }),
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!sentimentDistribution)
            return null;
        var sentimentColors = (0,utils_colors/* getSentimentColors */.ID)();
        var data = [
            {
                name: l('Positive'),
                key: 'positive',
                y: sentimentDistribution.positive || 0,
                color: sentimentColors.positive,
            },
            {
                name: l('Neutral'),
                key: 'neutral',
                y: sentimentDistribution.neutral || 0,
                color: sentimentColors.neutral,
            },
            {
                name: l('Negative'),
                key: 'negative',
                y: sentimentDistribution.negative || 0,
                color: sentimentColors.negative,
            }
        ];
        return [{
                name: l('Sentiment'),
                data: data,
            }];
    }, [sentimentDistribution]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SentimentPieChart_assign({ className: SentimentPieChart.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SentimentPieChart_assign({ loaded: !!sentimentDistribution }, { children: (0,jsx_runtime.jsx)(Pie/* default */.A, { title: l('Sentiment distribution'), series: series, onClick: handleSentimentClick, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_SentimentPieChart_SentimentPieChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sentimentPie', {
    aggregations: {
        sentiment: {},
    },
}, false, function (state) { return ({
    sentimentDistribution: (0,stats_selectors/* getSentimentPieChartData */.Yc)(state),
}); }), react.memo)(SentimentPieChart_SentimentPieChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentPieChart/index.ts


;// CONCATENATED MODULE: ./src/utils/getSentimentDynamics.ts
/* harmony default export */ const getSentimentDynamics = (function (key, data) {
    if (key === void 0) { key = ''; }
    var dynamics = data === null || data === void 0 ? void 0 : data.aggregations.sentiment.values.find(function (item) { return item.key === key; });
    return dynamics === null || dynamics === void 0 ? void 0 : dynamics.dates.values;
});

;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentLineChart/SentimentLineChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentLineChart = ({"base":"JK2LBIQ9MeMbg_VgiqWC"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentLineChart/SentimentLineChart.tsx
var SentimentLineChart_assign = (undefined && undefined.__assign) || function () {
    SentimentLineChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentLineChart_assign.apply(this, arguments);
};


















var SentimentLineChart_SentimentLineChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, data = _a.data, interval = _a.interval, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SentimentLineChart_assign(SentimentLineChart_assign({}, properties), { chartType: 'Sentiment Dynamics' }),
        });
    };
    var handleClick = function (date, sentiment) {
        updateFilter({
            name: 'sentiment',
            value: [sentiment],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: SentimentLineChart_assign({}, getDataPointPeriod(date, interval)),
            },
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!data)
            return null;
        var sentimentColors = (0,utils_colors/* getSentimentColors */.ID)();
        var positive = getSentimentDynamics('positive', data);
        var neutral = getSentimentDynamics('neutral', data);
        var negative = getSentimentDynamics('negative', data);
        var s = [];
        if (positive) {
            s.push({
                id: 'positive',
                type: 'spline',
                name: l('Positive'),
                key: 'positive',
                data: positive.map(function (point) { return point.count; }),
                color: sentimentColors.positive,
                showInLegend: true,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(positive[0].date).getTime(),
                pointInterval: interval,
            });
        }
        if (neutral) {
            s.push({
                id: 'neutral',
                type: 'spline',
                name: l('Neutral'),
                key: 'neutral',
                data: neutral.map(function (point) { return point.count; }),
                color: sentimentColors.neutral,
                showInLegend: true,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(neutral[0].date).getTime(),
                pointInterval: interval,
            });
        }
        if (negative) {
            s.push({
                id: 'negative',
                type: 'spline',
                name: l('Negative'),
                key: 'negative',
                data: negative.map(function (point) { return point.count; }),
                color: sentimentColors.negative,
                showInLegend: true,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(negative[0].date).getTime(),
                pointInterval: interval,
            });
        }
        if (s.length === 0)
            return null;
        return s;
    }, [data]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SentimentLineChart_assign({ className: classnames_default()(SentimentLineChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SentimentLineChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Line/* default */.A, { title: l('Sentiment dynamics'), series: series, configOptions: {
                    tooltip: {
                        split: true,
                        crosshairs: true,
                        useHTML: true,
                        pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
                        formatter: (0,chart/* splineTooltipFormatter */.h)(),
                    },
                }, onClick: handleClick, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_SentimentLineChart_SentimentLineChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sentimentDynamics', {
    aggregations: {
        sentiment: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}), react.memo)(SentimentLineChart_SentimentLineChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentLineChart/index.ts


;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentPercentageLineChart/SentimentPercentageLineChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentPercentageLineChart = ({"base":"gb1XS9DNIJGPRXAxj_Qw"});
;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentPercentageLineChart/SentimentPercentageLineChart.tsx
var SentimentPercentageLineChart_assign = (undefined && undefined.__assign) || function () {
    SentimentPercentageLineChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentPercentageLineChart_assign.apply(this, arguments);
};


















var SentimentPercentageLineChart_SentimentPercentageLineChart = function (_a) {
    var isFetching = _a.isFetching, themeId = _a.themeId, interval = _a.interval, data = _a.data, updateFilter = _a.updateFilter, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SentimentPercentageLineChart_assign(SentimentPercentageLineChart_assign({}, properties), { chartType: 'Sentiment Percentage Dynamics' }),
        });
    };
    var handleClick = function (date, sentiment) {
        updateFilter({
            name: 'sentiment',
            value: [sentiment],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: SentimentPercentageLineChart_assign({}, getDataPointPeriod(date, interval)),
            },
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!data)
            return null;
        var sentimentColors = (0,utils_colors/* getSentimentColors */.ID)();
        var positive = getSentimentDynamics('positive', data);
        var neutral = getSentimentDynamics('neutral', data);
        var negative = getSentimentDynamics('negative', data);
        var s = [];
        if (positive) {
            s.push({
                id: 'positive',
                type: 'areaspline',
                name: l('Positive'),
                key: 'positive',
                data: positive.map(function (point) { return point.count; }),
                color: sentimentColors.positive,
                showInLegend: true,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(positive[0].date).getTime(),
                pointInterval: interval,
            });
        }
        if (neutral) {
            s.push({
                id: 'neutral',
                type: 'areaspline',
                name: l('Neutral'),
                key: 'neutral',
                data: neutral.map(function (point) { return point.count; }),
                color: sentimentColors.neutral,
                showInLegend: true,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(neutral[0].date).getTime(),
                pointInterval: interval,
            });
        }
        if (negative) {
            s.push({
                id: 'negative',
                type: 'areaspline',
                name: l('Negative'),
                key: 'negative',
                data: negative.map(function (point) { return point.count; }),
                color: sentimentColors.negative,
                showInLegend: true,
                pointStart: (0,dateUtils/* createDateWithoutTimeZone */.OC)(negative[0].date).getTime(),
                pointInterval: interval,
            });
        }
        if (s.length === 0)
            return null;
        return s;
    }, [data]);
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SentimentPercentageLineChart_assign({ className: classnames_default()(SentimentPercentageLineChart.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SentimentPercentageLineChart_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Line/* default */.A, { isArea: true, title: l('Sentiment distribution over time'), series: series, configOptions: {
                    yAxis: [{
                            title: {
                                text: null,
                            },
                            labels: {
                                format: '{value}%',
                            },
                        }],
                    tooltip: chart/* TOOLTIPS */.H.area,
                    plotOptions: {
                        areaspline: {
                            stacking: 'percent',
                            lineColor: 'transparent',
                            lineWidth: 1,
                            marker: {
                                enabled: false,
                            },
                            fillOpacity: 1,
                        },
                        series: {
                            cursor: 'pointer',
                            point: {
                                events: {
                                    click: function (e) { return handleClick(e.point.category, e.point.series.options.key); },
                                },
                            },
                        },
                    },
                }, onClick: function () { }, onSendChartExportedEvent: handleChartExport }) })) })));
};
/* harmony default export */ const dashboard_SentimentPercentageLineChart_SentimentPercentageLineChart = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('sentimentPercentageDynamics', {
    aggregations: {
        sentiment: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}), react.memo)(SentimentPercentageLineChart_SentimentPercentageLineChart));

;// CONCATENATED MODULE: ./src/containers/dashboard/SentimentPercentageLineChart/index.ts


;// CONCATENATED MODULE: ./src/pages/dashboard/SentimentPage/SentimentPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentPage = ({"base":"tHJOePzZ8zr1JRNei1gZ","dynamics":"t91bFFRxrYMaOXEAx35f","distribution":"cSdE9mPAqlsakK1AIJUY"});
;// CONCATENATED MODULE: ./src/pages/dashboard/SentimentPage/SentimentPage.tsx
var SentimentPage_assign = (undefined && undefined.__assign) || function () {
    SentimentPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentPage_assign.apply(this, arguments);
};








var SentimentPage_SentimentPage = function () {
    return ((0,jsx_runtime.jsxs)("div", SentimentPage_assign({ className: classnames_default()(SentimentPage.base) }, { children: [(0,jsx_runtime.jsx)("div", SentimentPage_assign({ className: classnames_default()(SentimentPage.dynamics) }, { children: (0,jsx_runtime.jsx)(dashboard_SentimentLineChart_SentimentLineChart, {}) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", SentimentPage_assign({ className: classnames_default()(SentimentPage.distribution) }, { children: [(0,jsx_runtime.jsx)(dashboard_SentimentPieChart_SentimentPieChart, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(dashboard_SentimentPercentageLineChart_SentimentPercentageLineChart, {})] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })));
};
/* harmony default export */ const dashboard_SentimentPage_SentimentPage = (SentimentPage_SentimentPage);

;// CONCATENATED MODULE: ./src/pages/dashboard/SentimentPage/index.ts


// EXTERNAL MODULE: ./src/utils/sessionStorage.js
var utils_sessionStorage = __webpack_require__("S6iU");
;// CONCATENATED MODULE: ./src/pages/ProductTourRedirectPage/ProductTourRedirectPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ProductTourRedirectPage_ProductTourRedirectPage = ({"base":"C6mlWp9Iz1KuQYiKUN1k"});
;// CONCATENATED MODULE: ./src/pages/ProductTourRedirectPage/ProductTourRedirectPage.tsx
var ProductTourRedirectPage_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var ProductTourRedirectPage_assign = (undefined && undefined.__assign) || function () {
    ProductTourRedirectPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ProductTourRedirectPage_assign.apply(this, arguments);
};









var ProductTourRedirectPage = /** @class */ (function (_super) {
    ProductTourRedirectPage_extends(ProductTourRedirectPage, _super);
    function ProductTourRedirectPage() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.getPreviousLocation = function () {
            return (0,utils_sessionStorage/* getItemFromSessionStorage */.lw)(utils_sessionStorage/* AVAILABLE_SESSION_STORAGE_KEYS */.Ec.PREVIOUS_LOCATION);
        };
        return _this;
    }
    ProductTourRedirectPage.prototype.componentDidMount = function () {
        var replace = this.props.replace;
        var location = this.getPreviousLocation();
        var productTourId = this.getProductTourId();
        if (!location || !productTourId || location.pathname === ProductTourRedirectPage.pathname) {
            return;
        }
        replace({
            pathname: location.pathname,
            query: location.query,
            state: { productTourId: productTourId },
        });
    };
    ProductTourRedirectPage.prototype.getProductTourId = function () {
        var _a;
        return (_a = this.props.query) === null || _a === void 0 ? void 0 : _a.product_tour_id;
    };
    ProductTourRedirectPage.prototype.render = function () {
        var hasTourId = !!this.getProductTourId();
        var previousLocation = this.getPreviousLocation();
        var hasPreviousLocation = previousLocation && previousLocation.pathname !== ProductTourRedirectPage.pathname;
        return ((0,jsx_runtime.jsxs)("div", ProductTourRedirectPage_assign({ className: classnames_default()(ProductTourRedirectPage_ProductTourRedirectPage.base) }, { children: [(0,jsx_runtime.jsx)("img", { src: "/static/images/error_image_enlarged.png", className: classnames_default()(ProductTourRedirectPage_ProductTourRedirectPage.base__img), alt: "Error" }), (0,jsx_runtime.jsxs)(H1/* default */.A, { children: [!hasTourId
                            && (l('The tour is unavailable')), hasTourId && !hasPreviousLocation
                            && (l('You are supposed to come to this page from the page where the tour starts'))] })] })));
    };
    ProductTourRedirectPage.pathname = '/tour';
    return ProductTourRedirectPage;
}(react.PureComponent));
/* harmony default export */ const pages_ProductTourRedirectPage_ProductTourRedirectPage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    query: (0,routing_selectors/* getQuery */.$Z)(state),
}); }, {
    replace: routing_actions/* replace */.HC,
})(ProductTourRedirectPage));

;// CONCATENATED MODULE: ./src/pages/ProductTourRedirectPage/index.ts


;// CONCATENATED MODULE: ./src/pages/Landings/LandingLayout/LandingLayout.tsx
var LandingLayout_assign = (undefined && undefined.__assign) || function () {
    LandingLayout_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LandingLayout_assign.apply(this, arguments);
};




/* harmony default export */ const LandingLayout = (function () { return ((0,jsx_runtime.jsx)(react.Suspense, LandingLayout_assign({ fallback: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}) }, { children: (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }) }))); });

;// CONCATENATED MODULE: ./src/pages/Landings/LandingLayout/index.ts


;// CONCATENATED MODULE: ./src/pages/ExplorePage/ExplorePage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ExplorePage = ({"base":"tzfSZ6yzbFiOsDflbTiP","content":"yd55HloqERIcBNK52PQQ"});
;// CONCATENATED MODULE: ./src/pages/ExplorePage/ExplorePage.tsx
var ExplorePage_assign = (undefined && undefined.__assign) || function () {
    ExplorePage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ExplorePage_assign.apply(this, arguments);
};





var ExplorePage_ExplorePage = function () {
    return ((0,jsx_runtime.jsxs)("div", ExplorePage_assign({ className: ExplorePage.base }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Explore') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, { title: l('Explore'), subTitle: l('Collection of shortcuts that will take you to some of the best insights') }), (0,jsx_runtime.jsx)("div", ExplorePage_assign({ className: ExplorePage.content }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })));
};
/* harmony default export */ const pages_ExplorePage_ExplorePage = (ExplorePage_ExplorePage);

;// CONCATENATED MODULE: ./src/pages/ExplorePage/index.ts


// EXTERNAL MODULE: ./src/state/socialSearch/selectors.ts
var socialSearch_selectors = __webpack_require__("dHbk");
;// CONCATENATED MODULE: ./src/containers/socialSearch/NavigationPanel/NavigationPanel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NavigationPanel = ({"base":"jP0hTgBV2u2p7dgM4EZ9"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/NavigationPanel/NavigationPanel.tsx
var NavigationPanel_assign = (undefined && undefined.__assign) || function () {
    NavigationPanel_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return NavigationPanel_assign.apply(this, arguments);
};









var NavigationPanel_NavigationPanel = function (_a) {
    var location = _a.location, updateLocation = _a.updateLocation;
    var pages = [
        {
            label: l('Analytics', 'socialSearch'),
            pathname: '/search/overview',
            iconType: 'chart-box-outline',
        },
        {
            label: l('Mentions by location', 'socialSearch'),
            pathname: '/search/geo',
            iconType: 'earth-box',
        },
        {
            label: l('Audience', 'socialSearch'),
            pathname: '/search/audience',
            iconType: 'authors',
        },
        {
            label: l('Word cloud', 'socialSearch'),
            pathname: '/search/wordcloud',
            iconType: 'cloud-print-outline',
        },
        {
            label: l('Mentions', 'socialSearch'),
            pathname: '/search/mentions',
            iconType: 'forum-outline',
        }
    ];
    var isSelected = function (pathname) { return location.pathname === pathname; };
    var handleIconClick = function (pathname) {
        updateLocation({ pathname: pathname });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, NavigationPanel_assign({ className: NavigationPanel.base }, { children: pages.map(function (page) { return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, NavigationPanel_assign({ text: page.label, position: "right center" }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { size: 24, color: isSelected(page.pathname) ? 'blue' : 'default', iconType: page.iconType, onClick: function () { return handleIconClick(page.pathname); } }, page.pathname) }), page.label)); }) })));
};
/* harmony default export */ const socialSearch_NavigationPanel_NavigationPanel = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, { updateLocation: routing_actions/* update */.yo }))(NavigationPanel_NavigationPanel));

;// CONCATENATED MODULE: ./src/containers/socialSearch/NavigationPanel/index.ts


// EXTERNAL MODULE: ./node_modules/uuid/dist/esm-browser/v1.js
var v1 = __webpack_require__("xQqG");
;// CONCATENATED MODULE: ./src/containers/socialSearch/SearchPanel/SearchPanel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SearchPanel = ({"base":"C4VgQHzt0aoPgVVnjLqr","container":"_h69gIig1Xrfh2DCUKem","editor":"c_um6g5lVWLgW9qkAt0P"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/SearchPanel/SearchPanel.tsx
var SearchPanel_assign = (undefined && undefined.__assign) || function () {
    SearchPanel_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SearchPanel_assign.apply(this, arguments);
};









var getEmptyQueriesIndexes = function (queries) {
    var indexes = [];
    queries.forEach(function (x, i) {
        if (x.trim() === '')
            indexes.push(i);
    });
    return indexes;
};
var SearchPanel_SearchPanel = function (_a) {
    var searchQueries = _a.searchQueries, validationResults = _a.validationResults, onQueryChange = _a.onQueryChange, onSearch = _a.onSearch;
    var calendarMinDate = new Date(2022, 8, 1, 0, 0, 0, 0);
    var keys = (0,react.useMemo)(function () {
        return searchQueries.map(function (s) { return (0,v1/* default */.A)(); });
    }, [searchQueries.length]);
    var handleChangeQuery = function (value, index) {
        onQueryChange(searchQueries.map(function (x, i) {
            if (i === index)
                return value;
            return x;
        }));
    };
    var handleSearch = function () {
        var emptyQueriesIndexes = getEmptyQueriesIndexes(searchQueries);
        if (emptyQueriesIndexes.length && searchQueries.length > 1) {
            onQueryChange(searchQueries.filter(function (x, i) { return !emptyQueriesIndexes.includes(i); }));
        }
        onSearch(searchQueries.filter(function (x) { return x.trim() !== ''; }));
    };
    return ((0,jsx_runtime.jsxs)("div", SearchPanel_assign({ className: SearchPanel.base }, { children: [(0,jsx_runtime.jsxs)("div", SearchPanel_assign({ className: SearchPanel.container }, { children: [searchQueries.map(function (q, index) {
                        var _a;
                        return ((0,jsx_runtime.jsxs)(react.Fragment, { children: [(0,jsx_runtime.jsx)(ui_QueryEditor_QueryEditor, { oneLine: true, className: SearchPanel.editor, style: { borderLeft: "4px solid ".concat(utils_colors/* socialSearchColors */.Mu[index]) }, queryError: (_a = validationResults[index]) === null || _a === void 0 ? void 0 : _a.error, value: q, placeholder: index > 0 ? l('Type a query for comparison') : l('Type your query here'), onChange: function (x) { return handleChangeQuery(x, index); }, onPressEnter: handleSearch }, keys[index]), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {})] }, keys[index]));
                    }), (0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, { showPresetRanges: true, minDate: calendarMinDate })] })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Search'), onClick: handleSearch })] })));
};
/* harmony default export */ const socialSearch_SearchPanel_SearchPanel = (SearchPanel_SearchPanel);

;// CONCATENATED MODULE: ./src/containers/socialSearch/SearchPanel/index.ts


;// CONCATENATED MODULE: ./src/containers/filters/socialSearchFilters.ts
var getSocialSearchFilters = function () { return ([
    {
        type: 'country',
        getLabel: function (selected) { return (selected
            ? sprintf(nl('%d country applied', '%d countries applied', selected), selected)
            : l('Worldwide')); },
    },
    {
        type: 'language',
        getLabel: function (selected) { return (selected
            ? sprintf(nl('%d language applied', '%d languages applied', selected), selected)
            : l('All languages')); },
    },
    {
        type: 'resourceType',
        getLabel: function (selected) { return (selected
            ? sprintf(nl('%d source type applied', '%d source types applied', selected), selected)
            : l('All source types')); },
    },
    {
        type: 'source',
        getLabel: function (selected) { return (selected
            ? sprintf(nl('%d source applied', '%d sources applied', selected), selected)
            : l('All sources')); },
    },
    {
        type: 'sentiment',
        getLabel: function (selected) { return (selected
            ? sprintf(nl('%d sentiment applied', '%d sentiments applied', selected), selected)
            : l('All sentiments')); },
    }
]); };
/* harmony default export */ const socialSearchFilters = (getSocialSearchFilters);

// EXTERNAL MODULE: ./src/containers/filters/filters.tsx + 45 modules
var filters_filters = __webpack_require__("kfQj");
;// CONCATENATED MODULE: ./src/containers/socialSearch/FIltersPanel/FIltersPanel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FIltersPanel = ({"base":"jNtl3wkkhxatLIYqfiDW","filterSelector":"RDFOhIyKsSomipnsrFtP","filterSelectorContainer":"Gu5tSHab9aIRDFQp2yWr","filterSelectorLabel":"bdBAhGiWCUfifAmE2Q8m","appliedFilter":"TdxroQEYitSrpJSPUc4Q"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/FIltersPanel/SocialSearchFiltersPanel.tsx
var SocialSearchFiltersPanel_assign = (undefined && undefined.__assign) || function () {
    SocialSearchFiltersPanel_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SocialSearchFiltersPanel_assign.apply(this, arguments);
};
var SocialSearchFiltersPanel_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var SocialSearchFiltersPanel_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};


















var FilterSelector = function (_a) {
    var _b;
    var isApplied = _a.isApplied, type = _a.type, label = _a.label, config = _a.config, onSelect = _a.onSelect, onExclude = _a.onExclude, onApply = _a.onApply;
    var popover = (0,react.useRef)(null);
    var handleCancel = function () {
        popover.current.hide();
    };
    var handleApply = function () {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        onApply.apply(void 0, SocialSearchFiltersPanel_spreadArray([], SocialSearchFiltersPanel_read(args), false));
        popover.current.hide();
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, SocialSearchFiltersPanel_assign({ flowing: true, fitted: true, flexibleHeight: true, ref: popover, content: (0,jsx_runtime.jsxs)("div", SocialSearchFiltersPanel_assign({ className: FIltersPanel.filterSelector }, { children: [(0,jsx_runtime.jsx)("div", SocialSearchFiltersPanel_assign({ className: FIltersPanel.filterSelectorContainer }, { children: config.component({
                        hideCounters: true,
                        dataRetriever: config.defaultDataRetriever,
                        onSelect: function (value, overrideParams) { return onSelect((overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterType) || type, (overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterValue) || [value]); },
                        onExclude: function (value, overrideParams) { return onExclude((overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterType) || type, (overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterValue) || [value]); },
                    }) })), (0,jsx_runtime.jsxs)(Toolbar/* ButtonBar */.WN, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleCancel }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Apply'), onClick: handleApply })] })] })) }, { children: (0,jsx_runtime.jsxs)("div", SocialSearchFiltersPanel_assign({ className: classnames_default()(FIltersPanel.filterSelectorLabel, (_b = {}, _b[FIltersPanel.appliedFilter] = isApplied, _b)) }, { children: [label, (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "chevron-down" })] })) })));
};
var SocialSearchFiltersPanel = function (_a) {
    var aggregations = _a.aggregations, entities = _a.entities, uiEntities = _a.uiEntities, appliedFilter = _a.appliedFilter, searchQueries = _a.searchQueries, updateFilterQuery = _a.updateFilterQuery, fetchFilterFacets = _a.fetchFilterFacets, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = SocialSearchFiltersPanel_read((0,react.useState)(appliedFilter === null || appliedFilter === void 0 ? void 0 : appliedFilter.copyFilter()), 2), previewFilter = _b[0], setPreviewFilter = _b[1];
    (0,react.useEffect)(function () {
        fetchFilterFacets();
    }, []);
    var handleApply = function () {
        sendAnalyticalEvent({ eventType: 'SocialSearch: filter applied' });
        if (searchQueries) {
            updateFilterQuery({ filter: previewFilter, queryParams: { searchQueries: searchQueries } });
        }
        else {
            updateFilterQuery({ filter: previewFilter });
        }
    };
    var handleSelectFilter = function (name, values) {
        sendAnalyticalEvent({ eventType: "SocialSearch: include filter by ".concat(name) });
        (0,Filter/* handleSelect */.lD)(name, values, previewFilter, function (payload) { var _a; return setPreviewFilter((_a = payload.filter) === null || _a === void 0 ? void 0 : _a.copyFilter()); });
    };
    var handleExcludeFilter = function (name, values) {
        sendAnalyticalEvent({ eventType: "SocialSearch: exclude filter by ".concat(name) });
        (0,Filter/* handleExclude */.vO)(name, values, previewFilter, function (payload) { var _a; return setPreviewFilter((_a = payload.filter) === null || _a === void 0 ? void 0 : _a.copyFilter()); });
    };
    var filters = socialSearchFilters();
    return ((0,jsx_runtime.jsx)("div", SocialSearchFiltersPanel_assign({ className: FIltersPanel.base }, { children: filters.map(function (f) {
            var facetResult = { aggregations: aggregations, entities: entities, uiEntities: uiEntities };
            var config = (0,filters_filters/* default */.A)(f.type, previewFilter !== null && previewFilter !== void 0 ? previewFilter : Filter/* Filter */.dJ.empty(), facetResult);
            var selectedLength = appliedFilter.filterGroups
                .filter(function (g) { return g.fieldName === f.type; })
                .reduce(function (length, x) { var _a; return length + ((_a = x === null || x === void 0 ? void 0 : x.value) === null || _a === void 0 ? void 0 : _a.length) || 0; }, 0);
            return ((0,jsx_runtime.jsx)(FilterSelector, { isApplied: selectedLength, type: f.type, label: f.getLabel(selectedLength), config: config, onSelect: handleSelectFilter, onExclude: handleExcludeFilter, onApply: handleApply }, f.type));
        }) })));
};
/* harmony default export */ const FIltersPanel_SocialSearchFiltersPanel = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    appliedFilter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    aggregations: state.filter.get('facets').toJS(),
    entities: state.entities.get('original'),
    uiEntities: state.entities.get('ui'),
}); }, {
    fetchFilterFacets: filter_model/* filterModel */.W.action.fetchSocialSearchFilter,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(SocialSearchFiltersPanel));

;// CONCATENATED MODULE: ./src/containers/socialSearch/FIltersPanel/index.ts


;// CONCATENATED MODULE: ./src/pages/SocialSearchPage/SocialSearchPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SocialSearchPage = ({"base":"ziclR5J4kcIKlMv90LPc","headerContainer":"q5vjkj3JmOexFItjcyTu","header":"fzzurQqszYhWEEdMa8mD","page":"K0BYIwudrICG2I_moZvQ","container":"ccaiWw8R_agPV47q64My","dataInfo":"APWNqsxFr1dvKk4UbXUG"});
;// CONCATENATED MODULE: ./src/pages/SocialSearchPage/SocialSearchPage.tsx
var SocialSearchPage_assign = (undefined && undefined.__assign) || function () {
    SocialSearchPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SocialSearchPage_assign.apply(this, arguments);
};
var SocialSearchPage_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






















var QUERIES_LIMIT = 5;
var SocialSearchPage_SocialSearchPage = function (_a) {
    var socialSearchEnabled = _a.socialSearchEnabled, validationResults = _a.validationResults, urlQueries = _a.urlQueries, validateSearchQueries = _a.validateSearchQueries, replaceLocation = _a.replaceLocation, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var location = (0,react_router_dist/* useLocation */.zy)();
    var _b = SocialSearchPage_read((0,react.useState)(urlQueries || ['']), 2), currentQueries = _b[0], setCurrentQueries = _b[1];
    (0,react.useEffect)(function () {
        if (!socialSearchEnabled)
            replaceLocation({ pathname: '/themes' });
    });
    var prev = usePrevious({ urlQueries: urlQueries });
    var isSomeQueriesInvalid = validationResults.some(function (x) { return x.isValid === false; });
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({ eventType: 'SocialSearch: page opened' });
        if (urlQueries)
            validateSearchQueries(urlQueries);
    }, []);
    (0,react.useEffect)(function () {
        if ((prev === null || prev === void 0 ? void 0 : prev.urlQueries.length) && !urlQueries.length)
            updateLocation({ pathname: '/search' });
        if (!(0,lodash.isEqual)(prev === null || prev === void 0 ? void 0 : prev.urlQueries, urlQueries))
            validateSearchQueries(urlQueries);
    }, [urlQueries]);
    (0,react.useEffect)(function () {
        if (urlQueries.length === currentQueries.length && urlQueries.length !== QUERIES_LIMIT)
            return setCurrentQueries(urlQueries.concat(''));
        if (currentQueries.some(function (x, i) { return x === '' && urlQueries[i] !== ''; }))
            return setCurrentQueries(urlQueries.concat(''));
        return function () { };
    }, [urlQueries]);
    (0,react.useEffect)(function () {
        if (isSomeQueriesInvalid)
            updateLocation({ pathname: '/search' });
        else
            updateLocation({ pathname: location.pathname === '/search' && urlQueries.length ? '/search/overview' : location.pathname });
    }, [validationResults]);
    var handleQueryChange = function (queries) {
        setCurrentQueries(queries);
    };
    var handleSearch = function (searchQueries) {
        sendAnalyticalEvent({
            eventType: 'SocialSearch: search initiated',
            properties: { numberOfQueries: searchQueries.length },
        });
        updateLocation({ query: { searchQueries: searchQueries } });
    };
    return ((0,jsx_runtime.jsxs)("div", SocialSearchPage_assign({ className: SocialSearchPage.base }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Social search') }), (0,jsx_runtime.jsxs)(Card/* default */.A, SocialSearchPage_assign({ fullWidth: true, className: SocialSearchPage.headerContainer }, { children: [(0,jsx_runtime.jsxs)("div", SocialSearchPage_assign({ className: SocialSearchPage.header }, { children: [(0,jsx_runtime.jsx)(socialSearch_SearchPanel_SearchPanel, { validationResults: validationResults, searchQueries: currentQueries, onQueryChange: handleQueryChange, onSearch: handleSearch }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(FIltersPanel_SocialSearchFiltersPanel, { searchQueries: !!urlQueries.length && currentQueries.filter(function (v) { return !!v.trim(); }) })] })), (0,jsx_runtime.jsx)("span", SocialSearchPage_assign({ className: SocialSearchPage.dataInfo }, { children: (0,jsx_runtime.jsxs)(Tooltip/* default */.A, SocialSearchPage_assign({ basic: true, on: "hover", position: "bottom right", 
                            /* eslint-disable-next-line max-len */
                            text: l('Social search results are calculated on a 1% sample of data from all the sources YouScan monitors. Data is available from 1st of September 2022.', 'socialSearch') }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('About the data', 'socialSearch')] })) }))] })), (0,jsx_runtime.jsx)("div", { children: urlQueries.length && !isSomeQueriesInvalid
                    ? ((0,jsx_runtime.jsxs)("div", SocialSearchPage_assign({ className: SocialSearchPage.page }, { children: [(0,jsx_runtime.jsx)(socialSearch_NavigationPanel_NavigationPanel, {}), (0,jsx_runtime.jsx)("div", SocialSearchPage_assign({ className: SocialSearchPage.container }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })))
                    : null })] })));
};
/* harmony default export */ const pages_SocialSearchPage_SocialSearchPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    socialSearchEnabled: (0,account_selectors/* canShowSocialSearch */.hj)(state),
    urlQueries: (0,socialSearch_selectors/* getSearchQueries */.Lf)(state),
    validationResults: (0,socialSearch_selectors/* getValidationResults */.mr)(state),
}); }, {
    updateLocation: routing_actions/* update */.yo,
    replaceLocation: routing_actions/* replace */.HC,
    validateSearchQueries: socialSearch_model/* socialSearchModel */.J.action.validateSearchQueries,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(SocialSearchPage_SocialSearchPage));

;// CONCATENATED MODULE: ./src/pages/SocialSearchPage/index.ts


;// CONCATENATED MODULE: ./src/pages/FeedbackPage/FeedbackPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FeedbackPage = ({"base":"Y6nE9sZEtlxNETiHRVYg","content":"wXYvwWyc_UhGPJB9vffu","infoBox":"DHo60Tys3PzEB7RMBSQC","image":"EidjLR9jm_g6jj3J6Y7U","additionalText":"W669e6sKghA7fYB01Ecz"});
;// CONCATENATED MODULE: ./src/pages/FeedbackPage/FeedbackPage.tsx
var FeedbackPage_assign = (undefined && undefined.__assign) || function () {
    FeedbackPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return FeedbackPage_assign.apply(this, arguments);
};












var FeedbackPage_FeedbackPage = function (_a) {
    var location = _a.location, sendAnalyticalEvent = _a.sendAnalyticalEvent, replaceLocation = _a.replaceLocation;
    (0,react.useEffect)(function () {
        var _a;
        setTimeout(function () {
            replaceLocation({
                pathname: '/themes',
                query: {},
            });
        }, 5000);
        if (!((_a = location.query) === null || _a === void 0 ? void 0 : _a.feedbackType))
            return;
        sendAnalyticalEvent({
            eventType: location.query.feedbackType,
            properties: location.query.topicId
                ? {
                    topic: {
                        id: location.query.topicId,
                        name: location.query.topicName,
                    },
                }
                : {},
        });
    }, []);
    return ((0,jsx_runtime.jsxs)("div", FeedbackPage_assign({ className: FeedbackPage.base }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Feedback page') }), (0,jsx_runtime.jsx)("div", FeedbackPage_assign({ className: FeedbackPage.content }, { children: (0,jsx_runtime.jsxs)(Card/* default */.A, FeedbackPage_assign({ className: FeedbackPage.infoBox }, { children: [(0,jsx_runtime.jsx)("img", { className: FeedbackPage.image, src: "/static/images/success.svg", alt: "Success" }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Thank you!') }), (0,jsx_runtime.jsx)("p", { children: l('Your feedback has been submitted') }), (0,jsx_runtime.jsx)("p", FeedbackPage_assign({ className: FeedbackPage.additionalText }, { children: l('You will be redirected to the topics page shortly') }))] })) }))] })));
};
/* harmony default export */ const pages_FeedbackPage_FeedbackPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    replaceLocation: routing_actions/* replace */.HC,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), react.memo)(FeedbackPage_FeedbackPage));

;// CONCATENATED MODULE: ./src/pages/FeedbackPage/index.ts


;// CONCATENATED MODULE: ./src/pages/conversationalInsights/ConversationsPage/ConversationsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ConversationsPage = ({"base":"n6yv_UUCubNEEiEMPbcq","content":"wS_eW6lLKUSLL4q5CoT8","pageHeader":"YdD4JrvTWjrZ6jImV8Wt"});
;// CONCATENATED MODULE: ./src/pages/conversationalInsights/ConversationsPage/ConversationsPage.tsx
var ConversationsPage_assign = (undefined && undefined.__assign) || function () {
    ConversationsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ConversationsPage_assign.apply(this, arguments);
};




















var ConversationsPage_ConversationsPage = function (_a) {
    var showAspects = _a.showAspects, params = _a.params, router = _a.router, updateLocation = _a.updateLocation;
    var tabs = (0,react.useMemo)(function () {
        return [
            {
                path: '',
                label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Subjects'), (0,jsx_runtime.jsx)(Badge/* default */.A.Beta, {})] }),
                id: 'tab-item-subjects',
            },
            {
                path: '/trends',
                label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Trends'), (0,jsx_runtime.jsx)(Badge/* default */.A.Beta, {})] }),
                id: 'tab-item-trends',
            },
            {
                disabled: { rule: !showAspects },
                path: '/aspects',
                label: l('Aspects'),
                id: 'tab-item-aspects',
            },
            {
                path: '/wordcloud',
                label: l('Word cloud'),
                id: 'tab-item-word-cloud',
            }
        ].filter(Boolean);
    }, [showAspects]);
    var handleSelectTab = function (index) {
        var tabSubPath = tabs[index].path;
        updateLocation({
            pathname: "/themes/".concat(params.id, "/conversations").concat(tabSubPath),
        });
    };
    var pathname = router.location.pathname;
    var selectedTabIndex = tabs.findIndex(function (tab) { return pathname === "/themes/".concat(params.id, "/conversations").concat(tab.path); }) || 0;
    return ((0,jsx_runtime.jsx)(YoutubePolicyBottomMessage_YoutubePolicyBottomMessage, { children: (0,jsx_runtime.jsxs)("div", ConversationsPage_assign({ className: classnames_default()(ConversationsPage.base) }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { isTopicPage: true, title: l('Conversation Insights') }), (0,jsx_runtime.jsx)(ui_PageHeader_PageHeader, ConversationsPage_assign({ title: (0,jsx_runtime.jsx)("span", ConversationsPage_assign({ className: classnames_default()(ConversationsPage.pageHeader) }, { children: l('Conversation Insights') })), rightContent: (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, { children: [(0,jsx_runtime.jsx)(TopicSearchFilter_TopicSearchFilter, {}), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(PeriodPicker_PeriodPicker, { showTime: true, showPresetRanges: true })] }) }, { children: (0,jsx_runtime.jsx)(ThemeAnalyticsFilter_ThemeAnalyticsFilter, {}) })), (0,jsx_runtime.jsx)(ui_CardTabs_Tabs, { fullWidth: true, selectedTabIndex: selectedTabIndex, options: tabs, onSelect: handleSelectTab }), (0,jsx_runtime.jsx)("div", ConversationsPage_assign({ className: classnames_default()(ConversationsPage.content) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Outlet */.sv, {}) }))] })) }));
};
/* harmony default export */ const conversationalInsights_ConversationsPage_ConversationsPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    showAspects: (0,themes_selectors/* canShowAspects */.d2)(state),
}); }, { updateLocation: routing_actions/* update */.yo }), react.memo)(ConversationsPage_ConversationsPage));

;// CONCATENATED MODULE: ./src/pages/conversationalInsights/ConversationsPage/index.ts


;// CONCATENATED MODULE: ./src/containers/conversationalInsights/Subjects/Subjects.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Subjects = ({"base":"qfHHVq_M_N2FLgiugH5Z"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/Subjects/Subjects.tsx
var Subjects_assign = (undefined && undefined.__assign) || function () {
    Subjects_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Subjects_assign.apply(this, arguments);
};

















var SubjectsChart = function (_a) {
    var _b;
    var isFetching = _a.isFetching, interval = _a.interval, themeId = _a.themeId, colorsBySubjects = _a.colorsBySubjects, stats = _a.stats, update = _a.update, updateFilter = _a.updateFilter;
    var series = (0,react.useMemo)(function () {
        if (!stats)
            return [];
        return stats.map(function (stat) { return ({
            key: stat.key,
            name: (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(stat.key),
            data: stat.dates.values.map(function (x) { return x.count; }),
            color: colorsBySubjects[stat.key],
        }); });
    }, [stats, colorsBySubjects]);
    var handleClick = function (date, key) {
        updateFilter({
            name: 'subject',
            value: [key],
        });
        update({
            pathname: "/themes/".concat(themeId, "/mentions"),
            query: Subjects_assign(Subjects_assign({}, getDataPointPeriod(date, interval)), { page: 1 }),
        });
    };
    return ((0,jsx_runtime.jsx)("div", Subjects_assign({ className: classnames_default()(Subjects.base) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, Subjects_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Line/* default */.A, { withoutHeader: true, title: l('Subjects'), series: series, height: "200px", configOptions: {
                    tooltip: {
                        split: false,
                        crosshairs: true,
                        useHTML: true,
                        pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
                    },
                    xAxis: {
                        type: 'datetime',
                        maxPadding: 0,
                        crosshair: true,
                        labels: {
                            reserveSpace: true,
                        },
                    },
                    yAxis: {
                        visible: false,
                        startOnTick: false,
                        endOnTick: false,
                    },
                    plotOptions: {
                        spline: {
                            allowPointSelect: true,
                            cursor: 'pointer',
                            showInLegend: true,
                        },
                        series: {
                            pointStart: new Date((_b = stats === null || stats === void 0 ? void 0 : stats[0]) === null || _b === void 0 ? void 0 : _b.dates.values[0].dateAsUtc).getTime(),
                            pointInterval: interval,
                            marker: {
                                enabled: false,
                            },
                            label: {
                                minFontSize: 5,
                                maxFontSize: 15,
                                style: {
                                    color: 'rgba(255,255,255,0.75)',
                                },
                            },
                            accessibility: {
                                exposeAsGroupOnly: true,
                            },
                            cursor: 'pointer',
                            point: {
                                events: {
                                    click: function (e) { return handleClick(e.point.category, e.point.series.userOptions.key); },
                                },
                            },
                        },
                    },
                }, onClick: function () { }, onSendChartExportedEvent: function () { } }) })) })));
};
/* harmony default export */ const Subjects_Subjects = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    colorsBySubjects: (0,conversationalInsights_selectors/* getColorsBySubjects */.l3)(state),
}); }, {
    update: routing_actions/* update */.yo,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('subjectsChart', {
    aggregations: {
        subjects: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}, false, function (state) { return ({
    stats: (0,stats_selectors/* getSubjects */.u7)(state),
}); }), react.memo)(SubjectsChart));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/Subjects/index.ts


// EXTERNAL MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/SubjectPhrasesGraph.tsx + 1 modules
var SubjectPhrasesGraph = __webpack_require__("OqSX");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/SubjectsPhrases.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubjectsPhrases = ({"base":"XwAit4YFbedZvsX2B4bU","chart":"mYHMCfBZD6fvVvWf8Keh","additionalContent":"r4UXKDcRST6MyYkWHfZm"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/SubjectsPhrases.tsx
var SubjectsPhrases_assign = (undefined && undefined.__assign) || function () {
    SubjectsPhrases_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SubjectsPhrases_assign.apply(this, arguments);
};






var SubjectsPhrasesChart = function (_a) {
    var additionalContent = _a.additionalContent;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, SubjectsPhrases_assign({ className: classnames_default()(SubjectsPhrases.base) }, { children: [(0,jsx_runtime.jsx)("div", SubjectsPhrases_assign({ className: SubjectsPhrases.chart }, { children: (0,jsx_runtime.jsx)(SubjectPhrasesGraph/* default */.A, {}) })), (0,jsx_runtime.jsx)("div", SubjectsPhrases_assign({ className: SubjectsPhrases.additionalContent }, { children: additionalContent }))] })));
};
/* harmony default export */ const SubjectsPhrases_SubjectsPhrases = ((0,react.memo)(SubjectsPhrasesChart));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/index.ts


;// CONCATENATED MODULE: ./src/containers/conversationalInsights/PotentialCrisesSubjects/PotentialCrisesSubjects.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const PotentialCrisesSubjects = ({"base":"h7Czart5pOmIOXBgWn1u","categoryContainer":"MlZUysgQ25Slo9tFrPvJ","category":"ze_xkbrlSgJI_YXjlQHA","categoryProgressBar":"aQnCSq0tYo757DPykbjO"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/PotentialCrisesSubjects/PotentialCrisesSubjects.tsx
var PotentialCrisesSubjects_assign = (undefined && undefined.__assign) || function () {
    PotentialCrisesSubjects_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PotentialCrisesSubjects_assign.apply(this, arguments);
};




















var TOP_SUBJECTS_COUNT = 8;
var STATS_KEY = 'subjectsPotentialCrisesChart';
var CONFIG = {
    aggregations: {
        subjects: {
            size: 100,
        },
    },
};
var addIndirectToFilter = function (filter) {
    if (!filter)
        return Filter/* Filter */.dJ.empty();
    var copiedFilter = filter.copyFilter();
    if (copiedFilter.findByName('indirect'))
        return copiedFilter;
    copiedFilter.doExclude('indirect', ['true']);
    return copiedFilter;
};
var PotentialCrisesSubjects_PotentialCrisesSubjects = function (_a) {
    var isCopilotLimitReached = _a.isCopilotLimitReached, themeId = _a.themeId, filter = _a.filter, stats = _a.stats, statsBy = _a.statsBy, copilotSettings = _a.copilotSettings, fetchStats = _a.fetchStats, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateFilterBatched = _a.updateFilterBatched, updateFilterQuery = _a.updateFilterQuery;
    (0,react.useEffect)(function () {
        fetchStats({
            themeId: themeId,
            key: STATS_KEY,
            config: CONFIG,
            filter: addIndirectToFilter(filter),
            statsBy: statsBy,
        });
    }, [themeId, statsBy]);
    var handleInsightsCopilotCall = function (subject) {
        var queryParams = {
            orderBy: 'engagement',
            isCopilotActive: !isCopilotLimitReached,
            copilotMetaData: isCopilotLimitReached ? null : { potentialCrisis: subject },
        };
        var subjectFilterGroup = filter.findByName('subject');
        if (subjectFilterGroup)
            filter.removeFilterGroup(subjectFilterGroup);
        filter.doAdd('subject', [subject]);
        filter.doExclude('indirect', ['true']);
        updateFilterQuery({
            filter: filter,
            pathname: "/themes/".concat(themeId, "/mentions"),
            queryParams: PotentialCrisesSubjects_assign({}, queryParams),
        });
    };
    var handleClick = function (subject) {
        sendAnalyticalEvent({ eventType: 'Conversational Insights: potential crisis clicked', properties: { subject: subject } });
        if (copilotSettings.showWhenSubjectsClicked) {
            handleInsightsCopilotCall(subject);
            return;
        }
        updateFilterBatched({
            updates: [{
                    name: 'subject',
                    value: [subject],
                }, {
                    exclude: true,
                    name: 'indirect',
                    value: ['true'],
                }],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
                query: { orderBy: 'engagement' },
            },
        });
    };
    var series = (0,react.useMemo)(function () {
        if (!stats)
            return null;
        return stats.slice(0, TOP_SUBJECTS_COUNT).map(function (stat) { return (PotentialCrisesSubjects_assign(PotentialCrisesSubjects_assign({}, stat), { name: (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(stat.key) })); });
    }, [stats]);
    var totalCount = (0,react.useMemo)(function () { return stats === null || stats === void 0 ? void 0 : stats.reduce(function (acc, x) { return acc + x.count; }, 0); }, [stats]);
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, PotentialCrisesSubjects_assign({ className: classnames_default()(PotentialCrisesSubjects.base) }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Potential crises') }), (0,jsx_runtime.jsx)(Loader/* default */.A, PotentialCrisesSubjects_assign({ className: PotentialCrisesSubjects.categoryContainer, loaded: !!stats }, { children: series === null || series === void 0 ? void 0 : series.map(function (x) { return ((0,jsx_runtime.jsxs)("div", PotentialCrisesSubjects_assign({ className: PotentialCrisesSubjects.category, onClick: function () { return handleClick(x.key); } }, { children: [x.name, (0,jsx_runtime.jsx)(Progressbar/* default */.A, { className: PotentialCrisesSubjects.categoryProgressBar, total: totalCount, selected: x.count, color: (0,utils_colors/* getSentimentColor */.HS)('negative') })] }), x.key)); }) }))] })));
};
/* harmony default export */ const conversationalInsights_PotentialCrisesSubjects_PotentialCrisesSubjects = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    stats: (0,stats_selectors/* getPotentialCrisesSubjects */.lJ)(state),
    statsBy: (0,stats_selectors/* getStatsBy */.b8)(state),
    isCopilotLimitReached: (0,insightsCopilot_selectors/* isInsightsCopilotLimitReached */.hh)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state),
}); }, {
    fetchStats: stats_model/* statsModel */.l.action.fetchStats,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withFilter/* default */.A)(function (props, isFirstTime) {
    if (!isFirstTime) {
        props.fetchStats({
            themeId: props.themeId,
            key: STATS_KEY,
            config: CONFIG,
            filter: addIndirectToFilter(props.filter),
            statsBy: props.statsBy,
        });
    }
}), react.memo)(PotentialCrisesSubjects_PotentialCrisesSubjects));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/PotentialCrisesSubjects/index.ts


;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsDistribution/SubjectsDistribution.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubjectsDistribution = ({"base":"Ew8M_JKXudy7PloydkRc"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsDistribution/SubjectsDistribution.tsx
var SubjectsDistribution_assign = (undefined && undefined.__assign) || function () {
    SubjectsDistribution_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SubjectsDistribution_assign.apply(this, arguments);
};














var SubjectsDistributionChart = function (_a) {
    var isFetching = _a.isFetching, counts = _a.counts, otherCount = _a.otherCount, updateFilter = _a.updateFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendChartExportedEvent = _a.sendChartExportedEvent;
    var handleSubjectClick = function (subject) {
        sendAnalyticalEvent({
            eventType: 'Conversational Insights: subjects pie clicked',
            properties: {
                subject: subject,
            },
        });
        updateFilter({
            name: 'subject',
            value: [subject],
        });
    };
    var handleSendChartExportedEvent = function (_a) {
        var properties = _a.properties;
        sendChartExportedEvent({
            properties: SubjectsDistribution_assign(SubjectsDistribution_assign({}, properties), { chartType: 'Subjects Distribution' }),
        });
    };
    var getStats = function () {
        if (!counts)
            return [];
        return [{
                name: l('Mentions count'),
                data: counts.map(function (stat) { return ({
                    name: (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(stat.key),
                    key: stat.key,
                    y: stat.total || 0,
                }); }).concat({
                    name: l('Other'),
                    y: otherCount,
                }),
            }];
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SubjectsDistribution_assign({ className: SubjectsDistribution.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, SubjectsDistribution_assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Pie/* default */.A, { title: l('Subjects distribution'), series: getStats(), onClick: handleSubjectClick, onSendChartExportedEvent: handleSendChartExportedEvent }) })) })));
};
/* harmony default export */ const SubjectsDistribution_SubjectsDistribution = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}), (0,withTopicStats/* default */.A)('subjectsDistributionChart', {
    aggregations: {
        subjects: {
            size: 7,
        },
    },
}, false, function (state) { return ({
    counts: (0,stats_selectors/* getSubjectsCountsForPie */.VW)(state),
    otherCount: (0,stats_selectors/* getSubjectsOtherCount */.nO)(state),
}); }), react.memo)(SubjectsDistributionChart));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsDistribution/index.ts


;// CONCATENATED MODULE: ./src/pages/conversationalInsights/SubjectsPage/SubjectsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubjectsPage = ({"base":"Q4e0KlXu9WNuN9C_J4D1","group":"V9JrTP7jjvgN34V0poXm","groupDynamics":"CRQwH5oPyQVuy9CJbxSB","dynamics":"uVNilk69XNuc39Re5Tzc","phrases":"m5s6VkdRFK87lFelcAm1","info":"i30hqMY_4xDd4NlO6sOE"});
;// CONCATENATED MODULE: ./src/pages/conversationalInsights/SubjectsPage/SubjectsPage.tsx
var SubjectsPage_assign = (undefined && undefined.__assign) || function () {
    SubjectsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SubjectsPage_assign.apply(this, arguments);
};

















var SubjectsPage_SubjectsPage = function (_a) {
    var themeId = _a.themeId, statsBy = _a.statsBy, matchSubjectsWithColors = _a.matchSubjectsWithColors, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({
            eventType: 'Conversational Insights: subjects page opened',
        });
    }, []);
    (0,react.useEffect)(function () {
        matchSubjectsWithColors({ themeId: themeId, statsBy: statsBy });
    }, [themeId, statsBy]);
    return ((0,jsx_runtime.jsxs)("div", SubjectsPage_assign({ className: SubjectsPage.base }, { children: [(0,jsx_runtime.jsx)(InfoBox_InfoBox/* default */.A, { warning: true, displayed: true, title: l('This feature is currently in beta and it may transition to a paid add-on in the future.') }), (0,jsx_runtime.jsxs)("div", SubjectsPage_assign({ className: SubjectsPage.dynamics }, { children: [(0,jsx_runtime.jsx)("div", SubjectsPage_assign({ className: SubjectsPage.phrases }, { children: (0,jsx_runtime.jsx)(SubjectsPhrases_SubjectsPhrases, { additionalContent: (0,jsx_runtime.jsx)(Subjects_Subjects, {}) }) })), (0,jsx_runtime.jsxs)("div", SubjectsPage_assign({ className: SubjectsPage.info }, { children: [(0,jsx_runtime.jsx)(SubjectsDistribution_SubjectsDistribution, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(conversationalInsights_PotentialCrisesSubjects_PotentialCrisesSubjects, {})] }))] }))] })));
};
/* harmony default export */ const conversationalInsights_SubjectsPage_SubjectsPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    statsBy: (0,stats_selectors/* getStatsBy */.b8)(state),
}); }, {
    matchSubjectsWithColors: conversationalInsights_model/* conversationalInsightsModel */.h.action.matchSubjectsWithColors,
    fetchInsightsCopilotUsage: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withFilter/* default */.A)(function (props, isFirstTime) {
    if (isFirstTime) {
        props.fetchInsightsCopilotUsage();
    }
    else {
        props.matchSubjectsWithColors({ themeId: props.themeId, statsBy: props.statsBy });
    }
}))(SubjectsPage_SubjectsPage));

;// CONCATENATED MODULE: ./src/pages/conversationalInsights/SubjectsPage/index.ts


// EXTERNAL MODULE: ./src/utils/translations/trendTypesTranslations.ts
var trendTypesTranslations = __webpack_require__("/veU");
// EXTERNAL MODULE: ./src/containers/conversationalInsights/TrendsList/components/Trends.tsx
var Trends = __webpack_require__("0mf4");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/TrendsList/TrendsList.tsx
var TrendsList_assign = (undefined && undefined.__assign) || function () {
    TrendsList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TrendsList_assign.apply(this, arguments);
};
var TrendsList_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
















var TRASH_TREND_TYPE = 'trash';
var TRENDS_THRESHOLD = 10;
var TrendsList_Trends = function (_a) {
    var isCopilotLimitReached = _a.isCopilotLimitReached, sorting = _a.sorting, _b = _a.currentType, currentType = _b === void 0 ? 'all' : _b, filter = _a.filter, themeId = _a.themeId, isFetching = _a.isFetching, trends = _a.trends, copilotSettings = _a.copilotSettings, showModal = _a.showModal, updateFilter = _a.updateFilter, updateFilterQuery = _a.updateFilterQuery, fetchInsightsCopilotUsage = _a.fetchInsightsCopilotUsage, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        fetchInsightsCopilotUsage();
    }, []);
    var handleInsightsCopilotCall = function (trendId) {
        var queryParams = {
            orderBy: 'engagement',
            isCopilotActive: !isCopilotLimitReached,
            copilotMetaData: isCopilotLimitReached ? null : { trend: trendId },
        };
        var trendFilterGroup = filter.findByName('trend');
        if (trendFilterGroup)
            filter.removeFilterGroup(trendFilterGroup);
        filter.doAdd('trend', [trendId]);
        updateFilterQuery({
            filter: filter,
            pathname: "/themes/".concat(themeId, "/mentions"),
            queryParams: TrendsList_assign({}, queryParams),
        });
    };
    var handleClick = function (id) {
        sendAnalyticalEvent({
            eventType: 'Conversational Insights: trend clicked',
            properties: { trend: id },
        });
        if (copilotSettings.showWhenTrendsClicked) {
            handleInsightsCopilotCall(id);
            return;
        }
        updateFilter({
            name: 'trend',
            value: [id],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var handleEditTrend = function (trend) {
        showModal('editTrend', {
            topicId: themeId,
            trendId: trend.id,
            name: trend.name,
            sentiment: trend.sentiment,
            showFrom: 'analytics',
        });
    };
    var getTrends = function () {
        if (!trends)
            return [];
        if (currentType === 'all')
            return trends.filter(function (trend) { return trend.trendType !== TRASH_TREND_TYPE; });
        return trends.filter(function (trend) { return trend.trendType === (0,trendTypesTranslations/* translateTrendTypesGroup */.A9)(currentType); });
    };
    var getTrendsToShow = function () {
        var parseTrendDetails = function (object) {
            if ((0,lodash.isEmpty)(object)) {
                return null;
            }
            var _a = TrendsList_read(Object.entries(object)[0], 2), name = _a[0], percent = _a[1];
            return { name: name, percent: percent };
        };
        if (trends) {
            return getTrends()
                .map(function (trend) {
                return {
                    id: trend.id,
                    dates: trend.dates.values,
                    name: trend.name,
                    sentiment: trend.sentiment,
                    startedAt: trend.startedAt,
                    authorsCount: trend.authorsCount,
                    mentionsCount: trend.count,
                    engagement: trend.engagement,
                    systemTags: trend.trendDetails.systemTags,
                    trendType: trend.trendType,
                    topSource: parseTrendDetails(trend.trendDetails.sources),
                    topGender: parseTrendDetails(trend.trendDetails.genders),
                };
            })
                .sort(function (a, b) {
                if (sorting === 'engagement')
                    return b.engagement - a.engagement;
                if (sorting === 'authorsCount')
                    return b.authorsCount - a.authorsCount;
                if (sorting === 'startedAt')
                    return new Date(b.startedAt).getTime() - new Date(a.startedAt).getTime();
                return b.mentionsCount - a.mentionsCount;
            })
                .filter(function (trend) { return trend.mentionsCount > TRENDS_THRESHOLD; });
        }
        return [];
    };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, TrendsList_assign({ loaded: trends && !isFetching }, { children: function () { return ((0,jsx_runtime.jsx)(Trends/* default */.A, { themeId: themeId, filter: filter, data: getTrendsToShow(), onClick: handleClick, onEdit: handleEditTrend })); } })));
};
/* harmony default export */ const TrendsList = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    showModal: modals_actions/* showModal */.to,
    fetchInsightsCopilotUsage: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('trends', {
    aggregations: {
        trends: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
                sentiment: {},
                sources: {
                    size: 1,
                },
                authorGender: {},
                authorsCount: {},
                engagement: {},
            },
        },
    },
}, false, function (state) { return ({
    trends: (0,stats_selectors/* getTrendStatistics */.Fg)(state),
    isCopilotLimitReached: (0,insightsCopilot_selectors/* isInsightsCopilotLimitReached */.hh)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state),
}); }))(TrendsList_Trends));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/TrendsList/index.ts


;// CONCATENATED MODULE: ./src/pages/conversationalInsights/TrendsPage/TrendsPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TrendsPage = ({"base":"so8XiaznMwgdn0ML3JVh","container":"rxPJMwy12RrifDj9jTRM","chips":"j2CVKhnMTPDEFF77PU5I","chip":"TB1NJgBYU_4d8Od8PtdE","select":"OfpR7x1Q0vWFryZ8Z0sY","content":"q69mKugMVgu7o1Rk9qTy"});
;// CONCATENATED MODULE: ./src/pages/conversationalInsights/TrendsPage/TrendsPage.tsx
var TrendsPage_assign = (undefined && undefined.__assign) || function () {
    TrendsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TrendsPage_assign.apply(this, arguments);
};
var TrendsPage_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};














var TrendsPage_TrendsPage = function (_a) {
    var sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = TrendsPage_read((0,react.useState)('mentionsCount'), 2), sorting = _b[0], setSorting = _b[1];
    var _c = TrendsPage_read((0,react.useState)('all'), 2), selectedTrendType = _c[0], setSelectedTrendType = _c[1];
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({
            eventType: 'Conversational Insights: trends page opened',
        });
    }, []);
    var SORTING_OPTIONS = (0,react.useMemo)(function () { return [
        { label: l('by mentions count'), value: 'mentionsCount' },
        { label: l('by engagement'), value: 'engagement' },
        { label: l('by authors count'), value: 'authorsCount' },
        { label: l('by date'), value: 'startedAt' }
    ]; }, []);
    var TABS_OPTIONS = (0,react.useMemo)(function () { return [
        {
            type: 'all',
            id: 'tab-trends-overview',
            label: (0,trendTypesTranslations/* getTrendTypesTranslationByKey */._n)('all'),
        },
        {
            type: 'viralNews',
            id: 'tab-trends-viral-news',
            label: (0,trendTypesTranslations/* getTrendTypesTranslationByKey */._n)('viralNews'),
        },
        {
            type: 'popularVideos',
            id: 'tab-trends-popular-videos',
            label: (0,trendTypesTranslations/* getTrendTypesTranslationByKey */._n)('popularVideo'),
        },
        {
            type: 'popularPosts',
            id: 'tab-trends-popular-posts',
            label: (0,trendTypesTranslations/* getTrendTypesTranslationByKey */._n)('popularPost'),
        },
        {
            type: 'activeDiscussions',
            id: 'tab-trends-active-discussions',
            label: (0,trendTypesTranslations/* getTrendTypesTranslationByKey */._n)('activeDiscussion'),
        }
    ].filter(Boolean); }, []);
    var handleSelectTab = function (index) {
        var _a = TABS_OPTIONS[index], id = _a.id, type = _a.type;
        sendAnalyticalEvent({
            eventType: 'Conversational Insights: trends tab clicked',
            properties: { tab: id },
        });
        setSelectedTrendType(type);
    };
    var handleSelectSorting = function (option) {
        sendAnalyticalEvent({
            eventType: 'Conversational Insights: trends sorting changed',
            properties: { sorting: option.value },
        });
        setSorting(option.value);
    };
    return ((0,jsx_runtime.jsxs)("div", TrendsPage_assign({ className: TrendsPage.base }, { children: [(0,jsx_runtime.jsx)(InfoBox/* default */.A, { warning: true, displayed: true, title: l('This feature is currently in beta and it may transition to a paid add-on in the future.') }), (0,jsx_runtime.jsxs)(Card/* default */.A, TrendsPage_assign({ noPadding: true, fullWidth: true, className: TrendsPage.container }, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipSelector */.I, TrendsPage_assign({ className: TrendsPage.chips }, { children: TABS_OPTIONS.map(function (_a, index) {
                            var id = _a.id, label = _a.label;
                            return ((0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { value: index, label: label, className: TrendsPage.chip, selected: selectedTrendType === TABS_OPTIONS[index].type, onSelect: handleSelectTab }, id));
                        }) })), (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(Select/* default */.A, { className: TrendsPage.select, options: SORTING_OPTIONS, value: SORTING_OPTIONS.find(function (x) { return x.value === sorting; }), onChange: handleSelectSorting }) })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", TrendsPage_assign({ className: TrendsPage.content }, { children: (0,jsx_runtime.jsx)(TrendsList, { sorting: sorting, currentType: selectedTrendType }) }))] })));
};
/* harmony default export */ const conversationalInsights_TrendsPage_TrendsPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    updateLocation: routing_actions/* update */.yo,
}))(TrendsPage_TrendsPage));

;// CONCATENATED MODULE: ./src/pages/conversationalInsights/TrendsPage/index.ts


// EXTERNAL MODULE: ./src/components/other/Aspects/index.ts + 7 modules
var Aspects = __webpack_require__("KnqW");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/Aspects/Aspects.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Aspects_Aspects = ({"base":"j2MBA0wkk3bGzL9vtIIA"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/Aspects/Aspects.tsx
var Aspects_assign = (undefined && undefined.__assign) || function () {
    Aspects_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Aspects_assign.apply(this, arguments);
};
var Aspects_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var Aspects_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

















var PAGE_OFFSET_FOR_TABLE_TRACKING = -150;
function Aspects_Aspects_Aspects(_a) {
    var isFetching = _a.isFetching, isCopilotLimitReached = _a.isCopilotLimitReached, copilotSettings = _a.copilotSettings, stats = _a.stats, filter = _a.filter, themeId = _a.themeId, updateFilter = _a.updateFilter, updateFilterQuery = _a.updateFilterQuery, updateFilterBatched = _a.updateFilterBatched, sendAnalyticalEvent = _a.sendAnalyticalEvent, sendChartExportedEvent = _a.sendChartExportedEvent, fetchInsightsCopilotUsage = _a.fetchInsightsCopilotUsage;
    var _b = Aspects_read((0,react.useState)([]), 2), usedAspects = _b[0], setUsedAspects = _b[1];
    (0,react.useEffect)(function () {
        fetchInsightsCopilotUsage();
    }, []);
    (0,react.useEffect)(function () {
        if (stats === null || stats === void 0 ? void 0 : stats.aspects)
            setUsedAspects(stats.aspects);
    }, [stats]);
    var sendEventWrapper = function (message, props) {
        sendAnalyticalEvent({ eventType: "Dashboard: ".concat(message), properties: props });
    };
    useScrollPosition(function (_a) {
        var prevPos = _a.prevPos, currPos = _a.currPos;
        if (currPos.y < PAGE_OFFSET_FOR_TABLE_TRACKING && prevPos.y > PAGE_OFFSET_FOR_TABLE_TRACKING) {
            sendEventWrapper('aspect table is visible');
        }
    });
    var _c = (0,Aspects/* useAspectsPreparation */._3)({
        aspects: usedAspects,
        addedSelectedAspects: usedAspects.filter(function (x) { return x.isTag; }).map(function (x) { return x.key; }),
    }), selectedAspectsData = _c.selectedAspectsData, allAspectsData = _c.allAspectsData, selectedAspectsKeys = _c.selectedAspectsKeys, isAllAspectsSelected = _c.isAllAspectsSelected, setSelectedAspectsKeys = _c.setSelectedAspectsKeys, selectAllAspects = _c.selectAllAspects;
    var handleSelectAspects = function (selectedAspect) {
        var index = selectedAspectsKeys.indexOf(selectedAspect);
        if (index === -1) {
            sendEventWrapper('aspect added to graph', { aspect: selectedAspect });
            selectedAspectsKeys.push(selectedAspect);
        }
        else {
            sendEventWrapper('aspect remove from graph', { aspect: selectedAspect });
            selectedAspectsKeys.splice(index, 1);
        }
        setSelectedAspectsKeys(Aspects_spreadArray([], Aspects_read(selectedAspectsKeys), false));
    };
    var handleInsightsCopilotCall = function (aspect, sentiment, aspectKey) {
        var copilotParams = {
            isCopilotActive: true,
            copilotMetaData: isCopilotLimitReached ? null : { aspect: aspectKey, sentiment: sentiment },
        };
        var aspectsFilterGroup = filter.findByName('aspect');
        if (aspectsFilterGroup)
            filter.removeFilterGroup(aspectsFilterGroup);
        filter.doAdd('aspect', [aspect]);
        updateFilterQuery({
            filter: filter,
            pathname: "/themes/".concat(themeId, "/mentions"),
            queryParams: Aspects_assign({}, copilotParams),
        });
    };
    var handleFilterAspect = function (isTag, aspect, sentiment, aspectKey) {
        if (!aspect)
            return;
        sendEventWrapper('aspect sentiment clicked on graph', { sentiment: sentiment, isCustomAspect: isTag });
        if (isTag) {
            updateFilterBatched({
                updates: [
                    { name: 'tag', value: [aspect] },
                    { name: 'sentiment', value: [sentiment] }
                ],
                locationOptions: {
                    pathname: "/themes/".concat(themeId, "/mentions"),
                },
            });
            return;
        }
        if (copilotSettings.showWhenAspectsClicked) {
            handleInsightsCopilotCall(aspect, sentiment, aspectKey);
            return;
        }
        updateFilter({
            name: 'aspect',
            value: [aspect],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/mentions"),
            },
        });
    };
    var onChartExport = function (properties) {
        sendChartExportedEvent({
            properties: properties,
        });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, Aspects_assign({ className: Aspects_Aspects.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, Aspects_assign({ loaded: !isFetching, empty: !usedAspects.length, emptyStateTitle: l('There are no aspects in the selected date range'), emptyStateMessage: l('Select another date range to see analytics'), emptyStateImage: "/static/images/aspects_empty_state.svg", emptyStateSize: "large" }, { children: function () {
                var _a;
                return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Aspects/* AspectsChart */.sY, { data: selectedAspectsData, onSendAnalyticalEvent: sendEventWrapper, onAspectClick: handleFilterAspect, onChartExport: onChartExport }), (0,jsx_runtime.jsx)(Aspects/* AspectsTable */.Wv, { additionalHeaderContent: ((_a = stats === null || stats === void 0 ? void 0 : stats.tags) === null || _a === void 0 ? void 0 : _a.length) ? ((0,jsx_runtime.jsx)(containers_TagsEditor_TagsEditor, { usedTags: stats.tags.map(function (tag) { return (Aspects_assign(Aspects_assign({}, tag), { name: tag.key })); }) || [], position: "bottom left", trigger: (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", label: l('Add custom aspects'), onClick: function () { return sendEventWrapper('add custom aspect button clicked'); } }), selected: usedAspects.filter(function (x) { return x.isTag; }).map(function (x) { return x.id; }), onChange: function (ids) {
                                    var tagIds = Object.keys(ids).filter(function (tagId) { return ids[Number(tagId)]; });
                                    var selectedTags = stats.tags.filter(function (tag) { return tagIds.includes(String(tag.id)); });
                                    sendEventWrapper('custom aspects edited', { usedAmount: selectedTags.length });
                                    setUsedAspects(stats.aspects.concat(selectedTags));
                                } })) : null, data: allAspectsData, isAllSelected: isAllAspectsSelected, selected: selectedAspectsKeys, onSelect: handleSelectAspects, onSelectAllAspects: selectAllAspects, onSendAnalyticalEvent: sendEventWrapper })] }));
            } })) })));
}
/* harmony default export */ const conversationalInsights_Aspects_Aspects = ((0,redux/* compose */.Zz)((0,withTopicStats/* default */.A)('aspectsChart', {
    aggregations: {
        sentimentAspects: {},
        tags: {
            aggregations: {
                sentiment: {},
            },
        },
    },
}), (0,react_redux/* connect */.Ng)(function (state) { return ({
    stats: (0,stats_selectors/* getAspectsStats */.Zr)(state),
    isCopilotLimitReached: (0,insightsCopilot_selectors/* isInsightsCopilotLimitReached */.hh)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state),
}); }, {
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateFilterQuery: filter_model/* filterModel */.W.action.updateFilterQuery,
    updateFilterBatched: filter_model/* filterModel */.W.action.updateFilterBatched,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    sendChartExportedEvent: analytics_model/* analyticsStateModel */.j.action.sendChartExportedEvent,
    fetchInsightsCopilotUsage: insightsCopilot_model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage,
}), react.memo)(Aspects_Aspects_Aspects));

;// CONCATENATED MODULE: ./src/containers/conversationalInsights/Aspects/index.ts


;// CONCATENATED MODULE: ./src/pages/conversationalInsights/AspectsPage/AspectsPage.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AspectsPage = ({"base":"OrGq3S7gwa3hIxYZl6Dl"});
;// CONCATENATED MODULE: ./src/pages/conversationalInsights/AspectsPage/AspectsPage.tsx
var AspectsPage_assign = (undefined && undefined.__assign) || function () {
    AspectsPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AspectsPage_assign.apply(this, arguments);
};










var AspectsPage_AspectsPage = function (_a) {
    var showPage = _a.showPage;
    if (showPage === false) { // handle case with undefined
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, title: l('Aspects are not available in your subscription plan'), image: "/static/images/ic_empty_old_plan.png", message: l('Upgrade subscription plan to use aspects. '
                        + 'Please, contact our support team to upgrade.') })] }));
    }
    return ((0,jsx_runtime.jsx)("div", AspectsPage_assign({ className: classnames_default()(AspectsPage.base) }, { children: (0,jsx_runtime.jsx)(conversationalInsights_Aspects_Aspects, {}) })));
};
/* harmony default export */ const conversationalInsights_AspectsPage_AspectsPage = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    showPage: (0,themes_selectors/* canShowAspects */.d2)(state),
}); }), react.memo)(AspectsPage_AspectsPage));

;// CONCATENATED MODULE: ./src/pages/conversationalInsights/AspectsPage/index.ts


;// CONCATENATED MODULE: ./src/pages/dashboard/EndorseConversationalInsights/EndorseConversationalInsights.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EndorseConversationalInsights = ({"base":"ZjzSIJ0BORYpV81O3j3x"});
;// CONCATENATED MODULE: ./src/pages/dashboard/EndorseConversationalInsights/EndorseConversationalInsights.tsx
var EndorseConversationalInsights_assign = (undefined && undefined.__assign) || function () {
    EndorseConversationalInsights_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return EndorseConversationalInsights_assign.apply(this, arguments);
};










var EndorseConversationalInsights_EndorseConversationalInsights = function (_a) {
    var topicId = _a.topicId, location = _a.location, updateLocation = _a.updateLocation;
    var getConfig = function () {
        var locationPath = location.pathname.split('/');
        var pageName = locationPath[locationPath.length - 1];
        return {
            wordcloud: {
                title: l('Word cloud moved to Conversation Insights'),
                path: "/themes/".concat(topicId, "/conversations/wordcloud"),
            },
            aspects: {
                title: l('Aspects moved to Conversation Insights'),
                path: "/themes/".concat(topicId, "/conversations/aspects"),
            },
        }[pageName];
    };
    var config = getConfig();
    return ((0,jsx_runtime.jsxs)("div", EndorseConversationalInsights_assign({ className: EndorseConversationalInsights.base }, { children: [(0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/endorse_conversational_insights.svg", title: config === null || config === void 0 ? void 0 : config.title, message: l('Try out our new tools for analysis powered by conversational data') }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Open Conversation Insights'), onClick: function () {
                    updateLocation({
                        pathname: "".concat(config.path),
                    });
                } })] })));
};
/* harmony default export */ const dashboard_EndorseConversationalInsights_EndorseConversationalInsights = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
}); }, { updateLocation: routing_actions/* update */.yo }))(EndorseConversationalInsights_EndorseConversationalInsights));

;// CONCATENATED MODULE: ./src/pages/dashboard/EndorseConversationalInsights/index.ts


;// CONCATENATED MODULE: ./src/hoc/withSocialSearchStats.tsx
var withSocialSearchStats_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var withSocialSearchStats_assign = (undefined && undefined.__assign) || function () {
    withSocialSearchStats_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return withSocialSearchStats_assign.apply(this, arguments);
};
















var approximateSocialSearchCount = function (count) { return (count ? count * 100 : 0); };
var formatSocialSearchCount = function (count) { return count && "\u2248".concat(numeral_default()(count).format()); };
var formatSocialSearchQuery = function (query) { return (0,truncate/* default */.A)(query, 25); };
var LOW_DATA_THRESHOLD = 50;
/* harmony default export */ const withSocialSearchStats = (function (key, config, mapStateToProps, statsByOverwrite) {
    if (mapStateToProps === void 0) { mapStateToProps = function (_) { }; }
    if (statsByOverwrite === void 0) { statsByOverwrite = null; }
    return function (Component) {
        var withSocialSearchStats = /** @class */ (function (_super) {
            withSocialSearchStats_extends(withSocialSearchStats, _super);
            function withSocialSearchStats() {
                var _this = _super !== null && _super.apply(this, arguments) || this;
                _this.handleQueriesChange = function (prevQueries, queries) {
                    var diff = prevQueries.length - queries.length;
                    if (diff > 0) {
                        for (var i = prevQueries.length; i >= queries.length; i--)
                            _this.props.clearStats({ key: key, index: i });
                    }
                    queries.forEach(function (query, i) {
                        if (query !== prevQueries[i])
                            _this.fetchStatsByQuery(_this.props, query, i);
                    });
                };
                _this.handleChartClick = function (properties, callback) {
                    _this.props.sendAnalyticalEvent({
                        eventType: 'SocialSearch: chart clicked',
                        properties: withSocialSearchStats_assign(withSocialSearchStats_assign({}, properties), { numberOfQueries: _this.props.queries.length }),
                    });
                    if (callback)
                        callback();
                };
                _this.handleChartExport = function (properties) {
                    _this.props.sendAnalyticalEvent({
                        eventType: 'SocialSearch: chart exported',
                        properties: withSocialSearchStats_assign(withSocialSearchStats_assign({}, properties), { numberOfQueries: _this.props.queries.length }),
                    });
                };
                _this.getIntervalMs = function () {
                    var _a = _this.props, periodFrom = _a.periodFrom, periodTo = _a.periodTo;
                    return dateUtils/* TIME */.E9[(0,detectStatsConfigPeriod/* getInterval */.A8)(periodFrom, periodTo)];
                };
                _this.getRequestConfig = function (props) {
                    var filter = props.filter, periodFrom = props.periodFrom, periodTo = props.periodTo;
                    (0,detectStatsConfigPeriod/* default */.Ay)(config, periodFrom, periodTo);
                    return { filter: filter, config: config, key: key, statsBy: statsByOverwrite || utils_statsBy/* DEFAULT_STATS_BY */._b };
                };
                _this.fetchStats = function (props) {
                    var requestConfig = _this.getRequestConfig(props);
                    return props.fetchStats(withSocialSearchStats_assign(withSocialSearchStats_assign({}, requestConfig), { queries: props.queries }));
                };
                _this.fetchStatsByQuery = function (props, query, index) {
                    var requestConfig = _this.getRequestConfig(props);
                    return props.fetchStatsByQuery(withSocialSearchStats_assign(withSocialSearchStats_assign({}, requestConfig), { query: query, index: index }));
                };
                return _this;
            }
            withSocialSearchStats.prototype.componentDidMount = function () {
                this.fetchStats(this.props);
            };
            withSocialSearchStats.prototype.componentDidUpdate = function (prevProps) {
                var prevFilter = prevProps.filter;
                var filter = this.props.filter;
                var hasFilterChanged = !Filter/* Filter */.dJ.createFromImmutableState(filter).equals(Filter/* Filter */.dJ.createFromImmutableState(prevFilter));
                if (hasFilterChanged) {
                    this.fetchStats(this.props);
                    return;
                }
                var prevQueries = prevProps.queries;
                var queries = this.props.queries;
                if (!(0,lodash.isEqual)(prevQueries, queries)) {
                    this.handleQueriesChange(prevQueries, queries);
                }
            };
            withSocialSearchStats.prototype.render = function () {
                return ((0,jsx_runtime.jsx)(Component, withSocialSearchStats_assign({}, this.props, { interval: this.getIntervalMs(), onChartClick: this.handleChartClick, onChartExport: this.handleChartExport, formatQuery: formatSocialSearchQuery })));
            };
            return withSocialSearchStats;
        }(react.PureComponent));
        return (0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
            var _a, _b;
            var stats = (0,socialSearch_selectors/* getStatsByKey */._$)(state, key) || {};
            var filter = (0,filter_selectors/* getThemeFilter */.Ic)(state);
            var noData = (_a = stats.data) === null || _a === void 0 ? void 0 : _a.every(function (v) { return v.totalCount === 0; });
            var lowData = (_b = stats.data) === null || _b === void 0 ? void 0 : _b.every(function (v) { return v.totalCount <= LOW_DATA_THRESHOLD; });
            var props = {
                isFetching: stats.isFetching,
                data: stats.data,
                filter: filter,
                noData: noData,
                lowData: lowData,
                error: stats.error,
                queries: (0,socialSearch_selectors/* getSearchQueries */.Lf)(state),
                periodFrom: filter.from,
                periodTo: filter.to,
            };
            if (!stats.data || stats.isFetching) {
                return props;
            }
            return withSocialSearchStats_assign(withSocialSearchStats_assign({}, props), mapStateToProps(state, props));
        }, {
            fetchStats: socialSearch_model/* socialSearchModel */.J.action.fetchSocialSearchStats,
            fetchStatsByQuery: socialSearch_model/* socialSearchModel */.J.action.fetchSocialSearchStatsByQuery,
            clearStats: socialSearch_model/* socialSearchModel */.J.action.clearStatsByIndex,
            sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
        }))(withSocialSearchStats);
    };
});

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/ChartLoader/components/NoDataCard.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NoDataCard = ({"container":"LTiXV_zOBgB8UApeXFNB"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/ChartLoader/components/NoDataCard.tsx




var NoDataCard_NoDataCard = function (_a) {
    var withExplanation = _a.withExplanation, title = _a.title;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [title && ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { withoutExport: true, title: title })), (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: NoDataCard.container, large: true, image: "/static/images/social_search_no_data.svg", title: l('No data found'), message: withExplanation && l('Either the search object is not mentioned in social media, or check it’s correct spelling') })] }));
};
/* harmony default export */ const components_NoDataCard = (NoDataCard_NoDataCard);

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/ChartLoader/components/LowDataCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const LowDataCard = ({"overlayedBlock":"Km5Hfv0vwVmkR0IZouCw","flexCenter":"jpycBxXSI9ExQLcot095","smartFeature":"rv9psaVwcKQEZgBmyudu","tag":"mCFTuoW7nB1guNtbGYBH","visibleScrollBar":"LSc7WFE5XHLCdmTr32nT","hiddenScrollBar":"OA1WuMPJykUHA3hR4qJR","container":"XLAjcr355TnYYbUK6Lfk","list":"bQBXm7vrSXiBeEJnJfHh","defaultText":"qU7555pUtW9SY9bzQGjc"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/ChartLoader/components/LowDataCard.tsx
var LowDataCard_assign = (undefined && undefined.__assign) || function () {
    LowDataCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LowDataCard_assign.apply(this, arguments);
};









var LowDataCard_LowDataCard = function (_a) {
    var canCreateTopic = _a.canCreateTopic, withExplanation = _a.withExplanation, title = _a.title, search = _a.search;
    var renderMentionsCardHint = function () { return ((0,jsx_runtime.jsxs)("span", { children: [l('Check the'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(dist/* Link */.N_, LowDataCard_assign({ to: "/search/mentions".concat(search) }, { children: l('Mentions tab', 'socialSearch') })), l(', there is data according to your query'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", LowDataCard_assign({ className: LowDataCard.defaultText }, { children: "\uD83D\uDE09" }))] })); };
    var renderExplanation = function () {
        if (canCreateTopic) {
            return ((0,jsx_runtime.jsxs)("div", { children: [" ", (0,jsx_runtime.jsxs)("ul", LowDataCard_assign({ className: LowDataCard.list }, { children: [(0,jsx_runtime.jsx)("li", { children: renderMentionsCardHint() }), (0,jsx_runtime.jsxs)("li", { children: [(0,jsx_runtime.jsx)(dist/* Link */.N_, LowDataCard_assign({ to: "/themes/new" }, { children: l('Create topic', 'socialSearch') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('for your search query to get a more complete result.')] })] }))] }));
        }
        return renderMentionsCardHint();
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [title && (0,jsx_runtime.jsx)(ChartHeader/* default */.A, { withoutExport: true, title: title }), (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: LowDataCard.container, large: true, image: "/static/images/social_search_low_data.svg", title: l('Not enough data to display graphs'), message: withExplanation && renderExplanation() })] }));
};
/* harmony default export */ const components_LowDataCard = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    search: (0,routing_selectors/* getSearch */.TK)(state),
    canCreateTopic: (0,currentUser_selectors/* isTopicCreationEnabled */.A0)(state),
}); })(LowDataCard_LowDataCard));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/ChartLoader/ChartLoader.tsx
var ChartLoader_assign = (undefined && undefined.__assign) || function () {
    ChartLoader_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChartLoader_assign.apply(this, arguments);
};




var ChartLoader = function (_a) {
    var loaded = _a.loaded, noData = _a.noData, lowData = _a.lowData, withEmptyStateExplanation = _a.withEmptyStateExplanation, title = _a.title, children = _a.children;
    var renderEmptyState = function () {
        if (noData) {
            return (0,jsx_runtime.jsx)(components_NoDataCard, { withExplanation: withEmptyStateExplanation, title: title });
        }
        if (lowData) {
            return (0,jsx_runtime.jsx)(components_LowDataCard, { withExplanation: withEmptyStateExplanation, title: title });
        }
        return null;
    };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, ChartLoader_assign({ loaded: loaded, empty: noData || lowData, emptyState: renderEmptyState() }, { children: children })));
};
/* harmony default export */ const ChartLoader_ChartLoader = (ChartLoader);

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/utils.tsx


var getSocialSearchTooltipConfig = function () {
    return {
        tooltip: {
            useHTML: true,
            crosshairs: true,
            formatter: function () {
                return "<span>".concat(this.series.name, "</span>: <b>").concat(formatSocialSearchCount(this.point.y), "</b><br/>");
            },
        },
    };
};
function formatSentimentDataLabel() {
    return "".concat(numeral_default()(this.point.percentage).format('0.00'), "% (").concat(formatSocialSearchCount(this.point.y), ")");
}

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewLine/OverviewLine.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const OverviewLine = ({"base":"oDRgLO0xoMaMKI47REws"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewLine/OverviewLine.tsx
var OverviewLine_assign = (undefined && undefined.__assign) || function () {
    OverviewLine_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OverviewLine_assign.apply(this, arguments);
};












var OverviewLine_OverviewLine = function (_a) {
    var isFetching = _a.isFetching, noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, interval = _a.interval, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Mentions over time');
    var getSeries = function () {
        if (!stats)
            return [];
        return stats.map(function (dates, i) { return ({
            dates: dates,
            pointInterval: interval,
            name: formatQuery(queries[i]),
            pointStart: new Date(dates[0].dateAsUtc).getTime(),
            data: dates.map(function (y) { return approximateSocialSearchCount(y.count); }),
            color: utils_colors/* socialSearchColors */.Mu[i],
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, OverviewLine_assign({ className: OverviewLine.base }, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, OverviewLine_assign({ withEmptyStateExplanation: true, loaded: !isFetching, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Line/* default */.A, { title: title, series: getSeries(), configOptions: OverviewLine_assign({ chart: {
                        height: 340,
                        type: 'spline',
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'overviewLine' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(OverviewLine_assign(OverviewLine_assign({}, properties), { chartType: 'overviewLine' }));
                } })); } })) })));
};
/* harmony default export */ const cards_OverviewLine_OverviewLine = ((0,redux/* compose */.Zz)(withSocialSearchStats('overviewLine', {
    aggregations: {
        date: {
            interval: Aggregation/* DateInterval */.Sq.Day,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getOverviewLineStats */.Fk)(state),
}); }), react.memo)(OverviewLine_OverviewLine));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewLine/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewInfoCard/OverviewInfoCard.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const cards_OverviewInfoCard_OverviewInfoCard = ({"infoCard":"IGPXX2oeB3LYAZyqUh4w","metricsTitle":"oFtnya032Y5bkGKQ4dQP","metricsContainer":"RqKTaYIG7Xi312NbM_0k"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewInfoCard/OverviewInfoCard.tsx
var OverviewInfoCard_OverviewInfoCard_assign = (undefined && undefined.__assign) || function () {
    OverviewInfoCard_OverviewInfoCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OverviewInfoCard_OverviewInfoCard_assign.apply(this, arguments);
};












var OverviewInfoCard_OverviewInfoCard_OverviewInfoCard = function (_a) {
    var stats = _a.stats;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, OverviewInfoCard_OverviewInfoCard_assign({ className: cards_OverviewInfoCard_OverviewInfoCard.infoCard }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, OverviewInfoCard_OverviewInfoCard_assign({ className: cards_OverviewInfoCard_OverviewInfoCard.metricsTitle }, { children: l('Metrics') })), (0,jsx_runtime.jsx)(Loader/* default */.A, OverviewInfoCard_OverviewInfoCard_assign({ loaded: !!stats }, { children: function () {
                    var _a;
                    return ((0,jsx_runtime.jsxs)("div", OverviewInfoCard_OverviewInfoCard_assign({ className: cards_OverviewInfoCard_OverviewInfoCard.metricsContainer }, { children: [(0,jsx_runtime.jsx)(other_Metric_Metric, { shouldRenderDynamics: false, shouldFormatCount: false, title: l('Total mentions'), count: formatSocialSearchCount(approximateSocialSearchCount(stats.totalCount || 0)) }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(other_Metric_Metric, { shouldRenderDynamics: false, shouldFormatCount: false, title: l('Total authors'), count: formatSocialSearchCount(approximateSocialSearchCount(stats.aggregations.authorsCount || 0)) }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(other_Metric_Metric, { shouldRenderDynamics: false, title: l('NSR'), tooltipText: l('Net Sentiment Rate is a measurement of overall sentiment in a topic, '
                                    + 'on a -100 to 100 scale, with zero being neutral.'), tooltipPosition: 'top right', count: ((_a = stats.aggregations.sentiment) === null || _a === void 0 ? void 0 : _a.nsr) || 0 })] })));
                } }))] })));
};
/* harmony default export */ const socialSearch_cards_OverviewInfoCard_OverviewInfoCard = ((0,redux/* compose */.Zz)(withSocialSearchStats('overviewCard', {
    aggregations: {
        sentiment: {},
        engagement: {},
        authorsCount: {},
        date: {
            interval: Aggregation/* DateInterval */.Sq.Day,
            aggregations: {
                sentiment: {},
                engagement: {},
                authorsCount: {},
            },
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getOverviewCardStats */.Lx)(state),
}); }), react.memo)(OverviewInfoCard_OverviewInfoCard_OverviewInfoCard));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewInfoCard/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewDistribution/OverviewDistribution.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const OverviewDistribution = ({"base":"VZLRc0Kf76n0imMiwl_o"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewDistribution/OverviewDistribution.tsx
var OverviewDistribution_assign = (undefined && undefined.__assign) || function () {
    OverviewDistribution_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OverviewDistribution_assign.apply(this, arguments);
};












var OverviewDistribution_OverviewDistribution = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Mentions distribution');
    var getSeries = function () {
        return stats.map(function (count, i) { return ({
            name: formatQuery(queries[i]),
            data: [approximateSocialSearchCount(count)],
            color: utils_colors/* socialSearchColors */.Mu[i],
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, OverviewDistribution_assign({ className: OverviewDistribution.base }, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, OverviewDistribution_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Bar, { title: title, series: getSeries(), configOptions: OverviewDistribution_assign({ chart: {
                        type: 'column',
                        height: 340,
                    }, xAxis: {
                        categories: [l('Mentions distribution')],
                        visible: false,
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'overviewDistributionComparison' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(OverviewDistribution_assign(OverviewDistribution_assign({}, properties), { chartType: 'overviewDistributionComparison' }));
                } })); } })) })));
};
/* harmony default export */ const cards_OverviewDistribution_OverviewDistribution = ((0,redux/* compose */.Zz)(withSocialSearchStats('overviewDistribution', {
    aggregations: {
        date: {
            interval: Aggregation/* DateInterval */.Sq.Day,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getOverviewDistributionStats */.F2)(state),
}); }), react.memo)(OverviewDistribution_OverviewDistribution));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OverviewDistribution/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentPie/SentimentPie.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentPie = ({"base":"Ur3HuCrHAkecEQyUSoeA"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentPie/SentimentPie.tsx
var SentimentPie_assign = (undefined && undefined.__assign) || function () {
    SentimentPie_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentPie_assign.apply(this, arguments);
};

/* eslint-disable react/no-this-in-sfc */











var SentimentPie_SentimentPie = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, stats = _a.stats, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Sentiment');
    var getSeries = function () {
        if (!stats)
            return [];
        return [{
                name: l('Sentiment'),
                data: stats.map(function (sentiment) { return ({
                    name: (0,commonTranslations/* getTranslations */.$)()[sentiment.key],
                    y: approximateSocialSearchCount(sentiment.count),
                    color: (0,utils_colors/* getSentimentColors */.ID)()[sentiment.key],
                }); }),
            }];
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SentimentPie_assign({ className: SentimentPie.base }, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, SentimentPie_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Pie/* default */.A, { title: title, series: getSeries(), configOptions: {
                    tooltip: {
                        formatter: formatSentimentDataLabel,
                    },
                    plotOptions: {
                        pie: {
                            allowPointSelect: true,
                            cursor: 'pointer',
                            dataLabels: {
                                enabled: true,
                                formatter: formatSentimentDataLabel,
                            },
                            showInLegend: true,
                        },
                        series: {
                            cursor: 'pointer',
                        },
                    },
                }, onClick: function () { return onChartClick({ chartType: 'sentimentPie' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(SentimentPie_assign(SentimentPie_assign({}, properties), { chartType: 'sentimentPie' }));
                } })); } })) })));
};
/* harmony default export */ const cards_SentimentPie_SentimentPie = ((0,redux/* compose */.Zz)(withSocialSearchStats('sentimentPie', {
    aggregations: {
        sentiment: {},
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getSentimentPieStats */.nh)(state),
}); }), react.memo)(SentimentPie_SentimentPie));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentPie/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentLine/SentimentLine.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentLine = ({"base":"OIcRER4YRQRzNj5SsJ2N"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentLine/SentimentLine.tsx
var SentimentLine_assign = (undefined && undefined.__assign) || function () {
    SentimentLine_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentLine_assign.apply(this, arguments);
};













var SentimentLine_SentimentLine = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, stats = _a.stats, interval = _a.interval, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Sentiment over time');
    var getSeries = function () {
        if (!stats)
            return [];
        return Object.keys(stats).map(function (key) { return ({
            dates: stats[key],
            pointInterval: interval,
            name: (0,commonTranslations/* getTranslations */.$)()[key],
            pointStart: new Date(stats[key][0].dateAsUtc).getTime(),
            data: stats[key].map(function (y) { return approximateSocialSearchCount(y.count); }),
            color: (0,utils_colors/* getSentimentColor */.HS)(key),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, SentimentLine_assign({ className: SentimentLine.base }, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, SentimentLine_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Line/* default */.A, { title: title, series: getSeries(), configOptions: SentimentLine_assign({}, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'sentimentLine' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(SentimentLine_assign(SentimentLine_assign({}, properties), { chartType: 'sentimentLine' }));
                } })); } })) })));
};
/* harmony default export */ const cards_SentimentLine_SentimentLine = ((0,redux/* compose */.Zz)(withSocialSearchStats('sentimentLine', {
    aggregations: {
        sentiment: {},
        date: {
            interval: Aggregation/* DateInterval */.Sq.Day,
            aggregations: {
                sentiment: {},
            },
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getSentimentLineStats */.xe)(state),
}); }), react.memo)(SentimentLine_SentimentLine));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentLine/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentDistributionBar/SentimentDistributionBar.tsx
var SentimentDistributionBar_assign = (undefined && undefined.__assign) || function () {
    SentimentDistributionBar_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SentimentDistributionBar_assign.apply(this, arguments);
};










var SentimentDistributionBar_SentimentDistributionBar = function (_a) {
    var isFetching = _a.isFetching, noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Sentiment distribution');
    var getSeries = function () {
        if (!stats)
            return null;
        return stats.sentimentNames.map(function (sentimentName) { return ({
            name: (0,commonTranslations/* getTranslations */.$)()[sentimentName],
            color: (0,utils_colors/* getSentimentColor */.HS)(sentimentName),
            data: stats.data.map(function (stat) { var _a; return approximateSocialSearchCount((_a = stat.find(function (x) { return x.key === sentimentName; })) === null || _a === void 0 ? void 0 : _a.count) || 0; }),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, SentimentDistributionBar_assign({ loaded: !isFetching, noData: noData, lowData: lowData, title: title }, { children: (0,jsx_runtime.jsx)(Bar, { title: title, series: getSeries(), configOptions: {
                    xAxis: {
                        categories: queries.map(formatQuery),
                    },
                    plotOptions: {
                        column: {
                            stacking: 'normal',
                        },
                    },
                    tooltip: {
                        formatter: formatSentimentDataLabel,
                    },
                }, onClick: function () { return onChartClick({ chartType: 'sentimentDistributionComparison' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(SentimentDistributionBar_assign(SentimentDistributionBar_assign({}, properties), { chartType: 'sentimentDistributionComparison' }));
                } }) })) }));
};
/* harmony default export */ const cards_SentimentDistributionBar_SentimentDistributionBar = ((0,redux/* compose */.Zz)(withSocialSearchStats('sentimentDistributionBar', {
    aggregations: {
        sentiment: {},
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getSentimentDistributionBarStats */.SZ)(state),
}); }))(SentimentDistributionBar_SentimentDistributionBar));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SentimentDistributionBar/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SourcesDistribution/SourcesDistribution.tsx
var SourcesDistribution_assign = (undefined && undefined.__assign) || function () {
    SourcesDistribution_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SourcesDistribution_assign.apply(this, arguments);
};











var SourcesDistribution = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, queries = _a.queries, stats = _a.stats, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Sources');
    var getSeries = function () {
        if (!stats)
            return [];
        return stats.sourceNames.map(function (name) { return ({
            name: name,
            color: utils_colors/* SOURCE_COLOR */.MB[mapSourceNameToColorKey(name)],
            data: stats.data.map(function (stat) { var _a; return approximateSocialSearchCount((_a = stat.aggregations.sources.values.find(function (x) { return x.key === name; })) === null || _a === void 0 ? void 0 : _a.count) || null; }),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, SourcesDistribution_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Bar, { title: title, series: getSeries(), configOptions: SourcesDistribution_assign({ colors: utils_colors/* alternativeChartColors */.yk, xAxis: {
                        categories: queries.map(formatQuery),
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'sourcesDistribution' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(SourcesDistribution_assign(SourcesDistribution_assign({}, properties), { chartType: 'sourcesDistribution' }));
                } })); } })) }));
};
/* harmony default export */ const SourcesDistribution_SourcesDistribution = ((0,redux/* compose */.Zz)(withSocialSearchStats('sourcesDistribution', {
    aggregations: {
        sources: {
            size: 7,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getSourcesDistributionStats */.UD)(state),
}); }), react.memo)(SourcesDistribution));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/SourcesDistribution/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Overview/Overview.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Overview = ({"container":"SINPftgSdsmHibM_q_Yy","sourcesDistribution":"zQ8biRO45o1oYUlHg_dm","sentimentDistribution":"ahtomOYTRZzOCVKEW17k","sourcesDistributionComparison":"kGTi45xxpRPHNgsJnO0f"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Overview/Overview.tsx
var Overview_assign = (undefined && undefined.__assign) || function () {
    Overview_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Overview_assign.apply(this, arguments);
};














var Overview_Overview = function (_a) {
    var isComparison = _a.isComparison, sendAnalyticsEvent = _a.sendAnalyticsEvent;
    (0,react.useEffect)(function () {
        sendAnalyticsEvent({ eventType: 'SocialSearch: overview page opened' });
    }, []);
    var renderCharts = function () {
        if (isComparison) {
            return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", Overview_assign({ className: Overview.container }, { children: [(0,jsx_runtime.jsx)(cards_OverviewDistribution_OverviewDistribution, {}), (0,jsx_runtime.jsx)(cards_OverviewLine_OverviewLine, {})] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Overview_assign({ className: Overview.container }, { children: [(0,jsx_runtime.jsx)("div", Overview_assign({ className: Overview.sentimentDistribution }, { children: (0,jsx_runtime.jsx)(cards_SentimentDistributionBar_SentimentDistributionBar, {}) })), (0,jsx_runtime.jsx)("div", Overview_assign({ className: Overview.sourcesDistributionComparison }, { children: (0,jsx_runtime.jsx)(SourcesDistribution_SourcesDistribution, {}) }))] }))] }));
        }
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", Overview_assign({ className: Overview.container }, { children: [(0,jsx_runtime.jsx)(socialSearch_cards_OverviewInfoCard_OverviewInfoCard, {}), (0,jsx_runtime.jsx)(cards_OverviewLine_OverviewLine, {})] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Overview_assign({ className: Overview.container }, { children: [(0,jsx_runtime.jsx)(cards_SentimentPie_SentimentPie, {}), (0,jsx_runtime.jsx)(cards_SentimentLine_SentimentLine, {}), (0,jsx_runtime.jsx)("div", Overview_assign({ className: Overview.sourcesDistribution }, { children: (0,jsx_runtime.jsx)(SourcesDistribution_SourcesDistribution, {}) }))] }))] }));
    };
    return ((0,jsx_runtime.jsx)("div", Overview_assign({ className: Overview.base }, { children: renderCharts() })));
};
/* harmony default export */ const pages_Overview_Overview = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isComparison: (0,socialSearch_selectors/* isComparisonMode */.x1)(state),
}); }, { sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent })(Overview_Overview));

;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Overview/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GeoMap/GeoMap.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const cards_GeoMap_GeoMap = ({"base":"o92F0KXrZi6tQIRU55hD","tooltip":"sTiFPLUtkhbAOKZqO_mM","tooltipItem":"zAbINY77lnksFlQauSeL","tooltipItemColor":"dnVoLbc4sFehOSnVkrxz"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GeoMap/GeoMap.tsx
var cards_GeoMap_GeoMap_assign = (undefined && undefined.__assign) || function () {
    cards_GeoMap_GeoMap_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return cards_GeoMap_GeoMap_assign.apply(this, arguments);
};
var GeoMap_GeoMap_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var GeoMap_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */














var GeoMapTooltip = function (_a) {
    var country = _a.country, queries = _a.queries, values = _a.values;
    return ((0,jsx_runtime.jsxs)("div", cards_GeoMap_GeoMap_assign({ className: cards_GeoMap_GeoMap.tooltip }, { children: [(0,jsx_runtime.jsxs)("b", { children: [l('Total mentions in'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), country] }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), queries.map(function (query, i) { return ((0,jsx_runtime.jsxs)("div", cards_GeoMap_GeoMap_assign({ className: cards_GeoMap_GeoMap.tooltipItem }, { children: [(0,jsx_runtime.jsx)("div", { className: cards_GeoMap_GeoMap.tooltipItemColor, style: { backgroundColor: utils_colors/* socialSearchColors */.Mu[i] } }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", { children: [query, ": ", formatSocialSearchCount(values[i])] })] }), query)); })] })));
};
var GeoMap_GeoMap_GeoMap = function (_a) {
    var isComparison = _a.isComparison, isFetching = _a.isFetching, noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Geography');
    return ((0,jsx_runtime.jsx)(Card/* default */.A, cards_GeoMap_GeoMap_assign({ className: cards_GeoMap_GeoMap.base }, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, cards_GeoMap_GeoMap_assign({ withEmptyStateExplanation: true, loaded: !!(stats === null || stats === void 0 ? void 0 : stats.data), noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(GeoMap_GeoMap, { title: title, isLoading: isFetching, geo: [], configOptions: {
                    chart: {
                        height: 590,
                    },
                    colorAxis: isComparison ? null : {
                        minColor: '#e6ebf5',
                        maxColor: '#003399',
                    },
                    legend: {
                        enabled: false,
                    },
                    tooltip: {
                        useHTML: true,
                        formatter: function () {
                            if (!this.point || !this.point.allValues)
                                return '';
                            return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsx)(GeoMapTooltip, { country: this.point.name, queries: queries.map(formatQuery), values: this.point.allValues }));
                        },
                    },
                    series: [{
                            name: 'SocialSearch Geo',
                            data: stats.series.map(function (stat) {
                                var maxValue = Math.max.apply(Math, GeoMap_spreadArray([], GeoMap_GeoMap_read(stat.value), false));
                                var color = isComparison ? utils_colors/* socialSearchColors */.Mu[stat.value.indexOf(maxValue)] : null;
                                return {
                                    'hc-key': stat.key,
                                    queries: queries,
                                    allValues: stat.value.map(approximateSocialSearchCount),
                                    value: approximateSocialSearchCount(maxValue),
                                    name: (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(stat.key),
                                    color: color,
                                    states: {
                                        hover: {
                                            color: color && (0,utils_colors/* opacity */.ke)(color),
                                        },
                                    },
                                };
                            }),
                            mapData: (0,getCountryNameTranslation/* getTranslatedChartWorldMap */.pc)(mapdata/* world */.z),
                            borderWidth: 0.5,
                            events: {
                                click: function (_e) { return onChartClick({ chartType: 'geoMap' }); },
                            },
                        }],
                }, onRegionClick: function () { }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(cards_GeoMap_GeoMap_assign(cards_GeoMap_GeoMap_assign({}, properties), { chartType: 'geoMap' }));
                }, onSendAnalyticalEvent: function () { } })); } })) })));
};
/* harmony default export */ const socialSearch_cards_GeoMap_GeoMap = ((0,redux/* compose */.Zz)(withSocialSearchStats('geoMap', {
    aggregations: {
        countries: {
            size: 300,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getGeoMapStats */.LJ)(state),
    isComparison: (0,socialSearch_selectors/* isComparisonMode */.x1)(state),
}); }))(GeoMap_GeoMap_GeoMap));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GeoMap/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GeoDistribution/GeoDistribution.tsx
var GeoDistribution_assign = (undefined && undefined.__assign) || function () {
    GeoDistribution_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GeoDistribution_assign.apply(this, arguments);
};










var GeoDistribution = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Top countries');
    var getSeries = function () {
        if (!stats)
            return [];
        return stats.countries.map(function (country) { return ({
            name: (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(country),
            data: stats.data.map(function (stat) { var _a; return approximateSocialSearchCount((_a = stat.aggregations.countries.values.find(function (x) { return x.key === country; })) === null || _a === void 0 ? void 0 : _a.count) || null; }),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, GeoDistribution_assign({ withEmptyStateExplanation: true, loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Bar, { title: l('Top countries'), series: getSeries(), configOptions: GeoDistribution_assign({ chart: {
                        type: 'column',
                        height: 590,
                    }, colors: utils_colors/* alternativeChartColors */.yk, xAxis: {
                        categories: formatQuery(queries),
                    }, yAxis: {
                        endOnTick: false,
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'geoDistribution' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(GeoDistribution_assign(GeoDistribution_assign({}, properties), { chartType: 'geoDistribution' }));
                } })); } })) }));
};
/* harmony default export */ const GeoDistribution_GeoDistribution = ((0,redux/* compose */.Zz)(withSocialSearchStats('geoDistribution', {
    aggregations: {
        countries: {
            size: 10,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getGeoDistributionStats */.Tj)(state),
}); }))(GeoDistribution));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GeoDistribution/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Geo/Geo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Geo = ({"base":"GDz9z_3Db3h0tpZQ3zj7"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Geo/Geo.tsx
var Geo_assign = (undefined && undefined.__assign) || function () {
    Geo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Geo_assign.apply(this, arguments);
};








var Geo_Geo = function (_a) {
    var sendAnalyticsEvent = _a.sendAnalyticsEvent;
    (0,react.useEffect)(function () {
        sendAnalyticsEvent({ eventType: 'SocialSearch: geo page opened' });
    }, []);
    return ((0,jsx_runtime.jsxs)("div", Geo_assign({ className: Geo.base }, { children: [(0,jsx_runtime.jsx)(socialSearch_cards_GeoMap_GeoMap, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(GeoDistribution_GeoDistribution, {})] })));
};
/* harmony default export */ const pages_Geo_Geo = ((0,react_redux/* connect */.Ng)(null, { sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent })(Geo_Geo));

;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Geo/index.tsx


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/QuerySelectionToolbar/QuerySelectionToolbar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const QuerySelectionToolbar = ({"base":"udeizC327XD2BhxxrE7o","query":"lFaIwWuqEPpY3BnV3fXd"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/QuerySelectionToolbar/QuerySelectionToolbar.tsx
var QuerySelectionToolbar_assign = (undefined && undefined.__assign) || function () {
    QuerySelectionToolbar_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return QuerySelectionToolbar_assign.apply(this, arguments);
};














var QuerySelectionToolbar_QuerySelectionToolbar = function (_a) {
    var selectedQueryIndex = _a.selectedQueryIndex, queries = _a.queries, location = _a.location, children = _a.children, updateLocation = _a.updateLocation, sendAnalyticsEvent = _a.sendAnalyticsEvent;
    (0,react.useEffect)(function () {
        if (!selectedQueryIndex)
            setQuery({ selectedQuery: 0 });
    }, []);
    var setQuery = function (newQueryParams) {
        updateLocation({ query: QuerySelectionToolbar_assign(QuerySelectionToolbar_assign({}, location.query), newQueryParams) });
    };
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, QuerySelectionToolbar_assign({ fullWidth: true, className: QuerySelectionToolbar.base }, { children: [queries.length > 1
                ? ((0,jsx_runtime.jsxs)(InlineSelect/* default */.A, QuerySelectionToolbar_assign({ position: "bottom right", options: queries.map(function (query, index) { return ({ label: formatSocialSearchQuery(query), value: index }); }), value: selectedQueryIndex, onChange: function (selected) {
                        sendAnalyticsEvent({ eventType: 'SocialSearch: page switched to another query' });
                        setQuery({ selectedQuery: selected });
                    } }, { children: [(0,jsx_runtime.jsx)("span", { children: l('Show data for') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", QuerySelectionToolbar_assign({ className: QuerySelectionToolbar.query }, { children: formatSocialSearchQuery(queries[selectedQueryIndex]) })), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "chevron-down" })] })))
                : (0,jsx_runtime.jsx)("div", {}), children ? children({ setQuery: setQuery, sendAnalyticsEvent: sendAnalyticsEvent }) : null] })));
};
/* harmony default export */ const cards_QuerySelectionToolbar_QuerySelectionToolbar = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    queries: (0,socialSearch_selectors/* getSearchQueries */.Lf)(state),
    selectedQueryIndex: (0,socialSearch_selectors/* getSelectedQueryIndex */.yZ)(state),
}); }, { updateLocation: routing_actions/* update */.yo, sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }), react.memo)(QuerySelectionToolbar_QuerySelectionToolbar));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/QuerySelectionToolbar/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/WordCloud/WordCloud.tsx
var WordCloud_WordCloud_assign = (undefined && undefined.__assign) || function () {
    WordCloud_WordCloud_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WordCloud_WordCloud_assign.apply(this, arguments);
};
var WordCloud_WordCloud_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var WordCloud_WordCloud_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */

























var WordCloud_WordCloudContainer = function (_a) {
    var _b = _a.isFetching, isFetching = _b === void 0 ? false : _b, words = _a.words, queries = _a.queries, filter = _a.filter, queriesHash = _a.queriesHash, location = _a.location, sendAnalyticsEvent = _a.sendAnalyticsEvent, updateLocation = _a.updateLocation, fetchWords = _a.fetchWords;
    var _c = WordCloud_WordCloud_read((0,react.useState)(false), 2), showSentiment = _c[0], setShowSentiment = _c[1];
    var _d = (0,WordsChartsSwitcher/* useSortingByUniqueWords */.b)(true), sortByUniqueWords = _d.sortByUniqueWords, setSortByUniqueWords = _d.setSortByUniqueWords;
    var _e = (0,useChartVolume/* default */.Ay)(useChartVolume/* WORD_CHARTS_VOLUME */.uH), volume = _e.volume, usedVolume = _e.usedVolume, setVolume = _e.setVolume, setUsedVolume = _e.setUsedVolume;
    var _f = location.query, wordCloudColorPalette = _f.wordCloudColorPalette, _g = _f.wordCloudOmittedDataKeys, wordCloudOmittedDataKeys = _g === void 0 ? [] : _g;
    (0,react.useEffect)(function () {
        if (!wordCloudColorPalette)
            handleChangeColorPalette('default');
    }, []);
    (0,react.useEffect)(function () {
        fetchWords({ queries: queries, filter: filter });
    }, [queriesHash]);
    var handleLegendClick = function (dataKey) {
        var newOmittedDataKeys = wordCloudOmittedDataKeys.includes(dataKey)
            ? wordCloudOmittedDataKeys.filter(function (x) { return x !== dataKey; })
            : WordCloud_WordCloud_spreadArray(WordCloud_WordCloud_spreadArray([], WordCloud_WordCloud_read(wordCloudOmittedDataKeys), false), [dataKey], false);
        updateLocation({ query: { wordCloudOmittedDataKeys: newOmittedDataKeys } });
    };
    var handleChangeColorPalette = function (colorPalette) {
        updateLocation({ query: { wordCloudColorPalette: colorPalette } });
    };
    var toggleWordsSentiment = function () {
        setShowSentiment(!showSentiment);
    };
    var renderAdditionalHeaderContent = function () {
        return ((0,jsx_runtime.jsx)("div", WordCloud_WordCloud_assign({ className: WordCloud_WordCloud.controls }, { children: (0,jsx_runtime.jsx)(react_media/* default */.A, WordCloud_WordCloud_assign({ query: "(max-width: 1520px)" }, { children: function (smallScreen) {
                    var _a, _b;
                    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [smallScreen ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, WordCloud_WordCloud_assign({ inverted: false, text: l('Sentiment') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: showSentiment, className: classnames_default()((_a = {}, _a[WordCloud_WordCloud.chartControlButton] = !showSentiment, _a)), label: (0,jsx_runtime.jsx)("span", { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive", size: "small" }) }), onClick: toggleWordsSentiment }) }))) : ((0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: showSentiment, className: classnames_default()((_b = {}, _b[WordCloud_WordCloud.chartControlButton] = !showSentiment, _b)), label: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive", size: "small" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Sentiment')] }), onClick: toggleWordsSentiment })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(WordsChartsSwitcher/* default */.A, { value: sortByUniqueWords, onChange: function (shouldSort) {
                                    if (shouldSort === sortByUniqueWords)
                                        return;
                                    setSortByUniqueWords(shouldSort);
                                } }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(VolumePopover/* default */.A, { volume: volume, onChange: setVolume, onFinalChange: setUsedVolume })] }));
                } })) })));
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, WordCloud_WordCloud_assign({ withEmptyStateExplanation: true, loaded: !isFetching && !!words, noData: !isFetching && !words, lowData: false, title: l('Word cloud') }, { children: function () { return ((0,jsx_runtime.jsx)(WordCharts_WordCloud/* default */.A, WordCloud_WordCloud_assign({}, words, { showSentiment: showSentiment, sortByUniqueWords: sortByUniqueWords, usedVolume: usedVolume, colorPalette: location.query.wordCloudColorPalette, defaultOmittedDataKeys: location.query.wordCloudOmittedDataKeys, additionalHeaderContent: renderAdditionalHeaderContent(), height: 400, "\u0441onfigOptions": {
                    tooltip: {
                        enabled: true,
                        useHTML: true,
                        headerFormat: '<span style="font-size: 16px; color:{point.color}"><b>{point.key}</b></span><br/>',
                        pointFormatter: function () {
                            return "<b>".concat(sprintf(sortByUniqueWords
                                ? nl('%s unique mention', '%s unique mentions', approximateSocialSearchCount(this.weight))
                                : nl('%s mention', '%s mentions', approximateSocialSearchCount(this.weight)), formatSocialSearchCount(approximateSocialSearchCount(this.weight))), "</b>");
                        },
                    },
                }, onClick: function () { }, onSendAnalyticalEvent: sendAnalyticsEvent, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return sendAnalyticsEvent({
                        eventType: 'SocialSearch: chart exported',
                        properties: WordCloud_WordCloud_assign(WordCloud_WordCloud_assign({}, properties), { chartType: 'wordCloud' }),
                    });
                }, onChangeColorPalette: handleChangeColorPalette, onLegendClick: handleLegendClick }))); } })) }));
};
/* harmony default export */ const cards_WordCloud_WordCloud = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isFetching: (0,socialSearch_selectors/* isWordCloudFetching */.Op)(state),
    words: (0,socialSearch_selectors/* getWordsByQuery */.be)(state),
    queries: (0,socialSearch_selectors/* getSearchQueries */.Lf)(state),
    queriesHash: (0,socialSearch_selectors/* getQueriesHash */.tg)(state),
    filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
}); }, {
    fetchWords: socialSearch_model/* socialSearchModel */.J.action.fetchSocialSearchWordCloud,
    updateLocation: routing_actions/* update */.yo,
    sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withFilter/* default */.A)(function (props, isFirstTime) {
    if (isFirstTime)
        return;
    props.fetchWords({
        queries: props.queries,
        filter: props.filter,
    });
}), react.memo)(WordCloud_WordCloudContainer));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/WordCloud/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/WordCloud/WordCloud.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const pages_WordCloud_WordCloud = ({});
;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/WordCloud/WordCloud.tsx
var pages_WordCloud_WordCloud_assign = (undefined && undefined.__assign) || function () {
    pages_WordCloud_WordCloud_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return pages_WordCloud_WordCloud_assign.apply(this, arguments);
};










var WordCloud_WordCloudPage = function (_a) {
    var isComparison = _a.isComparison, sendAnalyticsEvent = _a.sendAnalyticsEvent;
    (0,react.useEffect)(function () {
        sendAnalyticsEvent({ eventType: 'SocialSearch: word cloud page opened' });
    }, []);
    return ((0,jsx_runtime.jsxs)("div", pages_WordCloud_WordCloud_assign({ className: pages_WordCloud_WordCloud.base }, { children: [isComparison ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(cards_QuerySelectionToolbar_QuerySelectionToolbar, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })) : null, (0,jsx_runtime.jsx)("div", pages_WordCloud_WordCloud_assign({ className: pages_WordCloud_WordCloud.container }, { children: (0,jsx_runtime.jsx)(cards_WordCloud_WordCloud, {}) }))] })));
};
/* harmony default export */ const socialSearch_pages_WordCloud_WordCloud = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    isComparison: (0,socialSearch_selectors/* isComparisonMode */.x1)(state),
}); }, { sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent }), react.memo)(WordCloud_WordCloudPage));

;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/WordCloud/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/MentionStreamToolbar/MentionStreamToolbar.tsx
var MentionStreamToolbar_assign = (undefined && undefined.__assign) || function () {
    MentionStreamToolbar_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionStreamToolbar_assign.apply(this, arguments);
};










var EXCLUDED_ORDER_BY = ['id', 'duplicates', 'potentialReach'];
var MentionStreamToolbar_MentionStreamToolbar_MentionStreamToolbar = function (_a) {
    var orderBy = _a.orderBy;
    var orderByOptions = (0,react.useMemo)(function () { return getOrderByOptions().filter(function (x) { return !EXCLUDED_ORDER_BY.includes(x.value); }); }, []);
    return ((0,jsx_runtime.jsx)(cards_QuerySelectionToolbar_QuerySelectionToolbar, { children: function (_a) {
            var setQuery = _a.setQuery, sendAnalyticsEvent = _a.sendAnalyticsEvent;
            return ((0,jsx_runtime.jsxs)(InlineSelect/* default */.A, MentionStreamToolbar_assign({ options: orderByOptions, value: orderBy, onChange: function (selected) {
                    sendAnalyticsEvent({ eventType: 'SocialSearch: mention stream sorted', properties: { sortedBy: selected } });
                    setQuery({ orderBy: selected });
                } }, { children: [(0,jsx_runtime.jsx)("span", { children: orderByOptions.find(function (o) { return o.value === orderBy; }).label }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "sort" })] })));
        } }));
};
/* harmony default export */ const cards_MentionStreamToolbar_MentionStreamToolbar = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    orderBy: (0,mentionStream_selectors/* getMentionsOrderBy */.NE)(state),
}); }), react.memo)(MentionStreamToolbar_MentionStreamToolbar_MentionStreamToolbar));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/MentionStreamToolbar/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/MentionStream/MentionStream.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionStream = ({"emptyStateContainer":"G3SNHU_h5K1jf6T9n8wy","emptyStateTitle":"vYlS81ygexuxzZ6Fo4zC","endMessage":"zGcP8bKNcGqxFWYJaJui"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/MentionStream/MentionStream.tsx
var MentionStream_assign = (undefined && undefined.__assign) || function () {
    MentionStream_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionStream_assign.apply(this, arguments);
};



















var MentionStream_MentionStream = function (_a) {
    var isFetching = _a.isFetching, hasMoreMentions = _a.hasMoreMentions, canCreateTopic = _a.canCreateTopic, userLanguage = _a.userLanguage, queries = _a.queries, filter = _a.filter, queriesHash = _a.queriesHash, orderBy = _a.orderBy, data = _a.data, fetchMentions = _a.fetchMentions, fetchMoreMentions = _a.fetchMoreMentions, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        fetchMentions({ queries: queries, filter: filter, orderBy: orderBy });
    }, [queriesHash, orderBy]);
    var fetchMore = function () {
        fetchMoreMentions({ queries: queries, filter: filter, orderBy: orderBy });
    };
    var renderEndMessage = function () { return ((0,jsx_runtime.jsxs)("div", MentionStream_assign({ className: MentionStream.endMessage }, { children: [l('Displayed mentions are taken from a 1% sample of the data for your search query.'), canCreateTopic && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)(dist/* Link */.N_, MentionStream_assign({ to: "/themes/new" }, { children: l('Create topic', 'socialSearch') })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('to see more mentions.')] }))] }))); };
    var renderEmptyState = function () { return ((0,jsx_runtime.jsx)("div", MentionStream_assign({ className: MentionStream.emptyStateContainer }, { children: (0,jsx_runtime.jsx)("div", MentionStream_assign({ className: MentionStream.emptyStateTitle }, { children: l('No mentions found by given query') })) }))); };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, MentionStream_assign({ empty: !(data === null || data === void 0 ? void 0 : data.length), emptyState: renderEmptyState(), loaded: !!data }, { children: function () { return ((0,jsx_runtime.jsxs)(index_es/* default */.A, MentionStream_assign({ hasMore: hasMoreMentions, dataLength: data.length, next: fetchMore, loader: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}), style: { overflow: 'hidden' } }, { children: [data === null || data === void 0 ? void 0 : data.map(function (item) {
                    return (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(MentionPreview/* default */.A, MentionStream_assign({}, item, { withTranslationButton: true, canBackendTranslate: item.canTranslate, userLanguage: userLanguage, tags: item.systemTags, showEngagement: true, sourceName: item.source, publicationDate: item.publishedAt, sentiment: item.sentiment, onSourceClick: function (sourceName) { return sendAnalyticalEvent({
                                    eventType: 'SocialSearch: mention external link opened',
                                    properties: { sourceName: sourceName },
                                }); }, sendAnalyticalEvent: sendAnalyticalEvent })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] }, item.id);
                }), !isFetching && !hasMoreMentions && renderEndMessage()] }))); } })));
};
/* harmony default export */ const cards_MentionStream_MentionStream = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    isFetching: (0,socialSearch_selectors/* isMentionsFetching */.YA)(state),
    hasMoreMentions: (0,socialSearch_selectors/* getHasMoreMentions */.VF)(state),
    canCreateTopic: (0,currentUser_selectors/* isTopicCreationEnabled */.A0)(state),
    queries: (0,socialSearch_selectors/* getSearchQueries */.Lf)(state),
    queriesHash: (0,socialSearch_selectors/* getQueriesHash */.tg)(state),
    filter: (0,filter_selectors/* getThemeFilter */.Ic)(state),
    data: (0,socialSearch_selectors/* getMentionsByQuery */.$y)(state),
    orderBy: (0,mentionStream_selectors/* getMentionsOrderBy */.NE)(state),
    userLanguage: (0,currentUser_selectors/* getUserLanguage */.mf)(state),
}); }, {
    fetchMentions: socialSearch_model/* socialSearchModel */.J.action.fetchSocialSearchMentions,
    fetchMoreMentions: socialSearch_model/* socialSearchModel */.J.action.fetchMoreSocialSearchMentions,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withFilter/* default */.A)(function (props, isFirstTime) {
    if (isFirstTime)
        return;
    props.fetchMentions({
        queries: props.queries,
        filter: props.filter,
        orderBy: props.orderBy,
    });
}), react.memo)(MentionStream_MentionStream));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/MentionStream/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Mentions/Mentions.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Mentions = ({"base":"tUoS9mHP5H3SaIJSQRmV","container":"p9uwFfWy779pAannn2yW"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Mentions/Mentions.tsx
var Mentions_assign = (undefined && undefined.__assign) || function () {
    Mentions_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Mentions_assign.apply(this, arguments);
};








var Mentions_Mentions = function (_a) {
    var sendAnalyticsEvent = _a.sendAnalyticsEvent;
    (0,react.useEffect)(function () {
        sendAnalyticsEvent({ eventType: 'SocialSearch: mentions page opened' });
    }, []);
    return ((0,jsx_runtime.jsxs)("div", Mentions_assign({ className: Mentions.base }, { children: [(0,jsx_runtime.jsx)(cards_MentionStreamToolbar_MentionStreamToolbar, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", Mentions_assign({ className: Mentions.container }, { children: (0,jsx_runtime.jsx)(cards_MentionStream_MentionStream, {}) }))] })));
};
/* harmony default export */ const pages_Mentions_Mentions = ((0,react_redux/* connect */.Ng)(null, { sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent })(Mentions_Mentions));

;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Mentions/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GenderDistributionLine/GenderDistributionLine.tsx
var GenderDistributionLine_assign = (undefined && undefined.__assign) || function () {
    GenderDistributionLine_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GenderDistributionLine_assign.apply(this, arguments);
};











var GenderDistributionLine = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, stats = _a.stats, interval = _a.interval, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Gender distribution');
    var getSeries = function () {
        if (!stats)
            return [];
        return Object.keys(stats).map(function (key) { return ({
            dates: stats[key],
            pointInterval: interval,
            name: (0,commonTranslations/* getTranslations */.$)()[key],
            pointStart: new Date(stats[key][0].dateAsUtc).getTime(),
            data: stats[key].map(function (y) { return approximateSocialSearchCount(y.count); }),
            color: utils_colors/* CATEGORIZED_COLORS */.lC[key],
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, GenderDistributionLine_assign({ withEmptyStateExplanation: true, loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Line/* default */.A, { title: title, series: getSeries(), configOptions: GenderDistributionLine_assign({}, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'genderDistribution' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(GenderDistributionLine_assign(GenderDistributionLine_assign({}, properties), { chartType: 'genderDistribution' }));
                } })); } })) }));
};
/* harmony default export */ const GenderDistributionLine_GenderDistributionLine = ((0,redux/* compose */.Zz)(withSocialSearchStats('genderDistributionLine', {
    aggregations: {
        date: {
            interval: Aggregation/* DateInterval */.Sq.Day,
            aggregations: {
                authorGender: {},
            },
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getGenderDistributionLineStats */.Ro)(state),
}); }, 'authorsCount'))(GenderDistributionLine));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GenderDistributionLine/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/AudienceInfoCard/AudienceInfoCard.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AudienceInfoCard = ({"base":"qtdiWksjCySfWaFxM3nj","totalCountLabel":"vSq8HNIDumppDPok28YU","totalCount":"rBx9S3PCBU2UfZmpYQhw","distributionItem":"zjESMHsdIHepNt1rf1p6","distributionLabel":"cq_s1pV0Lh4_Bk7K1wlw","distributionCount":"cWRBCu90D9SxxKAdneeU","distributionIcon":"YmvanGnl0YG8BxxVj7Rw"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/AudienceInfoCard/AudienceInfoCard.tsx
var AudienceInfoCard_assign = (undefined && undefined.__assign) || function () {
    AudienceInfoCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AudienceInfoCard_assign.apply(this, arguments);
};









var AudienceInfoCard_AudienceInfoCard = function (_a) {
    var stats = _a.stats;
    if (!stats)
        return null;
    var totalCount = stats.totalCount, distribution = stats.distribution;
    var renderCount = function (gender) {
        var info = {
            male: {
                icon: '/static/images/audience/male.svg',
                label: l('Male', 'demographics'),
            },
            female: {
                icon: '/static/images/audience/female.svg',
                label: l('Female', 'demographics'),
            },
            other: {
                icon: null,
                label: l('Other'),
            },
        }[gender];
        return ((0,jsx_runtime.jsxs)("div", AudienceInfoCard_assign({ className: AudienceInfoCard.distributionItem }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, AudienceInfoCard_assign({ className: AudienceInfoCard.distributionLabel }, { children: [info.label, " ", distribution[gender] && distribution[gender] > 0 ? Math.floor((distribution[gender] * 100) / totalCount) : 0, "%"] })), (0,jsx_runtime.jsx)("span", AudienceInfoCard_assign({ className: AudienceInfoCard.distributionCount }, { children: formatSocialSearchCount(approximateSocialSearchCount(distribution[gender])) }))] }), info.icon
                    ? (0,jsx_runtime.jsx)("img", { className: AudienceInfoCard.distributionIcon, alt: info.label, src: info.icon })
                    : null] })));
    };
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, AudienceInfoCard_assign({ className: AudienceInfoCard.base }, { children: [(0,jsx_runtime.jsx)("span", AudienceInfoCard_assign({ className: AudienceInfoCard.totalCountLabel }, { children: l('Total authors') })), (0,jsx_runtime.jsx)(H2/* default */.A, AudienceInfoCard_assign({ className: AudienceInfoCard.totalCount }, { children: formatSocialSearchCount(approximateSocialSearchCount(totalCount)) })), renderCount('female'), renderCount('male'), renderCount('other')] })));
};
/* harmony default export */ const cards_AudienceInfoCard_AudienceInfoCard = ((0,redux/* compose */.Zz)(withSocialSearchStats('audienceInfoCard', {
    aggregations: {
        authorGender: {
            aggregations: {
                date: {
                    interval: Aggregation/* DateInterval */.Sq.Day,
                },
            },
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getAudienceInfoCardStats */.cA)(state),
}); }, 'authorsCount'))(AudienceInfoCard_AudienceInfoCard));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/AudienceInfoCard/index.ts


// EXTERNAL MODULE: ./src/components/other/BubbleChart/BubbleChart.tsx
var other_BubbleChart_BubbleChart = __webpack_require__("dz/4");
// EXTERNAL MODULE: ./src/components/other/AudienceChartsTooltip/index.ts + 1 modules
var AudienceChartsTooltip = __webpack_require__("XF/h");
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/Interests/Interests.tsx
var Interests_assign = (undefined && undefined.__assign) || function () {
    Interests_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Interests_assign.apply(this, arguments);
};









var Interests_Interests = function (_a) {
    var isFetching = _a.isFetching, noData = _a.noData, lowData = _a.lowData, stats = _a.stats, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Top interests');
    var getSeries = function () {
        if (!stats)
            return null;
        return [{
                maxSize: 175,
                minSize: 50,
                color: (0,colorHandler/* isDarkTheme */.g4)() ? '#7BB555' : '#2B89ED',
                dataLabels: { color: 'white' },
                data: stats.map(function (x) { return ({ name: x.key, value: x.metricTotal }); }),
            }];
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, Interests_assign({ fullWidth: true }, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, Interests_assign({ loaded: !isFetching, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(other_BubbleChart_BubbleChart/* default */.A, { withExport: true, height: "650px", showLegend: false, title: title, data: getSeries(), tooltipFormatter: function (_a) {
                    var chart = _a.chart;
                    return (0,AudienceChartsTooltip/* default */.A)({
                        chart: chart,
                        countFormatter: function (count) { return formatSocialSearchCount(approximateSocialSearchCount(count)); },
                    });
                }, onBubbleClick: function () { return onChartClick({ chartType: 'interestsBubble' }); }, onChartExport: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(Interests_assign(Interests_assign({}, properties), { chartType: 'interestsBubble' }));
                } })); } })) })));
};
/* harmony default export */ const cards_Interests_Interests = ((0,redux/* compose */.Zz)(withSocialSearchStats('audienceInterestsBubble', {
    aggregations: {
        authorInterests: { size: 30 },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getInterestsData */.cS)(state),
}); }, 'authorsCount'))(Interests_Interests));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/Interests/index.ts


// EXTERNAL MODULE: ./src/containers/audience/Occupations/components/OccupationsCloud.tsx + 1 modules
var OccupationsCloud = __webpack_require__("noWN");
;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/Occupations/Occupations.tsx
var Occupations_assign = (undefined && undefined.__assign) || function () {
    Occupations_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Occupations_assign.apply(this, arguments);
};









var Occupations_Occupations = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, stats = _a.stats, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Top occupations');
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, Occupations_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () {
                var _a;
                return ((0,jsx_runtime.jsx)(OccupationsCloud/* default */.A, { isDemoMode: false, height: "650px", data: (_a = stats.data) === null || _a === void 0 ? void 0 : _a.map(function (x) { return (Occupations_assign(Occupations_assign({}, x), { weight: x.authors, dataLabels: { enabled: false } })); }), tooltipFormatter: function (_a) {
                        var chart = _a.chart;
                        return (0,AudienceChartsTooltip/* default */.A)({
                            chart: chart,
                            countFormatter: function (count) { return formatSocialSearchCount(approximateSocialSearchCount(count)); },
                        });
                    }, onClick: function () { return onChartClick({ chartType: 'occupationsCloud' }); }, onExport: function (_a) {
                        var fileType = _a.fileType;
                        return onChartExport({ fileType: fileType, chartType: 'occupationsCloud' });
                    } }));
            } })) }));
};
/* harmony default export */ const cards_Occupations_Occupations = ((0,redux/* compose */.Zz)(withSocialSearchStats('audienceOccupationsCloud', {
    aggregations: {
        authorJobs: {
            size: 40,
            aggregations: {},
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getOccupationCloudData */.FM)(state),
}); }, 'authorsCount'), react.memo)(Occupations_Occupations));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/Occupations/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/AuthorsLine/AuthorsLine.tsx
var AuthorsLine_assign = (undefined && undefined.__assign) || function () {
    AuthorsLine_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorsLine_assign.apply(this, arguments);
};











var AuthorsLine = function (_a) {
    var isFetching = _a.isFetching, noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, interval = _a.interval, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Authors over time');
    var getSeries = function () {
        if (!stats)
            return [];
        return stats.map(function (dates, i) { return ({
            dates: dates,
            pointInterval: interval,
            name: formatQuery(queries[i]),
            pointStart: new Date(dates[0].dateAsUtc).getTime(),
            data: dates.map(function (y) { return approximateSocialSearchCount(y.metricTotal); }),
            color: utils_colors/* socialSearchColors */.Mu[i],
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, AuthorsLine_assign({ loaded: !isFetching, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Line/* default */.A, { title: title, series: getSeries(), configOptions: AuthorsLine_assign({ chart: {
                        height: 340,
                        type: 'spline',
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'authorsOverTimeComparison' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(AuthorsLine_assign(AuthorsLine_assign({}, properties), { chartType: 'authorsOverTimeComparison' }));
                } })); } })) }));
};
/* harmony default export */ const AuthorsLine_AuthorsLine = ((0,redux/* compose */.Zz)(withSocialSearchStats('authorsLine', {
    aggregations: {
        date: {
            interval: Aggregation/* DateInterval */.Sq.Day,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getAuthorsLineStats */.Mk)(state),
}); }, 'authorsCount'), react.memo)(AuthorsLine));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/AuthorsLine/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GenderDistributionBar/GenderDistributionBar.tsx
var GenderDistributionBar_assign = (undefined && undefined.__assign) || function () {
    GenderDistributionBar_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return GenderDistributionBar_assign.apply(this, arguments);
};










var GenderDistributionBar = function (_a) {
    var isFetching = _a.isFetching, noData = _a.noData, lowData = _a.lowData, stats = _a.stats, queries = _a.queries, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Gender distribution');
    var getSeries = function () {
        if (!stats)
            return null;
        return stats.genderNames.map(function (genderName) { return ({
            name: (0,commonTranslations/* getTranslations */.$)()[genderName],
            color: utils_colors/* CATEGORIZED_COLORS */.lC[genderName],
            data: stats.data.map(function (stat) { var _a; return approximateSocialSearchCount((_a = stat.find(function (x) { return x.key === genderName; })) === null || _a === void 0 ? void 0 : _a.metricTotal) || 0; }),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, GenderDistributionBar_assign({ loaded: !isFetching, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Bar, { title: title, series: getSeries(), configOptions: GenderDistributionBar_assign({ plotOptions: {
                        series: {
                            stacking: 'normal',
                        },
                    }, xAxis: {
                        categories: queries.map(formatQuery),
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'genderDistributionComparison' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(GenderDistributionBar_assign(GenderDistributionBar_assign({}, properties), { chartType: 'genderDistributionComparison' }));
                } })); } })) }));
};
/* harmony default export */ const GenderDistributionBar_GenderDistributionBar = ((0,redux/* compose */.Zz)(withSocialSearchStats('genderDistributionBar', {
    aggregations: {
        authorGender: {},
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getGenderDistributionStats */.xD)(state),
}); }, 'authorsCount'))(GenderDistributionBar));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/GenderDistributionBar/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/InterestsDistribution/InterestsDistribution.tsx
var InterestsDistribution_assign = (undefined && undefined.__assign) || function () {
    InterestsDistribution_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return InterestsDistribution_assign.apply(this, arguments);
};









var InterestsDistribution = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, queries = _a.queries, stats = _a.stats, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Interests');
    var getSeries = function () {
        if (!stats)
            return [];
        return stats.interestNames.map(function (name) { return ({
            name: name,
            data: stats.data.map(function (stat) { var _a; return approximateSocialSearchCount((_a = stat.aggregations.authorInterests.values.find(function (x) { return x.key === name; })) === null || _a === void 0 ? void 0 : _a.metricTotal) || null; }),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, InterestsDistribution_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Bar, { title: title, series: getSeries(), configOptions: InterestsDistribution_assign({ xAxis: {
                        categories: queries.map(formatQuery),
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'interestsComparison' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(InterestsDistribution_assign(InterestsDistribution_assign({}, properties), { chartType: 'interestsComparison' }));
                } })); } })) }));
};
/* harmony default export */ const InterestsDistribution_InterestsDistribution = ((0,redux/* compose */.Zz)(withSocialSearchStats('interestsDistribution', {
    aggregations: {
        authorInterests: {
            size: 7,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getInterestsDistributionStats */.Bd)(state),
}); }, 'authorsCount'), react.memo)(InterestsDistribution));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/InterestsDistribution/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OccupationsDistribution/OccupationsDistribution.tsx
var OccupationsDistribution_assign = (undefined && undefined.__assign) || function () {
    OccupationsDistribution_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return OccupationsDistribution_assign.apply(this, arguments);
};










var OccupationsDistribution = function (_a) {
    var noData = _a.noData, lowData = _a.lowData, queries = _a.queries, stats = _a.stats, formatQuery = _a.formatQuery, onChartClick = _a.onChartClick, onChartExport = _a.onChartExport;
    var title = l('Occupations');
    var getSeries = function () {
        if (!stats)
            return [];
        return stats.occupationNames.map(function (name) { return ({
            name: name,
            data: stats.data.map(function (stat) { var _a; return approximateSocialSearchCount((_a = stat.aggregations.authorJobs.values.find(function (x) { return x.key === name; })) === null || _a === void 0 ? void 0 : _a.metricTotal) || null; }),
        }); });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, { children: (0,jsx_runtime.jsx)(ChartLoader_ChartLoader, OccupationsDistribution_assign({ loaded: !!stats, noData: noData, lowData: lowData, title: title }, { children: function () { return ((0,jsx_runtime.jsx)(Bar, { title: title, series: getSeries(), configOptions: OccupationsDistribution_assign({ colors: utils_colors/* alternativeChartColors */.yk, xAxis: {
                        categories: queries.map(formatQuery),
                    } }, getSocialSearchTooltipConfig()), onClick: function () { return onChartClick({ chartType: 'occupationsComparison' }); }, onSendChartExportedEvent: function (_a) {
                    var properties = _a.properties;
                    return onChartExport(OccupationsDistribution_assign(OccupationsDistribution_assign({}, properties), { chartType: 'occupationsComparison' }));
                } })); } })) }));
};
/* harmony default export */ const OccupationsDistribution_OccupationsDistribution = ((0,redux/* compose */.Zz)(withSocialSearchStats('occupationsDistribution', {
    aggregations: {
        authorJobs: {
            size: 7,
        },
    },
}, function (state) { return ({
    stats: (0,socialSearch_selectors/* getOccupationsDistributionStats */.qj)(state),
}); }, 'authorsCount'), react.memo)(OccupationsDistribution));

;// CONCATENATED MODULE: ./src/containers/socialSearch/cards/OccupationsDistribution/index.ts


;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Audience/Audience.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Audience = ({"container":"dU7T68PDb93AIJZM4Hek","genderLine":"z9UBMHL8RaX5EfV06mxk","infoCard":"d2GTtoHB0Jf47xi8d6IT","interests":"e8zpVZ7jJfoHBkAD9NDV","occupations":"JBwYwZBq9WEWzonmJOkK","genderDistribution":"PBrWjPGVCQPFcckpysuE","interestsDistribution":"wZuMATzB8YbKhtrqHbqy","occupationsDistribution":"pVtMDHFeL1NqbqfaSh1h"});
;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Audience/Audience.tsx
var Audience_assign = (undefined && undefined.__assign) || function () {
    Audience_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Audience_assign.apply(this, arguments);
};















var Audience_Audience = function (_a) {
    var isComparison = _a.isComparison, sendAnalyticsEvent = _a.sendAnalyticsEvent;
    (0,react.useEffect)(function () {
        sendAnalyticsEvent({ eventType: 'SocialSearch: audience page opened' });
    }, []);
    if (isComparison) {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(AuthorsLine_AuthorsLine, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Audience_assign({ className: Audience.container }, { children: [(0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.genderDistribution }, { children: (0,jsx_runtime.jsx)(GenderDistributionBar_GenderDistributionBar, {}) })), (0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.interestsDistribution }, { children: (0,jsx_runtime.jsx)(InterestsDistribution_InterestsDistribution, {}) })), (0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.occupationsDistribution }, { children: (0,jsx_runtime.jsx)(OccupationsDistribution_OccupationsDistribution, {}) }))] }))] }));
    }
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", Audience_assign({ className: Audience.container }, { children: [(0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.genderLine }, { children: (0,jsx_runtime.jsx)(GenderDistributionLine_GenderDistributionLine, {}) })), (0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.infoCard }, { children: (0,jsx_runtime.jsx)(cards_AudienceInfoCard_AudienceInfoCard, {}) }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", Audience_assign({ className: Audience.container }, { children: [(0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.interests }, { children: (0,jsx_runtime.jsx)(cards_Interests_Interests, {}) })), (0,jsx_runtime.jsx)("div", Audience_assign({ className: Audience.occupations }, { children: (0,jsx_runtime.jsx)(cards_Occupations_Occupations, {}) }))] }))] }));
};
/* harmony default export */ const pages_Audience_Audience = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isComparison: (0,socialSearch_selectors/* isComparisonMode */.x1)(state),
}); }, { sendAnalyticsEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent })(Audience_Audience));

;// CONCATENATED MODULE: ./src/containers/socialSearch/pages/Audience/index.ts


;// CONCATENATED MODULE: ./src/routes.tsx
var routes_assign = (undefined && undefined.__assign) || function () {
    routes_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return routes_assign.apply(this, arguments);
};














































































var LoginPageLayout = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "uUOU")); });
var CredentialsLoginPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "02Tg")); });
var SSOLoginPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "Xvny")); });
var ResetPasswordPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "8tfi")); });
var SetPasswordPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "hypC")); });
var PublicCustomDashboardPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "b5c/")); });
var PublicMentionWall = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 368).then(__webpack_require__.bind(__webpack_require__, "GGFx")); });
var PublicMentionWallPaged = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 688).then(__webpack_require__.bind(__webpack_require__, "PhT0")); });
var LandingIRPage = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(23)]).then(__webpack_require__.bind(__webpack_require__, "UmXR")); });
var UnsubscribeFromEmailReportsPage = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 960).then(__webpack_require__.bind(__webpack_require__, "XjgO")); });
var UnsubscribeFromAlertsPage = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 187).then(__webpack_require__.bind(__webpack_require__, "EbtM")); });
var EditUser = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "kn5C")); });
var CreateUser = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "6pw8")); });
var AccountInfo = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "MT3B")); });
var UsersSettingsPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "WLaG")); });
var ExternalAuthorizations = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "NX4p")); });
var BillingPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "ot1j")); });
var AdministrationPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "khcr")); });
var AccountStatistics = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 758).then(__webpack_require__.bind(__webpack_require__, "kiar")); });
var DocumentsPage = (0,react.lazy)(function () { return Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, "puug")); });
var Digest = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(504)]).then(__webpack_require__.bind(__webpack_require__, "oSq+")); });
var ThemeAudit = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 335).then(__webpack_require__.bind(__webpack_require__, "yXIr")); });
var TopicAdministration = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 720).then(__webpack_require__.bind(__webpack_require__, "DmUR")); });
var CustomDashboardPage = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 663).then(__webpack_require__.bind(__webpack_require__, "NO9A")); });
var CustomDashboardListPage = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 123).then(__webpack_require__.bind(__webpack_require__, "SYtH")); });
var CustomDashboard = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 472).then(__webpack_require__.bind(__webpack_require__, "Cs+V")); });
var routes_CustomDashboards = (0,react.lazy)(function () { return __webpack_require__.e(/* import() */ 559).then(__webpack_require__.bind(__webpack_require__, "AVGz")); });
var CustomDashboardConstructor = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(894)]).then(__webpack_require__.bind(__webpack_require__, "yc/D")); });
var CustomDashboardEditor = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(308), __webpack_require__.e(915)]).then(__webpack_require__.bind(__webpack_require__, "W3ry")); });
var CustomDashboardDuplicate = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(308), __webpack_require__.e(33)]).then(__webpack_require__.bind(__webpack_require__, "UGMl")); });
var CustomDashboardWidgetConstructor = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(639), __webpack_require__.e(762)]).then(__webpack_require__.bind(__webpack_require__, "ycde")); });
var CustomDashboardWidgetEditor = (0,react.lazy)(function () { return Promise.all(/* import() */[__webpack_require__.e(96), __webpack_require__.e(639), __webpack_require__.e(987)]).then(__webpack_require__.bind(__webpack_require__, "FrWq")); });
var RequireAuthenticationLoggedInLayout = hoc_requireAuthentication(LoggedInLayout);
/* harmony default export */ const routes = ((0,jsx_runtime.jsx)(react_router_dist/* Routes */.BV, { children: (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(App_App, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "/", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "/login" }) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(SuspenseWrapper_SuspenseWrapper, {}) }, { children: [(0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(PublicPageLayout_PublicPageLayout, {}) }, { children: [(0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(LoginPageLayout, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "login", element: (0,jsx_runtime.jsx)(CredentialsLoginPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "sso/login", element: (0,jsx_runtime.jsx)(SSOLoginPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "sso/login/:name", element: (0,jsx_runtime.jsx)(SSOLoginPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "forgot_password", element: (0,jsx_runtime.jsx)(ResetPasswordPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "activate_account/password", element: (0,jsx_runtime.jsx)(SetPasswordPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "recurring_email_unsubscribe/:token", element: (0,jsx_runtime.jsx)(UnsubscribeFromEmailReportsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "alert_unsubscribe/:token", element: (0,jsx_runtime.jsx)(UnsubscribeFromAlertsPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(LandingLayout, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "computer-vision-api-demo", element: (0,jsx_runtime.jsx)(LandingIRPage, {}) }) })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "wall/:wallId", element: (0,jsx_runtime.jsx)(PublicMentionWall, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "wall/:wallId/paged", element: (0,jsx_runtime.jsx)(PublicMentionWallPaged, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "dashboard/:token", element: (0,jsx_runtime.jsx)(PublicCustomDashboardPage, {}) })] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(RequireAuthenticationLoggedInLayout, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "logon", element: (0,jsx_runtime.jsx)(LogOnPage_LogOnPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(PublicPageLayout_PublicPageLayout, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "me/role", element: (0,jsx_runtime.jsx)(SegmentationSurveyPage_SegmentationSurveyPage, {}) }) })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "tour", element: (0,jsx_runtime.jsx)(pages_ProductTourRedirectPage_ProductTourRedirectPage, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(pages_UserLayout_UserLayout, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/new", element: (0,jsx_runtime.jsx)(pages_CreateThemePage_CreateThemePage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "feedback", element: (0,jsx_runtime.jsx)(pages_FeedbackPage_FeedbackPage, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "dashboards", element: (0,jsx_runtime.jsx)(CustomDashboardListPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(routes_CustomDashboards, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "new", element: (0,jsx_runtime.jsx)(CustomDashboardConstructor, {}) })] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "dashboards/:id", element: (0,jsx_runtime.jsx)(CustomDashboardPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(CustomDashboard, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "new", element: (0,jsx_runtime.jsx)(CustomDashboardWidgetConstructor, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "duplicate", element: (0,jsx_runtime.jsx)(CustomDashboardDuplicate, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "edit" }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(CustomDashboardEditor, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: ":widgetId", element: (0,jsx_runtime.jsx)(CustomDashboardWidgetEditor, {}) })] }))] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "search", element: (0,jsx_runtime.jsx)(pages_SocialSearchPage_SocialSearchPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "overview", element: (0,jsx_runtime.jsx)(pages_Overview_Overview, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "geo", element: (0,jsx_runtime.jsx)(pages_Geo_Geo, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "mentions", element: (0,jsx_runtime.jsx)(pages_Mentions_Mentions, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "wordcloud", element: (0,jsx_runtime.jsx)(socialSearch_pages_WordCloud_WordCloud, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "audience", element: (0,jsx_runtime.jsx)(pages_Audience_Audience, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes", element: (0,jsx_runtime.jsx)(containers_ThemesPage_ThemesPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "settings", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "/settings/general" }) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "settings", element: (0,jsx_runtime.jsx)(pages_AccountSettingsPage_AccountSettingsPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "general", element: (0,jsx_runtime.jsx)(AccountInfo, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "users" }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(UsersSettingsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "create", element: (0,jsx_runtime.jsx)(CreateUser, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: ":userId/edit", element: (0,jsx_runtime.jsx)(EditUser, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "administration", element: (0,jsx_runtime.jsx)(AdministrationPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "statistics", element: (0,jsx_runtime.jsx)(AccountStatistics, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "social_accounts", element: (0,jsx_runtime.jsx)(ExternalAuthorizations, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "billing", element: (0,jsx_runtime.jsx)(BillingPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "documents", element: (0,jsx_runtime.jsx)(DocumentsPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/not_found", element: (0,jsx_runtime.jsx)(ThemeNotFoundPage_ThemeNotFoundPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "profile", element: (0,jsx_runtime.jsx)(ProfilePage_ProfilePage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/demo/:type", element: (0,jsx_runtime.jsx)(DemoPage_DemoPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/digest", element: (0,jsx_runtime.jsx)(Digest, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/wall", element: (0,jsx_runtime.jsx)(pages_PrivateMentionWall_PrivateMentionWall, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ element: (0,jsx_runtime.jsx)(pages_ThemeLayout_ThemeLayout, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "mentions" }) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/mentions", element: (0,jsx_runtime.jsx)(mentions_MentionStreamPage_MentionStreamPage, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: ":mentionId", element: (0,jsx_runtime.jsx)(pages_MentionPage_MentionPage, {}) }) })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/settings", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "general" }) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/settings", element: (0,jsx_runtime.jsx)(pages_ThemeSettingsPage_ThemeSettingsPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "general", element: (0,jsx_runtime.jsx)(themeSettings_GeneralSettings_GeneralSettings, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "rules", element: (0,jsx_runtime.jsx)(RulesSettings_RulesSettings, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "integrations", element: (0,jsx_runtime.jsx)(IntegrationsSettings, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "tags", element: (0,jsx_runtime.jsx)(TagsSettings_TagsSettings, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "excluded", element: (0,jsx_runtime.jsx)(ExclusionsRecovery_ExclusionsRecovery, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "channels", element: (0,jsx_runtime.jsx)(Channels_Channels, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "mention_wall", element: (0,jsx_runtime.jsx)(MentionWallSettings_MentionWallSettings, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "add_mention" }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(AddMention_AddMention, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "preview", element: (0,jsx_runtime.jsx)(PreviewMention_PreviewMention, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "form", element: (0,jsx_runtime.jsx)(AddMentionForm_AddMentionForm, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "success", element: (0,jsx_runtime.jsx)(AddMentionSuccessMessage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "collection", element: (0,jsx_runtime.jsx)(themeSettings_CollectionSettings_CollectionSettings, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "deletion", element: (0,jsx_runtime.jsx)(DangerousSettings, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "audit", element: (0,jsx_runtime.jsx)(ThemeAudit, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "administration", element: (0,jsx_runtime.jsx)(TopicAdministration, {}) })] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/dashboard", element: (0,jsx_runtime.jsx)(dashboard_DashboardPage_DashboardPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(dashboard_OverviewPage_OverviewPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "tags", element: (0,jsx_runtime.jsx)(dashboard_TagsPage_TagsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "sentiment", element: (0,jsx_runtime.jsx)(dashboard_SentimentPage_SentimentPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "sources", element: (0,jsx_runtime.jsx)(dashboard_SourcesPage_SourcesPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "compare", element: (0,jsx_runtime.jsx)(Topics_Topics, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "aspects", element: (0,jsx_runtime.jsx)(dashboard_EndorseConversationalInsights_EndorseConversationalInsights, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "wordcloud", element: (0,jsx_runtime.jsx)(dashboard_EndorseConversationalInsights_EndorseConversationalInsights, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "*", element: (0,jsx_runtime.jsx)(pages_NotFoundPage_NotFoundPage, {}) })] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/conversations", element: (0,jsx_runtime.jsx)(conversationalInsights_ConversationsPage_ConversationsPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(conversationalInsights_SubjectsPage_SubjectsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "trends", element: (0,jsx_runtime.jsx)(conversationalInsights_TrendsPage_TrendsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "aspects", element: (0,jsx_runtime.jsx)(conversationalInsights_AspectsPage_AspectsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "wordcloud", element: (0,jsx_runtime.jsx)(dashboard_WordCloudPage_WordCloudPage, {}) })] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/gallery", element: (0,jsx_runtime.jsx)(pages_ImagesPage_ImagesPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, routes_assign({ path: "images", element: (0,jsx_runtime.jsx)(imagesDashboard_Gallery_Gallery, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: ":mentionId", element: (0,jsx_runtime.jsx)(pages_MentionPage_MentionPage, {}) }) })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "visual", element: (0,jsx_runtime.jsx)(pages_VisualInsightsPage_VisualInsightsPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "bubble", element: (0,jsx_runtime.jsx)(imagesDashboard_BubbleChart_BubbleChart, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "engagement", element: (0,jsx_runtime.jsx)(EngagementChart_EngagementChart, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "graph", element: (0,jsx_runtime.jsx)(Graph_Graph, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: ":mentionId", element: (0,jsx_runtime.jsx)(pages_MentionPage_MentionPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "logo-comparison", element: (0,jsx_runtime.jsx)(imagesDashboard_Logos_Logos, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "*", element: (0,jsx_runtime.jsx)(pages_NotFoundPage_NotFoundPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/audience", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "list" }) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/audience", element: (0,jsx_runtime.jsx)(pages_AudiencePage_AudiencePage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "demographics", element: (0,jsx_runtime.jsx)(audience_Demographics_Demographics, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "interests", element: (0,jsx_runtime.jsx)(Interests/* default */.A, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "occupations", element: (0,jsx_runtime.jsx)(Occupations/* default */.A, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "list", element: (0,jsx_runtime.jsx)(Authors/* default */.A, {}) })] })), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/links", element: (0,jsx_runtime.jsx)(pages_LinksPage_LinksPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(dashboard_LinksTable_LinksTable, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "hosts", element: (0,jsx_runtime.jsx)(dashboard_HostsTable_HostsTable, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "*", element: (0,jsx_runtime.jsx)(pages_NotFoundPage_NotFoundPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, routes_assign({ path: "themes/:id/explore", element: (0,jsx_runtime.jsx)(pages_ExplorePage_ExplorePage, {}) }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(containers_Explore_Explore, {}) }) })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/email_reports", element: (0,jsx_runtime.jsx)(EmailReportPage_EmailReportPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/alerts", element: (0,jsx_runtime.jsx)(AlertsPage_AlertsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/sources", element: (0,jsx_runtime.jsx)(pages_UnderConstructionPage_UnderConstructionPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:id/reports", element: (0,jsx_runtime.jsx)(ReportsPage_ReportsPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "*", element: (0,jsx_runtime.jsx)(pages_NotFoundPage_NotFoundPage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "*", element: (0,jsx_runtime.jsx)(pages_NotFoundPage_NotFoundPage, {}) })] }))] })) }));

;// CONCATENATED MODULE: ./src/hoc/ImpersonateViaTheme.js





function ImpersonateViaTheme_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, ImpersonateViaTheme_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function ImpersonateViaTheme_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (ImpersonateViaTheme_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }





var ImpersonateViaTheme = /*#__PURE__*/function (_PureComponent) {
  function ImpersonateViaTheme() {
    (0,classCallCheck/* default */.A)(this, ImpersonateViaTheme);
    return ImpersonateViaTheme_callSuper(this, ImpersonateViaTheme, arguments);
  }
  (0,inherits/* default */.A)(ImpersonateViaTheme, _PureComponent);
  return (0,createClass/* default */.A)(ImpersonateViaTheme, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.props.fetchTheme({
        themeId: this.props.params.themeId
      });
    }
  }, {
    key: "render",
    value: function render() {
      return null;
    }
  }]);
}(react.PureComponent);
/* harmony default export */ const hoc_ImpersonateViaTheme = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
  fetchTheme: themes_model/* themesModel */.i.action.fetchGeneralThemeInfo
}))(ImpersonateViaTheme));
// EXTERNAL MODULE: ./src/containers/LoginPage/LoginPageLayout.tsx
var LoginPage_LoginPageLayout = __webpack_require__("uUOU");
// EXTERNAL MODULE: ./src/containers/LoginPage/CredentialsLoginPage.tsx + 2 modules
var LoginPage_CredentialsLoginPage = __webpack_require__("02Tg");
// EXTERNAL MODULE: ./src/containers/LoginPage/SSOLoginPage.tsx + 1 modules
var LoginPage_SSOLoginPage = __webpack_require__("Xvny");
// EXTERNAL MODULE: ./src/containers/ResetPassword/index.js + 4 modules
var ResetPassword = __webpack_require__("8tfi");
// EXTERNAL MODULE: ./src/containers/activateAccount/SetPasswordPage/index.tsx + 3 modules
var activateAccount_SetPasswordPage = __webpack_require__("hypC");
// EXTERNAL MODULE: ./src/containers/accountSettings/EditUser/index.ts + 3 modules
var accountSettings_EditUser = __webpack_require__("kn5C");
// EXTERNAL MODULE: ./src/containers/accountSettings/CreateUser/index.ts + 3 modules
var accountSettings_CreateUser = __webpack_require__("6pw8");
// EXTERNAL MODULE: ./src/containers/accountSettings/AccountInfo/index.ts + 10 modules
var accountSettings_AccountInfo = __webpack_require__("MT3B");
// EXTERNAL MODULE: ./src/containers/accountSettings/UserSettings/index.tsx + 6 modules
var UserSettings = __webpack_require__("WLaG");
// EXTERNAL MODULE: ./src/containers/accountSettings/ExternalAuthorizations/index.ts + 35 modules
var accountSettings_ExternalAuthorizations = __webpack_require__("NX4p");
// EXTERNAL MODULE: ./src/containers/accountSettings/Billing/index.js + 26 modules
var accountSettings_Billing = __webpack_require__("ot1j");
// EXTERNAL MODULE: ./src/containers/accountSettings/Administration/index.ts + 4 modules
var Administration = __webpack_require__("khcr");
// EXTERNAL MODULE: ./src/containers/accountSettings/Documents/index.ts + 3 modules
var Documents = __webpack_require__("puug");
// EXTERNAL MODULE: ./src/containers/customDashboard/PublicCustomDashboard/PublicCustomDashboardPage.tsx + 2 modules
var PublicCustomDashboard_PublicCustomDashboardPage = __webpack_require__("b5c/");
;// CONCATENATED MODULE: ./src/routesInactive.tsx
var routesInactive_assign = (undefined && undefined.__assign) || function () {
    routesInactive_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return routesInactive_assign.apply(this, arguments);
};



























var routesInactive_RequireAuthenticationLoggedInLayout = hoc_requireAuthentication(LoggedInLayout);
/* harmony default export */ const routesInactive = ((0,jsx_runtime.jsx)(react_router_dist/* Routes */.BV, { children: (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ element: (0,jsx_runtime.jsx)(App_App, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "/", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "login" }) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ element: (0,jsx_runtime.jsx)(PublicPageLayout_PublicPageLayout, {}) }, { children: [(0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ element: (0,jsx_runtime.jsx)(LoginPage_LoginPageLayout["default"], {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "login", element: (0,jsx_runtime.jsx)(LoginPage_CredentialsLoginPage["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "sso/login", element: (0,jsx_runtime.jsx)(LoginPage_SSOLoginPage["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "sso/login/:name", element: (0,jsx_runtime.jsx)(LoginPage_SSOLoginPage["default"], {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "forgot_password", element: (0,jsx_runtime.jsx)(ResetPassword["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "activate_account/password", element: (0,jsx_runtime.jsx)(activateAccount_SetPasswordPage["default"], {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "dashboard/:token", element: (0,jsx_runtime.jsx)(PublicCustomDashboard_PublicCustomDashboardPage["default"], {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ element: (0,jsx_runtime.jsx)(routesInactive_RequireAuthenticationLoggedInLayout, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "logon", element: (0,jsx_runtime.jsx)(LogOnPage_LogOnPage, {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ element: (0,jsx_runtime.jsx)(pages_UserLayout_UserLayout, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "settings", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "/settings/general" }) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ path: "settings", element: (0,jsx_runtime.jsx)(pages_AccountSettingsPage_AccountSettingsPage, {}) }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "general", element: (0,jsx_runtime.jsx)(accountSettings_AccountInfo["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "general/:themeId", element: (0,jsx_runtime.jsx)(accountSettings_AccountInfo["default"], {}) }), (0,jsx_runtime.jsxs)(react_router_dist/* Route */.qh, routesInactive_assign({ path: "users" }, { children: [(0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(UserSettings["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "create", element: (0,jsx_runtime.jsx)(accountSettings_CreateUser["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: ":userId/edit", element: (0,jsx_runtime.jsx)(accountSettings_EditUser["default"], {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, routesInactive_assign({ path: "administration" }, { children: (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { index: true, element: (0,jsx_runtime.jsx)(Administration["default"], {}) }) })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "social_accounts", element: (0,jsx_runtime.jsx)(accountSettings_ExternalAuthorizations["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "billing", element: (0,jsx_runtime.jsx)(accountSettings_Billing["default"], {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "documents", element: (0,jsx_runtime.jsx)(Documents["default"], {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/not_found", element: (0,jsx_runtime.jsx)(ThemeNotFoundPage_ThemeNotFoundPage, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "profile", element: (0,jsx_runtime.jsx)(ProfilePage_ProfilePage, {}) })] })), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "/settings/general" }) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/*", element: (0,jsx_runtime.jsx)(react_router_dist/* Navigate */.C5, { to: "/settings/general" }) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:themeId/*", element: (0,jsx_runtime.jsx)(hoc_ImpersonateViaTheme, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "themes/:themeId*", element: (0,jsx_runtime.jsx)(hoc_ImpersonateViaTheme, {}) }), (0,jsx_runtime.jsx)(react_router_dist/* Route */.qh, { path: "*", element: (0,jsx_runtime.jsx)(pages_NotFoundPage_NotFoundPage, {}) })] }))] })) }));

// EXTERNAL MODULE: ./node_modules/highcharts/highcharts.js
var highcharts = __webpack_require__("6n/F");
var highcharts_default = /*#__PURE__*/__webpack_require__.n(highcharts);
// EXTERNAL MODULE: ./node_modules/highcharts/highcharts-more.js
var highcharts_more = __webpack_require__("M8aS");
var highcharts_more_default = /*#__PURE__*/__webpack_require__.n(highcharts_more);
;// CONCATENATED MODULE: ./src/utils/charts.ts
function squareSpiral(attempt) {
    var a = attempt * 4;
    var k = Math.ceil((Math.sqrt(a) - 1) / 2);
    var t = 2 * k + 1;
    var m = Math.pow(t, 2);
    var result = null;
    t -= 1;
    if (attempt <= 10000) {
        if (result === null && a >= m - t) {
            result = { x: k - (m - a), y: -k };
        }
        m -= t;
        if (result === null && a >= m - t) {
            result = { x: -k, y: -k + (m - a) };
        }
        m -= t;
        if (result === null) {
            if (a >= m - t) {
                result = { x: -k + (m - a), y: k };
            }
            else {
                result = { x: k, y: k - (m - a - t) };
            }
        }
        result.x *= 5;
        result.y *= 5;
    }
    return result;
}

;// CONCATENATED MODULE: ./src/highcharts.js

function highcharts_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function highcharts_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? highcharts_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : highcharts_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/* eslint new-cap: 0 */







highcharts_more_default()((highcharts_default()));
__webpack_require__("AxlJ")((highcharts_default()));
__webpack_require__("1op0")((highcharts_default()));
__webpack_require__("iTcJ")((highcharts_default()));
__webpack_require__("KIgi")((highcharts_default()));
__webpack_require__("l+Jo")((highcharts_default()));
__webpack_require__("22jQ")((highcharts_default()));
__webpack_require__("xnhV")((highcharts_default()));
__webpack_require__("tvKr")((highcharts_default()));
__webpack_require__("f+99")((highcharts_default()));
__webpack_require__("u4cD")((highcharts_default()));
__webpack_require__("haik")((highcharts_default()));
__webpack_require__("Tos5")((highcharts_default()));
__webpack_require__("2BfV")((highcharts_default()));
__webpack_require__("AxlJ")((highmaps_default()));
__webpack_require__("iTcJ")((highmaps_default()));
__webpack_require__("1op0")((highmaps_default()));
function initHighcharts() {
  var _getColorsByTheme = (0,utils_colors/* getColorsByTheme */.hx)(),
    white = _getColorsByTheme.white,
    textColor = _getColorsByTheme.textColor,
    secondaryTextColor = _getColorsByTheme.secondaryTextColor;
  var exportingBackgroundColor = (0,colorHandler/* isDarkTheme */.g4)() ? '#323232' : '#FFFFFF';
  highcharts_default().setOptions({
    chart: {
      backgroundColor: 'transparent',
      style: {
        fontFamily: '"Twemoji Country Flags", "Inter", "Helvetica Neue", sans-serif'
      }
    },
    boost: {
      enabled: false
    },
    tooltip: {
      backgroundColor: white,
      style: {
        color: textColor,
        opacity: 1
      },
      borderRadius: 8,
      borderWidth: 0,
      padding: 10
    },
    legend: {
      itemStyle: {
        color: textColor
      },
      itemHoverStyle: {
        color: secondaryTextColor
      }
    },
    colors: (0,utils_colors/* getCurrentChartColorScheme */.KK)(),
    yAxis: {
      gridLineColor: (0,colorHandler/* isDarkTheme */.g4)() ? '#424242' : '#EEEEEE',
      labels: {
        style: {
          color: textColor
        }
      }
    },
    xAxis: {
      labels: {
        style: {
          color: textColor
        }
      },
      plotLines: [{
        label: {
          style: {
            color: '#ff1122'
          }
        }
      }]
    },
    lang: {
      downloadCSV: l('Download CSV'),
      downloadJPEG: l('Download JPEG'),
      downloadPDF: l('Download PDF'),
      downloadPNG: l('Download PNG'),
      downloadSVG: l('Download SVG'),
      downloadXLS: l('Download XLS'),
      printChart: l('Print chart'),
      noData: l('No data to display')
    },
    exporting: {
      csv: {
        dateFormat: '%d.%m.%Y %H:%M'
      },
      buttons: {
        contextButton: {
          enabled: false
        }
      },
      chartOptions: {
        chart: {
          backgroundColor: exportingBackgroundColor
        }
      }
    },
    credits: {
      enabled: false
    },
    plotOptions: {
      bar: {
        borderRadius: 4
      },
      column: {
        borderRadius: 4
      },
      networkgraph: {
        link: {
          color: (0,colorHandler/* isDarkTheme */.g4)() ? '#424242' : '#EEEEEE'
        }
      },
      pie: {
        innerSize: '60%'
      },
      series: {
        borderColor: white,
        borderWidth: 1,
        dataLabels: {
          style: {
            fontWeight: 500,
            color: textColor,
            textOutline: 'none'
          }
        }
      }
    }
  });
  highmaps_default().setOptions({
    chart: {
      animation: false,
      backgroundColor: 'transparent',
      style: {
        fontFamily: '"Twemoji Country Flags", "Helvetica Neue", sans-serif'
      }
    },
    tooltip: {
      backgroundColor: white,
      style: {
        color: textColor,
        opacity: 1
      },
      borderRadius: 8
    },
    lang: {
      downloadCSV: l('Download CSV'),
      downloadJPEG: l('Download JPEG'),
      downloadPDF: l('Download PDF'),
      downloadPNG: l('Download PNG'),
      downloadSVG: l('Download SVG'),
      downloadXLS: l('Download XLS'),
      printChart: l('Print chart')
    },
    exporting: {
      buttons: {
        contextButton: {
          enabled: false
        }
      },
      chartOptions: {
        chart: {
          backgroundColor: exportingBackgroundColor
        }
      }
    },
    credits: {
      enabled: false
    },
    colorAxis: highcharts_objectSpread({
      min: 1,
      type: 'logarithmic'
    }, (0,utils_colors/* getGeneralDynamicsColor */.wM)('map')),
    plotOptions: {
      series: {
        nullColor: (0,utils_colors/* getColorsByTheme */.hx)().white,
        cursor: 'pointer',
        states: {
          hover: {
            color: '#88eeb1'
          }
        }
      }
    }
  });

  /**
   * There is an issue with print chart.
   * It has been already fixed in newer highchart versions but
   * as for v.8.1.0 we have been used so far there is such workaround.
   * See https://github.com/highcharts/highcharts/issues/13489
   */
  (highcharts_default()).Chart.prototype.graphLayoutsLookup = [];
  (highcharts_default()).seriesTypes.wordcloud.prototype.spirals.archimedean = function (attempt, params) {
    var result = squareSpiral(attempt, params);
    var jitter = (result.x + result.y) % 15 - 7;
    if (result) {
      result.x *= params.field.ratioX;
      result.y = result.y * params.field.ratioY + jitter;
    }
    return result;
  };
}
/* harmony default export */ const src_highcharts = ({
  Highcharts: (highcharts_default()),
  Highmaps: (highmaps_default())
});
;// CONCATENATED MODULE: ./src/main.js



















window.React = react_namespaceObject;
window.api = apiSingleton/* default */.A;
window.Highcharts = src_highcharts.Highcharts;
window.Highmaps = src_highcharts.Highmaps;
var container = document.getElementById('content');
var root = (0,client/* createRoot */.H)(container);
function loadPolyfills() {
  return _loadPolyfills.apply(this, arguments);
}
function _loadPolyfills() {
  _loadPolyfills = (0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee() {
    return regenerator_default().wrap(function _callee$(_context) {
      while (1) switch (_context.prev = _context.next) {
        case 0:
          if (!(typeof window.IntersectionObserver === 'undefined')) {
            _context.next = 3;
            break;
          }
          _context.next = 3;
          return __webpack_require__.e(/* import() */ 96).then(__webpack_require__.t.bind(__webpack_require__, "Wr5T", 23));
        case 3:
        case "end":
          return _context.stop();
      }
    }, _callee);
  }));
  return _loadPolyfills.apply(this, arguments);
}
var main_history = (0,node_modules_history/* createBrowserHistory */.zR)();
var store = configureStore({}, main_history);
function restoreSessionPromise() {
  return new Promise(function (resolve) {
    return store.dispatch(model/* sessionModel */.S.action.restoreSession({
      callback: resolve
    }));
  });
}
var promises = [(0,i18n/* setLocaleData */.fh)((0,i18n/* detectUserLocale */.$G)(), rerenderApp), restoreSessionPromise(), loadPolyfills()];
Promise.all(promises).then(function () {
  (0,colorHandler/* initColorHandler */.QE)(rerenderApp, initHighcharts);
  renderApp();
  subscribeAppRerenderToAccountStatus();
});
function renderApp() {
  var state = store.getState();
  var appRoutes = (0,account_selectors/* isAccountAccessAllowed */.aL)(state) || !(0,selectors/* isLoggedIn */.M3)(state) ? routes : routesInactive;
  root.render( /*#__PURE__*/(0,jsx_runtime.jsx)(Root_Root, {
    store: store,
    history: main_history,
    routes: appRoutes
  }));
}
function subscribeAppRerenderToAccountStatus() {
  var state = store.getState();
  var isAccountInactive = !(0,account_selectors/* isAccountAccessAllowed */.aL)(state);
  var isUserLoggedIn = (0,selectors/* isLoggedIn */.M3)(state);
  store.subscribe(function () {
    var newState = store.getState();
    var prev = {
      isAccountInactive: isAccountInactive,
      isUserLoggedIn: isUserLoggedIn
    };
    isAccountInactive = !(0,account_selectors/* isAccountAccessAllowed */.aL)(newState);
    isUserLoggedIn = (0,selectors/* isLoggedIn */.M3)(newState);
    if (prev.isAccountInactive !== isAccountInactive || prev.isUserLoggedIn !== isUserLoggedIn) {
      rerenderApp();
    }
  });
}
(0,react_perf_devtool.registerObserver)({
  portNumber: 8020
});
function rerenderApp() {
  root.render( /*#__PURE__*/(0,jsx_runtime.jsx)("div", {}));
  renderApp();
}

/***/ }),

/***/ "mkji":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   gK: () => (/* binding */ types),
/* harmony export */   ls: () => (/* binding */ identify)
/* harmony export */ });
/* unused harmony export track */
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("3o2z");

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }

var types = _objectSpread({}, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .getConstant */ .db)('SET_IDENTIFIED'));
var track = function track(type, options) {
  return {
    type: type,
    eventType: type,
    options: options
  };
};
var identify = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .getAction */ .Th)(types.SET_IDENTIFIED);

/***/ }),

/***/ "n8kL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  Ay: () => (/* binding */ sagas),
  NE: () => (/* binding */ sendEventSaga)
});

// UNUSED EXPORTS: SET_ANALYTICS_DATA

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
var toConsumableArray = __webpack_require__("+BzW");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/regenerator/index.js
var regenerator = __webpack_require__("Kq5O");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/utils/analytics.js
var analytics = __webpack_require__("iyim");
// EXTERNAL MODULE: ./src/utils/intercom.js
var intercom = __webpack_require__("ah7T");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/mentionStream/selectors.ts
var mentionStream_selectors = __webpack_require__("wDA8");
// EXTERNAL MODULE: ./src/state/mentionStream/selected/selectors.ts
var selected_selectors = __webpack_require__("oq+A");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/rootSaga.ts + 1 modules
var rootSaga = __webpack_require__("GEn5");
// EXTERNAL MODULE: ./src/state/stateRouter.ts
var stateRouter = __webpack_require__("tu5+");
// EXTERNAL MODULE: ./src/utils/localStorage.ts
var localStorage = __webpack_require__("S/wQ");
// EXTERNAL MODULE: ./src/state/analytics/actions.js
var analytics_actions = __webpack_require__("mkji");
// EXTERNAL MODULE: ./src/state/analytics/selectors.ts
var analytics_selectors = __webpack_require__("kqWU");
// EXTERNAL MODULE: ./src/state/integrations/selectors.ts
var integrations_selectors = __webpack_require__("SbqI");
// EXTERNAL MODULE: ./src/state/filter/selectors.ts
var filter_selectors = __webpack_require__("0Zyk");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/state/entities-new/selectors.ts + 2 modules
var entities_new_selectors = __webpack_require__("+Oxy");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
;// CONCATENATED MODULE: ./src/state/analytics/utils.js



function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }

var EXCLUDE = 'exclude';
var getFilterNameWithExclude = function getFilterNameWithExclude(name) {
  return [EXCLUDE, name[0].toUpperCase()].concat((0,toConsumableArray/* default */.A)(name.slice(1))).join('');
};
var getFilterNameWithoutExclude = function getFilterNameWithoutExclude(name) {
  var filterName = name.replace(EXCLUDE, '');
  return "".concat(filterName[0].toLowerCase()).concat(filterName.slice(1));
};
var getFilterNames = function getFilterNames(name) {
  return [name, getFilterNameWithExclude(name)];
};
var SINGLE_VALUE_FILTERS = (/* unused pure expression or super */ null && (['indirect', 'tagged']));
var FILTERS_TO_EXCLUDE_VALUE = ['text', 'from', 'to'].concat((0,toConsumableArray/* default */.A)(getFilterNames('channel')), (0,toConsumableArray/* default */.A)(getFilterNames('author')), (0,toConsumableArray/* default */.A)(getFilterNames('tag')), (0,toConsumableArray/* default */.A)(getFilterNames('trend')));
var GROUP_ACTION_NAMES = {
  tags: function tags() {
    return 'set tags';
  },
  sentiment: function sentiment() {
    return 'change sentiment';
  },
  processed: function processed(value) {
    return value ? 'mark processed' : 'mark unprocessed';
  },
  assigneeId: function assigneeId() {
    return 'assign user';
  },
  starred: function starred(value) {
    return value ? 'star' : 'unstar';
  },
  deleted: function deleted(value) {
    return value ? 'delete' : 'restore';
  },
  spam: function spam(value) {
    return value ? 'mark as spam' : 'mark as ham';
  }
};

// eslint-disable-next-line
var getGroupActionName = function getGroupActionName(_ref) {
  var value = _ref.value;
  var messages = value ? Object.keys(value).map(function (key) {
    return GROUP_ACTION_NAMES[key] && GROUP_ACTION_NAMES[key](value[key]);
  }).filter(Boolean) : [];
  return messages.length ? messages[0] : '';
};
var getFilterValue = function getFilterValue(filterName, filterValue) {
  if (FILTERS_TO_EXCLUDE_VALUE.includes(filterName)) {
    return null;
  }
  var unpacked = Iterable.isIterable(filterValue) ? filterValue.toJS() : filterValue;
  return Array.isArray(unpacked) ? unpacked.map(function (v) {
    return v ? v.toString() : v;
  }) : unpacked;
};
var getFilterProperties = function getFilterProperties(name, filterValue) {
  if (SINGLE_VALUE_FILTERS.includes(name)) {
    return [name, {
      excludeValue: Boolean(!filterValue)
    }];
  }
  if (name.includes(EXCLUDE)) {
    return [getFilterNameWithoutExclude(name), {
      excludeValue: true
    }];
  }
  return [name, {
    excludeValue: false
  }];
};
var getFilterEventProperties = function getFilterEventProperties(filterName, filterValue) {
  var value = getFilterValue(filterName, filterValue);
  var _getFilterProperties = getFilterProperties(filterName, value),
    _getFilterProperties2 = _slicedToArray(_getFilterProperties, 2),
    name = _getFilterProperties2[0],
    props = _getFilterProperties2[1];
  return {
    name: name,
    properties: _objectSpread({
      value: value
    }, props)
  };
};

// TODO: NewFilters: add new filter supporting
var groupFilterByType = function groupFilterByType(filters) {
  return filters.reduce(function (acc, item) {
    var _item$info;
    var filterType = item.type;
    var filterValue = ((_item$info = item.info) === null || _item$info === void 0 ? void 0 : _item$info.name) || item.value;
    acc[filterType] = [].concat(_toConsumableArray(acc[filterType] || []), [filterValue]);
    return acc;
  }, {});
};
;// CONCATENATED MODULE: ./src/state/analytics/sagas.js


var _marked = /*#__PURE__*/regenerator_default().mark(sendEventSaga),
  _marked2 = /*#__PURE__*/regenerator_default().mark(APPLY_GROUP_ACTIONS),
  _marked3 = /*#__PURE__*/regenerator_default().mark(FILTER_DUPLICATES),
  _marked4 = /*#__PURE__*/regenerator_default().mark(FETCH_RULES_SUCCESS),
  _marked5 = /*#__PURE__*/regenerator_default().mark(DELETE_RULE_SUCCESS);
function sagas_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function sagas_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? sagas_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : sagas_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }

/* eslint redux-saga/no-unhandled-errors: 0 func-names: 0 */



















function SET_ANALYTICS_DATA(_ref) {
  var currentUser = _ref.currentUser;
  return /*#__PURE__*/regenerator_default().mark(function _callee() {
    var analyticsAccount, userTraits;
    return regenerator_default().wrap(function _callee$(_context) {
      while (1) switch (_context.prev = _context.next) {
        case 0:
          analyticsAccount = (0,analytics/* getCurrentAnalyticsAccount */.zU)();
          if (!(analyticsAccount && analyticsAccount.id && analyticsAccount.id() !== currentUser.accountId)) {
            _context.next = 6;
            break;
          }
          _context.next = 4;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* reset */.cL);
        case 4:
          _context.next = 6;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(intercom/* shutDown */.BP);
        case 6:
          _context.next = 8;
          return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(currentUser_selectors/* getCurrentUserTraits */.Kz);
        case 8:
          userTraits = _context.sent;
          _context.next = 11;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* identify */.ls, currentUser.id, userTraits);
        case 11:
          _context.next = 13;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* group */.Os, currentUser.accountId, {});
        case 13:
          _context.next = 15;
          return (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,analytics_actions/* identify */.ls)());
        case 15:
        case "end":
          return _context.stop();
      }
    }, _callee);
  })();
}
function sendEventSaga(eventType, properties, options) {
  var _accountInfo$subscrip;
  var theme, accountId, origin, isIdentified, accountInfo, props, savedEvents;
  return regenerator_default().wrap(function sendEventSaga$(_context2) {
    while (1) switch (_context2.prev = _context2.next) {
      case 0:
        _context2.next = 2;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(themes_selectors/* getCurrentTheme */.j1);
      case 2:
        theme = _context2.sent;
        _context2.next = 5;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getAccountId */.PU);
      case 5:
        accountId = _context2.sent;
        _context2.next = 8;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getAccountOrigin */.wr);
      case 8:
        origin = _context2.sent;
        _context2.next = 11;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(analytics_selectors/* isIdentified */.m);
      case 11:
        isIdentified = _context2.sent;
        _context2.next = 14;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getAccountInfo */.Gf);
      case 14:
        accountInfo = _context2.sent;
        props = sagas_objectSpread({
          accountId: accountId,
          origin: origin,
          subscriptionPlan: accountInfo === null || accountInfo === void 0 || (_accountInfo$subscrip = accountInfo.subscriptionPlan) === null || _accountInfo$subscrip === void 0 ? void 0 : _accountInfo$subscrip.plan
        }, properties);
        if (theme) {
          props.topic = {
            id: theme.id,
            name: theme.name
          };
        }
        if (!(accountId && isIdentified)) {
          _context2.next = 30;
          break;
        }
        _context2.next = 20;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* extractStashedEvents */.V9);
      case 20:
        savedEvents = _context2.sent;
        if (!savedEvents.length) {
          _context2.next = 24;
          break;
        }
        _context2.next = 24;
        return (0,redux_saga_effects_npm_proxy_esm/* all */.Q7)(savedEvents.map(function (savedEvent) {
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* sendEvent */.BI, savedEvent.eventType, sagas_objectSpread(sagas_objectSpread({}, savedEvent.properties), {}, {
            accountId: accountId
          }));
        }));
      case 24:
        _context2.next = 26;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* clearStashedEvents */.RH);
      case 26:
        _context2.next = 28;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* sendEvent */.BI, eventType, props);
      case 28:
        _context2.next = 37;
        break;
      case 30:
        if (!(options !== null && options !== void 0 && options.isPublic)) {
          _context2.next = 35;
          break;
        }
        _context2.next = 33;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* sendEvent */.BI, eventType, props);
      case 33:
        _context2.next = 37;
        break;
      case 35:
        _context2.next = 37;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* addEventToStash */.UC, {
          eventType: eventType,
          properties: props
        });
      case 37:
      case "end":
        return _context2.stop();
    }
  }, _marked);
}
function genericEventSender(eventType, withFilter) {
  return /*#__PURE__*/regenerator_default().mark(function _callee2() {
    var filter;
    return regenerator_default().wrap(function _callee2$(_context3) {
      while (1) switch (_context3.prev = _context3.next) {
        case 0:
          if (!withFilter) {
            _context3.next = 7;
            break;
          }
          _context3.next = 3;
          return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* getThemeFilter */.Ic);
        case 3:
          filter = _context3.sent;
          _context3.next = 6;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, eventType, {
            filter: filter.toEvent()
          });
        case 6:
          return _context3.abrupt("return", _context3.sent);
        case 7:
          _context3.next = 9;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, eventType);
        case 9:
          return _context3.abrupt("return", _context3.sent);
        case 10:
        case "end":
          return _context3.stop();
      }
    }, _callee2);
  });
}
var genericMentionCommandEventSender = function genericMentionCommandEventSender(eventType) {
  return function (_ref2) {
    var mentionIds = _ref2.mentionIds,
      integrationId = _ref2.integrationId;
    return /*#__PURE__*/regenerator_default().mark(function _callee3() {
      var filter, totalMentionsCount, isAllMentionsSelected, mentionCount, integration, integrationTypeObj, mentions, sourceNames, resourceTypes, eventProperties;
      return regenerator_default().wrap(function _callee3$(_context4) {
        while (1) switch (_context4.prev = _context4.next) {
          case 0:
            _context4.next = 2;
            return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* getThemeFilter */.Ic);
          case 2:
            filter = _context4.sent;
            _context4.next = 5;
            return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(mentionStream_selectors/* getTotalMentions */.or);
          case 5:
            totalMentionsCount = _context4.sent;
            _context4.next = 8;
            return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selected_selectors/* isAllSelected */.dE);
          case 8:
            isAllMentionsSelected = _context4.sent;
            mentionCount = isAllMentionsSelected ? totalMentionsCount : mentionIds.length;
            _context4.t0 = integrationId;
            if (!_context4.t0) {
              _context4.next = 15;
              break;
            }
            _context4.next = 14;
            return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(integrations_selectors/* getIntegrationById */.rs, integrationId);
          case 14:
            _context4.t0 = _context4.sent;
          case 15:
            integration = _context4.t0;
            integrationTypeObj = integrationId && {
              integrationType: integration.type
            };
            _context4.next = 19;
            return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(mentionStream_selectors/* getMentionsByIds */.$N, mentionIds);
          case 19:
            mentions = _context4.sent;
            sourceNames = mentions.reduce(function (acc, _ref3) {
              var source = _ref3.source;
              return acc.add(source === null || source === void 0 ? void 0 : source.name);
            }, new Set());
            resourceTypes = mentions.reduce(function (acc, _ref4) {
              var resourceType = _ref4.resourceType;
              return acc.add(resourceType);
            }, new Set());
            eventProperties = sagas_objectSpread({
              filter: filter.toEvent(),
              mentionCount: mentionCount,
              isAllMentionsSelected: isAllMentionsSelected,
              source: (0,toConsumableArray/* default */.A)(sourceNames).filter(function (x) {
                return x;
              }),
              resourceType: (0,toConsumableArray/* default */.A)(resourceTypes).filter(function (x) {
                return x;
              }),
              mentionIds: mentionIds
            }, integrationTypeObj);
            _context4.next = 25;
            return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, eventType, eventProperties);
          case 25:
          case "end":
            return _context4.stop();
        }
      }, _callee3);
    })();
  };
};
function EXCLUDE_AUTHOR(_ref5) {
  var authorId = _ref5.authorId;
  return /*#__PURE__*/regenerator_default().mark(function _callee4() {
    return regenerator_default().wrap(function _callee4$(_context5) {
      while (1) switch (_context5.prev = _context5.next) {
        case 0:
          _context5.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Author: excluded', {
            authorId: authorId
          });
        case 2:
        case "end":
          return _context5.stop();
      }
    }, _callee4);
  })();
}
function EXCLUDE_SOURCE(_ref6) {
  var sourceId = _ref6.sourceId;
  return /*#__PURE__*/regenerator_default().mark(function _callee5() {
    var sources, sourceName;
    return regenerator_default().wrap(function _callee5$(_context6) {
      while (1) switch (_context6.prev = _context6.next) {
        case 0:
          _context6.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(entities_new_selectors/* getSourceEntities */.tw);
        case 2:
          sources = _context6.sent;
          sourceName = sources[sourceId].name;
          _context6.next = 6;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Source: excluded', {
            sourceId: sourceId,
            sourceName: sourceName
          });
        case 6:
        case "end":
          return _context6.stop();
      }
    }, _callee5);
  })();
}
function EXCLUDE_CHANNEL(_ref7) {
  var channelId = _ref7.channelId;
  return /*#__PURE__*/regenerator_default().mark(function _callee6() {
    return regenerator_default().wrap(function _callee6$(_context7) {
      while (1) switch (_context7.prev = _context7.next) {
        case 0:
          _context7.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Channel: excluded', {
            channelId: channelId
          });
        case 2:
        case "end":
          return _context7.stop();
      }
    }, _callee6);
  })();
}
function APPLY_GROUP_ACTIONS(action) {
  var filter, mentionCount;
  return regenerator_default().wrap(function APPLY_GROUP_ACTIONS$(_context8) {
    while (1) switch (_context8.prev = _context8.next) {
      case 0:
        _context8.next = 2;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* getThemeFilter */.Ic);
      case 2:
        filter = _context8.sent;
        _context8.next = 5;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selected_selectors/* getRealSelectedMentionCount */.R9);
      case 5:
        mentionCount = _context8.sent;
        _context8.next = 8;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Mentions stream: group action applied', {
          filter: filter.toEvent(),
          action: getGroupActionName(action),
          mentionCount: mentionCount
        });
      case 8:
      case "end":
        return _context8.stop();
    }
  }, _marked2);
}
function CHANGE_ORDER_BY(_ref8) {
  var orderBy = _ref8.orderBy;
  return /*#__PURE__*/regenerator_default().mark(function _callee7() {
    return regenerator_default().wrap(function _callee7$(_context9) {
      while (1) switch (_context9.prev = _context9.next) {
        case 0:
          _context9.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Mention stream: sorted', {
            type: orderBy
          });
        case 2:
        case "end":
          return _context9.stop();
      }
    }, _callee7);
  })();
}
function FILTER_DUPLICATES() {
  var filter;
  return regenerator_default().wrap(function FILTER_DUPLICATES$(_context10) {
    while (1) switch (_context10.prev = _context10.next) {
      case 0:
        _context10.next = 2;
        return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* getThemeFilter */.Ic);
      case 2:
        filter = _context10.sent;
        _context10.next = 5;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Mention: duplicates opened', {
          filter: filter.toEvent()
        });
      case 5:
      case "end":
        return _context10.stop();
    }
  }, _marked3);
}
function OPEN_MODAL_SAGA(_ref9) {
  var payload = _ref9.payload;
  return /*#__PURE__*/regenerator_default().mark(function _callee8() {
    return regenerator_default().wrap(function _callee8$(_context11) {
      while (1) switch (_context11.prev = _context11.next) {
        case 0:
          if (!(payload.modal === 'createRule' || payload.modal === 'createRule_new')) {
            _context11.next = 4;
            break;
          }
          _context11.next = 3;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Rule: creation initiated');
        case 3:
          return _context11.abrupt("return", _context11.sent);
        case 4:
        case "end":
          return _context11.stop();
      }
    }, _callee8);
  })();
}
function LOCATION_CHANGE_SAGA(_ref10) {
  var payload = _ref10.payload;
  return /*#__PURE__*/regenerator_default().mark(function _callee9() {
    var reportPaths, pathname, filter, reportType, event, _payload$query;
    return regenerator_default().wrap(function _callee9$(_context12) {
      while (1) switch (_context12.prev = _context12.next) {
        case 0:
          reportPaths = {
            tags: 'dashboard/tags',
            demographics: 'dashboard/demographics',
            sentiment: 'dashboard/sentiment',
            aspects: 'dashboard/aspects',
            sources: 'dashboard/sources',
            wordCloud: 'dashboard/wordcloud',
            visualInsights: 'dashboard/visual',
            overview: '/dashboard'
          };
          pathname = payload.pathname;
          _context12.next = 4;
          return (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* getThemeFilter */.Ic);
        case 4:
          filter = _context12.sent;
          if (!(pathname && pathname === '/themes')) {
            _context12.next = 8;
            break;
          }
          _context12.next = 8;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Theme list: loaded');
        case 8:
          if (!(pathname && pathname.includes('dashboard') && !pathname.includes('dashboards'))) {
            _context12.next = 12;
            break;
          }
          reportType = Object.keys(reportPaths).find(function (type) {
            return pathname.includes(reportPaths[type]);
          });
          _context12.next = 12;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, "Analytics report ".concat(reportType, ": loaded"), {
            filter: filter.toEvent()
          });
        case 12:
          if (!(pathname && pathname.includes('compare'))) {
            _context12.next = 15;
            break;
          }
          _context12.next = 15;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Topic comparison: loaded', {
            filter: filter.toEvent()
          });
        case 15:
          if (!(pathname && pathname.includes('mentions') && payload.action === 'PUSH')) {
            _context12.next = 24;
            break;
          }
          event = {
            filter: filter.toEvent()
          };
          if (payload.query.processed) {
            event.processed = payload.query.processed;
          }
          if (payload.query.starred) {
            event.starred = payload.query.starred;
          }
          if (payload.query.assigned) {
            event.assigned = payload.query.assigned;
          }
          if (payload.query.spam) {
            event.spam = payload.query.spam;
          }
          if (payload.query.deleted) {
            event.deleted = payload.query.deleted;
          }
          _context12.next = 24;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Mention stream: opened', event);
        case 24:
          if (!(pathname && pathname.includes('mentions') && payload.action === 'POP' && payload.query.trackingLinkType)) {
            _context12.next = 29;
            break;
          }
          _context12.next = 27;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Mention stream: opened', {
            filter: filter.toEvent(),
            trackingLinkType: payload.query.trackingLinkType
          });
        case 27:
          _context12.next = 29;
          return (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* update */.yo)(sagas_objectSpread(sagas_objectSpread({}, payload), {}, {
            query: sagas_objectSpread(sagas_objectSpread({}, payload.query), {}, {
              trackingLinkType: undefined
            })
          })));
        case 29:
          if (!(pathname && pathname.includes('billing'))) {
            _context12.next = 32;
            break;
          }
          _context12.next = 32;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Billing: billing paged opened');
        case 32:
          if (!(pathname && pathname.includes('me/role'))) {
            _context12.next = 35;
            break;
          }
          _context12.next = 35;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'BusinessRole: page opened');
        case 35:
          if (!(pathname && pathname.includes('digest'))) {
            _context12.next = 38;
            break;
          }
          _context12.next = 38;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Digest: opened', {
            trackingLinkType: (_payload$query = payload.query) === null || _payload$query === void 0 ? void 0 : _payload$query.trackingLinkType
          });
        case 38:
          if (!(pathname && pathname.includes('authors'))) {
            _context12.next = 41;
            break;
          }
          _context12.next = 41;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Authors: opened', {
            filter: filter.toEvent()
          });
        case 41:
        case "end":
          return _context12.stop();
      }
    }, _callee9);
  })();
}
function FETCH_RULES_SUCCESS() {
  return regenerator_default().wrap(function FETCH_RULES_SUCCESS$(_context13) {
    while (1) switch (_context13.prev = _context13.next) {
      case 0:
        _context13.next = 2;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Rules: list loaded');
      case 2:
      case "end":
        return _context13.stop();
    }
  }, _marked4);
}
function CREATE_RULE_SUCCESS(_ref11) {
  var actions = _ref11.actions,
    filter = _ref11.filter;
  return /*#__PURE__*/regenerator_default().mark(function _callee10() {
    return regenerator_default().wrap(function _callee10$(_context14) {
      while (1) switch (_context14.prev = _context14.next) {
        case 0:
          _context14.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Rule: created', {
            filter: filter,
            actions: actions && Object.keys(actions)
          });
        case 2:
        case "end":
          return _context14.stop();
      }
    }, _callee10);
  })();
}
function DELETE_RULE_SUCCESS() {
  return regenerator_default().wrap(function DELETE_RULE_SUCCESS$(_context15) {
    while (1) switch (_context15.prev = _context15.next) {
      case 0:
        _context15.next = 2;
        return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Rule: deleted');
      case 2:
      case "end":
        return _context15.stop();
    }
  }, _marked5);
}
function TEST_INTEGRATION(_ref12) {
  var integrationType = _ref12.integrationType,
    settings = _ref12.settings;
  return /*#__PURE__*/regenerator_default().mark(function _callee11() {
    var _yield$race, success, failure;
    return regenerator_default().wrap(function _callee11$(_context16) {
      while (1) switch (_context16.prev = _context16.next) {
        case 0:
          _context16.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'Integration: test', {
            settings: settings,
            type: integrationType
          });
        case 2:
          _context16.next = 4;
          return (0,redux_saga_effects_npm_proxy_esm/* race */.O4)({
            success: (0,redux_saga_effects_npm_proxy_esm/* take */.s)('TEST_INTEGRATION_SUCCESS'),
            failure: (0,redux_saga_effects_npm_proxy_esm/* take */.s)('TEST_INTEGRATION_FAILURE')
          });
        case 4:
          _yield$race = _context16.sent;
          success = _yield$race.success;
          failure = _yield$race.failure;
          _context16.next = 9;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, success ? 'Integration: test succeeded' : 'Integration: test failed', {
            settings: settings,
            type: integrationType,
            result: success ? {
              themeId: success.themeId
            } : failure
          });
        case 9:
        case "end":
          return _context16.stop();
      }
    }, _callee11);
  })();
}
function CREATE_USER(_ref13) {
  var user = _ref13.user;
  return /*#__PURE__*/regenerator_default().mark(function _callee12() {
    return regenerator_default().wrap(function _callee12$(_context17) {
      while (1) switch (_context17.prev = _context17.next) {
        case 0:
          _context17.next = 2;
          return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sendEventSaga, 'User: created', {
            user: user
          });
        case 2:
        case "end":
          return _context17.stop();
      }
    }, _callee12);
  })();
}
var mentionCommandsEvents = {
  MARK_AS_SPAM_MENTIONS: 'Mention: spam reported',
  MARK_AS_HAM_MENTIONS: 'Mention: spam restored',
  RESTORE_MENTIONS: 'Mention: restored',
  SET_SENTIMENT_MENTIONS: 'Mention: sentiment changed',
  MARK_UNPROCESSED_MENTIONS: 'Mention: marked unprocessed',
  ASSIGN_MENTIONS: 'Mention: assigned',
  ADD_NOTE_MENTIONS: 'Mention: note added',
  STAR_MENTIONS: 'Mention: favorite set',
  SET_TAGS_MENTIONS: 'Mention: tags set',
  SEND_TO_INTEGRATION_MENTIONS: 'Mention: sent to integration',
  DELETE_MENTIONS: 'Mention: deleted',
  MARK_PROCESSED_MENTIONS: 'Mention: marked processed'
};
var selectedMentionsEvents = {
  SELECT_ALL_MENTIONS: 'Mentions stream: all selected',
  SELECT_MENTIONS_ON_PAGE: 'Mentions stream: page selected'
};
var mentionCommandsEventTypes = Object.keys(mentionCommandsEvents);
var selectedMentionsEventTypes = Object.keys(selectedMentionsEvents);
/* harmony default export */ const sagas = (rootSaga/* createAggregationSaga */.z.apply(void 0, [[redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'EXCLUDE_AUTHOR', EXCLUDE_AUTHOR], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'EXCLUDE_SOURCE', EXCLUDE_SOURCE], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'EXCLUDE_CHANNEL', EXCLUDE_CHANNEL], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'VERIFY_PASSWORD_TOKEN_SUCCESS', SET_ANALYTICS_DATA], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'CHANGE_ORDER_BY', CHANGE_ORDER_BY], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'FILTER_DUPLICATES', FILTER_DUPLICATES], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, '@redux-modal/SHOW', OPEN_MODAL_SAGA], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, stateRouter/* ROUTER_LOCATION_CHANGE */.Bb, LOCATION_CHANGE_SAGA], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'FETCH_RULES_SUCCESS', FETCH_RULES_SUCCESS], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'CREATE_RULE_SUCCESS', CREATE_RULE_SUCCESS], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'DELETE_RULE_SUCCESS', DELETE_RULE_SUCCESS], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'TEST_INTEGRATION', TEST_INTEGRATION], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'APPLY_GROUP_ACTIONS', APPLY_GROUP_ACTIONS], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, 'CREATE_USER_SUCCESS', CREATE_USER]].concat((0,toConsumableArray/* default */.A)(mentionCommandsEventTypes.map(function (type) {
  return [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, type, genericMentionCommandEventSender(mentionCommandsEvents[type])];
})), (0,toConsumableArray/* default */.A)(selectedMentionsEventTypes.map(function (type) {
  return [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, type, genericEventSender(selectedMentionsEvents[type], true)];
})))));

/***/ }),

/***/ "0w9K":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  Ay: () => (/* binding */ reducer),
  bl: () => (/* binding */ defaultEntities)
});

// UNUSED EXPORTS: original

// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./node_modules/redux-immutable/dist/index.js
var dist = __webpack_require__("0R0V");
// EXTERNAL MODULE: ./src/state/entities/ui/actions.js
var actions = __webpack_require__("iY5o");
;// CONCATENATED MODULE: ./src/state/entities/ui/utils.js
/* eslint import/prefer-default-export: 0 */


var merger = function merger(oldVal, newVal) {
  if (immutable.List.isList(oldVal) && immutable.List.isList(newVal)) {
    return oldVal.concat(newVal);
  }
  if (immutable.Iterable.isIterable(oldVal)) {
    return oldVal.mergeDeep(newVal);
  }
  return newVal;
};
function mergeInState(prevState, keyList, value) {
  return keyList.reduce(function (state, key) {
    var prev = state.get(key);
    return prev ? state.set(key, prev.mergeWith(merger, value)) : state.set(key, (0,immutable.fromJS)(value));
  }, prevState);
}
;// CONCATENATED MODULE: ./src/state/entities/ui/reducer.js



function uiState() {
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultEntities;
  var action = arguments.length > 1 ? arguments[1] : undefined;
  switch (action.type) {
    case actions/* types */.gK.UPDATE_UI_ENTITIES:
      {
        return state.set(action.entity, mergeInState(state.get(action.entity), action.ids, action.value));
      }
    case actions/* types */.gK.CLEAR_UI_ENTITIES:
      {
        return action.entity ? state.set(action.entity, defaultEntities.get(action.entity)) : defaultEntities;
      }
    default:
      {
        return state;
      }
  }
}
;// CONCATENATED MODULE: ./src/state/entities/reducer.js



var defaultEntities = (0,immutable.fromJS)({
  authors: {},
  channels: {},
  geos: {},
  history: {},
  integrations: {},
  mentions: {},
  reports: {},
  rules: {},
  sources: {},
  tags: {},
  tasks: {},
  themes: {},
  trends: {},
  users: {},
  logos: {},
  supportedLogos: {}
});
function original() {
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultEntities;
  var action = arguments.length > 1 ? arguments[1] : undefined;
  if (action.entities) {
    var newEntities = (0,immutable.fromJS)(action.entities).map(function (x) {
      return x.mapKeys(function (key) {
        return isNaN(Number(key)) ? key : Number(key);
      });
    });
    return newEntities.reduce(function (newState, value, key) {
      return newState.set(key, newState.get(key).merge(value));
    }, state);
  }
  return state;
}
/* harmony default export */ const reducer = ((0,dist/* combineReducers */.H)({
  original: original,
  ui: uiState
}));

/***/ }),

/***/ "Z+iQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  fU: () => (/* binding */ getAuthorEntities),
  JK: () => (/* binding */ getChannelEntities),
  UQ: () => (/* binding */ getFilterEntities),
  vQ: () => (/* binding */ getGeoEntities),
  CD: () => (/* binding */ getLogosEntities),
  W2: () => (/* binding */ getMentionEntities),
  tw: () => (/* binding */ getSourceEntities),
  ul: () => (/* binding */ getTagEntities),
  PW: () => (/* binding */ getThemeEntities),
  zR: () => (/* binding */ getTrendEntities)
});

// UNUSED EXPORTS: getAuthorOriginalEntities, getChannelOriginalEntities, getGeoOriginalEntities, getIntegrationEntities, getIntegrationOriginalEntities, getLogosOriginalEntities, getMentionOriginalEntities, getReportEntities, getReportOriginalEntities, getRuleEntities, getRuleOriginalEntities, getSourceOriginalEntities, getSubjectOriginalEntities, getSubjectsEntities, getSupportedLogosEntities, getSupportedLogosOriginalEntities, getTagOriginalEntities, getTaskEntities, getTaskOriginalEntities, getThemeOriginalEntities, getTrendOriginalEntities, getUserEntities, getUserOriginalEntities

// EXTERNAL MODULE: ./node_modules/reselect/es/index.js + 1 modules
var es = __webpack_require__("XFM9");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
;// CONCATENATED MODULE: ./src/state/entities/ui/selectors.js
var getMentionUiEntities = function getMentionUiEntities(state) {
  return state.entities.getIn(['ui', 'mentions']);
};
var getAuthorUiEntities = function getAuthorUiEntities(state) {
  return state.entities.getIn(['ui', 'authors']);
};
var getChannelUiEntities = function getChannelUiEntities(state) {
  return state.entities.getIn(['ui', 'channels']);
};
var getSourceUiEntities = function getSourceUiEntities(state) {
  return state.entities.getIn(['ui', 'sources']);
};
var getSubjectUiEntities = function getSubjectUiEntities(state) {
  return state.entities.getIn(['ui', 'subjects']);
};
var getThemeUiEntities = function getThemeUiEntities(state) {
  return state.entities.getIn(['ui', 'themes']);
};
var getIntegrationUiEntities = function getIntegrationUiEntities(state) {
  return state.entities.getIn(['ui', 'integrations']);
};
var getTrendUiEntities = function getTrendUiEntities(state) {
  return state.entities.getIn(['ui', 'trends']);
};
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/state/entities/utils.js



function mergeMention(original, ui) {
  if (!ui) return original;
  var uiTags = ui.get('tags') || new immutable.Map();
  var uiSystemTags = ui.get('systemTags') || new immutable.Map();
  var uiSubjects = ui.get('subjects') || new immutable.Map();
  var uiAspects = ui.get('aspects') || new immutable.Map();
  var uiImageBrands = ui.get('imageBrands') || new immutable.Map();
  var uiImageActivities = ui.get('imageActivities') || new immutable.Map();
  var uiImageColors = ui.get('imageColors') || new immutable.Map();
  var uiImageObjects = ui.get('imageObjects') || new immutable.Map();
  var uiImagePeople = ui.get('imagePeople') || new immutable.Map();
  var uiImageContentSensitivity = ui.get('imageContentSensitivity') || new immutable.Map();
  var uiImageScenes = ui.get('imageScenes') || new immutable.Map();
  var uiImageType = ui.get('imageType') || new immutable.Map();
  var uiImageSubtype = ui.get('imageSubtype') || new immutable.Map();
  var uiIntegrations = ui.get('integrations') || new immutable.Map();
  return mergeEntity(original, ui).set('tags', overrideEntityKeys('tags', original, uiTags)).set('systemTags', overrideEntityKeys('systemTags', original, uiSystemTags)).set('subjects', overrideEntityKeys('subjects', original, uiSubjects)).set('aspects', overrideSentimentEntityKeys('aspects', original, uiAspects)).set('integrations', overrideIntegrationEntityKeys('integrations', original, uiIntegrations)).set('imageBrands', overrideVIEntityKeys('imageBrands', original, uiImageBrands)).set('imageActivities', overrideVIEntityKeys('imageActivities', original, uiImageActivities)).set('imageColors', overrideVIEntityKeys('imageColors', original, uiImageColors)).set('imageObjects', overrideVIEntityKeys('imageObjects', original, uiImageObjects)).set('imagePeople', overrideVIEntityKeys('imagePeople', original, uiImagePeople)).set('imageContentSensitivity', overrideVIEntityKeys('imageContentSensitivity', original, uiImageContentSensitivity)).set('imageScenes', overrideVIEntityKeys('imageScenes', original, uiImageScenes)).set('imageType', overrideSingleValueEntityKeys('imageType', original, uiImageType)).set('imageSubtype', overrideSingleValueEntityKeys('imageSubtype', original, uiImageSubtype));
}
function overrideSingleValueEntityKeys(key, original, uiData) {
  var originalValue = original.get(key);
  var newValue = uiData.findKey(Boolean) || '';
  if (!newValue && originalValue) {
    return uiData.get(originalValue) !== false ? originalValue : '';
  }
  return newValue;
}
function overrideVIEntityKeys(key, original, uiData) {
  var originalData = original.get(key) || new immutable.List();
  var originalPropName = key === 'imageColors' ? 'color' : 'label';
  return originalData.filter(function (k) {
    return uiData.get(k.get(originalPropName)) !== false;
  }).concat(uiData.map(function (v, k) {
    return v && !originalData.some(function (val) {
      return val.get(originalPropName) === k;
    }) ? new immutable.Map((0,defineProperty/* default */.A)({}, originalPropName, k)) : null;
  }).filter(function (d) {
    return d;
  }).toList());
}

// TODO REMOVE DEPRECATED ASPECTS USAGE
function overrideSentimentEntityKeys(key, original, uiData) {
  var originalData = original.get(key) || new immutable.List();
  var mappedUiData = uiData.map(function (isSelected, k) {
    var parts = k.split('_');
    var sentiment = parts.length > 1 ? parts[parts.length - 1] : null;
    var aspect = sentiment ? k.replace("_".concat(sentiment), '') : k;
    return new immutable.Map({
      aspect: aspect,
      sentiment: sentiment,
      id: k,
      selected: isSelected
    });
  }).toList();
  var mappedUiDataAspects = mappedUiData.map(function (v) {
    return v.get('aspect');
  });
  return originalData.filter(function (value) {
    return !mappedUiDataAspects.includes(value.get('aspect'));
  }).concat(mappedUiData.filter(function (value) {
    return value.get('selected');
  }).map(function (value) {
    return value["delete"]('selected');
  }));
}
function overrideEntityKeys(key, original, uiData) {
  var originalData = original.get(key) || new immutable.List();
  return originalData.filter(function (originalKey) {
    return uiData.get(originalKey) !== false;
  }).concat(uiData.filter(function (uiKey) {
    return uiKey;
  }).map(function (v, k) {
    return k;
  }).toList()).filter(function (subject, position, array) {
    return array.indexOf(subject) === position;
  });
}
function overrideIntegrationEntityKeys(key, original, uiData) {
  var originalData = original.get(key) || new immutable.List();
  return originalData.concat(uiData);
}
function mergeEntity(original, ui) {
  return ui ? original.mergeDeep(ui) : original;
}
function addTagDefaultColor(tag) {
  return tag && tag.get('color') ? tag : tag.set('color', colors/* tagsDefaultColor */.QX);
}
;// CONCATENATED MODULE: ./src/state/entities/selectors.js




var getMentionOriginalEntities = function getMentionOriginalEntities(state) {
  return state.entities.getIn(['original', 'mentions']);
};
var getAuthorOriginalEntities = function getAuthorOriginalEntities(state) {
  return state.entities.getIn(['original', 'authors']);
};
var getChannelOriginalEntities = function getChannelOriginalEntities(state) {
  return state.entities.getIn(['original', 'channels']);
};
var getReportOriginalEntities = function getReportOriginalEntities(state) {
  return state.entities.getIn(['original', 'reports']);
};
var getSourceOriginalEntities = function getSourceOriginalEntities(state) {
  return state.entities.getIn(['original', 'sources']);
};
var getSubjectOriginalEntities = function getSubjectOriginalEntities(state) {
  return state.entities.getIn(['original', 'subjects']);
};
var getTagOriginalEntities = function getTagOriginalEntities(state) {
  var _state$entities$getIn;
  return (_state$entities$getIn = state.entities.getIn(['original', 'tags'])) === null || _state$entities$getIn === void 0 ? void 0 : _state$entities$getIn.map(addTagDefaultColor);
};
var getTrendOriginalEntities = function getTrendOriginalEntities(state) {
  return state.entities.getIn(['original', 'trends']);
};
var getThemeOriginalEntities = function getThemeOriginalEntities(state) {
  return state.entities.getIn(['original', 'themes']);
};
var getTaskOriginalEntities = function getTaskOriginalEntities(state) {
  return state.entities.getIn(['original', 'tasks']);
};
var getUserOriginalEntities = function getUserOriginalEntities(state) {
  return state.entities.getIn(['original', 'users']);
};
var getRuleOriginalEntities = function getRuleOriginalEntities(state) {
  return state.entities.getIn(['original', 'rules']);
};
var getIntegrationOriginalEntities = function getIntegrationOriginalEntities(state) {
  return state.entities.getIn(['original', 'integrations']);
};
var getGeoOriginalEntities = function getGeoOriginalEntities(state) {
  return state.entities.getIn(['original', 'geos']);
};
var getLogosOriginalEntities = function getLogosOriginalEntities(state) {
  return state.entities.getIn(['original', 'logos']);
};
var getSupportedLogosOriginalEntities = function getSupportedLogosOriginalEntities(state) {
  return state.entities.getIn(['original', 'supportedLogos']);
};
var getMentionEntities = (0,es/* createSelector */.Mz)(getMentionOriginalEntities, getMentionUiEntities, function (originalEntities, uiEntities) {
  return originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities.get(originalEntity.get('id'));
    return mergeMention(originalEntity, uiEntity);
  });
});
var getAuthorEntities = (0,es/* createSelector */.Mz)(getAuthorOriginalEntities, getAuthorUiEntities, function (originalEntities, uiEntities) {
  return originalEntities === null || originalEntities === void 0 ? void 0 : originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities === null || uiEntities === void 0 ? void 0 : uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  });
});
var getChannelEntities = (0,es/* createSelector */.Mz)(getChannelOriginalEntities, getChannelUiEntities, function (originalEntities, uiEntities) {
  return originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities === null || uiEntities === void 0 ? void 0 : uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  });
});
var getSourceEntities = (0,es/* createSelector */.Mz)(getSourceOriginalEntities, getSourceUiEntities, function (originalEntities, uiEntities) {
  return originalEntities === null || originalEntities === void 0 ? void 0 : originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities === null || uiEntities === void 0 ? void 0 : uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  });
});
var getSubjectsEntities = (0,es/* createSelector */.Mz)(getSubjectOriginalEntities, getSubjectUiEntities, function (originalEntities, uiEntities) {
  return (originalEntities === null || originalEntities === void 0 ? void 0 : originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities === null || uiEntities === void 0 ? void 0 : uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  })) || (0,immutable.Map)();
});
var getThemeEntities = (0,es/* createSelector */.Mz)(getThemeOriginalEntities, getThemeUiEntities, function (originalEntities, uiEntities) {
  return originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  });
});
var getTagEntities = (0,es/* createSelector */.Mz)(getTagOriginalEntities, function (entities) {
  return entities;
});
var getTrendEntities = (0,es/* createSelector */.Mz)(getTrendOriginalEntities, getTrendUiEntities, function (originalEntities, uiEntities) {
  return originalEntities === null || originalEntities === void 0 ? void 0 : originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities === null || uiEntities === void 0 ? void 0 : uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  });
});
var getUserEntities = (0,es/* createSelector */.Mz)(getUserOriginalEntities, function (entities) {
  return entities;
});
var getReportEntities = (0,es/* createSelector */.Mz)(getReportOriginalEntities, function (entities) {
  return entities;
});
var getTaskEntities = (0,es/* createSelector */.Mz)(getTaskOriginalEntities, function (entities) {
  return entities;
});
var getRuleEntities = (0,es/* createSelector */.Mz)(getRuleOriginalEntities, function (entities) {
  return entities;
});
var getGeoEntities = (0,es/* createSelector */.Mz)(getGeoOriginalEntities, function (entities) {
  return entities;
});
var getLogosEntities = (0,es/* createSelector */.Mz)(getLogosOriginalEntities, function (entities) {
  return entities;
});
var getSupportedLogosEntities = (0,es/* createSelector */.Mz)(getSupportedLogosOriginalEntities, function (entities) {
  return entities;
});
var getIntegrationEntities = (0,es/* createSelector */.Mz)(getIntegrationOriginalEntities, getSourceUiEntities, function (originalEntities, uiEntities) {
  return originalEntities.map(function (originalEntity) {
    var uiEntity = uiEntities === null || uiEntities === void 0 ? void 0 : uiEntities.get(originalEntity.get('id'));
    return mergeEntity(originalEntity, uiEntity);
  });
});
var getFilterEntities = (0,es/* createSelector */.Mz)(getTagEntities, getSourceEntities, getAuthorEntities, getChannelEntities, getTrendEntities, getGeoEntities, function (tags, sources, authors, channels, trends, geos) {
  return {
    tags: tags,
    sources: sources,
    authors: authors,
    channels: channels,
    trends: trends,
    geos: geos
  };
});

/***/ }),

/***/ "iY5o":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   BO: () => (/* binding */ updateUiChannel),
/* harmony export */   Qi: () => (/* binding */ updateUiTrends),
/* harmony export */   gK: () => (/* binding */ types),
/* harmony export */   hw: () => (/* binding */ updateUiIntegrations),
/* harmony export */   kP: () => (/* binding */ clearUiEntityState),
/* harmony export */   m_: () => (/* binding */ updateUiSources),
/* harmony export */   mn: () => (/* binding */ updateUiAuthors),
/* harmony export */   qw: () => (/* binding */ updateUiThemes)
/* harmony export */ });
/* unused harmony exports updateUiEntities, updateUiMentions, updateUiTags, updateUiUsers */
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("3o2z");

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }

var types = _objectSpread(_objectSpread({}, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .getConstant */ .db)('UPDATE_UI_ENTITIES')), (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .getConstant */ .db)('CLEAR_UI_ENTITIES'));
var updateUiEntities = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .getAction */ .Th)(types.UPDATE_UI_ENTITIES);
var updateUiMentions = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'mentions'
});
var updateUiAuthors = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'authors'
});
var updateUiChannel = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'channels'
});
var updateUiSources = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'sources'
});
var updateUiTags = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'tags'
});
var updateUiUsers = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'users'
});
var updateUiThemes = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'themes'
});
var updateUiIntegrations = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'integrations'
});
var updateUiTrends = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .enhanceAction */ .z8)(updateUiEntities, {
  entity: 'trends'
});
var clearUiEntityState = (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .getAction */ .Th)(types.CLEAR_UI_ENTITIES);

/***/ }),

/***/ "d/15":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   X: () => (/* binding */ mergeAspectFacetsWithAspectList),
/* harmony export */   q: () => (/* binding */ filterTypeToAggregationTypeMapping)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("oYSA");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_1__);


function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/* eslint import/prefer-default-export: 0 */


var filterTypeToAggregationTypeMapping = {
  age: 'authorAge',
  aspect: 'aspects',
  author: 'authors',
  channel: 'channels',
  cityId: 'cityIds',
  collectionMethod: 'collectionMethods',
  contentType: 'contentTypes',
  countryGroup: 'countryGroups',
  country: 'countries',
  gender: 'authorGender',
  authorInterests: 'authorInterests',
  authorInterestCategories: 'authorInterestCategories',
  authorJobs: 'authorJobs',
  host: 'host',
  imageActivities: 'imageActivities',
  imageBrand: 'imageBrands',
  imageColors: 'imageColors',
  imageObject: 'imageObjects',
  imagePeople: 'imagePeople',
  imageContentSensitivity: 'imageContentSensitivities',
  imageScene: 'imageScenes',
  imageSubtype: 'imageSubtypes',
  imageType: 'imageTypes',
  indirect: 'indirect',
  language: 'languages',
  link: 'link',
  origin: 'origins',
  postType: 'postTypes',
  regionId: 'regionIds',
  resourceType: 'resourceTypes',
  sentiment: 'sentiment',
  sentimentAffect: 'sentimentAffects',
  sentimentAspects: 'sentimentAspects',
  source: 'sources',
  subject: 'subjects',
  systemTag: 'systemTags',
  tag: 'tags',
  trend: 'trends'
};
var mapAspectListItemSentiments = function mapAspectListItemSentiments(aspect, sentimentIds) {
  return Object.keys(sentimentIds).reduce(function (accum, sentiment) {
    return _objectSpread(_objectSpread({}, accum), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)({}, sentiment, {
      aspect: aspect,
      key: sentimentIds[sentiment],
      aspectSentiment: sentiment,
      count: 0
    }));
  }, {});
};
var mapAspectListEntry = function mapAspectListEntry(_ref) {
  var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(_ref, 2),
    key = _ref2[0],
    value = _ref2[1];
  return [key, value.set('key', key).set('count', 0).set('sentiments', (0,immutable__WEBPACK_IMPORTED_MODULE_1__.fromJS)(mapAspectListItemSentiments(key, {
    positive: value.get('positive'),
    negative: value.get('negative'),
    neutral: value.get('neutral')
  })))];
};
var mergeAspectFacetsWithAspectList = function mergeAspectFacetsWithAspectList(facets, aspectsList) {
  var aspectsListImmutable = (0,immutable__WEBPACK_IMPORTED_MODULE_1__.fromJS)(aspectsList); // TODO: Once filters are no longer Immutable - delete

  if (!facets || aspectsListImmutable.isEmpty()) {
    return facets;
  }
  var mappedAspectsList = aspectsListImmutable.mapEntries(mapAspectListEntry).toList();
  return facets.set('values', facets.get('values').concat(mappedAspectsList).groupBy(function (item) {
    return item.get('key');
  }).map(function (item) {
    return item.first();
  }).toList());
};

/***/ }),

/***/ "zTVD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Gm: () => (/* binding */ ACCOUNT_ORIGINS),
/* harmony export */   eR: () => (/* binding */ ACCOUNT_ORIGIN_OPTIONS),
/* harmony export */   kN: () => (/* binding */ ACCOUNT_COVERAGES),
/* harmony export */   oM: () => (/* binding */ ACCOUNT_COVERAGE_OPTIONS)
/* harmony export */ });
var ACCOUNT_ORIGIN_OPTIONS = {
  LOCAL: 'local',
  INTERNATIONAL: 'international'
};
var ACCOUNT_COVERAGE_OPTIONS = {
  EASTER_EUROPE: 'easternEurope',
  GLOBAL: 'global'
};
var ACCOUNT_ORIGINS = Object.values(ACCOUNT_ORIGIN_OPTIONS);
var ACCOUNT_COVERAGES = Object.values(ACCOUNT_COVERAGE_OPTIONS);

/***/ }),

/***/ "iyim":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   BI: () => (/* binding */ sendEvent),
/* harmony export */   Os: () => (/* binding */ group),
/* harmony export */   W2: () => (/* binding */ addEvent),
/* harmony export */   cL: () => (/* binding */ reset),
/* harmony export */   ls: () => (/* binding */ identify),
/* harmony export */   zU: () => (/* binding */ getCurrentAnalyticsAccount)
/* harmony export */ });
/* unused harmony exports page, screen, getCurrentAnalyticsUser */
function identify(id, traits, options) {
  // console.log(`📊 IDENTIFY ${id}`, traits, options);
  window.analytics.identify(id, traits, options);
}
function group(id, traits) {
  // console.log(`📊 GROUP ${id}`, traits);
  window.analytics.group(id, traits);
}
function sendEvent(type, props) {
  // console.log(`📊 EVENT ${type}`, props);
  window.analytics.track(type, props);
}
function page(name, props) {
  // console.log(`📊 PAGE ${name}`, props);
  window.analytics.page(name, props);
}
function screen(name, props) {
  // console.log(`📊 SCREEN ${name}`, props);
  window.analytics.screen(name, props);
}
function reset() {
  window.analytics.reset();
}
function getCurrentAnalyticsAccount() {
  var _window = window,
    analytics = _window.analytics;
  if (!analytics) {
    return null;
  }
  registerSmartlook();
  return analytics.group && analytics.group();
}
function getCurrentAnalyticsUser() {
  var _window2 = window,
    analytics = _window2.analytics;
  if (!analytics) {
    return null;
  }
  return analytics.user && analytics.user();
}
var addEvent = function addEvent(sendAnalyticalEventFunction, event) {
  return function (fn) {
    return function () {
      sendAnalyticalEventFunction(event);
      return fn.apply(void 0, arguments);
    };
  };
};

// Track input values: https://web.developer.smartlook.com/docs/consent-and-sensitive-data
function registerSmartlook() {
  var _window3 = window,
    smartlook = _window3.smartlook;
  if (smartlook) smartlook('record', {
    forms: true,
    emails: true,
    ips: true,
    numbers: true
  });
}

/***/ }),

/***/ "jxlF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   H: () => (/* binding */ TOOLTIPS),
/* harmony export */   h: () => (/* binding */ splineTooltipFormatter)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("wd/R");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_1__);

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }

var TOOLTIPS = {
  pie: {
    pointFormat: '<b>{point.percentage:.2f}%</b> ({point.y:,.0f})<br/>'
  },
  area: {
    split: true,
    pointFormat: '<span>{series.name}</span>: <b>{point.percentage:.2f}%</b> ({point.y:,.0f})<br/>'
  },
  spline: {
    split: true,
    crosshairs: true,
    useHTML: true,
    pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
    formatter: splineTooltipFormatter()
  },
  splineWithTranslation: function splineWithTranslation(translateFunction, isShowPercentage) {
    var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
    return _objectSpread({
      split: true,
      crosshairs: true,
      useHTML: true,
      pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
      formatter: splineTooltipFormatter(translateFunction, isShowPercentage)
    }, options);
  },
  splineSpider: {
    split: true,
    crosshairs: true,
    useHTML: true,
    pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
    formatter: splineTooltipFormatter()
  },
  pipe: {
    crosshairs: true,
    pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>'
  },
  column: {
    crosshairs: true,
    pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>'
  },
  bar: {
    crosshairs: true,
    useHTML: true,
    formatter: function tooltipFormatter() {
      return "<span>".concat(this.series.name, "</span>: <b>").concat(this.point.y, "</b> (").concat(Math.round(this.point.percentage * 100) / 100, "%)<br/>");
    }
  }
};
function splineTooltipFormatter() {
  var translateFunction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  var isShowPercentage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  return function tooltipFormatter() {
    var date = moment__WEBPACK_IMPORTED_MODULE_1___default()(this.x);
    var points = this.points || [this.point];
    var tooltip = "<span style=\"font-size: 10px\">".concat(
    // eslint-disable-next-line no-nested-ternary
    date.isValid() ? moment__WEBPACK_IMPORTED_MODULE_1___default()(this.x).format('LL') : translateFunction ? translateFunction(this.x) : this.x, "</span><br/>");
    points.forEach(function (item) {
      tooltip += "<br/><span style=\"color:".concat(item.series.color, "\">\u25CF</span> ").concat(item.series.name, ": ");
      if (item.point && item.point.low && item.point.high) {
        tooltip += "".concat(item.point.low, " - ").concat(item.point.high);
      } else {
        var percentage = isShowPercentage ? "(".concat(item.percentage, "%)") : '';
        tooltip += "<b>".concat(item.y.toLocaleString('ru-RU'), "</b> ").concat(percentage);
      }
    });
    return tooltip;
  };
}

/***/ }),

/***/ "0gnX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   U: () => (/* binding */ CURRENCY),
/* harmony export */   v: () => (/* binding */ formatCurrency)
/* harmony export */ });
var CURRENCY = {
  RUB: 'rub',
  UAH: 'uah',
  USD: 'usd',
  EUR: 'eur',
  GBP: 'gbp'
};
var formatCurrency = function formatCurrency(currency, amount) {
  switch (currency) {
    case CURRENCY.RUB:
      return "".concat(amount, "\u20BD");
    case CURRENCY.UAH:
      return "\u20B4".concat(amount);
    case CURRENCY.USD:
      return "$".concat(amount);
    case CURRENCY.EUR:
      return "\u20AC".concat(amount);
    case CURRENCY.GBP:
      return "\xA3".concat(amount);
    default:
      return amount;
  }
};

/***/ }),

/***/ "LYLD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* binding */ formatDateToString),
/* harmony export */   Rm: () => (/* binding */ parseDateString),
/* harmony export */   _b: () => (/* binding */ stringifyQuery),
/* harmony export */   mA: () => (/* binding */ parseQuery)
/* harmony export */ });
/* unused harmony exports DATE, DATE_AND_TIME, isDateStringWithTime */
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("wd/R");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Qyje");
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_1__);


var DATE = 'YYYY-MM-DD';
var DATE_AND_TIME = 'YYYY-MM-DDTHH:mm:ss';
var isDateStringWithTime = function isDateStringWithTime(dateString) {
  return dateString ? dateString.indexOf('T') !== -1 : false;
};
var parseDateString = function parseDateString(dateString) {
  // Fallback for old date formats
  if (Number(dateString)) {
    var date = new Date(Number(dateString));
    date.setHours(0, 0, 0, 0);
    return date;
  }
  return isDateStringWithTime(dateString) ? moment__WEBPACK_IMPORTED_MODULE_0___default()(dateString, DATE_AND_TIME).toDate() : moment__WEBPACK_IMPORTED_MODULE_0___default()(dateString, DATE).toDate();
};
var formatDateToString = function formatDateToString(date) {
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  var momentDate = moment__WEBPACK_IMPORTED_MODULE_0___default().isMoment(date) ? date : moment__WEBPACK_IMPORTED_MODULE_0___default()(date);
  var isTimeNotSet = momentDate.hours() === 0 && momentDate.minutes() === 0 && momentDate.seconds() === 0;
  return isTimeNotSet || options.withTime === false ? momentDate.format(DATE) : momentDate.format(DATE_AND_TIME);
};
var stringifyQuery = function stringifyQuery(query) {
  return (0,qs__WEBPACK_IMPORTED_MODULE_1__.stringify)(query, {
    serializeDate: function serializeDate(date) {
      return formatDateToString(date);
    }
  });
};
function parseQuery(query) {
  var q = query.startsWith('?') ? query.substr(1) : query;
  return (0,qs__WEBPACK_IMPORTED_MODULE_1__.parse)(q, {
    arrayLimit: 9999
  });
}

/***/ }),

/***/ "P6/z":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* binding */ debounce)
/* harmony export */ });
function debounce(func) {
  var _this = this;
  var executionTimeGap = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
  var timer = null;
  return function () {
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    var onComplete = function onComplete() {
      func.apply(_this, args);
      timer = null;
    };
    if (timer) {
      clearTimeout(timer);
    }
    timer = setTimeout(onComplete, executionTimeGap);
  };
}

/***/ }),

/***/ "uZfh":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A8: () => (/* binding */ getInterval),
/* harmony export */   Ay: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* unused harmony export setDeepProperty */
/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("lIP5");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9jXX");

/*
    eslint
        no-param-reassign: 0
 */


var isObject = function isObject(value) {
  return value !== null && (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) === 'object';
};
var setDeepProperty = function setDeepProperty(config, key, value) {
  if (Array.isArray(config)) {
    config.forEach(function (val) {
      return setDeepProperty(val, key, value);
    });
  }
  if (isObject(config)) {
    if (config[key]) {
      config[key] = value;
    }
    Object.keys(config).forEach(function (k) {
      return setDeepProperty(config[k], key, value);
    });
  }
  return config;
};
var getInterval = function getInterval(from, to) {
  var maxDiffForHourInterval = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
  var maxDiffForDayInterval = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 119;
  if (maxDiffForHourInterval >= maxDiffForDayInterval) {
    throw new Error("maxDiffForHourInterval can't be more than maxDiffForDayInterval");
  }
  var days = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_0__/* .getDaysDiff */ .Du)(from, to);
  if (days <= maxDiffForHourInterval) return 'Hour';
  if (days <= maxDiffForDayInterval) return 'Day';
  return 'Week';
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (config, periodFrom, periodTo) {
  return setDeepProperty(config, 'interval', getInterval(periodFrom, periodTo));
});

/***/ }),

/***/ "iL/N":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Dk: () => (/* binding */ getHighLevelFilterFromQuery),
/* harmony export */   Ow: () => (/* binding */ removeDefaultsJS),
/* harmony export */   v$: () => (/* binding */ entitiesByFilterType)
/* harmony export */ });
/* unused harmony export parseQueryParameter */
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LYLD");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("9jXX");

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }



var defaults = new immutable__WEBPACK_IMPORTED_MODULE_2__.Map({
  starred: false,
  deleted: false,
  processed: undefined,
  tagged: undefined,
  spam: false,
  assigned: false,
  dedup: false,
  dedupImage: false,
  withImage: undefined,
  similar: '',
  from: (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_1__/* .formatDateToString */ .A)((0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_3__/* .getDayMonthAgo */ .y8)(), {
    withTime: false
  }),
  to: (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_1__/* .formatDateToString */ .A)(new Date(), {
    withTime: false
  }),
  text: '',
  duplicate: '',
  source: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSource: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSources: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  duplicates: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  countryGroup: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeCountryGroup: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  country: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeCountry: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  cityId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeCityId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  collectionMethod: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeCollectionMethod: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  indirect: undefined,
  regionId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeRegionId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  systemTag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSystemTag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  word: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeWord: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  object: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeObject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  phrase: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludePhrase: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  hashtag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeHashtag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  emoji: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeEmoji: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  actions: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeActions: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  characteristic: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeCharacteristic: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  rule: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeRule: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  link: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeLink: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  host: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeHost: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  tag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeTag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  trend: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeTrend: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  author: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeAuthor: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  channel: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeChannel: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  authorInterests: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeAuthorInterests: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  authorInterestCategories: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeAuthorInterestCategories: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  authorJobs: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeAuthorJobs: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  sentiment: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSentiment: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  gender: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeGender: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  resourceType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeResourceType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  postType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludePostType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  sourceFormat: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSourceFormat: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  language: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeLanguage: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  sentimentAffect: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSentimentAffect: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageBrand: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageBrand: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageObject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageObject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageScene: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageScene: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageContentSensitivity: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageContentSensitivity: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageSubtype: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageSubtype: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imagePeople: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImagePeople: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageActivities: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageActivities: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageColors: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeImageColors: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  subject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeSubject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  origin: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeOrigin: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  aspect: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeAspect: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  contentType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeContentType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  apiCode: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeApiCode: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  ageFrom: undefined,
  ageTo: undefined,
  starRating: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  excludeStarRating: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  samplingRate: undefined,
  authorSubscribersFrom: undefined,
  parentPostId: undefined,
  discussionId: undefined,
  authorSubscribersTo: undefined,
  channelSubscribersFrom: undefined,
  channelSubscribersTo: undefined,
  withTextHighlight: undefined
});
var defaults_NEW = new immutable__WEBPACK_IMPORTED_MODULE_2__.Map({
  starred: false,
  deleted: false,
  processed: undefined,
  tagged: undefined,
  spam: false,
  assigned: false,
  dedup: false,
  dedupImage: false,
  withImage: undefined,
  similar: '',
  from: (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_1__/* .formatDateToString */ .A)((0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_3__/* .getDayMonthAgo */ .y8)(), {
    withTime: false
  }),
  to: (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_1__/* .formatDateToString */ .A)(new Date(), {
    withTime: false
  }),
  text: '',
  duplicate: '',
  sourceId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  duplicates: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  countryGroup: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  country: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  region: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  city: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  collectionMethod: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  indirect: undefined,
  systemTags: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  word: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  objects: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  phrase: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  hashtag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  emoji: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  actions: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  characteristic: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  rule: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  link: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  host: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  tag: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  trend: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  authorId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  channelId: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  sentiment: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  gender: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  resourceType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  postType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  language: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  sentimentAffect: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageBrand: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageObject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageScene: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageSubtype: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imagePeople: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageActivities: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  imageColors: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  subject: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  origin: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  aspect: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  contentType: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  apiCode: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  authorAge: undefined,
  starRating: new immutable__WEBPACK_IMPORTED_MODULE_2__.List(),
  samplingRate: undefined,
  authorSubscribers: undefined,
  channelSubscribers: undefined,
  parentPostId: undefined,
  discussionId: undefined,
  withTextHighlight: undefined
});
function parseQueryParameter(param) {
  if (param === 'true' || param === 'false') {
    return param === 'true';
  }
  if (Array.isArray(param)) {
    return param;
  }
  if (!isNaN(param)) {
    return Number(param);
  }
  return param;
}
function getHighLevelFilterFromQuery(query) {
  return query.map(parseQueryParameter).filter(isHighLevelFilterValid);
}
var isHighLevelFilterValid = function isHighLevelFilterValid(value, filterName) {
  return defaults_NEW.has(filterName) && value !== undefined && value !== defaults_NEW.get(filterName);
};
var KEYS_WITH_NO_DEFAULTS = new immutable__WEBPACK_IMPORTED_MODULE_2__.List(['from', 'to']);
var isFilterDefault = function isFilterDefault(key, value) {
  return value === defaults.get(key) || Array.isArray(value) && !value.length;
};
var removeDefaultsJS = function removeDefaultsJS(filter) {
  return Object.keys(filter).reduce(function (accum, key) {
    var value = filter[key];
    if (!KEYS_WITH_NO_DEFAULTS.includes(key) && isFilterDefault(key, value)) {
      return accum;
    }
    return _objectSpread(_objectSpread({}, accum), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)({}, key, value));
  }, {});
};
var entitiesByFilterType = {
  author: 'authors',
  excludeAuthor: 'authors',
  source: 'sources',
  excludeSource: 'sources',
  tag: 'tags',
  excludeTag: 'tags',
  trend: 'trends',
  excludeTrend: 'trends',
  channel: 'authors',
  excludeChannel: 'authors',
  cityId: 'geos',
  integration: 'integrations',
  excludeCityId: 'geos',
  regionId: 'geos',
  excludeRegionId: 'geos'
};

/***/ }),

/***/ "HIua":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__),
/* harmony export */   i: () => (/* binding */ colorNames)
/* harmony export */ });
var colorNames = {
  '#f44336': 'red',
  '#e91e63': 'pink',
  '#9c27b0': 'purple',
  '#673ab7': 'deeppurple',
  '#3f51b5': 'indigo',
  '#2196f3': 'blue',
  '#03a9f4': 'lightblue',
  '#00bcd4': 'cyan',
  '#009688': 'teal',
  '#4caf50': 'green',
  '#8bc34a': 'lightgreen',
  '#cddc39': 'lime',
  '#ffeb3b': 'yellow',
  '#ffc107': 'amber',
  '#ff9800': 'orange',
  '#ff5722': 'deeporange',
  '#795548': 'brown',
  '#9e9e9e': 'grey',
  '#607d8b': 'bluegrey',
  '#ef9a9a': 'light red',
  '#c62828': 'red',
  '#f48fb1': 'light pink',
  '#ad1457': 'pink',
  '#ce93d8': 'light purple',
  '#6a1b9a': 'purple',
  '#b39ddb': 'light deeppurple',
  '#4527a0': 'deeppurple',
  '#9fa8da': 'light indigo',
  '#283593': 'indigo',
  '#90caf9': 'light blue',
  '#1565c0': 'blue',
  '#81d4fa': 'light lightblue',
  '#0277bd': 'lightblue',
  '#80deea': 'light cyan',
  '#00838f': 'cyan',
  '#80cbc4': 'light teal',
  '#00695c': 'teal',
  '#a5d6a7': 'light green',
  '#2e7d32': 'green',
  '#c5e1a5': 'light lightgreen',
  '#558b2f': 'lightgreen',
  '#e6ee9c': 'light lime',
  '#9e9d24': 'lime',
  '#fff59d': 'light yellow',
  '#f9a825': 'yellow',
  '#ffe082': 'light amber',
  '#ff8f00': 'amber',
  '#ffcc80': 'light orange',
  '#ef6c00': 'orange',
  '#ffab91': 'light deeporange',
  '#d84315': 'deeporange',
  '#bcaaa4': 'light brown',
  '#4e342e': 'brown',
  '#eeeeee': 'light grey',
  '#424242': 'grey',
  '#b0bec5': 'light bluegrey',
  '#37474f': 'bluegrey'
};
var getColorName = function getColorName(colorCode) {
  return colorNames[colorCode] || colorCode;
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getColorName);

/***/ }),

/***/ "ynXH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* binding */ getCurrentTimeZone)
/* harmony export */ });
function getCurrentTimeZone() {
  var dateTimeFormat = new Intl.DateTimeFormat();
  return dateTimeFormat.resolvedOptions().timeZone;
}

/***/ }),

/***/ "mo7E":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Iy: () => (/* binding */ getHistoryCollectionEducationalMaterials),
/* harmony export */   Nd: () => (/* binding */ DISABLED_PANEL_NOTIFICATIONS),
/* harmony export */   Px: () => (/* binding */ NOTIFICATION_TEXT_TYPE),
/* harmony export */   W5: () => (/* binding */ HISTORY_STATUS)
/* harmony export */ });
/* unused harmony export getNextDeepCollectionAvailableDate */
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("zThL");
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("f0Wu");
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment_timezone__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var containers_helpers_WithUserTimeZone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("FNcx");
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("KV3C");
/* harmony import */ var utils_account__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("zTVD");
/* harmony import */ var utils_navigation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("RBXy");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("nKUr");







var HISTORY_STATUS = {
  COMPLETED: 'completed',
  ABORTED: 'aborted',
  FAILED: 'failed',
  COLLECTING: 'collecting'
};
var NOTIFICATION_TEXT_TYPE = {
  RESTRICT_DEEP_HISTORY: 'RESTRICT_DEEP_HISTORY',
  OPTION_IS_NOT_AVAILABLE: 'OPTION_IS_NOT_AVAILABLE',
  FREE_MENTIONS_LIMIT_EXCEEDED: 'FREE_MENTIONS_LIMIT_EXCEEDED',
  OVER_FREE_DATE_RANGE: 'OVER_FREE_DATE_RANGE',
  DEEP_COLLECTIONS_LIMIT_EXCEEDED: 'DEEP_COLLECTIONS_LIMIT_EXCEEDED',
  DEEP_COLLECTION: 'DEEP_COLLECTION',
  UNSUPPORTED_QUERY_SYMBOLS: 'UNSUPPORTED_QUERY_SYMBOLS',
  INVALID_DATE_RANGE: 'INVALID_DATE_RANGE',
  OVER_MENTIONS_LIMIT: 'OVER_MENTIONS_LIMIT',
  NEAR_MENTIONS_LIMIT: 'NEAR_MENTIONS_LIMIT'
};
var DISABLED_PANEL_NOTIFICATIONS = [NOTIFICATION_TEXT_TYPE.UNSUPPORTED_QUERY_SYMBOLS];
var MATERIALS = (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)((0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)((0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)({}, utils_account__WEBPACK_IMPORTED_MODULE_3__/* .ACCOUNT_COVERAGE_OPTIONS */ .oM.GLOBAL, function () {
  return [{
    title: l('History Collection', 'historyCollectionEducationMaterials'),
    description: l('How free and paid historical data collection works in YouScan', 'historyCollectionEducationMaterials'),
    link: (0,utils_navigation__WEBPACK_IMPORTED_MODULE_4__/* .getLinkToHelpYouscan */ .vn)(utils_navigation__WEBPACK_IMPORTED_MODULE_4__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.HISTORICAL_LIMITS)
  }];
}), utils_account__WEBPACK_IMPORTED_MODULE_3__/* .ACCOUNT_COVERAGE_OPTIONS */ .oM.EASTER_EUROPE, function () {
  return [{
    title: l('History Collection', 'historyCollectionEducationMaterials'),
    description: l('How free and paid historical data collection works in YouScan', 'historyCollectionEducationMaterials'),
    link: (0,utils_navigation__WEBPACK_IMPORTED_MODULE_4__/* .getLinkToHelpYouscan */ .vn)(utils_navigation__WEBPACK_IMPORTED_MODULE_4__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.HISTORICAL_LIMITS)
  }];
}), "DEFAULT", function DEFAULT() {
  return [{
    title: l('History Collection', 'historyCollectionEducationMaterials'),
    description: l('How historical data collection works in YouScan', 'historyCollectionEducationMaterials'),
    link: (0,utils_navigation__WEBPACK_IMPORTED_MODULE_4__/* .getLinkToHelpYouscan */ .vn)(utils_navigation__WEBPACK_IMPORTED_MODULE_4__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.HISTORICAL_LIMITS)
  }];
});
var getHistoryCollectionEducationalMaterials = function getHistoryCollectionEducationalMaterials(_ref) {
  var accountCoverage = _ref.accountCoverage,
    _ref$hasUnlimitedHist = _ref.hasUnlimitedHistoryCollection,
    hasUnlimitedHistoryCollection = _ref$hasUnlimitedHist === void 0 ? undefined : _ref$hasUnlimitedHist,
    userLanguage = _ref.userLanguage;
  // The first condition made for showing single Material first, and not others to blink.
  if (hasUnlimitedHistoryCollection === undefined || hasUnlimitedHistoryCollection === true) {
    return MATERIALS.DEFAULT(userLanguage).map(function (info, index) {
      return {
        info: info,
        color: utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .EDUCATIONAL_MATERIALS_CARD_COLORS */ .Fs[index]
      };
    });
  }
  return MATERIALS[accountCoverage]().map(function (info, index) {
    return {
      info: info,
      color: utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .EDUCATIONAL_MATERIALS_CARD_COLORS */ .Fs[index]
    };
  });
};
var getNextDeepCollectionAvailableDate = function getNextDeepCollectionAvailableDate(nextDeepCollectionAvailableAt) {
  return /*#__PURE__*/_jsx(WithUserTimeZone, {
    children: function children(timeZone) {
      var formatted = momentTimeZone(nextDeepCollectionAvailableAt).tz(timeZone);
      var diff = formatted.diff(momentTimeZone().tz(timeZone), 'days');
      var Wrapper = function Wrapper(_ref2) {
        var children = _ref2.children;
        return /*#__PURE__*/_jsx("span", {
          title: formatted.format('LLL'),
          children: children
        });
      };
      return /*#__PURE__*/_jsx(Wrapper, {
        children: diff === 0 ? l('today', 'historyCollection') : sprintf(nl('in %d day', 'in %d days', diff, 'historyCollection'), diff)
      });
    }
  });
};

/***/ }),

/***/ "ah7T":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   BP: () => (/* binding */ shutDown),
/* harmony export */   JJ: () => (/* binding */ openChat),
/* harmony export */   KQ: () => (/* binding */ getIntercomNode),
/* harmony export */   Lm: () => (/* binding */ isIntercomRendered),
/* harmony export */   Lq: () => (/* binding */ showIntercom),
/* harmony export */   YD: () => (/* binding */ startProductTour),
/* harmony export */   kk: () => (/* binding */ hideIntercom),
/* harmony export */   uA: () => (/* binding */ updateWithThrottle),
/* harmony export */   z$: () => (/* binding */ showNewMessage)
/* harmony export */ });
/* unused harmony exports update, sendEvent */
/* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("DzJC");
/* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_throttle__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react_intercom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ZfbA");
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("sYBo");



function update() {
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('update');
  }
}
var throttleUpdate = lodash_throttle__WEBPACK_IMPORTED_MODULE_0___default()(update, 600000); // 10 min

function updateWithThrottle() {
  throttleUpdate();
}
function sendEvent(eventName, props) {
  if (window.Intercom) {
    intercomAPI('trackEvent', eventName, props);
  }
}
function openChat() {
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('show');
  }
}
function shutDown() {
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('shutdown');
  }
}
function startProductTour(productTourId) {
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('startTour', productTourId);
  }
}
function showNewMessage(message) {
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('showNewMessage', message);
  }
}
function hideIntercom() {
  var intercom = getIntercomNode();
  if (intercom) {
    intercom.style = 'display: none';
  }
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('update', {
      hide_default_launcher: true
    });
  }
}
function showIntercom() {
  var intercom = getIntercomNode();
  if (intercom) {
    intercom.style = 'display: block';
  }
  if (window.Intercom) {
    (0,react_intercom__WEBPACK_IMPORTED_MODULE_1__/* .IntercomAPI */ .ww)('update', {
      hide_default_launcher: false
    });
  }
}
var getAddedNodes = (0,redux__WEBPACK_IMPORTED_MODULE_2__/* .compose */ .Zz)(Array.from, function (mutation) {
  return mutation.addedNodes || [];
});
var isIntercomContainer = function isIntercomContainer(node) {
  return node && (node.className === 'intercom-lightweight-app' || node.id === 'intercom-container');
};
var getIntercomNode = function getIntercomNode() {
  return document.querySelector('#intercom-container') || document.querySelector('.intercom-lightweight-app');
};
var isIntercomRendered = function isIntercomRendered(mutationRecord) {
  var addedNodes = getAddedNodes(mutationRecord);
  var previousSibling = mutationRecord.previousSibling;
  return addedNodes.some(isIntercomContainer) || isIntercomContainer(previousSibling);
};

/***/ }),

/***/ "+kf1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// We don't get status code on network errors.
// See axios specific details here https://github.com/axios/axios/issues/383
var isNetworkError = function isNetworkError(error) {
  return error && error.request && !error.response;
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isNetworkError);

/***/ }),

/***/ "S6iU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   D6: () => (/* binding */ clearSessionStorage),
/* harmony export */   Ec: () => (/* binding */ AVAILABLE_SESSION_STORAGE_KEYS),
/* harmony export */   Lo: () => (/* binding */ saveItemToSessionStorage),
/* harmony export */   lw: () => (/* binding */ getItemFromSessionStorage)
/* harmony export */ });
/* unused harmony export removeItemFromSessionStorage */
/* eslint-disable consistent-return */
/* eslint-disable no-restricted-syntax */

var AVAILABLE_SESSION_STORAGE_KEYS = {
  PREVIOUS_LOCATION: 'previousLocation',
  LOCATION: 'location',
  SHOW_TRENDING_WORDS_CHART_WITH_BAD_DATA: 'showTrendingWordsChartWithBadData'
};
var saveItemToSessionStorage = function saveItemToSessionStorage(itemName, item) {
  try {
    sessionStorage.setItem("".concat(itemName), JSON.stringify(item));
  } catch (error) {
    console.error(error);
  }
};
var getItemFromSessionStorage = function getItemFromSessionStorage(itemName) {
  try {
    return JSON.parse(sessionStorage.getItem("".concat(itemName)));
  } catch (error) {
    console.error(error);
  }
};
var removeItemFromSessionStorage = function removeItemFromSessionStorage(itemName) {
  try {
    sessionStorage.removeItem(itemName);
  } catch (error) {
    console.error(error);
  }
};
var clearSessionStorage = function clearSessionStorage() {
  try {
    for (var _i = 0, _Object$values = Object.values(AVAILABLE_SESSION_STORAGE_KEYS); _i < _Object$values.length; _i++) {
      var key = _Object$values[_i];
      removeItemFromSessionStorage(key);
    }
  } catch (error) {
    console.error(error);
  }
};

/***/ }),

/***/ "kD4d":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  m1: () => (/* binding */ DEFAULT_FEEDBACK_LOOP_SMART_FEATURE_NAME),
  q0: () => (/* binding */ EMPTY_SENTIMENT),
  Sq: () => (/* binding */ SENTIMENT_TYPES),
  TQ: () => (/* binding */ SENTIMENT_TYPES_ORDER),
  fA: () => (/* binding */ getAllAspects),
  WO: () => (/* binding */ getAllImageSubtypes),
  cV: () => (/* binding */ getAllImageTypes),
  Nj: () => (/* binding */ getAllSubjects),
  qV: () => (/* binding */ getAllSystemTags),
  xR: () => (/* binding */ getAllVisualInsights),
  xB: () => (/* binding */ getFeatureNameTranslation),
  mR: () => (/* binding */ getFeatureNamesStructure),
  jB: () => (/* binding */ getMentionFeedbackLoopSmartFeatureValues),
  uq: () => (/* binding */ getMentionFeedbackLoopViSmartFeatureValues),
  Tu: () => (/* binding */ getNavigationLinkNames),
  g9: () => (/* binding */ getSentiment),
  sC: () => (/* binding */ getTranslation),
  g7: () => (/* binding */ hasSingleValue),
  qU: () => (/* binding */ isColorFilterFeature),
  q$: () => (/* binding */ isFeatureWithSentiment),
  SK: () => (/* binding */ isNestedFeature),
  mF: () => (/* binding */ mapFeedbackLoopSmartFeatures),
  lV: () => (/* binding */ mapSelectedFeatures)
});

// UNUSED EXPORTS: hasPermission, isFeatureNestedOrEmpty, mapSelectedItem, mapSmartFeatureValues

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
var toConsumableArray = __webpack_require__("+BzW");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
var slicedToArray = __webpack_require__("oYSA");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/lodash/isFunction.js
var isFunction = __webpack_require__("lSCD");
var isFunction_default = /*#__PURE__*/__webpack_require__.n(isFunction);
// EXTERNAL MODULE: ./node_modules/lodash/hasIn.js
var hasIn = __webpack_require__("hgQt");
var hasIn_default = /*#__PURE__*/__webpack_require__.n(hasIn);
// EXTERNAL MODULE: ./node_modules/lodash/set.js
var set = __webpack_require__("D1y2");
var set_default = /*#__PURE__*/__webpack_require__.n(set);
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/state/mentionStream/selectors.ts
var selectors = __webpack_require__("wDA8");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
;// CONCATENATED MODULE: ./src/utils/proxy.js
var nonExistingPropsHandler = function nonExistingPropsHandler(defaultValue) {
  return {
    get: function get(target, name) {
      return target[name] || defaultValue;
    }
  };
};

/* eslint-disable import/prefer-default-export */
var proxify = function proxify(o) {
  var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
  return new Proxy(o, nonExistingPropsHandler(defaultValue));
};
// EXTERNAL MODULE: ./src/utils/getColorName.js
var getColorName = __webpack_require__("HIua");
// EXTERNAL MODULE: ./src/utils/translations/autoCategoriesTranslation.js
var autoCategoriesTranslation = __webpack_require__("e4Wn");
// EXTERNAL MODULE: ./src/utils/translations/subjectsFilterTranslation.js
var subjectsFilterTranslation = __webpack_require__("/KsC");
// EXTERNAL MODULE: ./src/utils/translations/aspectTranslation.js
var aspectTranslation = __webpack_require__("0hC/");
;// CONCATENATED MODULE: ./src/utils/smartFeaturesFeedbackLoop/imageTypesSubtypes.js
/* harmony default export */ const imageTypesSubtypes = (Object.freeze({
  imageTypes: ['PHOTO', 'ILLUSTRATION'],
  imageSubtypes: ['stock photography', 'monochrome photography', 'close-up', 'album cover', 'graphics', 'photomontage', 'cartoon', 'black-and-white', 'macro photography', 'illustration', 'collage', 'advertising', 'portrait', 'still life photography', 'screenshot', 'photograph', 'aerial photography', 'pc game', 'web page', 'panorama', 'retro style', 'selfie', 'photo caption']
}));
// EXTERNAL MODULE: ./src/utils/smartFeaturesFeedbackLoop/models.js
var models = __webpack_require__("8rkB");
;// CONCATENATED MODULE: ./src/utils/smartFeaturesFeedbackLoop/index.js






function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }











var allVisualInsights = null;
var identity = function identity(value) {
  return value;
};
var SENTIMENT_TYPES = {
  POSITIVE: 'positive',
  NEGATIVE: 'negative',
  NEUTRAL: 'neutral',
  DEFAULT: 'neutral'
};
var SENTIMENT_TYPES_ORDER = [SENTIMENT_TYPES.POSITIVE, SENTIMENT_TYPES.NEUTRAL, SENTIMENT_TYPES.NEGATIVE];
var EMPTY_SENTIMENT = Object.values(SENTIMENT_TYPES).reduce(function (prev, sentiment) {
  return _objectSpread(_objectSpread({}, prev), {}, (0,defineProperty/* default */.A)({}, sentiment, false));
}, {});
var DEFAULT_FEEDBACK_LOOP_SMART_FEATURE_NAME = 'systemTags';
var getAllSystemTags = autoCategoriesTranslation/* getActiveAutoCategories */.Oz;
var getAllSubjects = function getAllSubjects() {
  return new immutable.List(Object.keys((0,subjectsFilterTranslation/* getSubjectTranslations */.V8)()).map(function (id) {
    return {
      id: id
    };
  }));
};
var getAllAspects = function getAllAspects() {
  return new immutable.List(Object.keys((0,aspectTranslation/* getTranslations */.$)()).map(function (id) {
    return {
      id: id
    };
  }));
};
var mapVIFeatures = function mapVIFeatures(visualInsights) {
  return Object.keys(visualInsights).reduce(function (mapped, viFeatureName) {
    return _objectSpread(_objectSpread({}, mapped), {}, (0,defineProperty/* default */.A)({}, viFeatureName, new immutable.List(Object.keys(visualInsights[viFeatureName])).map(function (featureName) {
      return {
        id: featureName,
        type: viFeatureName,
        similar: visualInsights[viFeatureName][featureName]
      };
    })));
  }, {});
};
var getAllVisualInsights = function getAllVisualInsights(visualTags) {
  if (allVisualInsights) {
    return allVisualInsights;
  }
  allVisualInsights = visualTags ? mapVIFeatures(visualTags) : {};
  return allVisualInsights;
};
var getAllImageTypes = function getAllImageTypes() {
  return new immutable.List(imageTypesSubtypes.imageTypes.map(function (type) {
    return {
      id: type,
      name: type
    };
  }));
};
var getAllImageSubtypes = function getAllImageSubtypes() {
  return new immutable.List(imageTypesSubtypes.imageSubtypes.map(function (type) {
    return {
      id: type,
      name: type
    };
  }));
};
var getSentiment = function getSentiment(value) {
  return value ? value.sentiment || value.split('_')[1] : null;
};
var FEEDBACK_LOOP_FEATURE_NAME_TRANSLATION_HANDLER = proxify({
  systemTags: function systemTags() {
    return l('Auto-category');
  },
  aspects: function aspects() {
    return l('Aspect');
  },
  subjects: function subjects() {
    return l('Subject');
  },
  visualInsights: function visualInsights() {
    return l('Visual tags');
  },
  imageType: function imageType() {
    return l('Image type');
  },
  imageSubtype: function imageSubtype() {
    return l('Image subtype');
  },
  imageBrands: function imageBrands() {
    return l('Logos');
  },
  imageActivities: function imageActivities() {
    return l('Activities');
  },
  imageColors: function imageColors() {
    return l('Colors');
  },
  imageObjects: function imageObjects() {
    return l('Objects');
  },
  imagePeople: function imagePeople() {
    return l('People');
  },
  imageContentSensitivity: function imageContentSensitivity() {
    return l('Content sensitivity');
  },
  imageScenes: function imageScenes() {
    return l('Scenes');
  }
}, identity);
var getFeatureNameTranslation = function getFeatureNameTranslation(featureName) {
  var parts = featureName.split('.');
  var mappedFeatureName = parts[parts.length - 1];
  return FEEDBACK_LOOP_FEATURE_NAME_TRANSLATION_HANDLER[mappedFeatureName](mappedFeatureName);
};
var FEEDBACK_LOOP_FEATURE_VALUE_TRANSLATION_HANDLER = proxify({
  systemTags: function systemTags(id) {
    return (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(id).label;
  },
  subjects: subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE,
  aspects: aspectTranslation/* getAspectLabel */.zS,
  visualInsights: function visualInsights(id, isColor) {
    return isColor ? (0,getColorName/* default */.A)(id) : l(id);
  },
  'visualInsights.imageColors': getColorName/* default */.A,
  imageType: function imageType(id) {
    return l(id);
  },
  imageSubtype: function imageSubtype(id) {
    return l(id);
  }
}, identity);
var getTranslation = function getTranslation(activeFeatureName) {
  return function (id, _ref) {
    var _ref$isColor = _ref.isColor,
      isColor = _ref$isColor === void 0 ? false : _ref$isColor;
    return FEEDBACK_LOOP_FEATURE_VALUE_TRANSLATION_HANDLER[activeFeatureName](id, isColor);
  };
};
var isFeatureWithSentiment = function isFeatureWithSentiment(featureName) {
  return featureName === 'aspects';
};
var isNestedFeature = function isNestedFeature(featureName) {
  return featureName === 'visualInsights';
};
var isColorFilterFeature = function isColorFilterFeature(featureType) {
  return featureType === 'imageColors';
};
var hasSingleValue = function hasSingleValue(featureName) {
  return constants/* FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES */.eu.includes(featureName);
};
var FEEDBACK_LOOP_FEATURE_PERMISSIONS_HANDLER = {
  visualInsights: function visualInsights(permissions) {
    return permissions.showVisualInsights;
  }
};
var hasPermission = function hasPermission(permissions) {
  return function (featureName) {
    var _FEEDBACK_LOOP_FEATUR;
    return ((_FEEDBACK_LOOP_FEATUR = FEEDBACK_LOOP_FEATURE_PERMISSIONS_HANDLER[featureName]) === null || _FEEDBACK_LOOP_FEATUR === void 0 ? void 0 : _FEEDBACK_LOOP_FEATUR.call(FEEDBACK_LOOP_FEATURE_PERMISSIONS_HANDLER, permissions)) || true;
  };
};
var getSelectedSentiment = function getSelectedSentiment(suggestion) {
  return Object.values(SENTIMENT_TYPES).find(function (sentiment) {
    return suggestion.get(sentiment);
  }) || (suggestion.isSelected() ? SENTIMENT_TYPES.DEFAULT : null);
};
var mapSentimentItem = function mapSentimentItem(_ref2) {
  var _ref3 = (0,slicedToArray/* default */.A)(_ref2, 2),
    key = _ref3[0],
    value = _ref3[1];
  var sentimentSuffix = (0,redux/* compose */.Zz)(function (sentiment) {
    return sentiment ? "_".concat(sentiment) : '';
  }, getSelectedSentiment, models/* Suggestion */.V0.of)(value);
  return ["".concat(key).concat(sentimentSuffix), value.selected];
};
var getRemovedSentimentItems = function getRemovedSentimentItems(selectedId) {
  var itemSentiment = getSentiment(selectedId) || '';
  var keyWithoutSentiment = itemSentiment ? selectedId.replace("_".concat(itemSentiment), '') : selectedId;
  var removedSentiments = Object.values(SENTIMENT_TYPES).filter(function (item) {
    return item !== itemSentiment;
  }).filter(function (item, index, arr) {
    return arr.indexOf(item) === index;
  });
  return removedSentiments.reduce(function (mapped, sentiment) {
    return _objectSpread(_objectSpread({}, mapped), {}, (0,defineProperty/* default */.A)({}, "".concat(keyWithoutSentiment, "_").concat(sentiment), false));
  }, {});
};
var mapFeedbackLoopSmartFeatureWithPredicate = function mapFeedbackLoopSmartFeatureWithPredicate(fn) {
  return function (predicate) {
    return function (next) {
      return function (mappedValue, value) {
        return predicate(value) ? next(mappedValue, fn(value)) : next(mappedValue, value);
      };
    };
  };
};
var ignoreFirstParam = function ignoreFirstParam(fn) {
  return function (_) {
    for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
      args[_key - 1] = arguments[_key];
    }
    return fn.apply(void 0, args);
  };
};
var compareIdsWithoutSentiments = function compareIdsWithoutSentiments(comparedId) {
  return function (id) {
    return comparedId.split('_')[0] === id.split('_')[0];
  };
};
var mapFeedbackLoopSmartFeatureWithSentiment = function mapFeedbackLoopSmartFeatureWithSentiment(_ref4) {
  var selected = _ref4.selected,
    initialSelected = _ref4.initialSelected,
    indeterminate = _ref4.indeterminate;
  return function (featureName) {
    var mappedInitialSelected = initialSelected[featureName].mapEntries(mapSentimentItem);
    return (0,defineProperty/* default */.A)({}, featureName, selected[featureName].mapEntries(mapSentimentItem).flatMap(function (isSelected, key) {
      var compareIdWithoutSentiments = compareIdsWithoutSentiments(key);
      var initiallySelectedItem = mappedInitialSelected.findKey(ignoreFirstParam(compareIdWithoutSentiments));
      var isSelectedInitially = mappedInitialSelected.get(key);
      var isSelectedWithAnotherSentimentInitially = !isSelectedInitially && !!initiallySelectedItem;
      var isAddedTheSame = isSelected && isSelectedInitially;
      if (isAddedTheSame) {
        return new immutable.Map();
      }
      var isAddedWithAnotherSentiment = isSelected && isSelectedWithAnotherSentimentInitially;
      if (isAddedWithAnotherSentiment) {
        return new immutable.Map((0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, key, true), initiallySelectedItem, false));
      }
      var isRemoved = isSelectedWithAnotherSentimentInitially && !isSelected;
      if (isRemoved) {
        return new immutable.Map((0,defineProperty/* default */.A)({}, initiallySelectedItem, false));
      }
      var isIndeterminate = indeterminate && indeterminate[featureName] && indeterminate[featureName].some(compareIdWithoutSentiments);
      if (isIndeterminate && isSelected) {
        return new immutable.Map(_objectSpread((0,defineProperty/* default */.A)({}, key, true), getRemovedSentimentItems(key)));
      }
      if (isIndeterminate && !isSelected) {
        return new immutable.Map(getRemovedSentimentItems(key));
      }
      var isDeselectedInitially = !(isSelectedInitially || isSelectedWithAnotherSentimentInitially);
      if (isDeselectedInitially && isSelected) {
        return new immutable.Map((0,defineProperty/* default */.A)({}, key, true));
      }
      return new immutable.Map();
    }));
  };
};
var mapFeedbackLoopNestedSmartFeature = function mapFeedbackLoopNestedSmartFeature(_ref6) {
  var selected = _ref6.selected,
    initialSelected = _ref6.initialSelected,
    indeterminate = _ref6.indeterminate;
  return function (featureName) {
    return mapFeedbackLoopSmartFeatures(selected[featureName], initialSelected[featureName], indeterminate ? indeterminate[featureName] : null);
  };
};
var mapFeedbackLoopSmartFeature = function mapFeedbackLoopSmartFeature(_ref7) {
  var selected = _ref7.selected,
    initialSelected = _ref7.initialSelected,
    indeterminate = _ref7.indeterminate;
  return function (featureName) {
    return (0,defineProperty/* default */.A)({}, featureName, selected[featureName].filter(function (value, key) {
      var isAdded = !initialSelected[featureName].get(key) && value.selected;
      var isRemoved = initialSelected[featureName].get(key) && !value.selected;
      var isIndeterminateRemoved = indeterminate && indeterminate[featureName] && indeterminate[featureName].includes(key) && !value.selected;
      return isAdded || isRemoved || isIndeterminateRemoved;
    }).map(function (item) {
      return item.selected;
    }));
  };
};
var mapFeedbackLoopSmartFeatures = function mapFeedbackLoopSmartFeatures(selected, initialSelected, indeterminate) {
  var reducers = [[mapFeedbackLoopSmartFeature, function (featureName) {
    return !(isNestedFeature(featureName) || isFeatureWithSentiment(featureName));
  }], [mapFeedbackLoopNestedSmartFeature, isNestedFeature], [mapFeedbackLoopSmartFeatureWithSentiment, isFeatureWithSentiment]].map(function (_ref9) {
    var _ref10 = (0,slicedToArray/* default */.A)(_ref9, 2),
      fn = _ref10[0],
      predicate = _ref10[1];
    return mapFeedbackLoopSmartFeatureWithPredicate(fn({
      selected: selected,
      initialSelected: initialSelected,
      indeterminate: indeterminate
    }))(predicate);
  });
  var reducer = redux/* compose */.Zz.apply(void 0, (0,toConsumableArray/* default */.A)(reducers))(function (accumulator, current) {
    return _objectSpread(_objectSpread({}, accumulator), current);
  });
  return Object.keys(selected).reduce(reducer, {});
};
var getNavigationLinkNames = function getNavigationLinkNames(selectedFeatures, isSupport) {
  return constants/* FEEDBACK_LOOP_NAVIGATION_LINK_NAMES */.gq.filter(function (path) {
    if (!isSupport && constants/* FEEDBACK_LOOP_SUPPORT_ONLY_NAVIGATION_LINK_NAMES */.fA.includes(path)) {
      return false;
    }
    return hasIn_default()(selectedFeatures, path);
  });
};
var getFeatureNamesStructure = function getFeatureNamesStructure(selected, permissions, defaultHandler) {
  return Object.keys(selected).filter(hasPermission(permissions)).reduce(function (values, key) {
    return _objectSpread(_objectSpread({}, values), {}, (0,defineProperty/* default */.A)({}, key, isFunction_default()(defaultHandler) ? defaultHandler(key) : defaultHandler));
  }, {});
};
var isFeatureNestedOrEmpty = function isFeatureNestedOrEmpty(selected, featureName) {
  return !selected[featureName] || !(selected[featureName] instanceof immutable.List) || selected[featureName].isEmpty();
};
var mapSelectedItem = function mapSelectedItem(selectedItem) {
  var id = typeof selectedItem === 'string' ? selectedItem : selectedItem.get('aspect') || selectedItem.get('label') || selectedItem.get('color');
  var sentiment = selectedItem && selectedItem.get && selectedItem.get('sentiment');
  return [id, _objectSpread({
    selected: true
  }, sentiment ? (0,defineProperty/* default */.A)({}, sentiment, true) : {})];
};
var mapSelectedFeatures = function mapSelectedFeatures(selected, permissions) {
  if (!selected || selected instanceof immutable.List && selected.isEmpty()) {
    return new immutable.Map();
  }
  var mapFeatureValue = function mapFeatureValue(featureName) {
    return isFeatureNestedOrEmpty(selected, featureName) ? mapSelectedFeatures(selected[featureName]) : new immutable.Map(selected[featureName].map(mapSelectedItem));
  };
  return getFeatureNamesStructure(selected, permissions, mapFeatureValue);
};
var mapSmartFeatureValues = function mapSmartFeatureValues(featureName, value) {
  return constants/* FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES */.eu.includes(featureName) ? new immutable.List([value].filter(Boolean)) : value || new immutable.List();
};
var getSmartFeatureValues = function getSmartFeatureValues(featureNames) {
  return function (mention, permissions) {
    return featureNames.filter(function (featureName) {
      if (!permissions[featureName]) {
        return false;
      }
      return mention.imageUrl ? true : !featureName.includes('image');
    }).reduce(function (featureValues, featureName) {
      return set_default()(featureValues, (0,selectors/* getFeedbackLoopSmartFeatureName */.iS)(featureName), mapSmartFeatureValues(featureName, (0,immutable.fromJS)(mention[featureName])));
    }, {});
  };
};
var getMentionFeedbackLoopSmartFeatureValues = getSmartFeatureValues(constants/* FEEDBACK_LOOP_SMART_FEATURE_NAMES */.BU);
var getMentionFeedbackLoopViSmartFeatureValues = getSmartFeatureValues([].concat((0,toConsumableArray/* default */.A)(constants/* VISUAL_INSIGHTS_FEATURES */.l3), (0,toConsumableArray/* default */.A)(constants/* FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES */.eu)));

/***/ }),

/***/ "8rkB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CJ: () => (/* binding */ Suggestions),
/* harmony export */   V0: () => (/* binding */ Suggestion)
/* harmony export */ });
/* unused harmony export setProp */
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("k6Di");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("79Ja");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("zThL");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("sYBo");
/* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("kD4d");






var setProp = function setProp(prop, value) {
  return function (obj) {
    return obj.set(prop, value);
  };
};
var mapList = function mapList(mapper) {
  return function (list) {
    return list.map(mapper);
  };
};
var sortList = function sortList(sortFn) {
  return function (list) {
    return list.sort(sortFn);
  };
};
var filterList = function filterList(filterFn) {
  return function (list) {
    return list.filter(filterFn);
  };
};

/* eslint-disable max-classes-per-file */
var Suggestion = /*#__PURE__*/function () {
  function Suggestion(suggestion) {
    var _this = this;
    (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(this, Suggestion);
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "getSentiment", function () {
      return Object.values(_index__WEBPACK_IMPORTED_MODULE_1__/* .SENTIMENT_TYPES */ .Sq).find(function (sentiment) {
        return _this.get(sentiment);
      }) || (0,_index__WEBPACK_IMPORTED_MODULE_1__/* .getSentiment */ .g9)(_this.get('id')) || '';
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "getIdWithoutSentiment", function () {
      var id = _this.get('id');
      var sentiment = _this.getSentiment();
      return sentiment ? id.replace("_".concat(sentiment), '') : id;
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "getTranslation", function (activeFeatureName) {
      return (0,_index__WEBPACK_IMPORTED_MODULE_1__/* .getTranslation */ .sC)(activeFeatureName)(_this.get('id'), {
        isColor: (0,_index__WEBPACK_IMPORTED_MODULE_1__/* .isColorFilterFeature */ .qU)(_this.get('type'))
      });
    });
    if (suggestion instanceof Suggestion) {
      this.suggestion = suggestion.suggestion;
      return;
    }
    var _Map$toJS = new immutable__WEBPACK_IMPORTED_MODULE_0__.Map(suggestion || {}).toJS(),
      _id = _Map$toJS.id,
      name = _Map$toJS.name,
      _Map$toJS$positive = _Map$toJS.positive,
      positive = _Map$toJS$positive === void 0 ? false : _Map$toJS$positive,
      _Map$toJS$negative = _Map$toJS.negative,
      negative = _Map$toJS$negative === void 0 ? false : _Map$toJS$negative,
      _Map$toJS$neutral = _Map$toJS.neutral,
      neutral = _Map$toJS$neutral === void 0 ? false : _Map$toJS$neutral,
      _Map$toJS$selected = _Map$toJS.selected,
      selected = _Map$toJS$selected === void 0 ? false : _Map$toJS$selected,
      _Map$toJS$hasJustChan = _Map$toJS.hasJustChangedSentiment,
      hasJustChangedSentiment = _Map$toJS$hasJustChan === void 0 ? false : _Map$toJS$hasJustChan,
      _Map$toJS$type = _Map$toJS.type,
      type = _Map$toJS$type === void 0 ? null : _Map$toJS$type,
      _Map$toJS$similar = _Map$toJS.similar,
      similar = _Map$toJS$similar === void 0 ? [] : _Map$toJS$similar,
      _Map$toJS$indetermina = _Map$toJS.indeterminate,
      indeterminate = _Map$toJS$indetermina === void 0 ? false : _Map$toJS$indetermina;
    this.suggestion = new immutable__WEBPACK_IMPORTED_MODULE_0__.Map({
      id: _id,
      name: name || _id,
      positive: positive,
      negative: negative,
      neutral: neutral,
      selected: selected,
      indeterminate: indeterminate,
      hasJustChangedSentiment: hasJustChangedSentiment,
      type: type,
      similar: similar
    });
  }
  return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(Suggestion, [{
    key: "map",
    value: function map(fn) {
      return new Suggestion(fn(this.suggestion));
    }
  }, {
    key: "toJS",
    value: function toJS() {
      return this.suggestion.toJS();
    }
  }, {
    key: "get",
    value: function get(prop) {
      return this.suggestion.get(prop);
    }
  }, {
    key: "set",
    value: function set(prop, value) {
      return this.map(setProp(prop, value));
    }
  }, {
    key: "isSelected",
    value: function isSelected() {
      return this.get('selected') || false;
    }
  }, {
    key: "isIndeterminate",
    value: function isIndeterminate() {
      return this.get('indeterminate') || false;
    }
  }], [{
    key: "of",
    value: function of(suggestion) {
      return new Suggestion(suggestion);
    }
  }, {
    key: "nameComparator",
    value: function nameComparator(a, b) {
      return a.get('name') < b.get('name') ? -1 : 1;
    }
  }, {
    key: "selectedComparator",
    value: function selectedComparator(a) {
      return a.isSelected() || a.isIndeterminate() ? -1 : 1;
    }
  }, {
    key: "haveBothTheSameSelectionValue",
    value: function haveBothTheSameSelectionValue(a, b) {
      return Suggestion.selectedComparator(a) === Suggestion.selectedComparator(b);
    }
  }]);
}();
var Suggestions = /*#__PURE__*/function () {
  function Suggestions(_suggestions) {
    var _this2 = this;
    (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(this, Suggestions);
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "findByIdAndType", function (id, type) {
      return _this2.suggestions.find(function (suggestion) {
        return suggestion.get('id') === id && suggestion.get('type') === type;
      });
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "filterSentiments", function () {
      return _this2.map(filterList(function (suggestion, suggestionIndex, suggestions) {
        return suggestions.findIndex(function (item) {
          return item.get('id') === suggestion.get('id') && item.get('type') === suggestion.get('type');
        }) === suggestionIndex;
      }));
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "addLocalizedNames", function (activeFeatureName) {
      return _this2.map(mapList(function (suggestion) {
        return suggestion.set('name', suggestion.getTranslation(activeFeatureName));
      }));
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "sortSuggestions", function () {
      return _this2.map(sortList(function (a, b) {
        return Suggestion.haveBothTheSameSelectionValue(a, b) ? Suggestion.nameComparator(a, b) : Suggestion.selectedComparator(a);
      }));
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "mapSelected", function (selected) {
      return _this2.map(mapList(function (suggestion) {
        var selectedItem = selected && selected.find(function (s) {
          return s.id === suggestion.get('id') && (!suggestion.get('type') || s.type === suggestion.get('type'));
        }) || {};
        return Object.values(_index__WEBPACK_IMPORTED_MODULE_1__/* .SENTIMENT_TYPES */ .Sq).reduce(function (prev, sentiment) {
          return prev.set(sentiment, selectedItem[sentiment]);
        }, suggestion.set('selected', selectedItem.selected).set('hasJustChangedSentiment', selectedItem.hasJustChangedSentiment));
      }));
    });
    (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(this, "mapIndeterminate", function (indeterminate) {
      return _this2.map(mapList(function (suggestion) {
        return suggestion.set('indeterminate', indeterminate.includes(suggestion.get('id')));
      }));
    });
    if (_suggestions instanceof Suggestions) {
      this.suggestions = _suggestions.suggestions;
      return;
    }
    this.suggestions = new immutable__WEBPACK_IMPORTED_MODULE_0__.List(_suggestions).map(Suggestion.of);
  }
  return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(Suggestions, [{
    key: "map",
    value: function map(fn) {
      return new Suggestions(fn(this.suggestions));
    }
  }, {
    key: "tap",
    value: function tap(fn) {
      fn(this.suggestions);
      return this;
    }
  }, {
    key: "toJS",
    value: function toJS() {
      return this.suggestions.toJS();
    }
  }, {
    key: "mapForSearchableList",
    value: function mapForSearchableList() {
      return this.suggestions.map((0,redux__WEBPACK_IMPORTED_MODULE_5__/* .compose */ .Zz)(function (suggestion) {
        return new immutable__WEBPACK_IMPORTED_MODULE_0__.Map({
          id: "".concat(suggestion.get('id'), "_").concat(suggestion.get('type')),
          parentId: suggestion.get('id'),
          name: suggestion.get('name'),
          similar: suggestion.get('similar') || [],
          type: suggestion.get('type'),
          selected: suggestion.get('selected')
        });
      }, function (suggestion) {
        return suggestion.suggestion;
      }));
    }
  }]);
}();

/***/ }),

/***/ "0hC/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $: () => (/* binding */ getTranslations),
/* harmony export */   TI: () => (/* binding */ getAspectTitle),
/* harmony export */   zS: () => (/* binding */ getAspectLabel)
/* harmony export */ });
/* unused harmony export getAspectTranslation */
/* eslint-disable max-len */

var getTranslations = function getTranslations() {
  return {
    price: {
      label: l('Price', 'Aspect'),
      title: l('The monetary value of product/service.', 'Aspect')
    },
    assortment: {
      label: l('Assortment', 'Aspect'),
      title: l('Variety of products by type, grade and brand. We can talk about the product range and the range of services.', 'Aspect')
    },
    quality: {
      label: l('Quality', 'Aspect'),
      title: l('A set of product/service properties that meets user\'s needs.', 'Aspect')
    },
    contents: {
      label: l('Contents', 'Aspect'),
      title: l('List of product components.', 'Aspect')
    },
    smell: {
      label: l('Smell', 'Aspect'),
      title: l('Property of an object (substance) perceived by the sense of smell.', 'Aspect')
    },
    taste: {
      label: l('Taste', 'Aspect'),
      title: l('Property of an object (substance) perceived by the sense of taste.', 'Aspect')
    },
    packing: {
      label: l('Packaging', 'Aspect'),
      title: l('Items, materials and devices that are used to ensure the safety of goods during movement, storage and use. We can talk about the reliability of the packaging, its safety, product compliance, convenience, environmental friendliness.', 'Aspect')
    },
    design: {
      label: l('Design', 'Aspect'),
      title: l('The appearance (shape, pattern, color) and product features that are designed to meet the specific needs of the consumer/user.', 'Aspect')
    },
    service: {
      label: l('Customer service', 'Aspect'),
      title: l('Actions of the company at the time or after the provision of the service or sale of goods to the consumer. It can be: delivery of goods, additional service (assembly, installation), work of a call-center, the presence or absence of lines, warranty service.', 'Aspect')
    },
    'expiration date(Longevity)': {
      label: l('Shelf Life', 'Aspect'),
      title: l('The safe storage period for food items. For non-food items, this aspect describes durability — the period of time a product or system remains efficient (for example, if we are talking about tires, furniture, appliances, etc.)', 'Aspect')
    },
    availability: {
      label: l('Availability', 'Aspect'),
      title: l('The availability of a particular product/service for purchase. Is it possible to go to the store and buy or order online? Or you need to pre-order and wait for a long period.', 'Aspect')
    },
    functionality: {
      label: l('Functionality', 'Aspect'),
      title: l('A set of functions that a product provides, tasks that can be solved with its help.', 'Aspect')
    },
    usability: {
      label: l('Usability', 'Aspect'),
      title: l('Convenience of use of the product/service.', 'Aspect')
    },
    performance: {
      label: l('Performance', 'Aspect'),
      title: l('Technical indicators of the product, such as power, speed, battery capacity, etc.', 'Aspect')
    },
    location: {
      label: l('Location', 'Aspect'),
      title: l('Location of the product/service.', 'Aspect')
    },
    'health effects': {
      label: l('Health effects', 'Aspect'),
      title: l('The health impacts of using the product/service.', 'Aspect')
    },
    atmosphere: {
      label: l('Atmosphere', 'Aspect'),
      title: l('One of the aspects for describing establishments (cafe, restaurant, shop, etc.), and talks about the comfort of the place, the atmosphere, the people who gather there.', 'Aspect')
    },
    cleanliness: {
      label: l('Cleanliness', 'Aspect'),
      title: l('Clean condition, clean look of something.', 'Aspect')
    },
    consistence: {
      label: l('Consistency', 'Aspect'),
      title: l('The state of a substance, the degree of softness or density (hardness) of semi-solid, semi-soft substances and viscous liquids (e.g. oil, infant milk, yogurt, toothpaste, etc...).', 'Aspect')
    },
    consumption: {
      label: l('Usage', 'Aspect'),
      title: l('How long a product/service lasts; amount consumed over a number of uses or over a period of time.', 'Aspect')
    },
    size: {
      label: l('Size', 'Aspect'),
      title: l('Dimensionality. It refers to qualities characterizing an object: length, height, width, volume.', 'Aspect')
    }
  };
};
var getAspectTranslation = function getAspectTranslation(key) {
  return getTranslations()[key] || {
    label: key,
    title: ''
  };
};
var getAspectLabel = function getAspectLabel(key) {
  return getAspectTranslation(key).label;
};
var getAspectTitle = function getAspectTitle(key) {
  return getAspectTranslation(key).title;
};

/***/ }),

/***/ "e4Wn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Fj: () => (/* binding */ getAutoCategoryTranslation),
/* harmony export */   Oz: () => (/* binding */ getActiveAutoCategories),
/* harmony export */   kV: () => (/* binding */ getAutoCategoryTranslations)
/* harmony export */ });
/* eslint-disable max-len */

var getAutoCategoryTranslations = function getAutoCategoryTranslations() {
  return {
    womReview: {
      label: l('Opinion', 'AutoCategoryWom'),
      title: l('Opinion about an object or a person, their analysis or assessment.', 'AutoCategoryWom')
    },
    womQuestion: {
      label: l('Question', 'AutoCategoryWom'),
      title: l('Request for information or result.', 'AutoCategoryWom')
    },
    womComparison: {
      label: l('Comparison', 'AutoCategoryWom'),
      title: l('Comparison of products and/or services from one or several brands.', 'AutoCategoryWom')
    },
    womComplaint: {
      label: l('Complaint', 'AutoCategoryWom'),
      title: l('Expression of dissatisfaction with a product, service, event, or person.', 'AutoCategoryWom')
    },
    womRecommendation: {
      label: l('Recommendation', 'AutoCategoryWom'),
      title: l('Advice for or against using a product/service.', 'AutoCategoryWom')
    },
    womOfficialResponse: {
      label: l('Official response', 'AutoCategoryWom'),
      title: l("A company representative's response to a customer. For example, communications from the support team.", 'AutoCategoryWom')
    },
    womObjectInHashtag: {
      label: l('Mismatch', 'AutoCategoryWom'),
      title: l('The object of monitoring is in the hashtag and is not directly related to the text.', 'AutoCategoryWom')
    },
    wom: {
      label: l('WOM', 'AutoCategory'),
      title: l('User messages that share personal experiences with a product/service, compare products, express complaints or gratitude, give recommendations, ask questions about the product, etc.')
    },
    commercial: {
      label: l('Commerce', 'AutoCategory'),
      title: l('Commercial communications: rental advertisements, advertisements for the sale of a product or service that contains relevant attributes (price, seller’s contacts, etc.). This includes sales and discounts, promotions and more.')
    },
    donation: {
      label: l('Donation', 'AutoCategory'),
      title: l('A request for help, reports on the funds raised and volunteer work; related messages such as, “I will give it away for free”, “requesting shelter” etc.')
    },
    article: {
      label: l('Article', 'AutoCategory'),
      title: l('Informational articles, blog articles, reviews, news articles, fictional stories, article teaser text.')
    },
    porn: {
      label: l('NSFW', 'AutoCategory'),
      title: l('Messages with explicit content.')
    },
    pornImage: {
      label: l('NSFW image', 'AutoCategory'),
      title: l('Messages with explicit images.')
    },
    recipe: {
      label: l('Guidance', 'AutoCategory'),
      title: l('Cooking recipes, health and beauty tutorials, housework tips, all kinds of lifehacks and instructions.')
    },
    promotion: {
      label: l('Promotion', 'AutoCategory'),
      title: l('Everything that belongs to the Promo category, but did not fit into other categories. Often these are engagement posts and posts where the object is mentioned in a list.')
    },
    listBeta: {
      label: l('List', 'AutoCategory'),
      title: l('An itemized mention.')
    },
    captionBeta: {
      label: l('Caption', 'AutoCategory'),
      title: l('Photo/video caption.')
    },
    teaserBeta: {
      label: l('Teaser', 'AutoCategory'),
      title: l('Teaser', 'AutoCategory')
    },
    nonsenseBeta: {
      label: l('Nonsense', 'AutoCategory'),
      title: l('Nonsense', 'AutoCategory')
    },
    advertisement: {
      label: l('Advertisement', 'AutoCategory'),
      title: l('Information about a product/service in order to promote, make an announcement, schedule upcoming events, etc.')
    },
    giveaway: {
      label: l('Giveaway', 'AutoCategory'),
      title: l('Contest, promotions that outline conditions for participation and a winner is determined.')
    },
    vacancy: {
      label: l('Vacancy', 'AutoCategory'),
      title: l('Vacancies, job search messages, resumes/CV.')
    },
    socialPromo: {
      label: l('Public service announcement', 'AutoCategory'),
      title: l('Messages about the disappearance or finding of someone or something. Requests for information or return for a fee, mentions with a call to support a public initiative, fraud warnings, etc.')
    }
  };
};
function getActiveAutoCategories() {
  var inactive = ['teaserBeta', 'nonsenseBeta', 'womObjectInHashtag'];
  return Object.keys(getAutoCategoryTranslations()).filter(function (id) {
    return !inactive.includes(id);
  }).map(function (id) {
    return {
      id: id
    };
  });
}
function getAutoCategoryTranslation(key) {
  return getAutoCategoryTranslations()[key] || {
    label: key,
    title: key
  };
}

/***/ }),

/***/ "xTZp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $: () => (/* binding */ getTranslations),
/* harmony export */   $P: () => (/* binding */ translateRole),
/* harmony export */   BJ: () => (/* binding */ translateOrigin),
/* harmony export */   DV: () => (/* binding */ translateAddon),
/* harmony export */   HY: () => (/* binding */ translateApiType),
/* harmony export */   Tl: () => (/* binding */ translate)
/* harmony export */ });
/* unused harmony export getFilterTranslations */
/* eslint-disable max-len */
var getTranslations = function getTranslations() {
  return {
    ru: l('Russia'),
    ua: l('Ukraine'),
    by: l('Belarus'),
    kz: l('Kazakhstan'),
    other: l('Other'),
    word: l('Word'),
    unknown: l('Unknown'),
    undefined: l('Undefined'),
    neutral: l('Neutral'),
    positive: l('Positive'),
    negative: l('Negative'),
    dedup: l('Merge duplicates'),
    withoutTags: l('Untagged'),
    post: l('Post'),
    porn: l('NSFW'),
    pornImage: l('NSFW image'),
    adult: l('NSFW'),
    comment: l('Comment'),
    replyComment: l('Reply comment'),
    commercial: l('Commerce'),
    bots: l('Bots'),
    gibberish: l('Gibberish'),
    bayes: l('Bayes'),
    wom: l('WOM'),
    promotion: l('Promotion'),
    womObsolete: l('WOM (old)'),
    teaserBeta: l('Teaser'),
    listBeta: l('List'),
    captionBeta: l('Caption'),
    nonsenseBeta: l('Nonsense'),
    article: l('Article'),
    activation: l('Activation'),
    intent: l('Intent'),
    recipe: l('Recipes'),
    donation: l('Donation'),
    repost: l('Repost'),
    extendedRepost: l('Extended repost'),
    social: l('Social networks'),
    news: l('News'),
    blog: l('Blogs'),
    forum: l('Forums'),
    reviews: l('Reviews'),
    messenger: l('Messengers'),
    tag: l('Tag'),
    sentiment: l('Sentiment'),
    text: l('Search'),
    postType: l('Post type'),
    resourceType: l('Source type'),
    systemTag: l('Category'),
    sentimentAffect: l('Sentiment affect'),
    imageBrand: l('Logo'),
    imageObject: l('Object'),
    imageScene: l('Scene'),
    imageType: l('Image type'),
    imageSubtype: l('Image subtype'),
    imagePeople: l('Person on image'),
    imageActivities: l('Activity on image'),
    imageColor: l('Image color'),
    imageContentSensitivity: l('Image content sensitivity'),
    link: l('Link'),
    trend: l('Trend'),
    host: l('Host'),
    gender: l('Gender'),
    country: l('Country'),
    regionId: l('Region'),
    cityId: l('City'),
    collectionMethod: l('Collection method'),
    indirect: l('Indirect mentions'),
    author: l('Author'),
    channel: l('Publication place'),
    source: l('Source'),
    male: l('Male'),
    female: l('Female'),
    administrator: l('Admin'),
    manager: l('Admin'),
    member: l('Member'),
    workplaceOwner: l('Owner'),
    community: l('Community'),
    demo: l('Demo'),
    trial: l('Trial'),
    paying: l('Paid'),
    starter: l('Starter'),
    listen: l('Listen'),
    analyze: l('Analyze'),
    innovate: l('Innovate'),
    enterprise: l('Enterprise'),
    language: l('Language'),
    ageFrom: l('Age (from)'),
    ageTo: l('Age (to)'),
    starRating: l('Rating'),
    paid: l('Paid'),
    underReview: l('Under review'),
    canceled: l('Canceled'),
    waitingForPayment: l('Waiting for payment'),
    pending: l('Pending'),
    created: l('Created'),
    declined: l('Declined'),
    samplingRate: l('Sample'),
    authorSubscribersFrom: l('Author subscribers (min)'),
    authorSubscribersTo: l('Author subscribers (max)'),
    channelSubscribersFrom: l('Publication place subscribers (min)'),
    channelSubscribersTo: l('Publication place subscribers (max)'),
    month: l('month'),
    year: l('year'),
    'legal entity': l('Legal entity'),
    'individual entity': l('Individual entity'),
    'other entity': l('Other entity'),
    unactive: l('Inactive'),
    waitingForActivation: l('WaitingForActivation'),
    manual: l('Manual'),
    invoicing: l('Invoicing'),
    payPal: l('PayPal'),
    card: l('Card'),
    stripe: l('Card (via Stripe)', 'billing'),
    video: l('Video'),
    image: l('Image'),
    location: l('Location'),
    album: l('Album'),
    local: l('Eastern Europe', 'administration'),
    international: l('New markets', 'administration'),
    easternEurope: l('Eastern Europe', 'administration'),
    global: l('Global', 'administration'),
    words: l('Words'),
    objects: l('Objects'),
    phrases: l('Phrases'),
    hashtags: l('Hashtags'),
    emojis: l('Emojis'),
    actions: l('Actions'),
    characteristics: l('Properties'),
    persons: l('Persons'),
    locations: l('Locations'),
    organizations: l('Organizations'),
    instagramReels: l('Reels'),
    instagramStories: l('Stories'),
    pinterestStoryPins: l('Stories'),
    youTubeShorts: l('Shorts'),
    youTubeLive: l('Live'),
    facebookReels: l('Reels'),
    facebookLive: l('Live'),
    twitchLive: l('Live'),
    constructor: 'constructor'
  };
};
var getFilterTranslations = function getFilterTranslations() {
  var _getTranslations = getTranslations(),
    post = _getTranslations.post,
    repost = _getTranslations.repost,
    comment = _getTranslations.comment,
    replyComment = _getTranslations.replyComment,
    extendedRepost = _getTranslations.extendedRepost,
    blog = _getTranslations.blog,
    forum = _getTranslations.forum,
    news = _getTranslations.news,
    social = _getTranslations.social,
    reviews = _getTranslations.reviews,
    messenger = _getTranslations.messenger,
    other = _getTranslations.other;
  return {
    post: post,
    repost: repost,
    comment: comment,
    replyComment: replyComment,
    extendedRepost: extendedRepost,
    blog: blog,
    forum: forum,
    news: news,
    social: social,
    reviews: reviews,
    messenger: messenger,
    other: other
  };
};
var getCreateThemeErrorAlertsTranslations = function getCreateThemeErrorAlertsTranslations() {
  return {
    name: l('Name', 'createThemeErrorAlerts'),
    defaultMessage: l('Can\'t create new topic, try again or contact our support team'),
    defaultTitle: l('Error during topic creation'),
    limitOfTopicsReachedTitle: l('Topic limit is reached'),
    limitOfTopicsReachedMessage: l('Please contact our support team if you want to upgrade your account'),
    validationFailed: l('Validation failed'),
    charactersLimitation: l('must be between %d and %d characters.', 'createThemeErrorAlerts'),
    field: l('Field', 'createThemeErrorAlerts'),
    enteredCharacters: nl('You entered %d character', 'You entered %d characters')
  };
};
var translateOrigin = function translateOrigin(key) {
  return {
    history: l('Historical', 'Origin'),
    percolator: l('Regular', 'Origin'),
    themeChannel: l('Channel', 'Origin'),
    imageRecognition: l('Logo recognition', 'Origin'),
    manual: l('Added manually', 'Origin'),
    channelHistory: l('Channel historical', 'Origin')
  }[key] || key;
};
var translateAddon = function translateAddon(key) {
  return {
    api: l('API', 'Addon'),
    visualDataAnalysis: l('Visual Data Analysis', 'Addon'),
    dataSampling: l('Data Sampling', 'Addon'),
    smartTags: l('Smart Tags', 'Addon'),
    audienceInsights: l('Audience Insights', 'Addon'),
    audioMonitoring: l('Audio Monitoring', 'Addon'),
    extendedCoverage: l('Extended Coverage', 'Addon'),
    limitedHistory: l('Limited History', 'Addon'),
    unlimitedDashboards: l('Unlimited Dashboards', 'Addon'),
    insightsCopilot: l('Insights Copilot', 'Addon'),
    additionalChannels: l('Additional Channels', 'Addon')
  }[key] || key;
};
var translateApiType = function translateApiType(key) {
  return {
    statistics: l('Statistics', 'Api'),
    advanced: l('Advanced and Webhook', 'Api')
  }[key] || key;
};
var translateRole = function translateRole(key) {
  return {
    manager: l('Admin'),
    member: l('Member'),
    administrator: l('Admin'),
    workplaceOwner: l('Owner')
  }[key] || key;
};
var translationMethods = [getTranslations, getCreateThemeErrorAlertsTranslations];
var skipTranslations = ['manager', 'text'];
var translate = function translate(key) {
  if (skipTranslations.includes(key)) return key;
  return translationMethods.map(function (method) {
    return method()[key];
  }).reduce(function (res, translation) {
    return res || translation;
  }) || key;
};

/***/ }),

/***/ "yJPc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $: () => (/* binding */ getTranslations),
/* harmony export */   Ch: () => (/* binding */ translateContentType),
/* harmony export */   jf: () => (/* binding */ getContentTypeFilterTranslationLabel)
/* harmony export */ });
/* eslint import/prefer-default-export: 0 */
var getTranslations = function getTranslations() {
  return {
    link: {
      label: l('Link'),
      title: l('Contains external links in text')
    },
    video: {
      label: l('Video'),
      title: l('Contains video content')
    },
    image: {
      label: l('Image'),
      title: l('Contains visual content')
    },
    location: {
      label: l('Location'),
      title: l('Location') // temporary excluded by BE
    },
    album: {
      label: l('Album'),
      title: l('Album') // temporary excluded by BE
    },
    text: {
      label: l('Text'),
      title: l('Contains text content')
    },
    poll: {
      label: l('Poll'),
      title: l('Questions to the audience, often with answer options')
    },
    subtitles: {
      label: l('Subtitles'),
      title: l('Video subtitles in text format with keywords by your querry')
    },
    sticker: {
      label: l('Stickers'),
      title: l('Contains stickers')
    }
  };
};
function translateContentType(key) {
  return getTranslations()[key] || {
    label: key,
    title: key
  };
}
function getContentTypeFilterTranslationLabel(key) {
  return translateContentType(key).label;
}

/***/ }),

/***/ "ExDt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Ay: () => (__WEBPACK_DEFAULT_EXPORT__),
/* harmony export */   RB: () => (/* binding */ getCountryNameTranslation),
/* harmony export */   b6: () => (/* binding */ getTranslatedChartCountryMap),
/* harmony export */   pc: () => (/* binding */ getTranslatedChartWorldMap),
/* harmony export */   zb: () => (/* binding */ getCountryNames)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zThL");
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("872o");
/* harmony import */ var _countryTranslations_json__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("ecuP");

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }


var getLocaleTranslations = function getLocaleTranslations() {
  return _countryTranslations_json__WEBPACK_IMPORTED_MODULE_2__[(0,i18n__WEBPACK_IMPORTED_MODULE_1__/* .getLocale */ .JK)().toUpperCase()];
};
var getCountryNameTranslation = function getCountryNameTranslation(code) {
  return getLocaleTranslations()[code && code.toUpperCase()];
};
var getCountryNames = function getCountryNames() {
  var localeTranslations = getLocaleTranslations();
  return Object.keys(localeTranslations).filter(function (code) {
    return code !== 'NOT_DEFINED';
  }).map(function (code) {
    return {
      code: code.toLowerCase(),
      name: localeTranslations[code]
    };
  });
};
var getTranslatedChartWorldMap = function getTranslatedChartWorldMap(worldMap) {
  return _objectSpread(_objectSpread({}, worldMap), {}, {
    features: worldMap.features.map(function (country) {
      return _objectSpread(_objectSpread({}, country), {}, {
        properties: _objectSpread(_objectSpread({}, country.properties), {}, {
          name: getCountryNameTranslation(country.properties['hc-key']) || country.properties.name
        })
      });
    })
  });
};
var getTranslatedChartCountryMap = function getTranslatedChartCountryMap(countryMap, currentData) {
  return _objectSpread(_objectSpread({}, countryMap), {}, {
    features: countryMap.features.map(function (region) {
      var currentRegionData = currentData.find(function (r) {
        return r['hc-key'] === region.properties['hc-key'];
      });
      var localTranslation = (currentRegionData === null || currentRegionData === void 0 ? void 0 : currentRegionData.region) || (currentRegionData === null || currentRegionData === void 0 ? void 0 : currentRegionData.name);
      return _objectSpread(_objectSpread({}, region), {}, {
        properties: _objectSpread(_objectSpread({}, region.properties), {}, {
          name: localTranslation || region.properties.name
        })
      });
    })
  });
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getCountryNameTranslation);

/***/ }),

/***/ "nJxM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__),
/* harmony export */   r: () => (/* binding */ getLanguageFilterTranslations)
/* harmony export */ });
var getLanguageFilterTranslations = function getLanguageFilterTranslations() {
  var alwaysDefaultTranslation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
  return {
    eng: l('English', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    rus: l('Russian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ukr: l('Ukrainian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kaz: l('Kazakh', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    aze: l('Azerbaijan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    spa: l('Spanish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    msa: l('Malay', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    deu: l('German', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    por: l('Portuguese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ita: l('Italian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tur: l('Turkish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    fra: l('French', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    zho: l('Chinese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    jpn: l('Japanese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kor: l('Korean', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bel: l('Belarusian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ara: l('Arabic', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    dan: l('Danish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    swe: l('Swedish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ces: l('Czech', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tha: l('Thai', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    pol: l('Polish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nld: l('Dutch', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    vie: l('Vietnamese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    fin: l('Finnish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kir: l('Kirghiz', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ron: l('Romanian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hye: l('Armenian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bul: l('Bulgarian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mon: l('Mongolian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    gre: l('Greek', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hin: l('Hindi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kat: l('Georgian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tgk: l('Tajik', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mya: l('Burmese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    heb: l('Hebrew', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mkd: l('Macedonian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    khm: l('Khmer', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mal: l('Malayalam', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    amh: l('Amharic', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sin: l('Sinhalese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    uzb: l('Uzbek', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lav: l('Latvian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    est: l('Estonian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    cat: l('Catalan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ben: l('Bengali', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ind: l('Indonesian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hrv: l('Croatian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    fas: l('Persian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    slv: l('Slovenian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    srp: l('Serbian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tam: l('Tamil', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    urd: l('Urdu', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    eus: l('Basque', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    glg: l('Galician', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kan: l('Kannada', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tel: l('Telugu', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hun: l('Hungarian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lit: l('Lithuanian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tgl: l('Filipino', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    abk: l('Abkhazian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    aar: l('Afar', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    afr: l('Afrikaans', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    aka: l('Akan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sqi: l('Albanian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    asm: l('Assamese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    aym: l('Aymara', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bak: l('Bashkir', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bih: l('Bihari', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bis: l('Bislama', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bos: l('Bosnian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bre: l('Breton', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ceb: l('Cebuano', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    chr: l('Cherokee', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    cos: l('Corsican', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    div: l('Dhivehi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    dzo: l('Dzongkha', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    epo: l('Esperanto', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ewe: l('Ewe', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    fao: l('Faroese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    fij: l('Fijian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    fry: l('Frisian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    gaa: l('Ga', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lug: l('Ganda', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kal: l('Greenlandic', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    grn: l('Guarani', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    guj: l('Gujarati', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hat: l('Haitian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hau: l('Hausa', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    haw: l('Hawaiian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    hmn: l('Hmong', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    isl: l('Icelandic', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ibo: l('Igbo', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ina: l('Interlingua', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ile: l('Interlingue', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    iku: l('Inuktitut', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ipk: l('Inupiak', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    gle: l('Irish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    jav: l('Javanese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kas: l('Kashmiri', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kha: l('Khasi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kin: l('Kinyarwanda', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kri: l('Krio', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    kur: l('Kurdish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lao: l('Laothian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lat: l('Latin', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lif: l('Limbu', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lin: l('Lingala', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    loz: l('Lozi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    lua: l('Luba-Lulua', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    luo: l('Luo', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ltz: l('Luxembourgish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mlg: l('Malagasy', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mlt: l('Maltese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    glv: l('Manx', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mri: l('Maori', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mar: l('Marathi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    mfe: l('Mauritian Creole', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    cnr: l('Montenegrin', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nau: l('Nauru', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nbl: l('Ndebele', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nep: l('Nepali', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    "new": l('Newari', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nor: l('Norwegian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nno: l('Norwegian Nynorsk', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nya: l('Nyanja', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    oci: l('Occitan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ori: l('Oriya', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    orm: l('Oromo', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    oss: l('Ossetian', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    pam: l('Kapampangan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    pus: l('Pashto', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    nso: l('Pedi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    pan: l('Punjabi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    que: l('Quechua', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    raj: l('Rajasthani', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    roh: l('Romansh', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    run: l('Rundi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    smo: l('Samoan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sag: l('Sango', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    san: l('Sanskrit', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sco: l('Scots', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    gla: l('Gaelic', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    crs: l('Seselwa', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sot: l('Sesotho', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sna: l('Shona', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    snd: l('Sindhi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ssw: l('Swati', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    slk: l('Slovak', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    som: l('Somali', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    sun: l('Sundanese', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    swa: l('Swahili', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    syr: l('Syriac', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tat: l('Tatar', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    bod: l('Tibetan', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tir: l('Tigrinya', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ton: l('Tonga', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tso: l('Tsonga', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tsn: l('Tswana', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tum: l('Tumbuka', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    tuk: l('Turkmen', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    twi: l('Twi', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    uig: l('Uighur', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    ven: l('Venda', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    vol: l('Volapuk', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    war: l('Waray', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    cym: l('Welsh', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    wol: l('Wolof', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    xho: l('Xhosa', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    yid: l('Yiddish', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    yor: l('Yoruba', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    zha: l('Zhuang', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    zul: l('Zulu', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    unc: l('Undefined (cyrillic)', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    unl: l('Undefined (latin)', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    }),
    udf: l('Undefined', null, {
      alwaysDefaultTranslation: alwaysDefaultTranslation
    })
  };
};
var translate = function translate(key) {
  return getLanguageFilterTranslations()[key];
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (translate);

/***/ }),

/***/ "/KsC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   K_: () => (/* binding */ isSubjectFilterTranslationExists),
/* harmony export */   P3: () => (/* binding */ getSubjectOrderTypesTranslationByKey),
/* harmony export */   V8: () => (/* binding */ getSubjectTranslations),
/* harmony export */   zE: () => (/* binding */ getSubjectsFilterTranslationLabel),
/* harmony export */   zY: () => (/* binding */ getSubjectsFilterTranslation)
/* harmony export */ });
/* unused harmony export getSubjectOrderTypesTranslations */
/* eslint-disable max-len */

var getSubjectTranslations = function getSubjectTranslations() {
  return {
    sport_bets: {
      label: l('Bets', 'subjects'),
      title: l('Mentions of bookmakers, odds, sports betting and forecasts for various events.', 'subjects')
    },
    sport_football: {
      label: l('Football', 'subjects'),
      title: l('Football discussions, news and events', 'subjects')
    },
    sport_boxing: {
      label: l('Martial arts', 'subjects'),
      title: l('Mentions of martial arts (boxing, ufc, karate, judo, etc.)', 'subjects')
    },
    sport_winter: {
      label: l('Winter sports', 'subjects'),
      title: l('Sports that are practiced on snow or ice, equipment, news and events', 'subjects')
    },
    sport_tennis: {
      label: l('Tennis', 'subjects'),
      title: l('Mentions of tennis, as well as professional tennis news and events', 'subjects')
    },
    sport_hockey: {
      label: l('Hockey', 'subjects'),
      title: l('Mentions of hockey, as well as professional hockey news and events', 'subjects')
    },
    sport_basketball: {
      label: l('Basketball', 'subjects'),
      title: l('Everything related to basketball: games, competitions, equipment, etc', 'subjects')
    },
    children: {
      label: l('Children', 'subjects'),
      title: l("Mentions about children and parenting: toys, books, fairy tales, children's vehicles, baby food, baby hygiene products and more. Questions around childhood education and")
    },
    'animals & pets': {
      label: l('Animals & Pets', 'subjects'),
      title: ''
    },
    arts: {
      label: l('Arts', 'subjects'),
      title: ''
    },
    'arts.decorative arts': {
      label: l('Decorative arts', 'subjects'),
      title: ''
    },
    autos: {
      label: l('Automotive', 'subjects'),
      title: l('News, announcements, events of the automotive world.', 'subjects')
    },
    'automotive.cars': {
      label: l('Cars', 'subjects'),
      title: ''
    },
    'automotive.motorcycles': {
      label: l('Motorcycles', 'subjects'),
      title: ''
    },
    driving: {
      label: l('Driving', 'subjects'),
      title: ''
    },
    EVs: {
      label: l('Electric Cars', 'subjects'),
      title: ''
    },
    beauty: {
      label: l('Beauty', 'subjects'),
      title: l('Cosmetics, perfumes, care products, cosmetology procedures, spa procedures, beauty salons, hairdressing services. News, discussions, comments, reviews, announcements, promotions and more.')
    },
    'beauty.makeup': {
      label: l('Makeup', 'subjects'),
      title: ''
    },
    'beauty.self care': {
      label: l('Self Care', 'subjects'),
      title: ''
    },
    books: {
      label: l('Books', 'subjects'),
      title: ''
    },
    business: {
      label: l('Business', 'subjects'),
      title: ''
    },
    'business.ecommerce': {
      label: l('E-commerce', 'subjects'),
      title: ''
    },
    'business.startups': {
      label: l('Startups', 'subjects'),
      title: ''
    },
    industry: {
      label: l('Industry', 'subjects'),
      title: ''
    },
    'industry.banking': {
      label: l('Banking', 'subjects'),
      title: ''
    },
    'industry.investing': {
      label: l('Investing', 'subjects'),
      title: ''
    },
    'industry.pharma': {
      label: l('Pharma', 'subjects'),
      title: ''
    },
    'industry.pr': {
      label: l('PR', 'subjects'),
      title: ''
    },
    'industry.trading': {
      label: l('Trading', 'subjects'),
      title: ''
    },
    'industry.insurance': {
      label: l('Insurance', 'subjects'),
      title: ''
    },
    'industry.security': {
      label: l('Security', 'subjects'),
      title: ''
    },
    celebrities: {
      label: l('Celebrities', 'subjects'),
      title: l('Mentions about public figures: actors, musicians, show business stars, opinion leaders, etc', 'subjects')
    },
    conflict: {
      label: l('Conflict', 'subjects'),
      title: ''
    },
    copyrights: {
      label: l('Copyrights', 'subjects'),
      title: ''
    },
    activities: {
      label: l('Activities', 'subjects'),
      title: ''
    },
    'activities.crafting': {
      label: l('Crafting', 'subjects'),
      title: ''
    },
    'activities.dancing': {
      label: l('Dancing', 'subjects'),
      title: ''
    },
    'activities.hobby & leisure': {
      label: l('Hobby & Leisure', 'subjects'),
      title: ''
    },
    tourism: {
      label: l('Travel', 'subjects'),
      title: l('All questions related to visiting different parts of the world. Tourist lifehacks, commercial and non-commercial information about world resorts, sightseeing, ticket sales and booking, housing reservations, visas and more.')
    },
    crime: {
      label: l('Crime', 'subjects'),
      title: ''
    },
    'crime.corruption': {
      label: l('Corruption', 'subjects'),
      title: ''
    },
    'crime.fraud': {
      label: l('Fraud', 'subjects'),
      title: ''
    },
    design: {
      label: l('Design', 'subjects'),
      title: ''
    },
    ecology: {
      label: l('Ecology', 'subjects'),
      title: ''
    },
    'ecology.ecological sustainability': {
      label: l('Ecological Sustainability', 'subjects'),
      title: ''
    },
    'ecology.pollution': {
      label: l('Pollution', 'subjects'),
      title: ''
    },
    economics: {
      label: l('Economics', 'subjects'),
      title: l('News and finance, tariffs, salaries, global and domestic economics', 'subjects')
    },
    events: {
      label: l('Events', 'subjects'),
      title: l('Different types of events: holiday, conference, exhibition, concert, etc', 'subjects')
    },
    'family & parenting': {
      label: l('Family & Parenting', 'subjects'),
      title: ''
    },
    'family & parenting.children': {
      label: l('Children', 'subjects'),
      title: l("Mentions about children and parenting: toys, books, fairy tales, children's vehicles, baby food, baby hygiene products and more. Questions around childhood education and")
    },
    fashion: {
      label: l('Fashion', 'subjects'),
      title: l('Mentions about clothes, shoes and accessories. Fashion industry news, fashion history, posts with ads for fashion items for sale.')
    },
    'fashion.clothing': {
      label: l('Clothing', 'subjects'),
      title: ''
    },
    'fashion.footwear': {
      label: l('Footwear', 'subjects'),
      title: ''
    },
    'fashion.jewellery': {
      label: l('Jewellery', 'subjects'),
      title: ''
    },
    'fashion.outfit': {
      label: l('Outfit', 'subjects'),
      title: ''
    },
    'meals & groceries': {
      label: l('Meals & Groceries', 'subjects'),
      title: ''
    },
    'meals & groceries.cuisine': {
      label: l('Cuisine', 'subjects'),
      title: ''
    },
    'meals & groceries.drinks': {
      label: l('Drinks', 'subjects'),
      title: ''
    },
    food: {
      label: l('Food', 'subjects'),
      title: l('Everything involving food preparation, cooking methods, recipes.', 'subjects')
    },
    gambling: {
      label: l('Gambling', 'subjects'),
      title: ''
    },
    games: {
      label: l('Games', 'subjects'),
      title: ''
    },
    cybersport: {
      label: l('Video Games', 'subjects'),
      title: l('Mentions about video games, e-sports events, streams, in-game items.', 'subjects')
    },
    wellness: {
      label: l('Wellness', 'subjects'),
      title: ''
    },
    'wellness.fitness': {
      label: l('Fitness', 'subjects'),
      title: ''
    },
    health: {
      label: l('Health', 'subjects'),
      title: l('Mentions of health, illness and symptoms, drug use. Achievements in the field of medicine. Health impacts from lifestyle, nutrition, physical activity, traditional medicine. The medical effect of cosmetic procedures, etc.')
    },
    'wellness.medicine': {
      label: l('Medicine', 'subjects'),
      title: ''
    },
    'wellness.mental health': {
      label: l('Mental Health', 'subjects'),
      title: ''
    },
    'wellness.nutrition': {
      label: l('Nutrition', 'subjects'),
      title: ''
    },
    'home & garden': {
      label: l('Home & Garden', 'subjects'),
      title: ''
    },
    incident: {
      label: l('Incident', 'subjects'),
      title: l('Various events, often unpleasant; misunderstandings.', 'subjects')
    },
    interior: {
      label: l('Interior', 'subjects'),
      title: l('Decor items, interior design, materials and repair features, landscape design.', 'subjects')
    },
    society: {
      label: l('Society', 'subjects'),
      title: ''
    },
    'society.government': {
      label: l('Government', 'subjects'),
      title: ''
    },
    'society.law': {
      label: l('Law', 'subjects'),
      title: ''
    },
    politics: {
      label: l('Politics', 'subjects'),
      title: l('Everything related to political life around the world, news, events, political figures.', 'subjects')
    },
    layoff: {
      label: l('Layoff', 'subjects'),
      title: ''
    },
    'industry.marketing': {
      label: l('Marketing', 'subjects'),
      title: ''
    },
    media: {
      label: l('Media', 'subjects'),
      title: ''
    },
    cinema: {
      label: l('Movies', 'subjects'),
      title: l('Film news, including promotional posters, announcements, releases, reviews, teasers, news, etc.')
    },
    music: {
      label: l('Music', 'subjects'),
      title: ''
    },
    nature: {
      label: l('Nature', 'subjects'),
      title: ''
    },
    'photo & video': {
      label: l('Photo & Video', 'subjects'),
      title: ''
    },
    protest: {
      label: l('Protest', 'subjects'),
      title: ''
    },
    real_estate: {
      label: l('Real Estate', 'subjects'),
      title: l('Everything about real estate: industry news, ads for sale or for rent.', 'subjects')
    },
    religion: {
      label: l('Religion', 'subjects'),
      title: l('Discussions of religion or religious context', 'subjects')
    },
    science: {
      label: l('Science', 'subjects'),
      title: l('Messages related to the natural, technical, humanities and social sciences', 'subjects')
    },
    shopping: {
      label: l('Shopping', 'subjects'),
      title: ''
    },
    inequality: {
      label: l('Inequality', 'subjects'),
      title: ''
    },
    'inequality.social injustice': {
      label: l('Social Injustice', 'subjects'),
      title: ''
    },
    'inequality.hate': {
      label: l('Hate Speech', 'subjects'),
      title: ''
    },
    sport_other: {
      label: l('Sports', 'subjects'),
      title: l('All sports that are not included in separate topics (cycling, athletics, chess, and others)', 'subjects')
    },
    sport_auto: {
      label: l('Motor Sports', 'subjects'),
      title: l('Competitions in racing, sports cars, motorcycles and karting', 'subjects')
    },
    'study & coaching': {
      label: l('Study & Coaching', 'subjects'),
      title: ''
    },
    tech: {
      label: l('Technology', 'subjects'),
      title: l('New technology, gadgets, applications, software products, programming languages and  the impact of all this on modern life.')
    },
    'information technology': {
      label: l('Information Technology', 'subjects'),
      title: ''
    },
    transport: {
      label: l('Transport', 'subjects'),
      title: ''
    },
    war: {
      label: l('War', 'subjects'),
      title: l('Military subjects, army, historical information about military operations.', 'subjects')
    }
  };
};
var getSubjectOrderTypesTranslations = function getSubjectOrderTypesTranslations() {
  return {
    potentialCrisis: l('Potential crises', 'subjectsOrderType'),
    sports: l('Sports', 'subjectsOrderType'),
    transportation: l('Transportation', 'subjectsOrderType'),
    entertainment: l('Entertainment', 'subjectsOrderType'),
    creativity: l('Creativity', 'subjectsOrderType'),
    tradesAndAffairs: l('Business and Industry', 'subjectsOrderType'),
    civilization: l('Culture and Progress', 'subjectsOrderType'),
    planet: l('Nature and Ecology', 'subjectsOrderType'),
    lifestyle: l('Lifestyle', 'subjectsOrderType'),
    mealsAndGroceries: l('Meals and Groceries', 'subjectsOrderType')
  };
};
var getSubjectOrderTypesTranslationByKey = function getSubjectOrderTypesTranslationByKey(key) {
  return getSubjectOrderTypesTranslations()[key];
};
var getSubjectsFilterTranslationLabel = function getSubjectsFilterTranslationLabel(key) {
  return getSubjectsFilterTranslation(key).label;
};
function getSubjectsFilterTranslation(key) {
  return getSubjectTranslations()[key] || {
    label: key,
    title: key
  };
}
var isSubjectFilterTranslationExists = function isSubjectFilterTranslationExists(key) {
  return !!getSubjectTranslations()[key];
};

/***/ }),

/***/ "wbkJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (text) {
  var truncateLength = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;
  if (text && text.length >= truncateLength) {
    return text.slice(0, truncateLength).concat('...');
  }
  return text;
});

/***/ }),

/***/ "YocI":
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("rxK0");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JPst");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.react-placeholder.rect-shape,
.react-placeholder.round-shape,
.react-placeholder.text-row,
.react-placeholder .rect-shape,
.react-placeholder .round-shape,
.react-placeholder .text-row {
    animation: placeholder-pulse 1s infinite;
}

@keyframes placeholder-pulse {
    0% {
        opacity: .4;
    }
    50% {
        opacity: .9;
    }
    100% {
        opacity: .4;
    }
}

.react-placeholder .rect-shape,
.react-placeholder .round-shape,
.react-placeholder .text-row {
    color: var(--grayBase);
    background-color: var(--grayLighter);
}

.text-block > .text-row,
.rect-shape {
    border-radius: var(--borderRadius);
}
`, "",{"version":3,"sources":["webpack://./src/assets/utils/placeholder-styles.css"],"names":[],"mappings":"AAAA;;;;;;IAMI,wCAAwC;AAC5C;;AAEA;IACI;QACI,WAAW;IACf;IACA;QACI,WAAW;IACf;IACA;QACI,WAAW;IACf;AACJ;;AAEA;;;IAGI,sBAAsB;IACtB,oCAAoC;AACxC;;AAEA;;IAEI,kCAAkC;AACtC","sourcesContent":[".react-placeholder.rect-shape,\n.react-placeholder.round-shape,\n.react-placeholder.text-row,\n.react-placeholder .rect-shape,\n.react-placeholder .round-shape,\n.react-placeholder .text-row {\n    animation: placeholder-pulse 1s infinite;\n}\n\n@keyframes placeholder-pulse {\n    0% {\n        opacity: .4;\n    }\n    50% {\n        opacity: .9;\n    }\n    100% {\n        opacity: .4;\n    }\n}\n\n.react-placeholder .rect-shape,\n.react-placeholder .round-shape,\n.react-placeholder .text-row {\n    color: var(--grayBase);\n    background-color: var(--grayLighter);\n}\n\n.text-block > .text-row,\n.rect-shape {\n    border-radius: var(--borderRadius);\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "ZsXJ":
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("rxK0");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JPst");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.ui.popup {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    
  /* Fixes content being squished when inline (moz only) */
    min-width: -webkit-min-content;
    min-width: -moz-min-content;
    min-width: min-content;
    z-index: 1900;
    border: 1px solid #D4D4D5;
    line-height: 1.4285em;
    max-width: 250px;
    padding: 0.833em 1em;
    font-weight: normal;
    font-style: normal;
    color: rgba(0, 0, 0, 0.87);
    border-radius: 0.28571429rem;
    -webkit-box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);
            box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);
}
.ui.popup > .header {
    padding: 0;
    font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
    font-size: 1.14285714em;
    line-height: 1.2;
    font-weight: bold;
}
.ui.popup > .header + .content {
    padding-top: 0.5em;
}
.ui.popup:before {
    position: absolute;
    content: '';
    width: 0.71428571em;
    height: 0.71428571em;
    background: var(--white);
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-box-shadow: 1px 1px 0 0 var(--bordersColor);
            box-shadow: 1px 1px 0 0 var(--bordersColor);
}


[data-tooltip] {
    position: relative;
}

[data-tooltip]:before {
    pointer-events: none;
    position: absolute;
    content: '';
    font-size: 1rem;
    width: 0.71428571em;
    height: 0.71428571em;
    background: #FFFFFF;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    z-index: 2;
    -webkit-box-shadow: 1px 1px 0 0 var(--bordersColor);
            box-shadow: 1px 1px 0 0 var(--bordersColor);
}

[data-tooltip]:after {
    pointer-events: none;
    content: attr(data-tooltip);
    position: absolute;
    text-transform: none;
    text-align: left;
    white-space: nowrap;
    font-size: 1rem;
    border: 1px solid #D4D4D5;
    line-height: 1.4285em;
    max-width: none;
    background: #FFFFFF;
    padding: 0.833em 1em;
    font-weight: normal;
    font-style: normal;
    color: rgba(0, 0, 0, 0.87);
    border-radius: 0.28571429rem;
    -webkit-box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);
            box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);
    z-index: 1;
}

[data-tooltip]:not([data-position]):before {
    top: auto;
    right: auto;
    bottom: 100%;
    left: 50%;
    background: #FFFFFF;
    margin-left: -0.07142857rem;
    margin-bottom: 0.14285714rem;
}
[data-tooltip]:not([data-position]):after {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 100%;
    margin-bottom: 0.5em;
}

[data-tooltip]:before,
[data-tooltip]:after {
    pointer-events: none;
    visibility: hidden;
}
[data-tooltip]:before {
    opacity: 0;
    -webkit-transform: rotate(45deg) scale(0) !important;
            transform: rotate(45deg) scale(0) !important;
    -webkit-transform-origin: center top;
            transform-origin: center top;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
}
[data-tooltip]:after {
    opacity: 1;
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
}
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
    visibility: visible;
    pointer-events: auto;
}
[data-tooltip]:hover:before {
    -webkit-transform: rotate(45deg) scale(1) !important;
            transform: rotate(45deg) scale(1) !important;
    opacity: 1;
}

[data-tooltip]:after,
[data-tooltip][data-position="top center"]:after,
[data-tooltip][data-position="bottom center"]:after {
    -webkit-transform: translateX(-50%) scale(0) !important;
            transform: translateX(-50%) scale(0) !important;
}
[data-tooltip]:hover:after,
[data-tooltip][data-position="bottom center"]:hover:after {
    -webkit-transform: translateX(-50%) scale(1) !important;
            transform: translateX(-50%) scale(1) !important;
}
[data-tooltip][data-position="left center"]:after,
[data-tooltip][data-position="right center"]:after {
    -webkit-transform: translateY(-50%) scale(0) !important;
            transform: translateY(-50%) scale(0) !important;
}
[data-tooltip][data-position="left center"]:hover:after,
[data-tooltip][data-position="right center"]:hover:after {
    -webkit-transform: translateY(-50%) scale(1) !important;
            transform: translateY(-50%) scale(1) !important;
}
[data-tooltip][data-position="top left"]:after,
[data-tooltip][data-position="top right"]:after,
[data-tooltip][data-position="bottom left"]:after,
[data-tooltip][data-position="bottom right"]:after {
    -webkit-transform: scale(0) !important;
            transform: scale(0) !important;
}
[data-tooltip][data-position="top left"]:hover:after,
[data-tooltip][data-position="top right"]:hover:after,
[data-tooltip][data-position="bottom left"]:hover:after,
[data-tooltip][data-position="bottom right"]:hover:after {
    -webkit-transform: scale(1) !important;
            transform: scale(1) !important;
}

[data-tooltip][data-inverted]:before {
    background: #1B1C1D;
}

[data-tooltip][data-inverted]:after {
    background: #1B1C1D;
    color: #FFFFFF;
}
[data-tooltip][data-inverted]:after .header {
    background-color: none;
    color: #FFFFFF;
}


[data-position="top center"][data-tooltip]:after {
    top: auto;
    right: auto;
    left: 50%;
    bottom: 100%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-bottom: 0.5em;
}
[data-position="top center"][data-tooltip]:before {
    top: auto;
    right: auto;
    bottom: 100%;
    left: 50%;
    background: #FFFFFF;
    margin-left: -0.07142857rem;
    margin-bottom: 0.14285714rem;
}

[data-position="top left"][data-tooltip]:after {
    top: auto;
    right: auto;
    left: 0;
    bottom: 100%;
    margin-bottom: 0.5em;
}
[data-position="top left"][data-tooltip]:before {
    top: auto;
    right: auto;
    bottom: 100%;
    left: 1em;
    margin-left: -0.07142857rem;
    margin-bottom: 0.14285714rem;
}

[data-position="top right"][data-tooltip]:after {
    top: auto;
    left: auto;
    right: 0;
    bottom: 100%;
    margin-bottom: 0.5em;
}
[data-position="top right"][data-tooltip]:before {
    top: auto;
    left: auto;
    bottom: 100%;
    right: 1em;
    margin-left: -0.07142857rem;
    margin-bottom: 0.14285714rem;
}

[data-position="bottom center"][data-tooltip]:after {
    bottom: auto;
    right: auto;
    left: 50%;
    top: 100%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-top: 0.5em;
}
[data-position="bottom center"][data-tooltip]:before {
    bottom: auto;
    right: auto;
    top: 100%;
    left: 50%;
    margin-left: -0.07142857rem;
    margin-top: 0.14285714rem;
}

[data-position="bottom left"][data-tooltip]:after {
    left: 0;
    top: 100%;
    margin-top: 0.5em;
}
[data-position="bottom left"][data-tooltip]:before {
    bottom: auto;
    right: auto;
    top: 100%;
    left: 1em;
    margin-left: -0.07142857rem;
    margin-top: 0.14285714rem;
}

[data-position="bottom right"][data-tooltip]:after {
    right: 0;
    top: 100%;
    margin-top: 0.5em;
}
[data-position="bottom right"][data-tooltip]:before {
    bottom: auto;
    left: auto;
    top: 100%;
    right: 1em;
    margin-left: -0.14285714rem;
    margin-top: 0.07142857rem;
}

[data-position="left center"][data-tooltip]:after {
    right: 100%;
    top: 50%;
    margin-right: 0.5em;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
[data-position="left center"][data-tooltip]:before {
    right: 100%;
    top: 50%;
    margin-top: -0.14285714rem;
    margin-right: -0.07142857rem;
}

[data-position="right center"][data-tooltip]:after {
    left: 100%;
    top: 50%;
    margin-left: 0.5em;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
[data-position="right center"][data-tooltip]:before {
    left: 100%;
    top: 50%;
    margin-top: -0.07142857rem;
    margin-left: 0.14285714rem;
}

[data-position~="bottom"][data-tooltip]:before {
    background: #FFFFFF;
    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);
            box-shadow: -1px -1px 0 0 var(--bordersColor);
}
[data-position="left center"][data-tooltip]:before {
    background: #FFFFFF;
    -webkit-box-shadow: 1px -1px 0 0 var(--bordersColor);
            box-shadow: 1px -1px 0 0 var(--bordersColor);
}
[data-position="right center"][data-tooltip]:before {
    background: #FFFFFF;
    -webkit-box-shadow: -1px 1px 0 0 var(--bordersColor);
            box-shadow: -1px 1px 0 0 var(--bordersColor);
}
[data-position~="top"][data-tooltip]:before {
    background: #FFFFFF;
}

[data-inverted][data-position~="bottom"][data-tooltip]:before {
    background: #1B1C1D;
    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);
            box-shadow: -1px -1px 0 0 var(--bordersColor);
}
[data-inverted][data-position="left center"][data-tooltip]:before {
    background: #1B1C1D;
    -webkit-box-shadow: 1px -1px 0 0 var(--bordersColor);
            box-shadow: 1px -1px 0 0 var(--bordersColor);
}
[data-inverted][data-position="right center"][data-tooltip]:before {
    background: #1B1C1D;
    -webkit-box-shadow: -1px 1px 0 0 var(--bordersColor);
            box-shadow: -1px 1px 0 0 var(--bordersColor);
}
[data-inverted][data-position~="top"][data-tooltip]:before {
    background: #1B1C1D;
}
[data-position~="bottom"][data-tooltip]:before {
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
}
[data-position~="bottom"][data-tooltip]:after {
    -webkit-transform-origin: center top;
            transform-origin: center top;
}
[data-position="left center"][data-tooltip]:before {
    -webkit-transform-origin: top center;
            transform-origin: top center;
}
[data-position="left center"][data-tooltip]:after {
    -webkit-transform-origin: right center;
            transform-origin: right center;
}
[data-position="right center"][data-tooltip]:before {
    -webkit-transform-origin: right center;
            transform-origin: right center;
}
[data-position="right center"][data-tooltip]:after {
    -webkit-transform-origin: left center;
            transform-origin: left center;
}

.ui.popup {
    margin: 0;
}

.ui.top.popup {
    margin: 0 0 0.71428571em;
}
.ui.top.left.popup {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
}
.ui.top.center.popup {
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
}
.ui.top.right.popup {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
}

.ui.left.center.popup {
    margin: 0 0.71428571em 0 0;
    -webkit-transform-origin: right 50%;
            transform-origin: right 50%;
}
.ui.right.center.popup {
    margin: 0 0 0 0.71428571em;
    -webkit-transform-origin: left 50%;
            transform-origin: left 50%;
}

.ui.bottom.popup {
    margin: 0.71428571em 0 0;
}
.ui.bottom.left.popup {
    -webkit-transform-origin: left top;
            transform-origin: left top;
}
.ui.bottom.center.popup {
    -webkit-transform-origin: center top;
            transform-origin: center top;
}
.ui.bottom.right.popup {
    -webkit-transform-origin: right top;
            transform-origin: right top;
}

.ui.bottom.center.popup:before {
    margin-left: -0.30714286em;
    top: -0.30714286em;
    left: 50%;
    right: auto;
    bottom: auto;
    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);
            box-shadow: -1px -1px 0 0 var(--bordersColor);
}
.ui.bottom.left.popup {
    margin-left: 0;
}
/*rtl:rename*/
.ui.bottom.left.popup:before {
    top: -0.30714286em;
    left: 1em;
    right: auto;
    bottom: auto;
    margin-left: 0;
    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);
            box-shadow: -1px -1px 0 0 var(--bordersColor);
}
.ui.bottom.right.popup {
    margin-right: 0;
}
/*rtl:rename*/
.ui.bottom.right.popup:before {
    top: -0.30714286em;
    right: 1em;
    bottom: auto;
    left: auto;
    margin-left: 0;
    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);
            box-shadow: -1px -1px 0 0 var(--bordersColor);
}

.ui.top.center.popup:before {
    top: auto;
    right: auto;
    bottom: -0.30714286em;
    left: 50%;
    margin-left: -0.30714286em;
}
.ui.top.left.popup {
    margin-left: 0;
}
/*rtl:rename*/
.ui.top.left.popup:before {
    bottom: -0.30714286em;
    left: 1em;
    top: auto;
    right: auto;
    margin-left: 0;
}
.ui.top.right.popup {
    margin-right: 0;
}
/*rtl:rename*/
.ui.top.right.popup:before {
    bottom: -0.30714286em;
    right: 1em;
    top: auto;
    left: auto;
    margin-left: 0;
}

/*rtl:rename*/
.ui.left.center.popup:before {
    top: 50%;
    right: -0.30714286em;
    bottom: auto;
    left: auto;
    margin-top: -0.30714286em;
    -webkit-box-shadow: 1px -1px 0 0 var(--bordersColor);
            box-shadow: 1px -1px 0 0 var(--bordersColor);
}

/*rtl:rename*/
.ui.right.center.popup:before {
    top: 50%;
    left: -0.30714286em;
    bottom: auto;
    right: auto;
    margin-top: -0.30714286em;
    -webkit-box-shadow: -1px 1px 0 0 var(--bordersColor);
            box-shadow: -1px 1px 0 0 var(--bordersColor);
}

.ui.inverted.bottom.popup:before {
    background: #1B1C1D;
}
.ui.inverted.right.center.popup:before,
.ui.inverted.left.center.popup:before {
    background: #1B1C1D;
}
.ui.inverted.top.popup:before {
    background: #1B1C1D;
}

.ui.popup > .ui.grid:not(.padded) {
    width: calc(100% + 1.75rem);
    margin: -0.7rem -0.875rem;
}

.ui.loading.popup {
    display: block;
    visibility: hidden;
    z-index: -1;
}
.ui.animating.popup,
.ui.visible.popup {
    display: block;
}
.ui.visible.popup {
    -webkit-transform: translateZ(0px);
            transform: translateZ(0px);
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}

.ui.basic.popup:before {
    display: none;
}

.ui.wide.popup {
    max-width: 350px;
}
.ui[class*="very wide"].popup {
    max-width: 550px;
}
@media only screen and (max-width: 767px) {
    .ui.wide.popup,
    .ui[class*="very wide"].popup {
        max-width: 250px;
    }
}

.ui.fluid.popup {
    width: 100%;
    max-width: none;
}


.ui.inverted.popup {
    background: #1B1C1D;
    color: #FFFFFF;
}
.ui.inverted.popup .header {
    background-color: none;
    color: #FFFFFF;
}
.ui.inverted.popup:before {
    background-color: #1B1C1D;
}

.ui.flowing.popup {
    max-width: none;
}

.ui.mini.popup {
    font-size: 0.78571429rem;
}
.ui.tiny.popup {
    font-size: 0.85714286rem;
}
.ui.small.popup {
    font-size: 0.92857143rem;
}
.ui.popup {
    font-size: 1rem;
}
.ui.large.popup {
    font-size: 1.14285714rem;
}
.ui.huge.popup {
    font-size: 1.42857143rem;
}
`, "",{"version":3,"sources":["webpack://./src/assets/utils/semantic-ui-popover-styles.css"],"names":[],"mappings":"AAAA;IACI,aAAa;IACb,kBAAkB;IAClB,MAAM;IACN,QAAQ;;EAEV,wDAAwD;IACtD,8BAA8B;IAC9B,2BAA2B;IAC3B,sBAAsB;IACtB,aAAa;IACb,yBAAyB;IACzB,qBAAqB;IACrB,gBAAgB;IAChB,oBAAoB;IACpB,mBAAmB;IACnB,kBAAkB;IAClB,0BAA0B;IAC1B,4BAA4B;IAC5B,2FAA2F;YACnF,mFAAmF;AAC/F;AACA;IACI,UAAU;IACV,2DAA2D;IAC3D,uBAAuB;IACvB,gBAAgB;IAChB,iBAAiB;AACrB;AACA;IACI,kBAAkB;AACtB;AACA;IACI,kBAAkB;IAClB,WAAW;IACX,mBAAmB;IACnB,oBAAoB;IACpB,wBAAwB;IACxB,gCAAgC;YACxB,wBAAwB;IAChC,mDAAmD;YAC3C,2CAA2C;AACvD;;;AAGA;IACI,kBAAkB;AACtB;;AAEA;IACI,oBAAoB;IACpB,kBAAkB;IAClB,WAAW;IACX,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,gCAAgC;YACxB,wBAAwB;IAChC,UAAU;IACV,mDAAmD;YAC3C,2CAA2C;AACvD;;AAEA;IACI,oBAAoB;IACpB,2BAA2B;IAC3B,kBAAkB;IAClB,oBAAoB;IACpB,gBAAgB;IAChB,mBAAmB;IACnB,eAAe;IACf,yBAAyB;IACzB,qBAAqB;IACrB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,kBAAkB;IAClB,0BAA0B;IAC1B,4BAA4B;IAC5B,2FAA2F;YACnF,mFAAmF;IAC3F,UAAU;AACd;;AAEA;IACI,SAAS;IACT,WAAW;IACX,YAAY;IACZ,SAAS;IACT,mBAAmB;IACnB,2BAA2B;IAC3B,4BAA4B;AAChC;AACA;IACI,SAAS;IACT,mCAAmC;YAC3B,2BAA2B;IACnC,YAAY;IACZ,oBAAoB;AACxB;;AAEA;;IAEI,oBAAoB;IACpB,kBAAkB;AACtB;AACA;IACI,UAAU;IACV,oDAAoD;YAC5C,4CAA4C;IACpD,oCAAoC;YAC5B,4BAA4B;IACpC,iCAAiC;IACjC,yBAAyB;AAC7B;AACA;IACI,UAAU;IACV,uCAAuC;YAC/B,+BAA+B;IACvC,iCAAiC;IACjC,yBAAyB;AAC7B;AACA;;IAEI,mBAAmB;IACnB,oBAAoB;AACxB;AACA;IACI,oDAAoD;YAC5C,4CAA4C;IACpD,UAAU;AACd;;AAEA;;;IAGI,uDAAuD;YAC/C,+CAA+C;AAC3D;AACA;;IAEI,uDAAuD;YAC/C,+CAA+C;AAC3D;AACA;;IAEI,uDAAuD;YAC/C,+CAA+C;AAC3D;AACA;;IAEI,uDAAuD;YAC/C,+CAA+C;AAC3D;AACA;;;;IAII,sCAAsC;YAC9B,8BAA8B;AAC1C;AACA;;;;IAII,sCAAsC;YAC9B,8BAA8B;AAC1C;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,mBAAmB;IACnB,cAAc;AAClB;AACA;IACI,sBAAsB;IACtB,cAAc;AAClB;;;AAGA;IACI,SAAS;IACT,WAAW;IACX,SAAS;IACT,YAAY;IACZ,mCAAmC;YAC3B,2BAA2B;IACnC,oBAAoB;AACxB;AACA;IACI,SAAS;IACT,WAAW;IACX,YAAY;IACZ,SAAS;IACT,mBAAmB;IACnB,2BAA2B;IAC3B,4BAA4B;AAChC;;AAEA;IACI,SAAS;IACT,WAAW;IACX,OAAO;IACP,YAAY;IACZ,oBAAoB;AACxB;AACA;IACI,SAAS;IACT,WAAW;IACX,YAAY;IACZ,SAAS;IACT,2BAA2B;IAC3B,4BAA4B;AAChC;;AAEA;IACI,SAAS;IACT,UAAU;IACV,QAAQ;IACR,YAAY;IACZ,oBAAoB;AACxB;AACA;IACI,SAAS;IACT,UAAU;IACV,YAAY;IACZ,UAAU;IACV,2BAA2B;IAC3B,4BAA4B;AAChC;;AAEA;IACI,YAAY;IACZ,WAAW;IACX,SAAS;IACT,SAAS;IACT,mCAAmC;YAC3B,2BAA2B;IACnC,iBAAiB;AACrB;AACA;IACI,YAAY;IACZ,WAAW;IACX,SAAS;IACT,SAAS;IACT,2BAA2B;IAC3B,yBAAyB;AAC7B;;AAEA;IACI,OAAO;IACP,SAAS;IACT,iBAAiB;AACrB;AACA;IACI,YAAY;IACZ,WAAW;IACX,SAAS;IACT,SAAS;IACT,2BAA2B;IAC3B,yBAAyB;AAC7B;;AAEA;IACI,QAAQ;IACR,SAAS;IACT,iBAAiB;AACrB;AACA;IACI,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;IACV,2BAA2B;IAC3B,yBAAyB;AAC7B;;AAEA;IACI,WAAW;IACX,QAAQ;IACR,mBAAmB;IACnB,mCAAmC;YAC3B,2BAA2B;AACvC;AACA;IACI,WAAW;IACX,QAAQ;IACR,0BAA0B;IAC1B,4BAA4B;AAChC;;AAEA;IACI,UAAU;IACV,QAAQ;IACR,kBAAkB;IAClB,mCAAmC;YAC3B,2BAA2B;AACvC;AACA;IACI,UAAU;IACV,QAAQ;IACR,0BAA0B;IAC1B,0BAA0B;AAC9B;;AAEA;IACI,mBAAmB;IACnB,qDAAqD;YAC7C,6CAA6C;AACzD;AACA;IACI,mBAAmB;IACnB,oDAAoD;YAC5C,4CAA4C;AACxD;AACA;IACI,mBAAmB;IACnB,oDAAoD;YAC5C,4CAA4C;AACxD;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,mBAAmB;IACnB,qDAAqD;YAC7C,6CAA6C;AACzD;AACA;IACI,mBAAmB;IACnB,oDAAoD;YAC5C,4CAA4C;AACxD;AACA;IACI,mBAAmB;IACnB,oDAAoD;YAC5C,4CAA4C;AACxD;AACA;IACI,mBAAmB;AACvB;AACA;IACI,uCAAuC;YAC/B,+BAA+B;AAC3C;AACA;IACI,oCAAoC;YAC5B,4BAA4B;AACxC;AACA;IACI,oCAAoC;YAC5B,4BAA4B;AACxC;AACA;IACI,sCAAsC;YAC9B,8BAA8B;AAC1C;AACA;IACI,sCAAsC;YAC9B,8BAA8B;AAC1C;AACA;IACI,qCAAqC;YAC7B,6BAA6B;AACzC;;AAEA;IACI,SAAS;AACb;;AAEA;IACI,wBAAwB;AAC5B;AACA;IACI,qCAAqC;YAC7B,6BAA6B;AACzC;AACA;IACI,uCAAuC;YAC/B,+BAA+B;AAC3C;AACA;IACI,sCAAsC;YAC9B,8BAA8B;AAC1C;;AAEA;IACI,0BAA0B;IAC1B,mCAAmC;YAC3B,2BAA2B;AACvC;AACA;IACI,0BAA0B;IAC1B,kCAAkC;YAC1B,0BAA0B;AACtC;;AAEA;IACI,wBAAwB;AAC5B;AACA;IACI,kCAAkC;YAC1B,0BAA0B;AACtC;AACA;IACI,oCAAoC;YAC5B,4BAA4B;AACxC;AACA;IACI,mCAAmC;YAC3B,2BAA2B;AACvC;;AAEA;IACI,0BAA0B;IAC1B,kBAAkB;IAClB,SAAS;IACT,WAAW;IACX,YAAY;IACZ,qDAAqD;YAC7C,6CAA6C;AACzD;AACA;IACI,cAAc;AAClB;AACA,aAAa;AACb;IACI,kBAAkB;IAClB,SAAS;IACT,WAAW;IACX,YAAY;IACZ,cAAc;IACd,qDAAqD;YAC7C,6CAA6C;AACzD;AACA;IACI,eAAe;AACnB;AACA,aAAa;AACb;IACI,kBAAkB;IAClB,UAAU;IACV,YAAY;IACZ,UAAU;IACV,cAAc;IACd,qDAAqD;YAC7C,6CAA6C;AACzD;;AAEA;IACI,SAAS;IACT,WAAW;IACX,qBAAqB;IACrB,SAAS;IACT,0BAA0B;AAC9B;AACA;IACI,cAAc;AAClB;AACA,aAAa;AACb;IACI,qBAAqB;IACrB,SAAS;IACT,SAAS;IACT,WAAW;IACX,cAAc;AAClB;AACA;IACI,eAAe;AACnB;AACA,aAAa;AACb;IACI,qBAAqB;IACrB,UAAU;IACV,SAAS;IACT,UAAU;IACV,cAAc;AAClB;;AAEA,aAAa;AACb;IACI,QAAQ;IACR,oBAAoB;IACpB,YAAY;IACZ,UAAU;IACV,yBAAyB;IACzB,oDAAoD;YAC5C,4CAA4C;AACxD;;AAEA,aAAa;AACb;IACI,QAAQ;IACR,mBAAmB;IACnB,YAAY;IACZ,WAAW;IACX,yBAAyB;IACzB,oDAAoD;YAC5C,4CAA4C;AACxD;;AAEA;IACI,mBAAmB;AACvB;AACA;;IAEI,mBAAmB;AACvB;AACA;IACI,mBAAmB;AACvB;;AAEA;IACI,2BAA2B;IAC3B,yBAAyB;AAC7B;;AAEA;IACI,cAAc;IACd,kBAAkB;IAClB,WAAW;AACf;AACA;;IAEI,cAAc;AAClB;AACA;IACI,kCAAkC;YAC1B,0BAA0B;IAClC,mCAAmC;YAC3B,2BAA2B;AACvC;;AAEA;IACI,aAAa;AACjB;;AAEA;IACI,gBAAgB;AACpB;AACA;IACI,gBAAgB;AACpB;AACA;IACI;;QAEI,gBAAgB;IACpB;AACJ;;AAEA;IACI,WAAW;IACX,eAAe;AACnB;;;AAGA;IACI,mBAAmB;IACnB,cAAc;AAClB;AACA;IACI,sBAAsB;IACtB,cAAc;AAClB;AACA;IACI,yBAAyB;AAC7B;;AAEA;IACI,eAAe;AACnB;;AAEA;IACI,wBAAwB;AAC5B;AACA;IACI,wBAAwB;AAC5B;AACA;IACI,wBAAwB;AAC5B;AACA;IACI,eAAe;AACnB;AACA;IACI,wBAAwB;AAC5B;AACA;IACI,wBAAwB;AAC5B","sourcesContent":[".ui.popup {\n    display: none;\n    position: absolute;\n    top: 0;\n    right: 0;\n    \n  /* Fixes content being squished when inline (moz only) */\n    min-width: -webkit-min-content;\n    min-width: -moz-min-content;\n    min-width: min-content;\n    z-index: 1900;\n    border: 1px solid #D4D4D5;\n    line-height: 1.4285em;\n    max-width: 250px;\n    padding: 0.833em 1em;\n    font-weight: normal;\n    font-style: normal;\n    color: rgba(0, 0, 0, 0.87);\n    border-radius: 0.28571429rem;\n    -webkit-box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);\n            box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);\n}\n.ui.popup > .header {\n    padding: 0;\n    font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;\n    font-size: 1.14285714em;\n    line-height: 1.2;\n    font-weight: bold;\n}\n.ui.popup > .header + .content {\n    padding-top: 0.5em;\n}\n.ui.popup:before {\n    position: absolute;\n    content: '';\n    width: 0.71428571em;\n    height: 0.71428571em;\n    background: var(--white);\n    -webkit-transform: rotate(45deg);\n            transform: rotate(45deg);\n    -webkit-box-shadow: 1px 1px 0 0 var(--bordersColor);\n            box-shadow: 1px 1px 0 0 var(--bordersColor);\n}\n\n\n[data-tooltip] {\n    position: relative;\n}\n\n[data-tooltip]:before {\n    pointer-events: none;\n    position: absolute;\n    content: '';\n    font-size: 1rem;\n    width: 0.71428571em;\n    height: 0.71428571em;\n    background: #FFFFFF;\n    -webkit-transform: rotate(45deg);\n            transform: rotate(45deg);\n    z-index: 2;\n    -webkit-box-shadow: 1px 1px 0 0 var(--bordersColor);\n            box-shadow: 1px 1px 0 0 var(--bordersColor);\n}\n\n[data-tooltip]:after {\n    pointer-events: none;\n    content: attr(data-tooltip);\n    position: absolute;\n    text-transform: none;\n    text-align: left;\n    white-space: nowrap;\n    font-size: 1rem;\n    border: 1px solid #D4D4D5;\n    line-height: 1.4285em;\n    max-width: none;\n    background: #FFFFFF;\n    padding: 0.833em 1em;\n    font-weight: normal;\n    font-style: normal;\n    color: rgba(0, 0, 0, 0.87);\n    border-radius: 0.28571429rem;\n    -webkit-box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);\n            box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);\n    z-index: 1;\n}\n\n[data-tooltip]:not([data-position]):before {\n    top: auto;\n    right: auto;\n    bottom: 100%;\n    left: 50%;\n    background: #FFFFFF;\n    margin-left: -0.07142857rem;\n    margin-bottom: 0.14285714rem;\n}\n[data-tooltip]:not([data-position]):after {\n    left: 50%;\n    -webkit-transform: translateX(-50%);\n            transform: translateX(-50%);\n    bottom: 100%;\n    margin-bottom: 0.5em;\n}\n\n[data-tooltip]:before,\n[data-tooltip]:after {\n    pointer-events: none;\n    visibility: hidden;\n}\n[data-tooltip]:before {\n    opacity: 0;\n    -webkit-transform: rotate(45deg) scale(0) !important;\n            transform: rotate(45deg) scale(0) !important;\n    -webkit-transform-origin: center top;\n            transform-origin: center top;\n    -webkit-transition: all 0.1s ease;\n    transition: all 0.1s ease;\n}\n[data-tooltip]:after {\n    opacity: 1;\n    -webkit-transform-origin: center bottom;\n            transform-origin: center bottom;\n    -webkit-transition: all 0.1s ease;\n    transition: all 0.1s ease;\n}\n[data-tooltip]:hover:before,\n[data-tooltip]:hover:after {\n    visibility: visible;\n    pointer-events: auto;\n}\n[data-tooltip]:hover:before {\n    -webkit-transform: rotate(45deg) scale(1) !important;\n            transform: rotate(45deg) scale(1) !important;\n    opacity: 1;\n}\n\n[data-tooltip]:after,\n[data-tooltip][data-position=\"top center\"]:after,\n[data-tooltip][data-position=\"bottom center\"]:after {\n    -webkit-transform: translateX(-50%) scale(0) !important;\n            transform: translateX(-50%) scale(0) !important;\n}\n[data-tooltip]:hover:after,\n[data-tooltip][data-position=\"bottom center\"]:hover:after {\n    -webkit-transform: translateX(-50%) scale(1) !important;\n            transform: translateX(-50%) scale(1) !important;\n}\n[data-tooltip][data-position=\"left center\"]:after,\n[data-tooltip][data-position=\"right center\"]:after {\n    -webkit-transform: translateY(-50%) scale(0) !important;\n            transform: translateY(-50%) scale(0) !important;\n}\n[data-tooltip][data-position=\"left center\"]:hover:after,\n[data-tooltip][data-position=\"right center\"]:hover:after {\n    -webkit-transform: translateY(-50%) scale(1) !important;\n            transform: translateY(-50%) scale(1) !important;\n}\n[data-tooltip][data-position=\"top left\"]:after,\n[data-tooltip][data-position=\"top right\"]:after,\n[data-tooltip][data-position=\"bottom left\"]:after,\n[data-tooltip][data-position=\"bottom right\"]:after {\n    -webkit-transform: scale(0) !important;\n            transform: scale(0) !important;\n}\n[data-tooltip][data-position=\"top left\"]:hover:after,\n[data-tooltip][data-position=\"top right\"]:hover:after,\n[data-tooltip][data-position=\"bottom left\"]:hover:after,\n[data-tooltip][data-position=\"bottom right\"]:hover:after {\n    -webkit-transform: scale(1) !important;\n            transform: scale(1) !important;\n}\n\n[data-tooltip][data-inverted]:before {\n    background: #1B1C1D;\n}\n\n[data-tooltip][data-inverted]:after {\n    background: #1B1C1D;\n    color: #FFFFFF;\n}\n[data-tooltip][data-inverted]:after .header {\n    background-color: none;\n    color: #FFFFFF;\n}\n\n\n[data-position=\"top center\"][data-tooltip]:after {\n    top: auto;\n    right: auto;\n    left: 50%;\n    bottom: 100%;\n    -webkit-transform: translateX(-50%);\n            transform: translateX(-50%);\n    margin-bottom: 0.5em;\n}\n[data-position=\"top center\"][data-tooltip]:before {\n    top: auto;\n    right: auto;\n    bottom: 100%;\n    left: 50%;\n    background: #FFFFFF;\n    margin-left: -0.07142857rem;\n    margin-bottom: 0.14285714rem;\n}\n\n[data-position=\"top left\"][data-tooltip]:after {\n    top: auto;\n    right: auto;\n    left: 0;\n    bottom: 100%;\n    margin-bottom: 0.5em;\n}\n[data-position=\"top left\"][data-tooltip]:before {\n    top: auto;\n    right: auto;\n    bottom: 100%;\n    left: 1em;\n    margin-left: -0.07142857rem;\n    margin-bottom: 0.14285714rem;\n}\n\n[data-position=\"top right\"][data-tooltip]:after {\n    top: auto;\n    left: auto;\n    right: 0;\n    bottom: 100%;\n    margin-bottom: 0.5em;\n}\n[data-position=\"top right\"][data-tooltip]:before {\n    top: auto;\n    left: auto;\n    bottom: 100%;\n    right: 1em;\n    margin-left: -0.07142857rem;\n    margin-bottom: 0.14285714rem;\n}\n\n[data-position=\"bottom center\"][data-tooltip]:after {\n    bottom: auto;\n    right: auto;\n    left: 50%;\n    top: 100%;\n    -webkit-transform: translateX(-50%);\n            transform: translateX(-50%);\n    margin-top: 0.5em;\n}\n[data-position=\"bottom center\"][data-tooltip]:before {\n    bottom: auto;\n    right: auto;\n    top: 100%;\n    left: 50%;\n    margin-left: -0.07142857rem;\n    margin-top: 0.14285714rem;\n}\n\n[data-position=\"bottom left\"][data-tooltip]:after {\n    left: 0;\n    top: 100%;\n    margin-top: 0.5em;\n}\n[data-position=\"bottom left\"][data-tooltip]:before {\n    bottom: auto;\n    right: auto;\n    top: 100%;\n    left: 1em;\n    margin-left: -0.07142857rem;\n    margin-top: 0.14285714rem;\n}\n\n[data-position=\"bottom right\"][data-tooltip]:after {\n    right: 0;\n    top: 100%;\n    margin-top: 0.5em;\n}\n[data-position=\"bottom right\"][data-tooltip]:before {\n    bottom: auto;\n    left: auto;\n    top: 100%;\n    right: 1em;\n    margin-left: -0.14285714rem;\n    margin-top: 0.07142857rem;\n}\n\n[data-position=\"left center\"][data-tooltip]:after {\n    right: 100%;\n    top: 50%;\n    margin-right: 0.5em;\n    -webkit-transform: translateY(-50%);\n            transform: translateY(-50%);\n}\n[data-position=\"left center\"][data-tooltip]:before {\n    right: 100%;\n    top: 50%;\n    margin-top: -0.14285714rem;\n    margin-right: -0.07142857rem;\n}\n\n[data-position=\"right center\"][data-tooltip]:after {\n    left: 100%;\n    top: 50%;\n    margin-left: 0.5em;\n    -webkit-transform: translateY(-50%);\n            transform: translateY(-50%);\n}\n[data-position=\"right center\"][data-tooltip]:before {\n    left: 100%;\n    top: 50%;\n    margin-top: -0.07142857rem;\n    margin-left: 0.14285714rem;\n}\n\n[data-position~=\"bottom\"][data-tooltip]:before {\n    background: #FFFFFF;\n    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);\n            box-shadow: -1px -1px 0 0 var(--bordersColor);\n}\n[data-position=\"left center\"][data-tooltip]:before {\n    background: #FFFFFF;\n    -webkit-box-shadow: 1px -1px 0 0 var(--bordersColor);\n            box-shadow: 1px -1px 0 0 var(--bordersColor);\n}\n[data-position=\"right center\"][data-tooltip]:before {\n    background: #FFFFFF;\n    -webkit-box-shadow: -1px 1px 0 0 var(--bordersColor);\n            box-shadow: -1px 1px 0 0 var(--bordersColor);\n}\n[data-position~=\"top\"][data-tooltip]:before {\n    background: #FFFFFF;\n}\n\n[data-inverted][data-position~=\"bottom\"][data-tooltip]:before {\n    background: #1B1C1D;\n    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);\n            box-shadow: -1px -1px 0 0 var(--bordersColor);\n}\n[data-inverted][data-position=\"left center\"][data-tooltip]:before {\n    background: #1B1C1D;\n    -webkit-box-shadow: 1px -1px 0 0 var(--bordersColor);\n            box-shadow: 1px -1px 0 0 var(--bordersColor);\n}\n[data-inverted][data-position=\"right center\"][data-tooltip]:before {\n    background: #1B1C1D;\n    -webkit-box-shadow: -1px 1px 0 0 var(--bordersColor);\n            box-shadow: -1px 1px 0 0 var(--bordersColor);\n}\n[data-inverted][data-position~=\"top\"][data-tooltip]:before {\n    background: #1B1C1D;\n}\n[data-position~=\"bottom\"][data-tooltip]:before {\n    -webkit-transform-origin: center bottom;\n            transform-origin: center bottom;\n}\n[data-position~=\"bottom\"][data-tooltip]:after {\n    -webkit-transform-origin: center top;\n            transform-origin: center top;\n}\n[data-position=\"left center\"][data-tooltip]:before {\n    -webkit-transform-origin: top center;\n            transform-origin: top center;\n}\n[data-position=\"left center\"][data-tooltip]:after {\n    -webkit-transform-origin: right center;\n            transform-origin: right center;\n}\n[data-position=\"right center\"][data-tooltip]:before {\n    -webkit-transform-origin: right center;\n            transform-origin: right center;\n}\n[data-position=\"right center\"][data-tooltip]:after {\n    -webkit-transform-origin: left center;\n            transform-origin: left center;\n}\n\n.ui.popup {\n    margin: 0;\n}\n\n.ui.top.popup {\n    margin: 0 0 0.71428571em;\n}\n.ui.top.left.popup {\n    -webkit-transform-origin: left bottom;\n            transform-origin: left bottom;\n}\n.ui.top.center.popup {\n    -webkit-transform-origin: center bottom;\n            transform-origin: center bottom;\n}\n.ui.top.right.popup {\n    -webkit-transform-origin: right bottom;\n            transform-origin: right bottom;\n}\n\n.ui.left.center.popup {\n    margin: 0 0.71428571em 0 0;\n    -webkit-transform-origin: right 50%;\n            transform-origin: right 50%;\n}\n.ui.right.center.popup {\n    margin: 0 0 0 0.71428571em;\n    -webkit-transform-origin: left 50%;\n            transform-origin: left 50%;\n}\n\n.ui.bottom.popup {\n    margin: 0.71428571em 0 0;\n}\n.ui.bottom.left.popup {\n    -webkit-transform-origin: left top;\n            transform-origin: left top;\n}\n.ui.bottom.center.popup {\n    -webkit-transform-origin: center top;\n            transform-origin: center top;\n}\n.ui.bottom.right.popup {\n    -webkit-transform-origin: right top;\n            transform-origin: right top;\n}\n\n.ui.bottom.center.popup:before {\n    margin-left: -0.30714286em;\n    top: -0.30714286em;\n    left: 50%;\n    right: auto;\n    bottom: auto;\n    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);\n            box-shadow: -1px -1px 0 0 var(--bordersColor);\n}\n.ui.bottom.left.popup {\n    margin-left: 0;\n}\n/*rtl:rename*/\n.ui.bottom.left.popup:before {\n    top: -0.30714286em;\n    left: 1em;\n    right: auto;\n    bottom: auto;\n    margin-left: 0;\n    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);\n            box-shadow: -1px -1px 0 0 var(--bordersColor);\n}\n.ui.bottom.right.popup {\n    margin-right: 0;\n}\n/*rtl:rename*/\n.ui.bottom.right.popup:before {\n    top: -0.30714286em;\n    right: 1em;\n    bottom: auto;\n    left: auto;\n    margin-left: 0;\n    -webkit-box-shadow: -1px -1px 0 0 var(--bordersColor);\n            box-shadow: -1px -1px 0 0 var(--bordersColor);\n}\n\n.ui.top.center.popup:before {\n    top: auto;\n    right: auto;\n    bottom: -0.30714286em;\n    left: 50%;\n    margin-left: -0.30714286em;\n}\n.ui.top.left.popup {\n    margin-left: 0;\n}\n/*rtl:rename*/\n.ui.top.left.popup:before {\n    bottom: -0.30714286em;\n    left: 1em;\n    top: auto;\n    right: auto;\n    margin-left: 0;\n}\n.ui.top.right.popup {\n    margin-right: 0;\n}\n/*rtl:rename*/\n.ui.top.right.popup:before {\n    bottom: -0.30714286em;\n    right: 1em;\n    top: auto;\n    left: auto;\n    margin-left: 0;\n}\n\n/*rtl:rename*/\n.ui.left.center.popup:before {\n    top: 50%;\n    right: -0.30714286em;\n    bottom: auto;\n    left: auto;\n    margin-top: -0.30714286em;\n    -webkit-box-shadow: 1px -1px 0 0 var(--bordersColor);\n            box-shadow: 1px -1px 0 0 var(--bordersColor);\n}\n\n/*rtl:rename*/\n.ui.right.center.popup:before {\n    top: 50%;\n    left: -0.30714286em;\n    bottom: auto;\n    right: auto;\n    margin-top: -0.30714286em;\n    -webkit-box-shadow: -1px 1px 0 0 var(--bordersColor);\n            box-shadow: -1px 1px 0 0 var(--bordersColor);\n}\n\n.ui.inverted.bottom.popup:before {\n    background: #1B1C1D;\n}\n.ui.inverted.right.center.popup:before,\n.ui.inverted.left.center.popup:before {\n    background: #1B1C1D;\n}\n.ui.inverted.top.popup:before {\n    background: #1B1C1D;\n}\n\n.ui.popup > .ui.grid:not(.padded) {\n    width: calc(100% + 1.75rem);\n    margin: -0.7rem -0.875rem;\n}\n\n.ui.loading.popup {\n    display: block;\n    visibility: hidden;\n    z-index: -1;\n}\n.ui.animating.popup,\n.ui.visible.popup {\n    display: block;\n}\n.ui.visible.popup {\n    -webkit-transform: translateZ(0px);\n            transform: translateZ(0px);\n    -webkit-backface-visibility: hidden;\n            backface-visibility: hidden;\n}\n\n.ui.basic.popup:before {\n    display: none;\n}\n\n.ui.wide.popup {\n    max-width: 350px;\n}\n.ui[class*=\"very wide\"].popup {\n    max-width: 550px;\n}\n@media only screen and (max-width: 767px) {\n    .ui.wide.popup,\n    .ui[class*=\"very wide\"].popup {\n        max-width: 250px;\n    }\n}\n\n.ui.fluid.popup {\n    width: 100%;\n    max-width: none;\n}\n\n\n.ui.inverted.popup {\n    background: #1B1C1D;\n    color: #FFFFFF;\n}\n.ui.inverted.popup .header {\n    background-color: none;\n    color: #FFFFFF;\n}\n.ui.inverted.popup:before {\n    background-color: #1B1C1D;\n}\n\n.ui.flowing.popup {\n    max-width: none;\n}\n\n.ui.mini.popup {\n    font-size: 0.78571429rem;\n}\n.ui.tiny.popup {\n    font-size: 0.85714286rem;\n}\n.ui.small.popup {\n    font-size: 0.92857143rem;\n}\n.ui.popup {\n    font-size: 1rem;\n}\n.ui.large.popup {\n    font-size: 1.14285714rem;\n}\n.ui.huge.popup {\n    font-size: 1.42857143rem;\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "/YyN":
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("rxK0");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JPst");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.rc-time-picker-input {
    max-width: 48px;
    text-align: center;
}

.rc-time-picker-clear {
    display: none;
}

.rc-time-picker-input,
.rc-time-picker-panel-inner {
    background-color: var(--textFieldColor);
    color: var(--textColor);
    border-color: var(--bordersColor);
    border-radius: var(--borderRadius);
}

.rc-time-picker-panel-inner {
    box-shadow: 0 2px 2px 0 rgba(0,0,0,.16), 0 0 2px 0 rgba(0,0,0,.08);
}

.rc-time-picker-panel-input {
    background-color: var(--textFieldColor);
    color: var(--textColor);
    border: none;
}

.rc-time-picker-panel-select-option-selected {
    background-color: var(--grayLightest) !important;
}

.rc-time-picker-panel-select li:hover,
.rc-time-picker-panel-select li:focus {
    background-color: var(--primaryLightest) !important;
}

.rc-time-picker-panel-select {
    border-color: var(--bordersColor);
}
`, "",{"version":3,"sources":["webpack://./src/assets/utils/time-picker-styles.css"],"names":[],"mappings":"AAAA;IACI,eAAe;IACf,kBAAkB;AACtB;;AAEA;IACI,aAAa;AACjB;;AAEA;;IAEI,uCAAuC;IACvC,uBAAuB;IACvB,iCAAiC;IACjC,kCAAkC;AACtC;;AAEA;IACI,kEAAkE;AACtE;;AAEA;IACI,uCAAuC;IACvC,uBAAuB;IACvB,YAAY;AAChB;;AAEA;IACI,gDAAgD;AACpD;;AAEA;;IAEI,mDAAmD;AACvD;;AAEA;IACI,iCAAiC;AACrC","sourcesContent":[".rc-time-picker-input {\n    max-width: 48px;\n    text-align: center;\n}\n\n.rc-time-picker-clear {\n    display: none;\n}\n\n.rc-time-picker-input,\n.rc-time-picker-panel-inner {\n    background-color: var(--textFieldColor);\n    color: var(--textColor);\n    border-color: var(--bordersColor);\n    border-radius: var(--borderRadius);\n}\n\n.rc-time-picker-panel-inner {\n    box-shadow: 0 2px 2px 0 rgba(0,0,0,.16), 0 0 2px 0 rgba(0,0,0,.08);\n}\n\n.rc-time-picker-panel-input {\n    background-color: var(--textFieldColor);\n    color: var(--textColor);\n    border: none;\n}\n\n.rc-time-picker-panel-select-option-selected {\n    background-color: var(--grayLightest) !important;\n}\n\n.rc-time-picker-panel-select li:hover,\n.rc-time-picker-panel-select li:focus {\n    background-color: var(--primaryLightest) !important;\n}\n\n.rc-time-picker-panel-select {\n    border-color: var(--bordersColor);\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "p6zf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"base":"DVWE3pyMyYT3YRbFyHQg","placeholder":"f_ToDVaPHugIzv4sKLWR","error":"d7TyzyIT9ziADLz8sldM","modal":"iprKs4XcKTlCPZQSJdBL","procesedImage":"xasj_90WIg8j84_fPuy8","openedImage":"daCRnZ8CoPvXoTLTiV8g","inlineMode":"PmF847znsSR73Q9tQY52","onlyImage":"pNPl2XO0baUdxOIoLZBl","color":"XPFvVfJ7tTunRLkBrGDJ","modalOverlay":"Z1G06mOF8YIjKBLjHkW9","tagsContainer":"JuA_AqrTHkIGSmwtne5d","tagLabel":"d3KWSGq3xyZfucrljPLQ","tags":"bpvTTo3LZNhdp5irnW5A","tag":"e_kRG2WIEE4nSWn1_1N6","errorImage":"RpE1hpFb3sovy2XJl2Vp","errorText":"Eqf8nZ7UM89wHGfQpfcj","feedbackContainer":"bbCzgsX4tGZJkSzGDO2D","feedbackVisualInsight":"Fn8WH_KVFNZfkhWX3Gbj","dots":"X5iGNRSNixu_ysW2TTDu"});

/***/ }),

/***/ "68G5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"base":"AkifJBvqanP1XWjmNTqk","tooltip":"tqc0vBPglFv3WxowGLy6","trendsContainer":"OZAlfqobKd3pZUkbmQMr","card":"U03VM6EVUn0hMNUELvDZ","trendContainer":"gdOWFQh4OPT7oinMzTOH","demoModeContainer":"i2VauOCuVNjIu0IKVgzX","trend":"GfAaM4Gqid0rmS8NOs_n","imageContainer":"CBSlb2fvOeFJLHu6EAI1","image":"t0FCgInxL52br1pS_M1J","demoModeImage":"Pq66AeJ8nO0rY7gLBFMZ","infoBox":"sVuGTpOQMstUefLht9ui","container":"pZ1Hge41DQd2kL7aFbAO","trendInfo":"tXYW9B1nrs0VBn0BGzO4","additionalInfo":"xCooqq34BsLRA6xTCvrs","mainInfo":"SP7RAbO8nWFCvcAFlIFt","dataBlock":"zYelxksqafHFpxN0BNdj","label":"yKBE_ySBhnVnouSD_bYn","sparkline":"m6B_gzWCtCbwCrI_Td2A","name":"CpKJpKhBkP4dy_D8offw","edit":"kNCC9HQPx63F4IX1SeRN","clickable":"nqHmsPW8AEKVwP8Ps6fz","trendsEmptyState":"K8lceAKNMlp8DJ2mgdmG","endorseContent":"FcdWlD7BhycVqUkqxGoS","lowercase":"FTZeKgJHaOhSHjRer5Q0","nowrap":"qdRdfzc0wbK9Z4IXBR_M"});

/***/ }),

/***/ "dfJs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"base":"Cp_TKgm8Q41SgnPaR6g7","label":"FXxKoa7MstVktrMYbz6E","values":"Jd4uFfFy8Z2jzk_hB6pT","compact":"l4C4gZ1fgYWjISroDsjq","remove":"h7q8_gScyx15FPqqo6Lw","excludeIcon":"TyuaQXcHpqoLjsXlfuZo","rangeFilterValueSeparator":"v7oQJuI4rO4ZWgLKMwWI","abbreviatedValuesTrigger":"tZScEYe6uZXPoDDJOs4x","abbreviatedValuesContainer":"gw5z6GGQFH7qD7dDbcBz","short":"adz9Q_L1RbjJMVkpFXHO","abbreviatedValueChip":"IZZxFy9HHx_2Fb4EPcrH","abbreviatedValue":"K4eNxleXqQBaytnqzOkc","chipValue":"FzEyIWS4EX_oW0nmQ5JQ","chipTooltipValue":"EQVNOsSbOndAv7l352r3","listFilterGroupChipValue":"aGhu4tJDCxItlyiMfcUU","line":"HzhqFYNDKruj95dYk_EF"});

/***/ }),

/***/ "9B2a":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"animated":"uBCO1srhOSbQFBWqqPrD","infinite":"Kjlxk2F_8SPCnrFzgnkw","hinge":"U1RCLlouZs0rhs2O9hzQ","flipOutX":"SrNlq5uESrlcGgXddPLI","flipOutY":"csYZDGhJVq8XVovqt7S6","bounceIn":"P4xoQ8MedUdZEnm4zc0r","bounceOut":"w3l0eIG6dDbFTQdj9DC5","spinning":"yXHciZXg0Ka1PMLqPeRQ","spin":"HyQD6zIJFPW0YiXLISfe","bounce":"At9lHsIwpKp8lPAbh01k","flash":"RppoKnW2NOBH2JMbcS5f","pulse":"QZhxEGM0jM2KrTbFYAxo","pulsating":"r79g_b1sJiounjvIjnq5","pulseWithDelay":"_0WGPKeBsBU0QCUvvUfy4","rubberBand":"gbUYMGAFanN4kqAcilvx","shake":"Wxle0Nvvt16xYcaS2NFM","headShake":"jrE4RKihuVnDmx9QnMXX","swing":"LVMzQRbTaEeSa60DhYGo","tada":"P9_XQfdtK98Aw6ySp6O_","wobble":"pDFVVlkFYXZREts6V68U","jello":"QPQiBGUwzHXT6SposVR_","bounceInDown":"sdu_c4lEuNfL0fZp7y6U","bounceInLeft":"ZJjKjohnd21g8rwScb95","bounceInRight":"uR7OFLAvHPWaC88uqOFw","bounceInUp":"qDzmQM6CkyPPV85dEvdf","bounceOutDown":"Ka2Mj9kflXVUQJ4uZLMY","bounceOutLeft":"nc0WOJ0QAKXUnb9WXLDw","bounceOutRight":"uEEaNwdaxN7eZjTYCTAI","bounceOutUp":"fKAqfRlDezy7xxqYeaTB","fadeIn":"wILN9fqyr4NPVbApjPiA","fadeInDown":"kagrdSIZWl8i3pIpoNfO","fadeInDownBig":"A_HBvuQiyOEn7lpxiS9x","fadeInLeft":"oFNjCXYCV0hFwbi1edfO","fadeInLeftBig":"KsvgI5nEoyEYxcxa1hlI","fadeInRight":"V7IqB9FJyuv39hMnThIe","fadeInRightBig":"bsI6f_0kguY2AJ2fkfvh","fadeInUp":"OuvMpRTGGgYugLajd_Eo","fadeInUpBig":"UhLSzNNrmYAtQg75jtxD","fadeOut":"HY1jGYPyHz16_CB_NQST","fadeOutDown":"JtiJZeejmGXCQoKUlZxW","fadeOutDownBig":"n8d5hJPjebjW_RkTXFgM","fadeOutLeft":"fRY5uIKf660Li0rCvmnm","fadeOutLeftBig":"mB3eSvi7zvLEzTCVJl3f","fadeOutRight":"KHBYlyuWK4kg_yaEy4Tq","fadeOutRightBig":"J_1Pz5XmxiqGjcCc0yKj","fadeOutUp":"aV_vDTB4_MlLbSsuStgE","fadeOutUpBig":"zBUntVqoPdKjZoAVtiYf","flip":"iRpr5ym_KGvtimfAqkeg","flipInX":"SbNS5hTnqZwNtlYLmrGU","flipInY":"FSdGfKtDNMyTTb_y7CSc","lightSpeedIn":"BbHMhdDI7uO5UMHkTaEb","lightSpeedOut":"_U7rcNJpoITP8i9MtwpF","rotateIn":"_5IlpmKZ8jGpDqLiybSA","rotateInDownLeft":"QMxZuiU09JH0qci5LX5F","rotateInDownRight":"ANfe7ZkChYv1mtGmpWUG","rotateInUpLeft":"SkPoC1ryZkcUuowpTvby","rotateInUpRight":"chr_q67pwuiOYZ4V77Wq","rotateOut":"EnHYOg1JE9LjuG0F8kfJ","rotateOutDownLeft":"iUufjhQUI7pHrgH7IjQ5","rotateOutDownRight":"MT20sbr_QUB4tR8NK2Uj","rotateOutUpLeft":"Kpj7cFdFJ1p84tkegUjZ","rotateOutUpRight":"l8zQMGcbta5bwAF2r72B","rollIn":"WrZCFWxJSmyz16Ncjyc3","rollOut":"QH6Zaj23M70P3duMXGvg","zoomIn":"YseXXFXFAf3DNT5LoAmv","zoomInDown":"lPW6LEc888dd7YNO1XHG","zoomInLeft":"lRF8ZQ9jj3XlXzFhD7nl","zoomInRight":"rCKcVkohqIn7ND7gFrgn","zoomInUp":"PQqzLbipwUUhhIXMWQoM","zoomOut":"Tqh8lK8clOYSlK2mhiq2","zoomOutDown":"GJGiaIMqIeKk75nV6qQc","zoomOutLeft":"oOBvO4vJx1Ra0Pu02Dg3","zoomOutRight":"xWFzs1BXsboa_wdaLkNN","zoomOutUp":"f9gh3Vk8uHhxj_HycC3e","slideInDown":"aXtNMAQUHoITj5iIYdnA","slideInLeft":"xvwuBZ1RIMqcJqwUAOWW","slideInRight":"F2jcojIol1tjzoVjOYTJ","slideInUp":"dFUKlnwSNVEGmZOzt1VT","slideOutDown":"wRdM0KovS08ArnT8Dpq8","slideOutLeft":"EfNWhoxQTcSwZ7xk6XN7","slideOutRight":"HZdQATCK8zRMhh_CKcz9","slideOutUp":"PStbKdhng659H4SZDdCa","primary":"kaY0MzoxLgaNDeLZjB8O","clickable":"CoFf0i0xlEXKAelc1mtI","default":"y32CnIPZTJjqQWdr4sUw","secondary":"IILhDEc4YY0P7FXzjs5L","amber":"dbedldAWBF4JtoFItLSl","red":"hToKy4K6M1bfz6tO0m74","pink":"KLRDEPa_MxrUXQd98Jea","black":"lrFKEg6pe2Mu1CqZ9DzL","white":"xD0ZlGjsEEHtzRSJ61f5","gray":"ttWM9NbotdkMsAWf5Owa","lightgray":"I1vFSbC5N78HFpGPh8pN","green":"Y2pOWtQ1ZpyFtJZU4_VH","blue":"Wl5iN375qqRNQTyvTfEe","orange":"JtYK0LYEaEevAvrD3qLz","purple":"PZvwNb9mNszPbuLslkpn"});

/***/ }),

/***/ "XQtW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"overlayedBlock":"M8ZnQX730en56xPcPlfI","flexCenter":"jlpDrdtI1qWa6BkHQbAs","smartFeature":"gVLBBTvfrOdTfdwvVERQ","tag":"qLwj4dBFzHn3aQw1ORBv","visibleScrollBar":"qtirVPPHF_ZgWIFD9awb","hiddenScrollBar":"PIEi0EA1Y7uKIyCRMYXl","base":"lne5FP2vmB0JSXTKO3zl","searchableListLong":"kkjY0Yk2UWth6kiFcdUh","darkMode":"hGAt2PKH3s92pNorViam","suggestionsContainer":"W3OVhl_0KmfjYh3ECOT_","selected":"xhVrFyIdkEBwzsSzkpJA","suggestion":"ren3AOyC2XwqNp0Zgj5L","suggestionCheckboxEmptyIcon":"Xqe2AU1UlzbOdI0YJSIg","suggestionCheckboxEmptyLabel":"eCeK2n7JmGEPdUTFSgY_","noResults":"lFcmrBnyFEOElEmJiTTf","suggestOnFocus":"lwNyAyV9DmPsVTVKyM6w","openToTop":"DqH5hFyD7MoUIKv891Uo","showSuggestOnFocus":"wHggHGbbyIGdCNVX4YDZ"});

/***/ }),

/***/ "5KqD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"forgotPassLink":"ZtcgXDDUcgrPYbZtwcpg","loginLink":"P8YPKCm2lMirBk0aUemk","formContainer":"IkOdO4SnVGwXdDAD5k3W","center":"ZgfSKDr2y_HojUiTZZo_","subtitle":"k1pGKRgg74FFWdvHN2az"});

/***/ }),

/***/ "G1t1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"base":"VWg7s6Imlzs_9v__lKug","title":"RRsGtSSe0buKj3HPMNMq","titleName":"sYPENDYs4XmrAaZojMmI","container":"yKnB_l3v111H0WMM1lWw","card":"x45ib4NDWdSfn4Ytn5j5","defaultTopicField":"ODU0UKeMQPELop8jdplU","name":"QxvMHl9bxCxMBjTEc7GN","description":"akLI9CLrFSeGyb3zA4zy","buttons":"te_FgGo9QT0NuomQjBCQ","isRevertPosition":"ArzqSKWCeKDzbkAFmePg","errorMsg":"qXIvhJmD3Nr1KEBSOfAP","addItemLinkButton":"bzyHuckraco8A5rQM3RQ","addItemLinkIcon":"Ba8WBX5eRi_aTdbimG9T","forceTopicCheckbox":"a5DGDXxOEDRwQ8HCA_js","autoRefreshDelayCheckbox":"W5XI99f7XsaG2WzRkhgM","intervalContainer":"Pa1kLvWMoRUib6JjdvCg","switchLabel":"baLQGNvIzbxU4hy0ZYun","autoRefreshDelayTitle":"EeISZWrD_Dj1UhEfHwyn"});

/***/ }),

/***/ "CoUt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"base":"XjvWhdY6Ygpk24vngGLy"});

/***/ }),

/***/ "5Jgf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
// extracted by mini-css-extract-plugin
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({"base":"IbemLQjMN4SdHOOJfAfw","pageHeader":"AcNw2J89o_JQAqhDsq6d","title":"TvPx2TO9o2vVsFGj5Mi5","modal":"zjKiF3ReNsMLgVaRYfRC","filtersContainer":"njEna3mc_EVXJaWnCMYb","tabs":"Eqt4QeJ6RT3OQyJHipwB","tabsScrollContainer":"HMkPyk8D4OU0Onu0oGXK","tabsNavLink":"gCa0LlKO2OnABeDFTh3j","selectedTab":"XXUgbg1vmkS_zRd7igib","filtersContent":"EK7IE7Cyl5vS2M9T4AbP","dumbFilter":"kWVALbv8cNquOJ0vrJsu","dedup":"kc9GemHq3vC8bdyZzieN","search":"qq4rcv3D2CwNZ31rtsG4","tabsContainer":"mB2vfU2Mj3DvkhPX5uQA","tabContent":"OKBzFMPvzBfAqdHREW16","insideTabContainer":"rHRsizzIFdWOxDL92aPu","buttons":"V5KQxcP_6o3Ke7mhIJh_","joinTogether":"wc4vPIEBKcMr9sdjC2cv","endorseContent":"yXgFEDbGMxjm9EuYnp70","filterIcon":"naCFUvoelty7PG_yo_rn","previewFiltersToolbar":"UdmNAQfau_EPcJ6vaEDD"});

/***/ }),

/***/ "BNQf":
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var map = {
	"./en-au": "Dmvi",
	"./en-au.js": "Dmvi",
	"./en-ca": "OIYi",
	"./en-ca.js": "OIYi",
	"./en-gb": "Oaa7",
	"./en-gb.js": "Oaa7",
	"./en-ie": "4dOw",
	"./en-ie.js": "4dOw",
	"./en-il": "czMo",
	"./en-il.js": "czMo",
	"./en-in": "7C5Q",
	"./en-in.js": "7C5Q",
	"./en-nz": "b1Dy",
	"./en-nz.js": "b1Dy",
	"./en-sg": "t+mt",
	"./en-sg.js": "t+mt",
	"./ru": "lXzo",
	"./ru.js": "lXzo",
	"./uk": "raLr",
	"./uk.js": "raLr"
};


function webpackContext(req) {
	var id = webpackContextResolve(req);
	return __webpack_require__(id);
}
function webpackContextResolve(req) {
	if(!__webpack_require__.o(map, req)) {
		var e = new Error("Cannot find module '" + req + "'");
		e.code = 'MODULE_NOT_FOUND';
		throw e;
	}
	return map[req];
}
webpackContext.keys = function webpackContextKeys() {
	return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = "BNQf";

/***/ }),

/***/ "Fwde":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You asked for it, and we delivered!  \nStarting today, users with **«Admin»** role can easily view and download statistics right from their account.\n\nHere’s what’s included in the new section:\n\n**Topics** – Analyze the number of mentions collected per topic to better manage and optimize your data usage. Find out which teammates made the latest changes to your search queries.\n\n**Channels** – Instantly view how many and which specific pages are connected by channels in your topics.\n\nAnd the best part? You can export all this data to a CSV file with just one click! No more manual counting – the system handles everything for you 🙌\n\nIf you have any questions, feel free to reach out via our support chat or email us at [support@youscan.io](mailto:support@youscan.io).\n\n![image](/static/images/announcements/accountStatistics/en.png)");

/***/ }),

/***/ "l/BD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Tú lo pediste, ¡y nosotros lo hemos conseguido!  \nA partir de hoy, los usuarios con acceso «**Admin »** pueden ver y descargar fácilmente estadísticas detalladas directamente desde su cuenta.\n\nEsto es lo que encontrarás en la nueva sección:\n\n**Temas** - Analiza el número de menciones recogidas por tema para gestionar y optimizar mejor tu uso de datos. Averigüe cuáles de sus compañeros de equipo realizaron los últimos cambios en sus consultas de búsqueda.\n\n**Canales** - Vea al instante cuántas y qué páginas específicas están conectadas por canales en sus temas.\n\n¿Y lo mejor? Puede exportar todos estos datos a un archivo CSV con un solo clic. Se acabó el recuento manual: el sistema se encarga de todo por ti 🙌.\n\nSi tiene alguna pregunta, no dude en ponerse en contacto con nosotros a través de nuestro chat de soporte o envíenos un correo electrónico a [support@youscan.io](mailto:support@youscan.io).\n\n![image](/static/images/announcements/accountStatistics/es.png)");

/***/ }),

/***/ "akKb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви просили — ми зробили!  \nВідтепер, користувачі з доступом **«Адмін»** можуть легко переглядати і завантажувати детальну статистику прямо зі свого акаунту.\n\nОсь що ви знайдете в новому розділі:\n\n**Теми** — Контролюйте кількість згадок, зібраних у кожній темі, щоб оптимізувати використання даних. Дізнайтеся, хто з ваших колег вносив останні зміни до пошукових запитів.\n\n**Канали** — Перевірте, скільки сторінок підключено каналами у ваших темах, і що це за сторінки.\n\nБа більше! Ви можете експортувати всі ці дані в CSV-файл в один клік! Більше ніяких ручних підрахунків — система все зробить за вас 🙌\n\nЯкщо у вас виникли запитання, не соромтеся звертатися до нашого чату підтримки або пишіть нам на [support@youscan.io](mailto:support@youscan.io).\n\n![image](/static/images/announcements/accountStatistics/uk.png)");

/***/ }),

/***/ "lUfv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can download Acts from the YouScan interface without any help. The act is created every first day of the reporting period, and is now stored on the \"Documents\" page in the account settings.\n\n**How to download Acts:**\n\n1. Navigate to Account settings, \"Documents\" section.\n2. Find the needed act and click on its name.\n\n![Acts](/static/images/announcements/acts/en.png)\n\nYou can download acts that have period from June 1, 2020.\n\nActs are available to all clients that pay the invoices.\n");

/***/ }),

/***/ "bUG1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете скачать акт о предоставлении ПО самостоятельно. Акт формируется в первый день очередного оплаченного периода и доступен в разделе «Документы» в настройках аккаунта.\n\n**Как скачать?**\n\n1. Зайдите в Настройки аккаунта, раздел «Документы».\n2. Выберите необходимый акт и нажмите на его название.\n\n![Acts](/static/images/announcements/acts/ru.png)\n\nВ этом разделе вам доступны акты, которые были сформированы после 1 июня 2020 года.\n\nАкты доступны клиентам, которые оплачивают подписку по выставленным счетам.");

/***/ }),

/***/ "WfS0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете завантажувати акти про надання ПЗ самостійно. Акт формується в перший день чергового оплаченого періоду і доступний у розділі «Документи» у налаштуваннях аккаунта.\n\n**Як завантажити акт?**\n\n1. Увійдіть в Налаштування акаунта, розділ «Документи».\n2. Оберіть необхідний акт і клікніть на його назву.\n\n![Acts](/static/images/announcements/acts/uk.png)\n\nУ цьому розділі вам доступні акти, які були сформовані після 1 червня 2020 року.\n\nАкти доступні клієнтам, які оплачують підписку за виставленими рахунками.");

/***/ }),

/***/ "s16Q":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now YouScan can find not only hot trends and active discussions, but it also automatically determines where they came from, who was involved the most and which type of content predominated. **Aina** is a system based on machine learning algorithms that automatically detects and analyzes trends.\n\n![Aina](/static/images/announcements/aina/trend_en.png)\n\nWhen hovering over the trend, **Aina** will tell you the general trend statistics (number of references, authors, engagement) and the dominant region, source, autocategory and type of audience, if they exists. It helps you to analyze large volumes of data easier and faster.");

/***/ }),

/***/ "ttci":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь YouScan умеет не только находить горячие тренды и активные дискуссии, но и сразу автоматически определяет где они возникали, кто в них был наиболее вовлечен и какой тип контента преобладал. C этими задачами вам поможет справиться **Aina** - система на основе алгоритмов машинного обучения способная автоматически находить и анализировать тренды.\n\n![Aina](/static/images/announcements/aina/trend_ru.png)\n\nПри наведении на тренд **Aina** подскажет общую статистику тренда (количество упоминаний, авторов, вовлечение) и преобладающий регион, источник, автокатегорию и тип аудитории если они есть. Это поможет вам анализировать большие массивы данных проще и быстрее, отдав рутину искусственному интеллекту.");

/***/ }),

/***/ "+mkn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер YouScan вміє не тільки знаходити гарячі тренди і активні дискусії, але і відразу автоматично визначає де вони виникали, хто в них був найбільш залучений і який тип контенту переважає. C цими завданнями вам допоможе впоратися **Aina** - система на основі алгоритмів машинного навчання здатна автоматично знаходити і аналізувати тренди.\n\n![Aina](/static/images/announcements/aina/trend_en.png)\n\nПри наведенні на тренд **Aina** підкаже загальну статистику тренду (кількість згадувань, авторів, залучення) та переважаючий регіон, джерело, автокатегорію і тип аудиторії якщо вони є. Це допоможе вам аналізувати великі масиви даних простіше і швидше, залишивши всю рутину штучному інтелекту.");

/***/ }),

/***/ "ntPh":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Aina** is an AI-assistant based on machine learning algorithms that automatically detects and analyzes trends.\n\nIn this announce we will show how we increased Aina's capabilities in YouScan.\n\n\n**Trend's visibility**\nWe added the ability to hide trends on Dynamics chart. In this case, your data won't be lost and Aina will be still collecting and analyzing trends of discussions.\n\nSo, If you need to explore or export Dynamics chart without trends, follow the steps:\n1. Open \"Analytics\" tab in the topic\n2. Click on Aina's toggle on Dynamics chart near the export button.\n\n![Aina](/static/images/announcements/aina_toggle/en.png)\n\n**Email reports from Aina**\nAina can send you emails with analytical reports to keep you informed about monitoring and specific events in the topic.\n\nHow to activate daily/weekly/monthly reports:\n1. Go to the \"Notifications\" tab in the topic\n2. Activate email reports using the toggles on the right. You can enable all reports that you need, as in the example below.\n\n![Aina](/static/images/announcements/aina_toggle/en_report.png)\n\n");

/***/ }),

/***/ "X1yf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Aina** – это ассистент, созданный на основе алгоритмов машинного обучения. Aina автоматически находит и анализирует тренды обсуждений. \nВ этом анонсе, мы расскажем как расширили ее возможности в YouScan.\n\n**Отображение трендов**\nПо многочисленным просьбам, мы добавили возможноcть выключать отображение трендов на графике. При этом вы не потеряете данные, Aina и дальше будет искать тренды обсуждений и анализировать их. \n\nТеперь, если вам нужно изучить или скачать динамику упоминаний без трендов:\n1. Откройте вкладку \"Аналитика\" в теме\n2. Нажмите на переключатель Aina на графике \"Динамика\" (как показано ниже). \n\n![Aina](/static/images/announcements/aina_toggle/ru.png)\n\n\n**Отчеты отправляются от Aina**\nAina может отправлять отчеты по мониторингу прямо на почту, чтобы вы были в курсе происходящего в вашей теме. \n\nДля включения ежедневных/еженедельных/ежемесячных отчетов:\n1. Зайдите во вкладку \"Уведомления\" в теме\n2. Активируйте отправку отчетов при помощи переключателей справа. Можно включить несколько отчетов сразу, как на примере ниже.\n\n![Aina](/static/images/announcements/aina_toggle/ru_report.png)");

/***/ }),

/***/ "oyWT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Aina** – це асистент, створений на основі алгоритмів машинного навчання. Aina знаходить та аналізує тренди дискусій. \nУ цьому анонсі, ви дізнаєтесь як ми розширили можливості Aina в YouScan.\n\n**Відображення трендів**\nПо вашим проханням, ми додали можливість сховати тренди на графіку динаміки згадувань. При цьому ваші дані не пропадуть, Aina і далі буде шукати та аналізувати тренди дискусій.\n\nОтже, якщо вам треба дослідити або вигрузити графік динаміки без кругляшків трендів:\n1. Відкрийте розділ \"Аналітика\" у темі\n2. Натисніть на вимикач Aina, як на показано нижче.\n\n![Aina](/static/images/announcements/aina_toggle/ua.png)\n\n\n**Звіти надсилаються від Aina**\nAina може надсилати аналітичні звіти прямо на email, щоб ви були у курсі того що відбувається за вашою темою моніторингу.\n\nДля включення щоденних/щотижневих/щомісячних звітів:\n1. Перейдіть у вкладку \"Сповіщення\" у темі\n2. Активуйте відправлення звітів за допомогою перемикачів справа. Ви можете увімкнути одразу декілька звітів, як на прикладі нижче.\n\n![Aina](/static/images/announcements/aina_toggle/uk_report.png)");

/***/ }),

/***/ "HdW4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Introducing our improved alerts. Now you can:\n- Create alerts in the mention stream or in the new «Alerts» folder—choose your favorite!\n  \n![img1](/static/images/announcements/alerts/en-img1.png)\n\n- Set up alerts for your colleagues, even if they don't have access to YouScan. Just pop their email address in the recipient field.\n\n![img2](/static/images/announcements/alerts/en-img2.png)\n\n- Edit your alerts effortlessly. Simply click the pencil icon and make your tweaks.\n\n![img3](/static/images/announcements/alerts/en-img3.png)\n\nIf you have any questions, feel free to contact us via support chat or at [support@youscan.io](mailto:support@youscan.io)");

/***/ }),

/***/ "6AP0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Presentamos nuestras alertas mejoradas. Ahora puedes:\n- Crear alertas en el flujo de menciones o en la nueva carpeta Alertas: ¡elija tu favorita!\n\n![img1](/static/images/announcements/alerts/es-img1.png)\n\n- Configurar alertas para tus colegas, incluso si no tienen acceso a YouScan. Sólo tienes que introducir su correo electrónico en el campo de destinatario.\n\n![img2](/static/images/announcements/alerts/es-img2.png)\n\n- Edite tus alertas sin esfuerzo. Simplemente haz clic en el icono del lápiz y haz tus ajustes.\n\n![img3](/static/images/announcements/alerts/es-img3.png)\n\nSi tienes alguna pregunta, no dudes en ponerse en contacto con nosotros a través del chat de soporte o en [support@youscan.io](mailto:support@youscan.io)");

/***/ }),

/***/ "K7/7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляємо вам покращені оповіщення. Тепер ви можете:\n- Створювати оповіщення в потоці згадок або в новій папці «Оповіщення» — обирайте як вам зручніше;\n\n![img1](/static/images/announcements/alerts/uk-img1.png)\n\n- Налаштувати оповіщення для своїх колег, навіть якщо вони не мають доступу до YouScan. Просто введіть їхні адреси електронної пошти в поле одержувача.\n\n![img2](/static/images/announcements/alerts/uk-img2.png)\n\n- Редагуйте оповіщення без зайвих зусиль. Просто натисніть на іконку олівця і внесіть необхідні зміни.\n\n![img3](/static/images/announcements/alerts/uk-img3.png)\n\nЯкщо у вас виникли запитання, будь ласка, не соромтесь написати нас в чат підтримки або на [support@youscan.io](mailto:support@youscan.io)");

/***/ }),

/***/ "8Hw+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Starting October 1, 2024, YouScan will automatically collect product reviews from Amazon based on your search query keywords! If your keyword appears in the product name or review text, those mentions will be seamlessly added to your monitoring topic.\n\n![image](/static/images/announcements/amazon/en.png)\n\nWhat this means for you:\n\n- Never miss crucial mentions of your brand or product.\n- Leverage Amazon reviews for in-depth research, such as discovering customer opinions on products like air dryers.\n\n☝️ **Important:**\nHistorical data is available starting from Aug 10, 2024.\n\nIf you have any questions, please contact us at [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "EdOT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir del 1 de octubre de 2024, YouScan recopilará automáticamente las reseñas de productos de Amazon basadas en las palabras clave de tu búsqueda. Si tu palabra clave aparece en el nombre del producto o en el texto de la reseña, esas menciones se agregarán automáticamente a tu tema de monitoreo.\n\n![image](/static/images/announcements/amazon/es.png)\n\n¿Qué significa esto para ti?\n\n- Nunca pierdas menciones importantes de tu marca o producto.\n- Aprovecha las reseñas de Amazon para investigaciones detalladas, como descubrir lo que la gente dice sobre secadores de pelo.\n\n☝️ **Nota:**\nLos datos históricos están disponibles desde el 10 de agosto de 2024.\n\nSi tienes alguna pregunta, contáctanos en [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "FnGy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("З 1 жовтня 2024 року YouScan збиратиме відгуки про продукти на Amazon за ключовими словами вашого пошукового запиту! Якщо ваше ключове слово міститься в назві продукту або тексті відгуку, ці згадки будуть автоматично додані до вашої теми моніторингу.\n\n![image](/static/images/announcements/amazon/uk.png)\n\nТож відтепер:\n\n- Не пропускайте важливих згадок про ваш бренд або продукт.\n- Використовуйте відгуки з Amazon для глибоких досліджень, наприклад, щоб дізнатися, що люди говорять про фени.\n\n☝️ Історичні дані доступні з 10 серпня 2024 року.\n\nЯкщо у вас виникли запитання, будь ласка, пишіть нам на [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "qSe6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Here are some tasks that you can solve using YouScan and Angry.Space integration:\n\n- **Work with public data and direct messages in one window**. Now, all necessary data is available in one system so that you can handle mentions faster and with better quality.\n- **Teamwork.** Every team member now can see who is responsible for a mention and can avoid double work.\n- **Evaluate the Operators' and teams' work.** Use Angry.Space statistics to measure the work quality of your team. Every operator has a personal track of actions and key performance indicators.\n\nLearn more about integrations in our [Knowledge Base](https://help.youscan.io/en/articles/2255972-how-to-use-integrations-with-youscan).\n\n![Announcements!](/static/images/announcements/angry.space/integration.png)\n");

/***/ }),

/***/ "2ot8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вот несколько задач, которые решает интеграция YouScan и Angry.Space:\n\n- **Работа с публичными данными и личными сообщениями в одном окне.** Теперь все доступно в одной системе, а значит скорость и качество обработки упоминаний в разы выше.\n- **Командная работа.** Члены команды видят, за какой комментарий отвечает каждый сотрудник, и не делают двойную работу.\n- **Оценка работы операторов и команды.** Теперь это можно контролировать с помощью статистики Angry.Space, где у каждого оператора есть свой журнал действий и фиксируются основные метрики по каждому сотруднику.\n\nПодробнее о том как настроить интеграцию вы можете узнать в нашей [Базе знаний](https://help.youscan.io/ru/articles/4519218-интеграция-youscan-c-angry-space).\n\n![Announcements!](/static/images/announcements/angry.space/integration.png)");

/***/ }),

/***/ "pvdA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ось кілька задач, які вирішує ця інтеграція:\n\n- **Робота з публічними даними та особистими повідомленнями в одному вікні.** Тепер все доступно в одній системі, а значить швидкість та якість реагування на згадування в рази вища.\n- **Командна робота.** Члени команди бачать за який коментар відповідає кожен співробітник та не роблять подвійну роботу.\n- **Оцінка роботи операторів та команди.** Тепер це легко контролювати за допомогою статистики Angry.Space, де у кожного оператора є свій журнал дій. По кожному співробітнику фіксуються основні метрики.\n\nДетальніше про налаштування інтеграції читайте в нашій [Базі знань](https://help.youscan.io/ru/articles/4519218-интеграция-youscan-c-angry-space).\n\n![Announcements!](/static/images/announcements/angry.space/integration.png)\n");

/***/ }),

/***/ "xx/c":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**API** – it’s a program interface, that takes data from YOUSCAN, and returns it in your workspace tool.\n\nWe made our API more useful, by adding the ability to import statistics data about authors or publication places. Also, we have added excluding filters to separate data that you need and not.\n\n**API data parameters:**\n• topic ID with which data you want to collect\n• date period\n• sort authors by engagement, count of subscribers or mentions\n\n**Excluding filters for API:**\n• sentiment\n• sources and source type\n• auto categories\n• tags\n• countries\n\nFor API configure, just share this [API documentation](https://youscan.docs.apiary.io/#introduction/authentication) with your developer.\n\n\n![Aina](/static/images/announcements/api_authors/picture.png)\n");

/***/ }),

/***/ "1WOu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**API** – это программный интерфейс, который позволяет достать данные из Youscan, отвечающие заданным параметрам, и отобразить их в нужном вам рабочем инструменте. \n\nМы расширили возможности нашего API, добавив статистику по авторам и месту публикации. А еще, мы сделали исключающие фильтры к ним, чтобы вы могли обозначить, какие данные нужно убрать. \n\n**Параметры данных, которые можно указать в API:**\n•  id темы, с которой хотите получать данные\n•  период дат публикации упоминаний\n•  сортировка авторов по вовлечению, количеству подписчиков и постов\n\n**Исключающие фильтры для API:**\n•  тональность\n•  источники или их типы\n•  автокатегории\n•  страны\n•  теги\n\n\nДля подключения API, дайте вашему разработчику [API Документацию](https://youscan.docs.apiary.io/#introduction/authentication). Следуя ей можно быстро подключить API и доставать данные из Youscan в ваш рабочий инструмент.\n\n![Aina](/static/images/announcements/api_authors/picture.png)");

/***/ }),

/***/ "uCuo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**API** – це програмний інтерфейс, що дозволяє дістати потрібні вам дані з Youscan, та відобразити їх у вашому робочому інструменті.\n\nМи розширили можливості нашого API, додавши статистику по авторам та місцю публікації. Також ми зробили фільтри вилучення, щоб ви могли задати нашому АPI які дані не треба брати.\n\n**Параметри даних, які можна задати API:**\n- id теми, з якої хочете отримувати дані\n- період дат публікації згадувань\n- сортування авторів за залученням, кількістю підписників та постів\n\n**Фільтри вилучення для API:**\n- тональність\n- джерела та їх типи\n- автокатегорії\n- країни\n- теги\n\nДля підключення API, дайте вашому розробнику цю [API Документацію](https://youscan.docs.apiary.io/#introduction/authentication). Слідуючи їй можна легко підключити наш API і отримувати дані з Youscan у ваш робочий інструмент.\n\n\n![Aina](/static/images/announcements/api_authors/picture.png)\n");

/***/ }),

/***/ "1bsG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Aspect** is a characteristic of your product or service, which users can express their attitude to. This can be price, quality, assortment, design, or other characteristics.\n\nOur AI assistant Aina analyzes the text of mentions and assigns aspects with positive, negative or neutral sentiment. As a result, it helps you understand what exactly the mentions authors liked or disliked about your brand.\n\nFor example, if someone posted: *“Ice cream is tasty, but expensive. And it's also unhealthy”* — the mention will be assigned three aspects: Taste is positive, Price is negative, Health effects is negative.\n\n![Mention with aspects](/static/images/announcements/aspects/en_mention.png)\n\n# Aspects analytics\n\nThere is a table and a chart to help you analyze aspects in your topic. You can change the type of chart that would best present your data: Spider chart or Bar chart.\n\n🍷Bar chart\nShows the share of sentiment for each aspect to help you identify if a specific characteristic is perceived positively or negatively by your audience.\n![Bar chart](/static/images/announcements/aspects/en_bar.png)\n\n🕸Spider chart\nCompares the number of mentions with negative and positive aspects to help you understand the strengths and weaknesses of the brand.\n![Spider chart](/static/images/announcements/aspects/en_spider.png)\n\n# Filter by aspect\n\nTo see all mentions with a specific aspect, in the filters, navigate to the Aspects tab. You will see all the aspects that have been identified for the selected period.\n\nYou can select and exclude an aspect as a whole, as well as select and exclude specific aspect sentiment.\n\n![Aspect filters](/static/images/announcements/aspects/en_filter.png)\n\n# How aspect sentiment and mention sentiment are related 🧐\n\nThey are not related, they are defined by two different AI models. The mention sentiment is defined with reference to the mention itself, and the aspect sentiment depends on what authors write about the quality, taste, design, or other aspects of the brand.\n\nNow there are 18 aspects available in our system. Learn more about the feature and its use cases in our [blog](https://youscan.io/blog/aspect-based-analysis).\n");

/***/ }),

/***/ "odWR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Аспекты** — это характеристики вашего продукта или услуги, к которым пользователь может выразить свое отношение. Это может быть цена, качество, ассортимент, сервис и другие характеристики.\n\nНаш AI ассистент Aina анализирует текст упоминания и присваивает ему аспекты с позитивной, негативной или нейтральной тональностью. Таким образом вы можете понять, что именно пришлось по вкусу или не понравилось авторам упоминаний.\n\n**Например, если в упоминании написали:** \n*\"Гречка вкусная, но дорого стоит. Зато какая полезная\"* — будет три аспекта: Вкус позитив, Цена негатив, Влияние на здоровье позитив. \n\n![Упоминание с аспектом](/static/images/announcements/aspects/ru_mention.png)\n\n# Аспекты в аналитике\n\nДля удобства сравнения аспектов, мы сделали таблицу и графики. У графика есть два вида, вы можете менять их по клику на переключатель слева:\n\n🍷Bar график\nПоказывает распределение по тональности в каждом аспекте. Где больше доля позитива, а где доля негатива.\n![Bar график](/static/images/announcements/aspects/ru_bar.png)\n\n🕸Spider график\nСравнивает количество упоминаний с негативными и позитивными аспектами. С его помощью вы можете понять сильные и слабые стороны бренда.\n![Spider график](/static/images/announcements/aspects/ru_spider.png)\n\n# Фильтрация по аспектам\n\nЧтобы посмотреть все упоминания с конкретным аспектом, в фильтрах перейдите на вкладку Аспекты. Вы увидите все аспекты, которые определились за выбранный период.\n\nАспект можно выбрать или исключить полностью, или отфильтровать частично по тональности.\n\n![Фильтрация](/static/images/announcements/aspects/ru_filter.png)\n\n# Как связаны тональность аспекта и тональность упоминания 🧐\n\nОни не связаны, их определяют две разные AI модели. Тональность упоминания определяется относительно всего упоминания, а тональность аспектов — в каком ключе писали именно про качество, вкус, сервис и другие аспекты объекта мониторинга.\n\nСейчас доступно 18 аспектов и их описание есть в [базе знаний](https://help.youscan.io/ru/articles/3853748-).\n\nПримеры кейсов, в которых аспекты будут полезны, читайте в [нашем блоге](https://youscan.io/ru/blog/aspect-based-analysis).\n");

/***/ }),

/***/ "xXP3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Аспекти** — це характеристики вашого продукту чи сервісу, до яких споживач може висловлювити своє ставлення. Це може бути ціна, якість, асортимент, сервіс чи інші характеристики.\n\nНаш AI асистент Aina аналізує текст згадування і присвоює йому аспекти з позитивною, негативною або нейтральною тональністю. Таким чином ви можете зрозуміти, що саме сподобалося чи не сподобалося авторам згадувань. \n\n**Наприклад, якщо в згадуванні написали:**\n*\"Гречка смачна, але дорого коштує. Зате яка корисна\" —* будуть три аспекти: Смак позитив, Ціна негатив, Вплив на здоров'я позитив.\n\n![згадування з аспектом](/static/images/announcements/aspects/uk_mention.png)\n\n# Аспекти в аналітиці\n\nДля зручності аналізу аспектів, ми зробили таблицю і графіки. У графіка є два види, ви можете змінювати їх при натисканні на перемикач зліва:\n\n🍷Bar графік\nПоказує розподіл по тональності в кожному аспекті. Де більше доля позитиву, а де більше негативу.\n![Bar графік](/static/images/announcements/aspects/uk_bar.png)\n\n🕸Spider графік\nПорівнює кількість згадувань з негативними і позитивними аспектами. З його допомогою ви можете знайти сильні і слабкі сторони бренду.\n![Spider графік](/static/images/announcements/aspects/uk_spider.png)\n\n# Фільтрація по аспектам\n\nЩоб побачити всі згадування з конкретним аспектом, в фільтрах перейдіть у вкладку Аспекти. Ви побачите всі аспекти, які визначилися в темі за обраний період.\n\nАспект можна обрати або виключити повністю, чи відфільтрувати частково за тональністю.\n\n![Фільтрація](/static/images/announcements/aspects/uk_filter.png)\n\n# Як пов'язані тональність аспекту та тональність згадування 🧐\n\nВони не пов'язані, їх визначають дві різні AI моделі. Тональність згадування визначається щодо всього згадування, а тональність аспектів — в залежності від того, що автор написав саме про якість, смак, сервіс і інші аспекти об'єкта моніторингу.\n\nЗараз доступні 18 аспектів, їх детальний опис є у нашій [Базі знань](https://help.youscan.io/ru/articles/3853748-).\n\nПриклади кейсів, в яких аспекти будуть корисні, читайте в [нашому блозі](https://youscan.io/ru/blog/aspect-based-analysis).\n");

/***/ }),

/***/ "zKtK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Aspects are particular features of a service or a product that consumers can express their opinion about - which, in turn, can be positive, negative, or neutral.\n\n**Consistency** - The state of a substance, the degree of softness or density (hardness) of semi-solid, semi-soft substances and viscous liquids (e.g. oil, infant milk, yogurt, toothpaste, etc...).\n\n**Usage -** the amount, pace of volume or quantity expenses, losses of an object consumed per certain number of uses or per certain amount of time.\n\n**Size -** dimensionality. It refers to quantities characterizing an object: length, height, width, volume.\n\nAll Aspects in YouScan are defined in relation to the monitoring subject.");

/***/ }),

/***/ "xhvP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Аспекты — это характеристики сервиса, услуги или товара, к которому пользователь может выразить свое отношение. Оно может быть позитивным, негативным или нейтральным.\n\n**Консистенция** — физическое состояние жидких и полутвердых тел в отношении их мягкости, твердости, степени густоты или плотности (продуктов питания, мазей, паст и т.д.).\n\n**Расход** —  Потребление, расход, затраты объекта при его использовании. Например, насколько долго хватает пачки кофе/порошка или по количеству использований: краски для волос хватает на 2 прокрашивания.\n\n**Размер** — величина объекта в любом измерении или его объем.\n\nВсе Аспекты в YouScan определяются по отношению к объекту мониторинга.");

/***/ }),

/***/ "ydfk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Аспекти - це характеристики сервісу, послуги або товару, до якого користувач може висловити своє ставлення. Воно може бути позитивним, негативним або нейтральним.\n\n**Консистенція** - показник м‘якості, твердості або щільності, cтупінь густоти рідких, високов'язких або напівтвердих тіл (продуктів харчування, мазей, паст і т.д.).\n\n**Витрата** - Споживання, витрати об'єкта при його використанні. Наприклад, наскільки довго вистачає пачки кави / порошку або за кількістю використань: фарби для волосся вистачає на 2 профарбовування.\n\n**Розмір** - величина об‘єкту в будь-якому вимірі або його об‘єм.\n\nУсі Аспекти в YouScan визначаються по відношенню до об'єкта моніторингу.");

/***/ }),

/***/ "gdVQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Analyze your customers' interests using our new \"Audience insights\" feature. It will help you understand consumers or influencers better, which means you will be able to refine your marketing campaigns or build a more effective communication strategy.\n\n**Audience insights consist of:**\n\n- Demography\n- Interests\n- Occupations\n- Authors  \n\n\\\n**Demography**\n\nHere, you will see general data on the authors' number, gender, or geographical distribution.\n\n![Demography](/static/images/announcements/audienceInsights/en_demography.gif)\n\n**Interests**\n\nThis chart will help you understand, for example, which movies or food are your audience's favorites.\n\n💡Try to understand your audience's interests fully, and then feel free to dive into the necessary segments.\n\n![Interests](/static/images/announcements/audienceInsights/en_interests.gif)\n\n**Occupations**\n\nYour audience's top occupations help you better understand who your buyer persona is.\n\n![Occupations](/static/images/announcements/audienceInsights/en_professions.gif)\n\n**Authors**\n\nWe added Interests and Occupations to the list of top authors. Thus, you will be able to segment the audience to search for influencers more precisely and further cooperate with them.\n\n![List](/static/images/announcements/audienceInsights/en_list.png)\n\n**☝️ Important**\n\nInterests and Occupations are available as an add-on. To learn more about the features and possibilities of your pricing plan, contact us at support@youscan.io\n");

/***/ }),

/***/ "i0+8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Аналізуйте інтереси користувачів вашого продукту чи сервісу з новою функцією “Аудиторія”. Вона допоможе зрозуміти уподобання ваших споживачів або інфлюенсерів, а значить, ви зможете точніше націлити маркетингові компанії та побудувати ефективнішу комунікативну стратегію.\n\n**Що входить в Аудиторію?**\n\n- Демографія\n- Інтереси\n- Професії\n- Автори\n\n\\\n**Демографія**\n\nТут ви побачите загальні дані по кількості авторів, їх гендерному та географічному розподіленню.\n\n![Демографія](/static/images/announcements/audienceInsights/uk_demography.gif)\n\n**Інтереси**\n\nЦей графік допоможе зрозуміти, наприклад, які саме фільми чи їжу полюбляє ваша аудиторія.\n\n**💡**Спробуйте спершу отримати загальне розуміння інтересів аудиторії, а потім заглибитись у цікаві для вас сегменти.\n\n![Інтереси](/static/images/announcements/audienceInsights/uk_interests.gif)\n\n**Професії**\n\nРейтинг найпопулярніших професій вашої аудиторії допомагає краще зрозуміти персону покупця вашого бренду.\n\n![Професії](/static/images/announcements/audienceInsights/uk_professions.gif)\n\n**Автори**\n\nМи додали до списку топ-авторів їх Інтереси та Професії. Так ви зможете сегментувати аудиторію для більш точного пошуку інфлюенсерів та співпраці з ними.\n\n![Список авторів](/static/images/announcements/audienceInsights/uk_list.png)\n\n**☝️ Важливі нюанси:**\n\nФункції Інтересів та Професій доступні в якості адд-она, який можна придбати окремо до вашого тарифу. Щоб дізнатися більше про функції та можливості тарифного плану, напишіть нам на [support@youscan.io](mailto:support@youscan.io)\n");

/***/ }),

/***/ "lyjP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can see the **Engagement Rate by Views** for TikTok and YouTube.\nPlus, our new **Average Engagement** and **Average Views** metrics offer a clear snapshot of an influencer's true impact.\n\n![audience_insights_new_metrics](/static/images/announcements/audienceInsightsUpdate/en.png)\n\nDive into Audience Insights to discover influencers who truly engage their audience!\n\n☝️These metrics are part of the **Audience Insights add-on.**\n");

/***/ }),

/***/ "13kN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora puedes ver la **Tasa de participación por visualizaciones** en TikTok y YouTube.\nAdemás, nuestras nuevas métricas de **Promedio de participación** y **Promedio de visualizaciones** te ofrecen una imagen clara del verdadero impacto de un influencer.\n\n![audience_insights_new_metrics](/static/images/announcements/audienceInsightsUpdate/es.png)\n\nSumérgete en Audience Insights para descubrir influencers que realmente conectan con su audiencia!\n\n☝️Estas métricas forman parte del **complemento Audience Insights.**\n");

/***/ }),

/***/ "2Ijm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете переглядати **Рівень залучення за переглядами** для TikTok та YouTube.\nА також наші нові метрики **Середнє залучення** і **Середні перегляди** дають чітке уявлення про реальний вплив інфлюенсера.\n\n![audience_insights_new_metrics](/static/images/announcements/audienceInsightsUpdate/uk.png)\n\nЗануртесь в Audience Insights, щоб знайти інфлюенсерів, які дійсно залучають свою аудиторію!\n☝️Ці метрики доступні в рамках **додаткового модуля Audience Insights.**\n");

/***/ }),

/***/ "gG1y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Do you want to know what they say about your brand?\nEasy breezy! Now you can track and analyze what people say on YouTube videos about your monitoring object.\n\n![image](/static/images/announcements/audioMonitoring/en1.png)\n\nUse a **Subtitles** filter to filter out such mentions and reveal how your brand is mentioned in videos.\n\n![image](/static/images/announcements/audioMonitoring/en2.png)\n\n☝️ Audio Monitoring is an add-on feature. If you don’t see this data in your topics, contact us at support@youscan.io to learn more.");

/***/ }),

/***/ "Upnc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Дізнайтесь, як ваш бренд згадують у відео\nЦе простіше простого! Тепер ви можете відстежувати та аналізувати, що говорять про ваш об’єкт моніторингу у відео на YouTube.\n\n![image](/static/images/announcements/audioMonitoring/ua1.png)\n\nЗастосуйте фільтр **Субтитри,** щоб побачити такі згадки та дізнатись, як ваш бренд згадується у відео.\n\n![image](/static/images/announcements/audioMonitoring/ua2.png)\n\n☝️ Аудіо моніторинг — це додатковий функціонал. Якщо ви не бачите цих даних у темах, напишіть нам на support@youscan.io, щоб дізнатися як почати їх збирати.");

/***/ }),

/***/ "FOxG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You can now create topics using not just keywords, but also different attributes of the authors, such as their bio, name, or number of subscribers!\n\n💡To do this, you can use our new author-based logical operators. Activate them by pressing **CTRL + Space** for Windows or **Option + Space** for macOS.\n\nFor example, you need to analyze what influencers say about nutrition. Now, the **author.bio** and **author.subscribers** operators will help you focus on mentions from relevant authors.\n\n![image](/static/images/announcements/authorOperators/en.png)\n\n🔍[Find out about other author-based operators in our Knowledge Base.](https://help.youscan.io/en/articles/642981-search-query-language#h_77b30ae783)");

/***/ }),

/***/ "gtuU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora puedes crear unos temas utilizando no sólo las palabras clave, sino también distintos atributos de los autores, como su bio, nombre o número de suscriptores.\n\n💡Para ello, puedes utilizar nuestros nuevos operadores lógicos basados en autor. Actívalos pulsando **CTRL + Space** para Windows u **Option + Space** para macOS.\n\nPor ejemplo, necesitas analizar las bebidas favoritas de los niños y adolescentes gamers. Ahora, los operadores **author.age** y **author.interests** te ayudarán a centrarte en las menciones de autores relevantes.\n\n![image](/static/images/announcements/authorOperators/es.png)\n\n🔍[Lee más información sobre otros operadores basados en autor en nuestra Base de conocimientos.](https://help.youscan.io/en/articles/642981-search-query-language#h_77b30ae783)");

/***/ }),

/***/ "LMpP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете створювати теми, використовуючи не лише ключові слова, але й різні атрибути авторів, такі як біографія, ім'я чи кількість підписників!\n\n💡Для цього ви можете використовувати наші нові логічні оператори за авторами. Активуйте їх, натиснувши **CTRL + Пробіл** для Windows або **Option + Пробіл** для macOS.\n\nНаприклад, вам потрібно проаналізувати улюблені напої серед дітей і підлітків геймерів. Тепер оператори **author.age** та **author.interests** допоможуть вам сфокусуватися на згадках релевантних авторів.\n\n![image](/static/images/announcements/authorOperators/uk.png)\n\n🔍[Дізнайтеся про інші операторів для моніторингу за авторами у нашій Базі Знань.](https://help.youscan.io/en/articles/642981-search-query-language#h_77b30ae783)");

/***/ }),

/***/ "P3cW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("![Autocategories!](/static/images/announcements/autocategories/autocategories.png)\n\n\nWe have added a few new autocategories to the list of existing ones such as WOM, Commerce, and Charity! We've analyzed a large number of mentions, conducted testing and present you new autocategories:\n\n🖼 **Captions** to photos, pictures, and other multimedia content\n\n👀 **Teasers** - texts of previews or priming to the attached content. Usually, in such messages, there are links to sources with the full version of the text.\n\n📜 **Lists** with references to your monitoring object\n\nNow it will be even more convenient for you to work with the same type of messages and filter out insignificant mentions.\n\nYou can find out more about using autocategories in [this article](https://help.youscan.io/en/articles/2193114-auto-categories)");

/***/ }),

/***/ "tbKR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("![Автокатегории!](/static/images/announcements/autocategories/autocategories.png)\n\n\nК имеющемуся списку автокатегорий, таких как WOM, Коммерция и Благотворительность, мы добавили несколько новых! Мы проанализировали большое количество упоминаний, провели тестирование и представляем вам новые автокатегории:\n\n🖼 **Подписи** к фотографиям, картинкам и другому мультимедиа контенту\n\n👀 **Тизеры** - тексты предпросмотров или затравки к прикрепленному содержимому. Обычно в таких сообщениях есть ссылки на источники с полной версией текста\n\n📜 **Списки** c упоминаниями вашего объекта мониторинга\n\nТеперь вам будет еще удобнее работать с однотипными сообщениями и отфильтровывать малозначимые упоминания.\n\nДетальнее об использовании автокатегорий вы можете узнать в [этой статье](https://help.youscan.io/ru/articles/2193114-автокатегории)");

/***/ }),

/***/ "GvVm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("![Автокатегорії!](/static/images/announcements/autocategories/autocategories.png)\n\n\nДо наявного списку автокатегорій, таких як WOM, Комерція і Благодійність, ми додали кілька нових! Ми проаналізували велику кількість згадувань, провели тестування і представляємо вам нові автокатегоріі:\n\n🖼 **Підписи** до фотографій, картинок і іншого мультимедіа контенту\n\n👀 **Тизери** - тексти передпереглядів або затравки до прикріпленого вмісту. Зазвичай в таких повідомленнях є посилання на джерела з повною версією тексту\n\n📜 **Списки** зі згадуваннями вашого об'єкта моніторингу\n\nТепер вам буде ще зручніше працювати з однотипними повідомленнями і фільтрувати малозначущі згадування.\n\nДетальніше про використання автокатегорій ви можете дізнатися в [цій статті](https://help.youscan.io/ru/articles/2193114-автокатегории)");

/***/ }),

/***/ "j8bH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("If you are frequently using the autocategory feature, you may have noticed that the decisions about some mentions were not entirely accurate. Perhaps you would like to leave feedback regarding such mentions, and we, in turn, would like to hear your comments, as we believe there is nothing more important than to listen to our users.\n\nToday we have added the ability to remove autocategory tag from a mention card. This simple solution will help clear the mention stream from erroneous tags, and contribute to collecting more data for us to achieve greater precision next time!\n\n![Announcements!](/static/images/announcements/autocategories_feedback/en.png)\n");

/***/ }),

/***/ "6VKl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вы боялись восстания машин? Теперь вы можете показать этим железякам кто тут главный. \n\nЕсли вы часто используете автокатегории, то могли заметить, что иногда наш алгоритм дает сбой. Теперь вы можете убрать неверно определенную автокатегорию, и в следующий раз наш робот постарается вас не расстраивать.\n\n![Announcements!](/static/images/announcements/autocategories_feedback/ru.png)\n");

/***/ }),

/***/ "UDF0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви боялись повстання машин? Тепер можете показати цим залізякам хто тут головний.\n\nЯкщо ви користуєтесь автокатегоріями, то могли помітити, що зрідка наш алгоритм дає збій. Тепер ви можете прибрати невірно визначену автокатегорію, і наступного разу наш алгоритм постарається вас не засмучувати.\n\n![Announcements!](/static/images/announcements/autocategories_feedback/uk.png)\n");

/***/ }),

/***/ "4yR+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We've made some big changes to our search algorithm, which means you can expect more accurate results than ever before. 🎉\n\nTake a look at what our search feature can do now:\n\n- It's now even better at finding words with symbols:\n  *the word **acai** can find ****açaí***** \n- You can search for words with additional symbols:\n  ***@nike**, **#apple**, **$PYPL*** \n- You can search for a specific username or person's name with just one character difference: ***Leo /1 Messi** can find **@leo_messi**, **#leo_messi**, **leo-messi**, **LeoMessi**, **#Messi #Leo*** \n- You can now even track email addresses with our search:\n  ***@tesla.com** can find **support@tesla.com** or **director@tesla.com*** ");

/***/ }),

/***/ "2HI7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Echa un vistazo a lo que puede hacer ahora nuestra nueva función de búsqueda: 🎉\n\n- Ahora encuentra mejor las palabras con símbolos:\n  *la palabra **aquí** la puedes encontrar con **aqui*** \n- Logra buscar palabras con símbolos adicionales:\n  ***@nike**, **#apple**, **$PYPL*** \n- Puede buscar un nombre de usuario específico o el nombre de una persona con sólo un carácter de diferencia:\n  ***Leo /1 Messi** lo puede encontrar con **@leo_messi**, **#leo_messi**, **leo-messi**, **LeoMessi**, **#Messi #Leo***\n- Ahora puedes incluso rastrear las direcciones de correo electrónico con nuestra búsqueda actualizada:\n  ***@tesla.com** la puedes encontrar con **support@tesla.com** o **director@tesla.com*** ");

/***/ }),

/***/ "Q/o6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми оновили наш пошуковий алгоритм, а це означає, що тепер ви можете очікувати більш точних результатів, ніж будь-коли раніше. 🎉\n\nПодивіться, на що здатен наш пошук зараз:\n\n- Тепер він відмінює слова українською мовою автоматично\n- Ви можете шукати слова з додатковими символами:\n  ***#євробачення, @lachentyt, Курган & Agregat***\n- Ви можете шукати конкретне ім'я користувача або ім'я з різницею лише в один символ:\n  ***Leo /1 Messi** знайде **@leo_messi**, **#leo_messi**, **leo-messi**, **LeoMessi**, **#Messi #Leo*** \n- Тепер ви можете відстежувати адреси електронної пошти за допомогою нашого пошуку:\n  ***@youscan.io*** *знайде* ***support@youscan.io*** ");

/***/ }),

/***/ "0Vwr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We've introduced several enhancements to the internal topic search, making it possible for you to:\n\n- Locate mentions posted by specific authors using [author-based operators](https://help.youscan.io/en/articles/642981-search-query-language#h_fdc7d42058).\n  ***author.bio:(nutritionist OR dietitian OR “health coach”)*** will help you discover mentions from authors with terms such as ***nutritionist, dietitian,*** and ***health coach*** in their bio.\n- Find words with symbols.\n  Searching for the word ***acai** will now include results for ****açaí*****\n- Search for words with additional symbols like hashtags or handles.\n  For instance: ***@nike**, **#apple**, **$PYPL***\n- Look for a specific person's name with just one character difference.\n  ***Leo /1 Messi** can find variations like **@leo_messi**, **#leo_messi**, **leo-messi**, **LeoMessi**, **#Messi #Leo***\n- Track email addresses.\n  ***@tesla.com** can now help you locate mentions related to email addresses like **support@tesla.com** or **director@tesla.com***\n  ![img](/static/images/announcements/betterSearchInTopics/en.png)");

/***/ }),

/***/ "3sqh":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hemos introducido varias mejoras en la búsqueda interna de temas, lo que te permite:\n\n- Localizar menciones publicadas por autores específicos utilizando [operadores basados en el autor](https://help.youscan.io/es/articles/642981-search-query-language#h_fdc7d42058).\n  ***author.bio:(nutricionista OR dietista OR “coach de salud”)*** te ayudará a descubrir menciones de autores que tienen términos como ***nutricionista, dietista*** y ***coach de salud*** en su biografía.\n- Encontrar palabras con símbolos.\n  La búsqueda de la palabra ***acai*** ahora incluirá resultados para **açaí**.\n- Buscar palabras con símbolos adicionales como hashtags o nombres de usuario.\n  Por ejemplo: ***@nike**, **#apple**, **$PYPL***\n- Buscar el nombre de una persona específica con solo una diferencia de caracteres.\n  ***Leo /1 Messi** puede encontrar variaciones como **@leo_messi**, **#leo_messi**, **leo-messi**, **LeoMessi**, **#Messi #Leo***\n- Rastrear direcciones de correo electrónico.\n  ***@tesla.com** ahora puede ayudarte a localizar menciones relacionadas con direcciones de correo electrónico como **support@tesla.com** o **director@tesla.com***.\n  ![img](/static/images/announcements/betterSearchInTopics/es.png)");

/***/ }),

/***/ "N00P":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми оновили пошук всередині тем, щоб ви легко могли:\n\n- Знаходити згадки, опубліковані конкретними авторами, користуючись [операторами на основі характеристик автора](https://help.youscan.io/uk/articles/642981-%D0%BC%D0%BE%D0%B2%D0%B0-%D0%BF%D0%BE%D1%88%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE-%D0%B7%D0%B0%D0%BF%D0%B8%D1%82%D1%83#h_a44043b9eb).\n  ***author.bio:(нутриціолог OR дієтолог)*** знайде згадки користувачів, які вказали у своєму описі профіля хочаб одне із цих слів: **нутриціолог**, **дієтолог.**\n- Шукати всі згадування з конкретним словом українською, не відмінюючи це слово вручну.\n  ***кіт*** знайде згадки з усіми формами написання: ***кота***, ***коти***, ***котові*** і так далі.\n- Шукати слова з додатковими символами.\n  Наприклад: ***#євробачення, @lachentyt, Курган & Agregat***\n- Знаходити варіанти написання конкретного імені, що відрізняються лише одним символом:\n  ***Leo /1 Messi** знайде **@leo_messi**, **#leo_messi**, **leo-messi**, **LeoMessi**, **#Messi #Leo***\n- Відстежувати адреси електронної пошти.\n  ***@youscan.io*** тепер може допомогти вам знайти згадки, пов'язані з адресами електронної пошти, такими як ***support@youscan.io*** aбо ***info@youscan.io***\n  ![img](/static/images/announcements/betterSearchInTopics/uk.png)");

/***/ }),

/***/ "Uf/w":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We are now collecting data from Bluesky. This means you’ll gain even deeper insights into what’s being said about your brand.\n\n![image](/static/images/announcements/bluesky/en.png)\n\nGot questions? Reach out to us at [support@youscan.io](mailto:support@youscan.io)");

/***/ }),

/***/ "lU8c":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora estamos recopilando datos de Bluesky. Así obtendrás más información sobre lo que se escribe sobre tu marca.\n\n![image](/static/images/announcements/bluesky/es.png)\n\n¿Tienes preguntas? Póngase en contacto con nosotros en [support@youscan.io](mailto:support@youscan.io)");

/***/ }),

/***/ "YToJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ми збираємо дані з Bluesky. Тож ви будете отримувати ще більше інсайтів про те, що пишуть про ваш бренд.\n\n![image](/static/images/announcements/bluesky/uk_1.png)\n![image](/static/images/announcements/bluesky/uk_2.png)\n\nВиникли запитання? Напишіть нам на [support@youscan.io](mailto:support@youscan.io)");

/***/ }),

/***/ "x9Vk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Automate your support workflow by sending important mentions about your brand to your bpm'online account.\n\nYou can send mentions manually or automatically using rules. Read more on how to configure integration and send mentions in [our article](https://help.youscan.io/en/articles/2184103-how-to-configure-bpm-online-integration).\n\n![Case details](/static/images/announcements/bpmonline/case-details.png)\n");

/***/ }),

/***/ "48gE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Важные всплески обсуждений, негативные отзывы и другие важные для вас упоминания, вы можете отправлять в bpm'online вашей команде для обработки и быстрого реагирования.  \n \nУпоминания можно отправлять вручную или автоматически, задав правило для отправки. Подробнее о настройке интеграции и отправке упоминаний читайте в [нашей статье](https://help.youscan.io/ru/articles/2184103-настройка-интеграции-с-bpm-online).\n\n![Case details](/static/images/announcements/bpmonline/case-details.png)\n");

/***/ }),

/***/ "3UDb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відправляйте важливі обговорення, негативні відгуки та інші, важливі для вас, згадування в bpm'online вашій команді для обробки та швидкого реагування.\n \nЗагдування можна відправляти вручну або автоматично, налаштувавши правило. Читайте більше про налаштування інтеграції та про відправку згадувань в [нашій статті](https://help.youscan.io/ru/articles/2184103-настройка-интеграции-с-bpm-online).\n\n![Case details](/static/images/announcements/bpmonline/case-details.png)\n");

/***/ }),

/***/ "BV1H":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You asked — we listened! From now on, you can add your company logo to your custom dashboards in YouScan with a few clicks! Sounds exciting? Learn how to get it done 👇🏻\n\n![img](/static/images/announcements/brandedDashboards/en.png)\n\nTo add a logo to your dashboard, follow these simple steps:\n\n- Go to your dashboard, and from the three-dot menu, select Edit;\n- In the settings, click Add your logo and select the preferred logo from your computer;\n- Adjust the size and click Apply.\n\n![img](/static/images/announcements/brandedDashboards/en.gif)\n\n🪄 Your Logo will now be visible on the dashboard in the shareable dashboard link and the PowerPoint report.\n");

/***/ }),

/***/ "oyl3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви просили — ми дослухались! Відтепер ви можете з легкістю додавати свій логотип на кастомізовані дашборди в YouScan. Ось, як це зробити 👇🏻\n\n![img](/static/images/announcements/brandedDashboards/uk.png)\n\nЩоб додати логотип на кастомізований дашборд, виконайте ці прості кроки:\n\n- Відкрийте дашборд, та з меню оберіть Редагувати;\n- В налаштуваннях натисніть на Додати свій лого та виберіть потрібну картинку з вашого компьютера;\n- Підредагуйте розмір на натисніть Застосувати.\n\n![img](/static/images/announcements/brandedDashboards/uk.gif)\n\n🪄 Тепер ви побачите свій логотип:\n- перейшовши за посиланням на дашборд\n- в звіті PowerPoint.\n");

/***/ }),

/***/ "s4nG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can add any hotel from [expedia.com](https://expedia.com) to your topic [as a channel](https://help.youscan.io/en/articles/5563235-channels-for-accounts-with-global-coverage) to analyze reviews and replies from this source.\n\n![image](/static/images/announcements/channelsExpedia/en.png)\n\n💡**Did you know?**\n\nYou can also add places from [booking.com](https://booking.com) and [opentable.com](https://opentable.com) as channels to collect reviews.");

/***/ }),

/***/ "kHG9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, puedes añadir cualquier hotel de  [expedia.com](https://expedia.com) a tu tema [como canal](https://help.youscan.io/es/articles/5563235-collection-method-by-channels) para analizar las opiniones y respuestas de esta fuente.\n\n![image](/static/images/announcements/channelsExpedia/es.png)\n\n💡 **¿Sabías que?**\n\nTambién puedes añadir lugares de [booking.com](https://booking.com) y [opentable.com](https://opentable.com) como canales para recopilar opiniones.");

/***/ }),

/***/ "ka6g":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете додати будь-який готель з [expedia.com](https://expedia.com) до своєї теми [як канал](https://help.youscan.io/uk/articles/5563235-%D1%81%D0%BF%D0%BE%D1%81%D1%96%D0%B1-%D0%B7%D0%B1%D0%BE%D1%80%D1%83-%D0%BF%D0%BE-%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB%D0%B0%D1%85), щоб досліджувати відгуки та відповіді з цього джерела\n\n![image](/static/images/announcements/channelsExpedia/uk.png)\n\n💡 **Чи ви знали?**\n\nВи також можете додати місця з [booking.com](https://booking.com) і [opentable.com](https://opentable.com) щоб збирати відгуки.");

/***/ }),

/***/ "mNzy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Add restaurant pages from [opentable.com](https://www.opentable.com/) as channels to analyze what guests like and dislike about specific restaurants.\n\n![image](/static/images/announcements/channelsOpenTable/en.png)\n\n[Check step by step guide in our Knowledge Base](https://help.youscan.io/en/articles/5563235-channels-for-accounts-with-global-coverage)\n");

/***/ }),

/***/ "cGZI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Додавайте сторінки ресторанів із [opentable.com](https://www.opentable.com/) як канали, щоб аналізувати, за що хвалять та сварять конкретні заклади.\n\n![image](/static/images/announcements/channelsOpenTable/uk.png)\n\n[Детальна інструкція у Базі Знань](https://help.youscan.io/en/articles/461615-channels-for-accounts-with-local-coverage)");

/***/ }),

/***/ "N0hP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can add any business/place from yelp.com to your topic as a channel to analyze reviews on local businesses ranging from bars, restaurants, and cafes to hairdressers, spas, and gas stations.\n\n![image](/static/images/announcements/channelsYelp/en.png)\n\nYouScan will be able to collect:\n- reviews;\n- replies;\n- not recommended reviews.\n\n[📚 Follow this guide to learn how to add various sources as channels to YouScan](https://help.youscan.io/en/articles/5563235-channels-for-accounts-with-global-coverage)");

/***/ }),

/***/ "yekJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, puedes agregar cualquier negocio/lugar de yelp.com a tu tema de monitoreo como canal para analizar reseñas de los negocios locales, desde bares, restaurantes y cafeterías hasta peluquerías, spas y gasolineras.\n\n![image](/static/images/announcements/channelsYelp/es.png)\n\nCon YouScan podrás recolectar:\n- reseñas;\n- respuestas;\n- reseñas no recomendadas.\n\n[📚 Sigue estas instrucciones para aprender como agregar varias fuentes como canales en YouScan](https://help.youscan.io/en/articles/5563235-channels-for-accounts-with-global-coverage)");

/***/ }),

/***/ "Q03w":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете додавати будь-яку сторінку бізнесу/закладу з yelp.com в вашу тему каналом, щоб аналізувати відгуки на різноманітні заклади: від барів, ресторанів та кафе до перукарень, спа та автозаправок.\n\n![image](/static/images/announcements/channelsYelp/uk.png)\n\nYouScan зможе зібрати:\n- відгуки;\n- відповіді на відгуки;\n- не рекомендовані відгуки.\n\n[📚 Дізнайтесь більше про додавання різних джерел каналами в YouScan](https://help.youscan.io/en/articles/5563235-channels-for-accounts-with-global-coverage)");

/***/ }),

/***/ "SkZk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Collection methods**\n\nThe \"Collection Methods\" filter helps you work with mentions that got collected to your topic by different means.\n\nThere are several collection methods in YouScan:\n\n- keywords in text,\n- keywords in the image,\n- logo in the image,\n- mentions from added channels,\n- mentions added manually,\n- content on the image.\n\nFor example, to analyze the mentions in which your topic keywords are in the image, select \"Image matching query\".\n\n![image1](/static/images/announcements/collected_by/en_1.png)\n\nNow you can also see why each mention got collected to your topic — just open the mention to view the collection method.\n\n![image1](/static/images/announcements/collected_by/en_2.png)\n\n**Indirect mentions**\n\nThe \"Indirect Mentions\" filter helps you select or exclude comments without keywords.\n\nThese comments were left on the mentions of your brand, but they don't have any reference to your brand. You can now filter out \"Comments not matching query\".\n\n![image1](/static/images/announcements/collected_by/en_3.png)\n\nIf such comments are not useful in your topic, select \"Comments not matching query\" and create a \"Don't save\" rule. Then comments without a direct mention of your brand will not get collected to the topic.\n\n![image1](/static/images/announcements/collected_by/en_4.gif)\n\n☝️ The \"Comments not matching query\" filter does not affect mentions collected from added channels, as well as mentions that have \"Reviews\" source type.\n\nData on the new filters is available in all topics from April 16.\n");

/***/ }),

/***/ "h2tn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Методы сбора**\n\nФильтр «Методы сбора» поможет вам работать с упоминаниями, которые попали в тему разными способами.\n\nВ YouScan есть такие методы сбора:\n- упоминание в тексте,\n- упоминание в тексте на изображении,\n- логотип на изображении,\n- сообщение из подключенного канала,\n- сообщение, которое добавили вручную,\n- контент на изображении.\n\nНапример, чтобы проанализировать упоминания, в которых ключевые слова есть на изображении, примените «Текст на изображении».\n\n![image1](/static/images/announcements/collected_by/ru_1.png)\n\nТакже теперь можно узнать почему каждое упоминание попало в вашу тему — просто откройте упоминание чтобы посмотреть метод сбора.\n\n![image1](/static/images/announcements/collected_by/ru_2.png)\n\n**Косвенные упоминания**\n\nФильтр «Косвенные упоминания» поможет выбрать или исключить комментарии без ключевых слов. \n\nЭто комментарии, написанные под упоминаниями вашего бренда, но при этом в самих комментариях бренд не упоминается. Чтобы отфильтровать их, исключите «Комментарии без ключевых слов».\n\n![image1](/static/images/announcements/collected_by/ru_3.png)\n\nЕсли в вашей теме такие комментарии не полезны, выберите «Комментарии без ключевых слов» и настройте правило «Не сохранять». Тогда комментарии без прямого упоминания бренда не попадут в тему.\n\n![image1](/static/images/announcements/collected_by/ru_4.gif)\n\n☝️ Фильтр «Комментарии без ключевых слов» не действует на упоминания, собранные из подключенных каналов, и на упоминания, у которых тип источника — «Отзывы». \n\nДанные по новым фильтрам доступны во всех темах с 16 апреля.\n");

/***/ }),

/***/ "+a6T":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Методи збору**\n\nФільтр «Методи збору» допоможе вам працювати зі згадуваннями, які потрапили в тему різними способами.\n\nУ YouScan є такі методи збору:\n- згадування в тексті,\n- згадування в тексті на зображенні,\n- логотип на зображенні,\n- повідомлення з підключеного каналу,\n- повідомлення, яке додали вручну,\n- контент на зображенні.\n\nНаприклад, щоб проаналізувати згадування, в яких ключові слова є на зображенні, застосуйте «Текст на зображенні».\n\n![image1](/static/images/announcements/collected_by/ua_1.png)\n\nТакож тепер можна дізнатися чому певне згадування потрапило в вашу тему — просто відкрийте згадування, щоб подивитися метод збору.\n\n![image1](/static/images/announcements/collected_by/ua_2.png)\n\n**Непрямі згадування** \n\nФільтр «Непрямі згадування» допоможе вибрати або виключити коментарі без ключових слів.\n\nЦе коментарі, написані під згадуваннями вашого бренду, але при цьому в самих коментарях бренд не згадується. Щоб відфільтрувати їх, виключіть «Коментарі без ключових слів».\n\n![image1](/static/images/announcements/collected_by/ua_3.png)\n\nЯкщо у вашій темі такі коментарі не корисні, виберіть «Коментарі без ключових слів» і створіть правило «Не зберігати». Тоді коментарі без прямого згадування бренду не потраплять в тему.\n\n![image1](/static/images/announcements/collected_by/ua_4.gif)\n\n☝️ Фільтр «Коментарі без ключових слів» не діє на згадування, зібрані з підключених каналів, а також на згадування, тип джерела яких — «Відгуки».\n\nДані по новим фильтрам доступні в усіх темах с 16 квітня.\n");

/***/ }),

/***/ "nys5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We have added an extra layer of charm to our charts. The new colors are vibrant and perfect for your data presentation needs.\n\nTo select the color scheme:\n\n- click on My settings, then scroll down till you see Interface settings section\n\n![my settings page](/static/images/announcements/colorSchemes/en_1.png)\n\n- you can now choose the right color from four carefully selected palettes\n\n![my settings page](/static/images/announcements/colorSchemes/en_2.png)\n\n💡 If you'd prefer the old colors, select the Old School palette\n");

/***/ }),

/***/ "4lCy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Графіки в системі набули додаткового шарму. Нові яскраві кольори ідеально підходять для того, щоб зробити ваші презентації ще більш привабливішими.\n\nЩоб обрати потрібну кольорову схему:\n\n- натисніть на Мої налаштування, прокрутіть сторінку до розділу Налаштування інтерфейсу\n\n![my settings page](/static/images/announcements/colorSchemes/uk_1.png)\n\n- оберіть потрібний колір із чотирьох ретельно відібраних палітр:\n\n![colorSchemes](/static/images/announcements/colorSchemes/uk_2.png)\n\n💡 Якщо ви віддаєте перевагу старим кольорам, просто виберіть палітру «Стара школа».");

/***/ }),

/***/ "03gM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Sort by comments** the most commented mentions are shown first. This will help you find the hottest discussions, understand the cause, and react if it's necessary. Or find new influencers to collaborate with them.\n\n**Combine with filters!**\nFor example, try sort by comments with filter by negative sentiment. \nIt will help you find the most discussed problems.\n\nDon't forget about old sorting:\n**By engagement** shows the most important mentions first. The engagement is calculated as the sum of likes, reposts, and comments.\n\n**By views** - shows most viewed mention first. This sorting is a great idea for analyzing ad campaign.\n\n![Announcements!](/static/images/announcements/comments_sorting/img_en.svg)");

/***/ }),

/***/ "hCMR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Сортировка по комментариям** показывает упоминания с наибольшим количеством комментариев первыми. Это поможет вам найти самые горячие обсуждения, понять их причину и ответить, при необходимости. Или же найти лидеров мнений, про которых вы не знали и начать работать с ними.\n\n**Комбинируйте с фильтрами!**\nНапример, отсортируйте по комментариям и включите фильтр по негативу. Так вы увидите самые обсуждаемые проблемы.\n\nНе забывайте про старые сортировки:\n**По вовлечению** – помогает найти самые важные посты. Вовлечение считается как сумма лайков, репостов и комментариев.\n\n**По просмотрам** – это видело очень много людей. Такая сортировка отлично подходит для коммерции.\n\n![Announcements!](/static/images/announcements/comments_sorting/img_ru.svg)");

/***/ }),

/***/ "912A":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Сортування за коментарями** показує згадування з найбільшою кількістю коментарів першими. Це допоможе вам знайти найгарячіші обговорення, зрозуміти їх причину і відповісти, якщо треба. Або ж знайти впливових авторів, про яких ви не знали і почати працювати з ними.\n\n**Комбінуйте з фільтрами!**\nНаприклад, спробуйте сортування за коментарями і фільтрацію по негативу. Так ви побачите найбільш обговорювані проблеми.\n\nНе забувайте про старі сортування:\n**За залученням** – допомагає знайти найважливіші пости. Залучення розраховується як сума лайків, репостів і коментарів.\n\n**За переглядами** - це бачило дуже багато людей. Таке сортування відмінно підходить для комерції.\n\n![Announcements!](/static/images/announcements/comments_sorting/img_uk.svg)");

/***/ }),

/***/ "6AMt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("To give you more comparison visualizations, we have added comparison abilities to two more widgets. Now you can track the number of mentions, and check the sentiment of the mentions for different topics in the Bar and Spider charts.\n\nHow to create such widgets, you wonder? Don’t worry, we’ve got you.\n\n- Simply go to the widget list and select Bar or Spider chart;\n- Add up to 10 topics to compare.\n- Select the value and filters;\n- Group by any parameter from the list if you need;\n\nAnd there you go, you did it! 🎉\n\n![Gif](/static/images/announcements/compareBarAndSpiderWidget/en1.gif)\n\n![Gif](/static/images/announcements/compareBarAndSpiderWidget/en2.gif)\n\nFor more information about Custom Dashboard widgets, visit our [Knowledge Base](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards)! 📚\n");

/***/ }),

/***/ "oHhE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми додали можливість порівнювати дані з різних тем до Гістограми та Радіального віджета. Це дає вам можливість відслідковувати кількость згадувань з різних тем, а також порівнювати тональність в них.\n\nЯк же створити такі віджети? Ось інструкція:\n\n- Оберіть Гістограму або Радіальний віджет зі списку можливих віджетів на етапі створення;\n- Додайте до 10 тем з вашого акаунту для порівняння;\n- Оберіть дані та фільтри;\n- Згрупуйте дані за будь-якими параметрами зі списку.\n\nВсе готово! 🎉\n\n![Gif](/static/images/announcements/compareBarAndSpiderWidget/uk1.gif)\n\n![Gif](/static/images/announcements/compareBarAndSpiderWidget/uk2.gif)\n\nБільше деталей про роботу кастомізованих дашбордів та типи віджетів можна знайти, як завжди, в нашій [Базі Знань](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards)! 📚\n");

/***/ }),

/***/ "t74Y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now, you can effortlessly compare different time ranges on your widgets for a deeper understanding of trends and changes.\n\n**When to Use Date Range Comparison:**\n\n- **Social Media Strategy Evolution:** Track how your social media activities impact brand discussions over time. Compare sentiment distribution for Jan 2024 & Jan 2023 to spot improvements.\n\n  ![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/en.png)\n\n- **Seasonal Analysis:** Identify patterns and peak periods by comparing data for multiple years on one graph.\n\n  ![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/en1.png)\n\n- **Marketing Campaign ROI:** Optimize your strategy! Evaluate campaign effectiveness by comparing engagement across different time ranges based on historical performance.\n\n  ![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/en2.png)\n\n\n[Check our Help Center to learn how](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards#h_ae16ca3a00), or dive in on your dashboard and give it a try! Happy analyzing!\n");

/***/ }),

/***/ "Sip2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora, puede comparar sin esfuerzo diferentes rangos de tiempo en sus widgets para una comprensión más profunda de las tendencias y los cambios.\n\n**Cuándo utilizar la comparación de intervalos de fechas:**\n\n- **Evolución de la estrategia en los medios sociales:** Haga un seguimiento de cómo sus actividades en los medios sociales afectan a los debates sobre la marca a lo largo del tiempo. Compare la distribución del sentimiento para enero de 2024 y enero de 2023 para detectar mejoras.\n\n  ![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/es.png)\n\n- **Análisis estacional:** Identifique patrones y períodos pico comparando datos de varios años en un gráfico.\n\n  ![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/es1.png)\n\n- **ROI de la campaña de marketing:** ¡Optimice su estrategia! Evalúe la eficacia de la campaña comparando la participación en diferentes intervalos de tiempo basándose en el rendimiento histórico.\n\n  ![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/es2.png)\n\n\n[Consulte nuestro Centro de ayuda para saber cómo hacerlo](https://help.youscan.io/es/articles/4889946-tipos-de-widgets-en-cuadros-de-mando-personalizados#h_ae16ca3a00), o acceda a su panel de control y pruébelo. ¡Feliz análisis!\n");

/***/ }),

/***/ "Q1/k":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете легко порівнювати різні часові діапазони на віджетах для глибшого розуміння трендів.\n\n**Коли використати порівняння періодів:**\n\n- **Еволюція стратегії в соціальних мережах:** Відстежуйте, як ваша діяльність у соціальних мережах впливає на обговорення бренду з плином часу. Порівняйте розподіл тональності за січень 2024 та січень 2023 року, щоб виявити покращення.\n\n![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/uk.png)\n\n- **Сезонний аналіз:** Визначайте закономірності та пікові періоди, порівнюючи дані за кілька років на одному графіку.\n\n![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/uk1.png)\n\n- **Оцінка маркетингової кампанії**: Оптимізуйте свою стратегію! Порівняйте залучення ваших публікацій у різні періоди часу, щоб оцінити ефективність кампанії.\n\n![Announcements!](/static/images/announcements/compareDifferentPeriodsOnDashboards/uk2.png)\n\n\n[Дізнайтесь, як  налаштувати порівняння періодів, у наші Базі Знань](https://help.youscan.io/uk/articles/4889946-%D1%82%D0%B8%D0%BF%D0%B8-%D0%B2%D1%96%D0%B4%D0%B6%D0%B5%D1%82%D1%96%D0%B2-%D0%BD%D0%B0-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D1%8E%D0%B2%D0%B0%D0%BD%D0%B8%D1%85-%D1%96%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D1%96%D0%B9%D0%BD%D0%B8%D1%85-%D0%BF%D0%B0%D0%BD%D0%B5%D0%BB%D1%8F%D1%85#h_ae16ca3a00), або потестуйте це прямо у своїх Дашбордах!\n");

/***/ }),

/***/ "YfSt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We are thrilled to let you know that from now on, you can easily compare your brand with its competitors in your custom dashboard! In just **one widget,** you can:\n\n- compare the overall mention volume overtime across the topics;\n- compare your metrics with the competitors’ engagements, authors, sources, and many more.\n\nTo create such a widget, just follow these simple steps:\n\n![Gif](/static/images/announcements/compareLineWidget/en1.gif)\n\n- Open the necessary custom dashboard and click on “Create widget”;\n- Select “Line” from the list of charts;\n\n![Gif](/static/images/announcements/compareLineWidget/en2.gif)\n\n- Choose the first topic you will use. Then click on “+ Topic to compare” to choose the second topic for comparison. You can add up to 10 topics;\n\n☝️ You can delete one of the segments by simply clicking the bin icon next to the name of the topic;\n\n- Select the parameters in your topics you would like to compare: from mentions, authors, and sources to likes, reposts, and comments;\n- You can also select the needed date range for your widget;\n- The last step - give your widget a name.\n\n📚 Learn more about the types of widgets for the custom dashboards in our [Knowledge Base](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards)\n");

/***/ }),

/***/ "u63t":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("З радістю повідомляємо, що нарешті ви можете легко порівнювати дані вашого бренду та конкурентів у кастомізованих дашбордах! В **одному лише віджеті** ви можете:\n\n- Порівнювати динаміку згадувань з декількох тем у розрізі часу;\n- Аналогічно порівнювати показники залучення, авторів, джерел та ін.\n\nЩоб створити такий віджет, виконайте наступні кроки:\n\n![Gif](/static/images/announcements/compareLineWidget/uk1.gif)\n\n- Відкрийте потрібний кастомізований дашборд та натисніть “Створити віджет”;\n- Оберіть “Лінію” з представлених типів графіків;\n\n![Gif](/static/images/announcements/compareLineWidget/uk2.gif)\n\n- Оберіть першу тему для порівняння. Потім натисніть на “+ Додати тему для порівняння”, щоб обрати наступну тему. Ви можете порівнювати до 10 тем на одному графіку;\n\n☝️ Видалити одну з тем можна натиснувши на значок корзини поруч із назвою теми.\n\n- Оберіть параметри, які ви б хотіли порівнювати в темах: від згадувань, авторів та джерел до лайків, репостів та коментарів;\n- Ви можете також обрати необхідний інтервал часу для вашого віджету;\n- Останній крок — дайте віджету назву.\n\n📚 Дізнайтесь більше про інші типи віджетів для кастомізованих дашбордів в нашій [Базі Знань](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards).\n");

/***/ }),

/***/ "k2Do":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Our pie chart widget in custom dashboards is getting stronger: now, you can use it to compare two or more topics. As a result, it helps you analyze the share of voice taken up by different brands by percentage points in one dashboard!\n\nTo create such a widget:\n\n- Select “Pie chart” in the list of widgets;\n- Choose the topics you will use. You can add up to 10 topics.\n- Select the parameters in your topics you would like to compare: from mentions, authors, and sources to likes, reposts, and comments;\n- You can also select the needed date range for your widget.\n\n![Gif](/static/images/announcements/comparePieWidget/en.gif)\n\n🤓 You can find the details about all out widgets for custom dashboards in the [Knowledge Base](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards)\n");

/***/ }),

/***/ "EYSv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Наш секторний віджет в кастомізованих дашбордах стає ще потужнішим: тепер з його допомогою ви можете порівнювати дві та більше тем. В результаті, лише в одному дашборді ви отримаєте аналіз частки загдувань декількох брендів в відсотках!\n\nЩоб створити такий віджет:\n\n- Оберіть “Секторний” зі списку можливих віджетів;\n- Оберіть теми для порівняння (до 10 тем);\n- Оберіть параметри для порівняння в темах: від згадувань, авторів та джерел до лайків, репостів та коментарів;\n- За потреби оберіть необхідний часовий проміжок.\n- \n![Gif](/static/images/announcements/comparePieWidget/uk.gif)\n\n🤓 Дізнайтесь все про типи віджетів для кастомізованих дашбордів в нашій [Базі знань](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards)\n");

/***/ }),

/***/ "Cayw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("The magic of comparison is now available in the stacked bar chart in your Custom Dashboards. It will allow you to compare the sentiment breakdown or share of voice by source from several topics.\n\nWant to create such a widget? Follow these simple steps:\n\n- From the widget list, select the “Stacked bar chart”;\n- Choose the topics you want to compare.\n  - 👆 You can add up to 10 topics.\n- Select the filters you need for each topic;\n- Group by the parameter you want to compare;\n  - 🪄 Hocus-pocus, your widget is ready!\n\n![Gif](/static/images/announcements/compareStackedBarWidget/en.gif)\n\nFeel free to explore numerous abilities for comparison in your Custom Dashboards! Learn everything about the types of widgets and how to use them in [Knowledge Base](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards)\n");

/***/ }),

/***/ "2soQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете використовувати накопичувальну гістограму з ваших кастомізованих дашбордах для порівняння даних з різних тем. В цьому типі віджету ви зможете, наприклад, порівняти тональність або кількість згадувань з декількох тем.\n\nЯк створити такий віджет? Просто виконайте наступні кроки:\n\n- Оберіть накопичувальну гістограму зі списку віджетів;\n- Оберіть теми для порівняння;\n  - 👆 Ви можете обрати до 10 тем\n- Оберіть необхідні фільтри для кожної теми;\n- Додайте параметри, які ви хочете порівняти в темах. \n  - 🪄 Готово, ви та ваш віджет дивовижні!\n  \n![Gif](/static/images/announcements/compareStackedBarWidget/uk.gif)\n\nНе гайте часу та починайте порівнювати дані з ваших тем в кастомізованих дашбордах просто зараз! Якщо вам цікаво дізнатись більше про типи виджетів та як ви можете їх використовувати, читайте статтю з нашої [Бази знань](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards) 📚\n");

/***/ }),

/***/ "lTw5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’ve enhanced the Custom Dashboards with advanced comparison capabilities. The new Comparison widget allows you to compare different topics across various dimensions on the same easy-to-read chart.\n\n![comparisonWidget](/static/images/announcements/comparisonWidget/en.png)\n\n**How it works**\n\n1. Select the topics for comparison. You can also apply filters here to compare specific *logos, tags,* or *sources*.\n2. Choose by which metric you want to compare. It can be *mentions*, *authors*, *engagement*, or *potential reach*.\n3. Select the dimension you want to use for comparison: *sources, conversation subjects, author interests* or *occupations, recognized scenes* or *activities in images*.\n4.  And…. that’s it! YouScan automatically shows the main differences across selected dimensions.\n\nTo learn more about this and other types of widgets, check out the [Knowledge Base](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards).\n");

/***/ }),

/***/ "RHqb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hemos mejorado los tableros personalizados con funciones avanzadas de comparación. El nuevo widget comparativo permite comparar de manera muy fácil diferentes temas en varias dimensiones en un mismo gráfico.\n\n![comparisonWidget](/static/images/announcements/comparisonWidget/es.png)\n\n**Cómo funciona**\n\n1. Selecciona los tópicos para comparar. También puedes aplicar filtros aquí para comparar *logos, etiquetas* o *segmentos* específicos.\n2. Elige la métrica con la que quieres hacer la comparativa. Pueden ser *menciones*, *autores*, *engagement* o *alcance potencial*.\n3. Define la dimensión para usar en la comparación: *fuentes, temas, intereses del autor* u *profesiones, escenas reconocidas* o *actividades en imágenes*.\n4. Y.... ¡ya está! YouScan muestra automáticamente las principales diferencias entre las parámetros seleccionados.\n\nPara recibir más información sobre este y otros tipos de widgets, consulta nuestra [Base de conocimientos](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards).\n");

/***/ }),

/***/ "aYHc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми вдосконалили кастомні дашборди, додавши до них розширені можливості порівняння. Новий віджет \"Порівняння\" дозволяє порівнювати різні теми за різними параметрами на одному графіку.\n\n![comparisonWidget](/static/images/announcements/comparisonWidget/uk.png)\n\n**Як це працює**\n\n1. Виберіть теми для порівняння. Ви також можете застосувати фільтри для порівняння певних *логотипів, тегів* або *джерел*.\n2. Виберіть, за якою метрикою ви хочете порівняти. Це можуть бути *згадки*, *автори*, *залучення* або *потенційне охоплення*.\n3. Виберіть параметр, який ви хочете використовувати для порівняння: *джерела, тематики, інтереси авторів* або *професії, розпізнані сцени* або *діяльність на зображеннях*.\n4. І.... це все! YouScan автоматично покаже основні відмінності за обраними параметрами.\n\nЩоб дізнатися більше про цей та інші типи віджетів, перейдіть до [Бази знань](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards).\n");

/***/ }),

/***/ "oKgT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can compare how consumers see your brand and competitors' brands and answer the question \"How does my brand stand out from the rest?\".\n\nWe have created a new tool for competitive analysis that allows you to find out what situations are common in the images with different logos. The new chart is powered by Logo Recognition and [Visual Insights](https://help.youscan.io/en/articles/3178348-image-analysis-with-visual-insights) technologies that allow automatic logo, objects, scenes, and activities detection in the images.\n\n**Try the new chart in the Comparison section**\n\n\nThe new chart shows the top 5 popular objects, scenes, people, and actions in the images with logos that you select. While searching for insights, you can choose which logos and objects to display on the chart.\n\n![Announcements!](/static/images/announcements/competitor_analysis_by_logo/en.png)\n\nThe chart above shows that in the images with the Oreo logo, people tend to cook more often than in the images with Snickers (activity **cooking**). Apart from that, Oreo has much larger male audience in the images (person **man**).\n\n⚠️ The chart is available if you have the \"Logo Recognition\" add-on. To enable the logo recognition feature, reach out to us via chat or email [support@youscan.io](mailto:support@youscan.io).\n");

/***/ }),

/***/ "ANuq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете сравнить как потребители видят ваш бренд и бренды конкурентов, и ответить на вопрос «Чем мой бренд выделяется на фоне остальных?». \n\nМы создали инструмент для конкурентного анализа, с которым можно узнать какие ситуации часто встречаются на изображениях с разными логотипами. Новый график использует **[Распознавание лого](https://youscan.io/ru/blog/raspoznavanii-logotipov/)** и **[Визуальные Инсайты](https://help.youscan.io/ru/articles/3178348-%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9-%D1%81-%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E-visual-insights)** — технологию автоматического определения логотипов, объектов, сцен и действий на изображениях. \n\n**Тестируйте новый график в разделе «‎Сравнение»‎**\n\nГрафик показывает топ-5 популярных объектов, сцен, персон и действий на изображениях с логотипами, которые вы выбрали. В процессе поиска инсайтов вы можете выбрать какие логотипы и объекты отображать на графике.\n\n![Announcements!](/static/images/announcements/competitor_analysis_by_logo/ru.png)\n\nГрафик выше показывает, что на изображениях с логотипом Oreo готовят еду гораздо чаще, чем у Snickers (деятельность **cooking**). Также у Oreo намного больше мужской аудитории на изображениях (персон **man**).\n\n⚠️ График доступен, если у вас есть функция «‎Распознавание лого»‎. Чтобы подключить функцию распознавания лого, напишите нам в чат или на почту [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "vXyM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете порівняти, як споживачі бачать ваш бренд і бренди конкурентів та відповісти на питання «Чим мій бренд виділяється серед інших?».\n\nМи створили інструмент для конкурентного аналізу, з яким можна дізнатися які ситуації частіше трапляються на зображеннях з різними логотипами. Новий графік використовує **[Розпізнавання лого](https://youscan.io/ru/blog/raspoznavanii-logotipov/)** та [**Візуальні Інсайти**](https://help.youscan.io/ru/articles/3178348-%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9-%D1%81-%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E-visual-insights) — технології автоматичного роспізнавання логотипів, об'єктів, сцен і дій на зображеннях.\n\n**Спробуйте новий графік у розділі «Порівняння»**\n\nГрафік показує топ-5 популярних об'єктів, сцен, персон і дій на зображеннях з логотипами, які ви обрали. В процесі пошуку інсайтів ви можете обрати які логотипи і Візуальні Інсайти відображати на графіку.\n\n![Announcements!](/static/images/announcements/competitor_analysis_by_logo/uk.png)\n\nГрафік вище показує, що на зображеннях з логотипом Oreo готують їжу набагато частіше, ніж у Snickers (діяльність **cooking**). Також у Oreo набагато більше чоловічої аудиторії на зображеннях (персон **man**).\n\n⚠️ Графік доступний, якщо у вас є функція «Розпізнавання лого». Щоб підключити функцію розпізнавання лого, напишіть нам в чат або на пошту [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "6vv5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’re excited to introduce **Conversation Insights**, a powerful tool that helps you visualize and understand the big picture of conversations around any topic, brand, or audience.\n\nIt includes:\n\n- **Conversation Clusters**: See how different conversations are connected and spot macro trends at a glance.\n- **Subject Distribution**: Understand the mix of subtopics within your topic.\n- **Potential Crises**: Quickly identify and address potential issues before they escalate.\n- **Trends**: Keep an eye on popular videos, posts, and active discussions to stay on top of new trends related to your topic\n\n![conversational_insights](/static/images/announcements/conversationalInsights/en.png)\n\nEmbark on a journey with Conversation Insights! Should any questions arise, don’t hesitate to reach out through our support chat or email us at [support@youscan.io](mailto:support@youscan.io).\n");

/***/ }),

/***/ "Wft0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Nos complace presentarte  **Insights de Conversación**, una potente herramienta que te ayuda a visualizar y comprender el panorama de debates generales en torno a cualquier tema, marca o audiencia.\n\nIncluye:\n\n- **Conversation Clusters**:  Observa cómo se conectan las diferentes conversaciones y detecta las macrotendencias de un vistazo.\n- **Distribución de temas:** Comprende la mezcla de subtemas dentro de tu tema.\n- **Crisis potenciales:** Identifica y aborda rápidamente los problemas potenciales antes de que se agraven.\n- **Tendencias:** Descubre los vídeos más populares, las publicaciones y los debates activos para estar al tanto de las nuevas tendencias relacionadas con tu tema.\n\n![conversational_insights](/static/images/announcements/conversationalInsights/es.png)\n\n¡Embárcate en un viaje con Insights de Conversación! Si tienes alguna pregunta, no dudes en ponerte en contacto con nosotros a través de nuestro chat de soporte o envíanos un correo electrónico a [support@youscan.io](mailto:support@youscan.io).\n");

/***/ }),

/***/ "MrqM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми раді представити новий розділ **“Інсайти Обговорення”** — потужний інструмент, який допоможе вам візуалізувати та зрозуміти загальну картину обговорень навколо будь-якої теми, бренду чи аудиторії.\nВін містить:\n\n- **Кластери обговорень:** Вивчайте, як різні обговорення пов'язані між собою, і які основні тенденції їх повʼязують.\n- **Розподіл за темами:** Зрозумійте, які сами підтеми найбільш популярні у вашій темі.\n- **Потенційні кризи**: Швидко визначайте та вирішуйте потенційні кризові ситуації до того, як вони загостряться.\n- **Тренди**: Слідкуйте за популярними відео, публікаціями та активними дискусіями, щоб бути в курсі нових трендів, пов'язаних з вашою темою.\n\n![conversational_insights](/static/images/announcements/conversationalInsights/uk.png)\n\nВирушайте у подорож інсайтами обговорень! А якщо у вас виникнуть запитання, звертайтеся до нашого чату підтримки або пишіть нам на електронну адресу [support@youscan.io](mailto:support@youscan.io).\n");

/***/ }),

/***/ "+Wfp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Introducing our newest feature: Country Group Filters 🌍\n\nNow, effortlessly filter data for entire regions such as Europe or Asia with just a click. This time-saving functionality is seamlessly woven into every corner of YouScan, from creating topics to Dashboards.\n\nEnhance your social media listening experience with greater efficiency and enjoyment by diving into Region-Based Filtering!\n\n![img](/static/images/announcements/countryGroup/en.png)");

/***/ }),

/***/ "RiV1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Presentamos nuestra nueva función: Filtrado por grupos de países 🌍\n\nAhora, filtre sin esfuerzo los datos de regiones enteras como Europa o Asia con sólo un clic. Esta funcionalidad que ahorra tiempo está perfectamente integrada en cada rincón de YouScan, desde la creación de temas hasta los Dashboards.\n\n¡Mejore su experiencia de escucha de medios sociales con mayor eficiencia y disfrute sumergiéndose en el Filtrado Basado en Región!\n\n![img](/static/images/announcements/countryGroup/es.png)");

/***/ }),

/***/ "5EiD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляємо вам нашу нову функцію: Фільтрація по групах країн 🌍\n\nЛегко фільтруйте дані для цілих регіонів, таких як Європа чи Азія, за допомогою лише одного кліку. Ця функція, органічно вплетена в кожен куток YouScan, від створення тем до Дашбордів, допоможе вам значно заощадити час.\n\nПокращуйте свій досвід моніторингу соціальних мереж з більшою ефективністю та задоволенням, занурюючись у Фільтрацію за Регіонами!\n\n![img](/static/images/announcements/countryGroup/uk.png)");

/***/ }),

/***/ "7mo3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Amazing news – now you can find the mentions from the following sources in your topics:\n\n**Twitch**\n\n![Announcements](/static/images/announcements/coverageMay2022/twitch_en.png)\n\nAdd user pages and videos from Twitch as channels to find insights from the rapidly growing community.\n\n**App Store**\n\n![Announcements](/static/images/announcements/coverageMay2022/appstore_en.png)\n\nYou no longer need to add pages from App Store as channels to your topics. Now YouScan collects reviews for apps from App Store by keywords! If there is a keyword from your search query in the name of the app or the text of the review, then such a mention will be automatically collected to your topic.\n\n☝You can use App Store reviews for extensive research, for example, to find out what people say about banking or taxi services.\n\n**Amazon**\n\n![Announcements](/static/images/announcements/coverageMay2022/amazon_en.png)\n\nGet ready for more insights! Now mentions from Amazon get to your topics by keywords for you to explore the advantages and disadvantages of specific products.\n\nYou can also add certain product pages as channels to your topics.\n\n☝️Important\n- You can collect up to 10 thousand historical mentions;\n\n**New e-commerce platforms**\n\n![Announcements](/static/images/announcements/coverageMay2022/ecommerce_en.png)\n\nWe started monitoring new e-commerce platforms:\n- [walmart.com](https://www.walmart.com/)\n- [walmart.ca](https://www.walmart.ca/en)\n- [Bestbuy.com](http://bestbuy.com/)\n");

/***/ }),

/***/ "s6RN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Чудова новина – тепер ви можете бачити в своїх темах згадування з таких джерел:\n\n**Twitch**\n\n![Announcements](/static/images/announcements/coverageMay2022/twitch.png)\n\nДодавайте сторінки користувачів або відео в свої теми каналами, щоб знаходити цікаві інсайти в цьому комьюніті, що стрімко розвивається з кожним днем.\n\n**App Store**\n\n![Announcements](/static/images/announcements/coverageMay2022/appstore.png)\n\nБільше не потрібно додавати цікаві вам сторінки в канали, адже тепер ми моніторимо AppStore по ключевих словах! Якщо в назві додатку або в відгуках на нього є ключове слово з вашого пошукового запиту, система збере цю згадку в вашу тему.\n\n☝️Використовуйте дані з App Store, щоб робити глибокі дослідження, наприклад, дізнайтеся, що пишуть користувачі по банки або сервіси таксі.\n\n**Amazon**\n\n![Announcements](/static/images/announcements/coverageMay2022/amazon.png)\n\nПриготуйтесь до ще яскравіших інсайтів! Згадування з Amazon тепер потрапляють в ваші теми по ключових словах, щоб ви могли досліджувати переваги та недоліки певних продуктів.\n\nКрім того ви можете додавати окремі продукти каналами в теми.\n\n☝️Важливі нюанси\n- Вам доступні до 10 тисяч ретроспективних відгуків\n\n**Нові e-commerce платформи**\n\n![Announcements](/static/images/announcements/coverageMay2022/ecommerce.png)\n\nМи додали до моніторингу:\n- [walmart.com](https://www.walmart.com/)\n- [walmart.ca](https://www.walmart.ca/en)\n- [Bestbuy.com](http://bestbuy.com/)\n");

/***/ }),

/***/ "bV7Z":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Don’t miss a single insight - turn on the logo collection in your topics and select the logos you want to monitor! In this way, YouScan will find the pictures that feature your logo and collect them to your topic.\n\nTo turn on a logo collection when creating a new topic:\n\n- Step 1: at the “Main configuration” stage follow [the guide](https://help.youscan.io/en/articles/913342-how-to-create-a-new-monitoring-topic) to create a search query, then press “Next”\n- Step 2: at the “Visual data stage” click the “Configure logo” button, then select the logo you wish to monitor.\n\n💡 Don’t see a logo you need? No problem - contact our support team for help.\n\n![image](/static/images/announcements/createTopicLogo/en1.gif)\n\nTo turn on a logo collection for an existing topic:\n\n- Step 1: go to Settings tab;\n- Step 2: in the General tab, go to Logo section and click Add;\n- Step 3: Select the logos you need to monitor\n- Step 4: hit Apply\n\n💡 Don’t see a logo you need? No problem - contact our support team for help.\n\n![image](/static/images/announcements/createTopicLogo/en2.gif)\n\n👆 Logo recognition is a part of Visual Insights add-on (it is included in to Innovate pricing plan and can be additionally purchased for Listen or Analyze ones). To learn more contact our support team at support@youscan.io\n");

/***/ }),

/***/ "jKPn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("No pierdas ni un solo insight: activa la recopilación de logotipos en tus temas y selecciona los que quieres monitorear. De esta forma, YouScan encontrará unas imágenes que correspondan a tu logotipo y las recolectará en el tópico correcto.\n\nPara activar la colección de logotipos al crear un tema nuevo:\n\n- Paso 1: en la etapa \"Configuración principal\", sigue [la guía](https://help.youscan.io/en/articles/913342-how-to-create-a-new-monitoring-topic) para crear una consulta de búsqueda, luego presiona \"Siguiente\"\n- Paso 2: en la \"Etapa de datos visuales\", haz clic en el botón \"Configurar logo\", luego selecciona el logotipo que quieres monitorear.\n\n💡¿No ves el logotipo que necesitas? No hay problema: comunícate con nuestro equipo de soporte para recibir ayuda con eso.\n\n![image](/static/images/announcements/createTopicLogo/es1.gif)\n\nPara activar la recolección de logotipos para un tema ya creado:\n\n- Paso 1: ve a la pestaña Ajustes abajo a la izquierda;\n- Paso 2: en la pestaña General, ve a la sección Logotipo y haz clic en Configurar logo;\n- Paso 3: selecciona los logotipos que necesitas monitorear\n- Paso 4: presiona Aplicar\n\n💡¿No ves el logotipo que necesitas? No hay problema: comunícate con nuestro equipo de soporte para recibir ayuda con eso.\n\n![image](/static/images/announcements/createTopicLogo/es2.gif)\n\n👆 El reconocimiento de logotipos es parte del complemento de Visual Insights (está incluido en el tarifa Innovate y se puede comprarlo adicionalmente para Listen o Analyze). Para obtener más información, comunícate con nuestro equipo de soporte via [support@youscan.io](mailto:support@youscan.io)\n");

/***/ }),

/***/ "GVOk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Не втратьте жодного інсайту - вмикайте розпізнавання лого в ваших темах та обирайте логотипи, які ви б хотіли моніторити! Так YouScan знайде зображення, на яких фігурує ваш логотип та збере їх в вашу тему.\n\nЩоб увімкнути розпізнавання лого, коли ви створюєте нову тему:\n\n- Крок 1: на етапі “Основна конфігурація” створіть пошуковий запит, користуючись при необхідності [інструкцією](https://help.youscan.io/en/articles/913342-how-to-create-a-new-monitoring-topic), та натисніть “Далі”;\n- Крок 2: на етапі “Розпізнавання лого” натисніть на кнопку “Configure logo” та оберіть логотип, який бажаєте моніторити в темі.\n\n💡 Не бачите в списку необхідний логотип? Не переймайтесь - просто напишіть нашій команді підтримки.\n\n![image](/static/images/announcements/createTopicLogo/uk1.gif)\n\nЩоб увімкнути розпізнавання лого в існуючій темі:\n\n- Крок 1: перейдіть в Налаштування в потрібній темі;\n- Крок 2: в розділі Головне прокрутіть екран до розілу Логотип та натисніть “Configure logo”;\n- Крок 3: оберіть лого, яке ви хочете моніторити, з випадаючого списку;\n- Крок 4: натисніть “Apply”.\n\n💡 Не бачите в списку необхідний логотип? Не переймайтесь - просто напишіть нашій команді підтримки.\n\n![image](/static/images/announcements/createTopicLogo/uk2.gif)\n\n👆 Розпізнавання логотипів - це частина адд-ону Візуальні інсайти (він включений в тарифний план Innovate, також його можна додатково придбати до тарифних планів Listen та Analyze). Щоб дізнатись більше подробиць, напишіть нашій команді підтримки на support@youscan.io\n");

/***/ }),

/***/ "whWF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Save filters and dates on your dashboard, so you don’t need to add the same filter each time you work with the dashboard.\n\n![Announcements](/static/images/announcements/customDashboardDefaultFilter/en.gif)\n\nThese filters and dates are saved for anyone who opens a dashboard. Thus you can configure them for your colleagues to see the correct data.\n\nTo save filters or edit saved filters, you need to be an Account Admin or have “Manage topic” access to the topics used in this dashboard. [Read more about permission levels here](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics).\n");

/***/ }),

/***/ "EkfA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Guarda filtros y fechas en tu tablero, para que no tengas que añadir el mismo filtro cada vez que trabajes con el tablero.\n\n![Announcements](/static/images/announcements/customDashboardDefaultFilter/es.gif)\n\nEstos filtros y fechas se guardan para cualquiera que abra un tablón. Así puedes configurarlos para que tus compañeros vean los datos correctos.\n\nPara guardar filtros o editar filtros guardados, debe ser administrador de la cuenta o tener acceso de \"Gestionar tema\" a los temas utilizados en este panel. [Más información sobre los niveles de permiso aquí](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics).\n");

/***/ }),

/***/ "ELX8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Зберігайте фільтри та дати на дашборді, щоб не додавати один і той самий фільтр щоразу, коли ви працюєте з дашбордом.\n\n![Announcements](/static/images/announcements/customDashboardDefaultFilter/uk.gif)\n\nЦі фільтри і дати зберігаються для всіх, хто відкриває дашборд. Таким чином, ви можете налаштувати їх так, щоб ваші колеги бачили правильні дані.\n\nЩоб зберігати фільтри або редагувати збережені фільтри, ви повинні бути Адміном акаунта або мати доступ \"Управління темою\" до тем, що використовуються в цьому дашборді. [Більше про рівні доступів тут.](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics)\n");

/***/ }),

/***/ "8FNR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Make your widgets super easy to understand using our latest feature - Legends editing. Now you can edit your widget properties and give them the names that work better than the default ones for you or your colleagues.\n\nTo rename the legends:\n\n- click on Legend tab when creating the widget;\n- type in the new name next to the default legend;\n- finish creating the widget by clicking Next.\n\n![Announcements](/static/images/announcements/customDashboardLegendAlias/en.gif)\n\n💡 You can also rename the legend in existing widgets. To do that, click on Editing and proceed with the abovementioned steps.\n");

/***/ }),

/***/ "D7Ws":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Зробіть ваші віджети ще простішими, використовуючи нашу нову функцію - редагування легенди. Відтепер ви можете редагувати назви в графіках, видаляючи старі та використовуючи нові, звичніші для вас чи ваших колег.\n\nЩоб переіменувати легенди:\n\n- при створенні віджету перейдіть у вкладку Легенда;\n- впишіть нову назву поруч зі стандартною легендою;\n- завершіть сворення віджету та натисніть Далі.\n\n![Announcements](/static/images/announcements/customDashboardLegendAlias/uk.gif)\n\n💡 Ви можете дати нові назви легендам у вже існуючих віджетах. Для цього натисніть на Редагувати та повторіть ті ж кроки, що ми опимали вище ☝️\n");

/***/ }),

/***/ "iK0G":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Dashboards now have the same filters you're used to when working in topics. You can apply them to the whole dashboard or each widget individually.\n\n- **Audience-related filters**\n    - Author's age: you can set the range of the author’s age;\n    - Author's subscribers count: now you can set the range for the authors' audience to find various influencers for marketing initiatives;\n    - Author's interest categories: this will help you filter by your audience’s interest categories. *For example, business or media*\n    - Author's interests: now you can understand your audience's interests. *For example, finance, investing, social media, podcasts*\n\n![Announcements](/static/images/announcements/customDashboardNewFilters/en.gif)\n\n- **Links**: this will help you check the mentions that contain links to web pages.\n\n🎈 In addition, you can group filters in your own way using logical operators AND or OR.\n");

/***/ }),

/***/ "YKBg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("У дашбордах з'явилися такі самі фільтри, які ви використовуєте в темах. Ви можете застосувати їх до всього дашборду або до кожного віджета окремо.\n\n- **Фільтри за аудиторією**\n    - Вік автора: ви можете задати діапазон віку автора;\n    - Кількість підписників автора: тепер ви можете задати діапазон для аудиторії автора, щоб знайти різних інфлюенсерів для маркетингових ініціатив;\n    - Категорії інтересів автора: допоможе вам фільтрувати за категоріями інтересів вашої аудиторії. *Наприклад, бізнес або медіа*\n    - Інтереси автора: тепер ви можете мати уявлення про інтереси вашої аудиторії. *Наприклад, фінанси, інвестування, соціальні медіа, подкасти*\n\n![Announcements](/static/images/announcements/customDashboardNewFilters/uk.gif)\n\n- **Посилання:** це допоможе вам перевірити згадки, які містять посилання на вебсторінку.\n\n🎈Крім того, ви можете легко і гнучко групувати фільтри, використовуючи логічні оператори AND або OR.\n");

/***/ }),

/***/ "hqj8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can export your custom dashboards as a PowerPoint report. Neat charts with informative data distribution for analyzing are there for you — feel free to present them to your colleagues or clients!\n\nHow to export the custom dashboard in PowerPoint:\n\n- Go to your custom dashboard;\n- In the three-dot menu on the right, select \"Export PowerPoint\";\n- Wait for the report to be generated;\n\n![image](/static/images/announcements/customDashboardPowerpointExport/en.gif)\n\nTa-da, the report is saved 🎉 Now you can share it with the team.\n\n☝️Important\n\n- You can edit **all the charts and data** in your PowerPoint report. Feel free to add a bit of personal touch!");

/***/ }),

/***/ "Lu+Q":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете експортувати кастомізовані дашборди у вигляді презентації PowerPoint. Вам доступні візуально естетичні графіки з інформативним розподіленням даних — скоріше поділіться ними зі своїми колегами або клієнтами!\n\nЯк експортувати кастомізований дашборд у вигляді PowerPoint:\n\n- Зайдіть в кастомізовані дашборди у вашому акаунті;\n- Оберіть “Експорт Power Point” в меню з трьома крапками справа;\n- Зачекайте, доки презентація генерується;\n\n![image](/static/images/announcements/customDashboardPowerpointExport/uk.gif)\n\nГотово, презентація вже на вашому компʼютері 🎉 Тепер ви можете ділитися нею з командою.\n\n☝️Важливі деталі\n\n- Ви можете редагувати всі графіки та дані у вашій презентації PowerPoint. Стилізуйте її за вашим смаком!");

/***/ }),

/***/ "OhBu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can share custom dashboards with clients and colleagues who don't have a YouScan account. To do this, click the \"Share\" button and copy the link to share it with other people. Unauthorized users will be able to view the dashboard by the link.\n\n![image](/static/images/announcements/customDashboardSharableLink/en1.png)\n\n👆🏻Please note that they won't be able to filter or edit the dashboard and view any other dashboards in your account.\n\n**Unique dashboard links**\nYou may need to share the same custom dashboard but with different applied filters. For instance, you may want to select different geography for your colleagues. In this case, you don't need to create different dashboards and share each of them.\n\nInstead, you can create one dashboard, apply needed filters, and then share it. The system makes a unique link for each filter set. So you can have several links for the same dashboard, but different filters applied.\n\n![image](/static/images/announcements/customDashboardSharableLink/en2.gif)\n");

/***/ }),

/***/ "xX03":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете поделиться дашбордом с клиентами или коллегами, у которых нет аккаунта в системе YouScan.\n\nДля этого нажмите на кнопку «Поделиться» и скопируйте ссылку, чтобы отправить тем пользователям, с которыми хотите поделиться. Незарегистрированные в системе пользователи смогут просматривать по ссылке только один дашборд.\n\n![image](/static/images/announcements/customDashboardSharableLink/ru1.png)\n\n👆🏻 Обратите внимание, у них не будет доступа к редактированию или фильтрации дашборда, также как и доступа к другим дашбордам из вашего аккаунта.\n\n**Уникальные ссылки для дашбордов**\n\nУ вас может возникнуть ситуация, когда один и тот же дашборд нужно показать разным коллегам с разными фильтрами. К примеру, это может быть разная география. В таком случае вам не нужно будет создавать много дашбордов и делиться с каждым отдельно.\n\nВы можете создать один общий дашборд, применить фильтр по нужному гео, а затем нажать «Поделиться». Система создаст уникальную ссылку для каждого набора фильтров. Таким образом, вы сможете создавать несколько ссылок, которые приведут на один и тот же дашборд, но с разными фильтрами.\n\n![image](/static/images/announcements/customDashboardSharableLink/ru2.gif)\n");

/***/ }),

/***/ "aKsi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете поділитись кастомними дашбордами з клієнтами або коллегами, у которих немає аккаунту в системі YouScan. Для цього натисніть кнопку «Поділитися» та скопіюйте посилання аби потім надіслати тим, з ким ви хотіли б поділитись. Незареєстровані в системі користувачі зможуть переглядати за посиланням лише один дашборд.\n\n![image](/static/images/announcements/customDashboardSharableLink/uk1.png)\n\n👆🏻Зверніть увагу, у них не буде доступу до фільтрації або редагування цього дашборду, а також доступу до інших ващих дашбордів.\n\n**Унікальні посилання на дашборд**\n\nУ вас може виникнути потреба ділитись з колегами одним й тим самим дашбордом під різними фільтрами. Приміром, це може бути різна географія. У такому випадку вам не обов'язково створювати різні дашборди і ділитись кожним окремо.\n\nВи можете створити один дашборд, застосувати необхідні фільтри і натиснути «Поділитись». Для кожного набору фільтрів система створить унікальне посилання. Тобто ви зможете створити кілька посилань, які ведуть на один й той самий дашборд, але по-різному відфільтрований.\n\n![image](/static/images/announcements/customDashboardSharableLink/uk2.gif)\n");

/***/ }),

/***/ "tY+l":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Custom Dashboards Overview**\n\nCustom Dashboard is a set of reports that you can configure on your own to suit your needs. All account topics data is available. You only need to choose the most suitable visualization method.\n\nBesides, with the new feature, you can analyze the data from different topics in one report. It might be useful for competitor research or performance analysis of various product lines within one brand.\n\n**How to create the dashboard?**\n\nFirst, go to the Dashboards tab and click the \"Create Dashboard\" button.\n\n![Announcements](/static/images/announcements/customDashboards/en_1.gif)\n\nNext, set up widgets by choosing the topics, metrics, and their parameters. Apply filters or change the default period for widgets if needed.\n\n![Announcements](/static/images/announcements/customDashboards/en_3.gif)\n\nFinally, customize the dashboard layout for better visibility and usability.\n\n![Announcements](/static/images/announcements/customDashboards/en_4.gif)\n\n☝ Custom Dashboards are available for all clients with Pro plan or higher. Please note that a dashboard can contain up to 15 widgets.");

/***/ }),

/***/ "+k/P":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Что такое кастомизированные дашборды?**\n\nКастомизированные дашборды — это набор отчетов, которые вы можете настроить самостоятельно под свои потребности. Все данные из ваших тем доступны для использования, вам остается только выбрать наиболее удобный формат визуализации.\n\nПомимо этого, с новой функцией вы сможете анализировать сразу несколько тем в одном дашборде. Это может быть полезно для сравнения вашего бренда с конкурентами или анализа разных продуктовых линеек.\n\n**Как создать дашборд?**\n\nДля начала перейдите во вкладку Дашборды и кликните на кнопку «Создать дашборд».\n\n![Announcements](/static/images/announcements/customDashboards/ru_1.gif)\n\nДалее, настройте виджеты выбрав нужные темы, метрики и параметры к ним. При необходимости вы можете использовать фильтры, как во всей системе YouScan или задавать определенные периоды для отображения данных.\n\n![Announcements](/static/images/announcements/customDashboards/ru_3.gif)\n\nНапоследок, настройте расположение виджетов так, чтобы вам было удобно с ними работать.\n\n![Announcements](/static/images/announcements/customDashboards/ru_4.gif)\n\n☝Кастомизированные дашборды доступны клиентам с тарифным планом Про и выше. Обратите внимание, что на одном дашборде может быть до 15 виджетов.\nПодробнее о кастомизированных дашбордах вы можете узнать в нашей [Базе знаний](https://help.youscan.io/ru/articles/4855217-кастомизированные-дашборды).\n");

/***/ }),

/***/ "98L0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Що таке кастомізовані дашборди?**\n\nКастомізовані дашборди — це набір звітів, які ви можете налаштувати самостійно під свої потреби. Всі дані з ваших тем доступні для використання, вам залишається тільки обрати зручний формат візуалізації.\n\nОкрім цього, з новою функцією ви зможете аналізувати дані з кількох тем в одному дашборді. Це зручно для порівняння вашого бренду з конкурентами або аналізу продуктових ліній.\n\n**Як створити дашборд?**\n\nДля початку, перейдіть у вкладку Дашборди та клікніть на кнопку «Створити дашборд».\n\n![Announcements](/static/images/announcements/customDashboards/uk_1.gif)\n\nПотім налаштуйте віджети, обрав потрібні теми, кількісні метрики та параметри до них.\n\nЗа необхідності, ви можете використовувати фільтри такі самі, як в усій системі YouScan. Крім того, ви можете задавати потрібні періоди для відображення даних.\n\n![Announcements](/static/images/announcements/customDashboards/uk_3.gif)\n\nНаостанок, налаштуйте відображення віджетів так, щоб вам було зручно з ними працювати.\n\n![Announcements](/static/images/announcements/customDashboards/uk_4.gif)\n\n☝Кастомізовані дашборди доступні клієнтам з тарифним планом Про та вище. Зверніть увагу, що на одному дашборді можна розмістити до 15 віджетів.\nДетальніше про налаштування інтеграції читайте в нашій [Базі знань](https://help.youscan.io/ru/articles/4855217-кастомизированные-дашборды).\n");

/***/ }),

/***/ "avEo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("The new feature, Custom Dashboards, caught a lot of users' attention. We decided to go further, and today we are adding two more widgets. There are seven widget types available to make it easier to find the right visualisation for the data from your topics.\n\n**New widgets**\n\n**Map**\n\nThis visualisation helps to monitor your most active audience's geolocation and compare regions based on mention count, engagement, and much more.\n\nYou can use filters to show only needed data. Moreover, you can change the map scale and click on some countries (like Russia, the USA, or the UK) to see a more in-depth breakdown by state or region.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/geo-en.png)\n\n**Stacked Bar Chart**\n\nThis widget shows the data grouped by some parameters like tags, sentiment, etc., in a compact but informative way. You can select an absolute or relative scale for better chart readability\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/stacked-en.png)\n\n**How to create a widget?**\n\nThe map and stacked bar chart are available while creating or editing widget. To create a visualisation, follow these simple steps:\n\n1. Go to the needed dashboard;\n2. Click the \"Create widget\" button;\n3. Select needed data;\n4. Select needed widget type by clicking on it.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/editing-en.png)\n\n☝ If any widget type is grey, that means it is unavailable for selected data. Try to change the value, parameter, or grouping variable if the required visualisation is unavailable.\n");

/***/ }),

/***/ "HgKG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Новая функция в YouScan − кастомизированные дашборды уже успела привлечь много внимания пользователей. Мы решили не останавливаться на этом и добавили еще два типа виджетов. Всего сейчас доступно семь типов виджетов, которые упрощают визуализацию данных в ваших темах.\n\n**Новые виджеты**\n\n**Карта**\n\nЭта визуализация поможет отслеживать географическое расположение вашей самой активной аудитории, например, по количеству упоминаний или вовлечению и многое другое!\n\nВоспользуйтесь фильтрами, чтобы отображались только те данные, которые вас интересуют. Также вы можете регулировать масштаб карты и кликнуть на страну, чтобы подробнее рассмотреть ее регионы.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/geo-ru.png)\n\n**Диаграмма с накоплением**\n\nЭтот виджет поможет компактно размещать данные с группировкой, например, по тональности, типу упоминания, тегам и другим параметрам, которые для вас важны. Вы можете выбрать отображение чисел или процентов для наглядности.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/stacked-ru.png)\n\n### Как создать такие виджеты?\n\nКарта и диаграмма с накоплением уже доступны при создании или редактировании виджетов. Для их создания, нужно сделать несколько простых действий:\n\n1. Перейдите в нужный дашборд;\n2. Кликните на кнопку «Создать виджет»;\n3. Выберите данные;\n4. Выберите тип виджета кликнув на него.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/editing-ru.png)\n\n☝ Если какой-то из типов виджетов окрашен серым цветом, это значит, что он не поддерживается для выбранных данных. Попробуйте выбрать другую метрику для отображения, параметр или группировку.\n");

/***/ }),

/***/ "viRP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Нова функція в YouScan − кастомізовані дашборди − вже встигла привернути багато уваги наших користувачів. Ми вирішили не зупинятись на цьому і додали ще два типи віджетів до вже існуючих. Загалом зараз доступні сім типів віджетів, які спрощують підбір зрозумілих та інформативних візуалізацій данних з ваших тем.\n\n**Нові віджети**\n\n**Карта**\n\nЦя візуалізація допоможе відслідковувати географічне положення вашої найактивнішої аудиторії, порівнювати регіони за кількістю згадувань, залученням та іншим.\n\nКористуйтесь фільтрами аби відображити тільки ті данні, які вас цікавлять. Також, ви можете регулювати масштаб карти або клікнути на країну для більш детального перегляду регіонів.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/geo-uk.png)\n\n**Діаграма з накопиченням**\n\nЦей віджет стане в нагоді для відображення згрупованних даних, наприклад за тональністю, типом згадування, тегом або іншими парметрами, які для вас важливі. Ви можете обрати відображення абсолютних чисел або відсоткового співвідношення для наочної візуалізації.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/stacked-uk.png)\n\n### Як створити такі віджети?\n\nКарта та діаграма з накопиченням вже доступні при створенні та редагуванні віджетів. Для їх створення потрібно зробити кілька простих кроків:\n\n1. Перейти у потрібний дашборд;\n2. Клікнути на кнопку «Створити віджет»;\n3. Обрати потрібні дані;\n4. Виберіть потрібний тип віджета клікнувши на нього.\n\n![Announcement](/static/images/announcements/customDashboardsGeoStacked/editing-uk.png)\n\n☝ Якщо якийсь з типів віджетів зафарбовано у сірий колір, це означає, що він не підтримується для обранних даних. Спробуйте обрати іншу метрику для зображення, параметр або групування.\n");

/***/ }),

/***/ "wx1Y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on all permissions in YouScan work in a synchronized way: we made the custom dashboard permissions correspond with the existing topic permissions. This means that:\n- Only account and topic managers are able to create, edit and delete a dashboard/widget;\n- Only account managers can share a dashboard via a public link;\n- If a user has no access to a certain topic they won’t be able to see a custom dashboard and widgets that contain data from this topic.\n\n![image](/static/images/announcements/customDashboardsPermissions/en.gif)\nThere’s no need to set permissions for every custom dashboard: just activate the \"Access right to topic permissions\" feature and set up access levels. Learn more in our [Knowledge Base](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics)!\n");

/***/ }),

/***/ "whkc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мы синхронизировали типы доступов в аккаунтах YouScan. Теперь доступ к кастомизированным дашбордам полностью соответствует разделению прав доступа к темам. Это значит, что:\n- Создавать, редактировать и удалять дашборды/виджеты смогут только пользователи типа “Доверенный” и “Управление темой”;\n- Делиться кастомизированным дашбордом с помощью ссылки смогут только пользователи типа “Доверенный”;\n- Если у пользователя нет права доступа к определенной теме, ему будет недоступен кастомизированный дашборд и виджеты с данными из нее.\n\n![image](/static/images/announcements/customDashboardsPermissions/ru.gif)\nВам не нужно настраивать тип доступа к каждому кастомизированному дашборду: просто активируйте функцию «Разделение прав доступа к темам» и настройте уровни доступа. Подробнее читайте в [Базе Знаний](https://help.youscan.io/ru/articles/740082-%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%B8%D1%82%D1%8C-%D0%BF%D1%80%D0%B0%D0%B2%D0%B0-%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0-%D0%BA-%D1%82%D0%B5%D0%BC%D0%B0%D0%BC)!\n");

/***/ }),

/***/ "2mad":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми сінхронизували типи доступів в аккаунтах YouScan. Тепер доступ до кастомізованих дашбордів повністю відповідає розділенню прав доступів в темах. Це означає, що:\n- Створювати, редагувати та видаляти дашборди/віджети зможуть тільки користувачі типу “Довіренний” та “Керування темою”;\n- Ділитися кастомізованим дашбордом за допомогю посилання зможуть тільки користувачі типу “Довіренний”;\n- Якщо у користувача немає прав доступу в певну тему, кастомізований дашборд та віджети з даними з неї будут йому недоступні. \n\n![image](/static/images/announcements/customDashboardsPermissions/uk.gif)\nВам не потрібно налаштовувати тип доступу до кожного кастомізованого дашборду: просто активуйте функцію “Розділення прав доступу до тем” та налаштуйте рівні доступу. Детальніше читайте в [Базі Знань](https://help.youscan.io/ru/articles/740082-%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%B8%D1%82%D1%8C-%D0%BF%D1%80%D0%B0%D0%B2%D0%B0-%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0-%D0%BA-%D1%82%D0%B5%D0%BC%D0%B0%D0%BC)!");

/***/ }),

/***/ "8EBF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now \"Frequent words\" chart is available not only in Analytics but also in custom dashboards. We also improved some other widgets to create better dashboards.\n\n# Frequent words\n\nThis visualisation shows frequent words, phrases, hashtags, and emojis. Use categories below the chart to choose which one to show or hide.\n\nFrequent words visualisation is already available while creating a widget. To create a visualisation, follow these simple steps:\n\n1. Go to the needed dashboard;\n2. Click the \"Create widget\" button;\n3. Select widget type \"Frequent words\".\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/wordcloud-en.gif)\n\n👆Pay attention that this widget doesn’t support parameterising or grouping!\n\n**Improved widgets in dashboards**\n\n**Time intervals**\n\nDates are available now for grouping and parameterising. You also can choose the time interval from an hour to a year. Default value is the one that fits better for current time period. For example, for a year the default time interval is a month.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/granularity-en.png)\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/granularity-en-2.png)\n\n👆 Pay attention that line chart should have Dates as last value (for parameterising or grouping)!\n\n**Fixed position on the map**\n\nConfigure the \"Map\" widget in a way to see some region or country. For this to work just click the checkbox.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/geo-map-config-en.gif)\n\n**Fixed scale for better \"Stacked Bar\" chart readability**\n\nYou can select an absolute or relative scale for better chart readability while creating or editing the widget. It will be kept as default option and you won't need to handle it manually when using widget.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/stacked-config-en.gif)\n");

/***/ }),

/***/ "Edx1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь график «Частые слова» доступен не только в Аналитике, но и в кастомизированных дашбордах. А также мы улучшили некоторые виджеты для создания более информативных дашбордов.\n\n# Частые слова\n\nЭта визуализация показывает топ слов, которые чаще всего ваша аудитория использует в упоминаниях о вашем бренде. Слова в графике разделены на категории, которые помогут лучше понять восприятие вашего бренда. Используйте категории под графиком, чтобы переключать их отображение.\n\nВизуализация частых слов уже доступна при создании виджета. Для этого достаточно сделать несколько простых действий:\n\n1. Перейдите в нужный дашборд;\n2. Кликните на кнопку «Создать виджет»;\n3. Выберите тип виджета «Частые слова».\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/wordcloud-ru.gif)\n\n👆Обратите внимание, виджет не поддерживает разбивку или группировку!\n\n**Улучшенные виджеты в дашбордах**\n\n**Разбивка по датам**\n\nДля разбивки и группировки данных теперь доступны даты. Вы можете выбрать необходимый интервал: от часа до года. По умолчанию используется значение, подходящее для периода. Например, если выбрать год, график сформируется с помесячной разбивкой.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/granularity-ru.png)\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/granularity-ru-2.png)\n\n👆 Обратите внимание, линейный график в качестве последнего параметра (разбивка или группировка) теперь должен иметь дату!\n\n**Сохранение позиции карты**\n\nНастраивайте виджет «Карта» таким образом, чтобы видеть на дашборде определенный регион или страну. Для этого поставьте галочку над картой.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/geo-map-config-ru.gif)\n\n**Сохранение формы отображения данных для диаграммы с накоплением**\n\nДля диаграммы с накоплением выберите формат: числовой или в процентах. Он будет сохранен как формат по умолчанию для виджета и вам не нужно будет вручную его переключать при следующем использовании виджета.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/stacked-config-ru.gif)\n");

/***/ }),

/***/ "UqGN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Зараз графік «Часті слова» доступний не лише в Аналітиці але і в кастомізованих дашбордах. Також ми покращили деякі віджети для створення більш інформативних дашбордів.\n\n# Часті слова\n\nЦя візуалізація покаже часті слова, фрази, хештеги та емоджі. Для відображення необхідних даних використовуйте категорії під графіком.\n\nВізуализація частих слів вжу доступна для створення віджетів. Для цього достатньо зробити кілька простих кроків:\n\n1. Перейти у потрібний дашборд;\n2. Клікнути на кнопку «Створити віджет»;\n3. Виберіть тип віджета «Часті слова».\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/wordcloud-ua.gif)\n\n👆Зверніть увагу, віджет не підтримує розбивку та групування!\n\n**Покращені віджети в дашбордах**\n\n**Розбивка по датах**\n\nДля розбивки та групування даних тепер доступні дати. Ви можете обрати необхідний інтервал: від години до року. За замовчуванням використовується значення, придатне до періоду. Наприклад, якщо обрати рік, графік сформується з помісячною розбивкою.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/granularity-ua.png)\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/granularity-ua-2.png)\n\n👆Зверніть увагу, лінійний графік останнім параметром (розбивка або групування) повинен мати дату!\n\n**Збереження позиції на карті**\n\nНалаштуйте віджет «Карта» таким чином, щоб бачити на дашборді певний регіон або країну. Для цього поставте галочку над мапою.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/geo-map-config-ua.gif)\n\n**Збереження форми відображення даних для діаграми з накопиченням**\n\nДля діаграми з накопиченням оберіть формат: числовий або у відсотках. Він буде збережений як значення за замовчуванням, вам не потрібно буде переключати його при наступному використанні віджета.\n\n![Announcement](/static/images/announcements/customDashboardsWordcloud/stacked-config-ua.gif)\n");

/***/ }),

/***/ "Uez3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Data sampling helps you access a large dataset that exceeds the allowed limit of mentions in a topic. In a sampled topic YouScan won't save every mention; instead, it will skip some data to collect every nth mention. This will be helpful for:\n\n- conducting market, competitor, and consumer analysis;\n- analyzing trends;\n- tracking brand health of your competitors;\n- preparing sales pitches, and much more.\n\nTo turn on data sampling simply switch the toggler when creating the topic and select the sampling rate.\n\n![Announcements!](/static/images/announcements/dataSampling/en1.png)\n![Announcements!](/static/images/announcements/dataSampling/en2.png)\n\n📚 Learn everything about sampled topics in our [Knowledge base](https://help.youscan.io/en/articles/5574261-sampled-topics)\n💡 Data sampling is an add-on that can be purchased by subscribers of Analyze and Innovate pricing plans. Contact us at [support@youscan.io](mailto:support@youscan.io) for more details!\n\n");

/***/ }),

/***/ "7Pbo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вибірка даних (data sampling) допомагає вам працювати з великим обсягом даних, який перевищує ліміт згадувань в вашій темі. В темі з вибіркою YouScan не зберігає всі можливі згадування; замість цього ми зберемо в вашу тему кожне Н-не згадування. Це стане в нагоді для: \n\n- дослідження ринку, конкурентів та споживачів;\n- аналізу трендів;\n- відслідковування показників здоров’я конкуруючого бренду;\n- підготовки комерційних пропозицій та ін.\n\nЩоб ввімкнути вибірку даних, ввімкніть перемикач “Вибірка даних” під час створення теми та оберіть необхідну частоту вибірки.\n\n![Announcements!](/static/images/announcements/dataSampling/uk1.png)\n![Announcements!](/static/images/announcements/dataSampling/uk2.png)\n\n📚 Дізнайтесь все про теми з вибіркою даних в нашій [Базі знань](https://help.youscan.io/en/articles/5574261-sampled-topics)\n💡 Вибірка даних - це адд-он, який можна придбати на тарифних планах Analyze та Innovate. Напишіть нам на [support@youscan.io](mailto:support@youscan.io), якщо вам цікаво обговорити деталі!\n\n");

/***/ }),

/***/ "gPMX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Digest** is a new feature for creating monitoring reports about your topic. In two clicks, you will get a digest with beautiful charts and distributions for analyzing or presenting in your company.\n\n**Let’s create your first digest:**\n1. Open “Analytics” tab. You can set your filters and period here;\n2. Click on \"Create a digest\" button, as shown below.\n![digest](/static/images/announcements/digest/en.png)\n\n👉**How to download the digest in PDF:**\n1. Click on “Print” button;\n![digest](/static/images/announcements/digest/en_2.png)\n2. In the \"Print\" window select: \n• \"Save as PDF\" for Windows and click \"Save\";\n• \"Open in PDF Preview\" for macOS and click \"Save\".\n\nThe digest is created and saved 🎉\nNow you can share it with the team or put in your presentation.\nFeel free to tell us about your questions or proposition for the digest. It helps make them better in future updates.\n");

/***/ }),

/***/ "R+wM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Дайджест** – это новая функция, которая в пару кликов создаст отчет по мониторингу вашей темы. С красивыми графиками и распределениями – это то что нужно для презентаций перед командой или руководством.\n\n**Попробуйте создать дайджест, следуя по шагам:**\n1. Перейдите в раздел «Аналитика». Вы можете задать период дат и применить фильтры, по которым хотите получить отчет;\n2. Кликните на кнопку «Создать дайджест», как показано ниже.\n![digest](/static/images/announcements/digest/ru.png)\n\n👉**Чтобы сохранить отчет в PDF-формате:**\n1. Нажмите кнопку \"Распечатать\", как показано ниже;\n![digest](/static/images/announcements/digest/ru_2.png)\n2. В новом окне «Принтер» выберите:\n • «Сохранить как PDF» для Windows и нажмите «Сохранить»;\n • «Открыть в PDF» для macOS и нажмите «Сохранить».\n\nДайджест готов и сохранен 🎉\nТеперь можете делиться с командой или дополнить им свою презентацию.\n\nЕсли у вас возникли вопросы или идеи по улучшению дайджеста – напишите нам. Чтобы мы узнали как сделать дайджест удобней и полезней в его следующей версии.\n");

/***/ }),

/***/ "MOsL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Дайджест** - це нова функція, яка за пару кліків створює звіт з моніторингу вашої теми. З гарними графіками і розподіленнями - це те що треба для презентацій перед командою або керівництвом.\n\n**Спробуйте створити дайджест, слідуючи по крокам:**\n1. Перейдіть у розділ «Аналітика». Ви можете задати період дат і фільтри, за якими хочете отримати звіт;\n2. Натисніть на кнопку «Створити дайджест», як показано нижче.\n![digest](/static/images/announcements/digest/uk.png)\n\n👉**Щоб зберегти звіт в PDF-форматі:**\n1. Натисніть кнопку \"Роздрукувати\", як показано нижче;\n![digest](/static/images/announcements/digest/uk_2.png)\n2. У новому вікні «Принтер» оберіть:\n• «Зберегти як PDF» для Windows і натисніть «Зберегти»;\n• «Відкрити в PDF» для macOS і натисніть «Зберегти».\n\nДайджест готовий і збережений 🎉\nПоділіться ним з командою або доповніть свою презентацію.\n\nЯкщо у вас виникли питання або ідеї щодо поліпшення дайджесту - напишіть нам. Щоб ми дізналися як зробити дайджест зручніше і корисніше у його наступній версії.\n");

/***/ }),

/***/ "9jF1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("To get more context for an interesting comment or post in a mention stream, click the **Show the discussion** button. This allows you to view the entire conversation, analyze replies, and check the context of a comment.\n\nOnce you click the button, we filter the mention stream according to the discussion, showing you all related posts and comments in your topic.\n\n![img](/static/images/announcements/discussion/en.gif)\n\n👉 In discussion mode, you can access Analytics to check the sentiment distribution or Word cloud, among other features. Additionally, you can export the discussion in any format supported by YouScan.\n");

/***/ }),

/***/ "5d69":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Para obtener más contexto sobre un comentario o publicación que te interesa en un flujo de menciones, haz clic en el botón **Mostrar la discusión**. Esto te permitirá ver toda la conversación, analizar las respuestas y comprobar el contexto de un comentario.\n\nUna vez que hagas clic en el botón, filtraremos el flujo de menciones correspondientes a la discusión, mostrándote todos los mensajes y comentarios relacionados con el tema.\n\n![img](/static/images/announcements/discussion/es.gif)\n\n👉 Con la discusión filtrada, puedes acceder a la sección de Analítica para comprobar el sentimiento de los comentarios o ver la nube de palabras, entre otras funciones. Además, puedes exportar la discusión en cualquier formato disponible en YouScan.\n");

/***/ }),

/***/ "Xqj6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Щоб отримати більше контексту щодо цікавого коментаря або допису в потоці згадок, натисніть кнопку **Показати обговорення**. Це дозволить вам переглянути всю розмову, проаналізувати відповіді та перевірити контекст коментаря.\n\nПісля того, як ви натиснете кнопку, ми відфільтруємо потік згадок відповідно до обговорення, показуючи вам всі пов'язані дописи та коментарі у вашій темі.\n\n![img](/static/images/announcements/discussion/uk.gif)\n\n👉 У режимі обговорення ви можете перейти до Аналітики, щоб перевірити розподіл за тональністю, хмару слів чи інші графіки. Крім того, ви можете вивантажити обговорення у будь-якому форматі, що є в YouScan.\n");

/***/ }),

/***/ "E+T9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can choose to send the mentions to the bin with the possibility of their recovery in the future, or not to save them to the topic at all. You can use the \"Do not save\" rule to more efficiently use the analytical window.\n\n**To configure this rule you need:**  \n1. Choose a filter  \n2. Select all mentions in the stream and click on the \"Create rule\" button ![RuleIcon!](/static/images/announcements/do_not_save_rule/rule_icon.png)    \n3. Select \"Do not save\" action and create a rule  \n4. Done! Now these mentions will not fall into the topic.\n\nMentions that are covered with the \"Do not save\" rule will not be displayed in the topic and will not be available in the bin, so if you want to keep access to them, then use the rule \"Move to bin\"\n\n![Create rule!](/static/images/announcements/do_not_save_rule/create_rule.gif)  \n");

/***/ }),

/***/ "OsNT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете выбирать – отправлять упоминания в корзину с возможностью их восстановления в будущем или же вообще не сохранять в тему. Вы можете использовать правило \"Не сохранять\" для того, чтобы более эффективно использовать возможности аналитического окна.\n\n**Для настройки этого правила нужно:**  \n1. Выбрать фильтр  \n2. Выделить все упоминания в потоке и нажать на кнопку создания правил ![Rule icon!](/static/images/announcements/do_not_save_rule/rule_icon.png)  \n3. Добавить действие \"Не сохранять\" и создать правило  \n4. Готово! Теперь эти упоминания не будут попадать в тему\n\nУпоминания, которые попадают под правило \"Не сохранять\" не будут отображаться в теме и не будут доступны в корзине, так что если вы хотите иметь к ним доступ, то воспользуйтесь правилом \"Переместить в корзину\". \n\n![Create rule!](/static/images/announcements/do_not_save_rule/create_rule.gif)  ");

/***/ }),

/***/ "8Uqu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете вибирати - відправляти згадування в кошик з можливістю їх відновлення в майбутньому або ж взагалі не зберігати в тему. Ви можете використовувати правило \"Не зберігати\" для того, щоб більш ефективно використовувати можливості аналітічного вікна.\n\n**Для налаштування цього правила потрібно:**  \n1. Вибрати фільтр  \n2. Виділити всі згадування в потоці і натиснути на кнопку створення правил ![RuleIcon!](/static/images/announcements/do_not_save_rule/rule_icon.png)    \n3. Додати дію \"Не зберігати\" та створити правило  \n4. Готово! Тепер ці згадування не потраплятимуть в тему\n\nЗгадування, які відповідають правилу \"Не зберігати\" не будуть показуватися в темі і не будуть доступні в кошику, так що якщо ви хочете мати до них доступ, то скористайтеся правилом \"Перемістити в кошик\"\n\n![Create rule!](/static/images/announcements/do_not_save_rule/create_rule.gif)  ");

/***/ }),

/***/ "rAEm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Default theme for new widgets**\n\nNow you can choose a default theme when creating and editing dashboards. When creating new widgets, this theme will be selected automatically. This will speed up the widget creation process if you have a lot of themes in your account.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/en1.png)\n\n👆 Note that the theme does not change in existing widgets. This property only applies to new widgets. If you need to change the theme in existing widgets, use the widget editing feature.\n\n\n**Duplicate dashboards**\n\nNow you can duplicate dashboards! This will allow you to create similar reports for different topics in just a few clicks.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/en2.gif)\n\n👆 Note that you can set the default theme for the new dashboard when copying. It will automatically update all existing widgets of the new dashboard.\n\n\n**Auto-update data**\n\nIn the dashboard settings, we added the ability to enable automatic data updates for widgets. This will make your dashboards more lively and dynamic. Updates occur every 30 minutes. Also, you can always update all the data manually by reloading the page.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/en3.png)\n\n💡 For maximum value from automatic updates, in widget settings, we recommend choosing a relative time period.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/en4.png)\n\n\n**Updated category selection list**\n\nAlso, we're always trying to improve existing YouScan functionality, so we've added grouping to the category selection list, so that you can find what you need faster.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/en5.png)");

/***/ }),

/***/ "cf36":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Тема по умолчанию для новых виджетов**\n\nТеперь при создании и редактировании кастомных дашбордов можно выбрать тему по умолчанию. При создании виджетов эта тема будет выбираться автоматически, что ускорит процесс создания виджетов, если в вашем аккаунте много тем.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/ru1.png)\n\n👆 Обратите внимание, темы существующих виджетов останутся без изменений. Эта функция будет работать только для новых виджетов. Если вам необходимо сменить тему уже существующего виджета, воспользуйтесь функцией редактирования виджетов.\n\n\n**Копирование дашбордов**\n\nТеперь вы можете копировать дашборды! Это поможет создать однотипные отчеты для разных тем буквально в несколько кликов.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/ru2.gif)\n\n👆 Обратите внимание, во время копирования вы можете указать тему по умолчанию для виджетов на дашборде-копии, и она автоматически обновится на всех виджетах нового дашборда.\n\n\n**Авто-обновление данных**\n\nМы добавили возможность включить авто-обновление данных в настройки кастомных дашбордов. Это сделает ваши отчеты более живыми и динамичными. Обновление будет происходить каждые 30 минут. Также вы всегда можете обновить данные вручную, перезагрузив страницу.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/ru3.png)\n\n💡 Для получения наибольшей ценности от автоматических обновлений мы рекомендуем выбирать относительный период в настройках виджетов.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/ru4.png)\n\n\n**Обновленный список выбора категорий**\n\nА ещё, мы всегда стараемся улучшать уже существующие возможности YouScan. Мы добавили удобную группировку категорий для виджетов, чтобы вы могли быстрее находить то, что вам нужно.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/ru5.png)");

/***/ }),

/***/ "EdDh":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Тема за замовчуванням для нових віджетів**\n\nТепер при створенні та редагуванні дашбордів можна вибрати тему за замовчуванням. При створенні нових віджетів ця тема буде вибиратися автоматично. Це пришвидшить процес створення віджетів, якщо у вашому акаунті багато тем.\n\n![image](/static/images/announcements/duplicateDashboardsAndMore/uk1.png)\n\n👆 Зверніть увагу, в існуючих віджетах тема не змінюється. Ця властивість застосовується тільки для нових віджетів. Якщо вам необхідно змінити тему в існуючих віджетах, скористайтеся функцією редагування віджетів.\n\n\n**Копіювання дашбордів**\n\nТепер ви можете копіювати дашборди! Це дозволить створювати однотипні звіти для різних тем буквально за кілька кліків. \n\n![image](/static/images/announcements/duplicateDashboardsAndMore/uk2.gif)\n\n👆 Зверніть увагу, під час копіювання можна задати тему за замовчуванням для дашборду-копії. Вона автоматично оновиться на всіх існуючих віджетах нового дашборду.\n\n\n**Авто-оновлення даних**\n\nВ налаштування дашборду ми додали можливість увімкнути автоматичне оновлення даних для віджетів. Це зробить ваші дашборди більш живими та динамічними. Оновлення відбуваються кожні 30 хвилин. Також ви завжди можете оновити всі дані вручну, перезавантаживши сторінку. \n\n![image](/static/images/announcements/duplicateDashboardsAndMore/uk3.png)\n\n💡 Для отримання максимальної цінності від автоматичних оновлень, в налаштуваннях віджетів, ми радимо вибирати відносний період часу. \n\n![image](/static/images/announcements/duplicateDashboardsAndMore/uk4.png)\n\n\n**Оновлений список вибору категорій**\n\nІ ще, ми завжди стараємося вдосконалювати існуючий функціонал YouScan, тому додали групування у список вибору категорій аби ви могли швидже знаходити те, що потрібно. \n\n![image](/static/images/announcements/duplicateDashboardsAndMore/uk5.png)");

/***/ }),

/***/ "+PHZ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, we collect reviews from more e-commerce platforms:\n\n- [pampik.com](https://pampik.com/)\n- [panama.ua](http://panama.ua)\n\n![image](/static/images/announcements/ecommerceUaPampikPanama/en.png)");

/***/ }),

/***/ "rCsK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер YouScan збирає відгуки ще з двох онлайн-магазинів:\n\n- [pampik.com](https://pampik.com/)\n- [panama.ua](http://panama.ua)\n\n![image](/static/images/announcements/ecommerceUaPampikPanama/en.png)");

/***/ }),

/***/ "x9Dn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now, when you tweak your search query or filters, you can preview the changes before committing.\nJust click on «Show Preview» to check how your adjustments affect the number of mentions. See examples of what you'd get with the new settings and decide if you want to go ahead or tweak a bit more.\n\n![image](/static/images/announcements/editTopicPreview/en.gif)\n\n[Click for detailed instructions.](https://help.youscan.io/en/articles/1574953-modifying-a-monitoring-topic#h_b2424ec257)\n\n**Filters Meet Search Query 🤝**\n\nWe've made things smoother for you! Filters and search are now in one place, the «General» tab.\n\n![image](/static/images/announcements/editTopicPreview/en0.png)\n\n****Merge Big Topics Independently 👯****\n\nYour topic became too huge after your edits? No worries! You can now [merge topics yourself](https://help.youscan.io/en/articles/5671011-topic-merging)—no need to contact support.\n\n![image](/static/images/announcements/editTopicPreview/en.png)\n");

/***/ }),

/***/ "eTlw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Explore sus ediciones con precisión**🕵️\n\nExperimente un flujo de trabajo armonioso editando consultas\nAhora, cuando modifiques la consulta de búsqueda o los filtros, puedes previsualizar los cambios antes de confirmarlos.\nSólo tienes que hacer clic en \"Mostrar vista previa\" para comprobar cómo afectan tus ajustes al número de menciones. Observa ejemplos de lo que obtendrías con los nuevos ajustes y decide si quieres seguir adelante o retocar un poco más.\n\n![image](/static/images/announcements/editTopicPreview/es.gif)\n\n[Haga clic para obtener instrucciones detalladas.](https://help.youscan.io/es/articles/1574953-modificacion-de-un-tema-de-supervision)\n\n**Filtros de búsqueda** 🤝\n\n¡Hemos facilitado las cosas para ti! Ahora, los filtros y la búsqueda están en un solo lugar, en la pestaña “General”. Observa ambos al mismo tiempo para obtener una vista rápida.\n\n![image](/static/images/announcements/editTopicPreview/es0.png)\n\n**Combina temas amplios de manera independiente**👯\n\n¿Tu tema se ha vuelto demasiado grande después de editarlo? No te preocupes. Ahora puedes [fusionar temas tú mismo sin](https://help.youscan.io/es/articles/5671011-fusion-de-temas) necesidad de contactar con soporte.\n\n![image](/static/images/announcements/editTopicPreview/es.png)\n");

/***/ }),

/***/ "pBG0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Будьте впевнені у свої змінах** 🕵️\n\nТепер ви можете перевірити, як зміна фільтрів або пошукового запиту вплине на результати у темі.\nНатисніть на «Попередній перегляд», щоб подивитись, як нові налаштування вплинуть на кількість та якість згадок. Подивіться приклади згадувань, що будуть збиратись із новими налаштуваннями, щоб вирішити, чи готові ви зберігти зміни.\n\n![image](/static/images/announcements/editTopicPreview/uk.gif)\n\n[Натисніть сюди, щоб дізнатись більше.](https://help.youscan.io/uk/articles/1574953-%D0%B7%D0%BC%D1%96%D0%BD%D0%B0-%D0%BD%D0%B0%D0%BB%D0%B0%D1%88%D1%82%D1%83%D0%B2%D0%B0%D0%BD%D1%8C-%D1%82%D0%B5%D0%BC%D0%B8)\n\n**Фільтри та Запит разом** 🤝\nФільтри та пошуковий запит тепер в одному місці, на вкладці «Головне».\n\n![image](/static/images/announcements/editTopicPreview/uk0.png)\n\n**Об'єднуйте Великі Теми Самостійно** 👯\n\nЗмінили пошуковий запит і тема не проходить в ліміти? Нічого страшного! Тепер ви можете [об'єднувати теми самостійно](https://help.youscan.io/uk/articles/5671011-%D0%BE%D0%B1-%D1%94%D0%B4%D0%BD%D0%B0%D0%BD%D0%BD%D1%8F-%D1%82%D0%B5%D0%BC), без допомоги служби підтримки.\n\n![image](/static/images/announcements/editTopicPreview/uk.png)\n");

/***/ }),

/***/ "lQdg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Trends is a smart feature that analyzes mention spikes and groups them into trends based on machine learning algorithms.\n\nHowever, it happens that the name of the trend is too bulky or the wrong sentiment is defined and this can bother. Now, if you disagree with the sentiment of the trend or want to change its name, it is easy to fix.\n\nTo do that, in Analytics tab or in Mentions stream click on the pencil icon, edit trend and click the \"Apply\" button. The changes will be displayed in filters Trends tab, Mentions stream, digest and custom dashboard widget.\n\n![image](/static/images/announcements/editTrend/en.gif)\n");

/***/ }),

/***/ "+ccb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тренды − это умная функция, которая анализирует всплески упоминаний и группирует их в тренды на основе алгоритмов машинного обучения.\n\nОднако, бывает что название тренда слишком громоздкое или определена неверная тональность и это может мешать. Теперь если вы не согласны с тональностью тренда или желаете изменить его название, это легко исправить.\n\nДля этого в разделе Аналитика или в Потоке упоминаний кликните на значок карандаша, отредактируйте, затем нажмите кнопку «Применить». Изменение тренда отобразится в фильтрах во вкладке Тренды, в потоке упоминаний, в дайджесте, в виджете кастомного дашборда.\n\n![image](/static/images/announcements/editTrend/ru.gif)\n");

/***/ }),

/***/ "QBeG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тренди - це розумна функція, яка аналізує сплески згадок і групує їх в тренди на основі алгоритмів машинного навчання.\n\nОднак, буває що назва тренда занадто громіздка або визначена невірна тональність і це може заважати. Тепер якщо ви не погоджуєтесь із тональністю тренда або бажаєте змінити його назву, це легко виправити.\n\nДля цього в розділі Аналітика або в Потоці згадувань клікніть на значок олівця, відредагуйте тренд та натисніть кнопку «Застосувати». Зміна тренда відобразиться в фільтрах у вкладці Тренди, в потоці згадувань, в дайджесті, у віджеті кастомних дашбордів.\n\n![image](/static/images/announcements/editTrend/uk.gif)\n");

/***/ }),

/***/ "V4qf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Email reports are a summary of monitoring in your topic. The report helps you keep track of crucial changes to metrics and data distributions in your topic, as well as mentions that influenced them the most.\n\n**What's new in the email reports**\nDiscussion trends are available now in the form of such a table. When you click on a trend, you will be redirected to it in the mention stream.\n\n![email_reports](/static/images/announcements/email_reports/en_trends.png)\n\n**Keywords** of discussions with sentiment and number of mentions. When you click on a word, you will be redirected to the mention stream filtered by that word.\n![email_reports](/static/images/announcements/email_reports/en_keywords.png)\n\n**Are you not getting reports yet? Let's fix it right now:**\n1. Open \"Notifications\" tab\n2. Activate email reports by clicking the toggles switch on the right.\n![email_reports](/static/images/announcements/email_reports/en_toggle.png)\n\n");

/***/ }),

/***/ "DyN2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Email отчеты** – это сводка по мониторингу вашей темы. Отчет помогает быть в курсе ключевых изменений метрик и распределений данных в вашей теме, а также содержит упоминания, которые больше всего повлияли на них.\n\nЧто нового Email отчетах:\n**Тренды обсуждений** теперь можно будет изучить в виде вот такой таблицы. При нажатии на тренд, вы перейдете в поток упоминаний, отфильтрованный по этому тренду.\n![email_reports](/static/images/announcements/email_reports/ru_trends.png)\n\n**Ключевые слова** обсуждений с тональностью и количеством упоминаний. При нажатии на слово, вы перейдете в поток упоминаний, отфильтрованный по этому слову.\n![email_reports](/static/images/announcements/email_reports/ru_keywords.png)\n\n**Еще не получаете отчеты? Давайте исправим это прямо сейчас:** \n1. Перейдите в \"Уведомления\"\n2. Включите отправку нужных вам отчетов, нажав на переключатели справа.\n![email_reports](/static/images/announcements/email_reports/ru_toggle.png)");

/***/ }),

/***/ "Gx/Q":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Email звіти** – це збір даних по моніторингу вашої теми. Звіт допоможе вам бути у курсі ключових змін метрик та росподілень у вашій темі, а також про згадування які найбільше вплинули на них.\n\n\nЩо нового Email звітах:\n**Тренды обговорень** тепер можна буде дослідити у вигляді ось такої таблиці. При кліку на тренд, ви перейдете у потік згадувань, відфільтрований по цьому тренду.\n![email_reports](/static/images/announcements/email_reports/uk_trends.png)\n\n**Ключові слова** обговорень з тональністю і кількістю згадок. При кліку на слово, ви перейдете у потік згадувань, відфільтрованим по цьому слову.\n![email_reports](/static/images/announcements/email_reports/uk_keywords.png)\n\n**Досі не отримуєте звіти? Давайте виправимо це прямо зараз:**\n1. Перейдіть у вкладку \"Згадування\"\n2. Увімкніть відправку потрібних вам звітів, натиснувши на перемикачі праворуч.\n![email_reports](/static/images/announcements/email_reports/uk_toggle.png)");

/***/ }),

/***/ "K/fS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("*So highly requested feature — exclude filters, is already here!* \n\nYou must have come across situations where you had to filter the data by all parameters except one. Now you can easily do this with the all-new exclude filters.\n\n**To exclude the unnecessary parameter:**  \n1. Hover over the filter you want to exclude.  \n2. Click on exclude button that will appear in front of the filter name  \n3. Done! Now the mentions with this filter will be hidden from the mention stream!\n\nFor example, in this way you can exclude commercial mentions (autocategory “Commerce”), references from the official pages of the brand, references with a specific tag and much more.\n\n![Announcements!](/static/images/announcements/exclude_filters/en.gif)\n");

/***/ }),

/***/ "lrAa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("*Долгожданные исключающие фильтры уже тут!* \n\nВы наверняка сталкивались с ситуациями, когда вам нужно было отфильтровать данные по всем параметрам, кроме одного. Теперь вы можете с легкостью это делать благодаря новым исключающим фильтрами.\n\n**Для того, чтобы исключить ненужный параметр:**  \n1. Наведите мышкой на фильтр, который вы хотите исключить  \n2. Перед названием появится кнопка для исключения, нажмите на нее  \n3. Готово! Теперь упоминания с этим фильтром будут скрыты из потока!\n\nНапример, таким образом вы можете исключить упоминания коммерческого характера (автокатегория “Коммерция“), упоминания с официальных страниц бренда, упоминания с определенным тегом и многое другое.\n\n![Announcements!](/static/images/announcements/exclude_filters/ru.gif)\n");

/***/ }),

/***/ "J2pS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("*Довгоочікувані фільтри виключення вже тут!*\n\nВи напевно стикалися з ситуаціями, коли вам потрібно було відфільтрувати дані за всіма параметрами, крім одного. Тепер ви можете з легкістю це робити завдяки новим фільтрам виключення.\n\n**Для того, щоб виключити непотрібний параметр:**  \n1. Наведіть мишкою на фільтр, який ви хочете виключити  \n2. Перед назвою з’явиться кнопка для виключення, натисніть на неї  \n3. Готово! Тепер згадування з цим фільтром будуть приховані з потоку!\n\nНаприклад, таким чином ви можете виключити згадування комерційного характеру (автокатегорія “Комерція“), згадування офіційних сторінок бренду, згадування з певним тегом і багато іншого.\n\n![Announcements!](/static/images/announcements/exclude_filters/uk.gif)\n");

/***/ }),

/***/ "CeZJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’ve prepared a list of shortcuts that will take you to some of the best insights just in a few clicks. \n\nBe aware of growing crises, hot discussions, and trending content related to your topic.\n\n![Explore!](/static/images/announcements/explore/en.gif)\n\nIf you're ready to dive deeper into consumer insights, try to analyze the moments of consumption or the interests of the audience, as well as find out what they see as strengths and weaknesses.\n\nEach card will navigate you to the right place in the system with pre-configured filters and sorting to show data in the most convenient way.\n\n☝️ Important details:\n\n- some features are only available with a corresponding add-on. To learn more about the features and possibilities of your pricing plan, contact us at [support@youscan.io](mailto:support@youscan.io)\n");

/***/ }),

/***/ "V4P9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми підготували список посилань, які допоможуть знайти інсайти швидше.\n\nБудьте в курсі зростаючих криз, гарячих дискусій і останіх трендів, пов’язаних з вашою темою.\n\n![Explore!](/static/images/announcements/explore/uk.gif)\n\nЯкщо ви готові глибше зануритися в споживацькі інсайти, спробуйте проаналізувати моменти споживання чи інтереси аудиторії, а також з’ясувати, які вони бачать сильні та слабкі сторони.\n\nКожна картка спрямує вас у потрібне місце в системі з попередньо налаштованими фільтрами і сортуванням для відображення даних у найзручніший спосіб.\n\n☝️ Важливі деталі:\n\n- деякі функції доступні лише з відповідним адд-оном. Щоб дізнатися більше про функції та можливості тарифного плану, напишіть нам на [support@youscan.io](mailto:support@youscan.io)\n");

/***/ }),

/***/ "NCqx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can collect reviews from [Facebook pages you’ve authorised in YouScan](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan#how-to-authorize-an-account-)! This allows you to monitor and analyse user reviews and recommendations about your brands.\n\nTo collect reviews:\n\n1. Go to the topic in which you want to collect reviews;\n2. Go to \"Settings,\" open the \"Channels\" section and click the \"Add channel\" button;\n3. Paste the link to the page from which you want to collect reviews and press Enter;\n4. Add reviews by pressing the \"Plus\" button.\n\n![image](/static/images/announcements/facebookOwnPageReviews/en.gif)\n\n🎉 Done, new reviews published on this page will be saved to your topic.\n\n☝️ We won’t collect:\n\n- comments to reviews;\n- information about the author.\n- we collect, but don’t renew engagement to reviews.");

/***/ }),

/***/ "w7Tt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("¡A partir de ahora, puedes recopilar reseñas de [las páginas de Facebook autorizadas en YouScan](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan#how-to-authorize-an-account-)! Esto te permitirá monitorear y analizar las opiniones y recomendaciones de los usuarios sobre tus marcas.\n\nPara recopilar reseñas:\n\n1. Ve al tema en el cual quieres recopilar las reseñas;\n2. Ve a \"Configuración\", abre la sección \"Canales\" y haz clic en el botón \"Agregar canal\";\n3. Pega el enlace a la página desde la que quieres recopilar reseñas y presiona Entrar;\n4. Agrega reseñas presionando el botón \"Más\".\n\n![image](/static/images/announcements/facebookOwnPageReviews/es.gif)\n\n🎉 Listo, las nuevas reseñas publicadas en esta página se guardarán en tu tema.\n\n☝️ No recopilaremos:\n\n- comentarios a las reseñas;\n- información sobre el autor;\n- rastrearemos, pero no actualizaremos el engagement de las reseñas.");

/***/ }),

/***/ "ivD9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер, ви можете збирати відгуки зі [сторінок Facebook, які ви авторизували в YouScan](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan#how-to-authorize-an-account-)! Це дозволить вам моніторити ти аналізувати відгуки та рекомендації, що їх лишають користувачі ваших брендів.\n\nЩоб збирати відгуки:\n\n1. Зайдіть в тему, в якій хочете збирати відгуки;\n2. Перейдіть в «Налаштування», в розділ «Канали» і натисніть кнопку «Додати канал»;\n3. Вставте посилання на сторінку, з якої хочете збирати відгуки і натисніть Enter;\n4. Натисніть кнопку «Плюс», щоб додати збір відгуків.\n\n![image](/static/images/announcements/facebookOwnPageReviews/uk.gif)\n\n🎉 Готово, тепер нові відгуки, опубліковані на цій сторінці, будуть збиратися в вашу тему.\n\n☝️ Ми не збираємо:\n\n- коментарі до відгуків;\n- інформацію про автора;\n- збираємо, але не оновлюємо залучення до відгуків.");

/***/ }),

/***/ "J5k7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Moving forward, we'll be gathering reels and their associated comments from the [Facebook channels](https://help.youscan.io/en/articles/5563235-collection-method-by-channels) added to your topics. No action is required on your part. We’ve started this collection automatically.\n\n💡 To filter out reels head to Filters —> Sources —> and select Facebook Reels.\n\n![image](/static/images/announcements/facebookReels/en.gif)");

/***/ }),

/***/ "uHVE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, recopilaremos reels y sus comentarios a través de [los canales de Facebook](https://help.youscan.io/es/articles/5563235-metodo-de-recogida-por-canales) agregados a tus tópicos. No es necesario que realices ninguna acción adicional. Hemos iniciado esta recopilación automáticamente.\n\n💡 Para filtrar los reels, ve a Filtros —> Fuentes —> y selecciona Facebook Reels.\n\n![image](/static/images/announcements/facebookReels/es.gif)");

/***/ }),

/***/ "bAhR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ми будемо збирати рілc та коментарі до них з [каналів Facebook](https://help.youscan.io/uk/articles/5563235-%D1%81%D0%BF%D0%BE%D1%81%D1%96%D0%B1-%D0%B7%D0%B1%D0%BE%D1%80%D1%83-%D0%B7%D0%B3%D0%B0%D0%B4%D0%BE%D0%BA-%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB%D0%B0%D0%BC%D0%B8), які ви додали в теми. Жодних дій з вашого боку не потрібно, адже цей збір розпочався автоматично.\n\n💡 Щоб відфільтрувати рілз, відкрийте Фільтри —> Джерела —> оберіть Facebook Reels.\n\n![image](/static/images/announcements/facebookReels/uk.gif)");

/***/ }),

/***/ "pt/9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("To enable you to find and analyze relevant mentions promptly, our system automatically labels them with an Auto-category and a Subject, and for subscribers of the Insight plan and up it also recognizes objects, scenes and actions in the images.\n\nNow you can change those labels when you notice that they are not accurate. Our AI-assistant Aina will take these changes into account when retraining, and will gradually perform better on your topic! 🎉\n\n**To edit labels of a mention:**\n1. Click on the \"Edit labels\" icon or on any label of Auto-category or Subject\n2. Select the proper Auto-categories, Subjects and Visual Insights labels, and click \"Apply\"\n\n![Announcements!](/static/images/announcements/feedback-loop/en_action.gif)\n\nYou can also edit labels of several mentions at once. Just select several mentions and click on \"Change Layout\" in the menu.\n\n![Announcements!](/static/images/announcements/feedback-loop/en_group_action.gif)\n\nAll changes you make with labels will be reflected in Analytics and Reports.\n");

/***/ }),

/***/ "0UFs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Чтобы вы могли быстро находить и анализировать релевантные упоминания, наша система автоматически присваивает им автокатегории и тематики, а в аккаунтах начиная с пакета Insight также распознает объекты, сцены и действия на изображениях.\n\nТеперь вы можете вручную менять автокатегории, тематики и маркеры изображения, если заметили ошибку или неточность в автоматической разметке. Наш AI-ассистент Aina учтет эти правки при переобучении, и качество разметки для вашей темы будет улучшаться!  🎉 \n\n**Чтобы исправить разметку упоминания:**\n1. Кликните на иконку «Изменить разметку» или на маркер автокатегории или тематики\n2. Проставьте необходимые автокатегории, тематики и маркеры изображений, и нажмите «Применить»\n\n![Announcements!](/static/images/announcements/feedback-loop/ru_action.gif)\n\nВы также можете поменять разметку сразу нескольких упоминаний. Для этого выберите необходимые упоминания и кликните на «Изменить разметку» в меню.\n\n![Announcements!](/static/images/announcements/feedback-loop/ru_group_action.gif)\n\nВсе изменения будут учтены в разделе Аналитика и выгрузках.\n");

/***/ }),

/***/ "hlS8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Для того, щоб ви могли швидко знаходити і аналізувати релевантні згадування, наша система автоматично присвоює їм автокатегорії і тематики, а в акаунтах починаючи з пакета Insight також розпізнає об'єкти, сцени та дії на зображеннях.\n\nТепер ви можете власноруч змінювати маркери автокатегорії, тематики і зображення, якщо помітили помилку чи неточність в автоматичній розмітці. Наш AI-асистент Aina врахує ці правки при перенавчанні, і якість розмітки для вашої теми буде покращуватися!  🎉\n\n**Щоб виправити розмітку у згадуванні:**\n1. Натисніть на іконку «Змінити розмітку», або на маркер автокатегорії або тематики\n2. Проставте необхідні автокатегоріі, тематики та маркери зображень і натисніть «Застосувати»\n\n![Announcements!](/static/images/announcements/feedback-loop/uk_action.gif)\n\nВи також можете змінити розмітку відразу у декількох згадуваннях. Для цього оберіть необхідні згадування і натисніть на «Змінити розмітку» в меню.\n\n![Announcements!](/static/images/announcements/feedback-loop/uk_group_action.gif)\n\nВсі зміни будуть враховані в розділі Аналітика та у звітах.\n");

/***/ }),

/***/ "qc0a":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You asked — we did it! From now on you can select the source to monitor and analyze in your topics with the help of the brand new filter “By source name”.\n\nThis means that:\n- You can select specific sources to narrow the search or exclude them to get rid of irrelevant mentions when creating the new topic; \n![image](/static/images/announcements/filterBySource/en.gif)\n- This filter can also be used for existing topics: just select or exclude necessary sources using the Filters tab in the topics settings.\n\n☝️ Important: \n- You can select any of 100+ sources from the filter “By name”. If your source is not on the list, contact us at [support@youscan.io](mailto:support@youscan.io);\n- You can pick either “By type” or “By name” source filter when creating the topic — using them simultaneously is impossible. ");

/***/ }),

/***/ "8OnP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вы просили — мы сделали! Теперь вы можете выбирать конкретные источники для мониторинга и анализа благодаря новому фильтру «По названию источника».\n\nЭто значит, что:\n- Уже на этапе создания темы вы можете выбирать источники для мониторинга, чтоб сузить поиск, или исключать их, чтоб избавиться от нерелевантных упоминаний;\n![image](/static/images/announcements/filterBySource/ru.gif)\n- Этот фильтр можно применить и для уже существующих тем: для этого исключите либо добавьте нужные источники в разделе Фильтры в настройке темы.\n\n☝️ Важные нюансы: \n- Вы можете выбирать любой из 100+ источников в фильтре «По названию». Если нужного вам нет в списке, напишите нам на [support@youscan.io](mailto:support@youscan.io);\n- На этапе создания темы вы можете выбирать фильтр либо по типу источника, либо по его названию — одновременно их применить нельзя.");

/***/ }),

/***/ "Ev/k":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви просили — ми зробили! Відтепер ви можете обирати конкретні джерела для моніторингу та аналізу завдяки новому фільтру «По назві джерела».\n\nЦе означає, що:\n- Вже на етапі створення теми ви можете обрати джерела для моніторингу, щоб звузити пошук, або виключити їх, щоб позбутися нерелевантних згадувань;\n![image](/static/images/announcements/filterBySource/uk.gif)\n- Цей фільтр можна застосувати і для існуючих тем, для цього виключте або додайте необхідні джерела в розділі Фільтри в налаштуваннях теми.\n\n☝️ Важливі нюанси: \n- Ви можете обирати будь-яке з 100+ джерел у фільтрі «За назвою». Якщо необхідне вам джерело у ньому відсутнє, напішить нам на [support@youscan.io](mailto:support@youscan.io);\n- На етапі створення теми ви можете обрати або фільтр по типу джерела, або по назві — одночасно застосувати їх обидва неможливо.");

/***/ }),

/***/ "vjBF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Customize your recurring reports with filters to receive only relevant information. For instance:\n\n- Request reports focused on mentions with negative sentiment to aid in crisis management\n- If your brand operates in different countries, filter by geolocation to receive separate reports for each local team\n- Create reports for different departments like PR and Marketing based on different sources, such as news and social networks\n\n![image](/static/images/announcements/filtersForRecurrentReports/en.gif)\n");

/***/ }),

/***/ "u9nb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Personalice sus informes periódicos con filtros para recibir sólo la información relevante. Por ejemplo:\n\n- Solicita informes centrados en menciones con sentimiento negativo para ayudar en la gestión de crisis.\n- Si su marca opera en diferentes países, filtre por geolocalización para recibir informes separados para cada equipo local\n- Cree informes para distintos departamentos, como Relaciones Públicas y Marketing, basados en distintas fuentes, como noticias y redes sociales\n\n![image](/static/images/announcements/filtersForRecurrentReports/es.gif)\n");

/***/ }),

/***/ "1NqG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Налаштуйте свої регулярні звіти за допомогою фільтрів, щоб отримувати лише релевантну інформацію. Наприклад:\n\n- Звіти, сфокусовані на згадках з негативною тональністю, щоб допомогти в управлінні кризовими ситуаціями\n- Якщо ваш бренд працює в різних країнах, фільтруйте за геолокацією, щоб отримувати окремі звіти для кожної локальної команди\n- Створюйте звіти для різних відділів, таких як PR та маркетинг, на основі різних джерел, таких як новини та соціальні мережі\n\n![image](/static/images/announcements/filtersForRecurrentReports/uk.gif)\n");

/***/ }),

/***/ "NfEf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We are constantly adding new features and improving YouScan. We decided that you should know about it and created a barnd-new section \"What's new in YouScan?\" Where we will publish all the important updates in the product.\n\nKeep up to date with all new products - from bug fixes and interface refinements, to new features and possibilities!\n\n![Announcements!](/static/images/announcements/first_announce/en.gif)\n");

/***/ }),

/***/ "sdss":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мы постоянно добавляем новые функции и улучшаем работу YouScan. Мы решили, что вы должны об этом знать и создали новый раздел \"Что нового в YouScan?\", где мы будем публиковать все важные изменения в продукте. \n\nОставайтесь в курсе всех новинок – от исправлений проблем и улучшений интерфейса, до новых функций и возможностей!\n\n![Announcements!](/static/images/announcements/first_announce/ru.gif)\n");

/***/ }),

/***/ "GYtf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми постійно додаємо нові функції і покращуємо роботу YouScan. Ми вирішили, що ви повинні про це знати і створили новий розділ \"Що нового в YouScan?\", де ми будемо публікувати всі важливі зміни в продукті.\n\nЗалишайтеся в курсі всіх новинок - від виправлень проблем і поліпшень інтерфейсу, до нових функцій і можливостей!\n\n![Announcements!](/static/images/announcements/first_announce/uk.gif)\n");

/***/ }),

/***/ "BBzT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Starting October 8th YouScan collects reviews for apps from Google Play by keywords! If there is a keyword from your\nsearch query in the name of the app or the text of the review, then such a mention will be automatically collected to\nyour topic.\n\nThis means that:\n\n- You will not miss mentions of your monitoring object under random apps;  \n  ![image](/static/images/announcements/googlePlayByKeywordsAnnouncement/en.png)\n- You can use Google Play reviews for extensive research, for example, to find out what people say about banking or taxi\n  services.\n\n☝️ Important:\n\n- We collect only the reviews under apps, and also certain replies partially;\n- Historical data is available starting from 13.08.2021.");

/***/ }),

/***/ "86bX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("С 08.10 YouScan мониторит отзывы на приложения в Google Play по ключевым словам! Если слово из вашего поискового запроса\nесть в названии приложения или тексте отзыва, такое упоминание автоматически попадет в ваши темы.\n\nЭто значит, что:\n\n- Вы не пропустите отзывы о своем объекте мониторинга под другими приложениями;  \n  ![image](/static/images/announcements/googlePlayByKeywordsAnnouncement/ru.png)\n- Данные из Google Play теперь можно использовать для широких исследований.  \n  Например, узнать, что пишут люди о сервисе в банках или службах такси.\n\n☝️ Важные нюансы:\n\n- Собираем только отзывы под приложениями, а также частично ответы;\n- Исторические данные доступны с 13.08.2021.");

/***/ }),

/***/ "tmL2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("З 08.10 YouScan моніторить відгуки на застосунки в Google Play по ключових словах! Якщо слово з вашого пошукового запиту\nє в назві застосунку або тексті відгуку, таке згадування автоматично потрапить в ваші теми.\n\nЦе означає, що:\n\n- Ви не пропустите відгуки про свій об’єкт моніторингу під іншими застосунками;  \n  ![image](/static/images/announcements/googlePlayByKeywordsAnnouncement/uk.png)\n- Дані з Google Play тепер можна використовувати для широких досліджень.  \n  Наприклад, дізнатись, що пишуть люди про сервіс в банках або сервісах таксі.\n\n☝️ Важливі нюанси:\n\n- Збираємо тільки відгуки під застосунками, а також частково відповіді;\n- Історичні дані доступні с 13.08.2021.");

/***/ }),

/***/ "g5HK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Reviews for shops and products on [hotline.ua](https://hotline.ua) are now available in YouScan.\n\n\n![image](/static/images/announcements/hotline/en.png)\n");

/***/ }),

/***/ "8uDF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відгуки на магазини і товари на [hotline.ua](https://hotline.ua) тепер збираються в ваші теми в YouScan.\n\n![image](/static/images/announcements/hotline/uk.png)");

/***/ }),

/***/ "g2tT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We are actively working on the development of our Visual Insights technology and have now taught our algorithm to detect adult content in the pictures.\n\nHas someone tagged your brand name? Has your logo accidentally got in the shot? You will no longer have to blush when it happens — we will send such mentions to spam. This will happen automatically, your participation is not required.\n\n☝️ The improved spam detector is available for clients with Insight plan or higher.");

/***/ }),

/***/ "K63g":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мы активно работаем над развитием нашей технологии Visual Insights и теперь научили наш алгоритм различать контент для взрослых на картинках.\n\nКто-то поставил название вашего бренда в теги? Ваш логотип случайно попал в кадр? Больше вам не придется краснеть, когда такое случится — мы будем сразу отправлять такие упоминания в спам. Это будет происходить автоматически, ваше участие не потребуется.\n\n☝️ Улучшенный спам-детектор доступен для тарифного плана Insight или выше.");

/***/ }),

/***/ "LW+G":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми активно працюємо над розвитком нашої технології Visual insights і тепер навчили наш алгоритм розрізняти контент для дорослих на картинках.\n\nХтось поставив назву вашого бренду в теги? Ваш логотип випадково потрапив в кадр? Більше вам не доведеться червоніти, коли таке трапиться — ми одразу відправлятимемо такі згадування в спам. Це відбуватиметься автоматично, ваша участь не потрібна.\n\n☝️ Покращений спам-детектор доступний для тарифу Insight або вище.");

/***/ }),

/***/ "na62":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We've introduced new logical operators to help you gather the most relevant visual data for your analysis. Now you can create social listening queries to find images based on specific scenes, objects, logos, activities, colors, or a combination of these.\n\nYou can find more interesting details in the [article at the link](https://youscan.io/blog/introducing-image-search-queries/). Want to see it in action?\n\nContact your personal manager or write to us at [support@youscan.io](mailto:support@youscan.io), and we’ll show you how these new features can boost your visual analysis!\n\n![image](/static/images/announcements/imageSearchQueries/en.png)\n");

/***/ }),

/***/ "awjw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hemos introducido nuevos operadores lógicos para ayudarte a recopilar los datos visuales más relevantes para tu análisis.\n\nAhora puedes crear consultas de escucha social para encontrar imágenes basadas en escenas específicas, objetos, logotipos, actividades, colores o una combinación de estos.\n\nPuedes encontrar más detalles interesantes en el [artículo en el enlace](https://youscan.io/blog/introducing-image-search-queries/).\n\n¿Quieres verlo en acción? Contacta a tu gerente personal o escríbenos a [support@youscan.io](mailto:support@youscan.io), y te mostraremos cómo estas nuevas funciones pueden mejorar tu análisis visual.\n\n![image](/static/images/announcements/imageSearchQueries/es.png)\n");

/***/ }),

/***/ "Al6E":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляємо нові логічні оператори, щоб допоможуть вам зібрати найрелевантніші візуальні дані для вашого аналізу.\n\nТепер ви можете створювати пошукові запити, щоб знаходити зображення на основі конкретних сцен, об’єктів, логотипів, активностей, кольорів або їх комбінацій.\n\nБільше цікавого можна дізнатись у [статті за посиланням](https://youscan.io/blog/introducing-image-search-queries/).\n\nХочете випробувати нові можливості? Зверніться до вашого менеджера або напишіть нам на [support@youscan.io](mailto:support@youscan.io), і ми покажемо, як ці нові функції можуть покращити ваш візуальний аналіз!\n\n![image](/static/images/announcements/imageSearchQueries/uk.png)\n");

/***/ }),

/***/ "bEg4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Our fantastic data science team is thrilled to announce the brand-new sentiment detection model, now available in over 50 languages!\n\n🇮🇱 🇲🇾 🇰🇷 🇯🇵 🇹🇷 🇹🇭 🇺🇿 🇬🇪 🇻🇳 🇮🇳 🇳🇱 🇬🇷 🇹🇯 🇷🇴 🇦🇲 🇰🇬 🇩🇰 🇫🇮 🇲🇲 🇮🇳 🇲🇳 🇧🇬 🇹🇲 🇲🇰 🇭🇷  🇦🇿 🇫🇷 🇩🇪 🇮🇹 🇵🇱 🇵🇹 🇸🇪 🇸🇦 🇮🇳 🇮🇩 🇰🇿 🇱🇻 🇮🇷 🇸🇮 🇷🇸 🇮🇳 🇵🇰 🇨🇳 🇪🇸 🇺🇦 🇺🇸\n\nThis means that:\n\n- whether your customers all around the globe are over the moon or feeling a little down, our advanced sentiment detection technology now easily identifies their emotions;\n- you can quickly take steps to address issues and boost your overall customer satisfaction.\n\n📚 Learn more about working with mentions sentiment in our [Knowledge base](https://help.youscan.io/en/articles/3839178-working-with-sentiment-in-youscan-s-analytics)\n");

/***/ }),

/***/ "iehT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Nuestro fantástico equipo de ciencia de datos está encantado de anunciar el nuevo modelo de detección de sentimientos, ¡ahora disponible en más de 50 idiomas!\n\n🇮🇱 🇲🇾 🇰🇷 🇯🇵 🇹🇷 🇹🇭 🇺🇿 🇬🇪 🇻🇳 🇮🇳 🇳🇱 🇬🇷 🇹🇯 🇷🇴 🇦🇲 🇰🇬 🇩🇰 🇫🇮 🇲🇲 🇮🇳 🇲🇳 🇧🇬 🇹🇲 🇲🇰 🇭🇷  🇦🇿 🇫🇷 🇩🇪 🇮🇹 🇵🇱 🇵🇹 🇸🇪 🇸🇦 🇮🇳 🇮🇩 🇰🇿 🇱🇻 🇮🇷 🇸🇮 🇷🇸 🇮🇳 🇵🇰 🇨🇳 🇪🇸 🇺🇦 🇺🇸\n\nEsto significa que:\n\n- ya sea que tus clientes de todo el mundo estén encantados o se sientan un poco deprimidos, nuestra avanzada tecnología de detección de sentimientos ahora identifica fácilmente sus emociones;\n- puedes tomar medidas rápidamente para abordar los problemas y aumentar la satisfacción general de tus clientes.\n\n📚  Lee más sobre cómo trabajar con el sentimiento de las menciones en nuestra [Base de conocimiento](https://help.youscan.io/en/articles/3839178-working-with-sentiment-in-youscan-s-analytics)\n");

/***/ }),

/***/ "uiVO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Наша неймовірна data science команда з гордістю представляє нову модель визначення тональності згадувань для понад 50 мов:\n\n🇮🇱 🇲🇾 🇰🇷 🇯🇵 🇹🇷 🇹🇭 🇺🇿 🇬🇪 🇻🇳 🇮🇳 🇳🇱 🇬🇷 🇹🇯 🇷🇴 🇦🇲 🇰🇬 🇩🇰 🇫🇮 🇲🇲 🇮🇳 🇲🇳 🇧🇬 🇹🇲 🇲🇰 🇭🇷  🇦🇿 🇫🇷 🇩🇪 🇮🇹 🇵🇱 🇵🇹 🇸🇪 🇸🇦 🇮🇳 🇮🇩 🇰🇿 🇱🇻 🇮🇷 🇸🇮 🇷🇸 🇮🇳 🇵🇰 🇨🇳 🇪🇸 🇺🇦 🇺🇸\n\nЦе означає, що:\n\n- незалежно від того, чи ваші клієнти на сьомому небі від щастя, чи трохи розчаровані, наша найсучасніша технологія визначення тональності легко визначить їхні настрої;\n- ви зможете швидко реагувати на кризи та зробити правильні кроки для підвищення рівня лояльності клієнтів\n\n📚 Читайте більше про роботу з тональністю згадувань в нашій [Базі Знань](https://help.youscan.io/en/articles/3839178-working-with-sentiment-in-youscan-s-analytics)\n");

/***/ }),

/***/ "R7lX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Improved Visual Insights analytics allows you to deeply analyze who, when and how interacts with your brand’s product.\n\nWhich means that:\n- Now you can see the distribution of top image tags and examples of most popular images on the same screen;\n- We've extended traditional metrics with statistics by unique image. It helps you find typical moments of consumption and deep dive into their variety;\n![Improved VI!](/static/images/announcements/improvedVI/en.gif)\n- The new slider allows you to filter out the most obvious bubbles and focus on real insights;\n- We've also improved the load speed of analytics.\n\n☝️ Important:\n- Visual Insights feature is included to Innovate pricing plan, and also is available as an add-on in Listen and Analyze pricing plans;\n- To learn more about the feature and pricing plans contact us at support@youscan.io \n");

/***/ }),

/***/ "l6ba":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("С помощью улучшенной аналитики функции Visual Insights теперь можно еще быстрее и глубже анализировать, кто, где и как взаимодействует с продуктом вашего бренда.\n\nЭто значит, что:\n- Теперь вы видите распределение топ тегов по изображениям и примеры самых популярных изображений на одном экране;\n- Мы дополнили традиционные метрики статистикой уникальных изображений. Благодаря ей вы сможете легче находить типичные случаи потребления и глубже изучать их спектр;\n![Improved VI!](/static/images/announcements/improvedVI/ru.gif)\n- Новый слайдер позволит отфильтровать самые очевидные визуальные теги и сосредоточиться на реальных инсайтах;\n- Мы существенно сократили время загрузки аналитики.\n\n☝️ Важный нюанс:\n- Функция Visual Insights включена в тарифный план Innovate, а также доступна в качестве адд-она на тарифных планах Listen и Analyse.\n- Чтобы узнать больше о функциях и возможностях тарифных планов, напишите нам на support@youscan.io \n");

/***/ }),

/***/ "X58T":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Завдяки покращеній аналітиці функціЇ Visual Insights тепер можна ще швидше та глибже аналізувати, хто, де і як взаємодіє з продуктом вашого бренду.\n\nЦе означає, що:\n- Тепер ви бачите розподіл топ тегів по зображенням та приклади найпопулярніших зображень на одному екрані;\n- Ми доповнили традиційну метрику статистикою унікальних зображень. Завдяки їй ви зможете легше знаходити типові випадки споживання та глибше вивчати їх спектр;\n![Improved VI!](/static/images/announcements/improvedVI/uk.gif)\n- Новий слайдер дозволяє відфільтрувати найочевидніші бабли та сфокусуватися на реальних інсайтах;\n- Ми суттєво скоротили час завантаження аналітики.\n\n☝️ Важливі нюанси:\n- Функція Visual Insights включена в таріфний план Innovate, а також доступна в якості адд-она на тарифних планах Listen та Analyze.\n- Щоб дізнатися більше про функцію та можливостях тарифного плану, напишіть нам на support@youscan.io \n");

/***/ }),

/***/ "Zuz4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("No more intricate work on the widgets for your custom dashboards - setting them becomes as easy as it gets! To create a widget you should:\n\n- Go to the dashboard and click on “Create widget”;\n- Choose the visualization and necessary topic;\n\n![image](/static/images/announcements/improvedWidgetCreationFlow/en1.gif)\n\n- Continue with picking the parameters;\n- Apply filters (if needed);\n- Change the default date range (if needed);\n\n![image](/static/images/announcements/improvedWidgetCreationFlow/en2.gif)\n\n- Finish creating your widget by giving it a title\n\n☝🏻 Custom dashboards are one of the most prominent instruments in YouScan! Don’t hesitate to use its potential to the maximum. Learn more about [the possibilities of custom dashboards](https://help.youscan.io/en/articles/4855217-custom-dashboards) and [widgets types](https://help.youscan.io/en/articles/4889946-widget-types-in-custom-dashboards) in our Knowledge base\n");

/***/ }),

/***/ "dfuH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Більше не потрібно бути справжнім експертом, щоб налаштувати віджет в вашому кастомізованому дашборді - тепер це інтуітивно просто! Щоб створити віджет:\n\n- Зайдіть в кастомізований дашборд та натисніть “Створити віджет”;\n- Оберіть візуалізацію та необхідну тему;\n\n![image](/static/images/announcements/improvedWidgetCreationFlow/uk1.gif)\n\n- Продовжуйте обирати метрики;\n- Застосуйте фільтри (якщо потрібно);\n- Змініть дефолтний період (якщо потрібно);\n\n![image](/static/images/announcements/improvedWidgetCreationFlow/uk1.gif)\n\n- Дайте віджету назву та натисніть “Створити віджет”\n\n☝🏻 Кастомізовані дашборди - один з найяскравіших інструментів в арсеналі YouScan! Скористайтеся їй повною потужністю. Дізнайтеся більше про [можливості костомізованих дашбордів](https://help.youscan.io/ru/articles/4855217-%D0%BA%D0%B0%D1%81%D1%82%D0%BE%D0%BC%D0%B8%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5-%D0%B4%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B) та [типи віджетів](https://help.youscan.io/ru/articles/4855217-%D0%BA%D0%B0%D1%81%D1%82%D0%BE%D0%BC%D0%B8%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5-%D0%B4%D0%B0%D1%88%D0%B1%D0%BE%D1%80%D0%B4%D1%8B) в нашій Базі Знань.\n");

/***/ }),

/***/ "naMM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Introducing our latest feature: enhanced author metrics and influencer marketing tools. With a simple click, you can now choose between nano, micro, or macro influencers.\n\n![Influence Score](/static/images/announcements/influenceScore/en.png)\n\nOur author's table has also been upgraded with two powerful metrics: **Influence Score** and **Engagement Rate**. These metrics help you identify the most influential voices in your industry and provide insights into an author's ability to engage their audience.\n\nWith these tools, you can make data-driven decisions when selecting influencers for your campaigns. Explore the enhanced author metrics with the [Audience Insights add-on](https://help.youscan.io/en/articles/6211547-audience-insights) and take your influencer marketing game to the next level!\n");

/***/ }),

/***/ "JNoF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Presentamos nuestra última función: métricas de autor y herramientas de marketing de influencers mejoradas. Con un simple clic, ahora puedes elegir entre nano, micro o macro influencers.\n\n![Influence Score](static/images/announcements/influenceScore/uk.png)\n\nNuestra tabla de autores también se ha actualizado con dos potentes métricas: Influence Score y Engagement Rate. Estas métricas te ayudan a identificar las voces más influyentes de tu sector y te ofrecen información sobre la capacidad de un autor para atraer a su audiencia.\n\nCon estas herramientas, puedes tomar decisiones basadas en datos a la hora de seleccionar influencers para tus campañas. Explora las métricas de autor mejoradas con el complemento [Análisis de audiencias](https://help.youscan.io/en/articles/6211547-audience-insights) y lleva tu juego de marketing de influencers al siguiente nivel.\n");

/***/ }),

/***/ "DaOz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляємо вам нашу нову функцію: покращені авторські метрики та маркетингові інструменти для інфлюенсерів. Простим кліком ви можете обирати між нано-, мікро- та макроінфлюенсерами.\n\n![Influence Score](static/images/announcements/influenceScore/uk.png)\n\nНаша таблиця авторів також поповнилася двома потужними метриками: Коефіцієнт впливовості та Коефіцієнт залучення. Ці показники допоможуть вам визначити найвпливовіші голоси у вашій галузі та нададуть уявлення про здатність автора залучати свою аудиторію.\n\nЗа допомогою цих інструментів ви можете приймати рішення на основі даних, обираючи інфлюенсерів для своїх кампаній. Досліджуйте розширені авторські метрики за допомогою аддону [Аудиторні Інсайти](https://help.youscan.io/en/articles/6211547-audience-insights) і виведіть свій інфлюенсер-маркетинг на новий рівень!\n");

/***/ }),

/***/ "5tvo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Say hello to YouScan Insights Copilot — the world's first social media listening assistant powered by ChatGPT!\n\nInsights Copilot helps you get insights from millions of online conversations on social media platforms at lightning speed.\nJust imagine being able to do a SWOT analysis, summarize competitor reviews, or explain why there's been a sudden rise in negative mentions with just a few clicks. That's exactly what Insights Copilot can do for you within a minute!\n\n![insights_copilot_gif_en](/static/images/announcements/insightsCopilot/en.gif)\n\nTo save even more time on your research, we have prepared various filters such as *Potential crisis*, *Pain points*, *SWOT analysis*, and others. You can use these filters to create summaries, or choose from suggested questions to gain insights. And if you have a specific question in mind, go ahead and write it down — Insights Copilot will provide you with the answers you need in a flash.\n\n📚 Learn more about the capabilities of Insights Copilot in our [Knowledge Base](https://help.youscan.io/en/articles/7670114-insights-copilot).\n");

/***/ }),

/***/ "DkJ1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Insights Copilot te ayudará a obtener información de millones de conversaciones en línea en plataformas de redes sociales a la velocidad del rayo.\nImagínate poder hacer un análisis DAFO, resumir los comentarios de la competencia o explicar por qué ha tenido lugar un aumento repentino en menciones negativas con sólo un par de clicks. ¡Eso es exactamente lo que Insights Copilot puede hacer por ti en un minuto!\n\n![insights_copilot_gif_es](/static/images/announcements/insightsCopilot/es.gif)\n\nPara ahorrar aún más tiempo en tu investigación, hemos preparado para ti varios filtros tales como *Crisis potencial*, *Puntos de dolor*, *Análisis DAFO* *etc*. Puedes utilizar estos filtros para resumir los datos o elegir algunas de las preguntas sugeridas para sacar insights. Y si tienes una idea en mente para hacer pregunta a ChatGPT, adelante, escríbela — Insights Copilot te proporcionará las respuestas que necesites en un instante.\n\n📚 Más información sobre las funciones de Insights Copilot la puedes encontrar en nuestra [Base de conocimientos](https://help.youscan.io/en/articles/7670114-insights-copilot).\n");

/***/ }),

/***/ "2zN0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Зустрічайте YouScan Insights Copilot — першого в світі помічника з моніторингу соціальних медіа, що працює на базі ChatGPT!\n\nInsights Copilot допомагає блискавично швидко отримувати інсайти з мільйонів згадок у соціальних медіа.\n\nУявіть лише, що ви можете провести аналіз SWOT, підсумувати відгуки конкурентів або пояснити, чому раптово збільшилося число негативних згадок у кілька кліків. З цими задачами Insights Copilot допоможе впродовж хвилини.\n\n![insights_copilot_gif_uk](/static/images/announcements/insightsCopilot/uk.gif)\n\nЩоб заощадити ще більше часу на дослідження, ми підготували різні фільтри, такі як *Потенційна криза*, *Больові точки*, *SWOT-аналіз* та інші. Ви можете використовувати їх, щоб підсумувати дані або вибирати із запропонованих запитань, щоб отримати інсайти. А якщо у вас є конкретне запитання, просто запишіть його — Insights Copilot миттєво надасть вам відповідь.\n\n📚 Більше про Insights Copilot дізнавайтесь у нашій [Базі Знань](https://help.youscan.io/en/articles/7670114-insights-copilot).\n");

/***/ }),

/***/ "iMhI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’re thrilled to announce some changing updates to Insights Copilot, designed to enhance your user experience. Here’s a quick rundown:\n\n**Effortless Example Handling:** Explore examples seamlessly with our new pop-up feature, ensuring your filters and context stay intact.\n\n![insightsCopilot1_5_gif1](/static/images/announcements/insightsCopilot1_5/en1.gif)\n\n**Context Clarity:** Enjoy a clearer view of your question’s context with enhanced visualizations. See filters, periods the number of mentions at a glance, simply clicking on «Show additional info».\n\n![insightsCopilot1_5_gif2](/static/images/announcements/insightsCopilot1_5/en2.gif)\n\n**Change of Mind Assurance:** Asked a question but realized that you hadn’t phrased it quite right? No problem! Cancel your request if you change your mind and fine-tune your parameters hassle-free.\n\n![insightsCopilot1_5_png1](/static/images/announcements/insightsCopilot1_5/en1.png)\n\n**Filter Freedom:** Choose to keep your current filters or let us grab them from your question text.\n\n![insightsCopilot1_5_png2](/static/images/announcements/insightsCopilot1_5/en2.png)\n\nCurious? Learn more [about Insights Copilot here](https://help.youscan.io/en/articles/7670114-insights-copilot)!\n");

/***/ }),

/***/ "ypQJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Estamos contentes de anunciar algunas actualizaciones importantes en Insights Copilot, diseñadas para mejorar tu experiencia como usuario. Aquí tienes un resumen rápido:\n\n**Manejo Sencillo de Ejemplos:** Explora ejemplos sin problemas con nuestra nueva función emergente, asegurando que tus filtros y contexto se mantengan intactos.\n\n![insightsCopilot1_5_gif1](/static/images/announcements/insightsCopilot1_5/en1.gif)\n\n**Claridad de Contexto:** Tenga una vista más clara de lo que pregunta con gráficos mejorados. Observa los filtros, los períodos y el número de menciones de un vistazo, simplemente haciendo clic en \"Mostrar información adicional\".\n\n![insightsCopilot1_5_gif2](/static/images/announcements/insightsCopilot1_5/es1.gif)\n\n**Seguridad para Cambiar de Opinión:** ¿Hiciste una pregunta pero te diste cuenta de que no la formulaste correctamente? ¡No hay problema! Cancela tu solicitud si cambias de opinión y ajusta tus parámetros sin complicaciones.\n\n![insightsCopilot1_5_png1](/static/images/announcements/insightsCopilot1_5/es1.png)\n\n**Flexibilidad de Filtros:** Opta por conservar tus filtros actuales o deja que los extraigamos del texto de tu pregunta\n\n![insightsCopilot1_5_png2](/static/images/announcements/insightsCopilot1_5/es2.png)\n\n¿Te intriga? [Descubre más sobre Insights Copilot aquí](https://help.youscan.io/es/articles/7670114-copiloto-insights)\n");

/***/ }),

/***/ "TqgB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми раді повідомити про оновлення в Insights Copilot, які призначені покращити ваш досвід користування. Ось короткий огляд:\n\n**Легка робота з прикладами:** Досліджуйте приклади завдяки нашій новій функції спливаючого вікна, яка зберігає недоторканними ваші фільтри та контекст.\n\n![insightsCopilot1_5_gif1](/static/images/announcements/insightsCopilot1_5/uk1.gif)\n\n**Ясність контексту:** Отримайте чіткий огляд контексту свого питання завдяки поліпшеній візуалізації. Переглядайте фільтри, періоди та кількість згадок просто натискуючи «Додаткову інформація».\n\n![insightsCopilot1_5_gif2](/static/images/announcements/insightsCopilot1_5/uk2.gif)\n\n**Можливість змінити рішення:** Задали питання, але зрозуміли, що сформулювали його не зовсім вірно? Не проблема! Скасуйте свій запит, якщо передумали, і налаштуйте нові параметри.\n\n![insightsCopilot1_5_png1](/static/images/announcements/insightsCopilot1_5/uk1.png)\n\n**Свобода вибору фільтрів:** Вибирайте, залишати поточні фільтри чи дозволяти нам брати їх з тексту вашого питання.\n\n![insightsCopilot1_5_png2](/static/images/announcements/insightsCopilot1_5/uk2.png)\n\nЦікаво? Дізнайтеся більше про [Insights Copilot тут!](https://help.youscan.io/uk/articles/7670114-insights-copilot)\n");

/***/ }),

/***/ "CO8o":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now, whether you're looking for instant data insights, detailed reports with comparison or personalized charts, Insight Copilot has got you covered.\n\n- **Interactive Threads:** Dive deeper into insights with threaded conversations. Now, you can engage in follow-up discussions, exploring key insights in greater detail and context.\n\n  ![Threads](/static/images/announcements/insightsCopilot2_0/en1.png)\n\n- **Advanced Analytics and Charts:** Access detailed topic statistics and visualize data with charts and graphs. Simply ask your questions, and Insights Copilot will provide precise answers, complete with data analyses and visualizations, directly in the chat.\n\n  ![Analytics and Charts](/static/images/announcements/insightsCopilot2_0/en2.png)\n\n- **Enhanced Comparisons:** Compare different data segments side-by-side, whether it's across time periods or geographical locations. This feature helps you identify patterns, similarities, and differences more easily than before.\n\n![Comparisons](/static/images/announcements/insightsCopilot2_0/en3.png)\n\nCheck out these powerful updates and see how they can boost your analysis!\n📚 Learn more about *Insights Copilot* in our [Knowledge Base](https://help.youscan.io/en/articles/7670114-insights-copilot)\n");

/***/ }),

/***/ "bmW/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora, tanto si busca información instantánea, informes detallados con comparaciones o gráficos personalizados, Insight Copilot le ofrece todo lo que necesita.\n\n- **Hilos interactivos:** Profundice en la información con conversaciones en hilos. Ahora, puede participar en conversaciones de seguimiento, explorando las perspectivas clave con mayor detalle y contexto.\n\n  ![Threads](/static/images/announcements/insightsCopilot2_0/es1.png)\n\n- **Gráficos y análisis avanzados:** Acceda a estadísticas detalladas de los temas y visualice los datos con tablas y gráficos. Simplemente formule sus preguntas, e Insights Copilot le proporcionará respuestas precisas, completas con análisis de datos y visualizaciones, directamente en el chat.\n\n  ![Analytics and Charts](/static/images/announcements/insightsCopilot2_0/es2.png)\n\n- **Comparaciones mejoradas:** Compare diferentes segmentos de datos uno al lado del otro, ya sea a través de períodos de tiempo o ubicaciones geográficas. Esta función le ayuda a identificar patrones, similitudes y diferencias con más facilidad que antes.\n\n![Comparisons](/static/images/announcements/insightsCopilot2_0/es3.png)\n\n¡Echa un vistazo a estas eficaces actualizaciones y comprueba cómo pueden impulsar tus análisis!\n📚 Más información sobre Insights Copilot en nuestra [Base de conocimientos](https://help.youscan.io/es/articles/7670114-copiloto-insights)\n");

/***/ }),

/***/ "oLi/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер, незалежно від того, чи шукаєте ви миттєві аналітичні дані, детальні звіти з порівняннями або персоналізовані діаграми, Insight Copilot забезпечить вас усім необхідним.\n\n- **Інтерактивні обговорення:** Зануртеся глибше в інсайти за допомогою тематичних розмов. Адже тепер ви можете вести діалог з **Insights Copilot, вивчаючи ключові ідеї більш детально і в контексті.\n\n![Threads](/static/images/announcements/insightsCopilot2_0/uk1.png)\n\n- **Розширена аналітика та діаграми:** Отримуйте доступ до детальної статистики за темами та візуалізуйте дані за допомогою діаграм і графіків. Просто задайте свої питання, і Insights Copilot надасть точні відповіді, разом з аналізом даних і візуалізацією, прямо в чаті.\n\n![Analytics and Charts](/static/images/announcements/insightsCopilot2_0/uk2.png)\n\n- **Розширені можливості порівняння:** Порівнюйте різні сегменти даних пліч-о-пліч, незалежно від того, чи це часові періоди, чи географічне розташування. Ця функція допоможе вам виявити закономірності, подібності та відмінності легше, ніж раніше.\n\n![Comparisons](/static/images/announcements/insightsCopilot2_0/uk3.png)\n\nОзнайомтеся з цими потужними оновленнями і дізнайтеся, як вони можуть покращити ваш аналіз!\n\n📚 Дізнайтеся більше про Insights Copilot в нашій [базі знань](https://help.youscan.io/uk/articles/7670114-insights-copilot)\n");

/***/ }),

/***/ "T2hp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’ve added autogenerated summaries for weekly and monthly reports for all subscription types. Insights Copilot gathers data for a week or a month and identifies the freshest trends and potential crises without you having to spend hours poring over data.\n\nThere’s no need to change settings, it will automatically appear in your next report 🪄\n\n![insights_copilot_in_reports_en](/static/images/announcements/insightsCopilotInReports/en.png)\n\n📣 Bonus Alert! Now, each email has an included PDF version, making sharing insights with your colleagues even easier.\n\n![insights_copilot_in_reports_en](/static/images/announcements/insightsCopilotInReports/pdf.png)\n\n📚 Find more about regular reports and ways to customize them in our [Knowledge Base](https://help.youscan.io/en/articles/803456-email-reports).\n");

/***/ }),

/***/ "sHRH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hemos añadido resúmenes autogenerados a los boletines semanales y mensuales para todos los tipos de suscripción. Insights Copilot recopila los datos de una semana o un mes e identifica las tendencias más recientes y las crisis potenciales sin que tengas que pasar horas analizando los datos.\n\nNo hace falta cambiar la configuración de tu reporte, esta actualización aparecerá automáticamente en tu próximo boletín 🪄\n\n![insights_copilot_in_reports_es](/static/images/announcements/insightsCopilotInReports/es.png)\n\n📣 Alerta Bonificación! Ahora cada correo electrónico incluye una versión del boletín en PDF, lo que facilita aún más el intercambio de información con tus colegas.\n\n![insights_copilot_in_reports_es_pdf](/static/images/announcements/insightsCopilotInReports/pdf.png)\n\n📚 Obtenga más información sobre los informes periódicos y las formas de personalizarlos en nuestra Base de conocimientos.\n");

/***/ }),

/***/ "gWV9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми додали автоматично згенеровані інсайти для щотижневих і щомісячних звітів для усіх тарифних планів.\nInsights Copilot збирає дані за тиждень або місяць і визначає найсвіжіші тренди та потенційні кризи, щоб заощадити ваш час на аналіз даних.\n\nВам не потрібно змінювати налаштування, оновлення автоматично з'являться у вашому наступному звіті 🪄\n\n![insights_copilot_in_reports_uk](/static/images/announcements/insightsCopilotInReports/uk.png)\n\n📣 Увага, бонус! Тепер до кожного листа додається PDF-версія. Так, ділитися інсайтами з колегами буде ще простіше.\n\n![insights_copilot_in_reports_uk_pdf](/static/images/announcements/insightsCopilotInReports/pdf.png)\n\n📚 Дізнайтеся більше про регулярні звіти та способи їх кастомізації в нашій [Базі знань](https://help.youscan.io/en/articles/803456-email-reports).\n");

/***/ }),

/***/ "TU3n":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can monitor your competitors, analyze bloggers' and influencers' posts without any hashtags. This is all possible because now you can add any public business accounts from Instagram as channels to your topics.\n\n**How this works:**\n\n1. Authorize any Instagram business account following the [step-by-step guide from our Knowledge base](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan).\n2. Click on \"Settings\" section in the topic where you wish to add needed pages\n3. Click on \"Channels\" tab on the right menu panel\n4. Click on \"Add channel\" tab\n5. Insert the page URL in the pop-up window and press Enter\n6. Press **+** to add the new channel\n\n![Add channel](/static/images/announcements/instagramNonOwnedChannels/en.gif)\n\nFor example, you can add all the influencers in your industry to a separate topic, so you can keep up with the trends in discussions and not miss mentions about you or your competitors.\n\n☝️ **Important:**\n\n- You will be able to collect only posts (no comments, no stories)\n- You can add only Business and Creator Instagram pages this way");

/***/ }),

/***/ "jEYb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете мониторить посты конкурентов, анализировать публикации блогеров и лидеров мнений, даже если в постах нет хештегов. А все потому что теперь каналами можно добавлять любые открытые бизнес-страницы из Instagram.\n\n**Как работает добавление:**\n\n1. Авторизуйте бизнес-страницу из Instagram [по инструкции из Базы знаний](https://help.youscan.io/ru/articles/2882213-авторизация-instagram-в-youscan#--). Это может быть любая страница;\n2. Зайдите в раздел «Настройки темы‎»‎ в теме, в которую хотите подключить страницы;\n3. Справа в боковой панели выберите раздел «Каналы‎»‎;\n4. Нажмите на кнопку «Добавить канал‎»‎;\n5. Во всплывающем окне вставьте ссылку на страницу, которую хотите добавить, и нажмите Enter;\n6. Нажмите на кнопку **+** чтоб добавить канал.\n\n![Add channel](/static/images/announcements/instagramNonOwnedChannels/ru.gif)\n\nНапример, вы можете добавить в отдельную тему всех лидеров мнений в вашей отрасли, чтобы следить за трендами обсуждений и не пропустить упоминания о вас или конкурентах.\n\n☝️ **Важные нюансы такого подключения:**\n\n* собираются только посты (без комментариев и сториз);\n* подключать можно только открытые страницы типа Business и Creator.\n\nЧитайте больше о том, как мониторить Instagram, в нашей [Базе Знаний](https://help.youscan.io/ru/articles/5116307-мониторинг-instagram-с-помощью-каналов).\n");

/***/ }),

/***/ "vBba":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете моніторити дописи конкурентів, аналізувати публикації блогерів і лідерів думок, навіть коли в постах немає хештегів. А все завдяки тому, що тепер каналами можна додавати будь-які відкриті бізнес-сторінки з Instagram.\n\n**Як працює додавання:**\n\n1. Авторизуйте бізнес-сторінку з Instagram [згідно з інструкцією з Бази знань](https://help.youscan.io/ru/articles/2882213-авторизация-instagram-в-youscan#--). Це може бути будь-яка сторінка;\n2. Зайдіть в розділ «Налаштування теми» в темі, в якій ви хочете підключити сторінки;\n3. Справа на боковій панелі виберіть розділ «Канали»;\n4. Натисніть на кнопку «Додати канал»;\n5. У поп-ап вікні вставте посилання на сторінку, яку бажаєте додати, та натисніть Enter;\n6. Натисніть на кнопку **+**, щоб додати канал.\n\n\n![Add channel](/static/images/announcements/instagramNonOwnedChannels/uk.gif)\n\nНаприклад, ви можете додати в окрему тему всіх лідерів думок в вашій галузі, щоб слідкувати за трендами обговорень та не пропустити дописи про вас чи ваших конкурентів. \n\n☝️ **Важливі нюанси такого підключення:**\n\n* збираються тільки дописи (без коментарів, без сторіз)\n* підключати можна тільки відкриті сторінки типа Business і Creator\n\nЧитайте більше про те, як моніторити Instagram, в нашій [Базі Знань](https://help.youscan.io/ru/articles/5116307-мониторинг-instagram-с-помощью-каналов).");

/***/ }),

/***/ "huuW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("The long-awaited Instagram Reels are here! We collect Reels with hashtags automatically if they match your search query. Just make sure that you have active [Facebook+Instagram authorization](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan) in your account.\n\nYou can filter out Reels with the new **Source-specific format** filter.\n\n![image](/static/images/announcements/instagramReels/en.png)\n\n☝️ The data is available starting from September 16.");

/***/ }),

/***/ "jOwg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("The long-awaited Instagram Reels are here! There is nothing you need to do because we collect Reels with hashtags automatically if they match your search query.\n\nYou can filter out Reels with the new **Source-specific format** filter.\n\n![image](/static/images/announcements/instagramReels/en.png)\n\n☝️ The data is available starting from September 16.");

/***/ }),

/***/ "zGU0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Довгоочікувані Instagram Reels вже в YouScan! Ми автоматично збираємо Reels із хештегами, якщо вони відповідають вашому пошуковому запиту. Тільки переконайтеся, що у вас є активна [авторизація Facebook+Instagram](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan).\n\nВи можете відфільтрувати Reels за допомогою нового фільтра.\n\n![image](/static/images/announcements/instagramReels/uk.png)\n\n☝️ Дані доступні з 16 вересня.");

/***/ }),

/***/ "UQ+k":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Довгоочікувані Instagram Reels вже в YouScan! Вам не потрібно нічого вмикати додатково, ми автоматично збираємо Reels з хештегами, якщо вони відповідають вашому пошуковому запиту.\n\nВи можете відфільтрувати Reels за допомогою нового фільтра.\n\n![image](/static/images/announcements/instagramReels/uk.png)\n\n☝️ Дані доступні з 16 вересня.");

/***/ }),

/***/ "UuNU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Work with social media without breaking your workflow.\n\nNow, you can get mentions directly in Telegram, Slack, Zendesk, Freshdesk, UseDesk, HelpDeskEddy and Terrasoft.\n\n![Integrations](/static/images/announcements/integrations/integrations_en.png)\n\nNew integrations are available per topic in the `Settings` tab under `Integration` menu item.\nNow you can:\n- stay online 24/7 by streaming all mentions to Slack and Telegram;\n- don't miss any relevant news by sending only messages that match your filter. For example, you can send only negative mentions to give them instant response;\n- share important mentions in your group chats by clicking mention `Share` button;\n- plug mentions to your CRM or HelpDesk system.\n\n![Share](/static/images/announcements/integrations/share_en.png)\n");

/***/ }),

/***/ "TjzU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Отправляйте упоминания из YouScan напрямую в мессенджеры, CRM и Helpdesk системы. Уже доступны интеграции с Telegram, Slack, Zendesk, Freshdesk, UseDesk, HelpDeskEddy и Terrasoft.\n\n![Integrations](/static/images/announcements/integrations/telegram.png)\n\nЗайдите в **Настройки темы**, выберите нужную интеграцию и пройдите быстрый процесс настройки. Вот несколько примеров использования интеграций:\n\n- Держать руку на пульсе 24/7 и автоматически получать все упоминания в Slack или Telegram.\n- Настроить автоматическую отправку упоминаний по своим критериям. Например, отправлять в чат Telegram весь негатив из Facebook и моментально реагировать на него.\n\n![Rule](/static/images/announcements/integrations/rule.png)\n\n- Отправлять все или какие-то конкретные упоминания в вашу CRM или тикет-систему.\n- Делиться важными упоминаниями с коллегами в общих чатах. Для этого нажимайте на кнопку `Поделиться` на упоминании.\n\n![Share](/static/images/announcements/integrations/post-share.png)\n\nЧитайте подробнее об использовании интеграций в [нашей статье](https://bit.ly/2PPQFxt).\n");

/***/ }),

/***/ "dMzl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Надсилайте згадування з YouScan напряму в мессенджери, CRM та Helpdesk системи. Зараз пiдтримуються інтеграції з Telegram, Slack, Zendesk, Freshdesk, UseDesk, HelpDeskEddy та Terrasoft.\n\n![Integrations](/static/images/announcements/integrations/telegram.png)\n\nЗаходьте в **Налаштування теми**, обирайте потрібну інтеграцію і пройдiть швидний процес налаштування! Тепер ви зможете:\n- Тримати руку на пульсі 24/7 та автоматично отримувати усі згадування в Slack або Telegram.\n- Автоматично надсилати згадування за власними критеріями. Наприклад, надсилати в месенджери весь негатив з Facebook та моментально реагувати на нього.\n\n![Rule](/static/images/announcements/integrations/rule.png)\n\n- Ділитися важливими згадуваннями з колегами у спільних чатах. Для цього натискайте на кнопку `Поділитися` на згадуванні.\n- Надсилати всі або якісь конкретні згадування у вашу CRM- або тікет-систему.\n\n![Share](/static/images/announcements/integrations/post-share.png)\n\nДетальнiше читайте про використання інтеграцій у [нашiй статтi](https://bit.ly/2PPQFxt)\n");

/***/ }),

/***/ "r/Hm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Previously, when you searched for mentions with specific words in the mention stream, our system could scan only part of the long mention and some insights might be lost. Now, YouScan **will scan the whole mentions**, which means you are able to find the most important information even in the longest texts.\n\nThe same affects the rules, they won’t skip any mention, even the longest ones!\n\n![image](/static/images/announcements/internalSearchImprov/en.gif)\n\n☝️ Important:\n- The new internal search works only for mentions collected after April 21st, 2022.\n- \"Mentions will full text\" report will also be available only for the mentions collected after April 21st, 2022. You will be able to download only the snippets for all the previously collected mentions.");

/***/ }),

/***/ "ftjQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Раньше когда вы искали в своих темах упоминания с опеределенными ключевыми словами, система сканировала лишь небольшую часть текста в них и из-за этого пропускала некоторые посты. Теперь поиск работает **по всему тексту упоминания**, а значит, вы сможете находить важные инсайты даже в самых длинных упоминаниях.\n\nТакже мы улучшили работу правил: теперь они не пропустят даже самое длинное упоминание!\n\n![image](/static/images/announcements/internalSearchImprov/ru.gif)\n\n☝️ Важные нюансы:\n- Обновленный поиск работает только для упоминаний, собранных с 21.04.2022\n- Отчет «Упоминания с полным текстом» будет доступен также только для упоминаний, собранных с 21.04.2022. Все посты, собранные ранее, можно будет скачать только в урезанном виде.");

/***/ }),

/***/ "IkgA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Раніше коли ви шукали в своїх темах згадування з певними ключовими словами, система сканувала лише маленьку частину тексту в них і через це пропускала деякі пости. Відтепер пошук працює **по всьому тексту згадування**, а це означає, що ви зможете знаходити важливі інсайти навіть в найдовших згадуваннях.\n\nТакож ми покращили роботу правил: тепер вони не пропустять навіть найдовше згадування!\n\n![image](/static/images/announcements/internalSearchImprov/uk.gif)\n\n☝️ Важливі нюанси:\n- Оновлений пошук працює лише для згадувань, зібраних з 21.04.2022\n- Звіт «Згадування з повним текстом» буде доступний також лише для згадувань, зібраних з 21.04.2022. Всі пости, зібрані до цього, можна буде скачати лише в скороченному вигляді.\n");

/***/ }),

/***/ "8i9F":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hurray! From now on, you can add your company’s LinkedIn page as a channel to your topic and collect:\n\n- posts and comments from your company’s page\n- posts where your company was tagged\n- a number of reactions, comments, shares, and views to your post (we update these numbers only for posts from your page). We sum up all the specific LinkedIn reactions and show them as the total number of likes.\n\n![image](/static/images/announcements/linkedinChannels/en_img.png)\n\n☝️ Important:\n- First, you need to authorize your company’s Linkedin page (follow this [guide](https://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring#h_81f4606861) to learn the details). Then you may proceed with adding the page as a channel to your topic (select the content you want to monitor: posts and comments from your page and/or posts where your page was tagged).\n\n![image](/static/images/announcements/linkedinChannels/en_gif.gif)\n\nDone 🎉 From now on, you can track discussions about your company on LinkedIn.\n\n- You can’t add personal LinkedIn pages as channels to your topics.\n\nCurious to find out more? Check our [Knowledge base article](https://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring) to learn in detail how YouScan monitors LinkedIn");

/***/ }),

/***/ "jyS/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мрії здійснюються! Відтепер додавайте сторінки своєї компанії в LinkedIn каналами в свої теми та збирайте:\n\n- пости та коментарі зі сторінки вашої компанії\n- пости, в яких тегнули вашу компанію\n- кількість реакцій, коментарів, репостів та переглядів вашого поста (ми оновлюємо ці дані лише для постів з вашої сторінки). Ми підсумуємо всі спеціальні для LinkedIn реакції та покажемо їх у вигляді загальної кількості вподобань.\n\n![image](/static/images/announcements/linkedinChannels/uk_img.png)\n\n☝️ Важливо:\n- Спочатку авторизуйте сторінку вашої компанії в Linkedin (користуйтесь цією [інструкцією](https://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring#h_81f4606861)). Потім ви можете додати сторінку каналом у вашу тему (обирайте, що ви хочете збирати, в залежності від вашої задачі: пости та коментарі з вашої сторінки та/або згадування вашої сторінки в інших постах)\n\n![image](/static/images/announcements/linkedinChannels/uk_gif.gif)\n\nГотово 🎉 Відтепер ви можете слідкувати за обговореннями вашої сторінки в LinkedIn.\n\n- Ви не можете додавати власні сторінки LinkedIn каналами в свої теми.\n\nХочете дізнатись більше? Читайте всі деталі в нашій [Базі знань](https://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring)");

/***/ }),

/***/ "MQXf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’re beyond excited to announce that from now on, you can add any company’s LinkedIn page as a channel to your topic to collect:\n\n- post and comments from these pages;\n- reactions to the posts. We summarize all the specific LinkedIn reactions and show them as the total number of likes.\n\n![image](/static/images/announcements/linkedinNonOwnedChannels/en.png)\n\n☝️ Important:\n\n- First, you must authorize your company’s LinkedIn page (follow  this [guide](http://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring#h_81f4606861) to learn the details). Then you may add the page of any company as a channel to your topic.\n\n![image](/static/images/announcements/linkedinNonOwnedChannels/en.gif)\n\n💡 Please note that you can’t add personal LinkedIn pages as channels to your topics.\n\n📚 Make sure to visit our Knowledge Base to learn more about monitoring LinkedIn with YouScan");

/***/ }),

/***/ "7GuT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Estamos más que emocionados de anunciar que, a partir de ahora, puedes agregar una página de LinkedIn de cualquier empresa como canal a tu tema de monitoreo para recolectar:\n\n- las publicaciones y los comentarios de estas páginas;\n- las reacciones a las publicaciones. Resumiremos todas las reacciones específicas de LinkedIn y las mostraremos como el\n  número total de likes.\n\n![image](/static/images/announcements/linkedinNonOwnedChannels/es.png)\n\n☝️ Importante:\n\n- Primero, debes autorizar la página de LinkedIn de tu empresa (sigue esta [guía](https://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring#h_81f4606861) para conocer los detalles). Luego podrás agregar una página de cualquier empresa como canal a tu tema.\n\n![image](/static/images/announcements/linkedinNonOwnedChannels/es.gif)\n\n💡 Ten en cuenta que no puedes agregar las páginas personales de LinkedIn como canales a tus temas.\n\n📚 Asegúrate de visitar nuestra Base de conocimientos para obtener más información sobre cómo monitorear LinkedIn con YouScan.");

/***/ }),

/***/ "jdAr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Новина, від якої ми самі в захваті: відтепер ви можете додавати в свої теми каналами сторінки інших компаній в LinkedIn та збирати:\n\n- пости та коментарі з цих сторінок;\n- реакції до цих постів. Ми підсумуємо всі спеціальні для LinkedIn реакції та покажемо їх у вигляді загальної кількості\n  лайків.\n\n![image](/static/images/announcements/linkedinNonOwnedChannels/uk.png)\n\n☝️ Важливо:\n\n- Спочатку авторизуйте сторінку вашої компанії в Linkedin (користуйтесь цією [інструкцією](http://help.youscan.io/en/articles/6265954-linkedin-authorization-and-monitoring#h_81f4606861)). Потім ви можете додати сторінку будь-якої компанії каналом в вашу тему.\n\n![image](/static/images/announcements/linkedinNonOwnedChannels/uk.gif)\n\n💡 Ви не можете додавати особисті сторінки людей з LinkedIn каналами в свої теми.\n\n📚 Читайте більше деталей про те, як можна моніторити LinkedIn за допомогою YouScan, в нашій Базі Знань");

/***/ }),

/***/ "k/IW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We have added a built-in translation for the mentions that are not in the language of your interface. You don't need to use any external apps.\n\nFrom now on, if a mention's language doesn't match the language of your interface, the system suggests translating the text.\n\n- To translate a mention, click “Translate” below the text\n\n- If you need to see the original text, click “See original”     \n\n&nbsp;\n![mention translation](/static/images/announcements/mentionTranslation/en.gif)\n\n🌎 We already translate from 29 languages.\n");

/***/ }),

/***/ "GYAf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми додали автоматичний переклад для згадувань різними мовами, тому вам більше не потрібно використовувати стороні програми.\n\nВідтепер, якщо мова посту не збігається з мовою вашого інтерфейсу, система запропонує перекласти текст.\n\n- Щоб перекласти згадку, натисніть «Перекласти» під текстом\n\n- Якщо вам потрібно переглянути оригінальний текст, натисніть «Показати оригінал»\n\n&nbsp;\n![mention translation](/static/images/announcements/mentionTranslation/uk.gif)\n\n🌎 Ми вже перекладаємо з 29 мов.\n");

/***/ }),

/***/ "8PSa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Eager to share the analytics with all the important mentions with your colleagues who don’t have access to YouScan account? Now it’s possible thanks to the new mention widget. Simply add all the necessary filters to the widget and enjoy the full visualization of the mentions in your custom dashboard.\n\n![Announcements!](/static/images/announcements/mentionWidget/en.gif)\n\nImportant ☝️\n\n- The mentions that have an image will have the image displayed in the mention widget;\n- Following the external link to the dashboard you will be able to see the same information that there is in the dashboard (author’s name, source, date, and text of the mention);\n- By clicking on the name of the author on the mention widget you will be directed to the author and the post itself by clicking on the source;\n- The mentions on the mention widget will be updated according to the settings on your dashboard (for example, every 5 or 30 minutes);\n- You can export, copy and delete the mention widget, however, it’s impossible to export it at the moment;\n- The actions like “assign”, “share” and “change sentiment” are not available in the mention widget.\n");

/***/ }),

/***/ "i9qC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Бажаєте поділитись аналітикою з важливими згадками з колегами, в яких немає аккаунту в YouScan? Це стало можливим завдяки новому віджету зі згадуваннями. Просто додайте необхідні фільтри до віджету та отримайте повну візуалізацію згадувань в вашому дашборді.\n\n![Announcements!](/static/images/announcements/mentionWidget/uk.gif)\n\nВажливі нюанси ☝️\n\n- Якщо у згадуванні є картинка, її також можна буде побачити у віджеті;\n- Якщо ви поділитесь посиланням на дашборд, то по ньому можна буде побачити ту ж інформацію зі згадування, що є у дашборді (ім’я автора, джерело, дату та текст згадування);\n- Натиснувши на ім’я автора в пості у віджеті, ви зможете перейти до автора посилання, а натиснувши джерело – на оригінальне згадування;\n- Згадування у віджеті оновлюватимуться згідно з налаштуваннями дашборду (наприклад, кожні 5 або 30 хвилин);\n- Ви можете редагувати, копіювати та видаляти віджет зі згадуваннями, але наразі експорт віджету неможливий;\n- В самому віджеті функціЇ “призначити”, “поділитися” або “змінити тональність” відсутні.\n");

/***/ }),

/***/ "UQdN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Use the new sorting to find and process mentions that can be seen by the largest number of people.\n\n**Sorting by author subscribers** — helps you find posts published by the most influential authors.\n\n**Sorting by place of publication subscribers** — helps to find mentions that were published on the pages with the largest audience.\n\n![gif](/static/images/announcements/mention_stream_sort/en.gif)\n\nDon't forget about other ways to sort mentions:\n\n**By engagement** — shows the most important mentions first. The engagement is calculated as the sum of likes, reposts, and comments.\n\n**By comments** — shows the most active discussions first.\n\n**By views** — shows the most viewed mentions first. With this sorting, you can estimate the reach of your ad posts.");

/***/ }),

/***/ "EoFm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Используйте новую сортировку чтобы найти и обработать упоминания, которые могут увидеть больше всего людей.\n\n**Сортировка по количеству подписчиков автора** — помогает найти посты, которые написали самые влиятельные авторы.\n\n**Сортировка по количеству подписчиков места публикации** — помогает найти упоминания, которые написаны на страницах с наибольшей аудиторией.\n\n![gif](/static/images/announcements/mention_stream_sort/ru.gif)\n\nНе забывайте про другие виды сортировки:\n\n**По вовлечению** — помогает найти самые важные посты. Вовлечение считается как сумма лайков, репостов и комментариев.\n\n**По комментариям** — помогает найти самые горячие дискуссии вокруг вашего бренда.\n\n**По просмотрам** — находит упоминания, которые увидели много людей. С такой сортировкой вы можете оценить охват ваших рекламных постов.");

/***/ }),

/***/ "ZjX6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Використовуйте нове сортування щоб знайти і обробити згадування, які можуть побачити найбільше людей.\n\n**Сортування за кількістю фоловерів** автора — допомагає знайти пости, які написали найвпливовіші автори.\n\n**Сортування за кількістю фоловерів місця публікації** — допомагає знайти згадування, які написані на сторінках з найбільшою аудиторією.\n\n![gif](/static/images/announcements/mention_stream_sort/uk.gif)\n\nНе забувайте про інші види сортування:\n\n**За залученням** — допомагає знайти найважливіші пости. Залучення розраховується як сума лайків, репостів і коментарів.\n\n**За коментарями** — допомагає знайти найгарячіші дискусії навколо вашого бренду.\n\n**За переглядами** — знаходить згадування, які бачили багато людей. З таким сортуванням ви можете оцінити охоплення ваших рекламних постів.");

/***/ }),

/***/ "iG+2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("+ Now you can collect all types of posts with the mentions of the Instagram page [authorized in your YouScan account](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan):\n\n![instagram channels](/static/images/announcements/mentionsInInstagramCollection/en.png)\n\n- Posts in which your page was tagged on media (photo, video, or any media in album/carousel); \n- **Posts in which your page was mentioned in the caption (NEW);**\n- Comments for posts (top 100) in which your page was simultaneously tagged on media AND mentioned in the caption;\n- **Comments in which your page was mentioned (NEW).**\n\n☝️ Important details:\n- We don’t collect mentions from private accounts;\n- Historical data is available for posts in which your page was tagged on media, and also for comments for posts (top 100) in which your page was simultaneously tagged on media AND mentioned in the caption.");

/***/ }),

/***/ "hWiB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("+ Теперь вы можете собирать все типы упоминаний, где отметили Instagram страницу, [которую вы авторизовали в YouScan](https://help.youscan.io/ru/articles/2882213-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-instagram-%D0%B2-youscan):\n\n![instagram channels](/static/images/announcements/mentionsInInstagramCollection/ru.png)\n\n- Посты, в которых вашу страничку отметили на фото или видео, даже если их добавили в альбом (карусель); \n- **Посты, на которых вашу страничку отметили в заголовке (NEW);**\n- Комментарии (топ-100) под постами, в которых вашу страничку отметили и на фото/видео, и в заголовке;\n- **Комментарии, в которых отметили вашу страничку (NEW).**\n\n☝️ Важные нюансы сбора: \n- Мы не собираем упоминания с личных (закрытых) аккаунтов;\n- Исторические данные доступны для постов с отметкой на фото/видео, а также для комментариев под постами, в которых отметка есть и на фото/видео, и в заголовке.\n\n");

/***/ }),

/***/ "1VHE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("+ Тепер ви можете збирати всі типи згадувань, де відмітили Instagram сторінку,  [яку ви авторизували в YouScan](https://help.youscan.io/ru/articles/2882213-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-instagram-%D0%B2-youscan):\n\n![instagram channels](/static/images/announcements/mentionsInInstagramCollection/uk.png)\n\n- Пости, в яких вашу сторінку відмітили на фото або відео, навіть якщо їх додали в альбом (карусель);\n- **Пости, в яких вашу сторінку відмітили в заголовку (NEW);**\n- Коментарі (топ-100) під постами, в яких вашу сторінку відмітили і на фото/відео, і в заголовку;\n- **Коментарі, в яких відмітили вашу сторінку (NEW).**\n\n☝️ Важливі нюанси збору: \n- Ми не збираємо згадування з приватних (закритих) аккаунтів;\n- Історичні дані доступні для постів з відміткою на фото/відео, а також для коментарів під постами, в яких відмітка є і на фото/відео, і в заголовку. \n\n");

/***/ }),

/***/ "ZOOG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Long awaited addition to our platform - from now on, you can download mentions in Word format.\n\n![image](/static/images/announcements/mentionsWordReport/eng.png)\n\nThis simple, easy-to-read format has up to 10 thousand mentions per report and contains the essential information about the mention:\n\n- author’s name;\n- publication date;\n\n💡 If you click on the publication date, it will lead you to the original post\n\n- title;\n- text;\n- image;\n- sentiment.\n\n☝️ Reports in Word format are currently in Beta mode, which means **their future depends on your feedback**! Let us know all your thoughts and comments on support@youscan.io\n");

/***/ }),

/***/ "EprT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Довгоочікуване оновлення вже на нашій платформі - відтепер ви можете завантажувати згадування в форматі Word.\n\n![image](/static/images/announcements/mentionsWordReport/uk.png)\n\nЗа допомогою цього простого, легкого для читання звіта ви можете завантажити до 10 тисяч згадувань, а ще в ньому ви знайдете найважливішу інформацію про згадування:\n\n- ім’я автора;\n- дата публікації;\n\n💡 Щоб перейти на оригінальний пост, натисніть на дату публікації\n\n- заголовок;\n- текст;\n- зображення;\n- тональність.\n\n☝️ Звіти в форматі Word наразі в режимі Beta, а це означає, що **їхнє майбутнє залежить лише від вашого фідбека**! Діліться своїми думками щодо звітів на support@youscan.io\n");

/***/ }),

/***/ "8VfN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Mention Wall allows you to turn mentions from social networks into an engaging story in two clicks.\n\nTo do this, go to page “Mentions”  and click on the Mention Wall icon in the upper right corner. Just click and Mention Wall will open on full screen for broadcast. You can also copy a public link for not login users at the top of the screen.\n\nYou can use Mention Wall at conferences to engage participants for publishing even more content about your event. Also, you can broadcast Mention Wall in your workspace, to keep before eyes all insights from your users. [More by link](https://youscan.io/en/article-mention-wall)\n\n![Announcements!](/static/images/announcements/mentionwall/en.png)\n");

/***/ }),

/***/ "N+eC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Mention Wall позволяет в два клика превратить публикации из социальных сетей в вовлекающую историю. \n\nДля этого нужно перейти в раздел “Упоминания” и кликнуть на иконку открытия Mention Wall в правом верхнем углу. Просто кликните на нее и Mention Wall откроется на весь экран для трансляции. Также можно скопировать публичную ссылку для незарегистрированных пользователей сверху экрана. \n\nИспользовать Mention Wall можно на конференциях, чтобы стимулировать участников события публиковать ещё больше контента о нем, тем самым повышая популярность ивента. Или транслировать в офисе, чтобы инсайты от ваших пользователей всегда были перед глазами у вас и ваших коллег. [Узнайте больше по ссылке](https://youscan.io/2019/06/youscan-social-mention-wall/)\n\n![Announcements!](/static/images/announcements/mentionwall/ru.png)\n");

/***/ }),

/***/ "0m1J":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Mention Wall дозволяє перетворити публікації із соціальних мереж у залучаючу історію.\n\nДля цього потрібно перейти у розділ \"Згадування\" і натиснути на іконку відкриття Mention Wall у правому верхньому кутку. Просто клікніть на неї і Mention Wall відкриється на весь екран для трансляції. Також можна скопіювати публічне посилання для незареєстрованих користувачів зверху екрану.\n\nВикористовувати Mention Wall можна на конференціях, щоб стимулювати учасників події публікувати ще більше контенту про нього, тим самим підвищуючи популярність івента. Або транслювати в офісі, щоб інсайти від ваших користувачів завжди були перед очима у вас та ваших колег. [Дізнайтеся більше за посиланням](https://youscan.io/2019/06/youscan-social-mention-wall/)\n\n![Announcements!](/static/images/announcements/mentionwall/uk.png)\n");

/***/ }),

/***/ "C2Tg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, YouScan collects reviews for products and sellers from Mercadolibre!\n\nIf there is a keyword from your search query in the name of the product, seller, or in the text of the review, then such a mention will be automatically collected to your topic.\n\n![image](/static/images/announcements/mercadolibre/en.png)");

/***/ }),

/***/ "1zjG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми почали збирати відгуки про товари та продавців від Mercadolibre!\n\nЯкщо в назві товару, продавця або в тексті відгуку є ключове слово з вашого пошукового запиту, то таке згадування автоматично потрапить до вашої теми.\n\n![image](/static/images/announcements/mercadolibre/uk.png)");

/***/ }),

/***/ "nksj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("### Join the dark side 🕶️\n\nSponsored content is not a blind spot anymore!\nFrom now on, you can collect so-called Dark posts from Instagram and Facebook: sponsored posts not published on the brand's/person's page. Moreover, you can collect comments related to sponsored posts.\n\nGo to the Channels tab in your topic and add your Meta Ads account to collect more data from Facebook and Instagram.\n\n![image](/static/images/announcements/metaAdsChannels/en.gif)\n\nUse a new Sponsored content filter to filter sponsored content in your topic or dashboard.\n\n![image](/static/images/announcements/metaAdsChannels/en.png)\n\n");

/***/ }),

/***/ "SSgE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("## Únete al lado oscuro 🕶️\n\n¡El contenido patrocinado ya no es un punto ciego!\nA partir de ahora, puedes recopilar los llamados Dark posts de Instagram y Facebook: posts patrocinados no publicados en la página de la marca/persona. Además, puedes recopilar comentarios relacionados con las publicaciones patrocinadas.\n\nVe a la pestaña Canales de tu tema y añade tu cuenta de Meta Ads para recopilar más datos de Facebook e Instagram.\n\n![image](/static/images/announcements/metaAdsChannels/es.gif)\n\nUtiliza un nuevo filtro de Contenido patrocinado para filtrar el contenido patrocinado en tu tema o panel de control.\n\n![image](/static/images/announcements/metaAdsChannels/es.png)\n\n");

/***/ }),

/***/ "+QKG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("## Переходьте на темний бік 🕶️\n\nРекламний контент більше не є сліпою плямою!\nВідтепер ви можете збирати так звані темні пости з Instagram та Facebook: рекламні пости, які не публікуються на сторінці бренду/персони. Щобільше, ви можете збирати коментарі, пов'язані із рекламними постами.\n\nПерейдіть на вкладку Канали у вашій темі та додайте свій обліковий запис Meta Ads, щоб збирати більше даних з Facebook та Instagram.\n\n![image](/static/images/announcements/metaAdsChannels/uk.gif)\n\nВикористовуйте новий фільтр Рекламний контент, щоб відфільтрувати рекламні пости і коментарі у вашій темі або на дашборді.\n\n![image](/static/images/announcements/metaAdsChannels/uk.png)\n");

/***/ }),

/***/ "S43K":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Need to check a crisis situation or just want to finish some tagging while on the go?\n\nThe new mobile version makes it easier by optimizing most of the workflows for those who use their smartphones for work on occasion.\n\nGive it a go, and please don't hesitate to share your experience with us. We value your feedback greatly!\n");

/***/ }),

/***/ "TijJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("¿Necesitas comprobar una situación de crisis o simplemente quieres terminar de etiquetar mientras te mueves?\n\nLa nueva versión móvil te lo facilita al optimizar la mayoría de los flujos de trabajo para aquellos que usan sus smartphones para trabajar de vez en cuando.\n\nPruébala y no dudes en compartir tu experiencia con nosotros. Valoramos mucho tus comentarios.\n");

/***/ }),

/***/ "g/4n":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Потрібно проконтролювати кризову ситуацію або просто закінчити тегування згадок на ходу?\n\nМи спростили це завдання, оптимізувавши більшість робочих процесів для тих, хто час від часу користується смартфоном для роботи.\n\nСпробуйте оновлену мобільну версію YouScan і обовʼязково поділіться з нами своїми враженнями. Ми дуже цінуємо ваші відгуки!\n");

/***/ }),

/***/ "8fyt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on you can authorize YouScan in your Microsoft Teams workspace to start receiving notifications. The interactive nature of Microsoft Teams enables your business to respond swiftly to market changes, promptly notify key internal departments, and make smarter decisions supported by deep insights.\n\nTo set up an integration, follow these simple steps: \n1. Sign in to your Microsoft Teams account;\n2. Select the preferred channel and click the “Connector” in the options;\n3. Search YouScan in the list of apps, then click \"Add”;\n4. From the list of apps, select YouScan, then click “Configure”;\n5. Sign in using your YouScan credentials (login and password);\n6. Select the topic from which you want to receive mentions;\n7. Click \"Save\".\n\n![Announcements](/static/images/announcements/msTeams/en.gif)\n\nTa-da, you can now send your mentions to Microsoft Teams manually or create rules to do so automatically 🎉");

/***/ }),

/***/ "n/85":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете авторизувати YouScan у своєму робочому просторі Microsoft Teams, щоб почати отримувати сповіщення про нові згадування. Інтерактивність Microsoft Teams дозволяє вашому бізнесу швидко реагувати на будь-які зміни, оперативно повідомляти ключові внутрішні відділи та приймати більш розумні рішення, підкріплені глибокою аналітикою.\n\nЩоб налаштувати інтеграцію, виконайте наступні прості кроки:\n1. Увійдіть до свого облікового запису Microsoft Teams;\n2. Виберіть бажаний канал та натисніть \"З'єднувачі\" в опціях;\n3. Знайдіть YouScan в списку програм, потім натисність \"Add”;\n4. У списку програм виберіть YouScan, потім натисніть \"Configure\";\n5. Увійдіть в систему, використовуючи свої облікові дані YouScan (логін і пароль);\n6. Виберіть тему, з якої ви хочете отримувати згадування;\n7. Натисність \"Зберегти\".\n\n![Announcements](/static/images/announcements/msTeams/uk.gif)\n\nЮху, тепер ви можете надсилати свої згадки в Microsoft Teams вручну або створювати правила, щоб робити це автоматично 🎉");

/***/ }),

/***/ "1EH5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("![Announcements!](/static/images/announcements/navigation/en.png)\n\nThe new navigation is out, and here is what it brings:\n\n- Top navigation allows you to access topics and dashboards anywhere in the app.\n- The left navigation panel in the Topic is completely changed and reflects the most common usage patterns. Mention stream pages that are less used are hidden under the “More” button.\n- The comparison page is now a part of General Analytics. And yes, “Statistics by” is now available there, so you can access even more competitor analysis capabilities.\n- Also, we slightly changed the looks of several elements in the Analytics. They look cleaner and are easier to use.\n");

/***/ }),

/***/ "qhDX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("![Announcements!](/static/images/announcements/navigation/uk.png)\n\n- Верхня навігація дозволяє отримати доступ до тем і дашбордів на всіх сторінках.\n- Ліва панель навігації в темі повністю змінена та відображає найпоширеніші моделі використання. Сторінки потоку згадувань, які використовуються менше, приховані під кнопкою «Показати більше».\n- Сторінка порівняння тепер є частиною Загальної Аналітики. І так, тепер там доступна «Статистика за», тому ви можете отримати доступ до ще більших можливостей аналізу конкурентів.\n- Також ми трохи змінили вигляд деяких елементів в Аналітиці. Вони виглядають і відчуваються простіше.\n");

/***/ }),

/***/ "qufy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We have improved the calendar in our system, so now it is more convenient to select dates, and what is more important: it is editable by keyboard! This means you can forget about going through each month to select a date range.\n\nTry these two ways to choose the best one for you:\n\n- Edit dates by typing on your keyboard.\n\n![Announcements!](/static/images/announcements/newCalendar/en1.gif)\n\n- Click on the year and the month and select the one you need from the drop-down list.\n\n![Announcements!](/static/images/announcements/newCalendar/en2.gif)\n");

/***/ }),

/***/ "yvBa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми вдосконалили календар у нашій системі. Тепер обирати дати стало зручніше, а головне його можна редагувати за допомогою клавіатури. Вам більше не потрібно гортати сторінки, щоб знайти потрібну дату.\n\nПропонуємо два способи, з яких ви можете обрати зручніший для себе.\n\n- Редагуйте дати, вводячи їх на клавіатурі.\n\n![Announcements!](/static/images/announcements/newCalendar/uk1.gif)\n\n- Натисніть на рік і місяць і виберіть потрібний зі списку.\n\n![Announcements!](/static/images/announcements/newCalendar/uk2.gif)\n");

/***/ }),

/***/ "hYy6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("With our new calendar, you can easily choose the starting and end dates in one window. We've also added From and To indicators to help you easily move around the calendar.\n\n![Announcements!](/static/images/announcements/newCalendar_2/en.gif)\n");

/***/ }),

/***/ "sRec":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Con nuestro nuevo calendario, puede elegir fácilmente las fechas de inicio y fin en una sola ventana. También hemos añadido los indicadores “De” y “A” para ayudarle a desplazarse fácilmente por el calendario.\n\n![Announcements!](/static/images/announcements/newCalendar_2/es.gif)\n");

/***/ }),

/***/ "51Zi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("З нашим новим календарем ви можете легко вибирати початкову і кінцеву дати в одному вікні. Ми також додали індикатори \"Від\" і \"До\", щоб допомогти вам легко переміщатися календарем.\n\n![Announcements!](/static/images/announcements/newCalendar_2/uk.gif)\n");

/***/ }),

/***/ "T6tM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Meet and analyze reviews from:\n- [diy.com](https://diy.com)\n- [boots.com](https://boots.com/)\n- [superdrug.com](https://superdrug.com/)\n- [petco.com](https://petco.com/)\n- [samsclub.com](https://samsclub.com/)\n- [falabella.com](https://falabella.com/)\n- [paris.cl](https://paris.cl/)\n- [homecenter.com.co](https://homecenter.com.co/)\n- [trade-point.co.uk](https://trade-point.co.uk/)\n- [castorama.fr](https://castorama.fr/)\n\nThese sources are collected automatically in your account, there is no need to configure anything on your side 👌");

/***/ }),

/***/ "jFkV":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Знаходьте та аналізуйте відгуки з:\n- [diy.com](https://diy.com)\n- [boots.com](https://boots.com/)\n- [superdrug.com](https://superdrug.com/)\n- [petco.com](https://petco.com/)\n- [samsclub.com](https://samsclub.com/)\n- [falabella.com](https://falabella.com/)\n- [paris.cl](https://paris.cl/)\n- [homecenter.com.co](https://homecenter.com.co/)\n- [trade-point.co.uk](https://trade-point.co.uk/)\n- [castorama.fr](https://castorama.fr/)\n\nЦі джерела вже збираються у вашому акаунті, вам не потрібно нічого налаштовувати 👌");

/***/ }),

/***/ "Rgzv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Follow the link to watch the webinar about all updates and Q&A👇\n\n[Обзор новых тарифов и возможностей YouScan](https://www.youtube.com/watch?v=R3Mzj2bouxw)\n\n👉Please note, the webinar language is Russian.");

/***/ }),

/***/ "SD2b":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("По ссылке вы найдете запись вебинара о том, что меняется в тарифах YouScan и ответы на самые волнующие вопросы 👇\n\n[Обзор новых тарифов и возможностей YouScan](https://www.youtube.com/watch?v=R3Mzj2bouxw)");

/***/ }),

/***/ "z97u":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("За посиланням ви знайдете запис вебінару про те, що змінюється у тарифах YouScan. Крім того, ви почуєте відповіді на найбільш хвилюючі питання👇\n\n[Обзор новых тарифов и возможностей YouScan](https://www.youtube.com/watch?v=R3Mzj2bouxw)\n\n👉 Зверніть увагу, вебінар записано російською мовою.");

/***/ }),

/***/ "qPyj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Awesome news – our smart features are going multilingual:\n\n- We now provide sentiment in Italian 🇮🇹\n- Our aspects and autocategories became available in Italian 🇮🇹, German 🇩🇪, French 🇫🇷 and Portuguese 🇵🇹\n\n![Announcements!](/static/images/announcements/newSmartFeatureLanguages/en.png)\n\n📚 Learn more:\n\n- Find out how to work with sentiment in YouScan in our Knowledge base [article](https://help.youscan.io/en/articles/3839178-working-with-sentiment-in-youscan-s-analytics)\n- Read how our artificial intelligence detects aspects in this [article](https://help.youscan.io/en/articles/3853748-youscan-aspects-how-you-can-use-them)\n");

/***/ }),

/***/ "2YHi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Чудова новина – наші розумні функціі стають багатомовнішими:\n\n- Тепер ми визначаємо тональність італійською 🇮🇹\n- Наші аспекти та автокатегорії стають доступними італьйською 🇮🇹, німецькою 🇩🇪, французькою 🇫🇷 та португальською 🇵🇹\n\n![Announcements!](/static/images/announcements/newSmartFeatureLanguages/uk.png)\n\n📚 Дізнайтесь більше:\n\n- Як працювати з тональністю в аналітиці YouScan, читайте в цій [статті](https://help.youscan.io/en/articles/3839178-working-with-sentiment-in-youscan-s-analytics)\n- Як наш штучний інтеллект розпізнає аспекти, дізнавайтсь в цій [статті](https://help.youscan.io/en/articles/3853748-youscan-aspects-how-you-can-use-them)\n");

/***/ }),

/***/ "n3Ko":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Frequent words update**\nNow Word cloud shows not only separate words but also phrases, hashtags, and even emojis! You can analyze them one by one or all together. Use categories below the chart to choose which one to show or hide. Besides that, you can choose different word types for visualization: objects, activities, or properties.\n\n![image](/static/images/announcements/newWordCloud/en1.png)\n\n**New Trending words chart**\nKeep track of trending words in discussions that your audience has! To do this, choose a required time period, and our algorithm will compare it with the previous one, detect dynamics, and group words into three categories: Fading, Stable, or Trending.\n\n![image](/static/images/announcements/newWordCloud/en2.png)\n\n**Hiding words from the chart**\nHave you noticed an irrelevant word on Word cloud or Trending words chart? You can temporarily hide it just in a few clicks and then export the chart or make a screenshot.\n\n![image](/static/images/announcements/newWordCloud/en3.gif)");

/***/ }),

/***/ "aFw9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Обновленный график «Частые слова»**\n\nТеперь в одном графике можно видеть не только слова, но и фразы, хештеги и даже эмоджи! Анализируйте их вместе или по отдельности, выбирая нужную категорию под графиком. Кроме этого, вы можете выбрать, какие именно слова вас интересуют: объекты, действия или свойства.\n\n![image](/static/images/announcements/newWordCloud/ru1.png)\n\n**Новый график «Тенденции в словах»**\n\nБудьте в курсе того, какие слова набирают популярность в обсуждениях среди вашей аудитории!  Для этого выберите интересующий временной период, и наш алгоритм сравнит его с предыдущим равнозначным периодом, определит динамику и сгруппирует слова в три категории: Снижение, Стабильность и Тенденции.\n\n![image](/static/images/announcements/newWordCloud/ru2.png)\n\n**Функция «Скрыть слово из графика»**\n\nЗаметили неподходящее слово на графиках «Частые слова» или «Тенденции в словах»? Вы можете его временно скрыть в пару кликов, а затем выгрузить график или сделать скриншот.\n\n![image](/static/images/announcements/newWordCloud/ru3.gif)\n\n☝ Больше информации о новых функциях для работы со словами вы можете найти в [Базе Знаний.](https://help.youscan.io/ru/articles/4787692-)");

/***/ }),

/***/ "a9l8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер в одному графіку можна бачити не тільки окремі слова, але й фрази, хештеги та навіть емоджі! Аналізуйте їх разом або окремо, обираючи потрібну категорію під графіком. Крім того, тепер ви можете обрати які саме слова вас цікавлять: об'єкти, дії або властивості.\n\n![image](/static/images/announcements/newWordCloud/uk1.png)\n\n**Новий графік «Тенденції слів»**\n\nСлідкуйте за тим, які слова набирають популярність в обговореннях вашої аудиторії! Для цього оберіть часовий проміжок, який вас цікавить, наш алгоритм порівняє його з минулим рівнозначним періодом, визначить динаміку та згруппує слова у три категорії: Зниження, Стабільність та Тенденції.\n\n![image](/static/images/announcements/newWordCloud/uk2.png)\n\n**Функція «Приховати слово з графіку»**\n\nПомітили нерелевантне слово на графіках «Часті слова» або «Тендеції слів»? Ви можете тимчасово приховати його в кілька кліків аби завантажити графік або зробити скріншот.\n\n![image](/static/images/announcements/newWordCloud/uk3.gif)\n\n☝ Більше інформації про нові функції для роботи зі словами ви можете знайти у [Базі Знань.](https://help.youscan.io/ru/articles/4787692-)");

/***/ }),

/***/ "25rP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("After __exclude filters__ release we investigated their usage and gathered feedback. We found out that because of placement of exclude button sometimes you could exclude filter accidentally.\n\nSo we've came up with the new UI to exclude filters. Now exclude button is placed in the end of checkbox, so miss-clicks are almost impossible. We hope you like this change!\n\n![Announcements!](/static/images/announcements/new_exclude_filters/demo.png)\n");

/***/ }),

/***/ "ZidB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("После запуска новых __исключающих фильтров__, мы исследовали их использование и собрали отзывы. Мы выяснили, что из-за размещения кнопки исключения рядом с чекбоксом, иногда возникали случайные нажатия.\n\nДля того, чтобы этого избежать, мы перенесли кнопку исключения в конец фильтра, после счетчика. Так, все случайные нажатия сведены к минимуму!\n\n![Announcements!](/static/images/announcements/new_exclude_filters/demo.png)\n");

/***/ }),

/***/ "vUZa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Після запуску нових __фільтрів виключення__ ми дослідили їх використання та зібрали відгуки. Ми з'ясували, що з розміщення кнопки виключення поряд з чекбоксом іноді виникають випадкові натискання.\n\nДля того, щоб цього уникнути, ми перенесли кнопку виключення в кінець фільтра, після лiчильника. Так, всі випадкові натискання будуть зведені до мінімуму!\n\n![Announcements!](/static/images/announcements/new_exclude_filters/demo.png)\n");

/***/ }),

/***/ "EUrA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("New possibilities in work with mentions stream and analytics are now available in your accounts! To make this work easier and more productive we have created new filters:\n\n-   **By age**: with its help, you can set the range of the authors’ age. For example, in order to check the posts of the authors who are at least 18 years old, or to find the comments made by the people from 25 to 45 years old.\n-   **By subscribers count:** now you can set the range for the authors’ audience, in order to find various influencers for marketing initiatives. This filter works the same as filter by age: you can set it “from” and “to” specific numbers, or just the range.\n\n![Announcements!](/static/images/announcements/new_filters/en1.gif)\n\n-   **Links**: this will help you check the mentions that contain links to webpages.\n\n![Announcements!](/static/images/announcements/new_filters/en2.gif)\n\n☝️ Moreover, working with filters will be easier thanks to the new flexible operators. You can choose how to group the filters: with AND or with OR logical operators.\n\n![Announcements!](/static/images/announcements/new_filters/en3.gif)\n");

/***/ }),

/***/ "SdVb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("В ваших аккаунтах стали доступны новые возможности для работы с потоком упоминаний и аналитикой! Чтобы сделать ее легче и продуктивней, мы создали новые фильтры:\n\n-   **Фильтр по возрасту автора**: с его помощью вы сможете задать диапазон нужного возраста авторов постов. Например, посмотреть упоминания всех авторов старше 18 лет или комментарии, которые оставляли пользователи возрастом от 20 до 45 лет.\n-   **Фильтр по количеству подписчиков:** теперь вы можете задавать диапазоны для аудитории авторов, например, чтобы находить разного масштаба инфлюенсеров для маркетинговых активностей. Фильтр работает по такому же принципу, как и фильтр о возрасте — вы можете задать точку «от», «до» или интервал.\n\n![Announcements!](/static/images/announcements/new_filters/ru1.gif)\n\n-   **Фильтр по ссылке**: поможет просмотреть упоминания, которые содержат ссылки на конкретные разделы сайтов.\n\n![Announcements!](/static/images/announcements/new_filters/ru2.gif)\n\n☝️ А еще работа с фильтрами станет удобней благодаря гибким операторам. Вы сможете выбирать, по какой логике будут группироваться фильтры, которые вы выбираете, для работы: И либо ИЛИ.\n\n![Announcements!](/static/images/announcements/new_filters/ru3.gif)\n");

/***/ }),

/***/ "+p6j":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("В ваших акаунтах вже доступні нові можливості для роботи з потоком згадувань та аналітикою! Щоб зробити її легшою та продуктивнішою, ми створили для вас нові фільтри:\n\n-   **Фільтр по віку автора:** з його допомогою ви зможете задати діапазон потрібного віку авторів постів. Наприклад, подивитися дописи всіх авторів старше 18 років або коментарі, які залишили користувачі віком від 20 до 45 років.\n-   **Фільтр по кількості підписників:** тепер ви можете задавати діапазони для аудиторії авторів, наприклад, щоб знаходити різного масштабу інфлюенсерів для маркетингових активностей. Фільтр працює згідно того ж принципу, як і фільтр по віку: ви можете задати точку “від”, “до” та інтервал.\n\n![Announcements!](/static/images/announcements/new_filters/uk1.gif)\n\n-   **Фільтр по посиланню**: допомагає подивитись згадування, які містять конкретні посилання на окремі розділи сайтів.\n\n![Announcements!](/static/images/announcements/new_filters/uk2.gif)\n\n☝️ А ще робота з фільтрами стане зручнішою завдяки гнучким операторам. Ви зможете обирати, за якою логікою будуть групуватися фільтри, які ви обираєте для роботи: І чи АБО.\n\n![Announcements!](/static/images/announcements/new_filters/uk3.gif)\n");

/***/ }),

/***/ "sFdv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("\nNow in addition to well known old filters, you can filter mentions from API by their tags. Just because, you know, it's handy.\n\nHere are some new mention fields that are returned by our API:\n - PublicationPlace details\n - Author.Age\n - Visual Insights (brands, objects, scenes)\n - Auto Categories\n - Note\n\n API Documentation: https://youscan.docs.apiary.io/#reference/topics/list-topics/list-mentions");

/***/ }),

/***/ "sHEt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вдобавок к уже знакомыим фильтрам, появилась возможность фильтровать упоминания из API по тегам. Потому что это, ну сами понимаете, супер удобно.\n\nИ вот еще новые поля у упоминаний из API\n - Место публикации\n - Возраст автора\n - Визуальные инсайты (бренды, объекты, сцены)\n - Автокатегории\n - Заметки\n\n Документация API: https://youscan.docs.apiary.io/#reference/topics/list-topics/list-mentions");

/***/ }),

/***/ "3uNA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер в доповнення до вже знайомих фільтрів, з'явилася можливість фільтрувати знадування з API по тегах. Тому що це, самі розумієте, супер зручно.\n\nІ ще нові поля в згадуваннях з API.\n - Місце публікації\n - Вік автора\n - Візуальні інсайти (бренди, об'єкти, сцени)\n - Автокатегорії\n - Нотатки\n\n Документація API: https://youscan.docs.apiary.io/#reference/topics/list-topics/list-mentions");

/***/ }),

/***/ "Tp/Q":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We present you some new features related to the processing of the geography of mentions and geographical filters\n\n# Here are some of them:\n\n- Now cities and regions are processed more precisely and for all countries of the world\n- A search by region and city is now available\n- Countries, regions, and cities displayed in the language of the YouScan interface\n- Improved the work of the map in the \"Analytics\" section, now when clicking on the region, an appropriate filter is applied\n\n![Announcements!](/static/images/announcements/new_geo/en.gif)");

/***/ }),

/***/ "rc4p":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляем вам ряд нововведений, связанных с определением географии упоминаний и географическими фильтрами\n\n# Вот кое-что из новенького:\n\n- Теперь города и регионы определяются точнее и для всех стран мира\n- Доступен поиск по регионам и городам\n- Страны, регионы и города отображаются на выбранном вами языке интерфейса YouScan\n- Улучшена работа карты в разделе \"Аналитика\", теперь при клике на регион применяется соответствующий фильтр\n\n![Announcements!](/static/images/announcements/new_geo/ru.gif)");

/***/ }),

/***/ "moeJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляємо вам ряд нововведень, пов'язаних з визначенням географії згадувань і географічними фільтрами\n\n# Ось дещо з новенького:\n\n- Тепер міста і регіони визначаються точніше і для всіх країн світу\n- Доступний пошук по регіонах і містах\n- Країни, регіони і міста відображаються вибраною вами мовою інтерфейсу YouScan\n- Покращено роботу карти в розділі \"Аналітика\", тепер при кліці на регіон застосовується відповідний фільтр\n\n![Announcements!](/static/images/announcements/new_geo/uk.gif)");

/***/ }),

/***/ "SFWi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Changes in historical data collection**\n\nWe renewed the process of collecting historical data to make it easier and more clear.\n\nHow to start historical data collection:\n\n1. Navigate to \"Settings\" and open \"History collection\".\n2. Select the date range for which you want to collect mentions in the calendar and click \"Apply\".\nThe system will automatically start estimating the approximate number of mentions for this period. Wait until this evaluation is finished.\n3. When the evaluation is over, click \"Collect historical data\" to start data collection.\n\n![History collection](/static/images/announcements/new_history_collection_ux/en_local_first_step.gif)\n\nWhen the historical data collection is complete, you will see the status of data collection and the number of mentions saved to your topic 🎉\n\n![Collection results](/static/images/announcements/new_history_collection_ux/en_local_history_collection_result.png)\n\n**Now you can stop data collection 👮‍♀️**\n\nTo stop the history collection process that was started by mistake, just click \"Stop\".\nNote that all mentions that were saved to your topic when data collection was in progress will not get deleted and will remain in your topic.\n\n![Stop history collection](/static/images/announcements/new_history_collection_ux/en_local_stop_history_collection.png)\n\n**Deep history collections counter 📖**\n\nOn the \"Historical data usage\" screen you can find the counter that displays the number of deep history collections available in your account at the moment. \nYou can also check when a new free deep collection is credited.\n\n![History collection usage](/static/images/announcements/new_history_collection_ux/en_local_history_collection_usage.png)\n\n**Tabs for different data collection types ✨**\n\nWe divided the historical data collections by type so that you can evaluate in which topics you have used \"Basic\", \"Deep\", and \"Paid\" data collections in the last 30 days.\n\n**Basic history collection** is a free collection of data that is not over a month old.\n**Deep history collection** is a free collection of data that is more that one month, but less than 12 months old.\nAlso there are all paid data collections that you purchased.\n\nLearn more about historical data collection in the [Knowledge base](https://help.youscan.io/en/articles/461541-history-collection-how-far-back-can-you-monitor-a-topic).\n");

/***/ }),

/***/ "UZR7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Changes in historical data collection**\n\nWe renewed the process of collecting historical data to make it easier and more clear.\n\nHow to start historical data collection:\n\n1. Navigate to \"Settings\" and open \"History collection\".\n2. Select the date range for which you want to collect mentions in the calendar and click \"Apply\".\nThe system will automatically start estimating the approximate number of mentions for this period. Wait until this evaluation is finished.\n3. When the evaluation is over, click \"Collect historical data\" to start data collection.\n\n![History collection](/static/images/announcements/new_history_collection_ux/en_international_first_step.gif)\n\nWhen the historical data collection is complete, you will see the status of data collection and the number of mentions saved to your topic 🎉\n\n![History collection results](/static/images/announcements/new_history_collection_ux/en_international_history_collection_result.png)\n\n**Now you can stop data collection 👮‍♀️**\n\nTo stop the history collection process that was started by mistake, just click \"Stop\".\nNote that all mentions that were saved to your topic when data collection was in progress will not get deleted and will remain in your topic.\n\n![Stop history collection](/static/images/announcements/new_history_collection_ux/en_international_stop_history_collection.png)\n");

/***/ }),

/***/ "oetw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Обновленный процесс сбора истории**\n\nМы обновили процесс сбора ретроспективных данных, чтобы он был еще понятнее и проще.\n\nКак запустить сбор истории:\n\n1. Зайдите в раздел «‎Настройки» и откройте «‎Сбор истории».\n2. Выберите период в календаре и нажмите «Применить».\nДождитесь пока система оценит примерное количество упоминаний за этот период.\n3. Когда оценка завершена, нажмите «Собрать историю» чтобы начать сбор. \n\n![Сбор истории](/static/images/announcements/new_history_collection_ux/ru_local_first_step.gif)\n\nКогда сбор истории завершен, вы увидите статус сбора и количество сохраненных упоминаний 🎉\n\n![Результаты сбора](/static/images/announcements/new_history_collection_ux/ru_local_history_collection_result.png)\n\n**Остановка сбора истории 👮‍♀️**\n\nЕсли вы запустили сбор по ошибке, его можно остановить — для этого нажмите «Остановить». \nУпоминания, которые мы уже успели сохранить во время сбора, не будут удалены и останутся в вашей теме.\n\n![Остановка сбора истории](/static/images/announcements/new_history_collection_ux/ru_local_stop_history_collection.png)\n\n**Счетчик глубоких сборов истории  📖**\n\nНа экране «Использование сборов истории» появился счетчик глубоких сборов. \nВы можете посмотреть количество доступных глубоких сборов в вашем аккаунте и дату когда будет начислен новый сбор.\n\n![Использование сборов истории](/static/images/announcements/new_history_collection_ux/ru_local_history_collection_usage.png)\n\n**Разделение типов сборов истории ✨**\n\nМы разделили сборы по типу, чтобы вы могли оценить по каким темам вы делали «Базовые», «Глубокие» и «Платные» сборы в последние 30 дней.\n\n**Базовый сбор истории** — это бесплатный сбор в рамках последних 30 дней. \n**Глубокий сбор истории** — это бесплатный сбор за период больше месяца от текущей даты, но в рамках последних 12 месяцев. \nОтдельно доступны платные сборы, купленные вами.\n\nПодробнее про сбор истории [в Базе знаний](https://help.youscan.io/ru/articles/461541-как-работает-сбор-истории-и-какие-есть-лимиты).\n");

/***/ }),

/***/ "ILNv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Обновленный процесс сбора истории**\n\nМы обновили процесс сбора ретроспективных данных, чтобы он был еще понятнее и проще.\n\nКак запустить сбор истории:\n\n1. Зайдите в раздел «‎Настройки» и откройте «‎Сбор истории».\n2. Выберите период в календаре и нажмите «Применить».\nДождитесь пока система оценит примерное количество упоминаний за этот период.\n3. Когда оценка завершена, нажмите «Собрать историю» чтобы начать сбор.\n\n![Сбор истории](/static/images/announcements/new_history_collection_ux/ru_international_first_step.gif)\n\nКогда сбор истории завершен, вы увидите статус сбора и количество сохраненных упоминаний 🎉\n\n![Результаты сбора](/static/images/announcements/new_history_collection_ux/ru_international_history_collection_result.png)\n\n**Остановка сбора истории 👮‍♀️**\n\nЕсли вы запустили сбор по ошибке, его можно остановить — для этого нажмите «Остановить». \nУпоминания, которые мы уже успели сохранить во время сбора, не будут удалены и останутся в вашей теме.\n\n![Остановка сбора истории](/static/images/announcements/new_history_collection_ux/ru_international_stop_history_collection.png)\n");

/***/ }),

/***/ "p6pV":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Оновлений процес збору історії**\n\nМи оновили процес збору ретроспективних даних, щоб він став більш зрозумілим і зручним.\n\nЯк запустити збір історії:\n\n1. Перейдіть в розділ «Налаштування» і відкрийте «Збір історії».\n2. Оберіть період дат в календарі і натисніть «Застосувати».\nДочекайтеся поки система оцінить приблизну кількість згадувань за цей період.\n3. Коли оцінка виконана, натисніть «Зібрати історію» щоб почати збір.\n\n![Збір історії](/static/images/announcements/new_history_collection_ux/uk_local_first_step.gif)\n\nКоли збір історії буде завершено, ви побачите статус збору і кількість збережених згадувань, як показано нижче 🎉\n\n![Результати збору](/static/images/announcements/new_history_collection_ux/uk_local_history_collection_result.png)\n\n**Зупинка збору історії 👮‍♀️**\n\nЯкщо ви почали збір історії помилково і вам необхідно зупинити процес — натисніть кнопку «Зупинити».\nЗгадування, які ми вже встигли зберегти під час збору, не будуть видалені і залишаться у вашій темі.\n\n![Зупинка збору історії](/static/images/announcements/new_history_collection_ux/uk_local_stop_history_collection.png)\n\n**Лічильник глибоких зборів історії  📖**\n\nНа екрані «Використання зборів історії» з'явився лічильник глибоких зборів.\nВи можете дізнатися кількість доступних глибоких зборів в акаунті та дату коли буде нараховано новий глибокий збір.\n\n![Використання зборів історії](/static/images/announcements/new_history_collection_ux/uk_local_history_collection_usage.png)\n\n**Розділення типів зборів історії ✨**\n\nМи розділили збори, щоб ви могли оцінити по яким темам ви робили «Базові», «Глибокі» і «Платні» збори в останні 30 днів.\n\n**Базовий збір історії** — безкоштовний збір в рамках останніх 30 днів.\n**Глибокий збір історії** — безкоштовний збір за період більше місяця від поточної дати, але в рамках останніх 12 місяців.\nОкремо доступні платні збори, куплені вами.\n\nДетальніше про збір історії [в Базі знань](https://help.youscan.io/ru/articles/461541-как-работает-сбор-истории-и-какие-есть-лимиты).\n");

/***/ }),

/***/ "EFgG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Оновлений процес збору історії**\n\nМи оновили процес збору ретроспективних даних, щоб він став більш зрозумілим і зручним.\n\nЯк запустити збір історії:\n\n1. Перейдіть в розділ «Налаштування» і відкрийте «Збір історії».\n2. Оберіть період дат на календарі і натисніть «Застосувати».\nДочекайтеся поки система оцінить приблизну кількість згадувань за цей період.\n3. Коли оцінка виконана, натисніть «Зібрати історію» щоб почати збір.\n\n![Збір історії](/static/images/announcements/new_history_collection_ux/uk_international_first_step.gif)\n\nКоли збір історії буде завершено, ви побачите статус збору і кількість збережених згадувань, як показано нижче 🎉\n\n![Результати збору](/static/images/announcements/new_history_collection_ux/uk_international_history_collection_result.png)\n\n**Зупинка збору історії 👮‍♀️**\n\nЯкщо ви почали збір історії помилково і вам необхідно зупинити процес — натисніть кнопку «Зупинити».\nЗгадування, які ми вже встигли зберегти під час збору, не будуть видалені і залишаться у вашій темі.\n\n![Зупинка збору історії](/static/images/announcements/new_history_collection_ux/uk_international_stop_history_collection.png)\n");

/***/ }),

/***/ "NRJm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("If you want to change something in the rule, but you don't want to delete the rule and create filters again. Now you can make it easier!\n\n1. Click on the title of the rule in the settings. By clicking, you will go to the mention stream filtered by this rule.\n\n2. Now in the filters, clean up what you want to change. Pre-copying if needed.\n\n3. Add new filters or modified search query. And re-create rule by your filters as\na new one.\n\n4. Now return to the rules list and remove the old unnecessary rule. So that data on it is not processed.\n\n![Announcements!](/static/images/announcements/new_rules/img_click_rules.png)\n");

/***/ }),

/***/ "wpKM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Если нужно изменить что-то в правиле, но вы не хотите удалять его и создавать фильтры заново. Теперь можно сделать проще! \n\n1. Кликаете на название правила в настройках. По клику вы перейдете в поток упоминаний, отфильтрованный по этому правилу.\n\n2. Теперь в фильтрах убираем то что хотим изменить, предварительно скопировав если нужно. \n\n3. Добавляем новые фильтры или измененный поисковый запрос. И создаем правило заново по вашим фильтрам, как новое.\n\n4. Теперь возвращаемся в список правил и удаляем старое не нужное правило. Чтобы данные по нему не обрабатывались.\n\n\n![Announcements!](/static/images/announcements/new_rules/img_click_rules.png)\n");

/***/ }),

/***/ "1Qbr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Якщо потрібно змінити щось у правилі, але ви не хочете видаляти його і створювати фільтри заново. Тепер можна зробити простіше!\n\n1. Клікаєте на назву правила в налаштуваннях. По кліку ви перейдете в потік згадок, відфільтрований за цим правилом.\n\n2. Тепер у фільтрах прибираємо те що хочемо змінити, попередньо скопіювавши якщо потрібно.\n\n3. Додаємо нові фільтри або змінений пошуковий запит. І створюємо правило заново по вашим фільтрам, як нове.\n\n4. Тепер повертаємося до списку правил і видаляємо старе непотрібне правило. Щоб дані по ньому не оброблялися.\n\n![Announcements!](/static/images/announcements/new_rules/img_click_rules.png)\n");

/***/ }),

/***/ "3OWs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("On February 26, we added +10K news sources that publish articles in Spanish worldwide: from Mexico and Argentina to Spain.\n\n![Announcements!](/static/images/announcements/news_in_spanish/uk_ru_en.png)\n\nIf you are interested in such mentions, you do not need to turn on anything extra. These sources work by default. Just [check the filters in the topic](https://help.youscan.io/en/articles/3452475-how-to-set-up-filters-for-a-new-youscan-topic) 😉");

/***/ }),

/***/ "DvNL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("26 февраля мы добавили +10000 новостных сайтов на испанском языке со всего мира: от Мексики и Аргентины до Испании.\n\n![Announcements!](/static/images/announcements/news_in_spanish/uk_ru_en.png)\n\nЕсли вам интересны такие упоминания, ничего не нужно включать дополнительно. Эти источники работают по умолчанию. Только [проверьте фильтры в теме](https://help.youscan.io/ru/articles/3452475-%D0%BA%D0%B0%D0%BA-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B8%D1%82%D1%8C-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80-%D0%BF%D1%80%D0%B8-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B8-%D1%82%D0%B5%D0%BC%D1%8B-%D0%B2-youscan) 😉");

/***/ }),

/***/ "9Drb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("26 лютого ми додали +10000 новинних сайтів іспанською мовою з усього світу: від Мексики і Аргентини до Іспанії.\n\n![Announcements!](/static/images/announcements/news_in_spanish/uk_ru_en.png)\n\nЯкщо вам цікаві такі згадування, вмикати щось додатково не потрібно. Ці джерела включені за замовчуванням. Тільки [перевірте фільтри у темі](https://help.youscan.io/ru/articles/3452475-%D0%BA%D0%B0%D0%BA-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B8%D1%82%D1%8C-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80-%D0%BF%D1%80%D0%B8-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B8-%D1%82%D0%B5%D0%BC%D1%8B-%D0%B2-youscan) 😉");

/***/ }),

/***/ "JtNl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can setup filters for new topics in the same window where you work with search query. And look at the preview of mentions and dynamics by them. We also changed the actual interface of filters and topic creation, to make your experience easier.\n\nIn the new history collection you can start a deep collection independently, having previously estimated the number of mentions to be collected.\n\nYou can control available deep history collections in the topic settings.\n\n![Announcements](/static/images/announcements/newthemehistory/en.png)");

/***/ }),

/***/ "SKV5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь при создании темы можно настроить фильтры в том же окне, где и поисковый запрос, и сразу увидеть динамику  упоминаний по ним за последний месяц. Также мы изменили само отображение фильтров и создания темы, чтобы вам было удобнее.\n\nВ обновленном сборе истории, вы можете самостоятельно запустить глубокий сбор, предварительно оценив количество упоминаний в нем.\n\nКонтролировать число доступных глубоких сборов вы теперь можете прямо в настройках вашей темы.\n\n![Announcements](/static/images/announcements/newthemehistory/ru.png)");

/***/ }),

/***/ "SfxI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер при створенні теми можна налаштувати фільтри в тому ж вікні, що і пошуковий запит, і одразу побачити динаміку згадувань за ними за останній місяць. Також ми змінили саме відображення фільтрів і створення теми, щоб вам було зручніше.\n\nВ оновленому зборі історії ви можете самостійно запустити глибокий збір, попередньо оцінивши кількість згадок у ньому.\n\nКонтролювати кількість доступних глибоких зборів ви тепер можете прямо в налаштуваннях теми.\n\n![Announcements](/static/images/announcements/newthemehistory/uk.png)");

/***/ }),

/***/ "wbXI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Net Sentiment Rate or NSR** helps quickly assess the sentiment ratio of mentions in your topic. Moreover, you can compare the NSR of your brand with competitors or other brands in your company.\n\n### **How NSR makes your work easier?**\n\nBefore, you had to compare separately positive, negative, and neutral sentiments to understand sentiment dynamics. Only after this, you could calculate their ratio. Now you can use only one metric that is already calculated for you and available in the Analytics tab and the [Digest](https://help.youscan.io/en/articles/3352522-how-to-download-a-digest).\n\n![Announcements](/static/images/announcements/nsr/en_1.png)\n\n![Announcements](/static/images/announcements/nsr/en_2.png)\n\n### **Which formula do we use to calculate NSR?**\n\n**((Positive - Negative Mentions) / (Positive + Negative mentions)) * 100**\n\nNSR is calculated on a scale from -100 to +100, where 0 means neutral sentiment.\n\nPositive benchmark - NSR is higher than 0;\n\nNegative benchmark - NSR is lower than 0.\n\n![Announcements](/static/images/announcements/nsr/en_3.png)\n\n**We've removed the Passion metric**\n\nPlease note, that NSR replaced the Passion metric. Passion was rarely used and often confused with Engagement. Therefore, we decided to remove it.\n");

/***/ }),

/***/ "RrD1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Net Sentiment Rate** или **NSR** помогает быстро оценить соотношение тональности упоминаний в вашей теме. Также, вы можете анализировать NSR вашего бренда, в сравнении с конкурентами или другими вашими продуктами.\n\n### **Как NSR упрощает вашу работу**\n\nРаньше, для понимания динамики тональности и ее распределения в теме, нужно было по отдельности сравнивать позитивную, негативную и нейтральную тональности, а затем подсчитывать их соотношение. Теперь вы можете использовать  одну метрику, уже посчитанную для вас и доступную во вкладке Аналитика и в [Дайджесте](https://help.youscan.io/ru/articles/3352522-%D0%BA%D0%B0%D0%BA-%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C-%D0%B4%D0%B0%D0%B9%D0%B4%D0%B6%D0%B5%D1%81%D1%82-%D0%B2-%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B5-pdf).\n\n![Announcements](/static/images/announcements/nsr/ru_1.png)\n\n![Announcements](/static/images/announcements/nsr/ru_2.png)\n\n### **По какой формуле считается NSR**\n\n**((Позитивные упоминания - Негативные упоминания) / (Позитивные упоминания + Негативные упоминания)) * 100**\n\nОбратите внимание, что данная метрика считается по шкале от -100 до +100, где 0 – означает нейтральную тональность. \n\nПозитивный показатель NSR – значения больше 0.\n\nНегативный показатель NSR – значения меньше 0.\n\n![Announcements](/static/images/announcements/nsr/ru_3.png)\n\n**Мы убрали метрику Увлеченности**\n\nОбратите внимание, что метрикой NSR мы заменили метрику Увлеченность. Этой метрикой мало пользовались и часто путали с Вовлечением. Поэтому, мы решили ее убрать.");

/***/ }),

/***/ "11Gu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Net Sentiment Rate або NSR** допомагає швидко оцінити співвідношення тональності згадувань у вашій темі. Також ви можете аналізувати NSR вашого бренду у порівнянні з конкурентами або іншими вашими продуктами.\n\n### **Як NSR спрощує вашу роботу?**\n\nРаніше для розуміння динаміки тональності та її розподілу у темі треба було окремо порівнювати позитивну, негативну та нейтральну тональності, а потім підраховувати їх співвідношення. Тепер ви можете використовувати одну метрику, яку вже порахували для вас, вона доступна у вкладці Аналітика та у [Дайджесті](https://help.youscan.io/ru/articles/3352522-%D0%BA%D0%B0%D0%BA-%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C-%D0%B4%D0%B0%D0%B9%D0%B4%D0%B6%D0%B5%D1%81%D1%82-%D0%B2-%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B5-pdf).\n\n![Announcements](/static/images/announcements/nsr/uk_1.png)\n\n![Announcements](/static/images/announcements/nsr/uk_2.png)\n\n### **За якою формулою **рахується NSR?**\n\n**((Позитивні згадування - Негативні згадування)/(Позитивні згадування + Негативні згадування))*100**\n\nЗверніть увагу, що дана метрика рахується по шкалі від -100 до +100, де 0 вказує на нейтральну тональність.\n\nПозитивний показник NSR – значення більше 0;\n\nНегативний показник NSR – значення менше 0.\n\n![Announcements](/static/images/announcements/nsr/uk_3.png)\n\n**Ми прибрали метрику Захоплення**\n\nЗверніть увагу, що метрикою NSR ми замінили метрику Захоплення. Цією метрикою мало користувалися і часто плутали з Залученням. Тому, ми вирішили її прибрати.");

/***/ }),

/***/ "lZmE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now, you can visualize [Net Sentiment Rate (NSR)](https://help.youscan.io/en/articles/4730304-what-is-nsr-and-how-is-it-calculated) on widgets within your dashboards.\n\n💡 NSR helps estimate the sentiment ratio of mentions in your topic. Track your brand's NSR and compare it effortlessly with competitors or other products in your ecosystem.\n\n![Announcements](/static/images/announcements/nsrMetric/en_1.png)\n\nNSR is available for the following widgets: metric, line, and bar. To create an NSR widget, select NSR as your dimension.\n\n![Announcements](/static/images/announcements/nsrMetric/en_2.png)");

/***/ }),

/***/ "MmKP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora, puedes visualizar el [Índice de sentimiento neto (NSR)](https://help.youscan.io/en/articles/4730304-what-is-nsr-and-how-is-it-calculated) en widgets dentro de tus tableros.\n\n💡 El NSR ayuda a estimar la proporción de sentimiento de las menciones de tu tópico. Siga el NSR de tu marca y compáralo facilmente con los competidores u otros productos de tu ecosistema.\n\n![Announcements](/static/images/announcements/nsrMetric/es_1.png)\n\nNSR está disponible para los siguientes widgets: métricas, línea y barras.. Para crear un widget NSR, seleccione NSR como dimensión.\n\n![Announcements](/static/images/announcements/nsrMetric/es_2.png)");

/***/ }),

/***/ "bP9P":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете відслідковувати [Net Sentiment Rate (NSR)](https://help.youscan.io/en/articles/4730304-what-is-nsr-and-how-is-it-calculated) на віджетах у дашбордах.\n\n💡 NSR допомагає оцінити співвідношення тональності згадок у вашій темі. Аналізуйте NSR вашого бренду і порівнюйте його з показниками конкурентів або інших продуктів у вашій екосистемі.\n\n![Announcements](/static/images/announcements/nsrMetric/uk_1.png)\n\nNSR можна аналізувати на таких віджетах: метрика, лінія та гістограма. Щоб створити віджет з NSR, виберіть NSR у якості параметра.\n\n![Announcements](/static/images/announcements/nsrMetric/uk_2.png)");

/***/ }),

/***/ "s+3Z":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("__\"Text recognition on images\"__ is a new feature for collecting and monitoring mentions with:\n\n* text logos;\n\n* hashtags;\n\n* slogans or phrases.\n\n\nThis feature is available with the \"Pro\" tariff plan and higher.\nTo learn more about tariff plans, please visit [our site](https://youscan.io/pricing).\n\n\nYou can create a query by which mentions with recognized text will be collected at the stage of topic creation or in the settings of an existing topic.\n\n\n__To set up a new topic with text recognition:__\n\n1. Create a new topic according to [our instructions](https://help.youscan.io/en/articles/913342-how-to-create-a-new-monitoring-topic);\n\n2. At the \"Text Recognition\" step, enter the query by which you want to search for text on the images, and click on the \"Create Topic\" button.\n\n![Announcements!](/static/images/announcements/ocr/en/createTopic.png)\n\n\n__To add text recognition to an existing topic:__\n\n1. Go to \"Topic Settings\";\n\n2. In the \"Text Recognition\" menu, enter a query by which you want to search for text on images, and click on the \"Apply\" button.\n\n![Announcements!](/static/images/announcements/ocr/en/topicSettings.png)\n\nYou can learn more about __\"text recognition in pictures\"__ at [Knowledge base](https://help.youscan.io/en/articles/3657215-how-text-recognition-works-in-social-media-images).\n\n");

/***/ }),

/***/ "+ou2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("__“Распознавание текста на картинках”__ это новая функция для сбора и мониторинга упоминаний с:\n\n* текстовыми логотипами;\n\n* хэштегами;\n\n* лозунгами или фразами.\n\n\nЭта функция доступна с тарифного плана “Pro” и выше.\nУзнать больше о тарифных планах можно на [нашем сайте](https://youscan.io/ru/pricing).\n\n\nВы можете создать запрос по которому будут собираться упоминания с распознанным текстом на этапе создания темы или в настройках уже существующей темы. \n\n\n__Чтобы настроить новую тему с распознаванием текста:__\n\n1. Создайте новую тему по [нашей инструкции](https://help.youscan.io/ru/articles/913342-создание-темы-часть-2-пошаговая-инструкция);\n\n2. На этапе «‎Распознавание текста» введите поисковый запрос, по которому нужно искать текст на картинках, и нажмите на кнопку «‎Создать тему». \n\n![Announcements!](/static/images/announcements/ocr/ru/createTopic.png)\n\n\n__Чтобы добавить распознавание текста в существующую тему:__\n\n1. Зайдите в «‎Настройки темы» в раздел «‎Общие»;\n\n2. В меню «‎Распознавание текста» введите поисковый запрос, по которому нужно искать текст на картинках, и нажмите на кнопку «‎Применить».\n\n![Announcements!](/static/images/announcements/ocr/ru/topicSettings.png)\n\n\nУзнать больше о __\"распознавании текста на картинках\"__ можно в [Базе знаний](https://help.youscan.io/ru/articles/3657215-как-работает-распознавание-текста-на-изображениях).\n\n");

/***/ }),

/***/ "BzPB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("__\"Розпізнавання тексту на картинках\"__ це нова функція для збору і моніторингу згадувань з:\n\n* текстовими логотипами;\n\n* хештегами;\n\n* гаслами або фразами.\n\n\nЦя функція доступна з тарифного плану \"Pro\" і вище.\nДізнатися більше про тарифні плани можна на [нашому сайті](https://youscan.io/ua/pricing).\n\n\nВи можете створити запит за яком будуть збиратися згадування з розпізнаним текстом на етапі створення теми або в налаштуваннях вже існуючої теми.\n\n\n__Щоб налаштувати нову тему з розпізнаванням тексту:__\n\n1. Створіть нову тему по [нашій інструкції](https://help.youscan.io/ru/articles/913342-создание-темы-часть-2-пошаговая-инструкция);\n\n2. На етапі «Розпізнавання тексту» введіть запит, по якому потрібно шукати текст на картинках, і натисніть на кнопку «Створити тему».\n\n![Announcements!](/static/images/announcements/ocr/uk/createTopic.png)\n\n\n__Щоб додати розпізнавання тексту в існуючу тему:__\n\n1. Зайдіть в «Налаштування теми» в розділ «Загальні»;\n\n2. У меню «Розпізнавання тексту» введіть запит, по якому потрібно шукати текст на картинках, і натисніть на кнопку «Застосувати».\n\n![Announcements!](/static/images/announcements/ocr/uk/topicSettings.png)\n\n\nДізнатися більше про __\"розпізнавання тексту на картинках\"__ можна в [Базі знань](https://help.youscan.io/ru/articles/3657215-как-работает-распознавание-текста-на-изображениях).\n\n");

/***/ }),

/***/ "QNOL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Starting today, you can analyze reach and impressions for your owned data sourced from LinkedIn, Instagram, and Facebook.\n\n![image](/static/images/announcements/ownedPostMetrics/en.png)\n\nOwned data refers to posts, stories, and reels gathered from pages you've authorized in [Social Accounts](https://app.youscan.io/settings/social_accounts) and added as channels. [Learn more](https://help.youscan.io/en/articles/5563235-collection-method-by-channels)");

/***/ }),

/***/ "3L0b":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de hoy, puedes analizar el alcance y las impresiones de tus datos propios en LinkedIn, Instagram y Facebook.\n\n![image](/static/images/announcements/ownedPostMetrics/es.png)\n\nLos datos propios se refieren a publicaciones, historias y reels recopilados de páginas que has autorizado en [Cuentas sociales](https://app.youscan.io/settings/social_accounts) y añadido como canales. [Más información](https://help.youscan.io/es/articles/5563235-metodo-de-recogida-por-canales)");

/***/ }),

/***/ "qtgK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете аналізувати охоплення та перегляди для власних даних, отриманих з LinkedIn, Instagram та Facebook.\n\n![image](/static/images/announcements/ownedPostMetrics/uk.png)\n\nВласні дані — це пости, історії та reels, зібрані зі сторінок, які ви авторизували в [Cоціальних Aкаунтах](https://app.youscan.io/settings/social_accounts) і додали в якості каналів. [Дізнатися більше](https://help.youscan.io/uk/articles/5563235-%D1%81%D0%BF%D0%BE%D1%81%D1%96%D0%B1-%D0%B7%D0%B1%D0%BE%D1%80%D1%83-%D0%BF%D0%BE-%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB%D0%B0%D1%85)");

/***/ }),

/***/ "v2a1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hurray! Starting from June 30, you can analyze visual trends and discussions from Pinterest.\n\n![image](/static/images/announcements/pinterestFirehose/en.png)\n\nMentions from Pinterest get added to the topic if your monitoring object (brand, person, etc.) is mentioned:\n- in the name of the board where the pin was pinned;\n- in the text of pin, comment, or repin;\n- in the text on the image (available with the Visual Data Analysis add-on);\n- as a logo on the image (available with the Visual Data Analysis add-on).");

/***/ }),

/***/ "EB8G":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Більше візуальних інсайтів! Починаючи з 30 червня ви можете аналізувати тренди та шукати дискусії з Pinterest.\n\n![image](/static/images/announcements/pinterestFirehose/uk.png)\n\nЗгадки з Pinterest потрапляють до теми, якщо ваш об’єкт моніторингу (бренд, особа, тощо згадується):\n- у назві дошки, на якій був запінений пін;\n- у тексті піна, комента або репіна;\n- у тексті на зображенні (аддон Visual Data Analysis);\n- в якості логотипу на зображенні (аддон Visual Data Analysis).");

/***/ }),

/***/ "ZBig":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("One more language is now available in YouScan, and it is Brazilian Portuguese.\n\nGo to [My settings](https://app.youscan.io/profile) to change the language.\n\n![image](/static/images/announcements/portugueseBrazilian/en.png)");

/***/ }),

/***/ "uYRz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Un idioma más está ahora disponible en YouScan, y es el portugués de Brasil.\n\nVe a [Mi configuración](https://next.youscan.io/profile) para cambiar el idioma.\n\n![image](/static/images/announcements/portugueseBrazilian/es.png)");

/***/ }),

/***/ "cOYb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We're thrilled to announce a new metric that helps to:\n\n- track how many people have potentially seen mentions of your brand\n- identify the most impactful mentions early\n\nThis is the **Potential Reach,** available starting from Dec 20.\n![image](/static/images/announcements/potentialReach/en1.png)\n**Depending on the website type, we use different information to calculate the Potential Reach:**\n\n- The number of followers of the publication's place for:\n    - posts and reposts from all social networks except for Twitter\n    - posts and reposts from Reddit\n    - posts, reposts, and comments from Telegram\n- The number of followers of the author for posts and comments from Twitter\n- Average monthly visits of the website for the posts from news websites and blogs\n\n**This metric is used everywhere throughout YouScan, so you can:**\n\n- sort mentions by the Potential Reach in the mention stream to find mentions that a wider audience has potentially seen\n![image](/static/images/announcements/potentialReach/en2.png)\n- track changes in the Potential Reach over time in the Analytics tab using Statistics by feature or even create a tailor-made widget in Custom Dashboards to track this metric \n![image](/static/images/announcements/potentialReach/en3.png)\n- work with the Potential Reach in different export formats: API, Webhook, Excel");

/***/ }),

/***/ "7kFA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер у вас є показник, який допомагає:\n\n- відстежити, скільки людей потенційно бачили згадки про ваш бренд\n- завчасно визначити найвпливовіші згадки\n\nНовий показник називається **Потенційне охоплення** і ми визначаэмо його починаючи із 20 грудня.\n![image](/static/images/announcements/potentialReach/uk1.png)\n**Залежно від типу сайту ми використовуємо різну інформацію для розрахунку Потенційного охоплення:**\n\n- Кількість підписників місця публікації для:\n    - постів та репостів з усіх соціальних мереж, крім Twitter\n    - постів та репостів з Reddit\n    - постів, репостів та коментарів з Telegram\n- Кількість підписників автора для постів та коментарів з Twitter\n- Середню місячну кількість відвідувань сайту для постів із новинних сайтів і блогів\n\n**Цей показник використовується скрізь у YouScan, тому ви можете:**\n\n- відсортувати згадки за Потенційним охопленням, щоб знайти згадки, які може побачити ширша аудиторія\n![image](/static/images/announcements/potentialReach/uk2.png)\n- відстежити зміни Потенційного охоплення з плином часу на вкладці «Аналітика» за допомогою функції «Статистика за», або навіть створити спеціальний віджет на дашборді, щоб регулярно моніторити цей показник\n![image](/static/images/announcements/potentialReach/uk3.png)\n- вивантажити Потенційне охоплення у різних форматах експорту: API, Webhook, Excel");

/***/ }),

/***/ "sUky":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Autocategories are a very important filter for advanced YouScan users. Our Aina AI assistant automatically assigns categories to references, which saves you a lot of time searching for relevant mentions.\n\n# We have added new auto categories\n\n* **Giveaway** – contest, promotions in which there are conditions for participation and the winner is determined.\n* **Vacancy** – vacancies, job search messages, resumes/CV.\n* **Public service announcement** – messages about the disappearance or finding of someone or something, with a request to provide information or return for a fee, mentions with a call to support a public initiative,  a warning about fraud, etc.\n\n# The old ones also have changes\n\n* All mentions that classified as Teaser before, now will be Article\n* Charity will be expanded by donations for YouTube channels and streamers\n* Part of the irrelevant promo was moved to Commerce (discounts, promotions)\n* Recipes are renamed to Guidance. Now it includes cooking recipes, health and beauty recipes, housework tips, all kinds of lifehacks and instructions.\n\nAnother major change is that now autocategories are classified relatively to monitoring objects.\n![Announcements!](/static/images/announcements/promo_autocategories/en.png)\n\nWe hope this update helps you work more efficiently with the stream of mentions.\nA complete list of autocategories can be found in the [knowledge base](https://help.youscan.io/en/articles/2193114-auto-categories).\n");

/***/ }),

/***/ "Jqpj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Автокатегории – это очень важный фильтр для продвинутых пользователей YouScan. Наш AI-ассистент Aina автоматически присваивает упоминаниям категории, что сильно экономит ваше время на поиск релевантных упоминаний. \n\n# Мы добавили новые автокатегории\n* **Розыгрыш** – конкурс, розыгрыш, призовые акции, в которых есть  условия участия  и  определяется победитель.\n* **Вакансии** – вакансии, сообщения о поиске работы, резюме\n* **Социальное промо** – сообщения  о пропаже или находке кого-либо или чего-либо, с просьбой  сообщить информацию или вернуть за вознаграждение, упоминания с призывом поддержать общественную инициативу, предупреждение о мошенничестве  и тд. \n\n# Немного изменили старые\n* Все что было раньше Тизером, теперь будет Статьей\n* Благотворительность расширится донатами для ютуб каналов и стримеров\n* Часть нерелевантного промо была вынесена в Коммерцию (скидки, промоакции)\n* Рецепты переименованы в Инструкции. Теперь туда входят рецепты приготовления блюд, рецепты здоровья и красоты, советы по ведению домашнего хозяйства, разного рода лайфхаки и инструкции.\n\nЕще одно существенное изменение, что теперь автокатегории стали определяться относительно объекта мониторинга.\n![Announcements!](/static/images/announcements/promo_autocategories/ru.png)\n\nНадеемся, что это обновление поможет вам эффективнее работать с потоком упоминаний.\nПолный список автокатегорий можно посмотреть в [базе знаний](https://help.youscan.io/ru/articles/2193114-автокатегории).\n");

/***/ }),

/***/ "34Aj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Автокатегорії - це дуже важливий фільтр для просунутих користувачів YouScan. Наш AI-асистент Aina автоматично призначає згадуванням категорії, що істотно економить ваш час на пошук релевантних згадувань.\n\n# Ми додали нові автокатегорії\n\n* **Розіграш** – конкурс, розіграш, призові акції, в яких є умови участі та визначається переможець.\n* **Вакансії** – вакансії, повідомлення про пошук роботи, резюме.\n* **Соціальне промо** – повідомлення про зникнення або знахідку кого-небудь або чого-небудь, з проханням повідомити інформацію або повернути за винагороду, згадки із закликом підтримати громадську ініціативу, попередження про шахрайство та інше.\n\n# Трохи змінили існуючі\n\n* Все що було раніше Тізером, тепер буде Статтею\n* Благодійність розшириться донатами для ютуб каналів і стримерів\n* Частина нерелевантного промо була винесена в Комерцію (знижки, промоакції)\n* Рецепти перейменовані в Інструкції. Тепер туди входять рецепти приготування страв, рецепти здоров’я та краси, поради з ведення домашнього господарства, різні лайфхаки та інструкції.\n\nЩе одна важлива зміна - тепер автокатегорії стали визначатися відносно об'єкта моніторингу.\n![Announcements!](/static/images/announcements/promo_autocategories/uk.png)\n\nСподіваємося, що це оновлення допоможе вам ефективніше працювати з потоком згадувань.\nПовний список автокатегорій можна подивитися в [базі знань](https://help.youscan.io/ru/articles/2193114-автокатегории).");

/***/ }),

/***/ "Xovi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Previously when you created a topic and used filters, they were applied to the whole query. But from now on you can use new advanced operators that work as **filters for a specific part of your query** only!This will help you increase the precision and avoid irrelevant mentions. These operators are:\n\n- *country:* - collects mentions only from a specific country;\n- *language:* - collects mentions in a specific language only;\n- *source:* - helps you monitor only certain sources *(e.g.: Facebook, Instagram, TikTok etc)*;\n- *sourceType:* - helps you monitor specific types of sources *(e.g.: social networks, news, blogs, forums etc)*;\n- *postType:* - helps you collect only specific types of posts *(e.g.: comments, posts, reposts, extended reposts)*;\n- *contentType:* - helps you collect only specific type of content *(e.g.: images)*\n\nFor example, you are interested in collecting mentions about Spotify. The challenge is:\n- you need to monitor only TikTok, but not the rest of social networks;\n- you also want to collect every review from various platforms.\n\nPreviously this task would be impossible to achieve with the filters (as you can’t use “Source by type” and “Source by name” filters at the same time), but now the new *source:* and *sourceType:* advanced operators come in handy:\n\n![Announcements!](/static/images/announcements/queryComplexOperators/en1.png)\n\n💡 To make it easier to find the necessary advanced operators, we have added hints that can be activated by pressing CTRL + Space for Windows or Option + Space for macOS\n\n![Announcements!](/static/images/announcements/queryComplexOperators/en1.png)\n");

/***/ }),

/***/ "5fuh":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Раніше, коли ви створювали тему та застосовували фільтри, вони впливали на весь пошуковий запит. Але відтепер ви можете використовувати нові розширені оператори, які працюють як **фільтри лише для певної частини пошукового запиту**! Ці оператори:\n\n- *country:* - збирає згадування лише з конкретної країни;\n- *language:* - збирає згадування лише певною мовою;\n- *source:* - допомагає моніторити лише певні джерела (*наприклад,* *Facebook, Instagram, TikTok і т.п.)*;\n- *sourceType:* - допомагає моніторити лише певні типи джерел *(наприклад, соціальні мережи, ЗМІ, блоги, форуми і т.п.)*;\n- *postType:* - допомагає збирати лише певні типи постів *(наприклад, коментарі, пости, репости, доповнені репости)*;\n- *contentType:* - допомагає збирати лише певний тип контенту *(наприклад, зображення)*.\n\nРозглянемо такий приклад: вам потрібно збирати згадування про Spotify. Є певні обмеження:\n- потрібно моніторити лише TikTok з усіх соціальних мереж;\n- також потрібно збирати відгуки з різних платформ.\n\n\nРаніше такий запит було б неможливо створити за допомогою фільтрів (оскільки не можна застосувати одночасно фільтр “За типом джерела” і фільтр “За назвою джерела). Тепер ви з легкістю вирішите цю задачу з розширеними операторами *source:* та *sourceType:*\n\n![Announcements!](/static/images/announcements/queryComplexOperators/en1.png)\n\n💡 Щоб вам було легко використовувати нові розширені оператори, ми додали підказки, які можна активувати натисканням клавіш CTRL + Пробіл для Windows або Option + Пробіл для macOS.\n\n![Announcements!](/static/images/announcements/queryComplexOperators/en2.png)\n");

/***/ }),

/***/ "jr/T":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can use up to 10,000 characters in search queries. Yay!\nWe extended the possible length of queries from 4,000 to 10,000 for newly created topics and those already created in your account.");

/***/ }),

/***/ "gq04":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, puedes utilizar hasta 10.000 caracteres en las consultas de búsqueda. ¡Sí!\nHemos ampliado la longitud posible de las consultas de 4.000 a 10.000 para los temas de nueva creación y los ya creados en tu cuenta.");

/***/ }),

/***/ "KGlv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ура! Відтепер ви можете використовувати до 10 000 символів у пошукових запитах.\nМи збільшили можливу довжину запитів з 4 000 до 10 000 для новостворених тем і вже створених у вашому акаунті.");

/***/ }),

/***/ "B0IB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Meet reinvented email reports with the customizations you asked for:**\n\n📎 **Connect with the World**: Add multiple recipients to a single report, including external recipients who don't have access to your YouScan account.\n\n⏳ **Perfect Timing**: Customize the delivery time for each report to fit your schedule perfectly. Plus, for our weekly reports, you can choose the specific day they land in your inbox.\n\n🔎 **Zoom In on the Details**: Need reports for a specific timeframe? No problem! Our enhanced feature lets you create reports for the duration you desire. From 1 pm to 4 pm? You got it!\n\n![Announcements!](/static/images/announcements/recurrentEmailReports/en.gif)\n\nYou can find all recurrent reports in the Notifications tab in your topic. There you can create, edit and delete reports.\n\n![Announcements!](/static/images/announcements/recurrentEmailReports/en.png)\n\nCheck our [Knowledge Base](https://help.youscan.io/en/articles/803456-email-reports) to learn more about our Email reports capabilities.\n");

/***/ }),

/***/ "Sif2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Conoce los informes de correo electrónico reinventados con las personalizaciones que pediste:**\n\n📎 **Conéctese con el mundo**: Añade varios destinatarios a un mismo informe, incluidos destinatarios externos que no tengan acceso a tu cuenta de YouScan.\n\n⏳ **Plazos perfectos**: Personaliza la hora de entrega de cada informe para que se ajuste perfectamente a tu horario. Además, en el caso de nuestros informes semanales, puedes elegir el día concreto en el que llegan a tu bandeja de entrada.\n\n🔎 **Zoom en los detalles**: ¿Necesitas informes para un periodo de tiempo concreto? No hay problema. Nuestra función mejorada te permite crear informes para la duración que desees. ¿De 13:00 a 16:00? De acuerdo.\n\n![Announcements!](/static/images/announcements/recurrentEmailReports/es.gif)\n\nPuede encontrar todos los informes recurrentes en la pestaña Notificaciones de su tema. Allí puedes crear, editar y eliminar informes.\n\n![Announcements!](/static/images/announcements/recurrentEmailReports/es.png)\n\nConsulte nuestra [Base de conocimientos](https://help.youscan.io/en/articles/803456-email-reports) para obtener más información sobre nuestras funciones de informes de correo electrónico.\n");

/***/ }),

/***/ "d8FH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Зустрічайте оновлені email-сповіщення з тими налаштуваннями, які ви просили:**\n\n📎 **На зв'язку зі світом**: Додайте декількох одержувачів до одного звіту, включаючи зовнішніх одержувачів, які не мають доступу до вашого акаунта YouScan.\n\n⏳ **Зручний час**: Налаштуйте час доставки кожного звіту так, щоб він ідеально відповідав вашому графіку. Крім того, для наших щотижневих звітів ви можете вибрати конкретний день, коли вони потраплять до вашої поштової скриньки.\n\n🔎 **Додайте деталі**: Потрібні звіти за певний проміжок часу? Без проблем! Наша розширена функція дозволяє створювати звіти за потрібний період часу. З 13:00 до 16:00? Будь ласка!\n\n![Announcements!](/static/images/announcements/recurrentEmailReports/uk.gif)\n\nУсі регулярні звіти можна знайти на вкладці Сповіщення у вашій темі. Там ви можете створювати, редагувати та видаляти звіти.\n\n![Announcements!](/static/images/announcements/recurrentEmailReports/uk.png)\n\nПерегляньте нашу [Базу знань](https://help.youscan.io/en/articles/803456-email-reports), щоб дізнатися більше про можливості звітів на email.\n");

/***/ }),

/***/ "DIB7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Starting from December, you have full access to new mentions from [Reddit](https://www.reddit.com/) and [Quora](https://www.quora.com/).\n\nWe collect the following data for you:\n\n- posts and comments from Reddit\n- questions, answers, and comments from Quora\n\n![Announcements!](/static/images/announcements/reddit_and_quora/en.png)\n\nPlease be aware that this data is available only for real-time collection.\n\nMentions from Reddit cannot be shared via any kind of integration with a third-party service or via e-mail.\n");

/***/ }),

/***/ "h9z2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("С декабря у вас есть полный доступ к новым упоминаниям с [Reddit](https://www.reddit.com/) и [Quora](https://www.quora.com/).\n\nМы собираем для вас:\n\n- сообщения и комментарии c Reddit\n- вопросы, ответы и комментарии с Quora\n\n![Announcements!](/static/images/announcements/reddit_and_quora/en.png)\n\n☝️ Данные с Reddit и Quora доступны только в регулярном сборе, для этих источников не поддерживается сбор истории.\n\nС упоминаниями из Reddit можно работать только в YouScan. Ими нельзя поделиться по почте или через интеграции со сторонними системами. ");

/***/ }),

/***/ "TZX5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("З грудня у вас є повний доступ до нових згадок з [Reddit](https://www.reddit.com/) і [Quora](https://www.quora.com/).\n\nМи збираємо для вас:\n\n- повідомлення та коментарі з Reddit\n- питання, відповіді та коментарі з Quora\n\n![Announcements!](/static/images/announcements/reddit_and_quora/en.png)\n\n☝️ Дані з Reddit та Quora доступні тільки в регулярному зборі, збір історії для цих джерел не підтримується.\n\nЗі згадками з Reddit можна працювати тільки в YouScan. Ними не можна поділитися через інтеграції зі сторонніми системами або відправити поштою.");

/***/ }),

/***/ "nPSa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Let us present you changes we have made to our reports.\n\nIn \"Mentions\" and \"Mentions with full text\" reports we have added following columns:\n- \"Image URL\" \n- \"Assigned to\"  \n- \"Processed\" \n\nNew columns are located on the right, just before columns with tags.\n\nWe have also added tonality statitics for sources in the \"Analytics\" report.\n\n![Announcements!](/static/images/announcements/report_columns/en.png)\n");

/***/ }),

/***/ "lG2h":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Представляем вам ряд изменений в наших отчетах.\n\nВ отчетах \"Упоминания\" и \"Упоминания с полным текстом\" мы добавили такие колонки:\n- \"URL изображения\" \n- \"Назначено\"  \n- \"Обработано\" \nНовые колонки расположены справа, перед колонками с тегами.\n\nМы также добавили в отчет \"Аналитика\" статистику по тональности в рамках источников.\n\n![Announcements!](/static/images/announcements/report_columns/ru.png)\n");

/***/ }),

/***/ "Y54P":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Презентуємо вам ряд змін в наших звітах.\n\nУ звітах \"Згадування\" та \"Згадування з повним текстом\" ми додали такі колонки:\n- \"URL зображення\" \n- \"Призначено\"  \n- \"Опрацьоване\" \nНові колонки розташовані справа, перед колонками з тегами.\n\nУ звіт \"Аналітика\" ми додали статистику по тональності в рамках джерел.\n\n![Announcements!](/static/images/announcements/report_columns/uk.png)\n");

/***/ }),

/***/ "2lCO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on with the help of Saved Filters, you won't need to spend time selecting the same filters every time you work with the mention stream. Just save them as a group and turn them on with one click whenever you need!\n\nTo use Saved filters:\n\n- Choose the necessary filters for the mention stream and click \"Apply\"\n- Once you're back in the mention stream, click on the bookmark icon and press \"Save filter\". Give the filter group a name and click on \"Create filter\".\n\n![Announcements!](/static/images/announcements/savedFilters/en1.gif)\n\n- Anytime you need to reuse the same group of filters, just click on the bookmark icon and the name of the Saved filters - the filters in it will be applied to the mentions stream.\n\n![Announcements!](/static/images/announcements/savedFilters/en2.gif)\n\n💡 Please note that filters are saved on a topic level, and only the users who have access to the topic can use the saved filters.\n");

/***/ }),

/***/ "YFBY":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер з допомогою Збережених фільтрів вам не потрібно буде витрачати час, вмикаючи одні й ті ж фільтри, коли ви працюєте з потоком згадувань. Просто збережіть їх як групу ти вмикайте її одним кліком, коли потрібно!Щоб скористатись Збереженими фільтрами:\n\n- Оберіть потрібні для потоку згадувань фільтри та натисніть \"Застосувати\".\n- Ви опинитесь в потоці згадувань. Тут натисніть на зображення закладки та \"Зберегти фільтри\". Впишіть назву групи фільтрів, натисніть на \"Створити фільтр\".\n\n![Announcements!](/static/images/announcements/savedFilters/uk1.gif)\n\nКоли в майбутньому вам знадобиться ця група фільтрів, просто натисніть на зображення закладки і назву яку ви дали їй - фільтри з цієї групи буде автоматично застосовано в потоці згадувань.\n\n- Коли в майбутньому вам знадобиться ця група фільтрів, просто натисніть на зображення закладки і назву яку ви дали їй - фільтри з цієї групи буде автоматично застосовано в потоці згадувань.\n\n![Announcements!](/static/images/announcements/savedFilters/uk2.gif)\n\n💡 Будь ласка, зверніть увагу, що фільтри зберігаються на рівні теми. Це означає, що всі користувачі з доступами до теми можуть користуватись збереженими фільтрами.\n");

/***/ }),

/***/ "XQGH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We regularly improve our product, taking into account the feedback and suggestions from our users. This time we've rebuilt our sentiment detection model to significantly improve accuracy. To do this, we've applied the new technology in deep learning AI (the similar technology that Google started using just a month ago).\n\n# How the sentiment detection improved:\n1. Aina better understands the context and object against which we detect sentiment.\n\n2. It takes into account the original post and comments.\n\n![Announcements!](/static/images/announcements/sentiment_bert/en.png)\n\n# ⚠️Important\nThe new model is working on your topics since December 1. The ratio of negative, positive, and neutral tonality may change compared to previous days, consider this in analytical research and reports.\n\nWe expect that now there will be fewer errors. But if you notice an error in sentiment detection - feel free to correct it. This way you will help the model to learn how to detect sentiment for your topics.\n\nYou can read more about Google’s new deep learning model in [their blog.](https://www.blog.google/products/search/search-language-understanding-bert/)\n\n");

/***/ }),

/***/ "YRkN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мы регулярно улучшаем наш продукт, учитывая отзывы и предложения наших пользователей. В этот раз мы переобучили нашу модель по определению тональности упоминания и улучшили ее точность. Для этого мы применили новую технологию в глубоком обучении АI  (подобную технологию, Google начали использовать в прошлом месяце).\n\n# Как улучшилось определение тональности:\n1. Aina стала лучше понимать, относительного какого объекта в тексте нужно определить тональность\n\n2. Учитывается оригинальный пост и комментарии к нему.\n\n![Announcements!](/static/images/announcements/sentiment_bert/ru.png)\n\n# ⚠️Важно\nС 1 декабря на ваших темах работает обновленный алгоритм определения тональности. Для тем, в которых вы используете только автоматическую тональность без ручной разметки, соотношение негативной, позитивной и нейтральной тональности может поменяться в сравнении с предыдущими днями. Учитывайте это в аналитических срезах и отчетах.\n\nОжидаем, что теперь ошибок в разметке станет еще меньше. Но если вы заметили ошибку тональности – исправьте ее на правильную. Это поможет AI модели научиться определять тональность правильно именно для вашей темы. \n\nПодробнее про новую технологию для глубокого обучения, вы можете узнать [в блоге Google.](https://www.blog.google/products/search/search-language-understanding-bert/)\n\n");

/***/ }),

/***/ "7fnz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми регулярно вдосконалюємо наш продукт, враховуючи відгуки та пропозиції наших користувачів. Цього разу ми перенавчили нашу модель визначення тональності згадувань і покращили її точність. Для цього ми застосували нову технологію в глибокому навчанні АI (подібну технологію, Google почали використовувати в минулому місяці).\n\n# Що покращилося у визначення тональності:\n1. Aina стала краще розуміти, відносного якого об’єкта в тексті потрібно визначити тональність.\n\n2. Враховується оригінальний пост і коментарі до нього.\n\n![Announcements!](/static/images/announcements/sentiment_bert/uk.png)\n\n# ⚠️Важливо\nЗ 1 грудня на ваших темах працює оновлений алгоритм визначення тональності. Для тем, у яких ви використовуєте тільки автоматичну тональність без ручної розмітки, співвідношення негативної, позитивної і нейтральної тональності може змінитися в порівнянні з попередніми днями. Враховуйте це в аналітичних зрізах і звітах.\n\nОчікуємо, що тепер помилок у розмітці стане ще менше. Але якщо ви помітили помилку тональності - виправте її на правильну. Це допоможе AI моделі навчитися визначати тональність правильно саме для вашої теми.\n\nДетальніше про нову технологію глибокого навчання, ви можете дізнатися[у блозі Google.](https://www.blog.google/products/search/search-language-understanding-bert/)\n\n");

/***/ }),

/***/ "5K50":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("No more struggle! From now on, you can easily detect which pieces of news gained more attention and, therefore, may impact your brand more.\n\nWe’ve added a new engagement metric for news articles based on the popularity of those articles on Facebook (shares, reactions, and comments).\n\nYou can check out this metric directly on the news mentions.\n\n![Announcements!](/static/images/announcements/sharesEngagementFacebook/en.png)\n\nThese metrics are also now used everywhere across the system (in topics, dashboards), so for example, you can:\n\n- sort news by engagement or comments to see more popular ones\n- check the distribution of engagement for news over time on graphs\n\nThis data is also available in all types of exports: Excel, API, Webhook, etc.");

/***/ }),

/***/ "05gE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете легко визначити, які новини привернули більше уваги і, отже, можуть мати більший вплив на ваш бренд.\n\nМи додали метрику залучення для новин на основі популярності статей у Facebook (поширення, реакції та коментарі).\n\nВи можете побачити ці показники у потоці згадувань на згадуванях із новинних сайтів.\n\n![Announcements!](/static/images/announcements/sharesEngagementFacebook/uk.png)\n\nЦі показники використовуються у всіх частинах YouScan (в темах, дашбордах). Наприклад, ви можете:\n\n- відсортувати новини за залученням або коментарями, щоб побачити більш популярні\n- перевірити на графіках розподіл залучення для новин в часі\n\nЦі дані також доступні в усіх типах експорту: Excel, API, Webhook тощо.");

/***/ }),

/***/ "MD/D":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on when checking the mentions stream in your topics, you can easily find posts that are not complete duplicates but have very similar content or phrases. You can use this:\n\n- to find irrelevant or the most important mentions quicker;\n- to mark the most relevant posts with tags;\n- to identify the posts to be moved to bin in a mere second.\n\nTo find similar mentions:\n\n- Open your mentions stream in the topic;\n- Click on “Found similar mentions” icon under the mention\n    \n    ![Announcements!](/static/images/announcements/similarMentions/en.gif)\n    \n- See the magic outside of Hogwarts happen 🪄");

/***/ }),

/***/ "zTPL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер працюючи з потоком згадувань в ваших темах, ви можете з легкістю знаходити пости, які не є повними дублікатами, але мають дуже схожий контент або фрази. Вам це може знадобитись: \n\n- щоб знаходити нерелевантні або найважливіші згадування швидше;\n- щоб помічати релевантні пости тегами;\n- щоб за секунду визначати пости, які треба перемістити в корзину.\n\nЩоб знайти схожі згадування:\n\n- Відкрийте потік згадувань в вашій темі;\n- Натисніть на іконку “Знайдено схожі згадування” під згадуванням\n    \n    ![Announcements!](/static/images/announcements/similarMentions/uk.gif)\n\n- Побачте на власні очі, що магія поза Хоґвортсом існує 🪄");

/***/ }),

/***/ "CnIp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now when you create Excel mentions report, it will contain not only usual information about each post (time and place of the mention, details about its author etc) but also “Aspects”, “Subjects” and “Autocategory” columns - YouScan smart features.\n\nPreviously you could find aspect, subject and autocategory of any post only in the mentions stream.\nNow if the system assigns any of these smart features to the mention you will see this in the report as well.");

/***/ }),

/***/ "CnC2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь, создав Excel отчет по упоминаниям, вы найдете в нем не только уже привычную информацию по каждому из постов (дату и место публикации, информацию об авторе и тд), но и столбцы “Аспекты”, “Тематика” и “Автокатегория” - умные функции системы YouScan.\n\nРаньше вы могли увидеть аспект, тематику или автокатегорию поста только в потоке упоминаний в системе.\nТеперь, если посту присвоились одна или несколько из этих умных функций, информация о них отобразится в отчете.");

/***/ }),

/***/ "U/Mx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер коли ви створюєте Excel звіт по згадуванням, ви знайдете в ньому не тільки вже звичну інформацію по кожному з дописів (дату та місце публікаціЇ, інформацію про автора і тд), а й стовпчики “Аспекти”, “Тематика” й “Автокатегорія” - розумні функції системи YouScan.\n\nРаніше ви могли побачити аспект, тематику й автокатегорію допису лише в потоці згадувань в системі.\nТепер, якщо допису присвоїлись одна чи декілька з цих розумних функцій, інформація про них відобразиться у звіті.");

/***/ }),

/***/ "4ygw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Save up to 50% of your time on manual mentions tagging in your topics. Instead, you can use the new Smart tags feature, which will tag mentions automatically based on AI algorithms.\n\n**How does it work?**\n\nMachine learning model trains on mentions that were tagged in a topic manually and learns to tag new ones. Thus, the model can add tags to your mentions automatically, and you won't need to do this manually anymore.\n\n![Announcements!](/static/images/announcements/smartTags/en.gif)\n\n☝️Smart Tags feature is available as a paid add-on for clients on Pro and higher plans.\n\nTo turn on the feature, please contact us at [support@youscan.io](mailto:support@youscan.io). Learn more about the feature settings in our [Knowledge Base.](https://help.youscan.io/en/articles/4730314)\n");

/***/ }),

/***/ "IhKu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Сэкономьте до 50% времени на ручной обработке упоминаний в ваших темах с помощью новой функции Умные теги. Она автоматически разметит упоминания на основе алгоритмов искусственного интеллекта.\n\n**Как это работает?**\n\nМодель машинного обучения анализирует данные, которые уже были размечены в теме вручную, и учится на них обрабатывать новые. Таким образом, модель может проставлять  теги за вас — вам больше не нужно будет делать это вручную.\n\n![Announcements!](/static/images/announcements/smartTags/ru.gif)\n\n☝️ Умные теги доступны начиная с тарифного плана Pro и выше за отдельную плату.\n\nЧтобы включить эту функцию напишите нам на support@youscan.io. Детальнее о том как проходит настройка можете узнать в [Базе Знаний](https://help.youscan.io/ru/articles/4730314-%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D1%83%D0%BC%D0%BD%D1%8B%D0%B5-%D1%82%D0%B5%D0%B3%D0%B8-%D0%B8-%D0%BA%D0%B0%D0%BA-%D0%B8%D1%85-%D0%B2%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C).");

/***/ }),

/***/ "Qy4S":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Зекономте до 50% часу на ручній обробці згадувань у ваших темах за допомогою нової функції Розумні теги. Вона автоматично розмітить згадування на основі алгоритмів штучного інтелекту.\n\n**Як це працює?**\n\nМодель машинного навчання аналізує данні, які вже були розмічені у темі вручну, та вчиться на них обробляти нові. Таким чином, вона може проставляти теги за вас — вам більше не треба буде робити це вручну.\n\n![Announcements!](/static/images/announcements/smartTags/uk.gif)\n\n☝️Розумні теги достпуні починаючи з тарифного плану Pro та вище за окрему плату.\n\nЩоб включити цю функцію напишіть нам на support@youscan.io. Детальніше про її налаштування можна почитати в нашій [Базі Знань.](https://help.youscan.io/ru/articles/4730314-%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D1%83%D0%BC%D0%BD%D1%8B%D0%B5-%D1%82%D0%B5%D0%B3%D0%B8-%D0%B8-%D0%BA%D0%B0%D0%BA-%D0%B8%D1%85-%D0%B2%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C)");

/***/ }),

/***/ "Lhs4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("*Smart Alerts are e-mail notifications about important mentions and events in your monitoring topics.*\n\n# How Smart Alerts improved:\n1. Work a lot better for small and large topics.\n2. Detecting mentions from influencer authors have improved.\n3. The feedback loop for Influence & Engagement alerts was updated (it is in every Smart Alerts e-mail). Your answer will help us make the algorithm better for you. 🤗\n\nP.S. Now, Aina is responsible for sending Smart Alerts, and thanks to this, they have become much smarter.\n\n# How to enable Smart Alerts\n1. Go to the Notifications tab.\n2. Toggle to receive Smart Alerts as shown below:\n![Announcements!](/static/images/announcements/smartalerts/en.png)\n\n # Remember that there are four types of Smart Alerts:\n- post from an influencer;\n- mention is very rapidly gaining engagement (likes, comments, reposts);\n- a sudden spike in mentions, especially negative-sentiment ones;\n- active discussion in your topic.");

/***/ }),

/***/ "SkcE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("*Smart Alerts - это e-mail уведомления о важных упоминаниях и событиях в вашей теме.*\n\n# Что изменилось в работе Smart Alerts:\n1. Намного лучше работают для маленьких и больших тем. \n2. Улучшился алгоритм определения упоминания от важного автора.\n3. Обновился опрос для обратной связи (он есть в каждом письме Smart Alerts). Выберите, насколько полезным был Smart Alert, чтобы мы улучшили алгоритм отправки для вас. 🤗\n\nP.S. Теперь за отправку Smart Alerts ответственна Aina, и благодаря этому, они стали намного более Smart.\n\n# Как включить отправку Smart Alerts: \n1. Перейдите во вкладку “Уведомления”;\n2. Включите Smart Alerts, кликнув на переключатель справа.\n![Announcements!](/static/images/announcements/smartalerts/ru.png)\n\n# Напомним, что есть 4 типа Smart Alerts:\n- пост влиятельного автора по вашей теме мониторинга;\n- упоминание быстро набирает вовлечение (лайки, комментарии, репосты);\n- резко увеличилось количество упоминаний, особенно негативных;\n- активная дискуссия по вашей теме.\n \n\n");

/***/ }),

/***/ "WkIz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("*Smart Alerts - це e-mail сповіщення про важливі згадування і події у вашій темі.*\n\n# Що змінилося у роботі Smart Alerts:\n1. Набагато краще працюють для маленьких і великих тем.\n2. Покращився алгоритм визначення згадування від впливового автора.\n3. Оновлене опитування для зворотного зв'язку (він є в кожному листі Smart Alerts). Оберіть, наскільки корисним був Smart Alert, щоб ми поліпшили алгоритм відправки для вас. 🤗\n\nP.S. Тепер за відправку Smart Alerts відповідальна Aina, і завдяки цьому, вони стали ще більш Smart.\n\n# Як увімкнути Smart Alerts для вашої теми:\n1. Перейдіть у вкладку \"Cповіщення\";\n2. Увімкніть Smart Alerts, клікнувши на перемикач праворуч.\n![Announcements!](/static/images/announcements/smartalerts/uk.png)\n\n# Нагадаємо, що є 4 типи Smart Alerts:\n- пост впливового автора за вашою темою моніторингу;\n- згадування швидко набирає залучення (лайки, коментарі, репости);\n- різко збільшилася кількість згадок, особливо негативних;\n- активна дискусія по вашій темі.");

/***/ }),

/***/ "GbSE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’re thrilled to announce an unlimited social search! You can run it as many times as you want with as broad searches as you need!\n\n- Curious about what’s going on the competitor’s side?\n- Checking who is more popular on social media, dogs or cats?\n- Need to find out in which countries a new makeup trend is more popular?\n\nEasy! Go to the Search section, and type what you’re looking for. In the blink of an eye, we’ll provide you with an analysis for the last 30 days based on all data sources we cover.\n\n![Announcements!](/static/images/announcements/socialSearch/en1.gif)\n\nAdd brands or topics to compare👇\n\n![Announcements!](/static/images/announcements/socialSearch/en2.gif)\n\nNow you can learn:\n\n- number of mentions, dynamics of discussions, sentiment, and sources distribution\n- geography of conversations\n- audience’s interests, occupations, and gender distribution.\n- what the specific mentions are about\n\n![Announcements!](/static/images/announcements/socialSearch/en3.gif)\n\n☝️ Take note that for Quick Search, we use a _sample_ of the mentions needed to give you the essence of the conversations taking place.\n\nLearn more about Quick Search in our [Knowledge Base](https://help.youscan.io/en/articles/6643263-quick-search)📚\n");

/***/ }),

/***/ "yn7+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вжух і у вас з’явився необмежений пошук у соціальних медіа! Запускайте його скільки завгодно з будь-якими пошуковими запитами!\n\n- Цікаво, що відбувається у конкурентів?\n- Потрібно терміново дізнатись, хто популярніший у соцмережах: собаки чи коти?\n- Перевіряєте, в яких країнах новий тренд макіяжу чи харчування більш популярний?\n\nЛегко! Перейдіть до меню «Пошук» та введіть пошуковий запит. Ми миттю надамо вам аналіз за останні 30 днів на основі всіх джерел даних, які ми охоплюємо.\n\n![Announcements!](/static/images/announcements/socialSearch/uk1.gif)\n\nВикористайте додаткові пошукові рядки, щоб додати бренди або теми для порівняння👇\n\n![Announcements!](/static/images/announcements/socialSearch/uk2.png)\n\nТепер ви можете подивитись:\n\n- огляд кількості згадок, динаміки обговорень, розподілу тональності та  джерел\n- географію обговорень\n- інтереси, заняття та гендерний розподіл аудиторії\n- про що йдеться мова у конкретних згадуваннях\n\n![Announcements!](/static/images/announcements/socialSearch/uk3.gif)\n\n☝️ Зверніть увагу, що для Quick Search ми використовуємо _вибірку_ згадувань, необхідну щоби передати загальні тренди і обговорення.\n\nДізнайтеся більше про Quick Search у нашій [Базі знань](https://help.youscan.io/en/articles/6643263-quick-search)📚\n");

/***/ }),

/***/ "Rhhl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’re thrilled to announce that you now have **12 months of data in Social Search!**  \nYou can run Social Search as many times as you want with as broad searches as you need!\n\n![Announcements!](/static/images/announcements/socialSearchExtended/en.gif)\n\n- Curious about what’s going on the competitor’s side?\n- Checking who is more popular on social media, dogs or cats?\n- Need to find out in which countries some makeup trend was more popular?\n\nEasy! Go to the Search section, and type what you’re looking for. In the blink of an eye, we’ll provide you with an analysis based on all the data sources we cover.\n\n☝️Take note that we use a *sample* of the mentions needed for Social Search to give you the essence of the conversations taking place.\n\nLearn more about Social Search in our [Knowledge Base](https://help.youscan.io/en/articles/6643263-social-search) 📚");

/***/ }),

/***/ "9nz0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Estamos encantados de anunciarte que ahora dispones de **12 meses de datos en Social Search en la sección Buscar.** \nPuedes realizar la búsqueda rápida tantas veces como quieras con el período tan profundo que necesites.\n\n![Announcements!](/static/images/announcements/socialSearchExtended/es.gif)\n\n- ¿Tienes curiosidad por saber cómo va la competencia?\n- ¿Quieres comprobar quién es más popular en las redes sociales, ¿los perros o los gatos?\n- ¿Necesitas saber en qué países fue más popular alguna tendencia de maquillaje?\n\n¡Muy fácil! Tienes que ir a la sección Buscar y teclear las palabras clave que te interesen. En un abrir y cerrar de ojos, te proporcionaremos un análisis basado en todas las fuentes de datos que cubrimos.\n\n☝️ Ten en cuenta que utilizamos una muestra de las menciones necesarias para Social Search con el fin de ofrecerte las tendencias principales de las conversaciones que tienen lugar.\n\nMás información sobre Social Search está en nuestra [Base de conocimientos](https://help.youscan.io/en/articles/6643263-social-search) 📚");

/***/ }),

/***/ "KCmR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми раді повідомити, що тепер ви маєте **12 місяців даних у Social Search!** \nВи можете запускати Social Search стільки разів, скільки вам потрібно, з настільки широким пошуком, наскільки вам потрібно!\n\n![Announcements!](/static/images/announcements/socialSearchExtended/uk.gif)\n\n- Цікаво, що відбувається у конкурентів?\n- Потрібно терміново дізнатись, хто популярніший у соцмережах: собаки чи коти?\n- Перевіряєте, в яких країнах новий тренд макіяжу чи харчування більш популярний?\n\nЛегко! Перейдіть до меню «Пошук» та введіть пошуковий запит. Ми миттю надамо вам аналіз за останні 30 днів на основі всіх джерел даних, які ми охоплюємо.\n\n☝️Зверніть увагу, що для Social Search ми використовуємо вибірку згадувань, необхідну щоби передати загальні тренди і обговорення.\n\nДізнайтеся більше про Social Search у нашій [Базі знань](https://help.youscan.io/en/articles/6643263-social-search) 📚");

/***/ }),

/***/ "3vRL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, the WordCloud will be available in Social Search.\n\nClick the cloud icon for a WordCloud view. Discover top words related to your query. Optimize searches and gain rapid insights into your brand's online presence.\n\n![wordCloud](/static/images/announcements/socialSearchWordcloud/en.png)\n\n☝️Take note that we use a sample of the mentions needed for Social Search to give you the essence of the conversations taking place.\n");

/***/ }),

/***/ "za0C":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, WordCloud estará disponible en Social Search.\n\nHaz clic en el icono de la nube para ver WordCloud. Descubra las principales palabras relacionadas con su consulta. Optimiza las búsquedas y obtén información rápida sobre la presencia online de tu marca.\n\n![wordCloud](/static/images/announcements/socialSearchWordcloud/es.png)\n\n☝️Tenga en cuenta que utilizamos una muestra de las menciones necesarias para Social Search para ofrecerle la esencia de las conversaciones relevantes que se desarollan.\n");

/***/ }),

/***/ "sjsQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер Хмара слів буде доступною у Соціальному Пошуку.\n\nПросто натисніть на хмару в лівому меню, щоб відкрити для себе найпопулярніші слова, пов'язані з вашим запитом. Оптимізуйте пошук та отримайте швидку, корисну інформацію про присутність вашого бренду в соціальних медіа.\n\n![wordCloud](/static/images/announcements/socialSearchWordcloud/uk.png)\n\n☝️Зверніть увагу, що ми використовуємо вибірку даних, необхідних для соціального пошуку, щоб дати вам уявлення про суть розмов, що відбуваються.\n");

/***/ }),

/***/ "rEWk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Are you a native Spanish speaker, or do you only prefer Spanish to English? If the answer to both questions is YES, our latest update is for you!\n\nFrom now on YouScan has a Spanish user interface, and it’s available to all users.\n\n![Announcements!](/static/images/announcements/spanishLanguageInterface/spanish_interface.png)\n\nTo change the interface language to Spanish, follow these steps:\n\n- Go to **My settings** and scroll down to **Interface settings;**\n- From **Languages**, select Spanish, and your interface will switch to your desired language.\n\n![Announcements!](/static/images/announcements/spanishLanguageInterface/spanish_interface_2.gif)\n\n👆Note that this feature is still in Beta mode, and if you notice any translation errors, please do not hesitate to share them with our customer support team so we can fix them. Thank you!\n");

/***/ }),

/***/ "67uD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("¿Eres hispanohablante o simplemente prefieres el español al inglés? ¡Sí o sí, en ambos casos nuestra actualización te va resultar muy útil!\n\nA partir de hoy YouScan tiene una interfaz en español disponible para todos los usuarios.\n\n![Announcements!](/static/images/announcements/spanishLanguageInterface/spanish_interface.png)\n\nPara cambiar tu interfaz al español, tienes que seguir estos pasos:\n\n- Ve a la configuración de la cuenta (**My settings)** y encuentra los ajustes de idioma del interfaz (**Interface settings);**\n- Entre los idiomas (**Languages)** selecciona el español y tu interfaz va a cambiarse al idioma seleccionado.\n\n![Announcements!](/static/images/announcements/spanishLanguageInterface/spanish_interface_2.gif)\n\n👆¡Ojo! Esta función todavía está en el modo Beta y si notas algunos errores de traducción, no dudes en compartirlos con nuestro equipo de servicio de atención al cliente para que podamos eliminarlos. ¡Gracias! \n");

/***/ }),

/***/ "+z+T":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви носій іспанської мови або надаєте перевагу іспанській перед англійською? Якщо відповідь на обидва питання - ТАК, то наше останнє оновлення саме для вас!\n\nВідтепер YouScan має іспаномовний інтерфейс, що доступний для усіх користувачів.\n\n![Announcements!](/static/images/announcements/spanishLanguageInterface/spanish_interface.png)\n\nЩоб змінити мову інтерфейсу на іспанську, виконайте такі дії:\n\n- Перейдіть у **Мої налаштування** і проскрольте вниз до **Налаштувань інтерфейсу;**\n- У розділі **Мови** оберіть іспанську і ваш інтерфейс миттєво перелаштується на обрану мову.\n\n![Announcements!](/static/images/announcements/spanishLanguageInterface/spanish_interface_2_ukr.gif)\n\n👆Зверніть увагу, це оновлення працює в режимі бета-версії. І раптом ви помітили помилки перекладу, будь ласка, поділіться цим з нашою службою підтримки клієнтів, щоб ми швидко внесли зміни. Дякуємо!\n");

/***/ }),

/***/ "T5sC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Meet Single Sign-On (SSO) with SAML 2.0! It's a solution that revolutionizes user authentication by enabling you to log in to different apps and websites using just one set of credentials.\n\n![Announcements!](/static/images/announcements/ssoIntegration/en.png)\n\nHere are the primary benefits of adopting SSO over login and password authentication:\n\n- **Centralized Control.** You can revoke access from employees who no longer need it without hassle.\n- **Enhanced Productivity.** With easy and fast account login, you and your team save time.\n- **Fewer Risks.** By eliminating the need to store passwords externally, you minimize the risk of password exposure.\n\nSay goodbye to login headaches and hello to a more efficient social listening experience!\n\nInterested in configuring SSO for your account? Reach out to us at [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "AXNz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Conoce el inicio de sesión único (SSO) con SAML 2.0. Se trata de una solución que revoluciona la autenticación de usuarios permitiéndote iniciar sesión en diferentes aplicaciones y sitios web utilizando un único conjunto de credenciales.\n\n![Announcements!](/static/images/announcements/ssoIntegration/es.png)\n\nÉstas son las principales ventajas de adoptar SSO frente a la autenticación por nombre de usuario y contraseña:\n\n- **Control centralizado.** Puedes revocar el acceso a los empleados que ya no lo necesiten sin complicaciones.\n- **Mejora de la productividad.** Con un inicio de sesión de cuenta fácil y rápido, tú y tu equipo ahorran tiempo valioso.\n- **Menos riesgos.** Al eliminar la necesidad de almacenar contraseñas externamente, minimizas el riesgo de exposición de contraseñas.\n\nAccede a tu cuenta YouScan fácilmente, mejora la seguridad y agiliza la colaboración en equipo. Dile adiós a los dolores de cabeza de inicio de sesión y hola a una experiencia de escucha social más eficiente.\n\n¿Estás interesado en configurar SSO para su cuenta? Ponte en contacto con nosotros en [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "o4bE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Зустрічайте Single Sign-On (SSO) з SAML 2.0 в YouScan. Це рішення кардинально змінює автентифікацію користувачів, а саме дозволяє вам авторизуватися в різних додатках і на веб-сайтах, використовуючи лише один набір облікових даних.\n\n![Announcements!](/static/images/announcements/ssoIntegration/uk.png)\n\nОсновні переваги використання SSO над авторизацією із логіном і паролем:\n\n- **Все під контролем**. Ви можете централізовано відкликати доступ у співробітників, яким він більше не потрібен.\n- **Продуктивність на максимум**. Завдяки легкому і швидкому входу в акаунт ви та ваша команда заощаджуєте дорогоцінний час.\n- **Менше ризиків**. Вам більше не треба зберігати паролі на зовнішніх носіях, таким чином ризик витоку паролів стає меншим.\n\nЗаходьте в акаунт YouScan без зайвих зусиль, підвищуйте безпеку та спрощуйте співпрацю в команді!\n\nХочете налаштувати SSO для свого акаунту? Напишіть нам на [support@youscan.io](mailto:support@youscan.io) або в чаті.");

/***/ }),

/***/ "VtKi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can analyze your brand’s review score on Google maps, Amazon, and other sources with the new filter Rating. This means that you can:\n\n- use star ratings as a quick way to get feedback on your brand;\n- compare your score reviews to your competitors.\n\nTo analyze different reviews by score, follow the simple steps:\n\n- Go to filters clicking on Choose;\n- In the Sources filter, select any score from one to five in Rating section.\n\n![Announcements!](/static/images/announcements/starRating/en.gif)\n\n- If you want to analyze all the scores at once, simply select Reviews in Sources filter.\n\n![Announcements!](/static/images/announcements/starRating/en.png)\n\n💡 Filter by score is available in both Mention stream and Custom Dashboards.\n\nFor more information on the filters, visit our [Knowledge Base](https://help.youscan.io/en/articles/1047593-how-do-youscan-filters-work)📚\n");

/***/ }),

/***/ "n6wu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Аналізуйте рейтинги вашого бренду на Google maps, Amazon та в інших джерелах з новим фільтром Рейтинги. Завдяки йому ви зможете:\n\n- використовувати рейтинги з зірочками як потужне джерело фідбеку по вашому бренду;\n- порівнювати відгуки з рейтингом на ваш бренд з конкурентами.\n\nЩоб проаналізувати різні відгуки з рейтингом, виконайте ці прості кроки:\n\n- Перейдіть в фільтри, натиснувши на кнопку Вибрати;\n- В фільтрі Джерела оберіть будь-яку кількість зірочок від 1 до 5 в розділі Рейтинги;\n\n![Announcements!](/static/images/announcements/starRating/uk.gif)\n\n- Якщо ви хочете проаналізувати всі рейтинги незалежно від кількості зірочок в них, оберіть Відгуки в фільтрі Джерела.\n\n![Announcements!](/static/images/announcements/starRating/uk.png)\n\n💡 Фільтр по рейтингу доступний і в потоці згадувань, і в кастомізованих дашбордах.\n\nБільше інформації про роботу фільтрів читайте в нашій [Базі Знань](https://help.youscan.io/en/articles/1047593-how-do-youscan-filters-work)📚\n");

/***/ }),

/***/ "GX0X":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can download Statements from the YouScan interface without any help. The statement for the previous period is created by the 10th day of the new quarter. You can find it on the \"Documents\" page in the account settings.\n\nStatement periods are the following:\nThe first quarter from January 1 till March 31;\nThe second quarter from January 1 till June 30;\nThe third quarter from January 1 till September 30;\nThe fourth quarter from January 1 till December 31.\n\n**How to download Statements:**\n\n1. Navigate to Account settings, \"Documents\" section.\n2. Find the needed act and click on its name.\n\n![Announcements!](/static/images/announcements/statements/en.png)\n\nStatements are available for periods from the third quarter 2020.\n\nThe statements are available to all clients that pay the invoices. Please note, only users with permission level \"Manager\" have access to the \"Documents\" page.\n");

/***/ }),

/***/ "wWC2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете скачать акт сверки по итогам квартала самостоятельно. Акт сверки формируется до 10 числа нового квартала за прошедший и доступен в разделе «Документы» в настройках аккаунта.\n\nАкты формируются с нарастающим итогом:\n\nАкты доступны клиентам, которые оплачивают подписку по выставленным счетам.\nОбратите внимание, доступ в раздел «Документы» есть только у пользователей типом доступа «Доверенный».\n\nЗа первый квартал с 01.01 по 31.03;\nЗа второй квартал с 01.01 по 30.06;\nЗа третий квартал с 01.01 по 30.09;\nЗа четвертый квартал с 01.01 по 31.12.\n\n**Как скачать?**\n\n1. Зайдите в Настройки аккаунта, раздел «Документы».\n2. Выберите необходимый акт и нажмите на его название.\n\n![Announcements!](/static/images/announcements/statements/ru.png)\n\nВ этом разделе вам доступны акты начиная с третьего квартала 2020 года.");

/***/ }),

/***/ "4Lp8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете завантажувати акти звірки за квартал самостійно. Акт звірки формується до 10 числа поточного кварталу за попередній і доступний у розділі «Документи» у налаштуваннях аккаунта.\n\nАкти звірки формуються з наростаючим підсумком:\n\nЗа перший квартал з 01.01 по 31.03;\nЗа другий квартал з  01.01 по 30.06;\nЗа третій квартал з 01.01 по 30.09;\nЗа четвертий квартал з 01.01 по 31.12.\n\n**Як завантажити акт?**\n\n1. Увійдіть в Налаштування акаунта, розділ «Документи».\n2. Оберіть необхідний акт і клікніть на його назву.\n\n![Announcements!](/static/images/announcements/statements/uk.png)\n\nУ цьому розділі вам доступні акти починаючи з третього кварталу 2020 року.\nАкти доступні клієнтам, які оплачують підписку за виставленими рахунками. Зверніть увагу, доступ до розділу \"Документи\" є тільки у користувачів з типом доступу \"Довіренний\".");

/***/ }),

/***/ "EGua":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Analyze your data based on mentions quantity and other important metrics like engagement and views. This feature can really help you make sure your social media marketing strategies are effective by allowing you to track several metrics and making your research more in-depth. \n\n![image](/static/images/announcements/statisticsBy/statisticsByEn.gif)\n\n**Engagement:** Tracking the engagement metric can show how actively involved people are with your brand and can help you boost the performance of your campaigns’.\n\n**Views:** Helps you see analytics for the most-viewed posts. For example, tracking views can help you measure your ad campaigns' reach.\n\n☝️ We determine the view count only on platforms offering public access to this information.\n\n**Comments, Reposts, and Likes:** These metrics allow you to dive deeper into how users are engaged with your brand.\n");

/***/ }),

/***/ "6hdL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Аналізуйте дані на основі кількості згадувань та інших важливих показників, як зацікавленість та перегляди. Ця функція може допомогти вам переконатися в ефективності маркетингових стратегій, відстежуючи різні показники і проводячи більш глибокі дослідження.\n\n![image](/static/images/announcements/statisticsBy/statisticsByUk.gif)\n\n**Залучення:** відстеження залучення показує наскільки активно люди залучені до вашого бренду, і може допомогти вам підвищити ефективність ваших кампаній.\n\n**Перегляди:** допомагає переглядати аналітику для найбільш перегляданих публікацій. Наприклад, відстеження переглядів може допомогти вам оцінити охоплення ваших рекламних кампаній.\n\n☝️ Ми визначаємо кількість переглядів лише на платформах, які дають відкритий доступ до цієї інформації.\n\n**Коментарі, повторні публікації та оцінки \"подобається\":** ці показники дозволяють глибше зануритися в те, як користувачі взаємодіють з вашим брендом.\n");

/***/ }),

/***/ "6Hj/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Transparency and openness is one of the key principles of YouScan culture. We apply this principle in product development to provide you with more information, so that you can make informed decisions.\n\nNow you can check the real-time information on system status by following the link: [https://status.youscan.io/](https://status.youscan.io/). In case of service interruptions, a note will be posted on this page.\n\n![Status Page!](/static/images/announcements/statuspage/status.png)\n\nTo inquire about scheduled maintenance in advance and about updates to incident status, subscribe to notifications by email.\n\n![Status Page!](/static/images/announcements/statuspage/subscribe.png)");

/***/ }),

/***/ "xs9/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Прозрачность и открытость — один из ключевых принципов культуры YouScan. Мы применяем этот принцип и в развитии продукта, чтобы давать вам больше информации для принятия осведомленных решений. \n\nТеперь вы можете проверять актуальный статус работы YouScan по ссылке: [https://status.youscan.io/](https://status.youscan.io/). В случае сбоя вы увидите оповещение на этой странице.\n\n![Status Page!](/static/images/announcements/statuspage/status.png)\n\nЧтобы заранее узнавать о плановых технических работах и о статусе работы над сбоем, подпишитесь на нотификации на почту.\n\n![Status Page!](/static/images/announcements/statuspage/subscribe.png)");

/***/ }),

/***/ "0dTF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Прозорість і відкритість — один з ключових принципів культури YouScan. Ми застосовуємо цей принцип і в розвитку продукту, щоб давати вам більше інформації для прийняття обізнаних рішень.\n\nТепер ви можете перевіряти актуальний статус роботи YouScan за посиланням: [https://status.youscan.io/](https://status.youscan.io/). У разі збою ви побачите сповіщення на цій сторінці.\n\n![Status Page!](/static/images/announcements/statuspage/status.png)\n\nЩоб заздалегідь дізнаватися про планові технічні роботи та про статус роботи над збоєм, підпишіться на нотифікації на пошту.\n\n![Status Page!](/static/images/announcements/statuspage/subscribe.png)");

/***/ }),

/***/ "OPll":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can collect Instagram Stories from pages [you've authorized in YouScan](https://help.youscan.io/en/articles/2882213-adding-social-media-account-authorization-in-youscan).\n\nTo collect stories:\n1. Go to the topic in which you want to collect stories;\n2. Go to \"Settings,\" open the \"Channels\" section and click the \"Add channel\" button;\n3. Paste the link to the page from which you want to collect stories and press Enter;\n4. Add stories by pressing the \"Plus\" button.\n\n![image](/static/images/announcements/storiesFromOwnedPagesAnnouncement/en.gif)\n\nDone, new stories published on this page will be saved to your topic.\n\n☝️ Which stories will not be collected:\n- reposts of stories or other users posts,\n- stories created when a user reshares a story from the archive,\n- Live Video stories.\n");

/***/ }),

/***/ "WLP0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете собирать Instagram Stories со страниц, [которые авторизовали в YouScan](https://help.youscan.io/ru/articles/2882213-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-instagram-%D0%B2-youscan).\n\nДля этого:\n1. Зайдите в тему, в которой хотите собирать stories;\n2. Перейдите в «Настройки», в раздел «Каналы» и нажмите кнопку «Добавить канал»;\n3. Вставьте ссылку на страницу, с которой хотите собирать stories и нажмите Enter;\n4. Нажмите кнопку «Плюс», чтобы добавить сбор stories.\n\n![image](/static/images/announcements/storiesFromOwnedPagesAnnouncement/ru.gif)\n\nГотово, теперь новые stories, опубликованные на этой странице, будут собираться в вашу тему.\n\n☝️ Какие stories не попадут в тему:\n- репосты stories или постов других пользователей,\n- stories из архива, которыми поделились повторно,\n- Live Video stories.");

/***/ }),

/***/ "56H2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете збирати Instagram Stories зі сторінок, [які авторизували в YouScan](https://help.youscan.io/ru/articles/2882213-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-instagram-%D0%B2-youscan).\n\nДля цього:\n1. Зайдіть в тему, в якій хочете збирати stories;\n2. Перейдіть в «Налаштування», в розділ «Канали» і натисніть кнопку «Додати канал»;\n3. Вставте посилання на сторінку, з якої хочете збирати stories і натисніть Enter;\n4. Натисніть кнопку «Плюс», щоб додати збір stories.\n\n![image](/static/images/announcements/storiesFromOwnedPagesAnnouncement/uk.gif)\n\nГотово, тепер нові stories, опубліковані на цій сторінці, будуть збиратися в вашу тему.\n\n☝️ Які stories не потраплять в тему:\n- репости stories або постів інших користувачів,\n- stories з архіву, якими поділилися повторно,\n- Live Video stories.");

/***/ }),

/***/ "lhs3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Subjects** of topics is a new filter that helps you explore your brand’s reputation. YouScan is analyzing texts of mentions and detects key topics in them. In the filters, you can see the most discussed subjects  and their mentions.\n\n**Applications:**\n- Exclude irrelevant subjects for effective work with the mention stream\n- Discover the context in which subjects your brand is mentioned\n- Analyze sentiment and engagement of subjects in dynamics (for example, sentiment about food at airplanes).\n\n![subjects](/static/images/announcements/subjects/en.png)\n\n**The release contains 29 different subjects**\nThey include politics, incidents, health, children, fashion, events, sports,  and other subjects, the titles and description of which you can find in [our blog](https://help.youscan.io/ru/articles/3371256-фильтр-тематики).\n");

/***/ }),

/***/ "LtTf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Тематики упоминаний**  – это новый фильтр, который помогает исследовать репутацию вашего бренда. YouScan анализирует текст упоминаний и находит ключевые тематики в них. Уже в фильтрах вы можете увидеть, какие тематики больше всего обсуждают и посмотреть упоминания по ним.\n\n**Для чего нужны тематики:**\n- Убрать нерелевантные вам тематики, для эффективной работы с потоком упоминаний\n- Узнать в контексте каких тематик упоминается ваш бренд\n- Отслеживать в динамике изменение тональности или вовлечение по тематике (например, тональность к еде в самолетах)\n\n![subjects](/static/images/announcements/subjects/ru.png)\n\n**В релизе представлены 29 различных тематик**\nВ них входят политика, инциденты, здоровье, дети, мода, мероприятия, спорт, а также другие тематики, название и описание которых можно найти [в нашей статье](https://help.youscan.io/ru/articles/3371256-фильтр-тематики).\n");

/***/ }),

/***/ "maVM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Тематики згадувань** – це новий фільтр, що допомагає досліджувати репутацію вашого бренду. YouScan аналізує текст згадувань та знаходить ключові тематики в ньому. Вже у фільтрах ви можете побачити, які тематики найбільше обговорюють і подивитися згадки по ним.\n\n**Для чого потрібні тематики:**\n- Прибрати нерелевантні вам тематики, для більш для ефективної роботи з потоком згадувань\n- Дізнатись у контексті яких тематик згадується ваш бренд\n- Відстежувати у динаміці зміну тональності або залучення за тематикою (наприклад, тональність до їжі в літаках)\n\n![subjects](/static/images/announcements/subjects/uk.png)\n\n**У релізі представлено 29 різних тематик**\nВони включають: політику, інциденти, здоров'я, діти, мода, заходи, спорт, а також інші тематики, назву і тлумачення яких можна знайти [в нашій статті](https://help.youscan.io/ru/articles/3371256-фильтр-тематики).\n");

/***/ }),

/***/ "wRIw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We are always striving to make markup of mention stream more fast and productive. Now you can tag mention without removing your hands from the keyboard!\n\nTo get started click on the desired mention, a blue frame will appear around it. To open the tag editing window, press `t`, use search and arrow keys to move between different tags. Press `Enter` to add (or remove) tag. To apply selected tags press `Shift + Enter`.\n\nTo move between mentions use `Up ↑` and `Down ↓` keys. In addition to tagging, YouScan supports many other hotkeys to speed up your work with mention stream. You can find the full list of combinations by pressing `?`.\n\n![Tags](/static/images/announcements/tags_hotkeys/tags.gif)\n");

/***/ }),

/***/ "xv3p":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мы постарались сделать разметку упоминаний еще быстрее и удобнее. Теперь вы можете тегировать упоминания не открывая рук от клавиатуры!\n\nДля начала, нажмите на нужное упоминание, вокруг него появится голубая рамка. Чтобы открыть окно редактирования тегов нажмите `t`, используйте поиск и стрелки для перемещения между тегами. Нажмите `Enter` для того, чтобы добавить (или убрать) тег. Чтобы применить выбранные теги нажмите `Shift + Enter`.\n\nДля перемещения между упоминаниями используйте стрелки `Вверх ↑` и `Вниз ↓`. Кроме тегирования, YouScan поддерживает множество других горячих клавиш для ускорения работы с упоминаниями. Полный список комбинаций вы можете посмотреть нажав `?`\n\n![Tags](/static/images/announcements/tags_hotkeys/tags.gif)\n");

/***/ }),

/***/ "f64H":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми завжди намагаємося зробити маркування ще зручнішим та швидшим. Тепер ви можете тегувати згадування не відриваючи рук від клавіатури!\n\nДля початку, натисніть на потрібне вам згадування, навколо нього з'явиться блакитна рамка. Щоб відкрити вікно редагування тегів натисніть `t`,\nвикористовуйте пошук та стрілки для переміщення між тегами. Натисніть `Enter` для того, щоб додати (або прибрати) тег. Щоб застосувати вибрані теги натисніть `Shift + Enter`.\n\nДля переміщення між згадуваннями використовуйте стрілки `Вгору ↑` и `Вниз ↓`. Крім тегування, YouScan підтримує багато інших гарячих клавіш для прискорення роботи зі згадуваннями. Повний список комбінацій ви можете подивитися натиснувши '?'.\n\n![Tags](/static/images/announcements/tags_hotkeys/tags.gif)\n");

/***/ }),

/***/ "gK9W":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We made custom dashboards set up effortless and quick — simply choose one of the pre-made templates that are packed with the most relevant and important charts. To create a custom dashboard using a template simply click on the tab that corresponds to your business needs the most:\n\n- Brand health tracking;\n- Customer experience;\n- Crisis management;\n- Competitor analysis.\n\n![img](/static/images/announcements/templatesForCustomDashboards/en.gif)\n\n☝️ Important details of the feature:\n\n- You can still create your own custom dashboard manually, without the template;\n- After creating a dashboard using one of the templates, you can add, edit and delete widgets in it;\n- You cannot use templates in already created dashboards.\n");

/***/ }),

/***/ "58j8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Больше не нужно тратить время на создание кастомизированных дашбордов с нуля — выбирайте из уже готовых шаблонов, в которых мы собрали самые важные графики. Чтоб создать дашборд с помощью шаблона, просто нажмите на название того, который лучше всего отвечает вашим требованиям:\n\n- Здоровье бренда;\n- Пользовательский опыт;\n- Кризисный мониторинг;\n- Анализ конкурентов.\n\n![img](/static/images/announcements/templatesForCustomDashboards/ru.gif)\n\n☝️ Важные нюансы функции:\n\n- Вы, как и раньше, можете создавать дашборды вручную, без шаблонов;\n- Создавая дашборд с помощью одного из шаблонов, вы можете добавлять, редактировать и удалять виджеты в нем по своему усмотрению;\n- Шаблоны нельзя применять к уже созданным дашбордам.\n");

/***/ }),

/***/ "mFHd":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер не потрібно витрачати час на створення кастомізованих дашбордів з нуля — обирайте з готових шаблонів, в які ми зібрали найбільш необхідні та актуальні графіки. Щоб створити дашборд за домогою шаблону, просто натисніть на назву того, що найбільше відповідає вашим потребам:\n\n- Здоров’я бренду;\n- Користувацький досвід;\n- Кризовий моніторинг;\n- Аналіз конкурентів.\n\n![img](/static/images/announcements/templatesForCustomDashboards/uk.gif)\n\n☝️ Важливі нюанси функції:\n\n- Як і раньше, можна створювати власні дашборди без шаблонів;\n- Створюючи дашборд з допомогою одного з шаблонів, ви можете додавати, редагувати та видаляти віджети в ньому за власним розсудом;\n- Шаблони не можна застосовувати до вже створених дашбордів.\n");

/***/ }),

/***/ "+ehP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’ve added a text widget for Dashboards, so you can:\n\n- Explain your discoveries in a way your coworkers or clients can understand, including what to examine and how to interpret the data.\n- Add summaries provided by Insights Copilot.\n- Add any additional text that you need.\n\nCreate this widget following a standard widget-adding flow.\n\n![textWidget](/static/images/announcements/textWidget/en.gif)\n");

/***/ }),

/***/ "XFmy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hemos añadido un widget de texto para los tableros para que puedas:\n\n- Explicar sus descubrimientos de una manera que sus compañeros de trabajo o clientes puedan entender, incluyendo qué examinar y cómo interpretar los datos.\n- Añadir resúmenes proporcionados por Insights Copilot.\n- Añadir cualquier texto adicional que necesite.\n\nCree este widget siguiendo un flujo estándar de adición de widgets.\n\n![textWidget](/static/images/announcements/textWidget/es.gif)\n");

/***/ }),

/***/ "l//O":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми додали текстовий віджет для Дашбордів, щоб ви могли:\n\n- Пояснювати свої відкриття колегам або клієнтам, включно з тим, на що звернути увагу та як інтерпретувати дані.\n- Додавати підсумки згенеровані Insights Copilot.\n- Додавати будь-який додатковий текст, який вам потрібен.\n\nТакий віджет можна створити за стандартними кроками додавання віджетів.\n\n![textWidget](/static/images/announcements/textWidget/uk.gif)\n\n");

/***/ }),

/***/ "gl+P":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hurray! Starting September 1, we've enabled TikTok monitoring in all topics and for all pricing plans. Historical data is available from August 1.\n\nVideos from TikTok get added to the topic if your monitoring object (brand, person, event) is mentioned in the description. Besides that, logo recognition and text recognition work for the video preview picture.\nWe are not monitoring the comments under the videos yet.\n\n![TikTok](/static/images/announcements/tiktok/en.png)\n\n☝️ The number of likes, reposts, comments, and views for this source is fixed at the moment of collection, and it won't be updated later.");

/***/ }),

/***/ "WG6M":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ура, этот день настал! С 1 сентября мы включили мониторинг TikTok во всех темах и на всех тарифных планах. Ретроспективные данные вы можете собрать начиная с 1 августа.\n\nВидео из TikTok попадают в тему, если в описании упоминается ваш объект мониторинга (бренд, персона, событие). Кроме того, на картинке-превью работают распознавание логотипа и распознавание текста на изображении.\nА вот комментарии к видео мы пока что не мониторим.\n\n![TikTok](/static/images/announcements/tiktok/ru.png)\n\n☝️ Количество лайков, репостов, комментариев и просмотров для этого источника фиксируется на момент, когда мы собрали видео, и не обновляется.");

/***/ }),

/***/ "0EEf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ура, цей день настав! З 1 вересня ми включили моніторинг TikTok для всіх тем і на всіх тарифних планах. Історичні дані ви можете збирати починаючи з 1 серпня.\n\nВідео з TikTok потрапляють в тему, якщо в описі згадується ваш об'єкт моніторингу (бренд, персона, подія). Окрім цього для картинок-прев'ю працюють розпізнавання логотипів та розпізнавання тексту на зображенні.\n\nА от коментарі до відео ми, поки що, не моніторимо.\n\n![TikTok](/static/images/announcements/tiktok/uk.png)\n\n☝️ Кількість лайків, репостів, коментарів і переглядів для цього джерела фіксується на момент, коли ми зібрали відео, і більше не оновлюється.");

/***/ }),

/***/ "CdlT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("In addition to YouTube, you can now track and analyze what people say on TikTok videos about your monitoring object.\n\n![image](/static/images/announcements/tiktokCaptions/en1.png)\n\nUse a **Subtitles** filter to filter out such mentions and reveal how your brand is mentioned in videos.\n\n![image](/static/images/announcements/tiktokCaptions/en2.png)\n\n☝️ Audio Monitoring is an add-on feature. If you don’t see this data in your topics, contact us at [support@youscan.io](mailto:support@youscan.io) to learn more.");

/***/ }),

/***/ "m1Nn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відстежуйте та аналізуйте, що люди говорять про ваш об’єкт моніторингу не тільки на YouTube, а тепер ще й у відео в TikTok.\n\n![image](/static/images/announcements/tiktokCaptions/ua1.png)\n\nЗастосуйте фільтр **Субтитри,** щоб побачити такі згадки та дізнатись, як ваш бренд згадується у відео.\n\n![image](/static/images/announcements/tiktokCaptions/ua2.png)\n\n☝️ Аудіо моніторинг — це додатковий функціонал. Якщо ви не бачите цих даних у темах, напишіть нам на [support@youscan.io](mailto:support@youscan.io), щоб дізнатися як почати їх збирати.");

/***/ }),

/***/ "P5fw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("### TikTok on the clock 🕰️\n\nAdd any user or business page from TikTok as a channel to collect all new posts from this page regardless of the keywords in your topic. [Learn more about channels](https://help.youscan.io/en/articles/5563235-channels-for-accounts-with-global-coverage).\n\n![image](/static/images/announcements/tiktokChannels/en.gif)");

/***/ }),

/***/ "yuVn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("### TikTok, el reloj da el toque  🕰️\n\nAñade cualquier usuario o página de empresa de TikTok como canal para recopilar todas las nuevas publicaciones de esta página independiente de las palabras clave de tu tema.\n\n![image](/static/images/announcements/tiktokChannels/es.gif)");

/***/ }),

/***/ "K4cw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("### Шок: ми додали в канали TikTok 🤩\n\nДодайте будь-яку сторінку користувача або бізнесу з TikTok як канал, щоб збирати всі нові дописи з цієї сторінки, незалежно від ключових слів у вашій темі.\n\n![image](/static/images/announcements/tiktokChannels/uk.gif)");

/***/ }),

/***/ "3/fq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Add any user or business page from TikTok as a channel to collect all comments and posts from this page regardless of the keywords in your topic.\n\n![image](/static/images/announcements/tiktokChannelsNextLevel/en.png)\n\nFrom now on you can also collect historical data for TikTok channels!\n\n☝️ You can add up to 5 TikTok channels for free. Chat with our support if you need to add more.\n");

/***/ }),

/***/ "sQOz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Añade cualquier usuario o página de empresa de TikTok como canal para recopilar todos los comentarios y publicaciones de esta página independientemente de las palabras clave de tu tema.\n\n![image](/static/images/announcements/tiktokChannelsNextLevel/es.png)\n\nA partir de ahora, ¡también puedes recopilar datos históricos de los canales de TikTok!\n\n☝️ Puedes añadir hasta 5 canales TikTok de forma gratuita. Chatea con nuestro soporte si necesitas añadir más.");

/***/ }),

/***/ "WNde":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Додайте будь-яку сторінку користувача або бізнесу з TikTok як канал, щоб збирати всі коментарі та дописи з цієї сторінки, незалежно від ключових слів у вашій темі.\n\n![image](/static/images/announcements/tiktokChannelsNextLevel/uk.png)\n\nВідтепер ви також можете збирати історичні дані для каналів TikTok!\n\n☝️ Ви можете додати до 5 каналів TikTok безкоштовно. Якщо вам потрібно додати більше, зверніться до нашої служби підтримки.");

/***/ }),

/***/ "9g+D":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Starting from September 1, we collect text from stickers on TikTok 🎉\nTikTok users widely use stickers with text. In some cases, stickers are even more valuable than the text of the captions.\n\n![image](/static/images/announcements/tiktokStickers/en1.png)\n\nYou can filter out mentions with stickers using the filter `Stickers` in the `Content type` section.\n\n![image](/static/images/announcements/tiktokStickers/en2.png)");

/***/ }),

/***/ "LZVo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("З 1 вересня ми збираємо текст зі стікерів у TikTok 🎉\nКористувачі TikTok все активніше використовують стікери і в деяких випадках тексти стікерів навіть цінніші, ніж підписи до відео.\n\n![image](/static/images/announcements/tiktokStickers/ua1.png)\n\nЩоби відфільтрувати згадування із стікерами використайте фільтр `Містить` `Стікери`.\n\n![image](/static/images/announcements/tiktokStickers/ua2.png)");

/***/ }),

/***/ "vShw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Hurray! You can select a time period now 🕐.\n\nTo use this magic - open the calendar, and you will see a field for choosing the time.\n\n\n![TimePicker](/static/images/announcements/timepicker_and_darktheme/time-picker-en.png)\n\n\nAlso now you can select \"Dark mode\" 🌚.\n\nTo do this go to \"My Settings\" and click on the switch, as in the video.\n\n\n![DarkMode](/static/images/announcements/timepicker_and_darktheme/dark-theme-en.gif)\n");

/***/ }),

/***/ "xXdq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ура! Теперь выбирать период можно не только по дням, но и по времени 🕐.\n\nЧтобы воспользоваться этой магией – откройте календарь, как при обычном выборе периода, и вы увидите поле для выбора времени.\n\n\n![TimePicker](/static/images/announcements/timepicker_and_darktheme/time-picker-ru.png)\n\n\nТакже теперь вы можете выбрать “Ночной режим“ 🌚.\n\nДля этого перейдите в “Мои настройки” и нажмите на переключатель, как на видео.\n\n\n![DarkMode](/static/images/announcements/timepicker_and_darktheme/dark-theme-ru.gif)\n");

/***/ }),

/***/ "LSRP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ура! Теперь вибрати період можна не тільки по днях, але й по часу 🕐.\n\nЩоб скористатися цією магією – відкрийте календар, як при звичайному виборі періоду, і ви побачите поле для вибору часу.\n\n\n![TimePicker](/static/images/announcements/timepicker_and_darktheme/time-picker-uk.png)\n\n\nТакож тепер ви можете вибрати “Нічний режим“ 🌚.\n\nДля цього перейдіть в “Мої налаштування” і натисніть на перемикач, як на відео.\n\n\n![DarkMode](/static/images/announcements/timepicker_and_darktheme/dark-theme-uk.gif)\n");

/***/ }),

/***/ "HgjH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We’re excited to announce updates that make creating and editing topics smoother.\n\n**Here’s what’s new:**\n\n- **Unified Filters:** Enjoy a consistent filter design across topics with the ability to choose AND/OR operators between filters. We've added new **Audience** and **Visual** filters to tailor your search queries to your needs, e.g., when you need to find mentions only from authors with a specific amount of subscribers.\n- **Enhanced Query Input:** Easily switch between Text and Visual Insights queries, which are now on the same page with foldable fields.\n- **Accurate Previews:** The preview now calculates both text and Visual Insights queries, so you can estimate a correct topic size and check a preview of visual mentions before creating a topic.\n- **Sampling for Visual Insights:** Now you can apply data sampling to topics that have Visual Insights queries (logos, text on images).\n\nDive into the new flow and experience these improvements firsthand!\n\n![image](/static/images/announcements/topicCreationAndEditingFlow/en.gif)\n\nYou can learn more details in an article from our [Knowledge Base](https://help.youscan.io/en/articles/913342-how-to-create-a-new-monitoring-topic) 📚\n");

/***/ }),

/***/ "7Tzd":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Nos complace anunciar nuevas actualizaciones que harán que la creación y edición de temas sea aún más fluida  e intuitiva.\n\nEstas son las novedades:\n\n- **Filtros unificados:** Disfrute de un diseño de filtros coherente en todos los temas con la posibilidad de elegir operadores AND/OR entre los filtros. Hemos añadido nuevos filtros de **Audiencia** y **Visual** para adaptar las consultas de búsqueda a tus necesidades, por ejemplo, cuando necesites encontrar menciones solo de autores con una cantidad específica de suscriptores.\n- **Entrada de consulta mejorada:** Cambia fácilmente entre consultas de texto y visuales, ahora en la misma página con campos plegables.\n- **Vistas previas precisas:** La vista previa calcula ahora tanto las consultas de texto como las de Visual Insights, para que puedas estimar un tamaño correcto del tema y comprobar una vista previa de las menciones visuales antes de crear un tema.\n- **Muestreo para Visual Insights:** Ahora puede aplicar el muestreo de datos a temas que tengan consultas de Visual Insights (logotipos, texto en imágenes).\n\n¡Sumérgete en el nuevo flujo y experimenta estas mejoras de primera mano!\n\n![image](/static/images/announcements/topicCreationAndEditingFlow/es.gif)\n\nPuedes conocer más detalles en un artículo de nuestra [Base de Conocimientos](https://help.youscan.io/es/articles/913342-como-crear-un-nuevo-tema-de-supervision) 📚.\n");

/***/ }),

/***/ "ZKsl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми оновили створення та редагування тем, щоб ви могли легко і швидко налаштовувати ідеальні теми 🙌\n\nЩо новенького:\n\n- **Фільтри:** Тепер ви можете обирати оператори AND та OR між фільтрами. Крім того, ми додали фільтри **Аудиторія** та **Зображення**, щоб зробити ваші пошукові запити ще точнішими, наприклад, коли вам потрібно знайти згадки лише від авторів з певною кількістю підписників.\n- **Пошукові запити:** Легко перемикайтеся між текстовими та запитами для візуальних інсайтів, тепер усе на одній сторінці.\n- **Попередній перегляд:** Тепер на попередньому перегляді враховуються і текстовий запит і Візуальні інсайти. Завдяки цьому ви можете оцінити розмір теми і переглянути приклади візуальних згадувань перед створенням теми.\n- **Вибірка для Візуальних інсайтів**: Тепер ви можете застосовувати вибірку даних для тем, де є пошук по Візуальних інсайтах (лого, текст на зображеннях).\n\n![image](/static/images/announcements/topicCreationAndEditingFlow/uk.gif)\n\nБільше деталей у статті в нашій [Базі знань](https://help.youscan.io/uk/articles/913342-%D1%8F%D0%BA-%D1%81%D1%82%D0%B2%D0%BE%D1%80%D0%B8%D1%82%D0%B8-%D0%BD%D0%BE%D0%B2%D1%83-%D1%82%D0%B5%D0%BC%D1%83-%D0%BC%D0%BE%D0%BD%D1%96%D1%82%D0%BE%D1%80%D0%B8%D0%BD%D0%B3%D1%83) 📚\n");

/***/ }),

/***/ "4wa+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now you can increase the mentions limit in your topics without upgrading to the upper pricing plan! Simply merge two or more topics into one.\n\nFor example, the monthly mentions limit in each of your topics is 100 000 mentions. If you merge two topics into one, you will have a new topic with 200 000 mentions monthly limit 🤩\n![image](/static/images/announcements/topicsMerging/en.gif)\n\n☝Important:\n\n* You use topics included in your plan for merging. If you have five topics and merge two of them, only three are left for other queries or merging;\n* You can change the limit in a merged topic even once it’s created. Just contact our support team at [support@youscan.io](mailto:support@youscan.io) and we will give you a hand;\n* Topics merging is available to subscribers of Listen plans and up.\n");

/***/ }),

/***/ "kMv0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь вы можете самостоятельно увеличивать лимит количества упоминаний в темах, и для этого не нужно переходить на старший тарифный план! Просто объедините две и больше тем в одну.\n\nНапример, лимит в каждой из ваших тем – 100 000 упоминаний в месяц. Объединив две темы в одну, вы получите новую тему с лимитом 200 000 упоминаний в месяц 🤩\n![image](/static/images/announcements/topicsMerging/ru.gif)\n\n☝ Важные нюансы:\n\n* При объединении вы используете только темы из вашего аккаунта. Например, вам доступны пять тем. Если вы объедините две из них в одну, вам останутся доступны три темы;\n* Вы сможете менять лимит в объединенной теме даже после ее создания. В этом вам поможет команда поддержки, просто напишите нам на [support@youscan.io](mailto:support@youscan.io);\n* Объединение тем доступно, начиная с тарифа Listen.\n");

/***/ }),

/***/ "U4+8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете самостійно збільшувати ліміт кількості згадувань в темах, і для цього не потрібно переходити на старший тарифний план! Просто об’єднайте дві та більше тем в одну.\n\nНаприклад, ліміт в кожній з ваших тем – 100 000 згадувань в місяць. Об’єднав дві теми в одну, ви отримаєте нову тему з лімітом 200 000 згадувань в місяць 🤩\n![image](/static/images/announcements/topicsMerging/uk.gif)\n\n☝ Важливі нюанси:\n\n* При об’єднанні ви використовуєте теми лише з вашого акаунту. Наприклад, вам доступні п’ять тем. Якщо ви об’єднаєте дві з них в одну, вам залишаться доступні три теми;\n* Ви зможете змінювати ліміт в об’єднаній темі навіть після її створення. В цьому вам допоможе команда підтримки, просто напишіть нам на [support@youscan.io](mailto:support@youscan.io);\n* Об’єднання тем доступно, починаючи з тарифу Listen.\n");

/***/ }),

/***/ "UcHs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can collect Twitch live streams via channels. To do so, you’ll need to add a page of a streamer as a channel, and we’ll collect every new live stream they post.\n\n![add_channel](/static/images/announcements/twitchLiveViaChannels/en_1.png)\n\nMoreover, you’ll be able to analyze the maximum concurrent views for each livestream collected\n\n![max_views](/static/images/announcements/twitchLiveViaChannels/en_2.png)\n\nNeed more details? Contact us via support chat or [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "mqq0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, puedes recopilar live stream de Twitch a través de canales. Para ello, tendrás que añadir una página de un streamer como canal, y recopilaremos cada nueva transmisión en vivo que publiquen.\n\n![add_channel](/static/images/announcements/twitchLiveViaChannels/es_1.png)\n\nAdemás, podrás analizar el máximo de visualizaciones simultáneas para cada transmisión en vivo recopilada\n\n![max_views](/static/images/announcements/twitchLiveViaChannels/es_2.png)\n\n¿Necesitas más información? Contáctenos a través del chat de soporte o en [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "DUDX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете збирати стріми Twitch через канали. Для цього вам потрібно додати сторінку стрімера як канал, і ми будемо збирати кожен новий прямий ефір, який він публікує.\n\n![add_channel](/static/images/announcements/twitchLiveViaChannels/uk_1.png)\n\nКрім того, ви зможете проаналізувати максимальну кількість одночасних переглядів для кожного стріму.\n\n![max_views](/static/images/announcements/twitchLiveViaChannels/uk_2.png)\n\nПотрібна додаткова інформація? Зв'яжіться з нами через чат підтримки або [support@youscan.io](mailto:support@youscan.io).");

/***/ }),

/***/ "QNCO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, you can set historical collection from Twitter yourself. No need to contact our support team.\n\n**To collect historical data, follow these steps:**\n\n- Open the topic where you need to collect data;\n- In the “Settings,” go to “History collection”;\n- Select the period for which you want to collect the historical data;\n- Hit “Start collection” and wait till the data is collected.\n\n![image](/static/images/announcements/twitterCollectionForClients/en1.gif)\n\n**☝️ Important**\n\n- You can collect historical data from Twitter **for the last 30 days for free**.\n- The number of available free collections equals the number of topics in your account *2. For example, if your account has 10 topics, you can launch 20 historical data collections every calendar month.\n  Check the counter to see how many Twitter history collections are available in your topic.\n\n![image](/static/images/announcements/twitterCollectionForClients/en2.png)\n- You can collect historical data from Twitter for **up to 2 years by request**. If you wish to launch paid historical data collection from Twitter, please contact our support team at _support@youscan.io_.\n");

/***/ }),

/***/ "4kD+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ви можете запускати збір історичних даних з Twitter самостійно, без допомоги нашої служби підтримки.\n\n**Щоб зібрати історичні дані:**\n\n- Зайдіть в необхідну тему;\n- В меню «Налаштування» перейдіть блоку «Збір історії»;\n- Виберіть період, за який ви хочете зібрати історичні дані;\n- Натисніть «Почати збір», і дочекайтесь завершення збору.\n\n![image](/static/images/announcements/twitterCollectionForClients/uk1.gif)\n\n**☝️ Важливі деталі**\n\n- Ви можете зібраті дані з Twitter за **останні 30 днів безкоштовно.**\n- Кількість доступних безкоштовних зборів дорівнює кількості тем у вашому акаунті *2. Наприклад, якщо у вас акаунт на 10 тем, ви можете запускати 20 історичних зборів з Twiter кожного місяця.\n\n  Звіртеся з лічільником, щоб дізнатись, скільки в вашій темі лишилось доступних безкоштовних зборів з Twitter.\n\n![image](/static/images/announcements/twitterCollectionForClients/uk2.png)\n- Ви також можете замовити збір історичних даних з Twitter **глибиною до 2-ох років**. Для цього зв’яжіться з нашою командою підтримки _(support@youscan.io)_.\n");

/***/ }),

/***/ "XlNN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You wanted — you got it! From now on, you can finally collect retro data from Twitter in your topics if you are subscribers to Listen, Analyze or Innovate pricing plans :\n\n- collect historical data from Twitter **for the last 30 days for free**.\n\n☝️The number of available free collections equals the number of topics in your account *2. For example, if your account has 10 topics, you will be able to launch 20 historical data collections every 30 days.\n\n- collect historical data from Twitter **for up to 2 years by request.**\n\nThe cost is 1000 USD per 1 topic. The depth of the collection is up to 1M mentions and up to 2 years.\n\n![image](/static/images/announcements/twitterHistory/en.png)\n\n☝️ Important details\n\n- if you wish to launch historical data collection from Twitter (free or paid), please contact our support team in messenger or at support@youscan.io\n- Twitter does not provide any morphology/stemming, so to have a solid retro data collection you should list all the forms of the keywords in the query (*apple OR apple**S***).");

/***/ }),

/***/ "olYu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви просили — ми зробили! Відтепер вам доступні такі типи зборів історичних даних з Twitter в ваші теми на тарифних планах Listen, Analyze та Innovate:\n\n- **бескоштовний** **збір** ретроспективних даних з Twitter **за останні 30 днів**:\n\n☝️ Кількість доступних безкоштовних зборів щомісяця дорівнює кількості тем в вашому акаунті *2. Наприклад, якщо в вашому акаунті є 10 тем: ви зможете запускати 20 безкоштовних зборів з Twitter кожні 30 днів.\n\n- платний збір ретросективних даних з **глибиною до 2 років.**\n\nВартість платного збору становить 1 тис USD за 1 тему. Таким чином можна зібрати до 1 мільйона згадувань глибиною до 2 років.\n\n![image](/static/images/announcements/twitterHistory/uk.png)\n\n☝️ Важливо\n\n- якщо ви хочете запустити безкоштовний або платний збори історічних даних з Twitter, будь ласка, напишіть нашій команді підтримки в мессенджері на сайті або на support@youscan.io\n- Twitter не підтримує відмінювання слів, тому щоб отримати повноцінний збір ретроспективних даних, не забудьте прописати в пошуковому запиті всі можливі варіанти ключових слів (*яблука АБО яблуками*).");

/***/ }),

/***/ "CWKJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You asked for it - we listened! From now on you can launch historical data collection regardless of the time period yourself, you won’t need YouScan support team assistance. To do this:\n\n* Open the “Settings” section of the needed topic, then click on “History collection”;\n* Select the necessary time period in the calendar;\n* Click on “Start collection”\n\n![image](/static/images/announcements/unlimited_history_collection/en.gif)\n\n☝️Find out all the important details about historical data collections in our [Knowledge Base](https://help.youscan.io/en/articles/461541-history-collection-how-far-back-can-you-monitor-a-topic)!\n");

/***/ }),

/***/ "Ug8X":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вы просили - мы сделали! Теперь вы можете запускать исторический сбор за любой период времени самостоятельно, без помощи команды поддержки YouScan! Для этого:\n\n* Зайдите в раздел «Настройки» нужной вам темы и откройте раздел «Сбор истории»;\n* Выберите нужный временной период на календаре;\n* Нажмите «Начать сбор».\n\n![image](/static/images/announcements/unlimited_history_collection/ru.gif)\n\n☝️Все важные детали о работе исторических сборов можно найти в нашей [Базе Знаний](https://help.youscan.io/ru/articles/461541-%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82-%D1%81%D0%B1%D0%BE%D1%80-%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D0%B8-%D0%B8-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%B5%D1%81%D1%82%D1%8C-%D0%BB%D0%B8%D0%BC%D0%B8%D1%82%D1%8B)!\n");

/***/ }),

/***/ "7or5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви просили - ми зробили! Тепер ви можете запускати історичний збір за будь-який період самостійно, без допомоги команди підтримки YouScan! Для цього:\n\n* Зайдіть в розділ «Налаштування» необхідної темі та видкрийте розділ «Збір історії»;\n* Виберіть необхідний період в календарі;\n* Натисніть «Почати збір».\n\n![image](/static/images/announcements/unlimited_history_collection/uk.gif)\n\n☝️Усі важливі деталі роботи історичних зборів можна знайти в нашій [Базі Знань](https://help.youscan.io/ru/articles/461541-%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82-%D1%81%D0%B1%D0%BE%D1%80-%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D0%B8-%D0%B8-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%B5%D1%81%D1%82%D1%8C-%D0%BB%D0%B8%D0%BC%D0%B8%D1%82%D1%8B)!\n");

/***/ }),

/***/ "MVnA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now when adding channels, you'll see the prompts, making it easier and faster to connect new pages. Just follow these simple steps to add the channel you want:\n\n- Go to \"Settings\" in the topic where you'd like to include a new channel\n- From the list of most popular sources, select the one you need\n- In the pop-up window, enter your URL and click Add.\n\n![image](/static/images/announcements/updatedChannels/en.gif)\n\n- If you don’t see the channel you need in the list, simply enter your URL in the input above the list.\n\n👆 Note that to add certain pages to channels, you may need to authorize them first in [Social accounts](https://app.youscan.io/settings/social_accounts).\n");

/***/ }),

/***/ "LtFf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora, agregando unos canales nuevos, vas a ver unos consejos, los que facilitarán y acelerarán la vinculación de nuevas páginas. Simplemente sigue estos sencillos pasos para agregar el canal que quieras:\n\n- Ve a los \"Ajustes\" en el tema donde te gustaría añadir un nuevo canal\n- De la lista de fuentes más populares, selecciona la que necesitas\n- En la ventana emergente, ingresa la URL del canal y haz clic en \"Agregar\"\n\n![image](/static/images/announcements/updatedChannels/es.gif)\n\n- Si no ves el canal necesario en la lista, simplemente ingresa su URL en el espacio por encima de la lista.\n\n👆 Ten en cuenta que para agregar ciertas páginas a los canales, es importante [autorizarlas primero en las cuentas sociales](https://app.youscan.io/settings/social_accounts).\n");

/***/ }),

/***/ "f9BR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер при додаванні каналів ви бачитимете підказки, що спрощують і прискорюють підключення нових сторінок. Щоб додати потрібний канал, виконайте ці прості кроки:\n\n- Перейдіть до \"Налаштувань\" у темі, де ви хочете додати новий канал;\n- З переліку найпопулярніших джерел виберіть потрібне вам;\n- У вікні, що спливає, введіть URL-адресу і натисніть Додати.\n\n![image](/static/images/announcements/updatedChannels/uk.gif)\n\n- Якщо ви не бачите потрібного вам каналу у списку, просто введіть його URL-адресу у полі над списком.\n\n👆 Деякі сторінки перед підключення до каналів потрібно авторизувати у [Соціальних акаунтах](https://app.youscan.io/settings/social_accounts).\n");

/***/ }),

/***/ "0aFK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, YouScan automatically detects more than 80 predefined subjects in text mentions, including topics related to business, finance, and marketing, as well as lifestyle, health, and travel. This means that:\n\n- By monitoring a wider range of subjects, you can gain a deeper understanding of the audience's interests as well as the topics they are discussing.\n- This can help to make informed decisions about marketing, product development, and overall business strategy.\n- You get the ability to automatically detect potential crises such as social injustice, layoffs, and political unrest, help to be aware of emerging risks, and mitigate the impact of a crisis.\n\n![image](/static/images/announcements/updatedSubjects/en.png)\n\n📚 Learn more about the filter by Subjects in our [Knowledge Base](https://help.youscan.io/en/articles/3371256-the-subject-filter)\n");

/***/ }),

/***/ "lj3o":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("A partir de ahora, YouScan detecta automáticamente más de 80 temas predefinidos en las menciones textuales, incluso unos temas relacionados con negocios, finanzas y marketing, así como con estilo de vida, salud y viajes. Esto significa que:\n\n- Monitoreando una gama más amplia de temas, puedes hacerte una idea más profunda de los intereses de tu audiencia, así como de los temas descutidas.\n- Esto te puede ayudar a tomar decisiones argumentadas para el tema de marketing, desarrollo de productos y estrategia general de negocios.\n- Serás capaz de detectar automáticamente unas posibles crisis tales como la injusticia social, los despidos y los disturbios políticos, así como estar al tanto de los riesgos emergentes y mitigar el impacto de una crisis.\n\n![image](/static/images/announcements/updatedSubjects/es.png)\n\n📚 Lee más sobre el filtro por Temas en nuestra [Base de conocimiento](https://help.youscan.io/en/articles/3371256-the-subject-filter)\n");

/***/ }),

/***/ "TANM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер, YouScan автоматично визначає більше 80 попередньо визначених тем у текстових згадках, включаючи теми, пов'язані з бізнесом і промисловістю, фінансами та маркетингом, а також зі стилем життя, здоров'ям та подорожами. Це означає, що:\n\n- Моніторинг більш широкого спектру тем дозволяє вам отримати глибоке розуміння інтересів аудиторії та тем, про які вони говорять.\n- Це допоможе приймати обґрунтовані рішення щодо маркетингу, розробки продуктів та загальної стратегії бізнесу.\n- Ви отримаєте можливість автоматичного виявляти потенційні кризи, такі як соціальна несправедливість, звільнення та політична нестабільність, зможете бути уважними до нових ризиків та зменшувати вплив можливої кризи.\n\n![image](/static/images/announcements/updatedSubjects/uk.png)\n\n📚 Дізнайтесь більше про фільтр по Тематиках в нашій [Базі знань](https://help.youscan.io/en/articles/3371256-the-subject-filter)\n");

/***/ }),

/***/ "Ozqr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Effortless Editing**\n\nForget about switching to edit mode for simple changes! Now, editing the name or description of a dashboard or widget is a breeze. Just click on the text you want to modify, type your corrections, and hit Enter.\n\n![image](/static/images/announcements/updatesForDashboards/en.gif)\n\n**Better Visibility**\n\nYour dashboard's description and logo are now consistently visible. No more limitations – they stay in view whether you access the dashboard internally or through an external link.\n\n![image](/static/images/announcements/updatesForDashboards/en2.png)\n\n**Swift Sharing**\n\nIntroducing the new Share button! Easily distribute your dashboard to colleagues or customers with just a click, streamlining the sharing process.\n\n![image](/static/images/announcements/updatesForDashboards/en3.png)\n");

/***/ }),

/***/ "H7DG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Edición sencilla**\n\nOlvídate de cambiar al modo de edición para realizar cambios sencillos. Ahora, editar el nombre o la descripción de un tablero o widget es pan comido. Sólo tienes que hacer clic en el texto que deseas modificar, escribir las correcciones y pulsar Intro.\n\n![image](/static/images/announcements/updatesForDashboards/es.gif)\n\n**Mejor visibilidad**\n\nLa descripción y el logotipo de tu tablero son ahora siempre visibles. Se acabaron las limitaciones: permanecen a la vista tanto si accedes al tablero internamente como a través de un enlace externo.\n\n![image](/static/images/announcements/updatesForDashboards/es2.png)\n\n**Compartir rápidamente**\n\nPresentamos el nuevo botón Compartir. Distribuya fácilmente su tablero a colegas o clientes con un solo clic, agilizando el proceso de compartir.\n\n![image](/static/images/announcements/updatesForDashboards/es3.png)\n");

/***/ }),

/***/ "Xa6l":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Легке редагування**\n\nРедагувати назву або опис дашборда чи віджета стало простіше. Натисніть на текст, який ви хочете змінити, внесіть зміни, натисніть Enter і готово.\n\n![image](/static/images/announcements/updatesForDashboards/uk.gif)\n\n**Все на видноті**\n\nОпис і логотип вашого дашборду тепер завжди на видному місці. Вони залишаються видимими незалежно від того, чи ви переходите на дашборд через внутрішнє посилання, чи через зовнішнє.\n\n![image](/static/images/announcements/updatesForDashboards/uk2.png)\n\n**Ділитись просто**\n\nСкористайтесь новою кнопкою \"Поділитися\", щоб ділитися дашбордами з колегами або клієнтами ще швидше.\n\n![image](/static/images/announcements/updatesForDashboards/uk3.png)\n");

/***/ }),

/***/ "We5E":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Have you ever wanted to add a user to your account but didn't want them to create new topics? Well, we've got you covered!\n\nAll you have to do is toggle off the \"Can create topics\" option when adding a new user, and voila! This user won't have the power to create topics.\n\n![image](/static/images/announcements/userPermissions/en.png)\n\nIf you already have users added to your account and want to change their topic creation permissions, you can do that too.\n\n☝️This functionality is only available if \"Access right to topic permissions” is turned on in your account. [Read more about different access types in our Knowledge Base.](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics)\n");

/***/ }),

/***/ "3LdF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("¿Alguna vez has querido añadir un usuario a tu cuenta pero no querías que creara nuevos temas? Pues bien, ¡tenemos la solución!\n\nTodo lo que tienes que hacer es desactivar la opción \"Puede crear temas\" cuando añadas un nuevo usuario, y ¡voilá! Este usuario no podrá crear temas.\n\n![image](/static/images/announcements/userPermissions/es.png)\n\nSi ya tienes usuarios añadidos a tu cuenta y quieres cambiar sus permisos de creación de temas, también puedes hacerlo.\n\n☝️Esta funcionalidad sólo está disponible si la opción \"Derechos de acceso para permisos de tópico\" está activada en su cuenta. [Más información sobre los distintos tipos de acceso en nuestra Base de conocimientos.](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics)\n");

/***/ }),

/***/ "J28R":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ви коли-небудь хотіли додати користувача до свого аканту, але так, щоб він не міг створити нову тему? Що ж, ми вирішили цю проблему!\n\nВсе, що вам потрібно зробити, це вимкнути опцію \"Може створювати теми\" при додаванні нового користувача, і вуаля! Цей користувач не матиме права створювати теми.\n\n![image](/static/images/announcements/userPermissions/uk.png)\n\nЯкщо до вашого акаунта вже додано користувачів, і ви хочете змінити їхні дозволи на створення тем, ви також можете це зробити.\n\n☝️Цей функціонал доступний лише за умови, що у вашому акаунті увімкнено \"Розділення прав доступу до тем”. [Дізнайтеся більше про різні типи доступу в нашій Базі знань.](https://help.youscan.io/en/articles/740082-how-to-set-up-and-modify-access-to-topics)\n");

/***/ }),

/***/ "Sei9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("[Visual Insights](https://help.youscan.io/en/articles/3178348-image-analysis-with-visual-insights) is an image recognition feature that allows to analyze how consumers use your product and find insights for your brand. The feature is available starting from Insight pricing plan.\n\n\n**Search in filters 🔎**\n\nNow it is possible not only to filter by the most common objects and scenes, but also by other objects, scenes, people, and activities that you need for analysis. Just use the search to find them.\n\n![search](/static/images/announcements/vi-in-gallery/en/vi-search.png)\n\n\n**Visual Insights in Images**\n\nTo make it easier to navigate between images gallery and image analytics, we added the Visual Insights graph to the Images section.\n\n![gallery](/static/images/announcements/vi-in-gallery/en/gallery-preview.png)\n\n![visual-insights](/static/images/announcements/vi-in-gallery/en/vi-preview.png)\n\n\n**More about Visual Insights in our blog:**\n\n[Activities, age and photography style: What the new Visual Insights can reveal about social media images](https://youscan.io/blog/visual-insights-2/)\n\n[How we used social media listening to create customer personas for major beer brands](https://youscan.io/blog/how-we-used-social-media-listening-to-create-customer-personas-for-major-beer-brands/)\n\n[How Social Listening Tools Can Help Brands Launch New Products or Fine-Tune the Old Ones?](https://youscan.io/blog/how-social-listening-tools-can-help-your-brand-to-launch-new-products-or-fine-tune-the-old-ones/)");

/***/ }),

/***/ "KN5y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("[Визуальные инсайты](https://help.youscan.io/ru/articles/3178348-анализ-изображений-с-помощью-visual-insights) — это функциональность автоматического распознавания на изображениях логотипов, объектов, сцен, действий и персон. Визуальные Инсайты позволяет проанализировать ситуации потребления вашего продукта и найти инсайты для бренда. Функциональность доступна с тарифа Insight.\n\n\n**Появился поиск в фильтрах 🔎**\n\nТеперь можно выбирать не только популярные объекты и сцены, но и находить те объекты, сцены, персоны и действия, которые вам необходимы. Просто добавьте их через поиск.\n\n![search](/static/images/announcements/vi-in-gallery/ru/vi-search.png)\n\n\n**Визуальные Инсайты в Изображениях**\n\nЧтобы перемещаться между галереей и аналитикой по изображениям было удобнее, мы разместили Визуальные Инсайты в Изображениях.\n\n![gallery](/static/images/announcements/vi-in-gallery/ru/gallery-preview.png)\n\n![visual-insights](/static/images/announcements/vi-in-gallery/ru/vi-preview.png)\n\n\n**Про кейсы использования и возможности Визуальных Инсайтов в нашем блоге:**\n\n[Запись вебинара \"Visual Insights: выходим за рамки распознавания лого\"](https://youscan.io/ru/blog/webinar-visual-insights-2019/)\n\n[Мониторинг социальных сетей: как найти пользу для бренда — на примере «Оскара»](https://youscan.io/ru/blog/social-networks-monitoring/)\n\n[Распознавание действий людей на фото и другие новые возможности Visual Insights](https://youscan.io/ru/blog/visual-insights-2/)");

/***/ }),

/***/ "a8yw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Візуальні Інсайти — це функціональність автоматичного розпізнавання на зображеннях логотипів, об'єктів, сцен, персон і їх діяльностей. Візуальні Інсайти дозволяють проаналізувати ситуації взаэмодії споживачів із вашим продуктом і знайти інсайти для вашого бренду. Функціональність доступна з тарифу Insight.\n\n\n**З'явився пошук в фільтрах 🔎**\n\nТепер можна обирати не тільки популярні об'єкти, сцени, персони і діяльності, але і знаходити ті, які вам необхідні для аналізу. Просто додайте їх через пошук.\n\n![search](/static/images/announcements/vi-in-gallery/uk/vi-search.png)\n\n\n**Візуальні Інсайти у Зображеннях**\n\nЩоб переходити між галереєю і аналітикою по зображенням було зручніше, ми розмістили графік Візуальні Інсайти у Зображеннях.\n\n![gallery](/static/images/announcements/vi-in-gallery/uk/gallery-preview.png)\n\n![visual-insights](/static/images/announcements/vi-in-gallery/uk/vi-preview.png)\n\n\n**Про кейси використання і можливості Візуальних Інсайтів у нашому блозі:**\n\n[Запис вебінару \"Visual Insights: виходимо за рамки розпізнавання лого\"](https://youscan.io/ru/blog/webinar-visual-insights-2019/)\n\n[Моніторинг соціальних мереж: як знайти користь для бренду - на прикладі «Оскара»](https://youscan.io/ru/blog/social-networks-monitoring/)\n\n[Розпізнавання дій людей на фото і інші нові можливості Visual Insights](https://youscan.io/ru/blog/visual-insights-2/)\n");

/***/ }),

/***/ "7LrV":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("You don't need to research posts engagement anymore! Our new Engagement chart helps you find out which posts with visual content get more likes and discussions among your audience.\n\n![image](/static/images/announcements/viEngagementChart/en1.png)\n\n**How does it work?**\nYouScan algorithms process mentions with images and analyze the audience's reactions. Based on this data, we build a chart that shows the most engaging objects, persons, activities, and scenes on images.\n\n![image](/static/images/announcements/viEngagementChart/en2.png)\n\n☝️ Engagement chart is available to all users with Insight plan or higher in Analytics, on Visual Insights tab.");

/***/ }),

/***/ "uKDF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вам больше не нужно самостоятельно анализировать, какие посты собирают больше лайков и комментариев! График упоминаний по вовлечению поможет быстро понять, какие изображения получают больше вовлечения среди вашей аудитории.\n\n![image](/static/images/announcements/viEngagementChart/ru1.png)\n\n**Как это работает?**\n\nАлгоритм YouScan анализирует упоминания с изображениями и реакцию аудитории на них. На основе этих данных строится график, из которого видно какие объекты, персоны, активности или сцены собирают больше обсуждений и лайков. \n\n![image](/static/images/announcements/viEngagementChart/ru2.png)\n\n☝️График по вовлечению в упоминаниях доступен пользователям с тарифным планом Insight и выше в разделе Аналитика, во вкладке Визуальные Инсайты.");

/***/ }),

/***/ "lv7+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Вам більше не треба буде самостійно аналізувати які пости збирають найбільшу кількість лайків та комментарів! Графік згадувань за залученням допоможе швидко зрозуміти які зображення отримуюють найбільшу увагу вашої аудиторії.\n\n![image](/static/images/announcements/viEngagementChart/uk1.png)\n\n**Як це працює?**\n\nАлгоритм YouScan аналізує згадування з зображеннями та реакцію аудиторії на них. На основі цих данних будується графік, з якого видно які об'єкти, персони, активності та сцени отримують більше обговорення та лайків.\n\n![image](/static/images/announcements/viEngagementChart/uk2.png)\n\n☝️Графік згадуваннь за залученням доступний користувачам з тарифним планом Insight та вище у розділі Аналітика, у вкладці Візуальні Інсайти.");

/***/ }),

/***/ "3i39":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We are thrilled to announce the release of Visual Insights 2.0, the next generation of our image recognition technology. \n\n🌊 First, we have significantly extended the list of objects, scenes, and brand logos that YouScan detects on user-generated images from social media. \n\n🏄 Next, and most importantly, YouScan is now able to detect activities, \nage groups, and occupations of pictured people, so that you can get even deeper customer insights from visual content from social media.\n\n📷 On top of that, you can now filter images by the color scheme and photography style (e.g., monochrome photos), as well as sort out real photos from illustrations.\n\nRead even more about the new capabilities of our image recognition tech in [this article](https://youscan.io/en/article-visual-insights-2)\n\n![Announcements!](/static/images/announcements/vi_2_0/pic.png)\n");

/***/ }),

/***/ "kMii":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Мы рады представить новое поколение нашей технологии распознавания изображений  - Visual Insights 2.0.\n\n🌊Во-первых, мы значительно расширили список объектов, сцен, и логотипов брендов, которые YouScan распознаёт на пользовательских фото из социальных медиа.\n\n📷Кроме этого, вы теперь можете фильтровать изображения по преобладающим на них цветам и типам фотографий (например, “монохромные селфи”), а также разделять иллюстрации и реальные пользовательские фотки.\n\n🏄И самое главное: теперь YouScan распознаёт активности, возрастные группы и род занятий изображенных на фотографиях людей. Благодаря этому вы можете находить еще более глубокие инсайты о ваших потребителях среди визуального контента из соцсетей.\n\nЧитайте о новых возможностях YouScan Visual Insights в [этой статье](https://youscan.io/2019/04/new-vi-opportunities/) у нас в блоге.\n\n![Announcements!](/static/images/announcements/vi_2_0/pic.png)\n");

/***/ }),

/***/ "aZ7o":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми раді представити нове покоління нашої технології розпізнавання зображень - Visual Insights 2.0.\n\n🌊По-перше, ми значно розширили список об'єктів, сцен і логотипів брендів, які YouScan розпізнає на фото з соціальних медіа.\n\n📷Крім цього, ви тепер можете фільтрувати зображення по кольорам і типам фотографій (наприклад, \"монохромні Селфі\"), а також розділяти ілюстрації і реальні користувальницькі фото.\n\n🏄І найголовніше: тепер YouScan розпізнає активності, вікові групи і рід занять зображених на фотографіях людей. Завдяки цьому, ви можете знаходити ще глибші інсайти про ваших споживачів серед візуального контенту з соцмереж.\n\nЧитайте про нові можливості YouScan Visual Insights в [цій статті](https://youscan.io/en/article-visual-insights-2) у нас в блозі.\n\n![Announcements!](/static/images/announcements/vi_2_0/pic.png)\n");

/***/ }),

/***/ "NXxd":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on, we collect videos from Twitch on all pricing plans! Historical data is available from May 22.\n\nVideos from Twitch get added to the topic if your monitoring object (brand, person, etc.) is mentioned:\n- in the title of the video;\n- in the description of the video;\n- in the name of the category/game where the video was published;\n- in the text on the preview image (available with the Visual Data Analysis add-on);  \n- as a logo on the preview image (available with the Visual Data Analysis add-on).  \n\n![image](/static/images/announcements/videosFromTwitch/en.png)\n\n☝️We don’t collect the video file itself. We collect the title, description, and preview image of the video. You can watch the video accessing it via the direct link.");

/***/ }),

/***/ "2GZd":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Відтепер ми збираємо відео з Twitch! Історичні дані доступні із 22 травня.\n\nВідео з Twitch потрапляють в ваші теми, якщо ваш об’єкт моніторингу (бренд, персона, тощо) згадується:\n- у назві відео;\n- в описі відео;\n- в назві категорії/гри, де було опубліковано відео;\n- в тексті на обкладинці відео (аддон Visual Data Analysis);\n- в якості логотипу на обкладинці відео (аддон Visual Data Analysis).\n\n![image](/static/images/announcements/videosFromTwitch/en.png)\n\n☝️Ми збираємо назву, опис та обкладинку відео. Файл з відео не збираємо, тож щоб подивитись відео ви можете перейти на нього по посиланню.  ");

/***/ }),

/***/ "Qg1/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("We improved Visual Insights analytics to help you deeply analyze how your brand's products are handled by people in their everyday lives.\n\nWhat’s new:\n\n- We've added new tools, including a network graph, to provide you with the most advanced social media visual analytics. Now you can find all the visual analytics tools in one tab.\n\n![image](/static/images/announcements/visualInsightsGraph/en1.png)\n\n- Keep track of image objects, scenes, brands, and activities that are becoming popular! To do this, just click on Trends tabs, and your virtual assistant Aina will automatically highlight trending visuals.\n\n![image](/static/images/announcements/visualInsightsGraph/en2.gif)\n\n- The new network visualization will help you to better understand the context in which a brand is represented. Aina analyzes how often brands, objects, scenes, people, and activities occur together and plots them in a way that related visual tags are shown close to each other.\n\n![image](/static/images/announcements/visualInsightsGraph/en3.gif)\n\n☝️ Important:\n\n- Visual Insights is included to Innovate pricing plan, and also is available as an add-on in Listen and Analyze pricing plans;\n- To learn more about the feature and pricing plan possibilities contact us at [support@youscan.io](mailto:support@youscan.io)\n");

/***/ }),

/***/ "oDWi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ми покращили аналітику Visual Insights, щоб допомогти вам краще аналізувати, хто, де і як взаємодіє з продуктом вашого бренду.\n\nЩо нового:\n\n- Ми додали нові інструменти, включно з графіком взаємозв’язків, щоб запезпечити вас найпотужнішою візуальною аналітикою соціальних медіа. Тепер ви можете знайти всі інструменти візуальної аналітики на одній вкладці.\n\n![Images!](/static/images/announcements/visualInsightsGraph/uk1.png)\n\n- Відстежуйте зображення об’єктів, сцен, брендів та діяльностей, що стають популярними! Для цього натисніть на кнопку Тренди, а ваш віртуальний асистент Aina автоматично підсвітить трендові зображення.\n\n![Images!](/static/images/announcements/visualInsightsGraph/uk2.gif)\n\n- Візуалізація взаємозв’язків домоможе вам краще зрозуміти контекст, в якому представлений ваш бренд. Aina аналізує, як часто бренди, об’єкти, сцени, люди та діяльності взаємодіють та розміщує їх таким чином, що пов’язані візуальні теги розташовані ближче одне до одного.\n\n![Images!](/static/images/announcements/visualInsightsGraph/uk3.gif)\n\n☝️ Важливі нюанси:\n\n- Функція Visual Insights включена в таріфний план Innovate, а також доступна в якості адд-она на тарифних планах Listen та Analyze.\n- Щоб дізнатися більше про функцію та можливостях тарифного плану, напишіть нам на [support@youscan.io](mailto:support@youscan.io)\n");

/***/ }),

/***/ "6d7D":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Stay connected effortlessly and never miss a beat with real-time mentions delivered straight to your WhatsApp. Staying informed on the go has never been easier.\n\n![img](/static/images/announcements/whatsAppIntegration/en.png)\n\nTo stay ahead of the curve, navigate to «Settings» → «Integrations» in your chosen topic and add the **WhatsApp** integration. ");

/***/ }),

/***/ "P+vX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Mantente conectado sin esfuerzo y no te pierdas ni un detalle gracias a las menciones en tiempo real enviadas directamente a tu **WhatsApp**. Mantenerse informado sobre la marcha nunca ha sido tan fácil.\n\n![img](/static/images/announcements/whatsAppIntegration/es.png)\n\nPara ir por delante, ve a \"Ajustes\" → \"Integraciones\" en el tema que hayas elegido y añade la integración de **WhatsApp**. ");

/***/ }),

/***/ "JakL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Залишайтеся на зв'язку без зайвих зусиль отримуючи згадки в режимі реального часу, прямо на ваш **WhatsApp**. Залишатися в курсі подій ще ніколи не було так просто.\n\n![img](/static/images/announcements/whatsAppIntegration/uk.png)\n\nЩоб бути на крок попереду, перейдіть до розділу «Налаштування» → «Інтеграції», у вибраній темі, та додайте інтеграцію з **WhatsApp**. ");

/***/ }),

/***/ "Vh54":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**The WOM (Word of Mouth)** category allows to identify mentions where a person describes their experience of engaging with a brand.\n\nFor more focused work with WOM mentions, our AI assistant Aina has divided them into categories:\n\n![wom_types](/static/images/announcements/wom_types/en.png)\n\n**Opinion** — opinion, analysis or assessment of an object.\n**Question** — a request made in order to get the information or result.\n**Comparison** — products and services comparison of one or several brands.\n**Complaint** — dissatisfaction with a product, service, event, or a person.\n**Recommendation** — advice to use or not to use a product or a service.\n**Official response** — company representative's response.\n**Mismatch** — the object of monitoring is in the #hashtag or @tag and is not directly related to the text of the mention.\n**WOM** — all mentions where a person describes their experience of engaging with a brand. Includes all the categories listed above.\n\nAll auto-categories in YouScan are defined relative to the monitoring subject.");

/***/ }),

/***/ "Uz7J":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Категория WOM (Word of Mouth)** позволяет выделить упоминания, в которых человек описывает свой опыт взаимодействия с брендом. \n\nДля прицельной работы с WOM упоминаниями, наш AI-ассистент Aina разделила их на категории:\n\n![wom_types](/static/images/announcements/wom_types/ru.png)\n\n- **Мнение** — мнение, анализ или оценка объекта.\n- **Вопрос** — обращение с целью получить информацию или результат.\n- **Сравнение** — сравнение продуктов или услуг одного или нескольких брендов.\n- **Жалоба** — недовольство продуктом, сервисом, событием или персоной.\n- **Рекомендация** — совет использовать либо не использовать продукт или сервис.\n- **Официальный ответ** — ответ представителя компании.\n- **Случайное упоминание** — объект мониторинга упомянут #хештегом или @тегом и не имеет прямого **отношения к тексту упоминания.\n- **WOM** — все сообщения, в которых человек пишет об опыте взаимодействия с брендом. Включает все перечисленные выше категории.\n\nВсе автокатегории в YouScan определяются относительно объекта мониторинга.\n\nДетальнее о WOM категориях можно узнать в [нашем блоге](https://youscan.io/ru/blog/new-filters/).");

/***/ }),

/***/ "36t0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("**Категорія WOM (Word of Mouth)** дозволяє виділити згадування, в яких людина описує свій досвід взаємодії з брендом.\n\nДля прицільної роботи з WOM згадуваннями, наш AI-асистент Aina розділила їх на категорії:\n\n![wom_types](/static/images/announcements/wom_types/uk.png)\n\n**Думка** — точка зору, аналіз або оцінка об'єкту.\n**Питання** — запит з метою отримати інформацію або результат.\n**Порівняння** — порівняння продуктів або послуг одного чи декількох брендів.\n**Скарга** — незадоволення продуктом, сервісом, подією, або персоною.\n**Рекомендація** — порада використовувати або не використовувати продукт чи сервіс.\n**Офіційна відповідь** — відповідь представника компанії.\n**Випадкове згадування** — об'єкт моніторингу згаданий #хештегом або @тегом і не має прямого відношення до тексту.\n**WOM** — усі повідомлення, в яких людина  описує досвід взаємодії з брендом. Включає всі перераховані вище категорії.\n\nУсі автокатегоріі в YouScan визначаються стосовно об'єкту моніторингу.\n\nДетальніше про WOM категорії можна дізнатися в [нашому блозі](https://youscan.io/ru/blog/new-filters/).");

/***/ }),

/***/ "p+3e":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Get the most out of your data and uncover hidden insights quickly and easily. With the new WordCloud, you can save time and effort in discovering the real meaning behind text data.\n\n**Visible range and statistics by unique mentions**\n\nDrill down into the data to uncover hidden gems and discover new trends. The *Visible Range* slider helps you identify the insights that really matter and save time.\n\nMoreover, with our statistics by unique mentions, you can be sure the data you’re seeing is reliable and trustworthy, without the worry of spammy duplicates.\n\n![wordcloud_improvements_1](/static/images/announcements/wordcloud_improvements/1.gif)\n\n**Highlight frequent words by sentiment**\n\nQuickly and easily identify customer pain points and complaints with WordCloud's sentiment analysis, giving you the insights you need to make better decisions and improve customer satisfaction.\n\n![wordcloud_improvements_2](/static/images/announcements/wordcloud_improvements/2.gif)\n\n**Save and share your findings**\n\nSave time by quickly accessing your preferred WordCloud view without having to set up the parameters each time. You can share your insights and discoveries with the world just in a few clicks in the most convenient format.\n\n![wordcloud_improvements_3](/static/images/announcements/wordcloud_improvements/3.png)\n");

/***/ }),

/***/ "mn7P":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Отримайте максимум від своїх даних, швидко й легко виявляючи приховані інсайти. З новою Хмарою слів ви можете заощадити час і зусилля на аналітику текстових даних.\n\n**Діапазон видимості та статистика по унікальним згадуванням**\n\nПридивіться уважніше про що саме говорять ваші клієнти і які нові тенденції зараз панують на ринку. Повзунок *Діапазон видимості* допомагає занходити дійсно важливі інстайти та економити ваш час.\n\nКрім того, завдяки новій статистиці по унікальним згадуванням ви можете бути впевнені, що дані, які ви бачите, надійні та заслуговують на довіру, не турбуючись про спам-дублікати.\n\n![wordcloud_improvements_1](/static/images/announcements/wordcloud_improvements/1.gif)\n\n**Часті слова за тональністю**\n\nШвидко та легко виявляйте проблеми та скарги клієнтів за допомогою аналізу тональності у Хмарі слів. Знайдена інформація допоможе у прийнятті кращих рішень і підвищення рівня задоволеності клієнтів.\n\n![wordcloud_improvements_2](/static/images/announcements/wordcloud_improvements/2.gif)\n\n**Зберігайте і діліться своїми знахідками**\n\nЕкономте час, отримавши доступ до бажаного перегляду Хмари слів без необхідності щоразу налаштовувати параметри. Ви можете поділитися своїми ідеями та відкриттями з іншими лише за кілька кліків у найзручнішому для вас форматі.\n\n![wordcloud_improvements_3](/static/images/announcements/wordcloud_improvements/3.png)\n");

/***/ }),

/***/ "mJZV":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("From now on YouScan collects data from Yandex.Maps by keywords! If there is a keyword from your search query in the name of the location or in the text of the review, then such a mention will be automatically collected to your topic.\n\nThis means that:\n- you no longer need to add channels from Yandex.Maps manually;\n- you will not miss mentions of your monitoring object under random locations;\n![yandex_maps](/static/images/announcements/yandex_maps/en.png)\n- you can use data from Yandex.Maps for extensive researches, for example, to find out what people say about service in hotels in a specific city.\n\n☝️ Important details:\n- we collect reviews, answers, and comments;\n- historical data starting from 15.06.2021 is available for collection.\n");

/***/ }),

/***/ "X4xF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Теперь YouScan мониторит Яндекс.Карты по ключевым словам! Если ключевое слово из вашего запроса есть в названии локации или в тексте отзыва, то такое упоминание автоматически попадет в тему.\n\nЭто значит что:\n- больше не нужно добавлять каналы из Яндекс.Карт вручную;\n- вы не пропустите отзывы о своем объекте мониторинга под другими локациями;\n![yandex_maps](/static/images/announcements/yandex_maps/ru.png)\n- данные с Яндекс.Карт теперь можно использовать для широких исследований. Например, узнать, что пишут люди о сервисе в банках в Санкт-Петербурге.\n\n☝️ Важные нюансы сбора:\n- cобираем отзывы, ответы и комментарии;\n- исторические данные доступны с 15.06.2021.\n");

/***/ }),

/***/ "SUE0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер YouScan моніторить Яндекс.Карти за ключовими словами! Якщо ключове слово з вашого запиту є в назві локації або в тексті відгуку, то така згадка автоматично потрапить в тему.\n\nЦе означає що:\n- більше не потрібно додавати канали з Яндекс.Карт вручну;\n- ви не пропустите відгуки про свій об'єкт моніторингу під іншими локаціями;\n  ![yandex_maps](/static/images/announcements/yandex_maps/uk.png)\n- дані з Яндекс.Карт тепер можна використовувати для широких досліджень. Наприклад, дізнатися, що люди в конкретному місті думають про сервіс в банках.\n\n☝️ Важливі нюанси збору:\n- збираємо відгуки, відповіді та коментарі;\n- історичні дані доступні з 15.06.2021.\n");

/***/ }),

/***/ "NbAa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Every mention has engagements and views count. It is updated regulary for all articles that published for the last month.\n\nComments are not monitored.\n\n![Announcements!](/static/images/announcements/yandex_zen/pic.png)\n");

/***/ }),

/***/ "MjfK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Для каждой статьи доступны показатели вовлечения и просмотров. Количество комментариев и просмотров регулярно обновляется для всех публикаций младше месяца с момента публикации.\n\nКомментарии к статьям не мониторятся.\n\n![Announcements!](/static/images/announcements/yandex_zen/pic.png)\n");

/***/ }),

/***/ "UBr0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Для кожної статті збираються показники залучення та переглядів. Показники кількості коментарів та переглядів регулярно оновлюються для всіх публікацій, з часу публікації яких минуло до 30 днів.\n\nКоментарі до статей не моніторяться.\n\n![Announcements!](/static/images/announcements/yandex_zen/pic.png)\n");

/***/ }),

/***/ "lnuq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Now, you can quickly separate YouTube **Shorts** from other videos. Simply head to Filters > Sources and select the specific YouTube video format you need.\n\n![image](/static/images/announcements/youtubeFilter/en.png)\n\nShould you require more information, please feel free to write us on support chat or support@youscan.io.");

/***/ }),

/***/ "OuIF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Ahora puedes separar rápidamente los **Shorts** de YouTube de otros vídeos. Solo tienes que ir a Filtros > Fuentes y seleccionar el formato de vídeo de YouTube específico que necesites.\n\n![image](/static/images/announcements/youtubeFilter/es.png)\n\nSi necesitas más información, no dudes en escribirnos al chat de soporte o a support@youscan.io.");

/***/ }),

/***/ "3EB2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ("Тепер ви можете швидко відокремити YouTube **Shorts** від інших відео. Просто перейдіть до «Фільтри» > «Джерела» та виберіть потрібний формат відео на YouTube.\n\n![image](/static/images/announcements/youtubeFilter/uk.png)\n\nЯкщо вам потрібна додаткова інформація, будь ласка, напишіть нам у чат підтримки або на support@youscan.io.");

/***/ }),

/***/ "MShE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   KN: () => (/* binding */ changeTheme),
/* harmony export */   L9: () => (/* binding */ ThemeLabels),
/* harmony export */   MT: () => (/* binding */ ColorSchemeTypes),
/* harmony export */   QE: () => (/* binding */ initColorHandler),
/* harmony export */   VC: () => (/* binding */ forceLightTheme),
/* harmony export */   WE: () => (/* binding */ ColorSchemeLabels),
/* harmony export */   eI: () => (/* binding */ ALL_COLOR_SCHEME_TYPES),
/* harmony export */   g4: () => (/* binding */ isDarkTheme),
/* harmony export */   mw: () => (/* binding */ ALL_THEME_TYPES),
/* harmony export */   uS: () => (/* binding */ getCurrentColorSchemeType),
/* harmony export */   vi: () => (/* binding */ changeColorScheme)
/* harmony export */ });
/* unused harmony exports ThemeTypes, subscribeForSystemThemeUpdate, setBodyThemeAttribute, forceDarkTheme, getCurrentThemeType, setCurrentThemeType, setCurrentColorSchemeType */
var _a, _b;
var onChange;
var styleBasedModules;
var currentColorSchemeType;
var currentThemeType;
var ColorSchemeTypes;
(function (ColorSchemeTypes) {
    ColorSchemeTypes["DEFAULT"] = "default";
    ColorSchemeTypes["OLD_SCHOOL"] = "oldSchool";
    ColorSchemeTypes["BRIGHT"] = "bright";
    ColorSchemeTypes["PASTEL"] = "pastel";
})(ColorSchemeTypes || (ColorSchemeTypes = {}));
var ALL_COLOR_SCHEME_TYPES = Object.values(ColorSchemeTypes);
var ColorSchemeLabels = (_a = {},
    _a[ColorSchemeTypes.DEFAULT] = function () { return l('Default'); },
    _a[ColorSchemeTypes.OLD_SCHOOL] = function () { return l('Old School'); },
    _a[ColorSchemeTypes.BRIGHT] = function () { return l('Bright'); },
    _a[ColorSchemeTypes.PASTEL] = function () { return l('Pastel'); },
    _a);
var ThemeTypes;
(function (ThemeTypes) {
    ThemeTypes["DARK"] = "dark";
    ThemeTypes["LIGHT"] = "light";
})(ThemeTypes || (ThemeTypes = {}));
var ALL_THEME_TYPES = Object.values(ThemeTypes);
var ThemeLabels = (_b = {},
    _b[ThemeTypes.DARK] = function () { return l('Dark'); },
    _b[ThemeTypes.LIGHT] = function () { return l('Light'); },
    _b);
var initStyleBasedModules = function (modules) {
    modules.forEach(function (initStyleBasedModule) { return initStyleBasedModule(); });
};
var subscribeForSystemThemeUpdate = function () {
    window.matchMedia('(prefers-color-scheme: dark)').addListener(function (_a) {
        var matches = _a.matches;
        if (matches)
            changeTheme(ThemeTypes.DARK);
        else
            changeTheme(ThemeTypes.LIGHT);
    });
};
var setBodyThemeAttribute = function (themeType) {
    var theme = document.createAttribute('data-youscan-theme');
    theme.value = themeType;
    document.body.attributes.setNamedItem(theme);
    document.documentElement.setAttribute('data-youscan-theme', themeType);
};
var initColorHandler = function (rerenderApp) {
    var otherStyleBasedModules = [];
    for (var _i = 1; _i < arguments.length; _i++) {
        otherStyleBasedModules[_i - 1] = arguments[_i];
    }
    if (!localStorage.getItem('colorSchemeType'))
        setCurrentColorSchemeType(ColorSchemeTypes.DEFAULT);
    if (!localStorage.getItem('theme')) {
        if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
            setCurrentThemeType(ThemeTypes.DARK);
        }
        else {
            setCurrentThemeType(ThemeTypes.LIGHT);
        }
    }
    subscribeForSystemThemeUpdate();
    setBodyThemeAttribute(getCurrentThemeType());
    if (!onChange)
        onChange = rerenderApp;
    if (otherStyleBasedModules) {
        styleBasedModules = otherStyleBasedModules;
        initStyleBasedModules(styleBasedModules);
    }
};
var changeTheme = function (themeType) {
    setCurrentThemeType(themeType);
    setBodyThemeAttribute(themeType);
    initStyleBasedModules(styleBasedModules);
    onChange();
};
var forceTheme = function (themeType) {
    currentThemeType = themeType;
    setBodyThemeAttribute(themeType);
    initStyleBasedModules(styleBasedModules);
    onChange();
};
var forceLightTheme = function () { return forceTheme(ThemeTypes.LIGHT); };
var forceDarkTheme = function () { return forceTheme(ThemeTypes.DARK); };
var isDarkTheme = function () { return getCurrentThemeType() === ThemeTypes.DARK; };
var getCurrentThemeType = function () { return currentThemeType || localStorage.getItem('theme'); };
var setCurrentThemeType = function (themeType) {
    currentThemeType = themeType;
    localStorage.setItem('theme', themeType);
};
var changeColorScheme = function (colorSchemeType) {
    setCurrentColorSchemeType(colorSchemeType);
    initStyleBasedModules(styleBasedModules);
    onChange();
};
var getCurrentColorSchemeType = function () {
    return currentColorSchemeType || localStorage.getItem('colorSchemeType') || 'default';
};
var setCurrentColorSchemeType = function (colorSchemeType) {
    currentColorSchemeType = colorSchemeType;
    localStorage.setItem('colorSchemeType', colorSchemeType);
};


/***/ }),

/***/ "TJkG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Dumbbell_Dumbbell)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/components/other/ChartLegend/index.ts + 4 modules
var ChartLegend = __webpack_require__("RO5+");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/utils/colors.ts
var utils_colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/components/charts/Dumbbell/Dumbbell.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Dumbbell = ({"bottomControls":"VyAsel2CKfkNp3FeYj4w","legend":"G6ymu9Z4bZyVVuFCuCqF"});
;// CONCATENATED MODULE: ./src/components/charts/Dumbbell/Dumbbell.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};








var formatSeries = function (_a) {
    var e_1, _b;
    var data = _a.data, hiddenCategories = _a.hiddenCategories, colors = _a.colors;
    if (!data)
        return null;
    var series = [];
    try {
        for (var data_1 = __values(data), data_1_1 = data_1.next(); !data_1_1.done; data_1_1 = data_1.next()) {
            var s = data_1_1.value;
            var serie = {
                name: s.name,
                data: s.data.map(function (d, i) { return (__assign(__assign({}, d), { visible: !hiddenCategories.includes(d.name), color: d.color || (colors === null || colors === void 0 ? void 0 : colors[i]) })); }),
            };
            series.push(serie);
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (data_1_1 && !data_1_1.done && (_b = data_1.return)) _b.call(data_1);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return series;
};
var DumbbellChart = function (_a) {
    var _b = _a.isRelative, isRelative = _b === void 0 ? false : _b, _c = _a.withoutHeader, withoutHeader = _c === void 0 ? false : _c, _d = _a.title, title = _d === void 0 ? '' : _d, info = _a.info, height = _a.height, _e = _a.series, series = _e === void 0 ? [] : _e, _f = _a.colors, colors = _f === void 0 ? (0,utils_colors/* getCurrentChartColorScheme */.KK)() : _f, bottomContent = _a.bottomContent, _g = _a.configOptions, configOptions = _g === void 0 ? {} : _g, _h = _a.callback, callback = _h === void 0 ? function () { } : _h, _j = _a.onClick, onClick = _j === void 0 ? function () { } : _j, _k = _a.onSendChartExportedEvent, onSendChartExportedEvent = _k === void 0 ? function (_) { } : _k;
    var _l = __read((0,react.useState)(null), 2), chartData = _l[0], setChartData = _l[1];
    var _m = __read((0,react.useState)([]), 2), hiddenCategories = _m[0], setHiddenCategories = _m[1];
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({ properties: { fileType: fileType } });
    };
    var getLegendConfig = function () {
        var e_2, _a, e_3, _b;
        if (!series)
            return [];
        var data = [];
        try {
            for (var series_1 = __values(series), series_1_1 = series_1.next(); !series_1_1.done; series_1_1 = series_1.next()) {
                var s = series_1_1.value;
                var _loop_1 = function (d) {
                    if (!data.find(function (x) { return x.name === d.name; })) {
                        data.push(d);
                    }
                };
                try {
                    for (var _c = (e_3 = void 0, __values(s.data)), _d = _c.next(); !_d.done; _d = _c.next()) {
                        var d = _d.value;
                        _loop_1(d);
                    }
                }
                catch (e_3_1) { e_3 = { error: e_3_1 }; }
                finally {
                    try {
                        if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
                    }
                    finally { if (e_3) throw e_3.error; }
                }
            }
        }
        catch (e_2_1) { e_2 = { error: e_2_1 }; }
        finally {
            try {
                if (series_1_1 && !series_1_1.done && (_a = series_1.return)) _a.call(series_1);
            }
            finally { if (e_2) throw e_2.error; }
        }
        return data.map(function (d, i) { return ({
            key: d.name,
            title: d.name,
            color: d.color || colors[i],
            onClick: function () {
                if (hiddenCategories.includes(d.name))
                    setHiddenCategories(hiddenCategories.filter(function (x) { return x !== d.name; }));
                else
                    setHiddenCategories(hiddenCategories.concat([d.name]));
            },
        }); });
    };
    var getCategoriesNames = function (formattedSeries) {
        var categories = formattedSeries.map(function (s) { return s.name; }).reverse();
        // 🩼
        // In cases when we have even number of categories, and the size of the chart can't display all items (the height is short),
        // Highcharts tries to render data for the last item series[length - 1] with the category name of categories[length].
        // I don't know why it happens, but this is a workaround to fix it.
        // It doesn't affect the chart with a height that can display all items.
        if (formattedSeries.length % 2 === 0) {
            categories.push(formattedSeries[0].name);
        }
        return categories;
    };
    var config = (0,react.useMemo)(function () {
        var formattedSeries = formatSeries({
            hiddenCategories: hiddenCategories,
            colors: colors,
            data: series,
        });
        if (!formattedSeries)
            return null;
        return __assign({ chart: {
                type: 'scatter',
                height: height,
            }, title: {
                text: title,
                style: {
                    display: 'none',
                },
            }, legend: {
                enabled: false,
            }, yAxis: __assign({ title: {
                    text: null,
                }, gridLineWidth: 0, categories: getCategoriesNames(formattedSeries) }, ((configOptions === null || configOptions === void 0 ? void 0 : configOptions.yAxisOptions) || {})), xAxis: __assign({ labels: {
                    format: isRelative ? '{value}%' : '{value}',
                }, gridLineWidth: 1, lineWidth: 0, tickWidth: 0, title: {
                    text: null,
                } }, ((configOptions === null || configOptions === void 0 ? void 0 : configOptions.xAxisOptions) || {})), plotOptions: {
                scatter: {
                    lineWidth: 1,
                    lineColor: '#d3d3d3',
                    marker: {
                        symbol: 'circle',
                        enabled: true,
                        radius: 7,
                    },
                    events: {
                        click: function (e) { return onClick(e); },
                    },
                },
            }, series: formattedSeries }, configOptions);
    }, [series, hiddenCategories, configOptions]);
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [withoutHeader ? null : ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: title, info: info, chartRef: chartData, onChartExport: onChartExport })), (0,jsx_runtime.jsx)("div", __assign({ "data-chart-type": "dumbbell" }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: function (x) {
                        if (callback)
                            callback(x);
                        setChartData(x);
                    } }) })), (0,jsx_runtime.jsxs)("div", __assign({ className: Dumbbell.bottomControls }, { children: [bottomContent ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [bottomContent, (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {})] })) : null, (0,jsx_runtime.jsx)("div", __assign({ className: Dumbbell.legend }, { children: (0,jsx_runtime.jsx)(ChartLegend/* default */.Ay, { dummyItemsConfig: [{
                                    key: 'difference',
                                    title: l('Size of difference', 'dumbbellChart'),
                                    iconType: 'minus',
                                    color: (0,utils_colors/* getColorsByTheme */.hx)().secondaryTextColor,
                                }], itemsConfig: getLegendConfig(), disabledItemsKey: hiddenCategories }) }))] }))] }));
};
/* harmony default export */ const Dumbbell_Dumbbell = (DumbbellChart);

;// CONCATENATED MODULE: ./src/components/charts/Dumbbell/index.ts



/***/ }),

/***/ "+GA5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Line_LineChart)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
;// CONCATENATED MODULE: ./src/components/charts/Line/LineChart.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




var LineChart = function (_a) {
    var _b = _a.withoutHeader, withoutHeader = _b === void 0 ? false : _b, _c = _a.isArea, isArea = _c === void 0 ? false : _c, title = _a.title, height = _a.height, series = _a.series, _d = _a.configOptions, configOptions = _d === void 0 ? {} : _d, getTooltipFormatter = _a.getTooltipFormatter, onClick = _a.onClick, onSendChartExportedEvent = _a.onSendChartExportedEvent;
    var _e = __read((0,react.useState)(null), 2), chartData = _e[0], setChartData = _e[1];
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({ properties: { fileType: fileType } });
    };
    var config = (0,react.useMemo)(function () {
        if (!series || series.length === 0)
            return {
                title: {
                    text: title,
                    style: {
                        display: 'none',
                    },
                },
            };
        return __assign({ chart: {
                type: isArea ? 'area' : 'spline',
                zoomType: 'x',
                height: height || null,
            }, title: {
                text: title,
                style: {
                    display: 'none',
                },
            }, subtitle: {
                text: null,
            }, xAxis: {
                type: 'datetime',
                title: {
                    text: l('Time'),
                    style: {
                        display: 'none',
                    },
                },
            }, yAxis: [{
                    title: {
                        text: null,
                    },
                }], tooltip: {
                split: true,
                crosshairs: true,
                useHTML: true,
                pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
                formatter: getTooltipFormatter && getTooltipFormatter(),
            }, plotOptions: {
                spline: {
                    marker: {
                        enabled: false,
                    },
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return onClick(e.point.category, e.point.series.options.key); },
                        },
                    },
                },
            }, series: series }, configOptions);
    }, [series, configOptions]);
    return ((0,jsx_runtime.jsxs)("div", { children: [withoutHeader ? null : ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: title, chartRef: chartData, onChartExport: onChartExport })), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData })] }));
};
/* harmony default export */ const Line_LineChart = ((0,react.memo)(LineChart));

;// CONCATENATED MODULE: ./src/components/charts/Line/index.ts



/***/ }),

/***/ "+GHa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Pie_PieChart)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/utils/chart.js
var chart = __webpack_require__("jxlF");
;// CONCATENATED MODULE: ./src/components/charts/Pie/PieChart.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





var PieChart = function (_a) {
    var className = _a.className, title = _a.title, series = _a.series, _b = _a.configOptions, configOptions = _b === void 0 ? {} : _b, onClick = _a.onClick, onSendChartExportedEvent = _a.onSendChartExportedEvent;
    var _c = __read((0,react.useState)(null), 2), chartData = _c[0], setChartData = _c[1];
    var onChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({
            properties: { fileType: fileType },
        });
    };
    var config = (0,react.useMemo)(function () {
        if (!series) {
            return [];
        }
        return __assign({ chart: {
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false,
                type: 'pie',
            }, title: {
                text: title,
                style: {
                    display: 'none',
                },
            }, subtitle: {
                text: null,
            }, tooltip: chart/* TOOLTIPS */.H.pie, plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        format: '{point.percentage:.2f}% ({point.y:,.0f})',
                    },
                    showInLegend: true,
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return onClick(e.point.key); },
                        },
                    },
                },
            }, series: series }, configOptions);
    }, [series, configOptions]);
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: className }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: title, chartRef: chartData, onChartExport: onChartExport }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData })] })));
};
/* harmony default export */ const Pie_PieChart = ((0,react.memo)(PieChart));

;// CONCATENATED MODULE: ./src/components/charts/Pie/index.ts



/***/ }),

/***/ "5DQj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ helpers_HorizontalSpacer_HorizontalSpacer)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/helpers/HorizontalSpacer/HorizontalSpacer.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const HorizontalSpacer = ({"base":"uKi08F09vSXxrAu8rw2o","double":"bn6cmbH_Y8cpU_UjXjUd"});
;// CONCATENATED MODULE: ./src/components/helpers/HorizontalSpacer/HorizontalSpacer.tsx



var HorizontalSpacer_HorizontalSpacer = function (_a) {
    var _b;
    var className = _a.className, double = _a.double, width = _a.width;
    return ((0,jsx_runtime.jsx)("div", { style: { width: width }, className: classnames_default()(className, HorizontalSpacer.base, (_b = {}, _b[HorizontalSpacer.double] = double, _b)) }));
};
/* harmony default export */ const helpers_HorizontalSpacer_HorizontalSpacer = (HorizontalSpacer_HorizontalSpacer);

;// CONCATENATED MODULE: ./src/components/helpers/HorizontalSpacer/index.ts



/***/ }),

/***/ "5+yk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ helpers_Loader_Loader)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Spinner/index.ts + 2 modules
var Spinner = __webpack_require__("JWWG");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/helpers/Loader/Loader.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Loader = ({"base":"rMkBr0b7cuGjgqif0ekk","loading":"_F5s4GVngeWpAI_lmVmG","error":"We5zr5bOgwHeplah1qSS","emptyState":"evQhFICdXGcj_Iiivrru","errorImage":"cyV04JfP407Y9OkHLvom","errorTitle":"iYek7KDzqayoswuwlkYy","errorMessage":"r_bBvBaBFYKBtfKYmK9X"});
;// CONCATENATED MODULE: ./src/components/helpers/Loader/Loader.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var Loader_Loader = function (_a) {
    var error = _a.error, errorImage = _a.errorImage, errorTitle = _a.errorTitle, errorMessage = _a.errorMessage, emptyState = _a.emptyState, emptyStateImage = _a.emptyStateImage, emptyStateTitle = _a.emptyStateTitle, emptyStateMessage = _a.emptyStateMessage, _b = _a.emptyStateSize, emptyStateSize = _b === void 0 ? '' : _b, className = _a.className, loaded = _a.loaded, empty = _a.empty, children = _a.children, renderError = _a.renderError;
    var renderEmptyState = function () {
        if (emptyState) {
            return emptyState;
        }
        return (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { className: classnames_default()(Loader.emptyState), large: emptyStateSize === 'large', small: emptyStateSize === 'small', image: emptyStateImage, title: emptyStateTitle, message: emptyStateMessage });
    };
    var renderLoaderError = function () {
        if (renderError) {
            return renderError(error);
        }
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Loader.error) }, { children: [(0,jsx_runtime.jsx)("img", { src: errorImage || '/static/images/error_image.png', className: classnames_default()(Loader.errorImage), alt: "" }), (0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(Loader.errorTitle) }, { children: errorTitle || l('An error has occurred') })), (0,jsx_runtime.jsx)("p", __assign({ className: classnames_default()(Loader.errorMessage) }, { children: errorMessage || l('Please contact our support team') }))] })));
    };
    if (!loaded) {
        return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Loader.base, Loader.loading, className) }, { children: (0,jsx_runtime.jsx)(Spinner/* default */.A, {}) })));
    }
    if (error) {
        return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Loader.base, className) }, { children: renderLoaderError() })));
    }
    if (empty) {
        return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Loader.base, className) }, { children: renderEmptyState() })));
    }
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Loader.base, className) }, { children: typeof children === 'function'
            ? children()
            : children })));
};
/* harmony default export */ const helpers_Loader_Loader = ((0,react.memo)(Loader_Loader));


/***/ }),

/***/ "CecO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _Loader__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _Loader__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("5+yk");



/***/ }),

/***/ "YgU7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Space_Space)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/components/helpers/Space/Space.tsx

var Space = function () { return (0,jsx_runtime.jsx)("span", { children: ' ' }); };
/* harmony default export */ const Space_Space = (Space);

;// CONCATENATED MODULE: ./src/components/helpers/Space/index.ts



/***/ }),

/***/ "A2Ed":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ Toolbar_ButtonBar)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/ButtonBar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ButtonBar = ({"base":"Z00XcbnLwEWZRNFM9PAo","alignLeft":"e7h9EoNmAGN7jsskmunn","alignCenter":"zImOj2rtikr7da7Ktedh","hintText":"esyQazSQXvWxjhvjtKrr"});
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var ButtonBar_ButtonBar = function (_a) {
    var _b;
    var className = _a.className, alignLeft = _a.alignLeft, alignCenter = _a.alignCenter, children = _a.children;
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, ButtonBar.base, (_b = {}, _b[ButtonBar.alignLeft] = alignLeft, _b[ButtonBar.alignCenter] = alignCenter, _b)) }, { children: children })));
};
/* harmony default export */ const Toolbar_ButtonBar = (ButtonBar_ButtonBar);


/***/ }),

/***/ "Qjb0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ Toolbar_ToolbarGroup)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/ToolbarGroup.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ToolbarGroup = ({"base":"IPvEJJE260lfw43euFSr"});
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/ToolbarGroup.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var ToolbarGroup_ToolbarGroup = function (_a) {
    var className = _a.className, children = _a.children;
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, ToolbarGroup.base) }, { children: children })));
};
/* harmony default export */ const Toolbar_ToolbarGroup = (ToolbarGroup_ToolbarGroup);


/***/ }),

/***/ "rYbp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  WN: () => (/* reexport */ ButtonBar/* default */.A),
  M7: () => (/* reexport */ helpers_Toolbar_Toolbar),
  $Q: () => (/* reexport */ ToolbarGroup/* default */.A)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/Toolbar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Toolbar = ({"base":"La7sC9fX_NeI4x6DnTVX","fullWidth":"kLTNJ9i5yRBW02IO_L1n","right":"irqBj1W5_NcyaVlGqi0g","left":"TCDX2gJISe4fydzjKuyt","center":"ef7qu2upLHrccEF8Ipt0"});
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/Toolbar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var Toolbar_Toolbar = function (_a) {
    var _b;
    var className = _a.className, fullWidth = _a.fullWidth, children = _a.children, align = _a.align;
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, Toolbar.base, (_b = {}, _b[Toolbar.fullWidth] = fullWidth, _b[Toolbar.align] = align, _b)) }, { children: children })));
};
/* harmony default export */ const helpers_Toolbar_Toolbar = (Toolbar_Toolbar);

// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ToolbarGroup.tsx + 1 modules
var ToolbarGroup = __webpack_require__("Qjb0");
;// CONCATENATED MODULE: ./src/components/helpers/Toolbar/index.ts






/***/ }),

/***/ "RrxW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ helpers_VerticalSpacer_VerticalSpacer)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/helpers/VerticalSpacer/VerticalSpacer.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const VerticalSpacer = ({"base":"RynAcp3UczxMoGCp6Syp","double":"XTxF94Glsu98nJ7juUq0"});
;// CONCATENATED MODULE: ./src/components/helpers/VerticalSpacer/VerticalSpacer.tsx



var VerticalSpacer_VerticalSpacer = function (_a) {
    var _b;
    var className = _a.className, double = _a.double, height = _a.height;
    return ((0,jsx_runtime.jsx)("div", { style: { height: height }, className: classnames_default()(className, VerticalSpacer.base, (_b = {}, _b[VerticalSpacer.double] = double, _b)) }));
};
/* harmony default export */ const helpers_VerticalSpacer_VerticalSpacer = (VerticalSpacer_VerticalSpacer);

;// CONCATENATED MODULE: ./src/components/helpers/VerticalSpacer/index.ts



/***/ }),

/***/ "KnqW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  sY: () => (/* reexport */ Aspects_AspectsChart_AspectsChart),
  Wv: () => (/* reexport */ Aspects_AspectsTable_AspectsTable),
  _3: () => (/* reexport */ hooks)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/components/other/ChartSwitcher/index.ts + 2 modules
var ChartSwitcher = __webpack_require__("MOLi");
// EXTERNAL MODULE: ./src/utils/truncate.js
var truncate = __webpack_require__("wbkJ");
// EXTERNAL MODULE: ./src/utils/chart.js
var chart = __webpack_require__("jxlF");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/utils/sentiments.ts
var sentiments = __webpack_require__("ofyo");
// EXTERNAL MODULE: ./src/utils/translations/aspectTranslation.js
var aspectTranslation = __webpack_require__("0hC/");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/Aspects/AspectsChart/AspectsChart.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AspectsChart = ({"base":"vp28Fbj0LkbM6hTgeKNQ","chart":"WJNaePT4sTSUT9hQxTWY"});
;// CONCATENATED MODULE: ./src/components/other/Aspects/AspectsChart/AspectsChart.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};













var LABEL_SIZE_THRESHOLD = 8;
var LABEL_TRIM_SIZE = 30;
var WINDOW_SIZE_THRESHOLD = 1100;
var getChartPaneSize = function (categories) {
    if (categories.some(function (category) { return category.split(' ').some(function (word) { return word.length > LABEL_SIZE_THRESHOLD; }); })
        || window.innerWidth < WINDOW_SIZE_THRESHOLD) {
        return '80%';
    }
    return '95%';
};
var shouldTrimLabel = function (categoriesCount, index) {
    // TODO: Make the names clearer
    // https://youscan.slack.com/archives/CE6TXVB36/p1586334061004300
    var sector = categoriesCount / 8;
    return (sector < index && index < 3 * sector) || (5 * sector < index && index < 7 * sector);
};
var getConfig = function (_a) {
    var data = _a.data, isSpiderActive = _a.isSpiderActive, chartHeight = _a.chartHeight, onAspectClick = _a.onAspectClick, onAspectHover = _a.onAspectHover;
    var categories = [];
    var seriesData = {
        positive: [],
        negative: [],
        neutral: [],
    };
    data.forEach(function (aspect) {
        categories.push((0,aspectTranslation/* getAspectLabel */.zS)(aspect.key));
        sentiments/* SENTIMENT_NAMES */.dY.forEach(function (sentiment) {
            var aspectSentiment = aspect.sentiments[sentiment];
            var seriesPoint = aspectSentiment
                ? {
                    y: aspectSentiment.metricValue,
                    percentage: aspectSentiment.percentage,
                    key: aspectSentiment.key,
                    isTag: aspect.isTag,
                    data: {
                        sentiment: sentiment,
                        aspect: aspect,
                    },
                }
                : {
                    y: 0,
                    percentage: 0,
                };
            seriesData[sentiment].push(seriesPoint);
        });
    });
    var sentimentColors = (0,colors/* getSentimentColors */.ID)();
    return {
        chart: {
            polar: isSpiderActive,
            type: isSpiderActive ? 'area' : 'bar',
            height: chartHeight || '40%',
        },
        pane: {
            size: getChartPaneSize(categories),
        },
        title: {
            text: l('Aspect'),
            style: {
                display: 'none',
            },
        },
        subtitle: {
            text: null,
        },
        xAxis: {
            categories: categories,
            tickmarkPlacement: 'on',
            labels: {
                style: {
                    fontSize: '14px',
                },
                formatter: isSpiderActive
                    ? function (_a) {
                        var value = _a.value, pos = _a.pos;
                        if (value.length > LABEL_SIZE_THRESHOLD && shouldTrimLabel(categories.length, pos)) {
                            return (0,truncate/* default */.A)(value, LABEL_TRIM_SIZE);
                        }
                        return value;
                    }
                    : undefined,
            },
        },
        yAxis: {
            title: {
                text: null,
            },
            endOnTick: false,
            maxPadding: 0.05,
        },
        tooltip: isSpiderActive ? chart/* TOOLTIPS */.H.splineWithTranslation(aspectTranslation/* getAspectLabel */.zS, true, { split: false }) : chart/* TOOLTIPS */.H.bar,
        legend: {
            align: 'center',
            verticalAlign: 'bottom',
        },
        plotOptions: {
            series: {
                cursor: 'pointer',
                point: {
                    events: {
                        click: function (e) {
                            if (onAspectClick) {
                                var _a = e.point.data.aspect, isTag = _a.isTag, id = _a.id, key = _a.key;
                                onAspectClick(isTag, isTag ? id : e.point.key, e.point.data.sentiment, key);
                            }
                        },
                        mouseOver: onAspectHover ? function (e) { return onAspectHover(e.target.data.aspect.key); } : null,
                        mouseOut: onAspectHover ? function () { return onAspectHover(''); } : null,
                    },
                },
            },
        },
        series: [
            {
                name: l('Positive'),
                key: 'positive',
                data: seriesData.positive,
                pointPlacement: isSpiderActive ? 'on' : null,
                color: sentimentColors.positive,
                legendIndex: 1,
            },
            {
                name: l('Neutral'),
                key: 'neutral',
                data: seriesData.neutral,
                pointPlacement: isSpiderActive ? 'on' : null,
                color: sentimentColors.neutral,
                visible: !isSpiderActive,
                legendIndex: 2,
            },
            {
                name: l('Negative'),
                key: 'negative',
                data: seriesData.negative,
                pointPlacement: isSpiderActive ? 'on' : null,
                color: sentimentColors.negative,
                legendIndex: 3,
            }
        ],
    };
};
/**
 * Charts were separated to different components
 * (which are the same internally) for support of click events handling.
 * Highcharts instance config update on chart type change breaks callbacks for events handling.
 */
var SpiderAspectChart = function (_a) {
    var config = _a.config, setChartInstance = _a.setChartInstance;
    return (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: function (chart) { return setChartInstance(chart); } });
};
var HistogramAspectChart = function (_a) {
    var config = _a.config, setChartInstance = _a.setChartInstance;
    return (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: function (chart) { return setChartInstance(chart); } });
};
var AspectsChart_AspectsChart = function (_a) {
    var data = _a.data, className = _a.className, chartHeight = _a.chartHeight, exportDisabled = _a.exportDisabled, onSendAnalyticalEvent = _a.onSendAnalyticalEvent, onAspectClick = _a.onAspectClick, onAspectHover = _a.onAspectHover, onChartExport = _a.onChartExport;
    var _b = __read((0,react.useState)(null), 2), chartInstance = _b[0], setChartInstance = _b[1];
    var _c = __read((0,react.useState)(true), 2), isSpiderActive = _c[0], setIsSpiderActive = _c[1];
    var handleChangeChartType = function () {
        if (onSendAnalyticalEvent) {
            onSendAnalyticalEvent({
                eventType: 'aspect graph view changed',
                properties: {
                    type: !isSpiderActive ? 'spider' : 'bar',
                },
            });
        }
        setIsSpiderActive(!isSpiderActive);
    };
    var getChartType = function () { return (isSpiderActive ? 'Sentiment by aspect Spider' : 'Sentiment by aspect Bar'); };
    var onAspectsChartExport = onChartExport
        ? function (_a) {
            var fileType = _a.fileType;
            return onChartExport({ fileType: fileType, chartType: getChartType() });
        }
        : function () { };
    var getChartConfig = function () { return getConfig({
        data: data,
        isSpiderActive: isSpiderActive,
        chartHeight: chartHeight,
        onAspectClick: onAspectClick,
        onAspectHover: onAspectHover,
    }); };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(AspectsChart.base, className) }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Sentiment by aspect'), chartRef: chartInstance, withoutExport: exportDisabled, additionalContent: (0,jsx_runtime.jsx)(ChartSwitcher/* default */.A, { isActive: !isSpiderActive, dataHookName: "aspect-chart", icons: {
                        left: {
                            active: '/static/images/aspects_chart_enabled.svg',
                            disabled: '/static/images/aspects_chart_disabled.svg',
                        },
                        right: {
                            active: '/static/images/aspects_spider_enabled.svg',
                            disabled: '/static/images/aspects_spider_disabled.svg',
                        },
                    }, onToggle: handleChangeChartType }), onChartExport: onAspectsChartExport }), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(AspectsChart.chart) }, { children: isSpiderActive
                    ? ((0,jsx_runtime.jsx)(SpiderAspectChart, { config: getChartConfig(), setChartInstance: setChartInstance }))
                    : ((0,jsx_runtime.jsx)(HistogramAspectChart, { config: getChartConfig(), setChartInstance: setChartInstance })) }))] })));
};
function isEqualData(prevProps, nextProps) {
    return (0,lodash.isEqual)(prevProps.data, nextProps.data);
}
/* harmony default export */ const Aspects_AspectsChart_AspectsChart = ((0,react.memo)(AspectsChart_AspectsChart, isEqualData));

;// CONCATENATED MODULE: ./src/components/other/Aspects/AspectsChart/index.ts


// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/ui/Table/Table.tsx + 1 modules
var Table = __webpack_require__("AYO0");
;// CONCATENATED MODULE: ./src/components/other/Aspects/AspectsTable/AspectsTable.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AspectsTable = ({"header":"BCf1JaY48fN0KlLluMwo","withAdditionalHeaderContent":"eGquclLEVnI5dygInZJ2"});
;// CONCATENATED MODULE: ./src/components/other/Aspects/AspectsTable/AspectsTable.tsx
var AspectsTable_assign = (undefined && undefined.__assign) || function () {
    AspectsTable_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AspectsTable_assign.apply(this, arguments);
};
var AspectsTable_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











var mapNumericValue = function (value) { return (value ? numeral_default()(value).format('0,0') : '-'); };
var AspectsTable_AspectsTable = function (_a) {
    var _b;
    var isShortTitle = _a.isShortTitle, data = _a.data, className = _a.className, selected = _a.selected, isAllSelected = _a.isAllSelected, additionalHeaderContent = _a.additionalHeaderContent, onSelect = _a.onSelect, onSelectAllAspects = _a.onSelectAllAspects, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
    var _c = AspectsTable_read((0,react.useState)(true), 2), isDataInAbsolute = _c[0], setIsDataInAbsolute = _c[1];
    var rowConfig = (0,react.useMemo)(function () { return ({
        withHighlight: true,
        keyAccessor: function (row) { return row.key; },
        onClick: function (row) { return onSelect(row.key); },
    }); }, []);
    var tableConfig = (0,react.useMemo)(function () { return ({
        defaultSorted: { columnId: 'total', direction: Table/* SortDirection */.U.Desc },
        onSorted: function (sortedProps) { return onSendAnalyticalEvent({ eventType: 'aspect table sorting changed', properties: sortedProps }); },
    }); }, []);
    var columnsConfig = (0,react.useMemo)(function () { return ([
        {
            id: 'selected',
            accessor: function (row) { return row.key; },
            header: function () { return ((0,jsx_runtime.jsx)("div", AspectsTable_assign({ onClick: onSelectAllAspects }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, AspectsTable_assign({ text: l('Select all') }, { children: (0,jsx_runtime.jsx)(Checkbox/* default */.A, { isControlled: true, value: isAllSelected, checked: isAllSelected }) })) }))); },
            width: '24px',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)(Checkbox/* default */.A, { value: value, isControlled: true, checked: selected.includes(value) });
            },
        },
        {
            id: 'aspectName',
            accessor: function (row) { return row.key; },
            header: function () { return l('Title'); },
            sortable: true,
            maxWidth: '38vw',
            minWidth: '150px',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: (0,aspectTranslation/* getAspectLabel */.zS)(value) });
            },
        },
        {
            id: 'positiveCount',
            accessor: function (row) { return (isDataInAbsolute ? row.sentiments.positive.metricValue : row.sentiments.positive.percentage); },
            header: function () { return ((0,jsx_runtime.jsxs)("span", { children: [isShortTitle ? (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive", color: "green" }) : l('Positive'), isDataInAbsolute ? '' : ', %'] })); },
            sortable: true,
            maxWidth: '10vw',
            minWidth: '70px',
            width: 'auto',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: mapNumericValue(value) });
            },
        },
        {
            id: 'negativeCount',
            accessor: function (row) { return (isDataInAbsolute ? row.sentiments.negative.metricValue : row.sentiments.negative.percentage); },
            header: function () { return ((0,jsx_runtime.jsxs)("span", { children: [isShortTitle ? (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "negative", color: "red" }) : l('Negative'), isDataInAbsolute ? '' : ', %'] })); },
            sortable: true,
            maxWidth: '10vw',
            minWidth: '70px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: mapNumericValue(value) });
            },
        },
        {
            id: 'neutralCount',
            accessor: function (row) { return (isDataInAbsolute ? row.sentiments.neutral.metricValue : row.sentiments.neutral.percentage); },
            header: function () { return ((0,jsx_runtime.jsxs)("span", { children: [isShortTitle ? (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "neutral", color: "blue" }) : l('Neutral'), isDataInAbsolute ? '' : ', %'] })); },
            sortable: true,
            maxWidth: '10vw',
            minWidth: '70px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: mapNumericValue(value) });
            },
        },
        {
            id: 'total',
            accessor: function (row) { return row.count; },
            header: function () { return l('Total'); },
            sortable: true,
            maxWidth: '10vw',
            minWidth: '70px',
            align: 'center',
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: mapNumericValue(value) });
            },
        }
    ]); }, [data, isDataInAbsolute, selected, isAllSelected]);
    var handleChangeDataType = function () {
        if (onSendAnalyticalEvent) {
            onSendAnalyticalEvent({
                eventType: 'aspect table values changed',
                properties: {
                    type: !isDataInAbsolute ? 'absolute' : 'percentages',
                },
            });
        }
        setIsDataInAbsolute(!isDataInAbsolute);
    };
    return ((0,jsx_runtime.jsxs)("div", AspectsTable_assign({ className: classnames_default()(className, AspectsTable.base) }, { children: [(0,jsx_runtime.jsxs)("div", AspectsTable_assign({ className: classnames_default()(AspectsTable.header, (_b = {}, _b[AspectsTable.withAdditionalHeaderContent] = !!additionalHeaderContent, _b)) }, { children: [additionalHeaderContent && ((0,jsx_runtime.jsx)("div", { children: additionalHeaderContent })), (0,jsx_runtime.jsx)(ChartSwitcher/* default */.A, { isActive: isDataInAbsolute, dataHookName: "aspect-table", icons: {
                            left: {
                                active: '/static/images/aspects_absolute_data_enabled.svg',
                                disabled: '/static/images/aspects_absolute_data_disabled.svg',
                            },
                            right: {
                                active: '/static/images/aspects_percent_data_enabled.svg',
                                disabled: '/static/images/aspects_percent_data_disabled.svg',
                            },
                        }, onToggle: handleChangeDataType })] })), (0,jsx_runtime.jsx)(Table/* default */.A, { data: data, columnsConfig: columnsConfig, rowConfig: rowConfig, tableConfig: tableConfig })] })));
};
/* harmony default export */ const Aspects_AspectsTable_AspectsTable = ((0,react.memo)(AspectsTable_AspectsTable));

;// CONCATENATED MODULE: ./src/components/other/Aspects/AspectsTable/index.ts


;// CONCATENATED MODULE: ./src/components/other/Aspects/hooks.ts
var hooks_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};


var DEFAULT_SELECT_COUNT = 5;
var useAspectsPreparation = function (_a) {
    var aspects = _a.aspects, _b = _a.addedSelectedAspects, addedSelectedAspects = _b === void 0 ? [] : _b, _c = _a.defaultSelectedAspects, defaultSelectedAspects = _c === void 0 ? [] : _c;
    var _d = (0,react.useMemo)(function () {
        var sorted = (0,lodash.sortBy)(aspects, function (a) { return -a.count; }); // use - for desc sorting
        var sortedKeys = sorted.map(function (s) { return s.key; });
        return {
            sortedAspects: sorted,
            sortedAspectsKeys: sortedKeys,
        };
    }, [aspects]), sortedAspects = _d.sortedAspects, sortedAspectsKeys = _d.sortedAspectsKeys;
    var _e = hooks_read((0,react.useState)(defaultSelectedAspects.length
        ? defaultSelectedAspects
        : sortedAspectsKeys.slice(0, DEFAULT_SELECT_COUNT).concat(addedSelectedAspects)), 2), selectedAspectsKeys = _e[0], setSelectedAspectsKeys = _e[1];
    (0,react.useEffect)(function () {
        setSelectedAspectsKeys(defaultSelectedAspects.length
            ? defaultSelectedAspects
            : sortedAspectsKeys.slice(0, DEFAULT_SELECT_COUNT).concat(addedSelectedAspects));
    }, [sortedAspectsKeys]);
    var isAllAspectsSelected = sortedAspects.every(function (aspect) { return selectedAspectsKeys.includes(aspect.key); });
    var selectAllAspects = function () {
        if (!isAllAspectsSelected) {
            setSelectedAspectsKeys(sortedAspects.map(function (aspect) { return aspect.key; }));
            return;
        }
        setSelectedAspectsKeys(sortedAspects.slice(0, DEFAULT_SELECT_COUNT).map(function (aspect) { return aspect.key; }));
    };
    var selectedAspectsData = selectedAspectsKeys.length
        ? sortedAspects.filter(function (a) { return selectedAspectsKeys.includes(a.key); })
        : sortedAspects;
    return {
        isAllAspectsSelected: isAllAspectsSelected,
        selectedAspectsData: selectedAspectsData,
        allAspectsData: sortedAspects,
        selectedAspectsKeys: selectedAspectsKeys,
        setSelectedAspectsKeys: setSelectedAspectsKeys,
        selectAllAspects: selectAllAspects,
    };
};
/* harmony default export */ const hooks = (useAspectsPreparation);

;// CONCATENATED MODULE: ./src/components/other/Aspects/index.ts






/***/ }),

/***/ "XF/h":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ AudienceChartsTooltip)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/utils/colors.ts
var utils_colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
;// CONCATENATED MODULE: ./src/components/other/AudienceChartsTooltip/AudienceChartsTooltip.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




/* harmony default export */ const AudienceChartsTooltip = (function (_a) {
    var chart = _a.chart, countFormatter = _a.countFormatter;
    var colors = (0,utils_colors/* getColorsByTheme */.hx)();
    return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)("div", __assign({ style: {
            backgroundColor: colors.white,
            padding: '8px 8px 0 8px',
            border: "1px solid ".concat(colors.bordersColor),
            borderRadius: 4,
        } }, { children: [(0,jsx_runtime.jsxs)("h5", __assign({ style: { marginBottom: 16, verticalAlign: 'middle' } }, { children: [(0,jsx_runtime.jsx)("div", { style: {
                            display: 'inline-block',
                            width: '8px',
                            height: '8px',
                            backgroundColor: chart.color,
                            borderRadius: '50%',
                            marginRight: '6px',
                        } }), (0,jsx_runtime.jsx)("span", __assign({ style: { fontSize: 14, color: colors.textColor, textTransform: 'uppercase' } }, { children: chart.point.name }))] })), (0,jsx_runtime.jsxs)("div", __assign({ style: { marginLeft: 10, display: 'flex', gap: 16, marginBottom: '6px' } }, { children: [(chart.point.value || chart.point.weight) ? ((0,jsx_runtime.jsxs)("div", __assign({ style: { whiteSpace: 'nowrap', padding: '6px 8px' } }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: countFormatter
                                    ? countFormatter(chart.point.value || chart.point.weight)
                                    : numeral_default()(chart.point.value || chart.point.weight).format('0,0') })), (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('authors') }))] }))) : null, chart.point.engagement ? ((0,jsx_runtime.jsxs)("div", __assign({ style: { whiteSpace: 'nowrap', padding: '6px 8px' } }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: countFormatter
                                    ? countFormatter(chart.point.engagement)
                                    : numeral_default()(chart.point.engagement).format('0,0') })), (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('engagement') }))] }))) : null, chart.point.mentionsCount ? ((0,jsx_runtime.jsxs)("div", __assign({ style: { whiteSpace: 'nowrap', position: 'relative', zIndex: 1 } }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: countFormatter
                                    ? countFormatter(chart.point.mentionsCount)
                                    : numeral_default()(chart.point.mentionsCount).format('0,0') })), (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('mentions') }))] }))) : null] }))] })));
});

;// CONCATENATED MODULE: ./src/components/other/AudienceChartsTooltip/index.ts



/***/ }),

/***/ "9K02":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ AuthorDropdownInfo_AuthorInfoPopup)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-truncate/lib/Truncate.js
var Truncate = __webpack_require__("K32+");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
;// CONCATENATED MODULE: ./src/hooks/useOutsideClickHandler.ts

/* harmony default export */ const useOutsideClickHandler = (function (ref, handler) {
    (0,react.useEffect)(function () {
        var handleClickOutside;
        if (ref === null || ref === void 0 ? void 0 : ref.current) {
            handleClickOutside = function (event) {
                if (ref.current && !ref.current.contains(event.target)) {
                    handler();
                }
            };
            document.addEventListener('mousedown', handleClickOutside);
        }
        return function () {
            document.removeEventListener('mousedown', handleClickOutside);
        };
    }, [ref]);
});

// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Avatar/index.ts + 2 modules
var Avatar = __webpack_require__("tq5F");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/ui/SentimentDistributionBar/index.ts + 2 modules
var SentimentDistributionBar = __webpack_require__("NS2V");
;// CONCATENATED MODULE: ./src/components/other/AuthorDropdownInfo/AuthorInfoPopup.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AuthorInfoPopup = ({"avatar":"gtRqKLBfzA8e7cpPuRDM","authorPopover":"Nn23tm3X0EhZSYObQZLe","header":"zS1DrG33xVcJOw6k3qWs","description":"jrnY5tmnFg128QMOKSyq","descriptionTitle":"Vur7XeMdGfV3uSJ4u5rz","sentiment":"FbSFv8a6JhaBeq67e7xu","actions":"jtczLaYabDjbKylkUI5Y","name":"awnQnu0ms13gTR1YpGyd","sourceInfo":"gN3a6nf5IKFx1gwZBrWl","sourceInfoText":"x24sJNXhQNbsI3eB4cxM","subscribers":"nMINtpoVOlpWpfsGNtE9","exclude":"m5u4TUmp_Bmdb67tMkuP"});
;// CONCATENATED MODULE: ./src/components/other/AuthorDropdownInfo/AuthorInfoPopup.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};















var AVATAR_SIZE = 80;
var AuthorDropdownInfo = function (_a) {
    var shouldHandleOutsideClick = _a.shouldHandleOutsideClick, hideActionsButtons = _a.hideActionsButtons, children = _a.children, name = _a.name, nickname = _a.nickname, sourceName = _a.sourceName, description = _a.description, subscribers = _a.subscribers, sentiment = _a.sentiment, type = _a.type, avatarUrl = _a.avatarUrl, canExclude = _a.canExclude, onOpenProfile = _a.onOpenProfile, onShowMentions = _a.onShowMentions, onExclude = _a.onExclude, popoverProps = __rest(_a, ["shouldHandleOutsideClick", "hideActionsButtons", "children", "name", "nickname", "sourceName", "description", "subscribers", "sentiment", "type", "avatarUrl", "canExclude", "onOpenProfile", "onShowMentions", "onExclude"]);
    var popover = (0,react.useRef)(null);
    var popoverInnerRef = (0,react.useRef)(null);
    if (shouldHandleOutsideClick)
        useOutsideClickHandler(popoverInnerRef, function () { return setTimeout(function () { var _a; return (_a = popover.current) === null || _a === void 0 ? void 0 : _a.hide(); }, 500); });
    var clickHandler = function (action) {
        if (action)
            action();
        popover.current.hide();
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ id: "authorsMultiAction", fitted: true, flowing: true, ref: popover, innerRef: popoverInnerRef, on: "click", content: (0,jsx_runtime.jsxs)("div", __assign({ className: AuthorInfoPopup.authorPopover }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: AuthorInfoPopup.header }, { children: [(0,jsx_runtime.jsx)(Avatar/* default */.A, { size: AVATAR_SIZE, roundCorners: true, className: AuthorInfoPopup.avatar, imageUrl: avatarUrl }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", __assign({ role: "presentation", className: AuthorInfoPopup.name, onClick: onOpenProfile }, { children: name })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", __assign({ className: AuthorInfoPopup.sourceInfo, onClick: onOpenProfile }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: sourceName }), (0,jsx_runtime.jsx)("span", __assign({ className: AuthorInfoPopup.sourceInfoText }, { children: sourceName })), (0,jsx_runtime.jsx)("span", __assign({ className: AuthorInfoPopup.sourceInfoText }, { children: nickname })), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "open" })] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", __assign({ className: AuthorInfoPopup.subscribers }, { children: subscribers > 0 && sprintf(nl('%s subscriber', '%s subscribers', Math.min(subscribers, 1000)), numeral_default()(subscribers).format('0 a')) }))] })] })), description && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)("div", __assign({ className: AuthorInfoPopup.description }, { children: (0,jsx_runtime.jsx)(Truncate/* default */.A, __assign({ lines: 8 }, { children: description })) }))] })), sentiment ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", __assign({ className: AuthorInfoPopup.sentiment }, { children: (0,jsx_runtime.jsx)(SentimentDistributionBar/* default */.A, { height: 6, negativeCount: sentiment.negative, neutralCount: sentiment.neutral, positiveCount: sentiment.positive }) }))] })) : null, (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), !hideActionsButtons
                    && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)("div", __assign({ className: AuthorInfoPopup.actions }, { children: [canExclude && ((0,jsx_runtime.jsxs)("div", __assign({ className: AuthorInfoPopup.exclude, onClick: function () { return clickHandler(onExclude); } }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: "cancel" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Exclude')] }))), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, size: "small", label: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: "message" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Show mentions')] }), onClick: function () { return clickHandler(onShowMentions); } })] }))] }))] })) }, popoverProps, { children: children })));
};
/* harmony default export */ const AuthorDropdownInfo_AuthorInfoPopup = ((0,react.memo)(AuthorDropdownInfo));


/***/ }),

/***/ "dz/4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var highcharts_react_official__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("lVxW");
/* harmony import */ var highcharts_react_official__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(highcharts_react_official__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var components_other_ChartHeader__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("+rhQ");
/* harmony import */ var colorHandler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("MShE");
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("KV3C");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable react/no-this-in-sfc */





var SCREEN_SIZE_THRESHOLD = 1600;
var BIG_SCREEN_LABEL_RADIUS_THRESHOLD = 17.5;
var SMALL_SCREEN_LABEL_RADIUS_THRESHOLD = 15;
var BIG_SCREEN_BUBBLE_SIZING = {
    minSize: 34,
    maxSize: 130,
};
var SMALL_SCREEN_BUBBLE_SIZING = {
    minSize: 28,
    maxSize: 110,
};
var defaultTooltipFormatter = function () { return null; };
var defaultLabelFormatter = function (label) { return label; };
var BubbleChart = function (_a) {
    var _b = _a.showLegend, showLegend = _b === void 0 ? true : _b, withExport = _a.withExport, title = _a.title, width = _a.width, height = _a.height, data = _a.data, chartHeaderContent = _a.chartHeaderContent, _c = _a.tooltipFormatter, tooltipFormatter = _c === void 0 ? defaultTooltipFormatter : _c, _d = _a.legendLabelFormatter, legendLabelFormatter = _d === void 0 ? defaultLabelFormatter : _d, _e = _a.labelFormatter, labelFormatter = _e === void 0 ? null : _e, onBubbleClick = _a.onBubbleClick, onLegendClick = _a.onLegendClick, onChartExport = _a.onChartExport, onChartLoad = _a.onChartLoad;
    var _f = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), chartData = _f[0], setChartData = _f[1];
    var _g = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false), 2), isBigScreen = _g[0], setisBigScreen = _g[1];
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        var handleResize = function () {
            if (window.innerWidth > SCREEN_SIZE_THRESHOLD)
                setisBigScreen(true);
            else
                setisBigScreen(false);
        };
        handleResize();
        window.addEventListener('resize', handleResize);
    }, []);
    var handleChartLoad = function (chart) {
        setChartData(chart);
    };
    var getConfiguration = function () {
        return {
            chart: {
                reflow: false,
                type: 'packedbubble',
                height: height || '100%',
                width: width,
            },
            boost: {
                enabled: true,
                useGPUTranslations: true,
                seriesThreshold: 5,
            },
            exporting: {
                filename: 'bubblechart',
                chartOptions: {
                    title: null,
                    chart: { width: 1000 },
                    plotOptions: {
                        packedbubble: {
                            minSize: 45,
                            maxSize: 120,
                        },
                        series: {
                            dataLabels: {
                                style: {
                                    width: 50,
                                },
                            },
                        },
                    },
                },
            },
            title: null,
            tooltip: {
                padding: 0,
                outside: true,
                useHTML: true,
                formatter: function () {
                    return tooltipFormatter({ chart: this });
                },
                style: {
                    zIndex: 100,
                },
            },
            legend: {
                align: 'left',
                verticalAlign: 'top',
                enabled: showLegend,
                labelFormatter: function () {
                    return legendLabelFormatter(this.name);
                },
            },
            plotOptions: {
                packedbubble: __assign({ skipKeyboardNavigation: true, stickyTracking: false, crisp: false, marker: {
                        fillOpacity: 1,
                    }, layoutAlgorithm: {
                        bubblePadding: 15,
                        maxIterations: 1100,
                        splitSeries: false,
                        gravitationalConstant: 0.02,
                    }, dataLabels: __assign(__assign({ enabled: true, allowOverlap: true, useHTML: true }, (labelFormatter
                        ? { formatter: labelFormatter }
                        : { format: '{point.name}' })), { color: (0,colorHandler__WEBPACK_IMPORTED_MODULE_4__/* .isDarkTheme */ .g4)() ? 'white' : (0,utils_colors__WEBPACK_IMPORTED_MODULE_5__/* .getColorsByTheme */ .hx)().textColor, filter: {
                            property: 'radius',
                            operator: '>',
                            value: isBigScreen ? BIG_SCREEN_LABEL_RADIUS_THRESHOLD : SMALL_SCREEN_LABEL_RADIUS_THRESHOLD,
                        }, style: {
                            textAlign: 'center',
                            textOverflow: 'clip',
                            fontSize: '12px',
                            fontWeight: '400',
                            width: 60,
                            zIndex: 0,
                        } }), series: {
                        colorByPoint: true,
                    } }, (isBigScreen ? BIG_SCREEN_BUBBLE_SIZING : SMALL_SCREEN_BUBBLE_SIZING)),
                series: {
                    sizeBy: 'width',
                    cursor: 'pointer',
                    events: {
                        click: function (e) { return onBubbleClick({ label: e.point.name, type: e.point.series.name }); },
                        legendItemClick: function () {
                            if (onLegendClick)
                                onLegendClick(this.name);
                        },
                    },
                    states: {
                        inactive: {
                            opacity: 0.7,
                        },
                    },
                },
            },
            series: data,
        };
    };
    var getActiveSeries = function () {
        if (!chartData || !chartData.series) {
            return [];
        }
        return chartData.series
            .filter(function (series) { return series && series.visible; })
            .map(function (series) { return series.name; })
            .join(', ');
    };
    var onBubbleChartExport = onChartExport
        ? (function (_a) {
            var fileType = _a.fileType;
            return onChartExport({
                properties: {
                    fileType: fileType,
                    chartType: "Bubble chart: ".concat(getActiveSeries()),
                },
            });
        })
        : (function () { });
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [withExport
                && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_other_ChartHeader__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, { title: title, chartRef: chartData, additionalContent: chartHeaderContent, onChartExport: onBubbleChartExport })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)((highcharts_react_official__WEBPACK_IMPORTED_MODULE_2___default()), { options: (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(getConfiguration, [data, height, isBigScreen]), callback: onChartLoad || handleChartLoad })] }));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react__WEBPACK_IMPORTED_MODULE_1__.memo)(BubbleChart));


/***/ }),

/***/ "lZuL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _BubbleChart__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _BubbleChart__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("dz/4");



/***/ }),

/***/ "RO5+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  Ay: () => (/* reexport */ other_ChartLegend_ChartLegend)
});

// UNUSED EXPORTS: ChartLegendItem, ChartLegendItemInString

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/ChartLegend/ChartLegendItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChartLegendItem = ({"item":"q8WyqWnBiZtTwmMyd0T0","icon":"eRcBMwY6We7OfABH5zux"});
;// CONCATENATED MODULE: ./src/components/other/ChartLegend/ChartLegendItem.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var getItemStyle = function (color, isHidden) {
    if (isHidden) {
        return {
            color: colors/* colors */.Tj.grayBase,
            borderColor: colors/* colors */.Tj.grayBase,
        };
    }
    if (!color) {
        return undefined;
    }
    return {
        color: color,
        borderColor: color,
    };
};
var ChartLegendItem_ChartLegendItem = function (_a) {
    var series = _a.series, itemLabel = _a.label, itemColor = _a.color, iconType = _a.iconType, isHiddenItem = _a.isHidden, isTranslateLabel = _a.isTranslateLabel, className = _a.className, onClick = _a.onClick;
    var color = itemColor || (series === null || series === void 0 ? void 0 : series.color);
    var label = itemLabel || (series === null || series === void 0 ? void 0 : series.name);
    var isHidden = series ? !(series === null || series === void 0 ? void 0 : series.visible) : isHiddenItem;
    var handleClick = function () {
        if (!onClick) {
            return;
        }
        onClick(label);
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, ChartLegendItem.item), style: getItemStyle(color, isHidden), onClick: handleClick }, { children: [iconType && ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(ChartLegendItem.icon) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, style: getItemStyle(color, isHidden) }) }))), isTranslateLabel ? (0,commonTranslations/* translate */.Tl)(label) : label] }), label));
};
var ChartLegendItemInString = function (props) { return renderToString(ChartLegendItem_ChartLegendItem(props)); };
/* harmony default export */ const ChartLegend_ChartLegendItem = (ChartLegendItem_ChartLegendItem);

;// CONCATENATED MODULE: ./src/components/other/ChartLegend/ChartLegend.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChartLegend = ({"base":"ESbjzaACamiHlHXybxfm","item":"j5L6E7LZl1OIu9IImgZM","dummy":"obwfKbSQJ6RiOXEaxPAL"});
;// CONCATENATED MODULE: ./src/components/other/ChartLegend/ChartLegend.tsx
var ChartLegend_assign = (undefined && undefined.__assign) || function () {
    ChartLegend_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChartLegend_assign.apply(this, arguments);
};




var ChartLegend_ChartLegend = function (_a) {
    var itemsConfig = _a.itemsConfig, dummyItemsConfig = _a.dummyItemsConfig, disabledItemsKey = _a.disabledItemsKey, className = _a.className;
    return ((0,jsx_runtime.jsxs)("div", ChartLegend_assign({ className: classnames_default()(className, ChartLegend.base) }, { children: [itemsConfig
                .filter(function (item) { return !item.isNoData; })
                .map(function (item) { return ((0,jsx_runtime.jsx)(ChartLegend_ChartLegendItem, { className: classnames_default()(ChartLegend.item), color: item.color, iconType: item.iconType, isHidden: disabledItemsKey === null || disabledItemsKey === void 0 ? void 0 : disabledItemsKey.includes(item.key), label: item.title, onClick: item.onClick }, item.key)); }), dummyItemsConfig === null || dummyItemsConfig === void 0 ? void 0 : dummyItemsConfig.map(function (item) { return ((0,jsx_runtime.jsx)(ChartLegend_ChartLegendItem, { className: classnames_default()(ChartLegend.item, ChartLegend.dummy), color: item.color, iconType: item.iconType, label: item.title }, item.key)); })] })));
};
/* harmony default export */ const other_ChartLegend_ChartLegend = (ChartLegend_ChartLegend);

;// CONCATENATED MODULE: ./src/components/other/ChartLegend/index.ts






/***/ }),

/***/ "MOLi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_ChartSwitcher_ChartSwitcher)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/ChartSwitcher/ChartSwitcher.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChartSwitcher = ({"toggleButtonsContainer":"JkkyJgItWNfQLtvDOuqL","toggleButton":"t07BLaPpnMwg4QixcGli","active":"vRiWnpLKJV9PjtTjo9pU"});
;// CONCATENATED MODULE: ./src/components/other/ChartSwitcher/ChartSwitcher.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var defaultIcons = {
    left: {
        active: '/static/images/trends_aina_enabled.svg',
        disabled: '/static/images/trends_aina_disabled.svg',
    },
    right: {
        active: '/static/images/trends_chart_enabled.svg',
        disabled: '/static/images/trends_chart_disabled.svg',
    },
};
var ChartSwitcher_ChartSwitcher = function (_a) {
    var _b, _c;
    var _d = _a.className, className = _d === void 0 ? '' : _d, _e = _a.isActive, isActive = _e === void 0 ? false : _e, _f = _a.icons, icons = _f === void 0 ? defaultIcons : _f, _g = _a.dataHookName, dataHookName = _g === void 0 ? '' : _g, onToggle = _a.onToggle;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(ChartSwitcher.toggleButtonsContainer, className) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", className: classnames_default()(ChartSwitcher.toggleButton, (_b = {}, _b[ChartSwitcher.active] = isActive, _b)), label: (0,jsx_runtime.jsx)("img", { alt: "switchIconLeft", src: isActive
                        ? icons.left.active
                        : icons.left.disabled }), "data-hook": "chart-switcher-".concat(dataHookName, "-left"), onClick: !isActive ? onToggle : null }), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", className: classnames_default()(ChartSwitcher.toggleButton, (_c = {}, _c[ChartSwitcher.active] = !isActive, _c)), label: (0,jsx_runtime.jsx)("img", { alt: "switchIconRight", src: !isActive
                        ? icons.right.active
                        : icons.right.disabled }), "data-hook": "chart-switcher-".concat(dataHookName, "-right"), onClick: isActive ? onToggle : null })] })));
};
/* harmony default export */ const other_ChartSwitcher_ChartSwitcher = (ChartSwitcher_ChartSwitcher);

;// CONCATENATED MODULE: ./src/components/other/ChartSwitcher/index.ts



/***/ }),

/***/ "8Xn6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_EducationalInfo_EducationalInfo)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/EducationalInfoCard/EducationalInfoCard.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EducationalInfoCard = ({"base":"mnMZj5AqvyT7DabpXpfa","title":"nVvgmpKE4d6wS0A163pW","bottomBar":"jwi315C7Sav5KGUNomCF","purple":"GlfFKv9mpRVOHjy1C3wq","green":"uXjsTBjWDqQsnbVWQNbj","orange":"hy1ZbEF6_RT1e3TjlrRn"});
;// CONCATENATED MODULE: ./src/components/other/EducationalInfoCard/EducationalInfoCard.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var EducationalInfoCard_EducationalInfoCard = function (_a) {
    var _b = _a.colorAccent, colorAccent = _b === void 0 ? colors/* EDUCATIONAL_MATERIALS_CARD_COLORS */.Fs[0] : _b, className = _a.className, educationalInfo = _a.educationalInfo, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, __assign({ fullWidth: true, className: classnames_default()(EducationalInfoCard.base, className), onClick: function () { return onClick(educationalInfo); } }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(EducationalInfoCard.title) }, { children: educationalInfo.title })), (0,jsx_runtime.jsx)("p", { children: educationalInfo.description }), (0,jsx_runtime.jsx)("div", { className: classnames_default()(EducationalInfoCard.bottomBar, EducationalInfoCard[colorAccent]) })] })));
};
/* harmony default export */ const other_EducationalInfoCard_EducationalInfoCard = (EducationalInfoCard_EducationalInfoCard);

;// CONCATENATED MODULE: ./src/components/other/EducationalInfoCard/index.tsx


// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
;// CONCATENATED MODULE: ./src/components/other/EducationalInfo/EducationalInfo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EducationalInfo = ({"educationSectionContainer":"YXt18PttwWpiNqLolvLT","educationSectionHeader":"bhbLkW3A2fHK2K7pKcdN","helpCards":"IcFSqnlfC8_96jQoeXp1","cardWithSpacer":"Kl84ztN3dN7lH8z6pZX3"});
;// CONCATENATED MODULE: ./src/components/other/EducationalInfo/EducationalInfo.tsx
var EducationalInfo_assign = (undefined && undefined.__assign) || function () {
    EducationalInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return EducationalInfo_assign.apply(this, arguments);
};







var EducationalInfo_EducationalInfo = function (_a) {
    var title = _a.title, cards = _a.cards, handleLinkClick = _a.handleLinkClick, _b = _a.cardClassName, cardClassName = _b === void 0 ? undefined : _b;
    return ((0,jsx_runtime.jsxs)("div", EducationalInfo_assign({ className: classnames_default()(EducationalInfo.educationSectionContainer) }, { children: [title
                && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, EducationalInfo_assign({ className: classnames_default()(EducationalInfo.educationSectionHeader) }, { children: title })), (0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })), (0,jsx_runtime.jsx)("div", EducationalInfo_assign({ className: classnames_default()(EducationalInfo.helpCards) }, { children: cards.map(function (_a, index) {
                    var _b;
                    var info = _a.info, color = _a.color;
                    return ((0,jsx_runtime.jsx)(other_EducationalInfoCard_EducationalInfoCard, { className: classnames_default()((_b = {},
                            _b[EducationalInfo.cardWithSpacer] = index !== cards.length - 1,
                            _b[cardClassName] = cardClassName,
                            _b)), colorAccent: color, educationalInfo: info, onClick: handleLinkClick }, info.title));
                }) }))] })));
};
/* harmony default export */ const other_EducationalInfo_EducationalInfo = (EducationalInfo_EducationalInfo);

;// CONCATENATED MODULE: ./src/components/other/EducationalInfo/index.ts



/***/ }),

/***/ "ZMuL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  $B: () => (/* binding */ GeneralFilterOperator),
  Ay: () => (/* binding */ other_FilterOperator_FilterOperator),
  J6: () => (/* binding */ renderNonSelectableOperatorIcon)
});

// UNUSED EXPORTS: renderNonSelectableOperator, renderOperatorPlaceholder

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/hooks/useHighlightContext.tsx
var useHighlightContext = __webpack_require__("qd5V");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/utils/themeFilterUtils.ts
var themeFilterUtils = __webpack_require__("oLrK");
;// CONCATENATED MODULE: ./src/components/other/FilterOperator/FilterOperator.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FilterOperator = ({"base":"yc7ItzIcrzGZkxMQkCXl","isHighlighted":"vQeDrrz5sAGCQvSt0dmT","withoutDividers":"EaWK_ct4LXDT9OygFAZ4","notClickable":"ZCBP5NleVMxoNiGxdB3T","operator":"zDGWzzH4edUlKgrHMnfC","option":"sckqcGgsoyUcd5E0n88H","selected":"XnRghVDnblTpTyJTGIlW","operatorOption":"xNhHweqNsCsdmJKgkhVl","isExcludeOperator":"wZLJZTB9yl1C2WL7XNXg","optionDescription":"QO6HLPkMDs7vClmM189g"});
;// CONCATENATED MODULE: ./src/components/other/FilterOperator/FilterOperator.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var _a, _b;









var getOperatorsToShow = function (selectedOperator, operators, handler) {
    return Object.keys(operators)
        .map(function (op) { return operators[op].getOption(selectedOperator === op, function () { return handler(op); }); });
};
var getOperatorLabel = function (op) {
    return __assign(__assign({}, OPERATORS), GROUP_OPERATORS)[op].getLabel();
};
var renderNonSelectableOperatorIcon = function (type) {
    return renderNonSelectableOperator((0,jsx_runtime.jsx)(Icon/* default */.A, { color: "gray", type: type }));
};
var renderNonSelectableOperator = function (label, className) {
    return (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterOperator.base, FilterOperator.notClickable, className) }, { children: renderOperatorPlaceholder(label) }));
};
var renderOperatorPlaceholder = function (content) {
    return (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterOperator.operator) }, { children: content }));
};
var OPERATORS = {
    or: {
        getLabel: function () { return l('OR', 'operator'); },
        getOption: function (isSelected, onClick) { return ((0,jsx_runtime.jsx)(FilterOperatorOption, { isSelected: isSelected, operator: l('OR', 'operator'), description: l('at least one of the groups is in the mention'), onClick: onClick })); },
    },
    and: {
        getLabel: function () { return l('AND', 'operator'); },
        getOption: function (isSelected, onClick) { return ((0,jsx_runtime.jsx)(FilterOperatorOption, { isSelected: isSelected, operator: l('AND', 'operator'), description: l('all groups are in the mentions'), onClick: onClick })); },
    },
};
var OR_OPERATORS = (_a = {},
    _a[themeFilterUtils/* DEFAULT_OPERATOR */.ZP] = {
        getEqualsOperatorInfo: function () { return ({
            iconColor: 'primary',
            iconType: 'equal',
        }); },
        getLabel: function () { return l('OR', 'operator'); },
        getOption: function (isSelected, onClick) { return ((0,jsx_runtime.jsx)(FilterOperatorOption, { isSelected: isSelected, isGroupOperator: true, operator: l('OR', 'operator'), description: l('at least one of the values is in the mention'), onClick: onClick })); },
    },
    _a[themeFilterUtils/* DEFAULT_EXCLUDE_OPERATOR */._U] = {
        getEqualsOperatorInfo: function () { return ({
            iconColor: 'red',
            iconType: 'not-equal',
        }); },
        getLabel: function () { return l('OR', 'operator'); },
        getOption: function (isSelected, onClick) { return ((0,jsx_runtime.jsx)(FilterOperatorOption, { isSelected: isSelected, isExcludeOperator: true, isGroupOperator: true, operator: l('OR', 'operator'), description: l('at least one of the values is excluded'), onClick: onClick })); },
    },
    _a);
var AND_OPERATORS = (_b = {},
    _b[themeFilterUtils/* CONTAINS_OPERATOR */.$J] = {
        getEqualsOperatorInfo: function () { return ({
            iconColor: 'primary',
            iconType: 'equal',
        }); },
        getLabel: function () { return l('AND', 'operator'); },
        getOption: function (isSelected, onClick) { return ((0,jsx_runtime.jsx)(FilterOperatorOption, { isSelected: isSelected, isGroupOperator: true, operator: l('AND', 'operator'), description: l('all values are in the mention'), "data-testid": "FilterOperatorOption", onClick: onClick })); },
    },
    _b[themeFilterUtils/* CONTAINS_EXCLUDE_OPERATOR */.YU] = {
        getEqualsOperatorInfo: function () { return ({
            iconColor: 'red',
            iconType: 'not-equal',
        }); },
        getLabel: function () { return l('AND', 'operator'); },
        getOption: function (isSelected, onClick) { return ((0,jsx_runtime.jsx)(FilterOperatorOption, { isSelected: isSelected, isExcludeOperator: true, isGroupOperator: true, operator: l('AND', 'operator'), description: l('all values are excluded'), onClick: onClick })); },
    },
    _b);
var GROUP_OPERATORS = __assign(__assign({}, OR_OPERATORS), AND_OPERATORS);
var FilterOperatorOption = function (_a) {
    var _b, _c;
    var isSelected = _a.isSelected, isGroupOperator = _a.isGroupOperator, isExcludeOperator = _a.isExcludeOperator, operator = _a.operator, description = _a.description, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(FilterOperator.option, (_b = {}, _b[FilterOperator.selected] = isSelected, _b)), onClick: onClick, "data-testid": "OperatorOption" }, { children: [isGroupOperator && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { color: isExcludeOperator ? 'red' : 'primary', type: isExcludeOperator ? 'not-equal' : 'equal' }), (0,jsx_runtime.jsx)(Space/* default */.A, {})] })), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterOperator.operatorOption, (_c = {}, _c[FilterOperator.isExcludeOperator] = isExcludeOperator, _c)) }, { children: operator })), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterOperator.optionDescription) }, { children: description }))] })));
};
var FilterOperator_FilterOperator = function (_a) {
    var _b;
    var filterName = _a.filterName, operator = _a.operator, onChange = _a.onChange, isMultiValue = _a.isMultiValue, isEqualOperator = _a.isEqualOperator, isExcluded = _a.isExcluded, editable = _a.editable;
    var popover = (0,react.useRef)(null);
    var handleChangeOperator = function (newOperator) {
        var _a;
        onChange({ oldOperator: operator, operator: newOperator, filterName: filterName });
        (_a = popover === null || popover === void 0 ? void 0 : popover.current) === null || _a === void 0 ? void 0 : _a.hide();
    };
    var equalsOperatorInfo = (_b = __assign({}, GROUP_OPERATORS)[operator]) === null || _b === void 0 ? void 0 : _b.getEqualsOperatorInfo();
    var _c = (0,useHighlightContext/* useHighlightContext */.D)(), isHighlighted = _c.isHighlighted, showHighlight = _c.showHighlight, hideHighlight = _c.hideHighlight;
    return editable ? renderOperatorPopover() : renderNonSelectableOperator(renderOperatorLabel());
    function renderOperatorPopover() {
        var _a;
        var operators = isMultiValue ? GROUP_OPERATORS : OR_OPERATORS;
        return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ flowing: true, fitted: true, ref: popover, content: (0,jsx_runtime.jsx)("div", __assign({ onMouseEnter: showHighlight, onMouseLeave: hideHighlight, onClick: hideHighlight }, { children: getOperatorsToShow(operator, operators, handleChangeOperator) })) }, { children: (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterOperator.base, (_a = {}, _a[FilterOperator.isExcludeOperator] = isExcluded, _a[FilterOperator.isHighlighted] = isHighlighted, _a)), onMouseEnter: showHighlight, onMouseLeave: hideHighlight }, { children: renderOperatorLabel() })) })));
    }
    function renderOperatorLabel() {
        if (isEqualOperator) {
            return (0,jsx_runtime.jsx)(Icon/* default */.A, { color: equalsOperatorInfo === null || equalsOperatorInfo === void 0 ? void 0 : equalsOperatorInfo.iconColor, type: equalsOperatorInfo === null || equalsOperatorInfo === void 0 ? void 0 : equalsOperatorInfo.iconType });
        }
        return getOperatorLabel(operator);
    }
};
var GeneralFilterOperator = function (_a) {
    var operator = _a.operator, onChange = _a.onChange, editable = _a.editable;
    var popover = (0,react.useRef)(null);
    var handleChangeOperator = function (newOperator) {
        var _a;
        onChange({ oldOperator: operator, operator: newOperator });
        (_a = popover === null || popover === void 0 ? void 0 : popover.current) === null || _a === void 0 ? void 0 : _a.hide();
    };
    var _b = (0,useHighlightContext/* useHighlightContext */.D)(), isHighlighted = _b.isHighlighted, showHighlight = _b.showHighlight, hideHighlight = _b.hideHighlight;
    return editable
        ? renderOperatorPopover()
        : renderNonSelectableOperator(getOperatorLabel(operator), 'withoutDividers');
    function renderOperatorPopover() {
        var _a;
        return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ flowing: true, fitted: true, ref: popover, content: (0,jsx_runtime.jsx)("div", __assign({ onMouseEnter: showHighlight, onMouseLeave: hideHighlight, onClick: hideHighlight }, { children: getOperatorsToShow(operator, OPERATORS, handleChangeOperator) })) }, { children: (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterOperator.base, FilterOperator.withoutDividers, (_a = {}, _a[FilterOperator.isHighlighted] = isHighlighted, _a)), onMouseEnter: showHighlight, onMouseLeave: hideHighlight }, { children: getOperatorLabel(operator) })) })));
    }
};
/* harmony default export */ const other_FilterOperator_FilterOperator = (FilterOperator_FilterOperator);


/***/ }),

/***/ "HnTy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _FilterOperator__WEBPACK_IMPORTED_MODULE_0__.Ay)
/* harmony export */ });
/* harmony import */ var _FilterOperator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ZMuL");



/***/ }),

/***/ "bkQi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_MentionPreview_MentionPreview)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/hooks/useMentionTranslation.ts
var useMentionTranslation = __webpack_require__("QNbQ");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/ui/Avatar/index.ts + 2 modules
var Avatar = __webpack_require__("tq5F");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/components/ui/MentionText/index.ts + 2 modules
var MentionText = __webpack_require__("6k/U");
// EXTERNAL MODULE: ./src/components/ui/ImagePreview/index.ts
var ImagePreview = __webpack_require__("efAf");
// EXTERNAL MODULE: ./src/components/ui/IconCountBadge/index.ts + 2 modules
var IconCountBadge = __webpack_require__("Hyk5");
// EXTERNAL MODULE: ./src/components/other/TranslationButton/index.ts + 2 modules
var TranslationButton = __webpack_require__("z/m7");
// EXTERNAL MODULE: ./src/components/other/MentionEngagementCounts/index.js + 2 modules
var MentionEngagementCounts = __webpack_require__("vGGb");
// EXTERNAL MODULE: ./src/components/other/SentimentSwitcher/SentimentSwitcher.tsx + 1 modules
var SentimentSwitcher = __webpack_require__("xazx");
// EXTERNAL MODULE: ./src/components/other/AuthorDropdownInfo/AuthorInfoPopup.tsx + 2 modules
var AuthorInfoPopup = __webpack_require__("9K02");
// EXTERNAL MODULE: ./src/utils/isMentionWithSuspiciousContent.ts
var isMentionWithSuspiciousContent = __webpack_require__("Lyvr");
// EXTERNAL MODULE: ./src/utils/dates/timeUtils.ts
var timeUtils = __webpack_require__("P8Q3");
// EXTERNAL MODULE: ./src/containers/helpers/WithUserTimeZone.js
var WithUserTimeZone = __webpack_require__("FNcx");
// EXTERNAL MODULE: ./node_modules/react-rating/lib/react-rating.esm.js
var react_rating_esm = __webpack_require__("4nr2");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/Tag/index.js + 6 modules
var Tag = __webpack_require__("/i37");
// EXTERNAL MODULE: ./src/utils/translations/collectionMethodsFilterTranslations.ts
var collectionMethodsFilterTranslations = __webpack_require__("Rotz");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
;// CONCATENATED MODULE: ./src/components/other/MentionPreview/MentionPreview.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionPreview = ({"base":"XVtl4SA4lzxi2SEGU81h","infoBody":"R1tEgk7eokABMlFq0rYa","header":"g5VX0iERf9Nn85HhIczP","title":"K522kaOI0f7pHVtEN7ZH","avatarContainer":"z9F7NjzTWcoD8KSjWe1z","mainInfo":"aBgEumpXVyHPuW3ZF4ZG","mainInfoAuthor":"l83RACGAnW6DZnPOT1__","authorName":"cBMmEqdswnmNcxV3dXPs","sourceName":"aCYvKMKj9oa8qqhrcj6N","timePublished":"CIBB6GcmmZwPXmS5cc2j","publicationData":"ngNeE8cysiul3MjZolmq","text":"Fxz2IacA8zinFXGEClzw","contentText":"EZkM12cBQKj06YL7b3em","contentImage":"E9XFfUmNJpPmm2ssjClQ","withContentClick":"N87X0t4l_ZUGaB2Pwf8M","additionalInfo":"_cqgX3s0x64XLEdJkC3t","sentiment":"cgLwRbFT0W7RTVd9FsZy","engagement":"fU_B1xKivemyCl_NJCvt","rating":"ncXkFejbTA8rXgSoLI1y","ratingNumber":"MNe009BXesmFAYXPJtjo"});
;// CONCATENATED MODULE: ./src/components/other/MentionPreview/MentionPreview.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

























var MentionPreview_MentionPreview = function (_a) {
    var _b, _c;
    var author = _a.author, url = _a.url, text = _a.text, imageUrl = _a.imageUrl, imageType = _a.imageType, imageSubtype = _a.imageSubtype, imageColors = _a.imageColors, imageBrands = _a.imageBrands, imageObjects = _a.imageObjects, imageScenes = _a.imageScenes, imagePeople = _a.imagePeople, imageActivities = _a.imageActivities, imageContentSensitivity = _a.imageContentSensitivity, squareImageSize = _a.squareImageSize, ocrTexts = _a.ocrTexts, showVisualInsights = _a.showVisualInsights, sourceName = _a.sourceName, publicationDate = _a.publicationDate, engagement = _a.engagement, title = _a.title, language = _a.language, canBackendTranslate = _a.canBackendTranslate, tags = _a.tags, sentiment = _a.sentiment, rating = _a.rating, className = _a.className, classNameImagePreview = _a.classNameImagePreview, style = _a.style, hideAvatar = _a.hideAvatar, showEngagement = _a.showEngagement, withTranslationButton = _a.withTranslationButton, withAuthorInfo = _a.withAuthorInfo, collectionMethod = _a.collectionMethod, userLanguage = _a.userLanguage, sourceFormat = _a.sourceFormat, onSourceClick = _a.onSourceClick, onContentClick = _a.onContentClick, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _d = (0,useMentionTranslation/* useMentionTranslation */.Z)({
        title: title,
        text: text,
        mentionLanguage: language,
        userLanguage: userLanguage,
        canBackendTranslate: canBackendTranslate,
        sendAnalyticalEvent: sendAnalyticalEvent,
    }), canTranslate = _d.canTranslate, isTranslated = _d.isTranslated, isTranslationLoading = _d.isTranslationLoading, translationError = _d.translationError, translation = _d.translation, translate = _d.translate;
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, __assign({ className: classnames_default()(className, MentionPreview.base), style: style }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: MentionPreview.infoBody }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionPreview.header) }, { children: [!hideAvatar && ((0,jsx_runtime.jsx)("a", __assign({ href: author === null || author === void 0 ? void 0 : author.url, className: classnames_default()(MentionPreview.avatarContainer), target: "_blank", rel: "noopener noreferrer" }, { children: (0,jsx_runtime.jsx)(Avatar/* default */.A, { rounded: true, imageUrl: author === null || author === void 0 ? void 0 : author.avatarUrl }) }))), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionPreview.mainInfo) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: MentionPreview.mainInfoAuthor }, { children: [withAuthorInfo ? ((0,jsx_runtime.jsx)(AuthorInfoPopup/* default */.A, __assign({ shouldHandleOutsideClick: true, hideActionsButtons: true, name: author === null || author === void 0 ? void 0 : author.name, nickname: author === null || author === void 0 ? void 0 : author.nickname, description: author === null || author === void 0 ? void 0 : author.description, subscribers: author === null || author === void 0 ? void 0 : author.subscribers, avatarUrl: author === null || author === void 0 ? void 0 : author.avatarUrl, sourceName: sourceName, onOpenProfile: function () { return window.open(author === null || author === void 0 ? void 0 : author.url, '_blank'); } }, { children: (0,jsx_runtime.jsx)("span", __assign({ className: MentionPreview.authorName }, { children: (author === null || author === void 0 ? void 0 : author.name) || (author === null || author === void 0 ? void 0 : author.nickname) })) }))) : ((0,jsx_runtime.jsx)("a", __assign({ href: author === null || author === void 0 ? void 0 : author.url, className: classnames_default()(MentionPreview.authorName), target: "_blank", rel: "noopener noreferrer" }, { children: (author === null || author === void 0 ? void 0 : author.name) || (author === null || author === void 0 ? void 0 : author.nickname) }))), (0,jsx_runtime.jsx)("a", __assign({ href: author === null || author === void 0 ? void 0 : author.url, className: classnames_default()(MentionPreview.authorName), target: "_blank", rel: "noopener noreferrer" }, { children: (author === null || author === void 0 ? void 0 : author.subscribers) !== undefined && (0,jsx_runtime.jsx)(IconCountBadge/* default */.A, { count: author.subscribers, iconType: "users" }) }))] })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionPreview.publicationData) }, { children: [(0,jsx_runtime.jsxs)("a", __assign({ href: url, className: classnames_default()(MentionPreview.sourceName), target: "_blank", rel: "noopener noreferrer", onClick: function () { return onSourceClick === null || onSourceClick === void 0 ? void 0 : onSourceClick(sourceName); } }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: sourceName }), sourceName] })), (0,jsx_runtime.jsx)("a", __assign({ href: url, className: classnames_default()(MentionPreview.timePublished), target: "_blank", rel: "noopener noreferrer", onClick: function () { return onSourceClick === null || onSourceClick === void 0 ? void 0 : onSourceClick(sourceName); } }, { children: (0,jsx_runtime.jsx)("span", { children: (0,jsx_runtime.jsx)(WithUserTimeZone/* default */.A, { children: function (timeZone) {
                                                            return (0,timeUtils/* getTimeWithTimeZone */.vP)({
                                                                timeZone: timeZone,
                                                                dateTime: publicationDate,
                                                                format: 'LLL',
                                                            });
                                                        } }) }) }))] }))] }))] })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionPreview.content, (_b = {}, _b[MentionPreview.withContentClick] = !!onContentClick, _b)), onClick: onContentClick !== null && onContentClick !== void 0 ? onContentClick : null }, { children: [(0,lodash.isNumber)(rating) && ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionPreview.rating) }, { children: [(0,jsx_runtime.jsx)(react_rating_esm/* default */.A, { readonly: true, fractions: 2, initialRating: rating, emptySymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "lightgray", size: 24 }), fullSymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "amber", size: 24 }) }), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(MentionPreview.ratingNumber) }, { children: numeral_default()(rating).format('0.0') }))] }))), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(MentionPreview.contentText, (_c = {}, _c[MentionPreview.textWithImage] = imageUrl, _c)) }, { children: [title && ((0,jsx_runtime.jsx)(H3/* default */.A, { children: (0,jsx_runtime.jsx)(MentionText/* default */.A, { className: classnames_default()(MentionPreview.title), text: isTranslated ? translation.title : title }) })), (0,jsx_runtime.jsx)(MentionText/* default */.A, { text: isTranslated ? translation.text : text, className: classnames_default()(MentionPreview.text) }), withTranslationButton && canTranslate && ((0,jsx_runtime.jsx)(TranslationButton/* default */.A, { isTranslated: isTranslated, isTranslationLoading: isTranslationLoading, translationError: translationError, onClick: translate }))] })), (0,jsx_runtime.jsxs)("div", __assign({ className: MentionPreview.additionalInfo }, { children: [sentiment && ((0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, { className: MentionPreview.sentiment, selected: sentiment, manual: false, canChange: false, onChange: null })), showEngagement && engagement && ((0,jsx_runtime.jsx)(MentionEngagementCounts/* default */.A, { className: MentionPreview.engagement, sourceName: sourceName, likes: engagement.likes, dislikes: engagement.dislikes, reposts: engagement.reposts, comments: engagement.comments, views: engagement.views, impressions: engagement.impressions, reach: engagement.reach, reactions: engagement.reactions, shares: engagement.shares, dateCollected: engagement.dateCollected, sourceFormat: sourceFormat })), (collectionMethod === null || collectionMethod === void 0 ? void 0 : collectionMethod.length)
                                        ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ on: "hover", position: "top center", text: (0,collectionMethodsFilterTranslations/* getCollectionMethodsFilterTranslation */.sL)(collectionMethod[0]).title }, { children: (0,jsx_runtime.jsx)(Tag/* default */.Ay, { label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Collection method:'), " ", (0,collectionMethodsFilterTranslations/* getCollectionMethodsFilterTranslation */.sL)(collectionMethod[0]).label] }) }) })))
                                        : null] }))] }))] })), imageUrl && ((0,jsx_runtime.jsx)(ImagePreview/* default */.A, { isSquareImage: true, showVisualInsights: showVisualInsights, isSuspiciousContent: (0,isMentionWithSuspiciousContent/* default */.A)(tags), alt: title, className: classnames_default()(MentionPreview.contentImage, classNameImagePreview), src: imageUrl, imageType: imageType, imageSubtype: imageSubtype, imageColors: imageColors, imageBrands: imageBrands, imageObjects: imageObjects, imageScenes: imageScenes, imagePeople: imagePeople, imageActivities: imageActivities, imageContentSensitivity: imageContentSensitivity, squareImageSize: squareImageSize, ocrTexts: ocrTexts }))] })));
};
/* harmony default export */ const other_MentionPreview_MentionPreview = (MentionPreview_MentionPreview);

;// CONCATENATED MODULE: ./src/components/other/MentionPreview/index.ts



/***/ }),

/***/ "r7Fg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_NetworkGraph_NetworkGraph)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/vis-network-react/lib/index.js
var lib = __webpack_require__("KMkY");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/InlineSelect/index.ts + 2 modules
var InlineSelect = __webpack_require__("+733");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/components/other/ChartSwitcher/index.ts + 2 modules
var ChartSwitcher = __webpack_require__("MOLi");
// EXTERNAL MODULE: ./src/utils/debounce.js
var debounce = __webpack_require__("P6/z");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/components/other/NetworkGraph/NetworkGraph.global.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const NetworkGraph_global = ({});
;// CONCATENATED MODULE: ./src/components/other/NetworkGraph/NetworkGraph.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NetworkGraph = ({"header":"kxbBCP6uirtq25x268Wg","buttonsGroup":"vkbKzRxKJ5lRnhDMBXJF","verticalButtonsGroup":"PZXpqJ8u7LZMQia4mM92","switcher":"BoFYWxrxhTo8_Alerkga","exportButton":"lmlhAIy4qkBUCbbKDPsW","exportButtonLabel":"wv1z4rdKAHdN9IpQX4dD"});
;// CONCATENATED MODULE: ./src/components/other/NetworkGraph/NetworkGraph.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */














var THE_ANSWER_TO_LIFE_THE_UNIVERSE_AND_EVERYTHING = 42;
var ZOOM_THRESHOLD = 0.19;
var CENTRAL_POSITION = { x: -95, y: 515 };
var OPTIONS = {
    layout: {
        improvedLayout: true,
        randomSeed: THE_ANSWER_TO_LIFE_THE_UNIVERSE_AND_EVERYTHING,
    },
    nodes: {
        shape: 'dot',
        borderWidth: 0,
        scaling: {
            min: 20,
            max: 56,
        },
        font: {
            face: '"Twemoji Country Flags", "Inter", "Helvetica Neue", sans-serif',
            size: 24,
        },
        widthConstraint: {
            maximum: 400,
        },
    },
    edges: {
        arrowStrikethrough: true,
        endPointOffset: {
            from: -100,
            to: -100,
        },
        color: { inherit: 'both' },
    },
    interaction: {
        hover: true,
        tooltipDelay: 100,
        zoomSpeed: 0.5,
    },
    physics: {
        enabled: true,
        forceAtlas2Based: {
            avoidOverlap: 0.75,
        },
        minVelocity: 0.5,
        maxVelocity: 150,
        solver: 'forceAtlas2Based',
        timestep: 0.15,
        stabilization: {
            fit: true,
            iterations: 500,
        },
    },
};
var NetworkGraph_NetworkGraph = function (_a) {
    var _b = _a.isDemoMode, isDemoMode = _b === void 0 ? false : _b, _c = _a.title, title = _c === void 0 ? '' : _c, _d = _a.height, height = _d === void 0 ? null : _d, _e = _a.additionalButtons, additionalButtons = _e === void 0 ? null : _e, data = _a.data, _f = _a.exportOptions, exportOptions = _f === void 0 ? [] : _f, onNodeClick = _a.onNodeClick;
    var _g = __read((0,react.useState)(OPTIONS), 2), usedOptions = _g[0], setUsedOptions = _g[1];
    var _h = __read((0,react.useState)(data), 2), usedData = _h[0], setUsedData = _h[1];
    var _j = __read((0,react.useState)(false), 2), isViewSimlified = _j[0], setIsViewSimlified = _j[1];
    var _k = __read((0,react.useState)(null), 2), usedNetwork = _k[0], setNetwork = _k[1];
    var _l = __read((0,react.useState)(false), 2), showResetZoom = _l[0], setShowResetZoom = _l[1];
    var _m = __read((0,react.useState)('grab'), 2), cursor = _m[0], setCursor = _m[1];
    if (!data || !data.nodes.length)
        return null;
    var handleStopSimulation = function () {
        setUsedOptions(__assign(__assign({}, OPTIONS), { physics: __assign(__assign({}, OPTIONS.physics), { enabled: false }) }));
    };
    (0,react.useEffect)(function () {
        setDataWithColoredText({ dataToApply: data, shouldApplyColor: isViewSimlified });
    }, [data]);
    (0,react.useEffect)(function () {
        if (!usedNetwork)
            return;
        usedNetwork.startSimulation();
        setTimeout(function () {
            handleStopSimulation();
        }, 2000);
    });
    var EXPORT_OPTIONS = (0,react.useMemo)(function () { return __spreadArray([
        {
            value: 'png',
            label: l('PNG'),
            handler: function () { },
        }
    ], __read(exportOptions), false); }, []);
    var handleResetZoom = function () {
        usedNetwork.fit();
        setShowResetZoom(false);
    };
    var handleZoom = function () {
        usedNetwork.moveTo({ scale: usedNetwork.body.view.scale + 0.05 });
        setShowResetZoom(true);
    };
    var handleUnzoom = function () {
        usedNetwork.moveTo({ scale: usedNetwork.body.view.scale - 0.05 });
        setShowResetZoom(true);
    };
    var handleExport = function (exportType) {
        if (!usedNetwork)
            return;
        if (exportType !== 'png') {
            // @ts-ignore
            EXPORT_OPTIONS.find(function (o) { return o.value === exportType; }).handler();
            return;
        }
        setTimeout(function () {
            var canvas = document.querySelector('.vis-network').querySelector('canvas');
            var link = document.createElement('a');
            link.style.display = 'none';
            document.body.appendChild(link);
            link.href = canvas.toDataURL('image/png');
            link.download = 'network.png';
            link.click();
            document.body.removeChild(link);
        }, 100);
    };
    var setDataWithColoredText = function (_a) {
        var _b = _a.dataToApply, dataToApply = _b === void 0 ? usedData : _b, shouldApplyColor = _a.shouldApplyColor;
        setUsedData({
            edges: dataToApply.edges,
            nodes: dataToApply.nodes.map(function (node) { return (__assign(__assign({}, node), { font: {
                    color: shouldApplyColor ? node.color.background : (0,colors/* getColorsByTheme */.hx)().textColor,
                } })); }),
        });
    };
    var handleToggleView = function () {
        var optionsCopy = __assign({}, OPTIONS);
        optionsCopy.nodes.font.size = isViewSimlified ? 24 : 36;
        optionsCopy.nodes.shape = isViewSimlified ? 'dot' : 'text';
        setIsViewSimlified(!isViewSimlified);
        setUsedOptions(optionsCopy);
        setDataWithColoredText({ shouldApplyColor: !isViewSimlified });
    };
    var handleHoverNode = function (nodeId, network) {
        if (!network)
            return;
        var connectedNodeIds = network.getConnectedNodes(nodeId);
        setUsedData({
            edges: usedData.edges,
            nodes: usedData.nodes.map(function (n) {
                if (connectedNodeIds.includes(n.id) || n.id === nodeId)
                    return n;
                return __assign(__assign({}, n), { color: __assign(__assign({}, n.color), { background: "".concat(n.color.background, "20") }), font: { color: (0,colors/* getColorsByTheme */.hx)().secondaryTextColor } });
            }),
        });
    };
    var handleBlurNode = function (network) {
        if (!network)
            return;
        setUsedData({
            edges: data.edges,
            nodes: data.nodes.map(function (n) { return (__assign(__assign({}, n), { color: __assign(__assign({}, n.color), { background: n.color.background }), font: { color: isViewSimlified ? n.color.background : (0,colors/* getColorsByTheme */.hx)().textColor } })); }),
        });
    };
    var networkComponent = (0,react.useMemo)(function () {
        return ((0,jsx_runtime.jsx)(lib/* default */.A, { data: usedData, options: usedOptions, events: {
                hoverNode: function (_a) {
                    var node = _a.node;
                    setCursor('pointer');
                    handleHoverNode(node, usedNetwork);
                },
                blurNode: function () {
                    setCursor('grab');
                    handleBlurNode(usedNetwork);
                },
                dragging: function () {
                    setCursor('grabbing');
                },
                dragEnd: function () {
                    setCursor('grab');
                },
                click: function (x) { var _a; return (((_a = x.nodes) === null || _a === void 0 ? void 0 : _a.length) ? (0,debounce/* default */.A)(onNodeClick(data.nodes.find(function (n) { return n.id === x.nodes[0]; })), 100) : null); },
                zoom: function (x) {
                    if (x.scale <= ZOOM_THRESHOLD)
                        this.moveTo({
                            scale: ZOOM_THRESHOLD,
                            position: CENTRAL_POSITION,
                        });
                    setShowResetZoom(true);
                },
            }, getNetwork: function (network) {
                var interactionHandler = network.interactionHandler;
                if (interactionHandler) {
                    interactionHandler.body.eventListeners.onMouseWheel = function (event) {
                        if (!event.ctrlKey)
                            return;
                        interactionHandler.onMouseWheel(event);
                    };
                }
                setNetwork(network);
            } }));
    }, [usedData, usedOptions]);
    return ((0,jsx_runtime.jsxs)("div", __assign({ style: { height: height || '100%', position: 'relative', cursor: cursor } }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { withoutExport: true, title: title, className: NetworkGraph.header, additionalContent: (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, { children: [additionalButtons ? ((0,jsx_runtime.jsx)("div", __assign({ className: NetworkGraph.buttonsGroup }, { children: additionalButtons }))) : null, (0,jsx_runtime.jsx)(ChartSwitcher/* default */.A, { isActive: isViewSimlified, dataHookName: "network-graph", className: NetworkGraph.switcher, icons: {
                                left: {
                                    active: '/static/images/text_active.svg',
                                    disabled: '/static/images/text_disabled.svg',
                                },
                                right: {
                                    active: '/static/images/graph_active.svg',
                                    disabled: '/static/images/graph_disabled.svg',
                                },
                            }, onToggle: handleToggleView }), isDemoMode ? null : ((0,jsx_runtime.jsx)(InlineSelect/* default */.A, __assign({ value: null, options: EXPORT_OPTIONS, onChange: handleExport }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", className: NetworkGraph.exportButton, label: (0,jsx_runtime.jsxs)("div", __assign({ className: NetworkGraph.exportButtonLabel }, { children: [l('Export', 'highcharts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 18, type: "menu-down" })] })) }) })))] }) }), networkComponent, isDemoMode ? null : ((0,jsx_runtime.jsxs)("div", __assign({ className: NetworkGraph.verticalButtonsGroup }, { children: [showResetZoom ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: l('Reset zoom') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "reload" }), ghost: true, size: "small", onClick: handleResetZoom }) }))) : null, (0,jsx_runtime.jsx)(Button/* default */.A, { label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus" }), ghost: true, size: "small", onClick: handleZoom }), (0,jsx_runtime.jsx)(Button/* default */.A, { label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "minus" }), ghost: true, size: "small", onClick: handleUnzoom })] })))] })));
};
/* harmony default export */ const other_NetworkGraph_NetworkGraph = ((0,react.memo)(NetworkGraph_NetworkGraph));

;// CONCATENATED MODULE: ./src/components/other/NetworkGraph/index.ts



/***/ }),

/***/ "gBVS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_SearchSort_SearchSort)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/SearchSort/SearchSort.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SearchSort = ({"actions":"CwMEGvjfOz8M_YJ2coyC","sort":"ekWlNIiLWOioeWPZZCvK","sortSelect":"VgnXOBZypP99pTXLkCmz","search":"FZRfO9mir2kqkL5UVP7B"});
;// CONCATENATED MODULE: ./src/components/other/SearchSort/SearchSort.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var SearchSort_SearchSort = function (_a) {
    var sortTypes = _a.sortTypes, search = _a.search, selectedSortType = _a.selectedSortType, onSearch = _a.onSearch, onSortChange = _a.onSortChange;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(SearchSort.actions) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, size: "large", className: classnames_default()(SearchSort.search), placeholder: l('Search'), leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), value: search, onChange: onSearch }), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(SearchSort.sort) }, { children: [l('Sort by'), (0,jsx_runtime.jsx)(Select/* default */.A, { isClearable: false, className: classnames_default()(SearchSort.sortSelect), placeholder: l('default'), options: sortTypes, value: sortTypes.find(function (opt) { return opt.value === selectedSortType; }), onChange: onSortChange })] }))] })));
};
/* harmony default export */ const other_SearchSort_SearchSort = (SearchSort_SearchSort);

;// CONCATENATED MODULE: ./src/components/other/SearchSort/index.ts



/***/ }),

/***/ "xazx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ other_SentimentSwitcher_SentimentSwitcher)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/utils/sentiments.ts
var sentiments = __webpack_require__("ofyo");
;// CONCATENATED MODULE: ./src/components/other/SentimentSwitcher/SentimentSwitcher.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentSwitcher = ({"base":"J3Nnw5bx9CnRFnn7koHW","icon":"VAyZT3HgrGyLi2alyOsh","selected":"eVGw0foxqml8bmm79g1j","manual":"UkXedyiR819m6vgrHr1K","sentimentIconGhost":"MqOytMMQRT9RYHZPCDha","noPadding":"dbhUvwowqhmgZZdzZo4P"});
;// CONCATENATED MODULE: ./src/components/other/SentimentSwitcher/SentimentSwitcher.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

/* eslint react/jsx-no-bind: 0 */







var SentimentSwitcher_SentimentSwitcher = function (_a) {
    var selected = _a.selected, manual = _a.manual, _b = _a.canChange, canChange = _b === void 0 ? true : _b, _c = _a.className, className = _c === void 0 ? '' : _c, onChange = _a.onChange;
    var handleSelectSentiment = function (sentiment) {
        if (onChange)
            onChange(sentiment);
    };
    if (!canChange && (!selected || selected === 'undefined'))
        return null;
    if (!canChange) {
        return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, SentimentSwitcher.base) }, { children: (0,jsx_runtime.jsx)(Icon/* SentimentIcon */.p, { isActive: true, type: selected, className: SentimentSwitcher.icon }) })));
    }
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, SentimentSwitcher.base) }, { children: sentiments/* SENTIMENT_NAMES */.dY.map(function (sentiment) {
            var _a;
            return ((0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()((_a = {}, _a[SentimentSwitcher.selected] = selected === sentiment, _a[SentimentSwitcher.manual] = selected === sentiment && manual, _a)), style: { borderColor: (0,colors/* getSentimentColor */.HS)(sentiment) }, iconType: sentiment, getSubstituteIcon: function (iconType) { return ((0,jsx_runtime.jsx)(Icon/* SentimentIcon */.p, { isActive: selected === sentiment, type: iconType, className: SentimentSwitcher.icon })); }, onClick: function () { return handleSelectSentiment(sentiment); } }, sentiment));
        }) })));
};
/* harmony default export */ const other_SentimentSwitcher_SentimentSwitcher = ((0,react.memo)(SentimentSwitcher_SentimentSwitcher));


/***/ }),

/***/ "9g4W":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _SentimentSwitcher__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _SentimentSwitcher__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("xazx");



/***/ }),

/***/ "qWR2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_SuspiciousImageHandler_SuspiciousImageHandler)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
;// CONCATENATED MODULE: ./src/components/other/SuspiciousImageHandler/SuspiciousImageHandler.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SuspiciousImageHandler = ({"base":"PMi_LaTygS6GsQCCCWoG","text":"fueyum49Jcqp6WoEhZKa","image":"fWX_V2xN5a4PxCg5A76J"});
;// CONCATENATED MODULE: ./src/components/other/SuspiciousImageHandler/SuspiciousImageHandler.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};








var SuspiciousImageHandler_SuspiciousImageHandler = function (_a) {
    var isSuspicious = _a.isSuspicious, className = _a.className, children = _a.children, onClick = _a.onClick;
    if (isSuspicious)
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(SuspiciousImageHandler.base, className) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(SuspiciousImageHandler.text) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: "medium", type: "caution-sign" }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(H3/* default */.A, { children: l('This media might contain sensitive material') }), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, size: "small", label: l('Show anyway'), onClick: onClick })] })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(SuspiciousImageHandler.image) }, { children: children }))] })));
    return children;
};
/* harmony default export */ const other_SuspiciousImageHandler_SuspiciousImageHandler = ((0,react.memo)(SuspiciousImageHandler_SuspiciousImageHandler));

;// CONCATENATED MODULE: ./src/components/other/SuspiciousImageHandler/index.ts



/***/ }),

/***/ "z/m7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_TranslationButton_TranslationButton)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
;// CONCATENATED MODULE: ./src/components/other/TranslationButton/TranslationButton.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TranslationButton = ({"label":"BgY_bVznzEVt1feCctJI","error":"CmPcEQN230Af4_OQT8y8"});
;// CONCATENATED MODULE: ./src/components/other/TranslationButton/TranslationButton.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var TranslationButton_TranslationButton = function (_a) {
    var className = _a.className, isTranslated = _a.isTranslated, isTranslationLoading = _a.isTranslationLoading, translationError = _a.translationError, onClick = _a.onClick;
    var getTranslationButtonWording = function () {
        if (isTranslationLoading)
            return l('Loading...');
        if (isTranslated)
            return l('Show original');
        return l('Translate');
    };
    var renderLabel = function () { return ((0,jsx_runtime.jsxs)("span", __assign({ className: TranslationButton.label }, { children: [getTranslationButtonWording(), translationError && ((0,jsx_runtime.jsx)("span", __assign({ className: TranslationButton.error }, { children: l('Something went wrong...') })))] }))); };
    return ((0,jsx_runtime.jsx)(Button/* default */.A, { className: className, link: true, disabled: isTranslationLoading, size: "small", label: renderLabel(), onClick: onClick }));
};
/* harmony default export */ const other_TranslationButton_TranslationButton = (TranslationButton_TranslationButton);

;// CONCATENATED MODULE: ./src/components/other/TranslationButton/index.ts



/***/ }),

/***/ "48Kc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ VisualInsightsChartTooltip_VisualInsightsChartTooltip)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/utils/colors.ts
var utils_colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
// EXTERNAL MODULE: ./src/utils/nodeChartUtils.ts
var nodeChartUtils = __webpack_require__("lXfu");
;// CONCATENATED MODULE: ./src/components/other/VisualInsightsChartTooltip/VisualInsightsChartTooltip.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var VisualInsightsChartTooltip = function (_a) {
    var _b;
    var chart = _a.chart;
    var handleFormatContextLegend = function (label) {
        var labelTranslations = {
            imageObject: l('Object', 'bubbleChartTooltip'),
            imageScene: l('Scene', 'bubbleChartTooltip'),
            imageActivities: l('Activity', 'bubbleChartTooltip'),
            imagePeople: l('Person', 'bubbleChartTooltip'),
            imageBrand: l('Logo', 'bubbleChartTooltip'),
        };
        return labelTranslations[label];
    };
    var point = chart.point;
    var colors = (0,utils_colors/* getColorsByTheme */.hx)();
    var getTrendApperance = function () {
        var _a;
        var isTrendAvailable = (_a = point.trend) === null || _a === void 0 ? void 0 : _a.info;
        var getBadgeBackground = function (color) { return ((0,colorHandler/* isDarkTheme */.g4)() ? '#424242' : color); };
        var defaultAppearance = {
            containerStyle: {
                border: '1px solid',
                borderColor: isTrendAvailable ? colors.grayLight : 'transparent',
                borderRadius: '8px',
                padding: '6px 8px',
                marginBottom: isTrendAvailable ? '6px' : 0,
                marginRight: isTrendAvailable ? '10px' : 0,
            },
            badgeStyle: {
                color: colors.textColor,
                backgroundColor: getBadgeBackground('white'),
                fontWeight: 600,
            },
        };
        if (!isTrendAvailable)
            return defaultAppearance;
        if (point.trend.info.score > nodeChartUtils/* TREND_SCORE_THRESHOLD */.$D)
            return {
                containerStyle: __assign(__assign({}, defaultAppearance.containerStyle), { borderColor: '#61B53D' }),
                badgeStyle: __assign(__assign({}, defaultAppearance.badgeStyle), { color: '#509931', backgroundColor: getBadgeBackground('#ecffeb') }),
            };
        if (point.trend.info.score < -nodeChartUtils/* TREND_SCORE_THRESHOLD */.$D)
            return {
                containerStyle: __assign(__assign({}, defaultAppearance.containerStyle), { borderColor: '#F44336' }),
                badgeStyle: __assign(__assign({}, defaultAppearance.badgeStyle), { color: '#FA2A36', backgroundColor: getBadgeBackground('#FFD5DB') }),
            };
        return defaultAppearance;
    };
    var trendAppearance = getTrendApperance();
    return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)("div", __assign({ style: {
            backgroundColor: colors.white,
            padding: '8px 8px 0 8px',
            border: "1px solid ".concat(colors.bordersColor),
            borderRadius: 4,
        } }, { children: [(0,jsx_runtime.jsxs)("h5", __assign({ style: { marginBottom: 16, verticalAlign: 'middle' } }, { children: [(0,jsx_runtime.jsx)("div", { style: {
                            display: 'inline-block',
                            width: '10px',
                            height: '10px',
                            backgroundColor: chart.color,
                            borderRadius: '50%',
                            marginRight: '4px',
                        } }), (0,jsx_runtime.jsx)("span", __assign({ style: { fontSize: 14, color: colors.textColor, textTransform: 'uppercase' } }, { children: point.name })), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("span", __assign({ style: { marginLeft: 16, fontSize: 12, color: colors.secondaryTextColor } }, { children: handleFormatContextLegend(point.type) }))] })), (0,jsx_runtime.jsxs)("div", __assign({ style: { marginLeft: 10, display: 'flex', gap: 16, marginBottom: '6px' } }, { children: [point.imagesCount ? ((0,jsx_runtime.jsxs)("div", __assign({ style: { whiteSpace: 'nowrap', padding: '6px 8px' } }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: numeral_default()(point.imagesCount).format('0,0') })), (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('unique images') }))] }))) : null, point.engagement ? ((0,jsx_runtime.jsxs)("div", __assign({ style: { whiteSpace: 'nowrap', padding: '6px 8px' } }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: numeral_default()(point.engagement).format('0,0') })), (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('engagement') }))] }))) : null, point.mentionsCount ? ((0,jsx_runtime.jsxs)("div", __assign({ style: __assign({ whiteSpace: 'nowrap', position: 'relative', zIndex: 1 }, trendAppearance.containerStyle) }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: numeral_default()(point.mentionsCount).format('0,0') })), ((_b = point.trend) === null || _b === void 0 ? void 0 : _b.info)
                                ? ((0,jsx_runtime.jsx)("pre", __assign({ style: __assign({ position: 'absolute', padding: '2px 3px', top: -24, right: -8, fontSize: '12px', lineHeight: '12px', borderRadius: 2, boxShadow: '2px 2px 2px rgba(0, 0, 0, 0.12)', zIndex: 100, backgroundColor: colors.white }, trendAppearance.badgeStyle) }, { children: "".concat(point.trend.info.score > 0 ? '+' : '').concat(Math.round(point.trend.info.score * 100), "%") })))
                                : null, (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('all images') }))] }))) : null] }))] })));
};
/* harmony default export */ const VisualInsightsChartTooltip_VisualInsightsChartTooltip = (VisualInsightsChartTooltip);

;// CONCATENATED MODULE: ./src/components/other/VisualInsightsChartTooltip/index.ts



/***/ }),

/***/ "H+oc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_VolumePopover_VolumePopover)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/components/ui/Range/index.ts + 2 modules
var Range = __webpack_require__("7iTR");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
;// CONCATENATED MODULE: ./src/components/other/VolumePopover/VolumePopover.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const VolumePopover = ({"volumeRange":"vAmGcK2JfgvnNU6YyBLQ","volumeButton":"pL2PtsGtB75ZP_GZtlHG","volumeButtonLabel":"tcECvg9pxplX9Y5nrUQs"});
;// CONCATENATED MODULE: ./src/components/other/VolumePopover/VolumePopover.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var VolumePopover_VolumePopover = function (_a) {
    var _b = _a.title, title = _b === void 0 ? '' : _b, volume = _a.volume, onChange = _a.onChange, onFinalChange = _a.onFinalChange;
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ hideOnScroll: true, hoverable: true, flowing: true, on: "click", content: (0,jsx_runtime.jsx)(Range/* default */.A, { customTrackLabels: {
                min: l('Less obvious'),
                max: l('Apparent'),
            }, className: classnames_default()(VolumePopover.volumeRange), values: volume, min: 0, max: 100, step: 1, labelSuffix: "%", onChange: onChange, onFinalChange: onFinalChange }), onHide: function () { return onFinalChange(volume); } }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", className: classnames_default()(VolumePopover.volumeButton), label: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(VolumePopover.volumeButtonLabel) }, { children: [title || l('Visible range', 'volumePopover'), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), volume[0], "% \u2013 ", volume[1], "%"] })) }) })));
};
/* harmony default export */ const other_VolumePopover_VolumePopover = (VolumePopover_VolumePopover);

;// CONCATENATED MODULE: ./src/components/other/VolumePopover/index.ts



/***/ }),

/***/ "xeBz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ WordCharts_TrendingWordsChart_TrendingWordsChart)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/components/other/WordCharts/hooks.ts
var hooks = __webpack_require__("h8Cc");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
;// CONCATENATED MODULE: ./src/components/ui/BlurOverlay/BlurOverlay.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const BlurOverlay = ({"base":"CN9_sXDtnFP9KCitmcXS","children":"WnZDlD0C_16Fj4SIfYUf","blur":"XwKACg6ZeqnJLX6DmjqK","textContainer":"D3nJG4i5hXxGDiUtZCFj","title":"AsSKeY5MVM8oAsgt7QAj","subtitle":"JQwDILs0fXjJsgYC9k4A"});
;// CONCATENATED MODULE: ./src/components/ui/BlurOverlay/BlurOverlay.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var BlurOverlay_BlurOverlay = function (_a) {
    var _b;
    var buttonText = _a.buttonText, subtitle = _a.subtitle, title = _a.title, children = _a.children, isBlur = _a.isBlur, onClick = _a.onClick;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [isBlur && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(BlurOverlay.base) }, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(BlurOverlay.textContainer) }, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(BlurOverlay.title) }, { children: title })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(BlurOverlay.subtitle) }, { children: subtitle })), buttonText && ((0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, className: classnames_default()(BlurOverlay.button), label: buttonText, onClick: onClick }))] })) }))), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(BlurOverlay.children, (_b = {}, _b[BlurOverlay.blur] = isBlur, _b)) }, { children: children }))] }));
};
/* harmony default export */ const ui_BlurOverlay_BlurOverlay = (BlurOverlay_BlurOverlay);

;// CONCATENATED MODULE: ./src/components/ui/BlurOverlay/index.ts


// EXTERNAL MODULE: ./src/components/other/ChartLegend/index.ts + 4 modules
var ChartLegend = __webpack_require__("RO5+");
// EXTERNAL MODULE: ./src/models/WordCloud.ts
var WordCloud = __webpack_require__("YM4o");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/utils/sessionStorage.js
var sessionStorage = __webpack_require__("S6iU");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/components/other/WordCharts/utils.ts
var utils = __webpack_require__("9rhG");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordChartsHeader.tsx + 1 modules
var WordChartsHeader = __webpack_require__("Y34W");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordsEndorseContent.tsx + 1 modules
var WordsEndorseContent = __webpack_require__("qu3i");
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/format/index.js + 15 modules
var format = __webpack_require__("1ihG");
// EXTERNAL MODULE: ./src/i18n.ts
var i18n = __webpack_require__("872o");
;// CONCATENATED MODULE: ./src/components/other/WordCharts/TrendingWordsChart/utils.tsx
var utils_assign = (undefined && undefined.__assign) || function () {
    utils_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return utils_assign.apply(this, arguments);
};





// Can't plot zero or subzero values on a logarithmic axis https://www.highcharts.com/errors/10/
var getPointWithShift = function (x) { return 1 + x; };
var getLabelWithoutShift = function (x) { return "".concat(Math.round((x - 1) * 100), "%"); };
function labelsFormatterWithShift() {
    return getLabelWithoutShift(this.value);
}
var periodToString = function (from, to) {
    var getFormat = function (locale) {
        if (locale === 'en') {
            return 'P';
        }
        return 'dd.MM.yyyy';
    };
    var formatter = getFormat((0,i18n/* getLocale */.JK)());
    return "".concat((0,format/* default */.A)(new Date(from || 0), formatter), " - ").concat((0,format/* default */.A)(new Date(to || 0), formatter));
};
function trendingWordsTooltipFormatter(_a) {
    var _b = _a.sortByUniqueWords, sortByUniqueWords = _b === void 0 ? false : _b, currentPeriod = _a.currentPeriod, comparePeriod = _a.comparePeriod;
    return function formatter() {
        var prevCount = this.point.data.previousCount;
        var getCorrectNoun = function (count) { return (sortByUniqueWords
            ? nl('%s unique mention', '%s unique mentions', count)
            : nl('%s mention', '%s mentions', count)); };
        var currentCountString = sprintf(getCorrectNoun(this.y), this.y.toLocaleString('ru-RU'));
        var prevCountString = prevCount
            ? sprintf(getCorrectNoun(prevCount), prevCount.toLocaleString('ru-RU'))
            : l('The word has not reached the top');
        return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("span", utils_assign({ style: { color: this.color.toString(), fontSize: 16, lineHeight: '19px' } }, { children: this.key })), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsxs)("span", utils_assign({ style: { fontSize: 14, lineHeight: '19px' } }, { children: [l('Popularity of word changed by '), " ", getLabelWithoutShift(Number(this.x))] })), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsxs)("span", utils_assign({ style: { fontSize: 12, lineHeight: '17px', color: colors/* colors */.Tj.grayBase } }, { children: [periodToString(currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.from, currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.to), ": ", currentCountString] })), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsxs)("span", utils_assign({ style: { fontSize: 12, lineHeight: '17px', color: colors/* colors */.Tj.grayBase } }, { children: [periodToString(comparePeriod === null || comparePeriod === void 0 ? void 0 : comparePeriod.from, comparePeriod === null || comparePeriod === void 0 ? void 0 : comparePeriod.to), ": ", prevCountString] }))] }));
    };
}

;// CONCATENATED MODULE: ./src/components/other/WordCharts/TrendingWordsChart/TrendingWordsChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TrendingWordsChart = ({"base":"ouEv2Cn6Bzb9tWLl1nKj"});
;// CONCATENATED MODULE: ./src/components/other/WordCharts/TrendingWordsChart/TrendingWordsChart.tsx
var TrendingWordsChart_assign = (undefined && undefined.__assign) || function () {
    TrendingWordsChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TrendingWordsChart_assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */















var REGULAR_WORDS_BANDS = {
    START: getPointWithShift(utils/* REGULAR_SCORE */.C7.START),
    END: getPointWithShift(utils/* REGULAR_SCORE */.C7.END),
};
var MAX_TRENDING_SCORE = 10;
var createPlotBand = function (from, to, label) {
    var textColor = (0,colors/* getColorsByTheme */.hx)().textColor;
    return {
        color: 'transparent',
        from: from,
        to: to,
        label: {
            text: label,
            align: 'center',
            verticalAlign: 'bottom',
            y: -10,
            style: { fontWeight: '500', fontSize: '14px', color: textColor },
        },
    };
};
var createPlotLine = function (value) {
    return {
        value: value,
        color: (0,colors/* getColorsByTheme */.hx)().grayLight,
        width: 1,
        dashStyle: 'Dash',
    };
};
var TrendingWordsChart_TrendingWordsChart = function (props) {
    var _a, _b, _c, _d, _e;
    var sortByUniqueWords = props.sortByUniqueWords, words = props.words, objects = props.objects, hashtags = props.hashtags, emojis = props.emojis, phrases = props.phrases, actions = props.actions, characteristics = props.characteristics, additionalHeaderContent = props.additionalHeaderContent, analyticalPrefix = props.analyticalPrefix, error = props.error, comparePeriod = props.comparePeriod, currentPeriod = props.currentPeriod, _f = props.colorPalette, colorPalette = _f === void 0 ? 'default' : _f, defaultOmittedDataKeys = props.defaultOmittedDataKeys, _g = props.canHideWords, canHideWords = _g === void 0 ? true : _g, withoutTitle = props.withoutTitle, withoutExport = props.withoutExport, _h = props.height, height = _h === void 0 ? 600 : _h, onClick = props.onClick, onSendAnalyticalEvent = props.onSendAnalyticalEvent, onSendChartExportedEvent = props.onSendChartExportedEvent, onChangeColorPalette = props.onChangeColorPalette, onLegendClick = props.onLegendClick;
    var _j = __read((0,react.useState)(null), 2), chartData = _j[0], changeChartData = _j[1];
    var _k = __read((0,react.useState)(false), 2), editMode = _k[0], setEditMode = _k[1];
    var _l = __read((0,react.useState)(false), 2), isBadDataScore = _l[0], setIsBadDataScore = _l[1];
    var plotBands = (0,react.useMemo)(function () { return ([
        createPlotBand(getPointWithShift(-1), REGULAR_WORDS_BANDS.START, l('Fading')),
        createPlotBand(REGULAR_WORDS_BANDS.START, REGULAR_WORDS_BANDS.END, l('Stable')),
        createPlotBand(REGULAR_WORDS_BANDS.END, getPointWithShift(1), l('Trending'))
    ]); }, []);
    var _m = (0,hooks/* useTrendingWordsChart */.C9)({
        chart: chartData,
        data: {
            words: words,
            objects: objects,
            hashtags: hashtags,
            emojis: emojis,
            phrases: phrases,
            actions: actions,
            characteristics: characteristics,
        },
        colorType: colorPalette,
    }), data = _m.data, filteredData = _m.filteredData, omittedWordsDataKeys = _m.omittedWordsDataKeys, toggleSelectedWordsForOmit = _m.toggleSelectedWordsForOmit, toggleOmittedDataKeys = _m.toggleOmittedWordsDataKeys, omitSelectedWords = _m.omitSelectedWords, revertOmittedWords = _m.revertOmittedWords;
    (0,react.useEffect)(function () {
        if (defaultOmittedDataKeys === null || defaultOmittedDataKeys === void 0 ? void 0 : defaultOmittedDataKeys.length)
            toggleOmittedDataKeys.apply(void 0, __spreadArray([], __read(defaultOmittedDataKeys), false));
    }, []);
    var legendConfig = WordCloud/* WORD_CLOUD_DATA_KEYS */.r.map(function (key) {
        var _a;
        return ({
            key: key,
            title: (0,commonTranslations/* translate */.Tl)(key),
            color: colors/* wordCloudPalettes */.iF[colorPalette][key],
            isNoData: !((_a = props[key]) === null || _a === void 0 ? void 0 : _a.length),
            onClick: function () {
                onSendAnalyticalEvent({
                    eventType: 'Trending words: legend click',
                    properties: {
                        key: key,
                    },
                });
                toggleOmittedDataKeys(key);
                if (onLegendClick)
                    onLegendClick(key);
            },
        });
    });
    (0,react.useEffect)(function () {
        var showChartWithBadData = (0,sessionStorage/* getItemFromSessionStorage */.lw)(sessionStorage/* AVAILABLE_SESSION_STORAGE_KEYS */.Ec.SHOW_TRENDING_WORDS_CHART_WITH_BAD_DATA);
        if (filteredData && !showChartWithBadData) {
            var wordsFiltered = filteredData.wordsFiltered, otherWords = __rest(filteredData, ["wordsFiltered"]);
            var isBadData = Object.values(otherWords)
                .flat()
                .every(function (word) { return (word === null || word === void 0 ? void 0 : word.score) > utils/* REGULAR_SCORE */.C7.END; });
            setIsBadDataScore(isBadData);
        }
        if (showChartWithBadData) {
            setIsBadDataScore(false);
        }
    }, [objects, hashtags, emojis, phrases, actions, characteristics, additionalHeaderContent]);
    var onShowChartAnyway = function () {
        (0,sessionStorage/* saveItemToSessionStorage */.Lo)(sessionStorage/* AVAILABLE_SESSION_STORAGE_KEYS */.Ec.SHOW_TRENDING_WORDS_CHART_WITH_BAD_DATA, true);
        setIsBadDataScore(false);
    };
    var series = WordCloud/* WORD_CLOUD_DATA_KEYS */.r.map(function (wordsKey) {
        var _a, _b;
        if (!data[wordsKey] || !((_a = data[wordsKey]) === null || _a === void 0 ? void 0 : _a.length) || omittedWordsDataKeys.includes(wordsKey)) {
            return null;
        }
        return {
            type: 'scatter',
            name: wordsKey,
            color: data[wordsKey][0].color,
            stickyTracking: false,
            data: (_b = data[wordsKey]) === null || _b === void 0 ? void 0 : _b.map(function (k) { return ({
                x: k.score > MAX_TRENDING_SCORE ? getPointWithShift(MAX_TRENDING_SCORE) : getPointWithShift(k.score),
                y: sortByUniqueWords ? k.uniqueTextsCount : k.count,
                name: k.key,
                data: {
                    wordsKey: wordsKey,
                    previousCount: sortByUniqueWords ? k.previousUniqueCount : k.previousCount,
                },
            }); }),
            dataLabels: {
                format: '{point.name}',
                enabled: true,
                color: data[wordsKey][0].color,
                allowOverlap: false,
                padding: 5,
                style: { cursor: 'pointer' },
            },
        };
    }).filter(Boolean);
    var config = {
        chart: {
            type: 'scatter',
            height: height,
            zooming: {
                type: 'x',
            },
        },
        title: {
            text: '',
        },
        xAxis: {
            type: 'logarithmic',
            showEmpty: false,
            startOnTick: false,
            endOnTick: false,
            showLastLabel: true,
            labels: {
                formatter: labelsFormatterWithShift,
            },
            plotLines: [createPlotLine(REGULAR_WORDS_BANDS.START), createPlotLine(REGULAR_WORDS_BANDS.END)],
            plotBands: plotBands,
        },
        yAxis: {
            type: 'logarithmic',
            title: {
                text: l('Mentions for the selected period'),
                align: 'high',
            },
        },
        legend: { enabled: false },
        tooltip: {
            enabled: !editMode,
            useHTML: true,
            formatter: trendingWordsTooltipFormatter({
                sortByUniqueWords: sortByUniqueWords,
                currentPeriod: currentPeriod,
                comparePeriod: comparePeriod,
            }),
        },
        plotOptions: {
            scatter: {
                jitter: {
                    x: 0.05,
                    y: 0.10,
                },
                marker: {
                    enabled: true,
                    symbol: 'cycle',
                    fillColor: (0,colors/* getColorsByTheme */.hx)().grayLighter,
                    radius: 2,
                    states: {
                        hover: {
                            enabled: true,
                        },
                    },
                },
                events: {
                    click: function (e) {
                        if (editMode) {
                            toggleSelectedWordsForOmit(e.point, e.point.name);
                        }
                        else {
                            onClick(e.point.name, e.point.data.wordsKey);
                        }
                    },
                    hide: function (e) {
                        if (e.target.chart.series.every(function (s) { return !s.visible; })) {
                            var i = e.target.chart.xAxis[0].plotLinesAndBands.length;
                            while (i--) {
                                e.target.chart.xAxis[0].plotLinesAndBands[i].destroy();
                            }
                        }
                    },
                    show: function (e) {
                        var length = e.target.chart.xAxis[0].plotLinesAndBands.length;
                        if (length === 0) {
                            e.target.chart.xAxis[0].update({
                                plotBands: plotBands,
                            });
                        }
                    },
                },
            },
        },
        series: series,
    };
    var handleChangeColor = function (name) {
        var color = name === colorPalette ? 'default' : name;
        onSendAnalyticalEvent({
            eventType: 'Trending words: change color',
            properties: {
                color: color,
            },
        });
        onChangeColorPalette(color);
    };
    var handleCloudChartExport = function (_a) {
        var fileType = _a.fileType;
        if (!onSendChartExportedEvent) {
            return;
        }
        onSendChartExportedEvent({
            properties: {
                fileType: fileType,
                chartType: "".concat(analyticalPrefix, " TrendWordCloud chart"),
            },
        });
    };
    var handleToggleEditMode = function () {
        if (editMode) {
            setEditMode(false);
            revertOmittedWords();
            onSendAnalyticalEvent({
                eventType: 'Trending words: exit from hiding mode',
            });
        }
        else {
            setEditMode(true);
            onSendAnalyticalEvent({
                eventType: 'Trending words: entered to hiding mode',
            });
        }
    };
    var handleOmitSelectedWords = function () {
        omitSelectedWords();
        onSendAnalyticalEvent({
            eventType: 'Trending words: hide words button click',
        });
    };
    var isEmpty = !((_a = data === null || data === void 0 ? void 0 : data.objects) === null || _a === void 0 ? void 0 : _a.length)
        && !((_b = data === null || data === void 0 ? void 0 : data.emojis) === null || _b === void 0 ? void 0 : _b.length)
        && !((_c = data === null || data === void 0 ? void 0 : data.hashtags) === null || _c === void 0 ? void 0 : _c.length)
        && !((_d = data === null || data === void 0 ? void 0 : data.actions) === null || _d === void 0 ? void 0 : _d.length)
        && !((_e = data === null || data === void 0 ? void 0 : data.characteristics) === null || _e === void 0 ? void 0 : _e.length);
    var hasError = !!error;
    var headerSubtitle = "".concat(l('Selected dates'), " ").concat(periodToString(currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.from, currentPeriod === null || currentPeriod === void 0 ? void 0 : currentPeriod.to), " ").concat(l('compared to the previous ones'), " ").concat(periodToString(comparePeriod === null || comparePeriod === void 0 ? void 0 : comparePeriod.from, comparePeriod === null || comparePeriod === void 0 ? void 0 : comparePeriod.to));
    if (isEmpty || hasError) {
        return (0,jsx_runtime.jsx)(WordsEndorseContent/* default */.A, { hasError: hasError, isEmpty: isEmpty });
    }
    return ((0,jsx_runtime.jsx)(ui_BlurOverlay_BlurOverlay, TrendingWordsChart_assign({ isBlur: isBadDataScore, title: l('Chart might not be accurate for chosen date range!'), subtitle: l(
        // eslint-disable-next-line max-len
        'Not enough data from the previous date range to compare with the current one. Change the date range, or ignore this message and view the chart.'), buttonText: l('Process anyway'), onClick: onShowChartAnyway }, { children: (0,jsx_runtime.jsxs)("div", TrendingWordsChart_assign({ className: classnames_default()(TrendingWordsChart.base) }, { children: [(0,jsx_runtime.jsx)(WordChartsHeader/* default */.A, { title: l('Trending words'), subtitle: !editMode ? headerSubtitle : null, additionalHeaderContent: additionalHeaderContent, canHideWords: canHideWords, chartData: chartData, editMode: editMode, hasError: hasError, isEmpty: isEmpty, withoutTitle: withoutTitle, withoutExport: withoutExport, wordsColor: colorPalette, onOmitSelectedWords: handleOmitSelectedWords, onChangeColor: handleChangeColor, onCloudChartExport: handleCloudChartExport, onToggleEditMode: handleToggleEditMode }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: changeChartData }), (0,jsx_runtime.jsx)(ChartLegend/* default */.Ay, { className: classnames_default()(TrendingWordsChart.legend), itemsConfig: legendConfig, disabledItemsKey: omittedWordsDataKeys })] })) })));
};
/* harmony default export */ const WordCharts_TrendingWordsChart_TrendingWordsChart = (TrendingWordsChart_TrendingWordsChart);

;// CONCATENATED MODULE: ./src/components/other/WordCharts/TrendingWordsChart/index.ts



/***/ }),

/***/ "V9th":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ other_WordCharts_WordCloud_WordCloud)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/models/WordCloud.ts
var WordCloud = __webpack_require__("YM4o");
// EXTERNAL MODULE: ./src/components/other/ChartLegend/index.ts + 4 modules
var ChartLegend = __webpack_require__("RO5+");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
;// CONCATENATED MODULE: ./src/components/charts/WordCloud/WordCloud.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable react/no-this-in-sfc */



var MAX_FONT_SIZE = 60;
var MIN_FONT_SIZE = 14;
var DEFAULT_HEIGHT = 600;
var WordCloud_WordCloud = function (_a) {
    var withoutHeader = _a.withoutHeader, title = _a.title, _b = _a.height, height = _b === void 0 ? DEFAULT_HEIGHT : _b, _c = _a.fontSizes, fontSizes = _c === void 0 ? { min: MIN_FONT_SIZE, max: MAX_FONT_SIZE } : _c, series = _a.series, configOptions = _a.configOptions, onClick = _a.onClick, onSendChartExportedEvent = _a.onSendChartExportedEvent, onLoad = _a.onLoad;
    var _d = __read((0,react.useState)(null), 2), chartData = _d[0], setChartData = _d[1];
    var handleChartExport = function (_a) {
        var fileType = _a.fileType;
        onSendChartExportedEvent({ properties: { fileType: fileType } });
    };
    var handleLoad = function (chart) {
        setChartData(chart);
        onLoad(chart);
    };
    var config = (0,react.useMemo)(function () {
        if (!series || series.length === 0) {
            return null;
        }
        return __assign({ chart: {
                type: 'wordcloud',
                height: height,
            }, title: {
                text: title,
                style: {
                    display: 'none',
                },
            }, subtitle: {
                text: null,
            }, plotOptions: {
                series: {
                    cursor: 'pointer',
                    minFontSize: fontSizes.min,
                    maxFontSize: fontSizes.max,
                    style: {
                        fontFamily: '"Twemoji Country Flags", "Helvetica Neue", sans-serif',
                        fontWeight: '500',
                    },
                    rotation: { orientations: 0 },
                    spiral: 'archimedean',
                    animation: false,
                    point: {
                        events: {
                            click: function (e) {
                                onClick(e.point);
                            },
                        },
                    },
                },
            }, series: series }, configOptions);
    }, [series, configOptions]);
    return ((0,jsx_runtime.jsxs)("div", { children: [withoutHeader
                ? null
                : ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: title, chartRef: chartData, onChartExport: handleChartExport })), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: handleLoad })] }));
};
/* harmony default export */ const charts_WordCloud_WordCloud = ((0,react.memo)(WordCloud_WordCloud));

;// CONCATENATED MODULE: ./src/components/charts/WordCloud/index.ts


// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/components/other/WordCharts/utils.ts
var utils = __webpack_require__("9rhG");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordChartsHeader.tsx + 1 modules
var WordChartsHeader = __webpack_require__("Y34W");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordsEndorseContent.tsx + 1 modules
var WordsEndorseContent = __webpack_require__("qu3i");
;// CONCATENATED MODULE: ./src/components/other/WordCharts/WordCloud/WordCloud.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordCharts_WordCloud_WordCloud = ({"legend":"pgCtsjRocRkMctNcJf5Q"});
;// CONCATENATED MODULE: ./src/components/other/WordCharts/WordCloud/WordCloud.tsx
var WordCloud_assign = (undefined && undefined.__assign) || function () {
    WordCloud_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WordCloud_assign.apply(this, arguments);
};
var WordCloud_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */











var WordCloud_WordCloud_WordCloud = function (props) {
    var showSentiment = props.showSentiment, _a = props.sortByUniqueWords, sortByUniqueWords = _a === void 0 ? false : _a, height = props.height, usedVolume = props.usedVolume, words = props.words, objects = props.objects, hashtags = props.hashtags, emojis = props.emojis, phrases = props.phrases, actions = props.actions, characteristics = props.characteristics, persons = props.persons, locations = props.locations, organizations = props.organizations, additionalHeaderContent = props.additionalHeaderContent, analyticalPrefix = props.analyticalPrefix, сonfigOptions = props.сonfigOptions, _b = props.canHideWords, canHideWords = _b === void 0 ? true : _b, _c = props.colorPalette, colorPalette = _c === void 0 ? 'default' : _c, withoutTitle = props.withoutTitle, withoutExport = props.withoutExport, defaultOmittedDataKeys = props.defaultOmittedDataKeys, onClick = props.onClick, onSendAnalyticalEvent = props.onSendAnalyticalEvent, onSendChartExportedEvent = props.onSendChartExportedEvent, onChangeColorPalette = props.onChangeColorPalette, onLegendClick = props.onLegendClick;
    var _d = WordCloud_read((0,react.useState)(null), 2), chartData = _d[0], setChartData = _d[1];
    var _e = WordCloud_read((0,react.useState)(false), 2), editMode = _e[0], setEditMode = _e[1];
    var isEmpty = !(objects === null || objects === void 0 ? void 0 : objects.length) && !(emojis === null || emojis === void 0 ? void 0 : emojis.length) && !(hashtags === null || hashtags === void 0 ? void 0 : hashtags.length);
    if (isEmpty)
        return (0,jsx_runtime.jsx)(WordsEndorseContent/* default */.A, { hasError: false, isEmpty: isEmpty });
    var _f = (0,utils/* formatWordCloudData */.RP)({
        showSentiment: showSentiment,
        sortByUniqueWords: sortByUniqueWords,
        usedVolume: usedVolume,
        data: {
            words: words,
            objects: objects,
            hashtags: hashtags,
            emojis: emojis,
            phrases: phrases,
            actions: actions,
            characteristics: characteristics,
            persons: persons,
            locations: locations,
            organizations: organizations,
        },
        colorType: colorPalette,
        chart: chartData,
    }), points = _f.points, omittedWords = _f.omittedWords, omittedWordsDataKeys = _f.omittedWordsDataKeys, toggleOmittedDataKeys = _f.toggleOmittedWordsDataKeys, toggleSelectedWordsForOmit = _f.toggleSelectedWordsForOmit, omitSelectedWords = _f.omitSelectedWords, revertOmittedWords = _f.revertOmittedWords;
    (0,react.useEffect)(function () {
        if (defaultOmittedDataKeys === null || defaultOmittedDataKeys === void 0 ? void 0 : defaultOmittedDataKeys.length)
            toggleOmittedDataKeys.apply(void 0, __spreadArray([], WordCloud_read(defaultOmittedDataKeys), false));
    }, []);
    var legendConfig = WordCloud/* WORD_CLOUD_DATA_KEYS */.r.map(function (key) {
        var _a;
        return ({
            key: key,
            title: (0,commonTranslations/* translate */.Tl)(key),
            color: colors/* wordCloudPalettes */.iF[colorPalette][key],
            isNoData: !((_a = props[key]) === null || _a === void 0 ? void 0 : _a.length),
            onClick: function () {
                onSendAnalyticalEvent({
                    eventType: 'Word Cloud: legend click',
                    properties: {
                        key: key,
                    },
                });
                toggleOmittedDataKeys(key);
                if (onLegendClick)
                    onLegendClick(key);
            },
        });
    });
    var handleClick = function (point) {
        if (editMode)
            toggleSelectedWordsForOmit(point, point.data.id);
        else
            onClick(point.data.id, point.data.wordsKey, point.topSentiment);
    };
    var handleChangeColor = function (name) {
        var color = name === colorPalette ? 'default' : name;
        onSendAnalyticalEvent({
            eventType: 'Word Cloud: change color',
            properties: {
                color: color,
            },
        });
        onChangeColorPalette(color);
    };
    var handleCloudChartExport = function (_a) {
        var fileType = _a.fileType;
        if (!onSendChartExportedEvent)
            return;
        onSendChartExportedEvent({
            properties: {
                fileType: fileType,
                chartType: "".concat(analyticalPrefix, " WordCloud chart: top words"),
            },
        });
    };
    var handleToggleEditMode = function () {
        if (editMode) {
            setEditMode(false);
            revertOmittedWords();
            onSendAnalyticalEvent({ eventType: 'Word Cloud: exit from hiding mode' });
        }
        else {
            setEditMode(true);
            onSendAnalyticalEvent({ eventType: 'Word Cloud: entered to hiding mode' });
        }
    };
    var handleOmitSelectedWords = function () {
        omitSelectedWords();
        onSendAnalyticalEvent({ eventType: 'Word Cloud: hide words button click' });
    };
    var chart = (0,react.useMemo)(function () { return ((0,jsx_runtime.jsx)(charts_WordCloud_WordCloud, { withoutHeader: true, title: "WordCloud", height: height, series: [{ data: points }], configOptions: WordCloud_assign({ tooltip: {
                enabled: true,
                useHTML: true,
                headerFormat: '<span style="font-size: 16px; color:{point.color}"><b>{point.key}</b></span><br/>',
                pointFormatter: function () {
                    return "<b>".concat(sprintf(sortByUniqueWords
                        ? nl('%s unique mention', '%s unique mentions', this.weight)
                        : nl('%s mention', '%s mentions', this.weight), this.weight.toLocaleString('ru-RU')), "</b>");
                },
            } }, (сonfigOptions || {})), onClick: handleClick, onLoad: setChartData })); }, [usedVolume, points, showSentiment, sortByUniqueWords, editMode, omittedWordsDataKeys, omittedWords, colorPalette]);
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(WordChartsHeader/* default */.A, { additionalHeaderContent: additionalHeaderContent, canHideWords: canHideWords, chartData: chartData, editMode: editMode, isEmpty: isEmpty, title: (0,jsx_runtime.jsx)("span", { children: l('Frequent words') }), withoutTitle: withoutTitle, withoutExport: withoutExport, wordsColor: colorPalette, onOmitSelectedWords: handleOmitSelectedWords, onChangeColor: handleChangeColor, onCloudChartExport: handleCloudChartExport, onToggleEditMode: handleToggleEditMode }), chart, (0,jsx_runtime.jsx)(ChartLegend/* default */.Ay, { className: classnames_default()(WordCharts_WordCloud_WordCloud.legend), itemsConfig: legendConfig, disabledItemsKey: omittedWordsDataKeys })] }));
};
/* harmony default export */ const other_WordCharts_WordCloud_WordCloud = (WordCloud_WordCloud_WordCloud);

;// CONCATENATED MODULE: ./src/components/other/WordCharts/WordCloud/index.ts



/***/ }),

/***/ "Y34W":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ components_WordChartsHeader)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-media/esm/react-media.js
var react_media = __webpack_require__("lU33");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/components/ui/ColorPicker/index.ts + 4 modules
var ColorPicker = __webpack_require__("JxIt");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/WordCharts/components/WordChartsHeader.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordChartsHeader = ({"header":"ZhYW213fzxCPp6O7RUEd","colorPicker":"j_wzV_O0arJBYZX618HW","hideWords":"_HFIORoqjC2cjW3BlCsU","iconButton":"S2i21cUTqfOPhsWw34lN","iconButtonWithText":"oZFB465Bj0myrKOKbieK","buttonText":"M0DPdpXn7GDBE6xoXknE","tooltip":"CNmvyIpR0nNA42Adqouj","mainText":"tCb2QcTCygABji0L_bZD","image":"zdpRf8_gXeZ_VLP1RTR8","chartHeader":"oSqh69uD6YBqUArfOJgA"});
;// CONCATENATED MODULE: ./src/components/other/WordCharts/components/WordChartsHeader.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};











var WordChartsHeader_WordChartsHeader = function (_a) {
    var additionalHeaderContent = _a.additionalHeaderContent, canHideWords = _a.canHideWords, chartData = _a.chartData, editMode = _a.editMode, withoutExport = _a.withoutExport, hasError = _a.hasError, isEmpty = _a.isEmpty, title = _a.title, subtitle = _a.subtitle, withoutTitle = _a.withoutTitle, wordsColor = _a.wordsColor, onToggleEditMode = _a.onToggleEditMode, onOmitSelectedWords = _a.onOmitSelectedWords, onChangeColor = _a.onChangeColor, onCloudChartExport = _a.onCloudChartExport;
    return ((0,jsx_runtime.jsx)(react_media/* default */.A, __assign({ queries: {
            small: '(max-width: 1100px)',
            large: '(min-width: 1455px)',
        } }, { children: function (matches) {
            var _a, _b;
            return ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { chartRef: chartData, className: classnames_default()(WordChartsHeader.chartHeader), title: !withoutTitle && title, subtitle: subtitle, disabled: hasError || isEmpty, withoutExport: withoutExport, caption: editMode && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(WordChartsHeader.iconButtonWithText), onClick: onToggleEditMode }, { children: !matches.large ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ inverted: false, text: ((_a = chartData === null || chartData === void 0 ? void 0 : chartData.userOptions) === null || _a === void 0 ? void 0 : _a.omittedWords)
                            ? l('Exit word hiding mode and return all words back')
                            : l('Exit word hiding mode') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "exit-to-app", color: "primary" }) }))) : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "exit-to-app", color: "primary" }), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(WordChartsHeader.buttonText) }, { children: ((_b = chartData === null || chartData === void 0 ? void 0 : chartData.userOptions) === null || _b === void 0 ? void 0 : _b.omittedWords)
                                    ? l('Exit word hiding mode and return all words back')
                                    : l('Exit word hiding mode') }))] })) }))), additionalContent: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(WordChartsHeader.header) }, { children: [canHideWords && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(WordChartsHeader.hideWords) }, { children: !editMode ? ((0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()(WordChartsHeader.iconButton), iconType: "eye", color: editMode ? 'primary' : 'default', onClick: onToggleEditMode })) : ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(WordChartsHeader.iconButtonWithText), onClick: onOmitSelectedWords }, { children: (0,jsx_runtime.jsxs)(Tooltip/* default */.A, __assign({ text: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(WordChartsHeader.tooltip) }, { children: [(0,jsx_runtime.jsx)("img", { className: classnames_default()(WordChartsHeader.image), src: "/static/images/wordsChartTooltip.png", alt: "tooltip" }), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(WordChartsHeader.mainText) }, { children: l('Click on a word to hide it. Then click "Hide selected words"') }))] })) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "eye-off", color: "primary" }), !matches.small && (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(WordChartsHeader.buttonText) }, { children: l('Hide selected words') }))] })) }))) }))), !hasError && !isEmpty && ((0,jsx_runtime.jsx)(ColorPicker/* default */.A, { small: true, className: classnames_default()(WordChartsHeader.colorPicker), selected: wordsColor, colors: colors/* wordCloudPickerColors */.a, type: "popover", onSelect: onChangeColor })), additionalHeaderContent ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", { children: additionalHeaderContent })] })) : null] })), onChartExport: onCloudChartExport }));
        } })));
};
/* harmony default export */ const components_WordChartsHeader = (WordChartsHeader_WordChartsHeader);


/***/ }),

/***/ "/dW3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ components_WordsChartsSwitcher),
  b: () => (/* binding */ useSortingByUniqueWords)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/ChipSelector/index.ts + 4 modules
var ChipSelector = __webpack_require__("YGsB");
;// CONCATENATED MODULE: ./src/components/other/WordCharts/components/WordsChartsSwitcher.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordsChartsSwitcher = ({"base":"Kx9xNEuJxcNxO7Hex20P"});
;// CONCATENATED MODULE: ./src/components/other/WordCharts/components/WordsChartsSwitcher.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




var useSortingByUniqueWords = function (defaultValue) {
    if (defaultValue === void 0) { defaultValue = true; }
    var _a = __read((0,react.useState)(defaultValue), 2), sortByUniqueWords = _a[0], setSortByUniqueWords = _a[1];
    return {
        sortByUniqueWords: sortByUniqueWords,
        setSortByUniqueWords: setSortByUniqueWords,
    };
};
var WordsChartsSwitcher_WordsChartsSwitcher = function (_a) {
    var value = _a.value, onChange = _a.onChange;
    return ((0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, __assign({ className: WordsChartsSwitcher.base }, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, value: value, selected: !value, label: l('All mentions'), onSelect: function () { return onChange(false); } }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { value: value, selected: value, label: l('Unique mentions'), onSelect: function () { return onChange(true); } })] })));
};
/* harmony default export */ const components_WordsChartsSwitcher = (WordsChartsSwitcher_WordsChartsSwitcher);


/***/ }),

/***/ "qu3i":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ components_WordsEndorseContent)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/WordCharts/components/WordsEndorseContent.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordsEndorseContent = ({"emptyStateContainer":"wtMaQyob9wOPRCwrdU2s"});
;// CONCATENATED MODULE: ./src/components/other/WordCharts/components/WordsEndorseContent.tsx




var WordsEndorseContent_WordsEndorseContent = function (_a) {
    var hasError = _a.hasError, isEmpty = _a.isEmpty;
    if (hasError) {
        return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, className: classnames_default()(WordsEndorseContent.emptyStateContainer), image: "/static/images/wordcloud-error.svg", title: l('An error has occurred'), message: l('Try to refresh the page or come back later') }));
    }
    if (isEmpty) {
        return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/wordcloud-empty.svg", className: classnames_default()(WordsEndorseContent.emptyStateContainer), title: l('No words to form a word cloud'), message: l('Select another time range or wait for the data to be collected') }));
    }
    return null;
};
/* harmony default export */ const components_WordsEndorseContent = (WordsEndorseContent_WordsEndorseContent);


/***/ }),

/***/ "h8Cc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   C9: () => (/* binding */ useTrendingWordsChart),
/* harmony export */   RU: () => (/* binding */ useWordCloud)
/* harmony export */ });
/* unused harmony exports useColorizeWord, useOmitWordsDataKey, useOmitWords, useFilterWords */
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("KV3C");
/* harmony import */ var utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("xTZp");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("9rhG");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
/* eslint-disable no-param-reassign */





var initialFilterTopWords = function (words, wordsKey) {
    var _a;
    var maxCount = (_a = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.maxBy)(words, 'count')) === null || _a === void 0 ? void 0 : _a.count;
    return words
        .slice(0, _utils__WEBPACK_IMPORTED_MODULE_4__/* .WORDS_MAX_COUNT */ .Vj[wordsKey])
        .filter(function (word) { return word.count > maxCount * 0.01; })
        .map(function (word) { return (__assign(__assign({}, word), { wordsKey: wordsKey })); });
};
var setColor = function (words, wordsKey, colorType, keyIndex) {
    return words.map(function (word) { return (__assign(__assign({}, word), { color: colorType ? utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .wordCloudPalettes */ .iF[colorType][wordsKey] : utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .wordCloudColorList */ .RU[keyIndex] })); });
};
var useColorizeWord = function (_a) {
    var colorType = _a.colorType, words = _a.words, chart = _a.chart;
    var coloredData = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {
        return Object.keys(words).reduce(function (newData, dataKey, index) {
            var _a;
            return (__assign(__assign({}, newData), (_a = {}, _a[dataKey] = setColor(words[dataKey] || [], dataKey, colorType, index), _a)));
        }, {});
    }, [words, colorType]);
    if (chart && (chart === null || chart === void 0 ? void 0 : chart.userOptions)) {
        chart.userOptions.colorType = colorType;
    }
    return coloredData;
};
var useOmitWordsDataKey = function (_a) {
    var words = _a.words, initialOmittedDataKeys = _a.initialOmittedDataKeys;
    var _b = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(initialOmittedDataKeys || []), 2), omittedWordsDataKeys = _b[0], setOmittedWordsDataKeys = _b[1];
    var toggleOmittedWordsDataKeys = function () {
        var keys = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            keys[_i] = arguments[_i];
        }
        setOmittedWordsDataKeys((0,lodash__WEBPACK_IMPORTED_MODULE_1__.xor)(omittedWordsDataKeys, keys));
    };
    var wordsWithOmittedKeys = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {
        return Object.keys(words).filter(function (key) { return !omittedWordsDataKeys.includes(key); }).reduce(function (newData, key) {
            var _a;
            return (__assign(__assign({}, newData), (_a = {}, _a[key] = words[key], _a)));
        }, {});
    }, [words, omittedWordsDataKeys]);
    return { wordsWithOmittedKeys: wordsWithOmittedKeys, omittedWordsDataKeys: omittedWordsDataKeys, toggleOmittedWordsDataKeys: toggleOmittedWordsDataKeys };
};
var useOmitWords = function (_a) {
    var chart = _a.chart, words = _a.words, _b = _a.colorType, colorType = _b === void 0 ? undefined : _b;
    var _c = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]), 2), omittedWords = _c[0], setOmittedWords = _c[1];
    var toggleSelectedWordsForOmit = function (point, name) {
        var _a;
        var selectedWordsForOmit = point.series.chart.userOptions.selectedWordsForOmit || [];
        var color = colorType || point.series.chart.userOptions.colorType || 'default';
        var newPointColor = selectedWordsForOmit.includes(name)
            ? utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .wordCloudPalettes */ .iF[color][point.data.wordsKey]
            : utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .colors */ .Tj.gray;
        point.color = newPointColor;
        (_a = point.dataLabel) === null || _a === void 0 ? void 0 : _a.css({ color: newPointColor });
        point.series.chart.userOptions.selectedWordsForOmit = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.xor)(selectedWordsForOmit, [name]);
        point.series.chart.redraw();
        point.series.chart.tooltip.hide(0);
        point.series.chart.tooltip.destroy();
    };
    var omitSelectedWords = function () {
        var newOmittedWords = (chart.userOptions.omittedWords || []).concat(chart.userOptions.selectedWordsForOmit);
        setOmittedWords(newOmittedWords);
        chart.userOptions.omittedWords = newOmittedWords;
        chart.userOptions.selectedWordsForOmit = [];
    };
    var revertOmittedWords = function () {
        chart.userOptions.omittedWords = [];
        setOmittedWords([]);
    };
    var newWords = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () { return Object.keys(words || {}).reduce(function (newData, key) {
        var _a;
        return (__assign(__assign({}, newData), (_a = {}, _a[key] = words[key].filter(function (w) { var _a, _b; return !((_b = (_a = chart === null || chart === void 0 ? void 0 : chart.userOptions) === null || _a === void 0 ? void 0 : _a.omittedWords) === null || _b === void 0 ? void 0 : _b.includes(w.key)); }), _a)));
    }, {}); }, [omittedWords, words]);
    return {
        omittedWords: omittedWords,
        newWords: newWords,
        toggleSelectedWordsForOmit: toggleSelectedWordsForOmit,
        omitSelectedWords: omitSelectedWords,
        revertOmittedWords: revertOmittedWords,
    };
};
var useFilterWords = function (words) { return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {
    return Object.keys(words).reduce(function (newData, dataKey) {
        var _a;
        return (__assign(__assign({}, newData), (_a = {}, _a[dataKey] = initialFilterTopWords(words[dataKey] || [], dataKey), _a)));
    }, {});
}, [words]); };
var useWordCloud = function (_a) {
    var data = _a.data, chart = _a.chart, colorType = _a.colorType, _b = _a.translateLabels, translateLabels = _b === void 0 ? utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_3__/* .translate */ .Tl : _b;
    var filteredData = useFilterWords(data);
    var coloredData = useColorizeWord({ words: filteredData, colorType: colorType, chart: chart });
    var _c = useOmitWordsDataKey({
        words: coloredData,
    }), wordsWithOmittedKeys = _c.wordsWithOmittedKeys, omittedWordsDataKeys = _c.omittedWordsDataKeys, toggleOmittedWordsDataKeys = _c.toggleOmittedWordsDataKeys;
    var _d = useOmitWords({
        chart: chart,
        words: wordsWithOmittedKeys,
        colorType: colorType,
    }), omittedWords = _d.omittedWords, newWords = _d.newWords, omitSelectedWords = _d.omitSelectedWords, toggleSelectedWordsForOmit = _d.toggleSelectedWordsForOmit, revertOmittedWords = _d.revertOmittedWords;
    var points = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {
        var words = Object.values(newWords).flat();
        return words.map(function (word) { return ({
            name: word.wordsKey !== 'emojis' ? "<span>&nbsp;".concat(word.key, "</span>") : word.key,
            weight: word.metricValue || word.count,
            color: word.color,
            type: word.wordsKey,
            data: {
                wordsKey: word.wordsKey,
                id: word.key,
                count: word.count,
                uniqueTextsCount: word.uniqueTextsCount,
                sentiment: word.sentiment,
            },
        }); });
    }, [newWords]);
    var legendConfig = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () { return Object.keys(data).map(function (key, index) {
        var _a;
        return ({
            key: key,
            title: translateLabels(key),
            color: colorType ? utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .wordCloudPalettes */ .iF[colorType][key] : utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .wordCloudColorList */ .RU[index],
            isNoData: !((_a = data[key]) === null || _a === void 0 ? void 0 : _a.length),
            onClick: function () {
                toggleOmittedWordsDataKeys(key);
            },
        });
    }); }, [points]);
    return {
        points: points,
        omittedWords: omittedWords,
        omittedWordsDataKeys: omittedWordsDataKeys,
        toggleOmittedWordsDataKeys: toggleOmittedWordsDataKeys,
        toggleSelectedWordsForOmit: toggleSelectedWordsForOmit,
        omitSelectedWords: omitSelectedWords,
        revertOmittedWords: revertOmittedWords,
        legendConfig: legendConfig,
    };
};
var useTrendingWordsChart = function (_a) {
    var chart = _a.chart, data = _a.data, _b = _a.colorType, colorType = _b === void 0 ? 'default' : _b;
    var filteredData = useFilterWords(data);
    var coloredWords = useColorizeWord({ words: filteredData, colorType: colorType });
    var _c = useOmitWords({
        chart: chart,
        words: coloredWords,
    }), newWords = _c.newWords, omitSelectedWords = _c.omitSelectedWords, revertOmittedWords = _c.revertOmittedWords, toggleSelectedWordsForOmit = _c.toggleSelectedWordsForOmit;
    var _d = useOmitWordsDataKey({
        words: coloredWords,
    }), omittedWordsDataKeys = _d.omittedWordsDataKeys, toggleOmittedWordsDataKeys = _d.toggleOmittedWordsDataKeys;
    return {
        data: newWords,
        filteredData: filteredData,
        omittedWordsDataKeys: omittedWordsDataKeys,
        omitSelectedWords: omitSelectedWords,
        revertOmittedWords: revertOmittedWords,
        toggleSelectedWordsForOmit: toggleSelectedWordsForOmit,
        toggleOmittedWordsDataKeys: toggleOmittedWordsDataKeys,
    };
};


/***/ }),

/***/ "9rhG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   C7: () => (/* binding */ REGULAR_SCORE),
/* harmony export */   CJ: () => (/* binding */ wordChartDataKeyToFilterName),
/* harmony export */   RP: () => (/* binding */ formatWordCloudData),
/* harmony export */   Vj: () => (/* binding */ WORDS_MAX_COUNT)
/* harmony export */ });
/* harmony import */ var percentile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("qOpe");
/* harmony import */ var percentile__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(percentile__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var hooks_useChartVolume__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("gw6y");
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("KV3C");
/* harmony import */ var _hooks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("h8Cc");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var wordChartDataKeyToFilterName = {
    words: 'word',
    objects: 'object',
    hashtags: 'hashtag',
    emojis: 'emoji',
    phrases: 'phrase',
    actions: 'actions',
    characteristics: 'characteristic',
    // These should not be used in the UI filters
    persons: '',
    locations: '',
    organizations: '',
};
var WORDS_MAX_COUNT = {
    words: 30,
    emojis: 25,
    hashtags: 30,
    objects: 30,
    phrases: 40,
    actions: 20,
    characteristics: 20,
    persons: 20,
    locations: 20,
    organizations: 20,
};
var REGULAR_SCORE = {
    START: -0.1,
    END: 0.2,
};
var SENTIMENT_POSITIVE_THRESHOLD = 0.4;
var SENTIMENT_NEGATIVE_THRESHOLD = 0.3;
var getWordTopSentiment = function (count, sentiments) {
    var _a = sentiments.reduce(function (acc, item) {
        acc[item.key] = item.count / count;
        return acc;
    }, {}), negative = _a.negative, positive = _a.positive;
    if (negative > SENTIMENT_NEGATIVE_THRESHOLD)
        return 'negative';
    if (positive > SENTIMENT_POSITIVE_THRESHOLD)
        return 'positive';
    return 'neutral';
};
var getFormattedWordsData = function (_a) {
    var data = _a.data, _b = _a.usedVolume, usedVolume = _b === void 0 ? hooks_useChartVolume__WEBPACK_IMPORTED_MODULE_1__/* .FULL_VOLUME */ .lf : _b;
    var context = data.sort(function (a, b) { return b.weight - a.weight; });
    var dataPercentile = percentile__WEBPACK_IMPORTED_MODULE_0___default()(usedVolume, context, function (item) { return item.weight; });
    return context.filter(function (x) { return !(x.weight < dataPercentile[0].weight || x.weight > dataPercentile[1].weight); });
};
var MAX_WORDS = 150;
var formatWordCloudData = function (_a) {
    var _b = _a.showSentiment, showSentiment = _b === void 0 ? false : _b, _c = _a.sortByUniqueWords, sortByUniqueWords = _c === void 0 ? false : _c, data = _a.data, usedVolume = _a.usedVolume, colorType = _a.colorType, chart = _a.chart;
    var wordCloud = (0,_hooks__WEBPACK_IMPORTED_MODULE_3__/* .useWordCloud */ .RU)({
        data: {
            words: data.words,
            objects: data.objects,
            hashtags: data.hashtags,
            emojis: data.emojis,
            phrases: data.phrases,
            actions: data.actions,
            characteristics: data.characteristics,
            persons: data.persons,
            locations: data.locations,
            organizations: data.organizations,
        },
        colorType: colorType,
        chart: chart,
    });
    var filteredPoints = wordCloud.points
        .map(function (item) {
        var weight = sortByUniqueWords
            ? item.data.uniqueTextsCount
            : item.data.count;
        var topSentiment = getWordTopSentiment(weight, item.data.sentiment.values);
        return __assign(__assign({}, item), { weight: weight, topSentiment: topSentiment, color: showSentiment
                ? utils_colors__WEBPACK_IMPORTED_MODULE_2__/* .wordCloudSentimentPalette */ .kg[item.data.wordsKey][topSentiment]
                : item.color });
    })
        .sort(function (a, b) { return b.weight - a.weight; })
        .slice(0, MAX_WORDS);
    return __assign(__assign({}, wordCloud), { points: getFormattedWordsData({ data: filteredPoints, usedVolume: usedVolume }) });
};


/***/ }),

/***/ "qnrm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Autocomplete_Autocomplete)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-isolated-scroll/lib/index.js
var lib = __webpack_require__("rvBI");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./node_modules/downshift/dist/downshift.esm.js + 1 modules
var downshift_esm = __webpack_require__("2W6Z");
// EXTERNAL MODULE: ./node_modules/match-sorter/dist/match-sorter.esm.js
var match_sorter_esm = __webpack_require__("ilPa");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Autocomplete/Autocomplete.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Autocomplete = ({"suggestionsContainer":"hEtcCBqPE8_au6cyFxlN","suggestion":"G7a5dgmjMJfp6OY1aeGl","suggestionFocused":"JrR743wAVLBsR3NWYv3v","noResults":"NVsxGLn_9N4DA40SmYTA"});
;// CONCATENATED MODULE: ./src/components/ui/Autocomplete/Autocomplete.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

/* eslint-disable react/sort-comp */








var Autocomplete_Autocomplete = function (_a) {
    var value = _a.value, propsSuggestions = _a.suggestions, suggestionsLimit = _a.suggestionsLimit, size = _a.size, placeholder = _a.placeholder, noResultsMessage = _a.noResultsMessage, fullWidth = _a.fullWidth, isLoading = _a.isLoading, sortingProperties = _a.sortingProperties, renderItem = _a.renderItem, suggestionContainerClassName = _a.suggestionContainerClassName, parentContainerSelector = _a.parentContainerSelector, onChange = _a.onChange, onSelect = _a.onSelect;
    var downshift = (0,react.createRef)();
    (0,react.useEffect)(function () {
        var parentEl = document.querySelector(parentContainerSelector);
        if (parentEl) {
            parentEl.addEventListener('scroll', hideOnScroll);
        }
        return function () {
            if (parentEl) {
                parentEl.removeEventListener('scroll', hideOnScroll);
            }
        };
    }, []);
    var hideOnScroll = function () {
        if (downshift.current.state.isOpen) {
            downshift.current.closeMenu();
        }
    };
    var suggestions = (function () {
        var s = sortingProperties
            ? (0,match_sorter_esm/* matchSorter */.Ht)(propsSuggestions, value, __assign({ threshold: match_sorter_esm/* rankings */.cG.NO_MATCH }, sortingProperties))
            : propsSuggestions;
        if (suggestionsLimit)
            return s.splice(0, suggestionsLimit - 1);
        return s;
    })();
    var showSuggestions = suggestions && suggestions.length > 0;
    return ((0,jsx_runtime.jsx)(downshift_esm/* default */.Ay, __assign({ ref: downshift, onChange: onSelect }, { children: function (_a) {
            var getInputProps = _a.getInputProps, getItemProps = _a.getItemProps, isOpen = _a.isOpen, highlightedIndex = _a.highlightedIndex;
            return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(TextField/* NativeTextField */.z, __assign({ size: size, leftIcon: isLoading
                            ? (0,jsx_runtime.jsx)(Icon/* default */.A, { spinning: true, type: "loading" })
                            : (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }) }, getInputProps({ fullWidth: fullWidth, placeholder: placeholder, value: value, onChange: onChange }))), isOpen && value && !isLoading
                        ? ((0,jsx_runtime.jsx)((lib_default()), __assign({ className: classnames_default()(Autocomplete.suggestionsContainer, suggestionContainerClassName) }, { children: showSuggestions
                                ? (suggestions.map(function (item, index) {
                                    var _a;
                                    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Autocomplete.suggestion, (_a = {}, _a[Autocomplete.suggestionFocused] = (highlightedIndex === index), _a)) }, getItemProps({ index: index, item: item }), { children: renderItem(item) }), index));
                                }))
                                : ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Autocomplete.noResults) }, { children: noResultsMessage || l('No results') }))) })))
                        : null] }));
        } })));
};
/* harmony default export */ const ui_Autocomplete_Autocomplete = (Autocomplete_Autocomplete);

;// CONCATENATED MODULE: ./src/components/ui/Autocomplete/index.ts



/***/ }),

/***/ "tq5F":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Avatar_Avatar)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Avatar/Avatar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Avatar = ({"loaderContainer":"GGJslZE53TkKIszfUZQD","loader":"WrRuA_BaFlCqUCcO8_AA","spin":"audRXeATOVPULT1uNX8G","rounded":"EzJcbcV0aRr_qHQypS9Q","roundCorners":"BnRWMb55aMwqitsJrw73"});
;// CONCATENATED MODULE: ./src/components/ui/Avatar/Avatar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





/**
 * Component for displaying avatars
 */
var Avatar_Avatar = function (_a) {
    var _b, _c;
    var className = _a.className, imageUrl = _a.imageUrl, rounded = _a.rounded, roundCorners = _a.roundCorners, _d = _a.size, size = _d === void 0 ? 50 : _d, alt = _a.alt;
    var _e = __read((0,react.useState)(false), 2), loaded = _e[0], setLoaded = _e[1];
    var handleError = function (e) {
        e.target.onerror = null;
        e.target.src = '/static/images/no-avatar.png';
    };
    var handleLoadCompleted = function () {
        setLoaded(true);
    };
    var validateUrl = function (url) {
        if (url && !url.includes('http')) {
            return "https://".concat(url);
        }
        return imageUrl;
    };
    (0,react.useEffect)(function () {
        var image = new Image();
        image.src = imageUrl;
        image.onload = handleLoadCompleted;
        image.onerror = handleError;
    }, []);
    var imageSrc = validateUrl(imageUrl);
    if (!loaded) {
        return ((0,jsx_runtime.jsx)("div", __assign({ style: { width: size, height: size }, className: classnames_default()(className, Avatar.loaderContainer, (_b = {}, _b[Avatar.rounded] = rounded, _b[Avatar.roundCorners] = roundCorners, _b)) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "loading", size: "medium", className: classnames_default()(Avatar.loader) }) })));
    }
    return ((0,jsx_runtime.jsx)("img", { alt: alt, className: classnames_default()(className, (_c = {}, _c[Avatar.rounded] = rounded, _c[Avatar.roundCorners] = roundCorners, _c)), src: imageSrc || '/static/images/no-avatar.png', width: size, height: size, onError: handleError }));
};
/* harmony default export */ const ui_Avatar_Avatar = (Avatar_Avatar);

;// CONCATENATED MODULE: ./src/components/ui/Avatar/index.ts



/***/ }),

/***/ "5d8y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Badge_Badge)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
;// CONCATENATED MODULE: ./src/components/ui/Badge/FeatureBadge.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FeatureBadge = ({"base":"D8Uth8mOc7n4UAgGi6fj","beta":"pudgwsLrMrmuMS1sToiT","new":"t7eCX2JU1J1z5vsAFauz","support":"yE3PYlCpXQjaSWWr58jo","pulse":"p9etP2tCjsQEhEL36IbR"});
;// CONCATENATED MODULE: ./src/components/ui/Badge/FeatureBadge.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};








var BADGE_LABELS_BY_TYPE = {
    new: 'NEW',
    beta: 'BETA',
    support: 'SUPPORT',
};
var FeatureBadge_FeatureBadge = function (_a) {
    var _b;
    var className = _a.className, type = _a.type, creationDate = _a.creationDate, expirationDate = _a.expirationDate, _c = _a.pulse, pulse = _c === void 0 ? false : _c, isTrial = _a.isTrial, userCreationDate = _a.userCreationDate;
    var isUserRegisteredAfterBadgeAdded = creationDate && new Date(userCreationDate) > new Date(creationDate);
    if (type === BADGE_LABELS_BY_TYPE.new && (isTrial || isUserRegisteredAfterBadgeAdded))
        return null;
    if (expirationDate && moment_default()(new Date()).isAfter(moment_default()(expirationDate, 'DD-MM-YYYY'))) {
        console.warn('Please remove the badge from code. It was expired', expirationDate);
        return null;
    }
    return ((0,jsx_runtime.jsx)("small", __assign({ className: classnames_default()(FeatureBadge.base, className, FeatureBadge[type], (_b = {}, _b[FeatureBadge.pulse] = pulse, _b)) }, { children: BADGE_LABELS_BY_TYPE[type] })));
};
/* harmony default export */ const Badge_FeatureBadge = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    isTrial: (0,selectors/* isAccountTrial */.a4)(state),
    userCreationDate: (0,currentUser_selectors/* getCurrentUserCreationDate */.Qi)(state),
}); }))(FeatureBadge_FeatureBadge));

;// CONCATENATED MODULE: ./src/components/ui/Badge/Badge.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Badge = ({"base":"WMuYbLwxaBq0j4GubvXg","green":"S2qLW_2G8gwpujpOd9Mw","blue":"xPXcfP7J0J6QMuYpiPkG","red":"ci8xw5Tk3XYJYfZsJB4F","amber":"dJqA78Lay8VsjmSQHBsa","purple":"TVKHbB1g95GGaPfdLlhw"});
;// CONCATENATED MODULE: ./src/components/ui/Badge/Badge.tsx
var Badge_assign = (undefined && undefined.__assign) || function () {
    Badge_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Badge_assign.apply(this, arguments);
};




var Badge_Badge = function (_a) {
    var _b;
    var className = _a.className, label = _a.label, color = _a.color, small = _a.small, onClick = _a.onClick;
    return ((0,jsx_runtime.jsx)("div", Badge_assign({ className: classnames_default()(className, Badge.base, Badge[color], (_b = {}, _b[Badge.small] = small, _b)), onClick: onClick }, { children: label })));
};
Badge_Badge.New = function (_a) {
    var className = _a.className, _b = _a.creationDate, creationDate = _b === void 0 ? null : _b, _c = _a.expirationDate, expirationDate = _c === void 0 ? null : _c, _d = _a.pulse, pulse = _d === void 0 ? false : _d;
    return ((0,jsx_runtime.jsx)(Badge_FeatureBadge, { type: "new", className: className, creationDate: creationDate, expirationDate: expirationDate, pulse: pulse }));
};
Badge_Badge.Beta = function (_a) {
    var className = _a.className;
    return ((0,jsx_runtime.jsx)(Badge_FeatureBadge, { type: "beta", className: className }));
};
Badge_Badge.Support = function (_a) {
    var className = _a.className;
    return ((0,jsx_runtime.jsx)(Badge_FeatureBadge, { type: "support", className: className }));
};
/* harmony default export */ const ui_Badge_Badge = (Badge_Badge);

;// CONCATENATED MODULE: ./src/components/ui/Badge/index.ts



/***/ }),

/***/ "sC2d":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Button_Button)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Button/Button.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Button = ({"base":"K3wSkdLun5tyeizqkwKW","ghost":"QIU3JiFzajn0xv2UVqtV","outline":"TINwC94qUB35SNlD3_SJ","darkMode":"JxRpeD214alAGYQ3YLel","label":"OLWJqkYAUzV5f81HeWkT","disabled":"HdxiEhbe8XKnikGXb9st","loading":"qndVDn0eZsMc2NhmCIed","fullWidth":"YvxReTXs_J88ClYANsQ2","dark":"_b6ciVEOl7WuVKMtCVEo","secondary":"pK7EWyP8DDQ91KGCLSEY","success":"s1sbEJB9VXMUZ71VYJNn","primary":"kUSxiXUHMFy_s4ZkHRLG","danger":"GIR8Zmadwe7TKD74EaBg","warning":"lSSLmKdgvFA6plK9lJCq","ai":"vDUeXNDzUjVAroGWNk_u","small":"MtPu9h8q7DTaGuHMLsmg","large":"FF3v4g9p2DiF4nP4L3yR","default":"nTzHtB3fhUu3NDeAPXVx","link":"Mo3CxC7uK26JZW1Ah_D5","underline":"t5MLQoQoRdmBlNBYZQRJ","loadingContainer":"A0amtf8wgPR0d_3WYs6Y","loadingLabel":"iTPRCWNOIap5oPfC5UjX","loadingIcon":"p6NrV3gNhIQLzo5IAtII"});
;// CONCATENATED MODULE: ./src/components/ui/Button/Button.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




var Button_Button = function (_a) {
    var _b;
    var outline = _a.outline, label = _a.label, icon = _a.icon, underline = _a.underline, className = _a.className, disabled = _a.disabled, loading = _a.loading, secondary = _a.secondary, primary = _a.primary, warning = _a.warning, link = _a.link, danger = _a.danger, success = _a.success, ai = _a.ai, darkMode = _a.darkMode, _c = _a.size, size = _c === void 0 ? 'default' : _c, fullWidth = _a.fullWidth, ghost = _a.ghost, otherProps = __rest(_a, ["outline", "label", "icon", "underline", "className", "disabled", "loading", "secondary", "primary", "warning", "link", "danger", "success", "ai", "darkMode", "size", "fullWidth", "ghost"]);
    var classes = classnames_default()(className, Button[size], Button.base, (_b = {},
        _b[Button.outline] = outline,
        _b[Button.underline] = underline,
        _b[Button.darkMode] = darkMode,
        _b[Button.disabled] = disabled,
        _b[Button.secondary] = secondary,
        _b[Button.primary] = primary,
        _b[Button.danger] = danger,
        _b[Button.success] = success,
        _b[Button.warning] = warning,
        _b[Button.ai] = ai,
        _b[Button.link] = link,
        _b[Button.fullWidth] = fullWidth,
        _b[Button.dark] = ghost,
        _b[Button.ghost] = ghost,
        _b[Button.loading] = loading,
        _b));
    return ((0,jsx_runtime.jsx)("button", __assign({ tabIndex: disabled ? -1 : 0, className: classes }, otherProps, { children: loading
            ? ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Button.loadingContainer) }, { children: [(0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(Button.loadingLabel) }, { children: label })), (0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(Button.loadingIcon), spinning: true, type: "loading" })] })))
            : ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Button.label) }, { children: [icon, label] }))) })));
};
/* harmony default export */ const ui_Button_Button = (Button_Button);

;// CONCATENATED MODULE: ./src/components/ui/Button/index.ts



/***/ }),

/***/ "9i11":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  h: () => (/* reexport */ Calendar_DayPicker),
  A: () => (/* reexport */ Calendar_Calendar)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/@easepick/bundle/dist/index.esm.js
var index_esm = __webpack_require__("o8kP");
// EXTERNAL MODULE: ./src/i18n.ts
var i18n = __webpack_require__("872o");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/utils/dates/dateUtils.ts
var dateUtils = __webpack_require__("9jXX");
// EXTERNAL MODULE: ./node_modules/deep-object-diff/mjs/diff.js + 1 modules
var diff = __webpack_require__("8WUF");
;// CONCATENATED MODULE: ./src/utils/components.ts

var arePropsDeepEqual = function (prevProps, nextProps) {
    var differences = (0,diff/* default */.A)(prevProps, nextProps);
    return Object.keys(differences).length === 0;
};

// EXTERNAL MODULE: ./src/utils/dates/timeUtils.ts
var timeUtils = __webpack_require__("P8Q3");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/addDays/index.js
var addDays = __webpack_require__("9/EM");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/subMonths/index.js
var subMonths = __webpack_require__("phiu");
// EXTERNAL MODULE: ./src/utils/dates/formats.ts
var formats = __webpack_require__("RYjn");
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
;// CONCATENATED MODULE: ./src/components/ui/Calendar/stylesCalendar.ts
/* eslint-disable max-len */
// Styles are passed as string to calendar constructor
var styles = "\n:host {\n    --color-bg-default: var(--white);\n    --color-bg-secondary: var(--white);\n    --color-fg-default: var(--textColor);\n    --color-fg-primary: var(--primary);\n    --color-fg-secondary: var(--secondaryTextColor);\n    --color-fg-selected: var(--white);\n    --color-fg-muted: var(--secondaryTextColor);\n    --color-fg-accent: var(--primary);\n    --color-btn-primary-bg: var(--primary);\n    --color-btn-primary-fg: var(--alwaysWhite);\n    --color-btn-primary-border: var(--primary);\n    --color-btn-primary-hover-bg: var(--primaryLightest);\n    --color-btn-primary-hover-fg: var(--primary);\n    --color-btn-primary-hover-border: var(--primary);\n    --color-btn-primary-disabled-bg: var(--primary);\n    --color-btn-primary-disabled-fg: var(--textColorOnDarkLight);\n    --color-btn-primary-disabled-border: var(--primaryLighter);\n    --color-btn-secondary-bg: var(--grayLightest);\n    --color-btn-secondary-fg: var(--secondaryTextColor);\n    --color-btn-secondary-border: var(--bordersColor);\n    --color-btn-secondary-hover-bg: var(--secondaryTextColor);\n    --color-btn-secondary-hover-fg: var(--white);\n    --color-btn-secondary-hover-border: var(--bordersColorLight);\n    --color-btn-secondary-disabled-bg: var(--disabledColor);\n    --color-btn-secondary-disabled-fg: var(--white);\n    --color-btn-secondary-disabled-border: var(--disabledColor);\n    --color-border-default: var(--bordersColor);\n    --color-border-locked: var(--bordersColorDark);\n    --day-width: 42px;\n    --day-height: 37px;\n    --border-radius: var(--borderRadius);\n    --primary-color: var(--primary);\n    --secondary-color: var(--secondaryTextColor);\n    --white-color: var(--white);\n    --black-color: var(--black);\n    --lightgray-color: var(--grayLightest);\n    --gray-color: var(--grayBase);\n    --red-color: var(--errorColor);\n}\n* {\n    box-sizing: border-box;\n    font: inherit;\n    font-weight: var(--fontWeightNormal);\n}\n.container {\n    color: var(--color-fg-default);\n    cursor: default;\n    display: inline-block;\n    font-size: var(--fontSizeBase);\n    height: 0;\n    overflow: hidden;\n    pointer-events: all;\n    position: absolute;\n    transform: scale(0);\n    transform-origin: top left;\n    background-color: var(--color-bg-default);\n}\n.container.calc {\n    height: auto;\n    transform: none;\n    transition: none;\n    visibility: hidden;\n}\n.container.show {\n    box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\n    height: auto;\n    transform: scale(1);\n}\n.container.inline {\n    height: auto;\n    left: 0;\n    position: relative;\n    top: 0;\n    transform: scaleY(1);\n}\n.container > footer,\n.container > header {\n    background-color: var(--color-bg-secondary);\n    padding: var(--spacingSmall);\n    padding-bottom: var(--spacingExtraSmall);\n}\n.container > footer .footer-buttons {\n    -moz-column-gap: 5px;\n    column-gap: 5px;\n    display: flex;\n    justify-content: flex-end;\n}\n.container > footer .footer-buttons > button {\n    background-color: transparent;\n    border: var(--baseBorder);\n    border-radius: var(--borderRadius);\n    border-color: var(--grayLighter);\n    cursor: pointer;\n    height: var(--fieldHeightBase);\n    padding: 5px calc(var(--fieldHeightBase)/2);\n    font-weight: var(--fontWeightMedium);\n}\n.container > footer .footer-buttons > button.apply-button {\n    background-color: var(--color-btn-primary-bg);\n    border-color: var(--color-btn-primary-border);\n    color: var(--color-btn-primary-fg);\n}\n.container > footer .footer-buttons > button.apply-button:disabled {\n    background-color: var(--color-btn-primary-disabled-bg);\n    border-color: none;\n    color: var(--color-btn-primary-disabled-fg);\n    opacity: .5;\n    cursor: default;\n}\n.container > footer .footer-buttons > button.cancel-button {\n    background-color: var(--color-btn-secondary-bg);\n    border-color: var(--color-btn-secondary-border);\n    color: var(--color-btn-secondary-fg);\n}\n.container > footer .footer-buttons > button.cancel-button:disabled {\n    background-color: var(--color-btn-secondary-disabled-bg);\n    border-color: none;\n    color: var(--color-btn-secondary-disabled-fg);\n    opacity: .5;\n    cursor: default;\n}\n.grid-1 {\n    grid-template-columns: repeat(1, 1fr);\n}\n.grid-2 {\n    grid-template-columns: repeat(2, 1fr);\n}\n.grid-3 {\n    grid-template-columns: repeat(3, 1fr);\n}\n.grid-4 {\n    grid-template-columns: repeat(4, 1fr);\n}\n.grid-5 {\n    grid-template-columns: repeat(5, 1fr);\n}\n.grid-6 {\n    grid-template-columns: repeat(6, 1fr);\n}\n.grid-7 {\n    grid-template-columns: repeat(7, 1fr);\n}\n.grid-8 {\n    grid-template-columns: repeat(8, 1fr);\n}\n.grid-9 {\n    grid-template-columns: repeat(9, 1fr);\n}\n.grid-10 {\n    grid-template-columns: repeat(10, 1fr);\n}\n.grid-11 {\n    grid-template-columns: repeat(11, 1fr);\n}\n.grid-12 {\n    grid-template-columns: repeat(12, 1fr);\n}\n.calendars {\n    display: grid;\n}\n.calendars:not(.grid-1) .calendar > .header .month-name {\n    order: 2;\n    text-align: center;\n}\n.calendars .calendar > .header .previous-button {\n    order: -1;\n}\n.calendars:not(.grid-1) .calendar > .header .previous-button {\n    order: 1;\n    visibility: hidden;\n}\n.calendars:not(.grid-1) .calendar > .header .next-button {\n    order: 3;\n    visibility: hidden;\n}\n.calendars:not(.grid-1) .calendar:first-child > .header .previous-button,\n.calendars:not(.grid-1) .calendar:last-child > .header .next-button {\n    visibility: visible;\n}\n.calendar {\n    padding: var(--spacingSmall);\n}\n.calendar > .header {\n    align-items: center;\n    -moz-column-gap: 5px;\n    column-gap: 5px;\n    display: flex;\n    justify-content: space-between;\n    padding: var(--spacingSmall) var(--spacingSmall) var(--spacingBase);\n}\n.calendar > .header .month-name {\n    flex: 1;\n    font-size: 15px;\n    font-weight: 500;\n}\n.calendar > .header .month-name > span {\n    font-weight: 700;\n}\n.calendar > .header button {\n    align-items: center;\n    background-color: transparent;\n    border: 1px solid transparent;\n    border-radius: 2px;\n    color: var(--color-btn-secondary-fg);\n    cursor: pointer;\n    display: flex;\n    justify-content: center;\n    padding: var(--spacingExtraSmall) var(--spacingSmall);\n}\n.calendar > .header button:hover {\n    background-color: var(--color-bg-secondary);\n}\n.calendar > .header button:hover > img,\n.calendar > .header button:hover > svg {\n    fill: var(--color-fg-primary);\n    color: var(--color-fg-primary);\n}\n.calendar > .header button > img,\n.calendar > .header button > svg {\n    fill: var(--color-btn-secondary-fg);\n    color: var(--color-btn-secondary-fg);\n    pointer-events: none;\n    transform: scale(0.7);\n}\n.calendar > .daynames-row,\n.calendar > .days-grid {\n    display: grid;\n    grid-template-columns: repeat(7, 1fr);\n    row-gap: 2px;\n}\n.calendar > .days-grid {\n    grid-template-rows: repeat(6, 1fr);\n}\n.calendar > .daynames-row > .day,\n.calendar > .daynames-row > .dayname,\n.calendar > .days-grid > .day,\n.calendar > .days-grid > .dayname {\n    align-items: center;\n    cursor: default;\n    display: flex;\n    flex-direction: column;\n    font-size: 13px;\n    justify-content: center;\n}\n.calendar > .daynames-row > .dayname {\n    color: var(--color-fg-muted);\n    font-size: 12px;\n    padding: 5px 0;\n}\n.calendar > .days-grid > .day {\n    cursor: pointer;\n    border: 1px solid transparent;\n    border-radius: 2px;\n    height: var(--day-height);\n    max-height: var(--day-height);\n    max-width: var(--day-width);\n    min-height: var(--day-height);\n    min-width: var(--day-width);\n    padding: 10px 0;\n    width: var(--day-width);\n}\n.calendar > .days-grid > .day:hover {\n    border: 1px solid var(--color-fg-primary);\n    color: var(--color-fg-primary);\n}\n.calendar > .days-grid > .day.today {\n    color: var(--color-fg-accent);\n}\n.calendar > .days-grid > .day.selected {\n    background-color: var(--color-fg-primary);\n    color: var(--color-fg-selected);\n}\n@media (max-width: 480px) {\n    .container:not(.inline) {\n        transform: scaleY(0) !important;\n        transform-origin: bottom center !important;\n    }\n    .container:not(.inline).show {\n        bottom: 0 !important;\n        left: 0 !important;\n        position: fixed !important;\n        right: 0 !important;\n        top: auto !important;\n        transform: scaleY(1) !important;\n    }\n    .container {\n        width: 100%;\n    }\n    .calendars {\n        grid-template-columns: repeat(1, 1fr);\n    }\n    .calendars .calendar {\n        box-sizing: border-box;\n        width: 100%;\n    }\n    .calendars .calendar:nth-child(n + 2) {\n        display: none;\n    }\n    .calendars .calendar > .days-grid > .day {\n        height: auto;\n        max-height: unset;\n        max-width: unset;\n        min-height: unset;\n        min-width: unset;\n        width: auto;\n    }\n    .calendars .calendar > .header:not(.no-next-month) .next-button {\n        visibility: visible;\n    }\n}\n:host {\n    --color-fg-locked: var(--grayBase);\n    --color-bg-locked: var(--pinkLighter);\n    --color-bg-unavailable: var(--transparent);\n}\n.container.lock-plugin,\n.calendars,\n.calendar:first-child,\n> .header.no-previous-month,\n.previous-button,\n.container.lock-plugin,\n.calendars,\n.calendar:last-child,\n> .header.no-next-month,\n.next-button {\n    visibility: hidden;\n}\n.container.lock-plugin .calendar > .days-grid > .day.not-available {\n    background-color: var(--color-bg-unavailable);\n    color: var(--color-fg-locked);\n    pointer-events: none;\n}\n.container.lock-plugin .calendar > .days-grid > .day.locked {\n    background-color: transparent;\n    border: 1px solid var(--color-border-locked);\n    color: var(--color-fg-locked);\n    pointer-events: none;\n}\n.container.lock-plugin,\n.calendar,\n> .days-grid,\n> .day.locked:not(.start):not(.end) {\n    background-image: repeating-linear-gradient(\n            135deg,\n            transparent,\n            var(--color-bg-locked) 2px,\n            transparent 2px,\n            transparent var(--spacingExtraSmall)\n    );\n    font-style: italic;\n}\n.container.lock-plugin .preset-plugin-container > button:disabled {\n    color: var(--color-fg-locked);\n    pointer-events: none;\n}\n.container.preset-plugin > main {\n    display: flex;\n}\n.container.preset-plugin > main.preset-left {\n    flex-direction: row-reverse;\n}\n.container.preset-plugin > main.preset-right {\n    flex-direction: row;\n}\n.container.preset-plugin > main.preset-left .preset-plugin-container,\n.container.preset-plugin > main.preset-right .preset-plugin-container {\n    flex-direction: column;\n    width: 130px;\n}\n.container.preset-plugin > main.preset-top {\n    flex-direction: column-reverse;\n}\n.container.preset-plugin > main.preset-bottom {\n    flex-direction: column;\n}\n.container.preset-plugin > main.preset-bottom .preset-plugin-container,\n.container.preset-plugin > main.preset-top .preset-plugin-container {\n    flex-direction: row;\n}\n.preset-plugin-container {\n    margin-top: var(--spacingBase);\n    background-color: var(--color-bg-secondary);\n    display: flex;\n    justify-content: space-between;\n    padding: var(--spacingSmall);\n    border-right: var(--baseBorder);\n}\n.time-plugin-container + .preset-plugin-container {\n    margin-top: calc(var(--spacingExtraLarge) * 2);\n}\n.preset-plugin-container > button {\n    text-align: center;\n    background-color: var(--color-bg-default);\n    border: 1px solid transparent;\n    border-radius: var(--spacingExtraSmall);\n    color: var(--color-fg-default);\n    padding: var(--spacingExtraSmall) var(--spacingBase);\n    cursor: pointer;\n}\n.preset-plugin-container > button:hover {\n    color: var(--color-fg-primary);\n    border: 1px solid var(--color-fg-primary);\n}\n:host {\n    --color-bg-inrange: var(--primaryLightest);\n    --color-bg-tooltip: var(--white);\n    --color-fg-tooltip: var(--textColor);\n}\n.range-plugin-tooltip {\n    background-color: var(--color-bg-tooltip);\n    border-radius: var(--border-radius);\n    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);\n    color: var(--color-fg-tooltip);\n    font-size: 12px;\n    margin-top: -4px;\n    padding: var(--spacingExtraSmall) var(--spacingSmall);\n    pointer-events: none;\n    position: absolute;\n    visibility: hidden;\n    white-space: nowrap;\n    z-index: 1;\n}\n.range-plugin-tooltip:before {\n    border-left: 5px solid transparent;\n    border-right: 5px solid transparent;\n    border-top: 5px solid rgba(0, 0, 0, 0.12);\n    bottom: -5px;\n    content: \"\";\n    left: calc(50% - 5px);\n    position: absolute;\n}\n.range-plugin-tooltip:after {\n    border-left: var(--spacingExtraSmall) solid transparent;\n    border-right: var(--spacingExtraSmall) solid transparent;\n    border-top: var(--spacingExtraSmall) solid var(--color-bg-tooltip);\n    bottom: -4px;\n    content: \"\";\n    left: calc(50% - var(--spacingExtraSmall));\n    position: absolute;\n}\n.container.range-plugin .calendar > .days-grid > .day {\n    position: relative;\n}\n.container.range-plugin .calendar > .days-grid > .day.in-range:last-of-type {\n    border-bottom-right-radius: var(--border-radius);\n    border-top-right-radius: var(--border-radius);\n}\n.container.range-plugin .calendar > .days-grid > .day.in-range {\n    background-color: var(--color-bg-inrange);\n    border-radius: 0;\n}\n.container.range-plugin .calendar > .days-grid > .day.end,\n.container.range-plugin .calendar > .days-grid > .day.start {\n    background-color: var(--color-fg-primary);\n    color: var(--color-fg-selected);\n}\n.container.range-plugin .calendar > .days-grid > .day.start {\n    border-bottom-right-radius: 0;\n    border-top-right-radius: 0;\n}\n.container.range-plugin .calendar > .days-grid > .day.start:after {\n    border: 8px solid transparent;\n    border-left: 8px solid var(--color-fg-primary);\n    content: \"\";\n    pointer-events: none;\n    position: absolute;\n    right: -14px;\n    z-index: 1;\n}\n.container.range-plugin .calendar > .days-grid > .day.start.flipped {\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: var(--border-radius);\n    border-top-left-radius: 0;\n    border-top-right-radius: var(--border-radius);\n}\n.container.range-plugin .calendar > .days-grid > .day.start.flipped:after {\n    border-left-color: transparent;\n    border-right-color: var(--color-fg-primary);\n    left: -14px;\n    right: auto;\n}\n.container.range-plugin .calendar > .days-grid > .day.end {\n    border-bottom-left-radius: 0;\n    border-top-left-radius: 0;\n}\n.container.range-plugin .calendar > .days-grid > .day.end:after {\n    border: 8px solid transparent;\n    border-right: 8px solid var(--color-fg-primary);\n    content: \"\";\n    left: -14px;\n    pointer-events: none;\n    position: absolute;\n    z-index: 1;\n}\n.container.range-plugin .calendar > .days-grid > .day.end.flipped {\n    border-bottom-left-radius: var(--border-radius);\n    border-bottom-right-radius: 0;\n    border-top-left-radius: var(--border-radius);\n    border-top-right-radius: 0;\n}\n.container.range-plugin .calendar > .days-grid > .day.end.flipped:after {\n    border-left-color: var(--color-fg-primary);\n    border-right-color: transparent;\n    left: auto;\n    right: -14px;\n}\n.container.range-plugin .calendar > .days-grid > .day.start.end {\n    border-radius: var(--border-radius);\n}\n.container.range-plugin .calendar > .days-grid > .day.start.end:after {\n    content: none;\n}\n.container.range-plugin .calendar > .days-grid > div:not(.day) + .day.in-range {\n    border-bottom-left-radius: var(--border-radius);\n    border-top-left-radius: var(--border-radius);\n}\n.container.range-plugin .calendar > .days-grid > div:nth-child(7n).in-range {\n    border-bottom-right-radius: var(--border-radius);\n    border-top-right-radius: var(--border-radius);\n}\n.container.range-plugin,\n.calendar,\n> .days-grid,\n> div:nth-child(7n + 1).in-range {\n    border-bottom-left-radius: var(--border-radius);\n    border-top-left-radius: var(--border-radius);\n}\n.container.preset-plugin main {\n    display: grid;\n}\n.container.preset-plugin main.preset-left > .calendars,\n.container.preset-plugin main.preset-top > .calendars {\n    order: 2;\n}\n.container.preset-plugin main.preset-left > .preset-plugin-container,\n.container.preset-plugin main.preset-top > .preset-plugin-container {\n    order: 1;\n}\n.container.preset-plugin main.preset-left,\n.container.preset-plugin main.preset-right {\n    grid-template-columns: auto auto;\n}\n.container.preset-plugin main.preset-left .preset-plugin-container,\n.container.preset-plugin main.preset-right .preset-plugin-container {\n    grid-row: span 2;\n    width: 130px;\n}\n.container.preset-plugin main.preset-bottom > .preset-plugin-container {\n    order: 4;\n}\n.container.preset-plugin main.preset-bottom,\n.container.preset-plugin main.preset-top {\n    grid-template-columns: auto;\n}\n.container.preset-plugin main > .time-plugin-container {\n    order: 3;\n}\n.container > main:not([class*=\"preset-\"]) {\n    flex-direction: column;\n}\n.time-plugin-container {\n    background-color: var(--color-bg-secondary);\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: space-around;\n    padding: var(--spacingSmall);\n    padding-top: 0;\n}\n.time-plugin-container input[type=\"time\"],\n.time-plugin-container select {\n    border: var(--baseBorder);\n    border-radius: var(--spacingExtraSmall);\n    color: var(--color-fg-default);\n}\n.time-plugin-container select {\n    margin-left: var(--spacingExtraSmall);\n}\n.time-plugin-custom-input {\n    width: 56px\n}\n.time-plugin-container select,\n.container.amp-plugin .calendars .calendar > .header .month-name select {\n    border: var(--baseBorder);\n    border-radius: var(--borderRadius);\n    padding: var(--spacingExtraSmall);\n    padding-left: var(--spacingSmall);\n    padding-right: var(--spacingLarge);\n    \n    appearance: none;\n    background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='width:24px;height:24px' viewBox='0 0 24 24'%3E%3Cpath fill='gray' d='M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z' /%3E%3C/svg%3E\");\n    background-repeat: no-repeat, repeat;\n    background-position: right 0 top 50%, 0 0;\n    background-size: 18px auto, 100%;\n    background-color: var(--textFieldColor);\n}\n.time-plugin-custom-block:first-child::before,\n.time-plugin-custom-block:last-child::before {\n    display: inline-block;\n    content: '';\n    width: var(--spacingLarge);\n    height: var(--spacingLarge);\n    position: relative;\n    top: 7px;\n    right: 2px;\n}\n.time-plugin-custom-block:first-child::before{\n    background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='xMidYMid meet' viewBox='0 0 24 24'%3E%3Cpath fill='%23a4a4a4' d='M12 1C8.14 1 5 4.14 5 8a7 7 0 0 0 7 7c3.86 0 7-3.13 7-7c0-3.86-3.14-7-7-7m0 2.15c2.67 0 4.85 2.17 4.85 4.85c0 2.68-2.18 4.85-4.85 4.85A4.85 4.85 0 0 1 7.15 8A4.85 4.85 0 0 1 12 3.15M11 5v3.69l3.19 1.84l.75-1.3l-2.44-1.41V5M4 16v8h2v-3h12v3l4-4l-4-4v3H6v-3'/%3E%3C/svg%3E\");\n}\n.time-plugin-custom-block:last-child::before {\n    background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='xMidYMid meet' viewBox='0 0 24 24'%3E%3Cpath fill='%23a4a4a4' d='M12 1C8.14 1 5 4.14 5 8a7 7 0 0 0 7 7c3.86 0 7-3.13 7-7c0-3.86-3.14-7-7-7m0 2.15c2.67 0 4.85 2.17 4.85 4.85c0 2.68-2.18 4.85-4.85 4.85A4.85 4.85 0 0 1 7.15 8A4.85 4.85 0 0 1 12 3.15M11 5v3.69l3.19 1.84l.75-1.3l-2.44-1.41V5M15 16v3H3v2h12v3l4-4m0 0v4h2v-8h-2'/%3E%3C/svg%3E\");\n}\n.time-plugin-custom-block {\n    position: relative;\n    padding-right: var(--spacingExtraLarge);\n}\n.time-plugin-custom-block::after {\n    position: absolute;\n    right: 0;\n    top: 7px;\n    display: inline-block;\n    content: ' ';\n    width: var(--spacingLarge);\n    height: var(--spacingLarge);\n    transition: all 0.15s linear;\n    opacity: 0;\n    transform: translate(5px);\n    cursor: pointer;\n    background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='width:24px;height:24px' viewBox='0 0 24 24'%3E%3Cpath fill='%23a4a4a4' d='M19,15.59L17.59,17L14,13.41L10.41,17L9,15.59L12.59,12L9,8.41L10.41,7L14,10.59L17.59,7L19,8.41L15.41,12L19,15.59M22,3A2,2 0 0,1 24,5V19A2,2 0 0,1 22,21H7C6.31,21 5.77,20.64 5.41,20.11L0,12L5.41,3.88C5.77,3.35 6.31,3 7,3H22M22,5H7L2.28,12L7,19H22V5Z' /%3E%3C/svg%3E\");\n}\n.time-plugin-custom-block:hover::after {\n    opacity: 1;\n    transform: translate(0px);\n}\n.container.amp-plugin .calendars .calendar > .header .month-name {\n    align-items: center;\n    -moz-column-gap: var(--spacingExtraSmall);\n    column-gap: var(--spacingExtraSmall);\n    display: flex;\n    justify-content: center;\n}\n.container.amp-plugin .calendars .calendar > .header .month-name select {\n    font-size: 14px;\n    color: var(--color-fg-default);\n}\n.container.amp-plugin,\n.calendars,\n.calendar,\n> .header,\n.month-name,\nselect.month-name--dropdown {\n    font-weight: 700;\n}\n.container.amp-plugin .calendars .calendar > .header .reset-button {\n    order: 4;\n}\n.container.amp-plugin,\n.calendars.calendars:not(.grid-1),\n.calendar,\n> .header,\n.reset-button {\n    visibility: hidden;\n}\n.container.amp-plugin,\n.calendars.calendars:not(.grid-1),\n.calendar:last-child,\n> .header,\n.reset-button {\n    visibility: visible;\n}\n.container.amp-plugin.week-numbers .calendar > .daynames-row,\n.container.amp-plugin.week-numbers .calendar > .days-grid {\n    grid-template-columns: 30px repeat(7, 1fr);\n}\n.container.amp-plugin.week-numbers .calendar > .daynames-row .wnum-header,\n.container.amp-plugin.week-numbers .calendar > .daynames-row .wnum-item,\n.container.amp-plugin.week-numbers .calendar > .days-grid .wnum-header,\n.container.amp-plugin.week-numbers .calendar > .days-grid .wnum-item {\n    align-items: center;\n    color: var(--color-fg-muted);\n    display: flex;\n    font-size: 12px;\n    justify-content: center;\n}\nselect {\n    cursor: pointer;\n}\n";
/* harmony default export */ const stylesCalendar = (styles);

;// CONCATENATED MODULE: ./src/components/ui/Calendar/styles.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Calendar_styles = ({"rangeInput":"TqUdrLxtS7L12RRkVsn1","base":"wWI8kT7hCcxXUj5r1Z7k","calendarWrapper":"zt7OG5I1_H_BMEfJXOod","open":"sHM2v7oQPN8JupZ3X66Y","positionRight":"AB6On1xMBTwV38U_I5FQ","positionLeft":"z5r8Cizq5bD5SYXTNx0U","period":"TH2lugqcUXt6GKE7lX3L","periodTitle":"XTYhEu2IImK1VSh68Wdv","periodDate":"IvRGbjaplddb22rkUQvA","periodArrow":"rS17nCsRP7vo82igUsZf"});
;// CONCATENATED MODULE: ./src/components/ui/Calendar/Calendar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable new-cap,max-len */















var CLEAR_TIME_ICON_WIDTH = 24;
var MIN_YEAR = 2014;
var MIN_DATE = new Date(MIN_YEAR, 0, 1);
var DEFAULT_PERIOD = { from: (0,dateUtils/* getDayMonthAgo */.y8)(), to: new Date() };
// Pattern for string string like '2022-09-30 - 2022-10-01' or '2022-09-30 7:30am - 2022-10-01 5:00pm' (time is optional)
var DATE_INPUT_REGEXP = new RegExp(/^20\d\d-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01]) ([0-2]?\d:[0-5]\d(am|pm)\s)?- 20\d\d-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])(\s[0-2]?\d:[0-5]\d(am|pm))?$/);
var INSERT_CALENDAR_CLASS = 'insertCalendarHolder';
var getCustomRanges = function () {
    var _a;
    var today = new Date();
    today.setHours(0, 0, 0, 0);
    return _a = {},
        _a[l('Today')] = [today, today],
        _a[l('Yesterday')] = [(0,dateUtils/* getPreviousDay */.yy)(today), (0,dateUtils/* getPreviousDay */.yy)(today)],
        _a[l('Week')] = [(0,dateUtils/* getDayWeekAgo */.AZ)(today), today],
        _a[l('Month')] = [(0,dateUtils/* getDayMonthAgo */.y8)(today), today],
        _a[l('Last Week')] = [(0,addDays/* default */.A)((0,dateUtils/* getStartOfPreviousWeek */.JM)(today), 1), (0,addDays/* default */.A)((0,dateUtils/* getEndOfPreviousWeek */.Un)(today), 1)],
        _a[l('Last Month')] = [(0,dateUtils/* getStartOfPreviousMonth */.xS)(today), (0,dateUtils/* getEndOfPreviousMonth */.QS)(today)],
        _a[l('Year')] = [(0,dateUtils/* getDayYearAgo */.Ls)(today), today],
        _a;
};
// const showedMonth = isTabSize() ? 1 : 2;
var showedMonth = 1;
var Calendar = function (_a) {
    var _b;
    var _c = _a.period, period = _c === void 0 ? DEFAULT_PERIOD : _c, onChange = _a.onChange, minDate = _a.minDate, maxDate = _a.maxDate, isDisabled = _a.isDisabled, autoApply = _a.autoApply, showPresetRanges = _a.showPresetRanges, showTime = _a.showTime, _d = _a.position, position = _d === void 0 ? 'left' : _d;
    // variable is needed here due to closure issues
    var isDateApplied = true;
    var MAX_DATE = new Date();
    var _e = __read((0,react.useState)(null), 2), pickerInstance = _e[0], setPickerInstance = _e[1];
    var _f = __read((0,react.useState)(false), 2), error = _f[0], setError = _f[1];
    var _g = __read((0,react.useState)(), 2), tooltipMessage = _g[0], setTooltipMessage = _g[1];
    var _h = __read((0,react.useState)([]), 2), selectedPeriod = _h[0], setSelectedPeriod = _h[1];
    var _j = __read((0,react.useState)(false), 2), showCalendar = _j[0], setShowCalendar = _j[1];
    var inputRef = (0,react.useRef)(null);
    var baseRef = (0,react.useRef)(null);
    var currentMinDate = minDate || MIN_DATE;
    var currentMaxDate = maxDate || MAX_DATE;
    (0,react.useEffect)(function () {
        var showSideRange = !(0,mobile/* isSimplifiedView */.O7)() && showPresetRanges;
        // @ts-ignore
        var instance = new index_esm/* easepick */.iT.create({
            element: inputRef.current,
            inline: true,
            css: stylesCalendar,
            plugins: [index_esm/* RangePlugin */.fd, index_esm/* AmpPlugin */.QO, index_esm/* LockPlugin */.JU, showTime && index_esm/* TimePlugin */.TC, showSideRange && index_esm/* PresetPlugin */.jl],
            autoApply: autoApply,
            readonly: false,
            format: showTime ? 'YYYY-MM-DD h:mma' : 'YYYY-MM-DD',
            calendars: showedMonth,
            grid: showedMonth,
            lang: (0,i18n/* detectUserLocale */.$G)(),
            locale: {
                cancel: l('Cancel'),
                apply: l('Apply'),
            },
            // @ts-ignore
            AmpPlugin: {
                dropdown: {
                    months: true,
                    years: true,
                    minYear: currentMinDate.getFullYear(),
                },
            },
            TimePlugin: {
                format12: true,
            },
            PresetPlugin: {
                customPreset: showSideRange && getCustomRanges(),
            },
            LockPlugin: {
                maxDate: currentMaxDate,
                minDate: currentMinDate,
            },
            setup: function (picker) {
                picker.on('select', function () {
                    handleSaveChanges({
                        from: picker.getStartDate(),
                        to: picker.getEndDate(),
                    });
                });
                picker.on('preselect', function (e) {
                    isDateApplied = false;
                    picker.setStartDate(e.detail.start);
                    picker.setEndDate(e.detail.end);
                    setError(false);
                    setTooltipMessage(null);
                });
                picker.on('view', function () {
                    resizeInput();
                });
                picker.on('render', function () {
                    if (!picker.isShown() && !isDateApplied) {
                        handleHideCalendar();
                    }
                    trimInputZeroTime();
                });
                picker.on('click', function (e) {
                    var eventTarget = e.composedPath()[0];
                    // Auto-apply preset ranges
                    if (eventTarget.classList.contains('preset-button')) {
                        var from = new Date(parseInt(eventTarget.dataset.start, 10));
                        var to = new Date(parseInt(eventTarget.dataset.end, 10));
                        picker.setStartDate(from);
                        picker.setEndDate(to);
                        handleSaveChanges({
                            from: from,
                            to: to,
                        });
                    }
                    // Handle 'clear time' icon click
                    if (eventTarget.classList.contains('time-plugin-custom-block')) {
                        var timeBlock = picker.ui.container.querySelector('.time-plugin-custom-block');
                        var isClickOnClearTimeButton = timeBlock.offsetWidth - e.offsetX < CLEAR_TIME_ICON_WIDTH;
                        if (isClickOnClearTimeButton) {
                            var isStartTime = !eventTarget.previousSibling;
                            if (isStartTime) {
                                resetTime(picker, 'start');
                            }
                            else {
                                resetTime(picker, 'end');
                            }
                            trimInputZeroTime();
                            resizeInput();
                            setApplyButtonAvailability(picker);
                        }
                    }
                    if (eventTarget.classList.contains('day')) {
                        var date = new index_esm/* DateTime */.c9(eventTarget.dataset.time);
                        // @ts-ignore
                        var datePicked = __spreadArray([], __read(picker.customProps.selectedPeriod), false);
                        if (datePicked.length === 2) {
                            datePicked.length = 0;
                        }
                        datePicked[datePicked.length] = date;
                        if (datePicked.length === 2 && datePicked[0].isAfter(datePicked[1])) {
                            var tempDate = datePicked[1].clone();
                            datePicked[1] = datePicked[0].clone();
                            datePicked[0] = tempDate.clone();
                        }
                        setSelectedPeriod(datePicked);
                    }
                    if (eventTarget.classList.contains('cancel-button')) {
                        handleHideCalendar();
                    }
                });
                picker.on('change', function (e) {
                    var dropdown = e.composedPath()[0];
                    var isMonthDropdown = dropdown.classList.contains('month-name--dropdown');
                    var isSecondMonthDropdown = e.composedPath()[3].previousSibling;
                    if (isMonthDropdown && isSecondMonthDropdown) {
                        // By default, selecting a month in the second dropdown choose a month for the first dropdown
                        // This is the fix:
                        var selectedMonth = parseInt(dropdown.selectedOptions[0].value, 10);
                        var year = parseInt(dropdown.nextSibling.selectedOptions[0].value, 10);
                        if (selectedMonth === 0) {
                            picker.gotoDate(new Date(year - 1, 11));
                            return;
                        }
                        picker.gotoDate(new Date(year, selectedMonth - 1));
                    }
                    var isTimeDropdown = dropdown.classList.contains('time-plugin-custom-input');
                    if (isTimeDropdown) {
                        isDateApplied = false;
                        setInputTime(picker);
                    }
                });
            },
        });
        // @ts-ignore
        instance.customProps = {
            selectedPeriod: selectedPeriod,
        };
        // Move easepick to controllable place
        baseRef.current.querySelector(".".concat(INSERT_CALENDAR_CLASS)).append(baseRef.current.querySelector('.easepick-wrapper'));
        setPickerInstance(instance);
    }, []);
    (0,react.useEffect)(function () {
        // Handle click outside calendar event
        var modal = baseRef === null || baseRef === void 0 ? void 0 : baseRef.current;
        var handleClickOutside = function (event) {
            setShowCalendar(function (state) {
                if (state && modal && !modal.contains(event.target)) {
                    handleHideCalendar();
                }
                return state;
            });
        };
        document.addEventListener('mousedown', handleClickOutside);
        return function () {
            document.removeEventListener('mousedown', handleClickOutside);
        };
    }, []);
    (0,react.useEffect)(function () {
        if (!pickerInstance)
            return;
        // Set state to picker instants. Otherwise, we have a bug with state closure
        pickerInstance.customProps = { selectedPeriod: selectedPeriod };
    }, [selectedPeriod]);
    (0,react.useEffect)(function () {
        if (!pickerInstance)
            return;
        pickerInstance.setStartDate(period.from);
        pickerInstance.setEndDate(period.to);
        if (showTime) {
            setCalendarTimeFromProps();
        }
        setSelectedPeriod([pickerInstance.getStartDate(), pickerInstance.getEndDate()]);
    }, [pickerInstance, period]);
    (0,react.useEffect)(function () {
        if (!showCalendar && pickerInstance) {
            pickerInstance.setStartDate(period.from);
            pickerInstance.setEndDate(period.to);
            if (showTime) {
                setCalendarTimeFromProps();
            }
            setSelectedPeriod([]);
            setError(false);
            setTooltipMessage(null);
        }
    }, [showCalendar]);
    var resetTime = function (picker, startOrEnd) {
        if (picker === void 0) { picker = pickerInstance; }
        var container = picker.ui.container;
        var hours = container.querySelector("select[name=\"".concat(startOrEnd, "[HH]\"]"));
        dispatchChangeEvent(hours, '12');
        var minutes = container.querySelector("select[name=\"".concat(startOrEnd, "[mm]\"]"));
        dispatchChangeEvent(minutes, '00');
        var amPm = container.querySelector("select[name=\"".concat(startOrEnd, "[period]\"]"));
        dispatchChangeEvent(amPm, 'AM');
    };
    var resizeInput = function () {
        if (!inputRef.current)
            return;
        inputRef.current.style.minWidth = '25ch';
        inputRef.current.style.width = "".concat(inputRef.current.value.length + 1, "ch");
    };
    var setCalendarTimeFromProps = function () {
        var startTime = "".concat(period.from.getHours(), ":").concat(period.from.getMinutes());
        var endTime = "".concat(period.to.getHours(), ":").concat(period.to.getMinutes());
        pickerInstance.setStartTime(startTime);
        pickerInstance.setEndTime(endTime);
        trimInputZeroTime();
    };
    var setApplyButtonAvailability = function (picker, inputValue) {
        if (picker === void 0) { picker = pickerInstance; }
        if (inputValue === void 0) { inputValue = undefined; }
        picker.ui.container.querySelector('.apply-button').disabled = !isInputValueValid(inputValue);
    };
    var trimInputZeroTime = function () {
        if (!inputRef.current)
            return;
        inputRef.current.value = inputRef.current.value.replaceAll(' 12:00am', '');
    };
    var setInputTime = function (picker) {
        if (picker === void 0) { picker = undefined; }
        var container = (picker || pickerInstance).ui.container;
        var startHours = container.querySelector('select[name="start[HH]"]').selectedOptions[0].value;
        var startMinutes = container.querySelector('select[name="start[mm]"]').selectedOptions[0].value;
        var startAmPm = container.querySelector('select[name="start[period]"]').selectedOptions[0].value;
        var endHours = container.querySelector('select[name="end[HH]"]').selectedOptions[0].value;
        var endMinutes = container.querySelector('select[name="end[mm]"]').selectedOptions[0].value;
        var endAmPm = container.querySelector('select[name="end[period]"]').selectedOptions[0].value;
        var startTime = (0,timeUtils/* parseTime */.pe)("".concat(startHours, ":").concat(startMinutes).concat(startAmPm));
        var endTime = (0,timeUtils/* parseTime */.pe)("".concat(endHours, ":").concat(endMinutes).concat(endAmPm));
        picker.setStartTime("".concat(startTime.hours, ":").concat(startTime.minutes));
        picker.setEndTime("".concat(endTime.hours, ":").concat(endTime.minutes));
        trimInputZeroTime();
        resizeInput();
        setApplyButtonAvailability(picker);
    };
    var handleChangeInput = function (value, e) {
        resizeInput();
        var isWrongDate = !DATE_INPUT_REGEXP.test(value);
        setError(isWrongDate);
        setTooltipMessage(null);
        if (isWrongDate) {
            setApplyButtonAvailability();
            return;
        }
        var _a = __read(value.split(' - '), 2), startDateTimeString = _a[0], endDateTimeString = _a[1];
        var _b = __read(startDateTimeString.split(' '), 2), startDateString = _b[0], startTimeString = _b[1];
        var _c = __read(endDateTimeString.split(' '), 2), endDateString = _c[0], endTimeString = _c[1];
        var startDate = new Date(startDateString.slice(0, 10));
        startDate.setHours(0);
        var endDate = new Date(endDateString.slice(0, 10));
        endDate.setHours(0);
        if (startDate > endDate || startDate < currentMinDate || endDate > currentMaxDate) {
            setError(true);
            if (startDate > endDate) {
                setTooltipMessage(l('Start date is greater than end date'));
            }
            if (endDate > currentMaxDate) {
                setTooltipMessage(l('End date is greater than today'));
            }
            if (startDate < currentMinDate) {
                setTooltipMessage(l('Start date is below minimum date'));
            }
            return;
        }
        pickerInstance.datePicked.length = 0;
        if (pickerInstance.getStartDate().getTime() !== startDate.getTime()) {
            pickerInstance.gotoDate(startDate);
        }
        else if (pickerInstance.getEndDate().getTime() !== endDate.getTime()) {
            pickerInstance.gotoDate(endDate);
        }
        var caretPosition = e.target.selectionStart;
        pickerInstance.trigger('preselect', { start: startDate, end: endDate });
        var container = pickerInstance.ui.container;
        if (showTime) {
            if (startTimeString) {
                var startTime = (0,timeUtils/* parseTime */.pe)(startTimeString);
                var startHoursSelect = container.querySelector('select[name="start[HH]"]');
                dispatchChangeEvent(startHoursSelect, startTime.hours12);
                var startMinutesSelect = container.querySelector('select[name="start[mm]"]');
                dispatchChangeEvent(startMinutesSelect, startTime.minutes);
                var startAmPmSelect = container.querySelector('select[name="start[period]"]');
                dispatchChangeEvent(startAmPmSelect, startTime.amPm);
                pickerInstance.setStartTime("".concat(startTime.hours, ":").concat(startTime.minutes));
            }
            else {
                pickerInstance.setStartTime('00:00');
            }
            if (endTimeString) {
                var endTime = (0,timeUtils/* parseTime */.pe)(endTimeString);
                var endHoursSelect = container.querySelector('select[name="end[HH]"]');
                dispatchChangeEvent(endHoursSelect, endTime.hours12);
                var endMinutesSelect = container.querySelector('select[name="end[mm]"]');
                dispatchChangeEvent(endMinutesSelect, endTime.minutes);
                var endAmPmSelect = container.querySelector('select[name="end[period]"]');
                dispatchChangeEvent(endAmPmSelect, endTime.amPm);
                pickerInstance.setEndTime("".concat(endTime.hours, ":").concat(endTime.minutes));
            }
            else {
                pickerInstance.setEndTime('00:00');
            }
            trimInputZeroTime();
        }
        resizeInput();
        e.target.setSelectionRange(caretPosition, caretPosition);
        setApplyButtonAvailability();
    };
    var handleInputEnterPress = function () {
        if (error)
            return;
        handleSaveChanges({
            from: pickerInstance.getStartDate(),
            to: pickerInstance.getEndDate(),
        });
        inputRef.current.blur();
    };
    var handleShowCalendar = function () {
        var endDate = pickerInstance.getEndDate();
        var startDate = pickerInstance.getStartDate();
        pickerInstance.gotoDate((0,subMonths/* default */.A)(endDate, showedMonth - 1));
        setSelectedPeriod([startDate, endDate]);
        setShowCalendar(true);
    };
    var handleHideCalendar = function () {
        setShowCalendar(false);
        // Then we process the hiding in useEffect
    };
    var handleSaveChanges = function (_a, preventHideCalendar) {
        var from = _a.from, to = _a.to;
        if (preventHideCalendar === void 0) { preventHideCalendar = false; }
        onChange({ from: from, to: to });
        if (!preventHideCalendar) {
            handleHideCalendar();
        }
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: Calendar_styles.base, ref: baseRef }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: (0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: tooltipMessage }), show: !!tooltipMessage, position: "top right" }, { children: (0,jsx_runtime.jsx)("div", __assign({ onClick: handleShowCalendar }, { children: (0,jsx_runtime.jsx)(TextField/* default */.A, { className: Calendar_styles.rangeInput, propRef: inputRef, disableFocusOnClick: true, disabled: isDisabled, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "calendar-time" }), onChange: handleChangeInput, onPressEnter: handleInputEnterPress }) })) })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Calendar_styles.calendarWrapper, (_b = {}, _b[Calendar_styles.open] = showCalendar, _b[Calendar_styles.positionRight] = position === 'right', _b[Calendar_styles.positionLeft] = position === 'left', _b)) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: Calendar_styles.period }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: Calendar_styles.periodTitle }, { children: [l('From'), ":"] })), (0,jsx_runtime.jsx)("div", __assign({ className: Calendar_styles.periodDate }, { children: selectedPeriod[0] ? (0,formats/* formatLongLocalizedDate */.DV)(selectedPeriod[0]) : '_____' }))] }), (0,jsx_runtime.jsx)("div", __assign({ className: Calendar_styles.periodArrow }, { children: '->' })), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: Calendar_styles.periodTitle }, { children: [l('To'), ":"] })), (0,jsx_runtime.jsx)("div", __assign({ className: Calendar_styles.periodDate }, { children: selectedPeriod[1] ? (0,formats/* formatLongLocalizedDate */.DV)(selectedPeriod[1]) : '_____' }))] })] })), (0,jsx_runtime.jsx)("div", { className: INSERT_CALENDAR_CLASS })] }))] })));
    function dispatchChangeEvent(elm, value) {
        elm.value = value;
        var event = new Event('change', { bubbles: true });
        elm.dispatchEvent(event);
    }
    function isInputValueValid(inputValue) {
        var _a;
        if (inputValue === void 0) { inputValue = undefined; }
        return DATE_INPUT_REGEXP.test(inputValue || ((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.value));
    }
};
/* harmony default export */ const Calendar_Calendar = ((0,react.memo)(Calendar, arePropsDeepEqual));

;// CONCATENATED MODULE: ./src/components/ui/Calendar/DayPicker.tsx
var DayPicker_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable new-cap */









// Pattern for string string like '2022-09-30'
var DayPicker_DATE_INPUT_REGEXP = new RegExp(/^20\d\d-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$/);
var DayPicker = function (_a) {
    var date = _a.date, onChange = _a.onChange, minDate = _a.minDate, isDisabled = _a.isDisabled, withoutMaxDate = _a.withoutMaxDate;
    var MAX_DATE = new Date();
    var _b = DayPicker_read((0,react.useState)(null), 2), pickerInstance = _b[0], setPickerInstance = _b[1];
    var _c = DayPicker_read((0,react.useState)(false), 2), error = _c[0], setError = _c[1];
    var ref = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        // @ts-ignore
        setPickerInstance(new index_esm/* easepick */.iT.create({
            element: ref.current,
            css: stylesCalendar,
            plugins: [index_esm/* AmpPlugin */.QO, index_esm/* LockPlugin */.JU],
            readonly: false,
            lang: (0,i18n/* detectUserLocale */.$G)(),
            locale: {
                cancel: l('Cancel'),
                apply: l('Apply'),
            },
            // @ts-ignore
            AmpPlugin: {
                dropdown: {
                    months: true,
                    years: true,
                    minYear: MIN_YEAR,
                },
            },
            TimePlugin: {
                format12: (0,i18n/* detectUserLocale */.$G)() === 'en',
            },
            LockPlugin: {
                maxDate: !withoutMaxDate && new Date(),
                minDate: minDate || null,
            },
            setup: function (picker) {
                picker.on('select', function () {
                    onChange((0,timeUtils/* toUTC0Hours */.h8)(picker.getDate()));
                });
                picker.on('render', function (e) {
                    var calendarParams = e.composedPath()[0].getBoundingClientRect();
                    var openToLeft = calendarParams.right > window.innerWidth;
                    var openToTop = calendarParams.bottom > window.innerHeight
                        && (calendarParams.top - calendarParams.height) > 0;
                    if (openToLeft) {
                        e.composedPath()[0].style.left = "-".concat(calendarParams.width, "px");
                    }
                    if (openToTop) {
                        e.composedPath()[0].style.top = "-".concat(calendarParams.height, "px");
                    }
                });
            },
        }));
    }, []);
    (0,react.useEffect)(function () {
        if (!pickerInstance)
            return;
        pickerInstance.setDate(date);
    }, [pickerInstance, date]);
    var handleChange = function (value) {
        var isWrongDate = !DayPicker_DATE_INPUT_REGEXP.test(value);
        setError(isWrongDate);
        if (isWrongDate) {
            return;
        }
        var dateObj = new Date(value);
        if (dateObj < (minDate || MIN_DATE)
            || (!withoutMaxDate && (dateObj > MAX_DATE))) {
            setError(true);
            return;
        }
        pickerInstance.setDate(dateObj);
        pickerInstance.gotoDate(dateObj);
        onChange(dateObj);
    };
    var handleEnterPress = function () {
        if (error)
            return;
        pickerInstance.hide();
        ref.current.blur();
    };
    // Should do it by default, but it's not
    var handleClick = function () {
        pickerInstance.trigger('render');
    };
    return (0,jsx_runtime.jsx)(TextField/* default */.A, { propRef: ref, width: "126px", disableFocusOnClick: true, disabled: isDisabled, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "calendar-time" }), onClick: handleClick, onChange: handleChange, onPressEnter: handleEnterPress });
};
/* harmony default export */ const Calendar_DayPicker = ((0,react.memo)(DayPicker, arePropsDeepEqual));

;// CONCATENATED MODULE: ./src/components/ui/Calendar/index.ts




/***/ }),

/***/ "mR4S":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_Card_Card)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
;// CONCATENATED MODULE: ./src/hooks/useCustomColorScheme.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

// TODO: It is MVP hook

var defaultValue = {
    bodyStyle: undefined,
    cardStyle: undefined,
};
var CustomColorSchemeContext = (0,react.createContext)(defaultValue);
CustomColorSchemeContext.displayName = 'CustomColorSchemeContext';
var CustomColorSchemeProvider = function (_a) {
    var _b;
    var children = _a.children, initialValue = _a.initialValue;
    var _c = __read(useState(), 2), colorScheme = _c[0], setColorScheme = _c[1];
    useEffect(function () {
        setColorScheme(initialValue);
    }, [initialValue]);
    useEffect(function () {
        var _a;
        if ((_a = initialValue === null || initialValue === void 0 ? void 0 : initialValue.bodyStyle) === null || _a === void 0 ? void 0 : _a.backgroundColor) {
            document.body.style.backgroundColor = initialValue.bodyStyle.backgroundColor;
        }
        return function () { document.body.style.backgroundColor = ''; };
    }, [(_b = initialValue === null || initialValue === void 0 ? void 0 : initialValue.bodyStyle) === null || _b === void 0 ? void 0 : _b.backgroundColor]);
    return (_jsx(CustomColorSchemeContext.Provider, __assign({ value: colorScheme }, { children: children })));
};
var useCustomColorScheme = function () {
    var colorScheme = (0,react.useContext)(CustomColorSchemeContext);
    return colorScheme !== null && colorScheme !== void 0 ? colorScheme : defaultValue;
};

// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Card/Card.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Card = ({"base":"v452GCfVYc6NKzvashSQ","stacked":"wBw3cSA_3Gzw8PDQYzWK","fullWidth":"rHUUk54AnW2wxy1Vw4AT","noPadding":"tXO7UtR9KtwmcksU8a3e"});
;// CONCATENATED MODULE: ./src/components/ui/Card/Card.tsx
var Card_assign = (undefined && undefined.__assign) || function () {
    Card_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Card_assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




/**
 * Simple rectangular container
 */
var Card_Card = function (_a) {
    var _b;
    var className = _a.className, children = _a.children, _c = _a.stacked, stacked = _c === void 0 ? false : _c, _d = _a.fullWidth, fullWidth = _d === void 0 ? true : _d, _e = _a.noPadding, noPadding = _e === void 0 ? false : _e, style = _a.style, otherProps = __rest(_a, ["className", "children", "stacked", "fullWidth", "noPadding", "style"]);
    var cardStyle = useCustomColorScheme().cardStyle;
    return ((0,jsx_runtime.jsx)("div", Card_assign({ className: classnames_default()(className, Card.base, (_b = {}, _b[Card.stacked] = stacked, _b[Card.fullWidth] = fullWidth, _b[Card.noPadding] = noPadding, _b)), style: Card_assign(Card_assign({}, style), cardStyle) }, otherProps, { children: children })));
};
/* harmony default export */ const ui_Card_Card = (Card_Card);


/***/ }),

/***/ "ysMX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _Card__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _Card__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("mR4S");



/***/ }),

/***/ "yqM+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Checkbox_CheckboxGroup_CheckboxGroup)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-flip-move/dist/react-flip-move.es.js
var react_flip_move_es = __webpack_require__("2O3R");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Checkbox/CheckboxGroup/CheckboxGroup.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CheckboxGroup = ({"base":"l8jdyEKvDUCVtFFrxmGL","checkbox":"sMDSEqcLETB9iXboFkej"});
;// CONCATENATED MODULE: ./src/components/ui/Checkbox/CheckboxGroup/CheckboxGroup.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var CheckboxGroup_CheckboxGroup = function (props) {
    return ((0,jsx_runtime.jsx)(react_flip_move_es/* default */.A, __assign({ duration: 300, easing: "ease-in", className: classnames_default()(CheckboxGroup.base) }, { children: react.Children.map(props.children, function (child) { return (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(props.classNameCheckbox, CheckboxGroup.checkbox) }, { children: child })); }) })));
};
/* harmony default export */ const Checkbox_CheckboxGroup_CheckboxGroup = (CheckboxGroup_CheckboxGroup);

;// CONCATENATED MODULE: ./src/components/ui/Checkbox/CheckboxGroup/index.ts



/***/ }),

/***/ "KQVx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Checkbox_Checkbox)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/ui/CountLabel/index.ts + 2 modules
var CountLabel = __webpack_require__("a75w");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/CheckboxGroup/index.ts + 2 modules
var CheckboxGroup = __webpack_require__("yqM+");
;// CONCATENATED MODULE: ./src/components/ui/Checkbox/Checkbox.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Checkbox = ({"base":"Hh6EK2BpYvGSKKfDdPBI","disabled":"zB0St1KjfsP2SLkZparw","checkboxIcon":"uhMEgBQSbLCAUC8nz7s5","checkboxLabel":"ePQoAHdyuwF4SX_09qM0"});
;// CONCATENATED MODULE: ./src/components/ui/Checkbox/Checkbox.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};







var Checkbox_Checkbox = function (_a) {
    var _b;
    var isWithoutTitle = _a.isWithoutTitle, isControlled = _a.isControlled, checked = _a.checked, disabled = _a.disabled, indeterminate = _a.indeterminate, value = _a.value, _c = _a.iconTypeTrue, iconTypeTrue = _c === void 0 ? 'checkbox-checked' : _c, _d = _a.iconTypeFalse, iconTypeFalse = _d === void 0 ? 'checkbox-empty' : _d, _e = _a.iconTypeIndeterminate, iconTypeIndeterminate = _e === void 0 ? 'checkbox-indeterminate' : _e, className = _a.className, iconClassName = _a.iconClassName, label = _a.label, counter = _a.counter, title = _a.title, _f = _a.color, color = _f === void 0 ? 'primary' : _f, onChange = _a.onChange;
    var _g = __read((0,react.useState)(checked), 2), isChecked = _g[0], setIsChecked = _g[1];
    (0,react.useEffect)(function () {
        setIsChecked(checked);
    }, [checked]);
    var handleChange = function (e) {
        var checkBoxValue = indeterminate ? true : !isChecked;
        if (!isControlled) {
            setIsChecked(checkBoxValue);
        }
        if (onChange) {
            onChange(value, checkBoxValue, e);
        }
    };
    var getIconType = function () {
        if (isChecked) {
            return indeterminate
                ? iconTypeIndeterminate
                : iconTypeTrue;
        }
        return iconTypeFalse;
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, Checkbox.base, (_b = {}, _b[Checkbox.disabled] = disabled, _b)), onClick: handleChange }, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { type: "button", color: isChecked || indeterminate ? color : undefined, disabled: disabled, className: classnames_default()(Checkbox.checkboxIcon, iconClassName), iconType: getIconType() }), (0,jsx_runtime.jsx)("span", __assign({ role: "presentation", title: isWithoutTitle ? null : (title || label), className: classnames_default()(Checkbox.checkboxLabel) }, { children: label })), (0,jsx_runtime.jsx)(CountLabel/* default */.A, { count: counter })] })));
};
Checkbox_Checkbox.Group = CheckboxGroup/* default */.A;
/* harmony default export */ const ui_Checkbox_Checkbox = (Checkbox_Checkbox);

;// CONCATENATED MODULE: ./src/components/ui/Checkbox/index.ts



/***/ }),

/***/ "YGsB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  K: () => (/* reexport */ ChipSelector_ChipItem),
  I: () => (/* reexport */ ui_ChipSelector_ChipSelector)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/ChipSelector/ChipSelector.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChipSelector = ({"base":"knLkT5dJxFrcdLQZBsMD"});
;// CONCATENATED MODULE: ./src/components/ui/ChipSelector/ChipSelector.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var ChipSelector_ChipSelector = function (_a) {
    var className = _a.className, children = _a.children;
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, ChipSelector.base) }, { children: children })));
};
/* harmony default export */ const ui_ChipSelector_ChipSelector = (ChipSelector_ChipSelector);

;// CONCATENATED MODULE: ./src/components/ui/ChipSelector/ChipItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ChipItem = ({"base":"CkjMgivR2s004zwAGDUB","selected":"RC7VxRtx_V_dpDY9eCLM","bordered":"eqbphDL68qj0TOgGBbll","ai":"toIub0SXqJpJ2Bgegr7e"});
;// CONCATENATED MODULE: ./src/components/ui/ChipSelector/ChipItem.tsx
var ChipItem_assign = (undefined && undefined.__assign) || function () {
    ChipItem_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChipItem_assign.apply(this, arguments);
};



var ChipItem_ChipItem = function (_a) {
    var _b;
    var selected = _a.selected, bordered = _a.bordered, ai = _a.ai, className = _a.className, value = _a.value, label = _a.label, onSelect = _a.onSelect;
    var handleSelect = function (e) {
        if (onSelect) {
            onSelect(value, e);
        }
    };
    return ((0,jsx_runtime.jsx)("div", ChipItem_assign({ className: classnames_default()(className, ChipItem.base, (_b = {}, _b[ChipItem.selected] = selected, _b[ChipItem.bordered] = bordered, _b[ChipItem.ai] = ai, _b)), onClick: handleSelect }, { children: label })));
};
/* harmony default export */ const ChipSelector_ChipItem = (ChipItem_ChipItem);

;// CONCATENATED MODULE: ./src/components/ui/ChipSelector/index.ts




/***/ }),

/***/ "JxIt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_ColorPicker_ColorPicker)
});

// UNUSED EXPORTS: ColorSwatch

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
;// CONCATENATED MODULE: ./src/components/ui/ColorPicker/ColorSwatch.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ColorSwatch = ({"base":"jtd1Z77iV3_sz1ktXgyG","small":"g0nltccPs3Qx_A0eYCCw","selected":"sadfJ0bdIbm97Olu2Nr4"});
;// CONCATENATED MODULE: ./src/components/ui/ColorPicker/ColorSwatch.tsx



var ENTER_KEY = 13;
/**
 * Component for displaying Color Swatch for ColorPicker
 */
var ColorSwatch_ColorSwatch = function (_a) {
    var _b;
    var small = _a.small, color = _a.color, name = _a.name, selected = _a.selected, onSelect = _a.onSelect;
    var handleClick = function () {
        onSelect(name, color);
    };
    var handleKeyDown = function (e) {
        if (e.keyCode === ENTER_KEY) {
            handleClick();
        }
    };
    return ((0,jsx_runtime.jsx)("div", { tabIndex: 0, style: {
            backgroundColor: color,
            borderColor: color,
        }, className: classnames_default()(ColorSwatch.base, (_b = {}, _b[ColorSwatch.selected] = selected, _b[ColorSwatch.small] = small, _b)), onClick: handleClick, onKeyDown: handleKeyDown }));
};
/* harmony default export */ const ColorPicker_ColorSwatch = (ColorSwatch_ColorSwatch);

;// CONCATENATED MODULE: ./src/components/ui/ColorPicker/ColorPicker.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ColorPicker = ({"base":"iOZZCs0bmKIIR63yV_C0","iconButton":"M86qeynCZeZT37xqz5K_"});
;// CONCATENATED MODULE: ./src/components/ui/ColorPicker/ColorPicker.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var ColorPicker_ColorPicker = function (_a) {
    var small = _a.small, colors = _a.colors, selected = _a.selected, className = _a.className, _b = _a.type, type = _b === void 0 ? 'inline' : _b, onSelect = _a.onSelect;
    if (type === 'popover') {
        return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(ColorPicker.base, className) }, { children: (0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ content: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(ColorPicker.base) }, { children: Object.keys(colors).map(function (colorName) { return ((0,jsx_runtime.jsx)(ColorPicker_ColorSwatch, { small: small, name: colorName, color: colors[colorName], selected: selected === colors[colorName] || selected === colorName, onSelect: onSelect }, colorName)); }) })) }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()(ColorPicker.iconButton), iconType: "palette" }) })) })));
    }
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(ColorPicker.base, className) }, { children: Object.keys(colors).map(function (colorName) { return ((0,jsx_runtime.jsx)(ColorPicker_ColorSwatch, { small: small, name: colorName, color: colors[colorName], selected: selected === colors[colorName] || selected === colorName, onSelect: onSelect }, colorName)); }) })));
};
/* harmony default export */ const ui_ColorPicker_ColorPicker = (ColorPicker_ColorPicker);

;// CONCATENATED MODULE: ./src/components/ui/ColorPicker/index.ts




/***/ }),

/***/ "a75w":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_CountLabel_CountLabel)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/CountLabel/CountLabel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CountLabel = ({"base":"QvDB5USEHRX9aGMsgqLg"});
;// CONCATENATED MODULE: ./src/components/ui/CountLabel/CountLabel.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




/**
 * Label for counter of data related to that counter(amount of mentions, posts e.t.c)
 */
var CountLabel_CountLabel = function (_a) {
    var count = _a.count, className = _a.className, onClick = _a.onClick;
    if (!count) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("small", __assign({ className: classnames_default()(className, CountLabel.base), onClick: onClick }, { children: numeral_default()(count).format() })));
};
/* harmony default export */ const ui_CountLabel_CountLabel = (CountLabel_CountLabel);

;// CONCATENATED MODULE: ./src/components/ui/CountLabel/index.ts



/***/ }),

/***/ "3LtM":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ CountryFlag_CountryFlag)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-country-flag/dist/index.es.js
var index_es = __webpack_require__("yaAG");
;// CONCATENATED MODULE: ./src/utils/isWindowsUser.js
var isWindowsUser = function isWindowsUser() {
  return navigator.platform.includes('Win');
};
/* harmony default export */ const utils_isWindowsUser = (isWindowsUser);
;// CONCATENATED MODULE: ./src/components/ui/CountryFlag/CountryFlag.tsx



var CountryFlag = function (_a) {
    var countryCode = _a.countryCode;
    return ((0,jsx_runtime.jsx)("span", { children: (0,jsx_runtime.jsx)(index_es/* default */.A, { svg: utils_isWindowsUser(), code: countryCode }) }));
};
/* harmony default export */ const CountryFlag_CountryFlag = (CountryFlag);

;// CONCATENATED MODULE: ./src/components/ui/CountryFlag/index.ts



/***/ }),

/***/ "82pc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Divider_Divider)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Divider/Divider.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Divider = ({"base":"eX7tV46Qh0qICp_uNpjt","withoutPadding":"by7RQBKpsdIN4GvLe4Dt","vertical":"S673HivOkFXhikZ_q4GQ"});
;// CONCATENATED MODULE: ./src/components/ui/Divider/Divider.tsx



/**
 * Divides things.
 * For protocol: thin line that helps to divide content.
 */
var Divider_Divider = function (_a) {
    var _b;
    var className = _a.className, withoutPadding = _a.withoutPadding, vertical = _a.vertical;
    return ((0,jsx_runtime.jsx)("div", { className: classnames_default()(className, Divider.base, (_b = {}, _b[Divider.withoutPadding] = withoutPadding, _b[Divider.vertical] = vertical, _b)) }));
};
/* harmony default export */ const ui_Divider_Divider = (Divider_Divider);

;// CONCATENATED MODULE: ./src/components/ui/Divider/index.ts



/***/ }),

/***/ "RWtR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ DropDownMenu_DropDownMenu)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Menu/index.ts + 2 modules
var Menu = __webpack_require__("yWfC");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
;// CONCATENATED MODULE: ./src/components/ui/DropDownMenu/DropDownMenu.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




var DropDownMenu = function (_a) {
    var component = _a.component, preventHideOnClick = _a.preventHideOnClick, children = _a.children, otherProps = __rest(_a, ["component", "preventHideOnClick", "children"]);
    if (react.Children.toArray(children).every(function (c) { return !c; }))
        return null;
    var menu = (0,react.useRef)(null);
    var handleHideMenu = function () {
        if (!preventHideOnClick)
            menu.current.hide();
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({}, otherProps, { fitted: true, ref: menu, content: (0,jsx_runtime.jsx)(Menu/* default */.A, __assign({ onClick: handleHideMenu }, { children: children })) }, { children: component })));
};
/* harmony default export */ const DropDownMenu_DropDownMenu = ((0,react.memo)(DropDownMenu));

;// CONCATENATED MODULE: ./src/components/ui/DropDownMenu/index.ts



/***/ }),

/***/ "jRR2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_DynamicsIndicator_DynamicsIndicator)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/SecondaryText/index.ts + 2 modules
var SecondaryText = __webpack_require__("JSD5");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/DynamicsIndicator/DynamicsIndicator.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DynamicsIndicator = ({"percent":"vMGwy_pavuHIZ9MnLtwQ","base":"p2dcKBeNQgzafLKGiF0C"});
;// CONCATENATED MODULE: ./src/components/ui/DynamicsIndicator/DynamicsIndicator.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var ICON_SIZE = 16;
var DynamicsIndicator_DynamicsIndicator = function (_a) {
    var _b;
    var value = _a.value, className = _a.className, _c = _a.showText, showText = _c === void 0 ? true : _c, _d = _a.isPercentDynamics, isPercentDynamics = _d === void 0 ? true : _d;
    var getDisplayValue = function () {
        if (isNaN(value)) {
            return null;
        }
        if (value === Infinity || value === -Infinity) {
            return null;
        }
        return "".concat(Math.abs(value)).concat(isPercentDynamics ? '%' : '');
    };
    var increase = value >= 0;
    var decrease = value < 0;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, DynamicsIndicator.base, (_b = {}, _b[DynamicsIndicator.increase] = increase, _b[DynamicsIndicator.decrease] = decrease, _b)) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: ICON_SIZE, type: increase ? 'arrow-up-bold' : 'arrow-down-bold', color: increase ? 'green' : 'red' }), showText
                && ((0,jsx_runtime.jsx)(SecondaryText/* default */.A, __assign({ className: classnames_default()(DynamicsIndicator.percent) }, { children: getDisplayValue() })))] })));
};
/* harmony default export */ const ui_DynamicsIndicator_DynamicsIndicator = ((0,react.memo)(DynamicsIndicator_DynamicsIndicator));

;// CONCATENATED MODULE: ./src/components/ui/DynamicsIndicator/index.ts



/***/ }),

/***/ "6yp6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_EditableElement_EditableElement)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
;// CONCATENATED MODULE: ./src/components/ui/EditableElement/EditableElement.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EditableElement = ({"base":"jbM3PIn1FV_7eJMqsUw9","editIcon":"Hs44mejwqE8bemT8wZAf","title":"zhD2q837znHW3ruMJraG","editing":"aUJVUm4QXgtTFZ2PDvMh"});
;// CONCATENATED MODULE: ./src/components/ui/EditableElement/EditableElement.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

// @ts-nocheck




var EditableElement_EditableElement = function (_a) {
    var _b;
    var withIconEdit = _a.withIconEdit, className = _a.className, _c = _a.tag, tag = _c === void 0 ? 'span' : _c, children = _a.children, onChange = _a.onChange;
    var _d = __read((0,react.useState)(''), 2), initialValue = _d[0], setInitialValue = _d[1];
    var _e = __read((0,react.useState)(false), 2), isEditing = _e[0], setIsEditing = _e[1];
    var ref = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        setInitialValue(children);
    }, [children]);
    var handleChange = function (value) {
        if (!value) {
            ref.current.textContent = initialValue;
            return;
        }
        if (onChange) {
            onChange(value);
            setInitialValue(value);
        }
        setIsEditing(false);
    };
    var handleBlur = function (e) {
        var textContent = e.target.textContent.trim();
        if (initialValue.trim() !== textContent) {
            handleChange(textContent);
        }
        else {
            setIsEditing(false);
        }
    };
    var handleKeyDownInternal = function (event) {
        if (event.key === 'Escape') {
            ref.current.textContent = initialValue;
            ref.current.blur();
            event.preventDefault();
        }
        else if (event.key === 'Enter') {
            ref.current.blur();
            event.preventDefault();
            setIsEditing(false);
        }
    };
    var Element = tag || 'span';
    return ((0,jsx_runtime.jsx)(Element, __assign({ className: classnames_default()(EditableElement.base, className), contentEditable: true, suppressContentEditableWarning: true, ref: ref, onKeyDown: handleKeyDownInternal, onBlur: handleBlur }, { children: withIconEdit
            ? ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(EditableElement.title, (_b = {}, _b[EditableElement.editing] = isEditing, _b)) }, { children: [children, !isEditing && (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "edit", className: EditableElement.editIcon, onClick: function () { return setIsEditing(true); } })] })))
            : children })));
};
/* harmony default export */ const ui_EditableElement_EditableElement = (EditableElement_EditableElement);


/***/ }),

/***/ "tx68":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_EndorseContent_EndorseContent)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/EndorseContent/EndorseContent.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EndorseContent = ({"emptyState":"yuU0CmDDxHp_pUwqikXl","large":"tLS7vbMi_94ygfNWg5we","emptyStateImage":"hkfSi7hnwRcalu_P8lFQ","emptyStateMessage":"eTS6IX6BCwI2WgAU_Tbi","small":"VbNW0PCqmUoEDX83eKmn","flowing":"Tl6GtNZ6cLL1uzPIecfa","emptyStateTitle":"jIrDcWGZ8Y23b8tee8hG"});
;// CONCATENATED MODULE: ./src/components/ui/EndorseContent/EndorseContent.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var EndorseContent_EndorseContent = function (_a) {
    var _b;
    var flowing = _a.flowing, image = _a.image, title = _a.title, message = _a.message, children = _a.children, large = _a.large, small = _a.small, className = _a.className;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, EndorseContent.emptyState, (_b = {}, _b[EndorseContent.large] = large, _b[EndorseContent.small] = small, _b[EndorseContent.flowing] = flowing, _b)) }, { children: [image
                && ((0,jsx_runtime.jsx)("img", { src: image, className: classnames_default()(EndorseContent.emptyStateImage, EndorseContent.image), alt: "empty state" })), title
                && ((0,react.isValidElement)(title)
                    ? (0,react.cloneElement)(title, { className: classnames_default()(EndorseContent.emptyStateTitle, EndorseContent.title) })
                    : (0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(EndorseContent.emptyStateTitle, EndorseContent.title) }, { children: title }))), message
                && ((0,react.isValidElement)(message)
                    ? (0,react.cloneElement)(message, { className: classnames_default()(EndorseContent.emptyStateMessage, EndorseContent.message) })
                    : (0,jsx_runtime.jsx)("p", __assign({ className: classnames_default()(EndorseContent.emptyStateMessage, EndorseContent.message) }, { children: message }))), children] })));
};
/* harmony default export */ const ui_EndorseContent_EndorseContent = (EndorseContent_EndorseContent);


/***/ }),

/***/ "Ig79":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _EndorseContent__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _EndorseContent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("tx68");



/***/ }),

/***/ "k2G7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Expander_Expander)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
;// CONCATENATED MODULE: ./src/components/ui/Expander/Expander.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};


var Expander = function (_a) {
    var expanded = _a.expanded, _b = _a.duration, duration = _b === void 0 ? 500 : _b, children = _a.children;
    var _c = __read((0,react.useState)(expanded), 2), isExpanded = _c[0], setIsExpanded = _c[1];
    var _d = __read((0,react.useState)(0), 2), contentHeight = _d[0], setContentHeight = _d[1];
    var contentRef = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        setIsExpanded(expanded);
        if (expanded && contentRef.current) {
            setContentHeight(contentRef.current.scrollHeight);
        }
    }, [expanded]);
    var styles = {
        overflow: 'hidden',
        transition: "max-height ".concat(duration / 1000, "s ease-in-out"),
        maxHeight: isExpanded ? "".concat(contentHeight, "px") : '0',
    };
    return ((0,jsx_runtime.jsx)("div", __assign({ style: styles, ref: contentRef }, { children: children })));
};
/* harmony default export */ const Expander_Expander = (Expander);

;// CONCATENATED MODULE: ./src/components/ui/Expander/index.tsx



/***/ }),

/***/ "u4n0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_ExplanationText_ExplanationText)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/ExplanationText/ExplanationText.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ExplanationText = ({"base":"fcoDhzjkaISyQBg0f4XA","withoutMargin":"TenbpzG4BW7km7Wfwd0f"});
;// CONCATENATED MODULE: ./src/components/ui/ExplanationText/ExplanationText.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var ExplanationText_ExplanationText = function (_a) {
    var _b;
    var className = _a.className, children = _a.children, withoutMargin = _a.withoutMargin;
    return ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(ExplanationText.base, className, (_b = {}, _b[ExplanationText.withoutMargin] = withoutMargin, _b)) }, { children: children })));
};
/* harmony default export */ const ui_ExplanationText_ExplanationText = (ExplanationText_ExplanationText);

;// CONCATENATED MODULE: ./src/components/ui/ExplanationText/index.ts



/***/ }),

/***/ "Sdzr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_FilterCheckbox_FilterCheckbox)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
;// CONCATENATED MODULE: ./src/components/ui/FilterCheckbox/FilterCheckboxGroup/FilterCheckboxGroup.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const FilterCheckboxGroup = ({"base":"MC7_w7IcZoszUMvauFAU","tag":"b6_FkVus5GWHSXi298U4"});
;// CONCATENATED MODULE: ./src/components/ui/FilterCheckbox/FilterCheckboxGroup/FilterCheckboxGroup.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var FilterCheckboxGroup_FilterCheckboxGroup = function (props) { return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(FilterCheckboxGroup.base, props.className) }, { children: react.Children.map(props.children, function (child) { return (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(FilterCheckboxGroup.tag, props.tagClassName) }, { children: child }), child.key); }) }))); };
/* harmony default export */ const FilterCheckbox_FilterCheckboxGroup_FilterCheckboxGroup = (FilterCheckboxGroup_FilterCheckboxGroup);

;// CONCATENATED MODULE: ./src/components/ui/FilterCheckbox/FilterCheckboxGroup/index.ts


;// CONCATENATED MODULE: ./src/components/ui/FilterCheckbox/FilterCheckbox.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const FilterCheckbox = ({"base":"KQLNrPiZr1EVMxYF_c8_","excludeIcon":"nNumfGrdnGvpOX0ZO_D3","excludeActive":"YUItz5aGDMI9iH4skTCs","checkbox":"StRbGlP4DCkT0UYr8ObL","checkboxContainer":"ewgmlc58LwMKKZC0JJSc","minusCircle":"nK2QTPqhrh3DV1rmlQra","minus":"AHkYbObEETG3lP1qr7kr","labelContainer":"hY8c6NOvRIOSj_BAYZTk","disabled":"xmkd6zJY1AWEpVp3RJjC","label":"uSbqMDHcSBY6wefArmO6","counter":"P9pzFQ8_tqOAyCgCnkHR"});
;// CONCATENATED MODULE: ./src/components/ui/FilterCheckbox/FilterCheckbox.tsx
var FilterCheckbox_assign = (undefined && undefined.__assign) || function () {
    FilterCheckbox_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return FilterCheckbox_assign.apply(this, arguments);
};






var FilterCheckbox_FilterCheckbox = function (_a) {
    var _b;
    var disabled = _a.disabled, value = _a.value, selected = _a.selected, excluded = _a.excluded, _c = _a.excludable, excludable = _c === void 0 ? true : _c, indeterminate = _a.indeterminate, prefix = _a.prefix, title = _a.title, label = _a.label, labelContainerClassName = _a.labelContainerClassName, count = _a.count, _d = _a.countFormat, countFormat = _d === void 0 ? '0,0' : _d, customExcludedColor = _a.customExcludedColor, customExcludedIconTypeTrue = _a.customExcludedIconTypeTrue, customExcludedIconTypeFalse = _a.customExcludedIconTypeFalse, customSelectedColor = _a.customSelectedColor, customSelectedIconTypeTrue = _a.customSelectedIconTypeTrue, customSelectedIconTypeFalse = _a.customSelectedIconTypeFalse, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var handleExclude = function () {
        if (disabled)
            return;
        onExclude(value, !excluded);
    };
    var handleSelect = function () {
        if (disabled)
            return;
        onSelect(value, !selected);
    };
    return ((0,jsx_runtime.jsxs)("div", FilterCheckbox_assign({ className: classnames_default()(FilterCheckbox.base, (_b = {}, _b[FilterCheckbox.selected] = selected, _b[FilterCheckbox.excluded] = excluded, _b[FilterCheckbox.disabled] = disabled, _b[FilterCheckbox.excludeActive] = !excluded && excludable, _b)) }, { children: [excluded
                ? ((0,jsx_runtime.jsx)(Checkbox/* default */.A, { disabled: disabled, color: customExcludedColor || 'red', iconTypeTrue: customExcludedIconTypeTrue || 'checkbox-minus', iconTypeFalse: customExcludedIconTypeFalse || 'checkbox-empty', className: classnames_default()(FilterCheckbox.checkbox), checked: excluded, indeterminate: indeterminate, value: value, onChange: handleExclude }))
                : ((0,jsx_runtime.jsx)(Checkbox/* default */.A, { disabled: disabled, color: customSelectedColor || 'primary', iconTypeTrue: customSelectedIconTypeTrue || 'checkbox-checked', iconTypeFalse: customSelectedIconTypeFalse || 'checkbox-empty', className: classnames_default()(FilterCheckbox.checkbox), checked: selected, indeterminate: indeterminate, value: value, onChange: handleSelect })), (0,jsx_runtime.jsxs)("div", FilterCheckbox_assign({ className: classnames_default()(labelContainerClassName, FilterCheckbox.labelContainer), onClick: handleSelect }, { children: [(0,jsx_runtime.jsxs)("span", FilterCheckbox_assign({ title: (title || label), className: classnames_default()(FilterCheckbox.label) }, { children: [prefix, ' ', label] })), count
                        ? ((0,jsx_runtime.jsx)("span", FilterCheckbox_assign({ className: classnames_default()(FilterCheckbox.counter) }, { children: numeral_default()(count).format(countFormat) })))
                        : null] })), excludable && !excluded
                && ((0,jsx_runtime.jsx)("div", FilterCheckbox_assign({ className: classnames_default()(FilterCheckbox.excludeIcon), onClick: handleExclude }, { children: (0,jsx_runtime.jsxs)("svg", FilterCheckbox_assign({ width: "12", height: "12", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, { children: [(0,jsx_runtime.jsx)("path", { className: classnames_default()(FilterCheckbox.minusCircle), d: "M15 11H5V9H15V11ZM10 0C8.68678 0 7.38642 0.258658 6.17317 0.761205C4.95991 1.26375 3.85752 2.00035 2.92893 2.92893C1.05357 4.8043 0 7.34784 0 10C0 12.6522 1.05357 15.1957 2.92893 17.0711C3.85752 17.9997 4.95991 18.7362 6.17317 19.2388C7.38642 19.7413 8.68678 20 10 20C12.6522 20 15.1957 18.9464 17.0711 17.0711C18.9464 15.1957 20 12.6522 20 10C20 8.68678 19.7413 7.38642 19.2388 6.17317C18.7362 4.95991 17.9997 3.85752 17.0711 2.92893C16.1425 2.00035 15.0401 1.26375 13.8268 0.761205C12.6136 0.258658 11.3132 0 10 0V0Z" }), (0,jsx_runtime.jsx)("path", { className: classnames_default()(FilterCheckbox.minus), fillRule: "evenodd", clipRule: "evenodd", d: "M5 11H15V9H5V11Z" })] })) })))] })));
};
FilterCheckbox_FilterCheckbox.Group = FilterCheckbox_FilterCheckboxGroup_FilterCheckboxGroup;
/* harmony default export */ const ui_FilterCheckbox_FilterCheckbox = (FilterCheckbox_FilterCheckbox);

;// CONCATENATED MODULE: ./src/components/ui/FilterCheckbox/index.ts



/***/ }),

/***/ "OIx8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_H1_H1)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/H1/H1.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const H1 = ({"base":"dQyEgFtL9jDKhfGaABIX"});
;// CONCATENATED MODULE: ./src/components/ui/H1/H1.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var H1_H1 = function (_a) {
    var className = _a.className, children = _a.children;
    return ((0,jsx_runtime.jsxs)("h1", __assign({ className: classnames_default()(className, H1.base) }, { children: [" ", children, " "] })));
};
/* harmony default export */ const ui_H1_H1 = (H1_H1);

;// CONCATENATED MODULE: ./src/components/ui/H1/index.ts



/***/ }),

/***/ "qJYH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_H2_H2)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
;// CONCATENATED MODULE: ./src/components/ui/H2/H2.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const H2 = ({"base":"nqJGYwWUD4atuZIFU1b3"});
;// CONCATENATED MODULE: ./src/components/ui/H2/H2.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var H2_H2 = function (_a) {
    var textTooltip = _a.textTooltip, className = _a.className, children = _a.children;
    var h2 = (0,jsx_runtime.jsxs)("h2", __assign({ className: classnames_default()(className, H2.base) }, { children: [" ", children, " "] }));
    if (textTooltip) {
        return ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(className, H2.base) }, { children: (0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: textTooltip }, { children: h2 })) })));
    }
    return h2;
};
/* harmony default export */ const ui_H2_H2 = (H2_H2);

;// CONCATENATED MODULE: ./src/components/ui/H2/index.ts



/***/ }),

/***/ "cxg2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_H3_H3)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/H3/H3.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const H3 = ({"base":"MCXGvTySM_TZ3pBNg85s","subtitle":"jlqOfDqm5EgVNwDwb23T"});
;// CONCATENATED MODULE: ./src/components/ui/H3/H3.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var H3_H3 = function (_a) {
    var _b;
    var style = _a.style, className = _a.className, children = _a.children, withSubtitle = _a.withSubtitle;
    return ((0,jsx_runtime.jsxs)("h3", __assign({ style: style, className: classnames_default()(className, H3.base, (_b = {}, _b[H3.subtitle] = withSubtitle, _b)) }, { children: [" ", children, " "] })));
};
/* harmony default export */ const ui_H3_H3 = (H3_H3);

;// CONCATENATED MODULE: ./src/components/ui/H3/index.ts



/***/ }),

/***/ "NPdn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Hotkeys_Hotkeys)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/hotkeys-js/dist/hotkeys.esm.js
var hotkeys_esm = __webpack_require__("m2rO");
;// CONCATENATED MODULE: ./src/components/ui/Hotkeys/Hotkeys.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Hotkeys = ({"base":"sFmKLlhsh2jiMXt924vG"});
;// CONCATENATED MODULE: ./src/components/ui/Hotkeys/Hotkeys.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var Hotkeys_Hotkeys = function (_a) {
    var _b = _a.enabled, enabled = _b === void 0 ? true : _b, _c = _a.focused, focused = _c === void 0 ? true : _c, id = _a.id, hotkeyHandlers = _a.hotkeyHandlers, onFocus = _a.onFocus, children = _a.children;
    var ref = (0,react.useRef)(null);
    (0,react.useEffect)(function () {
        if (focused && enabled) {
            hotkeyHandlers.forEach(function (_a) {
                var hotkey = _a.hotkey, handler = _a.handler;
                (0,hotkeys_esm/* default */.A)(hotkey, handler);
            });
            return function () {
                hotkeyHandlers.forEach(function (_a) {
                    var hotkey = _a.hotkey;
                    hotkeys_esm/* default */.A.unbind(hotkey);
                });
            };
        }
    }, [enabled, focused, hotkeyHandlers]);
    (0,react.useEffect)(function () {
        var element = ref.current;
        if (element && onFocus) {
            element.addEventListener('focus', onFocus);
            return function () {
                element.removeEventListener('focus', onFocus);
            };
        }
    }, [onFocus]);
    return ((0,jsx_runtime.jsx)("div", __assign({ ref: ref, id: id === null || id === void 0 ? void 0 : id.toString(), className: Hotkeys.base, tabIndex: 0 }, { children: children })));
};
/* harmony default export */ const ui_Hotkeys_Hotkeys = (Hotkeys_Hotkeys);

;// CONCATENATED MODULE: ./src/components/ui/Hotkeys/index.ts



/***/ }),

/***/ "FW6l":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _iconTypes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("pk8e");
/* harmony import */ var _Icon_less__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("9B2a");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




/**
 * Component for displaying Icon. We're using Material Design Icons
 */
var Icon = function (_a) {
    var _b;
    var type = _a.type, color = _a.color, size = _a.size, spinning = _a.spinning, pulsating = _a.pulsating, className = _a.className, style = _a.style, onClick = _a.onClick, otherProps = __rest(_a, ["type", "color", "size", "spinning", "pulsating", "className", "style", "onClick"]);
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("i", __assign({ style: __assign({ fontSize: _iconTypes__WEBPACK_IMPORTED_MODULE_2__/* .SIZES */ .F0[size || 'default'] || size || 'inherit' }, style), className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_iconTypes__WEBPACK_IMPORTED_MODULE_2__/* .iconTypes */ .xA[type], _Icon_less__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A[color], _Icon_less__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.base, className, (_b = {},
            _b[_Icon_less__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.clickable] = !!onClick,
            _b[_Icon_less__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.spinning] = spinning,
            _b[_Icon_less__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.pulsating] = pulsating,
            _b)), onClick: onClick }, otherProps)));
};
Icon.colors = _iconTypes__WEBPACK_IMPORTED_MODULE_2__/* .COLORS */ .lm;
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Icon);


/***/ }),

/***/ "pk8e":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  lm: () => (/* binding */ COLORS),
  F0: () => (/* binding */ SIZES),
  xA: () => (/* binding */ iconTypes)
});

;// CONCATENATED MODULE: ./src/components/ui/Icon/types.json
const types_namespaceObject = /*#__PURE__*/JSON.parse('{"engagement":"mdi mdi-thumbs-up-down","conversations":"mdi mdi-account-voice","t-box":"mdi mdi-alpha-t-box-outline","message-alert":"mdi mdi-message-alert","ai":"mdi mdi-shimmer","pin":"mdi mdi-pin","ai-send":"mdi mdi-send","ai-history":"mdi mdi-bookshelf","ai-history-list":"mdi mdi-list-box","home":"mdi mdi-home","currency-usd":"mdi mdi-currency-usd","code-braces":"mdi mdi-code-braces","bookmark-outline":"mdi mdi-bookmark-outline","bookmark":"mdi mdi-bookmark","cloud-print-outline":"mdi mdi-cloud-print-outline","forum-outline":"mdi mdi-forum-outline","earth-box":"mdi mdi-earth-box","chart-box-outline":"mdi mdi-chart-box-outline","message":"mdi mdi-message","explore":"mdi mdi-compass","magic":"mdi mdi-shimmer","circle":"mdi mdi-circle","circle-half":"mdi mdi-circle-half","equal":"mdi mdi-equal","not-equal":"mdi mdi-not-equal-variant","greater-or-equal":"mdi mdi-greater-than-or-equal","less-or-equal":"mdi mdi-less-than-or-equal","chevron-down":"mdi mdi-chevron-down","chevron-up":"mdi mdi-chevron-up","chevron-left":"mdi mdi-chevron-left","chevron-right":"mdi mdi-chevron-right","chevron-double-up":"mdi mdi-chevron-double-up","arrow-down-bold":"mdi mdi-arrow-down-bold","arrow-up-bold":"mdi mdi-arrow-up-bold","arrow-down-thin":"mdi mdi-arrow-down-thin","arrow-up-thin":"mdi mdi-arrow-up-thin","arrow-all":"mdi mdi-arrow-all","expand":"mdi mdi-arrow-expand","help-circle":"mdi mdi-help-circle","menu-up":"mdi mdi-menu-up","menu-down":"mdi mdi-menu-down","menu-left":"mdi mdi-menu-left","menu-right":"mdi mdi-menu-right","checkbox-empty":"mdi mdi-checkbox-blank-outline","check":"mdi mdi-check","check-all":"mdi mdi-check-all","check-circle":"mdi mdi-check-circle","check-circle-outline":"mdi mdi-check-circle-outline","check-bold":"mdi mdi-check-bold","checkbox-blank":"mdi mdi-checkbox-blank","checkbox-blank-badge-outline":"mdi mdi-checkbox-blank-badge-outline","checkbox-checked":"mdi mdi-checkbox-marked","checkbox-checked-outline":"mdi mdi-checkbox-marked-outline","checkbox-indeterminate":"mdi mdi-minus-box","checkbox-minus":"mdi mdi-minus-box","checkbox-minus-outline":"mdi mdi-minus-box-outline","checkbox-checked-multiple":"mdi mdi-checkbox-multiple-marked","checkbox-marked-circle":"mdi mdi-checkbox-marked-circle","exclude":"mdi mdi-window-minimize","minus":"mdi mdi-minus","minus-circle":"mdi mdi-minus-circle","minus-circle-outline":"mdi mdi-minus-circle-outline","user-box-empty":"mdi mdi-account-box-outline","user-box-full":"mdi mdi-account-box","radio-empty":"mdi mdi-radiobox-blank","radio-full":"mdi mdi-radiobox-marked","info":"mdi mdi-information","info-outline":"mdi mdi-information-outline","circle-edit-outline":"mdi mdi-circle-edit-outline","filter":"mdi mdi-filter","filter-new":"mdi mdi-filter","filter-outline":"mdi mdi-filter-outline","calendar":"mdi mdi-calendar-blank","calendar-close":"mdi mdi-calendar-remove","calendar-time":"mdi mdi-calendar-clock","clock":"mdi mdi-clock","clock-outline":"mdi mdi-clock-outline","time-start":"mdi mdi-clock-start","time-end":"mdi mdi-clock-end","close":"mdi mdi-close","cancel":"mdi mdi-cancel","save":"mdi mdi-content-save","key":"mdi mdi-key","receipt":"mdi mdi-receipt","credit-card":"mdi mdi-credit-card","error":"mdi mdi-close-circle","alert":"mdi mdi-alert-circle","success":"mdi mdi-check-circle","warning":"mdi mdi-alert","announcement":"mdi mdi-bullhorn","academy":"mdi mdi-school","compare":"mdi mdi-arrange-bring-forward","bar-chart":"fa fa-bar-chart","chart-bar":"mdi mdi-chart-bar","chart-line":"mdi mdi-chart-line","chart-scatter":"mdi mdi-chart-scatter-plot","chart-scatter-hexbin":"mdi mdi-chart-scatter-plot-hexbin","tags":"mdi mdi-tag-multiple","trend":"mdi mdi-chart-line-variant","trending-up":"mdi mdi-trending-up","users":"mdi mdi-account-multiple","user":"mdi mdi-account","new-features":"mdi mdi-creation","mention-wall":"mdi mdi-presentation-play","rules":"mdi mdi-auto-fix","integration":"mdi mdi-send","gallery":"mdi mdi-view-dashboard","dashboard":"mdi mdi-chart-areaspline-variant","stream":"mdi mdi-view-stream","settings":"mdi mdi-cog","authors":"mdi mdi-account-multiple","notifications":"mdi mdi-email","email-outline":"mdi mdi-email-outline","message-outline":"mdi mdi-chat-outline","alerts":"mdi mdi-bell","alerts-plus":"mdi mdi-bell-plus","alerts-mark":"mdi mdi-bell-check","reports":"mdi mdi-download","download":"mdi mdi-download","download-outline":"mdi mdi-download-circle-outline","pdf":"mdi mdi-file-chart","sources":"mdi mdi-web","spam":"mdi mdi-fire","geo":"mdi mdi-map-marker","attention":"mdi  mdi-alert-circle","trash":"mdi mdi-delete","help":"mdi mdi-help","login":"mdi mdi-login-variant","print":"mdi mdi-printer","video":"mdi mdi-video","woman":"mdi mdi-human-female","man":"mdi mdi-human-male","male":"mdi mdi-human-male","female":"mdi mdi-human-female","gender-undefined":"mdi mdi-account-question","sentiment-undefined":"mdi mdi-help-circle-outline","positive":"mdi mdi-emoticon-happy-outline","negative":"mdi mdi-emoticon-sad-outline","neutral":"mdi mdi-emoticon-neutral-outline","earth":"mdi mdi-earth","power":"mdi mdi-power","doNotSave":"mdi mdi-playlist-remove","commercial":"mdi mdi-tag-outline","donation":"mdi mdi-hand-heart","porno":"mdi mdi-alert-decagram","news":"mdi mdi-newspaper","bots":"mdi mdi-robot","community":"mdi mdi-account-group","promotion":"mdi mdi-bullhorn","wom":"mdi mdi-account-voice","article":"mdi mdi-text-box","activation":"mdi mdi-lightbulb-on","intent":"mdi mdi-crop-free","porn":"mdi mdi-block-helper","pornImage":"mdi mdi-block-helper","recipe":"mdi mdi-food-variant","teaserBeta":"mdi mdi-dots-horizontal","listBeta":"mdi mdi-format-list-numbered","captionBeta":"mdi mdi-image","nonsenseBeta":"mdi mdi-comment-question-outline","socialPromo":"mdi mdi-account-voice","giveaway":"mdi mdi-gift","vacancy":"mdi mdi-briefcase","advertisement":"mdi mdi-bullseye-arrow","comment":"mdi mdi-comment","comment-multiple-outline":"mdi mdi-comment-multiple-outline","share":"mdi mdi-share-variant","post":"mdi mdi-post","repost":"mdi mdi-repeat","heart":"mdi mdi-heart","like":"mdi mdi-thumb-up","dislike":"mdi mdi-thumb-down","sticker":"mdi mdi-sticker-emoji","unprocessed":"mdi mdi-inbox","processed":"mdi mdi-check-all","star":"mdi mdi-star-outline","star-full":"mdi mdi-star","star-half":"mdi mdi-star-half","potential-reach":"mdi mdi-account-multiple-plus","reach":"mdi mdi-account-multiple","duplicate":"mdi mdi-content-copy","similar":"mdi mdi-content-duplicate","eye":"mdi mdi-eye","eye-outline":"mdi mdi-eye-outline","eye-off-outline":"mdi mdi-eye-off-outline","eye-off":"mdi mdi-eye-off","none":"mdi mdi-block-helper","manage":"mdi mdi-television","dot":"mdi mdi-record","menu":"mdi mdi-menu","plus":"mdi mdi-plus","plus-circle-outline":"mdi mdi-plus-circle-outline","plus-circle":"mdi mdi-plus-circle","group-chat":"mdi mdi-account-group","search":"mdi mdi-magnify","delete":"mdi mdi-delete","restore":"mdi mdi-backup-restore","edit":"mdi mdi-pencil","export":"mdi mdi-file-export","open":"mdi mdi-open-in-new","dots":"mdi mdi-dots-vertical","dots-horizontal":"mdi mdi-dots-horizontal","assign":"mdi mdi-account","back":"mdi mdi-arrow-left","next":"mdi mdi-arrow-right","arrow-right":"mdi mdi-arrow-right","code":"mdi mdi-code-tags","quote":"mdi mdi-format-quote","sort":"mdi mdi-sort","refresh":"mdi mdi-refresh","loading":"mdi mdi-loading","view":"mdi mdi-eye","impressions":"mdi mdi-eye-plus","list":"mdi mdi-format-list-bulleted","update":"mdi mdi-update","null":"mdi mdi-null","email":"mdi mdi-email","copy":"mdi mdi-content-copy","history":"mdi mdi-history","experimental":"mdi mdi-flask-outline","private":"mdi mdi-lock","alert-decagram":"mdi mdi-alert-decagram","text":"mdi mdi-text-subject","image":"mdi mdi-image","location":"mdi mdi-map-marker","album":"mdi mdi-image-album","account-multiple":"mdi mdi-account-multiple","no-excluded-authors":"mdi mdi-account-search","infinity":"mdi mdi-notification-clear-all","infinite":"mdi mdi-infinity","crm":"mdi mdi-clipboard-account","link":"mdi mdi-link-variant","facebook":"mdi mdi-facebook-box","slack":"mdi mdi-slack","telegram":"mdi mdi-telegram","webinar":"mdi mdi-message-video","help-box":"mdi mdi-help-box","poll":"mdi mdi-poll","subtitles":"mdi mdi-closed-caption","pound":"mdi mdi-pound","palette":"mdi mdi-palette","help-outline":"mdi mdi-help-circle-outline","progress-alert":"mdi mdi-progress-alert","exit-to-app":"mdi mdi-exit-to-app","womReview":"mdi mdi-comment-text-outline","womQuestion":"mdi mdi-help-circle-outline","womComparison":"mdi mdi-scale-balance","womComplaint":"mdi mdi-emoticon-cry-outline","womRecommendation":"mdi mdi-thumbs-up-down","womOfficialResponse":"mdi mdi-face-agent","womObjectInHashtag":"mdi mdi-pound","reload":"mdi mdi-reload","pdf-box":"mdi mdi-pdf-box","swap":"mdi mdi-swap-vertical","shield-alert":"mdi mdi-shield-alert","chart-donut":"mdi mdi-chart-donut","caution-sign":"mdi mdi-sign-caution","numeric-circle-2":"mdi mdi-numeric-2-circle-outline","numeric-circle-3":"mdi mdi-numeric-3-circle-outline","numeric-circle-4":"mdi mdi-numeric-4-circle-outline","numeric-circle-5":"mdi mdi-numeric-5-circle-outline","numeric-circle-6":"mdi mdi-numeric-6-circle-outline","numeric-circle-7":"mdi mdi-numeric-7-circle-outline","numeric-circle-8":"mdi mdi-numeric-8-circle-outline","numeric-circle-9":"mdi mdi-numeric-9-circle-outline","numeric-circle-9-plus":"mdi mdi-numeric-9-plus-circle-outline"}');
;// CONCATENATED MODULE: ./src/components/ui/Icon/iconTypes.ts

var iconTypes = types_namespaceObject;
var COLORS = [
    'default',
    'inherit',
    'primary',
    'secondary',
    'amber',
    'red',
    'gray',
    'lightgray',
    'black',
    'white',
    'green',
    'blue',
    'pink',
    'orange',
    'purple'
];
var SIZES = {
    default: 16,
    small: 14,
    medium: 20,
    large: 24,
    parent: 'inherit',
};


/***/ }),

/***/ "LtxQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  p: () => (/* reexport */ Icon_SentimentIcon),
  A: () => (/* reexport */ Icon/* default */.A)
});

// EXTERNAL MODULE: ./src/components/ui/Icon/Icon.tsx
var Icon = __webpack_require__("FW6l");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/components/ui/Icon/iconTypes.ts + 1 modules
var iconTypes = __webpack_require__("pk8e");
// EXTERNAL MODULE: ./src/components/ui/Icon/Icon.less
var Icon_Icon = __webpack_require__("9B2a");
;// CONCATENATED MODULE: ./src/components/ui/Icon/SentimentIcon.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};





/**
 * Component for displaying Icon. We're using Material Design Icons
 */
var SentimentIcon = function (_a) {
    var _b;
    var _c = _a.isActive, isActive = _c === void 0 ? true : _c, type = _a.type, size = _a.size, className = _a.className, onClick = _a.onClick, otherProps = __rest(_a, ["isActive", "type", "size", "className", "onClick"]);
    return ((0,jsx_runtime.jsx)("i", __assign({ style: {
            fontSize: iconTypes/* SIZES */.F0[size || 'default'] || size || 'inherit',
            color: isActive ? (0,colors/* getSentimentColor */.HS)(type) : (0,colors/* getColorsByTheme */.hx)().iconsColor,
        }, className: classnames_default()(iconTypes/* iconTypes */.xA[type], Icon_Icon/* default */.A.base, className, (_b = {},
            _b[Icon_Icon/* default */.A.clickable] = !!onClick,
            _b)), onClick: onClick }, otherProps)));
};
/* harmony default export */ const Icon_SentimentIcon = (SentimentIcon);

;// CONCATENATED MODULE: ./src/components/ui/Icon/index.ts




/***/ }),

/***/ "owUz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_IconButton_IconButton)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/IconButton/IconButton.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const IconButton = ({"base":"J9Tz00FHIsv_ZhPVMIBi","icon":"DA2A71rffzmpqhOtiM5G","large":"swS31T2gja5xiJzwKS90","small":"pL0D0vetvZiC1wHLWsfg","mini":"JX169Sn2QRKfSmjLfUhw","disabled":"vBmeq5rx_GJnKN4MRjYV"});
;// CONCATENATED MODULE: ./src/components/ui/IconButton/IconButton.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};





var COLORS = Icon/* default */.A.colors;
var IconButton_IconButton = function (_a) {
    var _b;
    var iconType = _a.iconType, className = _a.className, color = _a.color, small = _a.small, mini = _a.mini, large = _a.large, tooltip = _a.tooltip, _c = _a.tooltipPosition, tooltipPosition = _c === void 0 ? 'top center' : _c, disabled = _a.disabled, size = _a.size, onClick = _a.onClick, _d = _a.getSubstituteIcon, getSubstituteIcon = _d === void 0 ? null : _d, otherProps = __rest(_a, ["iconType", "className", "color", "small", "mini", "large", "tooltip", "tooltipPosition", "disabled", "size", "onClick", "getSubstituteIcon"]);
    var handleClick = function (e) {
        if (disabled) {
            e.preventDefault();
            e.stopPropagation();
            return;
        }
        if (onClick) {
            onClick(e);
        }
    };
    var classes = classnames_default()(className, IconButton.base, (_b = {}, _b[IconButton.disabled] = disabled, _b[IconButton.small] = small, _b[IconButton.mini] = mini, _b[IconButton.large] = large, _b));
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: tooltip, position: tooltipPosition }, { children: (0,jsx_runtime.jsx)("button", __assign({ type: "button" }, otherProps, { className: classes, onClick: handleClick }, { children: getSubstituteIcon
                ? getSubstituteIcon(iconType)
                : ((0,jsx_runtime.jsx)(Icon/* default */.A, { size: size, className: classnames_default()(IconButton.icon), type: iconType, color: color })) })) })));
};
/* harmony default export */ const ui_IconButton_IconButton = (IconButton_IconButton);

;// CONCATENATED MODULE: ./src/components/ui/IconButton/index.ts



/***/ }),

/***/ "Hyk5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_IconCountBadge_IconCountBadge)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/IconCountBadge/IconCountBadge.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const IconCountBadge = ({"base":"ToVWZSZ1yTXROfIXlZcb","icon":"sdn2lrF4pRgvZ9KeJUdt"});
;// CONCATENATED MODULE: ./src/components/ui/IconCountBadge/IconCountBadge.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var IconCountBadge_IconCountBadge = function (_a) {
    var count = _a.count, iconType = _a.iconType, _b = _a.countFormat, countFormat = _b === void 0 ? '0 a' : _b;
    return ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(IconCountBadge.base) }, { children: (0,jsx_runtime.jsxs)(Tooltip/* default */.A, __assign({ text: numeral_default()(count).format() }, { children: [iconType && (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 9, type: iconType, className: classnames_default()(IconCountBadge.icon) }), numeral_default()(count).format(countFormat)] })) })));
};
/* harmony default export */ const ui_IconCountBadge_IconCountBadge = (IconCountBadge_IconCountBadge);

;// CONCATENATED MODULE: ./src/components/ui/IconCountBadge/index.ts



/***/ }),

/***/ "YQ6q":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("9rZX");
/* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_modal__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var components_ui_ProcessedImage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("PsVH");
/* harmony import */ var components_ui_Badge__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("5d8y");
/* harmony import */ var components_other_SuspiciousImageHandler__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("qWR2");
/* harmony import */ var _ImagePreviewDetail__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("oTco");
/* harmony import */ var _ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("p6zf");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









/**
 * Component for images preview and async loading
 */
var ImagePreview = function (_a) {
    var isSuspiciousContent = _a.isSuspiciousContent, isSquareImage = _a.isSquareImage, showVisualInsights = _a.showVisualInsights, showFeedbackLoop = _a.showFeedbackLoop, className = _a.className, src = _a.src, alt = _a.alt, imageColors = _a.imageColors, imageType = _a.imageType, imageSubtype = _a.imageSubtype, imageBrands = _a.imageBrands, imageObjects = _a.imageObjects, imageScenes = _a.imageScenes, imagePeople = _a.imagePeople, imageActivities = _a.imageActivities, imageContentSensitivity = _a.imageContentSensitivity, squareImageSize = _a.squareImageSize, ocrTexts = _a.ocrTexts, feedbackLoopViSmartFeatures = _a.feedbackLoopViSmartFeatures, inView = _a.inView, onChangeSmartFeature = _a.onChangeSmartFeature, onError = _a.onError, onClickImageTag = _a.onClickImageTag;
    var _b = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false), 2), isOpened = _b[0], setIsOpened = _b[1];
    var _c = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false), 2), isReady = _c[0], setIsReady = _c[1];
    var _d = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false), 2), isLoadFailed = _d[0], setIsLoadFailed = _d[1];
    var _e = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(isSuspiciousContent), 2), isSuspicious = _e[0], setIsSuspicious = _e[1];
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        setIsSuspicious(isSuspiciousContent);
    }, [isSuspiciousContent]);
    var getIsInView = function () {
        if (typeof inView !== 'boolean')
            return true;
        return inView;
    };
    var isInView = getIsInView();
    var handleLoadSuccess = function () {
        setIsReady(true);
        setIsLoadFailed(false);
    };
    var handleLoadFail = function (e) {
        onError === null || onError === void 0 ? void 0 : onError(e);
        setIsLoadFailed(true);
    };
    var handleModalOpen = function () {
        setIsOpened(true);
    };
    var handleModalClose = function () {
        setIsOpened(false);
    };
    var resetImageData = function () {
        var image = new Image();
        image.src = src;
        image.onload = handleLoadSuccess;
        image.onerror = handleLoadFail;
    };
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        resetImageData();
    }, []);
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        setIsReady(false);
        setIsLoadFailed(false);
        resetImageData();
    }, [src]);
    var getImageTags = function () {
        return [
            { type: 'imageBrand', label: l('Logos'), data: imageBrands },
            { type: 'imageObject', label: l('Objects'), data: imageObjects },
            { type: 'imageScene', label: l('Scenes'), data: imageScenes },
            { type: 'imagePeople', label: l('People'), data: imagePeople },
            { type: 'imageActivities', label: l('Activities'), data: imageActivities },
            { label: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Badge__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.Support, {}), " ", l('Content sensitivity')] }), data: imageContentSensitivity }
        ];
    };
    var renderError = function () { return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.placeholder, _ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.error, className) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("img", { className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.errorImage), src: "/static/images/no_image.svg", alt: "error" }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.errorText) }, { children: l('Could not load this image') }))] }))); };
    var renderPlaceHolder = function () { return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.placeholder, className) }); };
    var renderImage = function () {
        if (isLoadFailed)
            return renderError();
        if (!isReady && !isInView)
            return renderPlaceHolder();
        var hasImageBrands = imageBrands === null || imageBrands === void 0 ? void 0 : imageBrands.length;
        var hasOcrTexts = ocrTexts === null || ocrTexts === void 0 ? void 0 : ocrTexts.length;
        return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_other_SuspiciousImageHandler__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A, __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.base, className), isSuspicious: isSuspicious, onClick: function () { return setIsSuspicious(false); } }, { children: (hasImageBrands || hasOcrTexts) && isInView
                ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_ProcessedImage__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A, { isSquareImage: isSquareImage, src: src, alt: alt, className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.base, className), imageBrands: imageBrands, squareImageSize: squareImageSize, ocrTexts: ocrTexts, onClick: handleModalOpen }))
                : ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("img", { alt: alt, src: src, className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.base, className), onClick: handleModalOpen })) })));
    };
    var renderModal = function () { return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)((react_modal__WEBPACK_IMPORTED_MODULE_2___default()), __assign({ isOpen: isOpened, className: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.modal), overlayClassName: classnames__WEBPACK_IMPORTED_MODULE_3___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A.modalOverlay), onRequestClose: handleModalClose }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_ImagePreviewDetail__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A, { showOcrInLabels: true, src: src, alt: alt, feedbackLoopViSmartFeatures: feedbackLoopViSmartFeatures, imageTags: getImageTags(), imageBrands: imageBrands, imageColors: imageColors, imageSubtype: imageSubtype, imageType: imageType, ocrTexts: ocrTexts, showFeedbackLoop: showFeedbackLoop, showVisualInsights: showVisualInsights, onClick: handleModalClose, onChangeSmartFeature: onChangeSmartFeature, onImageTagClick: onClickImageTag }) }))); };
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [renderImage(), isInView && renderModal()] }));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react__WEBPACK_IMPORTED_MODULE_1__.memo)(ImagePreview));


/***/ }),

/***/ "oTco":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var components_ui_IconButton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("owUz");
/* harmony import */ var components_ui_ProcessedImage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("PsVH");
/* harmony import */ var components_helpers_VerticalSpacer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("RrxW");
/* harmony import */ var components_helpers_HorizontalSpacer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("5DQj");
/* harmony import */ var containers_SmartFeaturesFeedbackLoop__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("tZc3");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("p6zf");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};








var ImagePreviewDetail = function (_a) {
    var imageTags = _a.imageTags, imageBrands = _a.imageBrands, imageType = _a.imageType, imageSubtype = _a.imageSubtype, imageColors = _a.imageColors, ocrTexts = _a.ocrTexts, className = _a.className, alt = _a.alt, src = _a.src, showVisualInsights = _a.showVisualInsights, showOcrInLabels = _a.showOcrInLabels, showConfidenceTooltip = _a.showConfidenceTooltip, hideOcrBoundingBox = _a.hideOcrBoundingBox, feedbackLoopViSmartFeatures = _a.feedbackLoopViSmartFeatures, showFeedbackLoop = _a.showFeedbackLoop, _b = _a.viewMode, viewMode = _b === void 0 ? 'modal' : _b, onClick = _a.onClick, onChangeSmartFeature = _a.onChangeSmartFeature, onImageTagClick = _a.onImageTagClick;
    if (showVisualInsights || (ocrTexts && ocrTexts.length)) {
        return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ role: "presentation", className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(className, _ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.procesedImage, _ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A["".concat(viewMode, "Mode")]) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_ProcessedImage__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A, { src: src, alt: alt, className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.openedImage), imageBrands: imageBrands, ocrTexts: hideOcrBoundingBox ? null : ocrTexts, onClick: onClick, maxViewHeight: 90, maxViewWidth: 45 }), imageTags && (imageTags === null || imageTags === void 0 ? void 0 : imageTags.length)
                    ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_HorizontalSpacer__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A, {}), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tagsContainer), "data-custom-class-name": "tagsContainer" }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.feedbackContainer) }, { children: showVisualInsights && showFeedbackLoop && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(containers_SmartFeaturesFeedbackLoop__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A, { darkMode: true, position: "bottom left", activeFeatureName: "visualInsights", selected: feedbackLoopViSmartFeatures, trigger: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.feedbackVisualInsight) }, { children: [l('Visual Insight'), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_IconButton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, { className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.dots), iconType: "circle-edit-outline" })] })), onChange: onChangeSmartFeature })) })), imageType && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tagLabel), "data-custom-class-name": "tagLabel" }, { children: [l('Image type'), ":"] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tags) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tag), style: { cursor: onImageTagClick ? 'pointer' : 'default' }, onClick: function () { return onImageTagClick({ type: 'imageType', value: imageType }); } }, { children: imageType.toLowerCase() })), imageSubtype && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tag), style: { cursor: onImageTagClick ? 'pointer' : 'default' }, onClick: function () { return onImageTagClick({ type: 'imageSubtype', value: imageSubtype }); } }, { children: imageSubtype })))] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_VerticalSpacer__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, { double: true })] })), imageTags.map(function (imageTag) {
                                        var _a;
                                        return (((_a = imageTag.data) === null || _a === void 0 ? void 0 : _a.length)
                                            ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tagLabel), "data-custom-class-name": "tagLabel" }, { children: [imageTag.label, ":"] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tags) }, { children: imageTag.data.map(function (tag) {
                                                            return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tag), style: { cursor: imageTag.type && onImageTagClick ? 'pointer' : 'default' }, title: showConfidenceTooltip
                                                                    ? "confidence: ".concat(tag.confidence)
                                                                    : tag.label, onClick: function () { return onImageTagClick({ type: imageTag.type, value: tag.label }); } }, { children: tag.label }), tag.label);
                                                        }) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_VerticalSpacer__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, { double: true })] }))
                                            : null);
                                    }), (imageColors === null || imageColors === void 0 ? void 0 : imageColors.length)
                                        ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tagLabel), "data-custom-class-name": "tagLabel" }, { children: [l('Colors'), ":"] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tags) }, { children: imageColors.map(function (colorObject) {
                                                        return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { title: colorObject.color, className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.color), style: {
                                                                backgroundColor: colorObject.color,
                                                            }, onClick: function () { return onImageTagClick({ type: 'imageColor', value: colorObject.color }); } }, colorObject.color);
                                                    }) }))] }))
                                        : null, showOcrInLabels && (ocrTexts === null || ocrTexts === void 0 ? void 0 : ocrTexts.length)
                                        ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tagLabel), "data-custom-class-name": "tagLabel" }, { children: [l('Recognized text'), ":"] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tags) }, { children: ocrTexts.map(function (ocrText) {
                                                        return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.tag), title: showConfidenceTooltip
                                                                ? "confidence: ".concat(ocrText.confidence)
                                                                : ocrText.label }, { children: ocrText.label }), ocrText.label);
                                                    }) }))] }))
                                        : null] }))] }))
                    : null] })));
    }
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("img", { alt: alt, src: src, className: classnames__WEBPACK_IMPORTED_MODULE_6___default()(_ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.openedImage, _ImagePreview_css__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A.onlyImage), onClick: onClick }));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ImagePreviewDetail);


/***/ }),

/***/ "efAf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _ImagePreview__WEBPACK_IMPORTED_MODULE_1__.A),
/* harmony export */   B: () => (/* reexport safe */ _ImagePreviewDetail__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _ImagePreviewDetail__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("oTco");
/* harmony import */ var _ImagePreview__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("YQ6q");





/***/ }),

/***/ "Ikst":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_InfoBox_InfoBox)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/InfoBox/InfoBox.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const InfoBox = ({"base":"ygpV4rf6kMajKiZi_C5x","displayed":"ykQOzgi0FT3jxaborOzc","fullWidth":"aYF1GfI70FdHa85hQ45G","title":"cYGsL0ZtrBGNYzJpr8nP","text":"q_87orh5BTm18VQcLk3K","ai":"Qx_bzpaAC2BuZQvJdIO1","primary":"YeABzoyLorgJhLUidzX2","error":"AF2YymV_bhR6VFHK3wUK","warning":"cmdmmaTbIUmUREB_8ojI","success":"dHO6cUAt0ojT71uNDDzP","info":"RfiZqUHLTeotXjvn78C2","ghost":"VMysCaQgLza4CWWEjWQ0","additionalInfo":"XGcf2d43ejAlCMoaG9Tc","additionalInfoLabel":"nM5goBAl2OsSlM9J14uf"});
;// CONCATENATED MODULE: ./src/components/ui/InfoBox/InfoBox.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





/**
 * InfoBox for notifying user about errors, warnings or some info.
 */
var InfoBox_InfoBox = function (_a) {
    var _b;
    var title = _a.title, text = _a.text, className = _a.className, error = _a.error, primary = _a.primary, info = _a.info, fullWidth = _a.fullWidth, ai = _a.ai, warning = _a.warning, success = _a.success, displayed = _a.displayed, ghost = _a.ghost, children = _a.children, additionalInfo = _a.additionalInfo, otherProps = __rest(_a, ["title", "text", "className", "error", "primary", "info", "fullWidth", "ai", "warning", "success", "displayed", "ghost", "children", "additionalInfo"]);
    var _c = __read((0,react.useState)(false), 2), showAdditionalInfo = _c[0], toggleAdditionalInfoVisibility = _c[1];
    var handleToggleAdditionalInfoVisibility = function () {
        toggleAdditionalInfoVisibility(!showAdditionalInfo);
    };
    var classes = classnames_default()(className, InfoBox.base, (_b = {},
        _b[InfoBox.error] = error,
        _b[InfoBox.info] = info,
        _b[InfoBox.fullWidth] = fullWidth,
        _b[InfoBox.warning] = warning,
        _b[InfoBox.primary] = primary,
        _b[InfoBox.success] = success,
        _b[InfoBox.ai] = ai,
        _b[InfoBox.displayed] = displayed,
        _b[InfoBox.ghost] = ghost,
        _b));
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classes }, otherProps, { children: [title && (0,jsx_runtime.jsxs)(H3/* default */.A, __assign({ className: classnames_default()(InfoBox.title) }, { children: [" ", title, " "] })), text && (0,jsx_runtime.jsxs)("p", __assign({ className: classnames_default()(InfoBox.text) }, { children: [" ", text, " "] })), showAdditionalInfo
                && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(InfoBox.additionalInfo) }, { children: typeof additionalInfo === 'object'
                        ? JSON.stringify(additionalInfo, null, 2)
                        : additionalInfo }))), additionalInfo
                && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(InfoBox.additionalInfoLabel), onClick: handleToggleAdditionalInfoVisibility }, { children: showAdditionalInfo ? l('Hide details') : l('Show details') }))), children] })));
};
/* harmony default export */ const ui_InfoBox_InfoBox = ((0,react.memo)(InfoBox_InfoBox));


/***/ }),

/***/ "rpFs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _InfoBox__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _InfoBox__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("Ikst");



/***/ }),

/***/ "+733":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_InlineSelect_InlineSelect)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/components/ui/Menu/index.ts + 2 modules
var Menu = __webpack_require__("yWfC");
// EXTERNAL MODULE: ./src/components/ui/MenuItem/index.ts + 2 modules
var MenuItem = __webpack_require__("ADKe");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/InlineSelect/InlineSelect.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const InlineSelect = ({"base":"CB0aMcMXKJlxUWpglWwk","label":"UvkGh1n2s1OOFeux1OZK","disabled":"sm5r5SyfBgg9N0EXEU96"});
;// CONCATENATED MODULE: ./src/components/ui/InlineSelect/InlineSelect.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};









var InlineSelect_InlineSelect = function (_a) {
    var _b;
    var options = _a.options, value = _a.value, className = _a.className, disabled = _a.disabled, children = _a.children, withoutPadding = _a.withoutPadding, onChange = _a.onChange, otherProps = __rest(_a, ["options", "value", "className", "disabled", "children", "withoutPadding", "onChange"]);
    var popover = (0,react.useRef)(null);
    var handleSelect = function (option) {
        popover.current.hide();
        onChange(option);
    };
    var renderOptions = function () {
        return options.map(function (option) {
            var _a;
            if ((_a = option === null || option === void 0 ? void 0 : option.settings) === null || _a === void 0 ? void 0 : _a.isDivider) {
                return (0,jsx_runtime.jsx)(Divider/* default */.A, {}, "".concat(option.value, "_divider"));
            }
            return ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { value: option.value, label: option.iconType
                    ? ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: option.iconType }), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(InlineSelect.label) }, { children: option.label }))] }))
                    : option.label, selected: option.value === value, disabled: option.disabled, onSelect: handleSelect }, option.value));
        });
    };
    if (disabled) {
        return ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(InlineSelect.base, (_b = {}, _b[InlineSelect.disabled] = disabled, _b), className) }, { children: children })));
    }
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({}, otherProps, { fitted: true, ref: popover, content: (0,jsx_runtime.jsx)(Menu/* default */.A, __assign({ withoutPadding: withoutPadding }, { children: renderOptions() })) }, { children: (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(InlineSelect.base, className) }, { children: children })) })));
};
/* harmony default export */ const ui_InlineSelect_InlineSelect = ((0,react.memo)(InlineSelect_InlineSelect));

;// CONCATENATED MODULE: ./src/components/ui/InlineSelect/index.ts



/***/ }),

/***/ "HiCK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Label_Label)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Label/Label.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Label = ({"base":"OTyF8q64v3qb6duzmTqb","star":"FCko5q0oQfuf7Z6PESTT"});
;// CONCATENATED MODULE: ./src/components/ui/Label/Label.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var Label_Label = function (_a) {
    var children = _a.children, _b = _a.required, required = _b === void 0 ? false : _b, className = _a.className;
    return ((0,jsx_runtime.jsxs)("span", __assign({ className: classnames_default()(Label.base, className) }, { children: [children, required
                && (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(Label.star) }, { children: "*" }))] })));
};
/* harmony default export */ const ui_Label_Label = (Label_Label);

;// CONCATENATED MODULE: ./src/components/ui/Label/index.ts



/***/ }),

/***/ "gyTG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_ListItem_ListItem)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/ListItem/ListItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ListItem = ({"base":"vERuDqrYHZ6DuVcpCQto","label":"vGWPldPO1p8HWHGg1y0A","children":"Cne8rSFuniw4daOmeFdj"});
;// CONCATENATED MODULE: ./src/components/ui/ListItem/ListItem.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



/**
 * Component that provides list-kind of text output.
 * Main idea of component is to show label and text next to it, like key - value pair.
 */
var ListItem_ListItem = function (_a) {
    var label = _a.label, children = _a.children, className = _a.className;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(ListItem.base, className) }, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(ListItem.label) }, { children: label })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(ListItem.children) }, { children: children }))] })));
};
/* harmony default export */ const ui_ListItem_ListItem = (ListItem_ListItem);

;// CONCATENATED MODULE: ./src/components/ui/ListItem/index.ts



/***/ }),

/***/ "7sfm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_MentionParamsCounter_MentionParamsCounter)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/MentionParamsCounter/MentionParamsCounter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionParamsCounter = ({"base":"pU6QZidDLkxCvRlrPjBw","clickable":"CuVDXndRTEiXaueNIjyx","count":"leRYd3mx25wAWTFGrzy5","updateDate":"atFzOhGruwR2QE0OdxHv"});
;// CONCATENATED MODULE: ./src/components/ui/MentionParamsCounter/MentionParamsCounter.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







/**
 * Counter with Icon for mention params, such as number of likes, views, comments etc.
 */
var MentionParamsCounter_MentionParamsCounter = function (_a) {
    var _b;
    var className = _a.className, tooltipText = _a.tooltipText, updatedAt = _a.updatedAt, icon = _a.icon, count = _a.count, onClick = _a.onClick;
    if (!count) {
        return null;
    }
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: tooltipText
            && ((0,jsx_runtime.jsxs)("div", { children: [tooltipText, updatedAt
                        && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MentionParamsCounter.updateDate) }, { children: sprintf(l('updated at %s'), moment_default()(updatedAt).format('lll')) })))] })) }, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, MentionParamsCounter.base, (_b = {}, _b[MentionParamsCounter.clickable] = onClick, _b)), onClick: onClick }, { children: [icon, (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(MentionParamsCounter.count) }, { children: count <= 1000
                        || (count < 1000000 && Number.isInteger(count / 1000))
                        || (count >= 1000000 && Number.isInteger(count / 1000000))
                        ? numeral_default()(count).format('0a')
                        : numeral_default()(count).format('0.0a') }))] })) })));
};
/* harmony default export */ const ui_MentionParamsCounter_MentionParamsCounter = ((0,react.memo)(MentionParamsCounter_MentionParamsCounter));

;// CONCATENATED MODULE: ./src/components/ui/MentionParamsCounter/index.ts



/***/ }),

/***/ "6k/U":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_MentionText_MentionText)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/MentionText/MentionText.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionText = ({"base":"Q73iQ9Oh3QBkbjh10U6t","isKeywordHighlightEnabled":"WJIiADpYvnCJ14uuC16a"});
;// CONCATENATED MODULE: ./src/components/ui/MentionText/MentionText.tsx



var MentionText_MentionText = function (_a) {
    var _b;
    var className = _a.className, text = _a.text, _c = _a.isKeywordHighlightEnabled, isKeywordHighlightEnabled = _c === void 0 ? true : _c;
    return ((0,jsx_runtime.jsx)("span", { className: classnames_default()(MentionText.base, className, (_b = {}, _b[MentionText.isKeywordHighlightEnabled] = isKeywordHighlightEnabled, _b)), dangerouslySetInnerHTML: { __html: text } }));
};
/* harmony default export */ const ui_MentionText_MentionText = (MentionText_MentionText);

;// CONCATENATED MODULE: ./src/components/ui/MentionText/index.ts



/***/ }),

/***/ "yWfC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Menu_Menu)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Menu/Menu.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Menu = ({"base":"yDOhUo2aCTcoU1ljstlm","withoutPadding":"PJniCYWH2PYboVrA8LPr"});
;// CONCATENATED MODULE: ./src/components/ui/Menu/Menu.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




var Menu_Menu = function (_a) {
    var _b;
    var className = _a.className, children = _a.children, withoutPadding = _a.withoutPadding, otherProps = __rest(_a, ["className", "children", "withoutPadding"]);
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, Menu.base, (_b = {}, _b[Menu.withoutPadding] = withoutPadding, _b)) }, otherProps, { children: children })));
};
/* harmony default export */ const ui_Menu_Menu = ((0,react.memo)(Menu_Menu));

;// CONCATENATED MODULE: ./src/components/ui/Menu/index.ts



/***/ }),

/***/ "ADKe":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_MenuItem_MenuItem)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/MenuItem/MenuItem.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MenuItem = ({"base":"a6y24jf9FJt1_mBWai_K","selected":"Wv5I1LLJ4ySIcYpe9wxd","disabled":"QhL6OElxxNF5ovyY91JI","label":"D09ig14pYYy4u6TMgpaV","icon":"Qu4qzYwarlJjowCgFymO"});
;// CONCATENATED MODULE: ./src/components/ui/MenuItem/MenuItem.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var ICON_SIZE = 20;
var MenuItem_MenuItem = function (_a) {
    var _b;
    var className = _a.className, value = _a.value, iconType = _a.iconType, label = _a.label, selected = _a.selected, disabled = _a.disabled, onSelect = _a.onSelect;
    var handleSelect = function (e) {
        if (onSelect) {
            onSelect(value, e);
        }
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className, MenuItem.base, (_b = {}, _b[MenuItem.selected] = selected, _b[MenuItem.disabled] = disabled, _b)), onClick: handleSelect }, { children: [!!iconType
                && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MenuItem.icon) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, color: "lightgray", size: ICON_SIZE }) }))), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(MenuItem.label) }, { children: label }))] })));
};
/* harmony default export */ const ui_MenuItem_MenuItem = (MenuItem_MenuItem);

;// CONCATENATED MODULE: ./src/components/ui/MenuItem/index.ts



/***/ }),

/***/ "7Lz/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_Modal_Modal)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-modal/lib/index.js
var lib = __webpack_require__("9rZX");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Modal/Modal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Modal = ({"overlayedBlock":"aCOGcbDt1XFfGNFK_YRR","flexCenter":"sUJDp365BJZAfjj9RQvc","smartFeature":"ZkTJ0DbTbyhJjdVNS9PS","tag":"FMupbwZTNrTXpnAWWRXE","visibleScrollBar":"oZWsODDEWW3Otn9YclM4","hiddenScrollBar":"tluxxgto2eRklWPLvcpM","base":"dWH5LsYZzEohH1FUC6D4","fitted":"WBS2TCvHNklLgAtAsiOK","overlay":"Lf_6YcoOn3bn2iiEBwbE","missing":"Hfhovsowa3N2eBQyM5Ak","fullWidth":"EDHjxxUaRICfqPuKwZdl","fullscreen":"WM5Bb2OCKiy8SlsH3NMl","title":"dk0PbAAqHFvCHHLVY0hV","closeIcon":"JTOWiM14Np5IF5pTFETK","fixed":"Z9qr6TuSJKdNMSI1UJ59"});
;// CONCATENATED MODULE: ./src/components/ui/Modal/Modal.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};







lib_default().setAppElement('#content');
var CLOSE_ICON_SIZE = 18;
/**
 * Modal window component
 */
var Modal_Modal = function (_a) {
    var _b, _c;
    var className = _a.className, bodyOpenClassName = _a.bodyOpenClassName, title = _a.title, children = _a.children, maxWidth = _a.maxWidth, fitted = _a.fitted, fullWidth = _a.fullWidth, fullscreen = _a.fullscreen, withCloseIcon = _a.withCloseIcon, withoutOverlay = _a.withoutOverlay, fixed = _a.fixed, onRequestClose = _a.onRequestClose, otherProps = __rest(_a, ["className", "bodyOpenClassName", "title", "children", "maxWidth", "fitted", "fullWidth", "fullscreen", "withCloseIcon", "withoutOverlay", "fixed", "onRequestClose"]);
    var styles = {
        content: {
            maxWidth: maxWidth,
        },
    };
    var classes = classnames_default()(className, Modal.base, (_b = {}, _b[Modal.fullWidth] = fullWidth, _b[Modal.fitted] = fitted, _b[Modal.fullscreen] = fullscreen, _b[Modal.fixed] = fixed, _b));
    return ((0,jsx_runtime.jsxs)((lib_default()), __assign({ className: classes, bodyOpenClassName: bodyOpenClassName, overlayClassName: classnames_default()(Modal.overlay, (_c = {}, _c[Modal.missing] = withoutOverlay, _c)), style: styles, contentLabel: "Modal", onRequestClose: onRequestClose }, otherProps, { children: [title
                && (0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(Modal.title) }, { children: title })), onRequestClose && withCloseIcon
                && ((0,jsx_runtime.jsx)(Icon/* default */.A, { size: CLOSE_ICON_SIZE, type: "close", color: "black", className: classnames_default()(Modal.closeIcon), onClick: onRequestClose })), children] })));
};
/* harmony default export */ const ui_Modal_Modal = ((0,react.memo)(Modal_Modal));


/***/ }),

/***/ "V5xf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _Modal__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _Modal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("7Lz/");



/***/ }),

/***/ "+xhm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Popover_Popover)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/semantic-ui-react/dist/commonjs/modules/Popup/Popup.js
var Popup = __webpack_require__("+SaM");
// EXTERNAL MODULE: ./node_modules/@mui/material/Dialog/Dialog.js + 29 modules
var Dialog = __webpack_require__("wsSZ");
// EXTERNAL MODULE: ./node_modules/@mui/material/DialogContent/DialogContent.js + 2 modules
var DialogContent = __webpack_require__("ARyP");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
;// CONCATENATED MODULE: ./src/components/ui/Popover/Popover.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Popover_Popover = ({"darkMode":"I9i52pqIYoqJpBs407Qf","title":"BDozYsmgbBwPDO5fAW7w","withHeader":"EEHt0tsjDV4CyTZ9Pv0g","header":"KZVyhuLI9Tv4fzYP0s1w","headerTitle":"XcCiJWSVdhcSStuJSmzi","content":"obWQF9MuSpJr7GSsRAuN","withTitle":"v73noJT8ee43QoqXwzRe","fitted":"IHx2EX6BYF97e7V2RWTf","mobileCloseIcon":"vkbsmn2Ig0qbf_uomyNu"});
;// CONCATENATED MODULE: ./src/components/ui/Popover/Popover.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};










var POSITIONS = (/* unused pure expression or super */ null && (['top left', 'top right', 'bottom right', 'bottom left', 'right center', 'left center', 'top center', 'bottom center']));
var MIDDLE_SCREEN_DELTA = 15;
var POPOVER_MARGIN = 50;
/**
 * The floating card popped by clicking / hovering / focusing an element
 * Use to provide extra information or operations
 */
var Popover = /** @class */ (function (_super) {
    __extends(Popover, _super);
    function Popover(props) {
        var _this = _super.call(this, props) || this;
        _this.state = {
            opened: false,
            maxHeight: 'initial',
        };
        _this.handleMount = function () {
            window.addEventListener('scroll', _this.hideOnScroll);
            // Strictly set the max-height of the popup depending on the position of the trigger
            if (_this.props.flexibleHeight && _this.popup.current && _this.popup.current.coords) {
                var _a = _this.popup.current.coords, triggerY = _a.y, triggerHeight = _a.height;
                var windowHeight = window.innerHeight;
                // When the trigger is above the middle of the screen
                if (triggerY > windowHeight / 2 + MIDDLE_SCREEN_DELTA) {
                    _this.setState({ maxHeight: triggerY - triggerHeight });
                }
                // When the trigger is below the middle of the screen
                if (triggerY < windowHeight / 2 - MIDDLE_SCREEN_DELTA) {
                    _this.setState({ maxHeight: windowHeight - triggerY - triggerHeight * 2 });
                }
                // When the trigger is in the middle of the screen
                if (windowHeight / 2 - MIDDLE_SCREEN_DELTA < triggerY && triggerY < windowHeight / 2 + MIDDLE_SCREEN_DELTA) {
                    _this.setState({ maxHeight: windowHeight - POPOVER_MARGIN });
                }
            }
        };
        _this.handleUnmount = function () {
            window.removeEventListener('scroll', _this.hideOnScroll);
        };
        _this.handleClose = function (e) {
            if (_this.props.shouldHide && !_this.props.shouldHide()) {
                if (_this.props.onUnresolvedHide) {
                    _this.props.onUnresolvedHide();
                }
                return;
            }
            _this.setState({ opened: false });
            if (_this.props.onHide) {
                _this.props.onHide(e);
            }
            if (_this.props.onVisibilityChange) {
                _this.props.onVisibilityChange(false);
            }
        };
        _this.handleOpen = function (e) {
            /**
             * Verification if different instances of same popover are opened to prevent this.
             * Just add your individual popover selector to @POPOVERS_THAT_SHOULD_NOT_BE_OPENED_AT_THE_SAME_TIME
             * to handle this case.
             * TODO: remove this check after semantic-ui replacement.
             */
            var id = _this.props.id;
            if (id) {
                var replaceSharp_1 = function (_id) { return _id.replace(/#/g, ''); };
                var isAnotherPopoverWithSameSelectorOpened = Popover.POPOVERS_THAT_SHOULD_NOT_BE_OPENED_AT_THE_SAME_TIME.some(function (popoverId) { return id === replaceSharp_1(popoverId) && document.querySelector(popoverId); });
                if (isAnotherPopoverWithSameSelectorOpened) {
                    return false;
                }
            }
            _this.setState({ opened: true });
            if (_this.props.onShow) {
                _this.props.onShow(e);
            }
            if (_this.props.onVisibilityChange) {
                _this.props.onVisibilityChange(true);
            }
            return true;
        };
        _this.hide = function () {
            _this.setState({ opened: false });
        };
        _this.show = function () {
            _this.setState({ opened: true });
        };
        _this.hideOnScroll = function () {
            if (_this.props.hideOnScroll) {
                _this.setState({ opened: false });
            }
        };
        _this.popup = (0,react.createRef)();
        return _this;
    }
    Popover.prototype.componentDidUpdate = function (prevProps, prevState, snapshot) {
        if (this.props.forceHide !== prevProps.forceHide && this.props.forceHide) {
            this.hide();
            if (this.props.onForceHidden) {
                this.props.onForceHidden();
            }
        }
    };
    Popover.prototype.renderDesktopView = function () {
        var _a, _b;
        var _c = this.props, children = _c.children, content = _c.content, title = _c.title, header = _c.header, headerToolbar = _c.headerToolbar, className = _c.className, triggerClassName = _c.triggerClassName, fitted = _c.fitted, show = _c.show, darkMode = _c.darkMode, fullWidth = _c.fullWidth, noScroll = _c.noScroll, innerRef = _c.innerRef, otherProps = __rest(_c, ["children", "content", "title", "header", "headerToolbar", "className", "triggerClassName", "fitted", "show", "darkMode", "fullWidth", "noScroll", "innerRef"]);
        var _d = this.state, opened = _d.opened, maxHeight = _d.maxHeight;
        var open = show !== undefined ? show : opened;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.flexibleHeight;
        return ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: (0,jsx_runtime.jsx)(Popup/* default */.A, __assign({}, otherProps, { ref: this.popup, trigger: fullWidth ? ((0,jsx_runtime.jsx)("div", __assign({ ref: innerRef, style: { width: '100%' }, className: triggerClassName }, { children: children }))) : ((0,jsx_runtime.jsx)("span", __assign({ ref: innerRef, className: triggerClassName }, { children: children }))), open: open, className: classnames_default()(className, (_a = {},
                    _a[Popover_Popover.withHeader] = header,
                    _a[Popover_Popover.darkMode] = darkMode,
                    _a)), onClose: this.handleClose, onOpen: this.handleOpen, onMount: this.handleMount, onUnmount: this.handleUnmount }, { children: (0,jsx_runtime.jsxs)("div", __assign({ style: {
                        maxHeight: maxHeight,
                        overflowY: noScroll ? 'initial' : 'auto',
                    } }, { children: [header && ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Popover_Popover.header) }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(Popover_Popover.headerTitle) }, { children: header })), headerToolbar && (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Popover_Popover.headerToolbar) }, { children: headerToolbar }))] }))), title && (0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(Popover_Popover.title) }, { children: title })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Popover_Popover.content, (_b = {},
                                _b[Popover_Popover.fitted] = fitted,
                                _b[Popover_Popover.withTitle] = title,
                                _b)) }, { children: content && content.type ? (0,react.cloneElement)(content, { onClose: this.hide }) : content }))] })) })) }));
    };
    Popover.prototype.renderMobileView = function () {
        var _a;
        var _b = this.props, children = _b.children, content = _b.content, title = _b.title, header = _b.header, headerToolbar = _b.headerToolbar, triggerClassName = _b.triggerClassName, fitted = _b.fitted, show = _b.show, fullWidth = _b.fullWidth, innerRef = _b.innerRef;
        var opened = this.state.opened;
        var open = show !== undefined ? show : opened;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [fullWidth ? ((0,jsx_runtime.jsx)("div", __assign({ onClick: this.handleOpen, ref: innerRef, style: { width: '100%' }, className: triggerClassName }, { children: children }))) : ((0,jsx_runtime.jsx)("span", __assign({ onClick: this.handleOpen, ref: innerRef, className: triggerClassName }, { children: children }))), (0,jsx_runtime.jsxs)(Dialog/* default */.A, __assign({ className: Popover_Popover.mobileView, open: open, onClose: this.handleClose }, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: Popover_Popover.mobileCloseIcon }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "close", onClick: this.handleClose }) })), header && ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Popover_Popover.header) }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(Popover_Popover.headerTitle) }, { children: header })), headerToolbar && (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Popover_Popover.headerToolbar) }, { children: headerToolbar }))] }))), title && (0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(Popover_Popover.title) }, { children: title })), (0,jsx_runtime.jsx)(DialogContent/* default */.A, __assign({ style: { padding: 0 } }, { children: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Popover_Popover.content, (_a = {},
                                    _a[Popover_Popover.fitted] = fitted,
                                    _a[Popover_Popover.withTitle] = title,
                                    _a)) }, { children: content && content.type ? (0,react.cloneElement)(content, { onClose: this.hide }) : content })) }))] }))] }));
    };
    Popover.prototype.render = function () {
        if (this.props.disabled) {
            return this.props.children;
        }
        if ((0,mobile/* isMobileSize */.IS)() && this.props.on === 'click') {
            return this.renderMobileView();
        }
        return this.renderDesktopView();
    };
    Popover.defaultProps = {
        basic: false,
        flowing: false,
        fitted: false,
        hideOnScroll: true,
        hoverable: false,
        inverted: false,
        on: 'click',
        position: 'bottom left',
        wide: false,
    };
    // eslint-disable-next-line react/sort-comp
    Popover.POPOVERS_THAT_SHOULD_NOT_BE_OPENED_AT_THE_SAME_TIME = ['#smartFeaturesFeedbackLoop', '#authorsMultiAction'];
    return Popover;
}(react.Component));
/* harmony default export */ const ui_Popover_Popover = (Popover);

;// CONCATENATED MODULE: ./src/components/ui/Popover/index.ts



/***/ }),

/***/ "PsVH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_ProcessedImage_ProcessedImage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/ProcessedImage/utils.tsx
var DEFAULT_FONT_SIZE = 14;
var DEFAULT_STROKE_WIDTH = 3;
var PREVIEW_STROKE_WIDTH = 2;
var BOUNDING_BOX_COLORS = {
    ocr: '#FAE30B',
    foundOcr: '#f3f311',
    logo: '#FA8E0B',
    default: '#FA8E0B',
};
var DEFAULT_BOUNDING_BOX_BORDER_RADIUS = 4;
var PREVIEW_BOUNDING_BOX_BORDER_RADIUS = 3;
var emptyCoordinatesFilter = function (boundingBox) {
    var x1 = boundingBox.x1;
    var y1 = boundingBox.y1;
    var x2 = boundingBox.x2;
    var y2 = boundingBox.y2;
    return !(x1 === x2 && y1 === y2 && x1 === 0 && y1 === 0);
};
var isNotOcr = function (boundingBox) { return boundingBox.type !== 'ocr'; };
var getType = function (boundingBox) {
    if (boundingBox.type === 'ocr') {
        return boundingBox.found ? 'foundOcr' : 'ocr';
    }
    return boundingBox.type || 'default';
};
var getBoundingBoxesByImageRatio = function (boundingBoxes, image) {
    if (!image) {
        return null;
    }
    return boundingBoxes
        .filter(emptyCoordinatesFilter)
        .map(function (boundingBox) {
        var ratio = image.naturalWidth / image.parentNode.clientWidth;
        var x1 = boundingBox.x1 / ratio;
        var y1 = boundingBox.y1 / ratio;
        var x2 = boundingBox.x2 / ratio;
        var y2 = boundingBox.y2 / ratio;
        var width = (boundingBox.x2 - boundingBox.x1) / ratio;
        var height = (boundingBox.y2 - boundingBox.y1) / ratio;
        var label = boundingBox.label;
        var confidence = boundingBox.confidence;
        var labelLength = (label === null || label === void 0 ? void 0 : label.length) || 0;
        var centeredLabelVerticalPosition = (((y1 + y2) / 2) + (Math.floor(Math.random()) * 20)) - 10;
        var centeredLabelHorizontalPosition = (((x1 + x2) / 2) + (Math.floor(Math.random()) * 20)) - 10;
        var labelWidth = (labelLength * DEFAULT_FONT_SIZE * 0.6) + 20;
        var labelHeight = DEFAULT_FONT_SIZE + 10;
        var type = getType(boundingBox);
        return {
            x1: x1,
            y1: y1,
            width: width,
            height: height,
            labelWidth: labelWidth,
            labelHeight: labelHeight,
            centeredLabelVerticalPosition: centeredLabelVerticalPosition,
            centeredLabelHorizontalPosition: centeredLabelHorizontalPosition,
            borderRadius: DEFAULT_BOUNDING_BOX_BORDER_RADIUS,
            label: label,
            confidence: confidence,
            type: type,
            color: BOUNDING_BOX_COLORS[type],
            fontSize: DEFAULT_FONT_SIZE,
            strokeWidth: DEFAULT_STROKE_WIDTH,
        };
    });
};
var getBoundingBoxesForCroppedImage = function (boundingBoxes, image, imageSize) {
    if (imageSize === void 0) { imageSize = 200; }
    var CONTAINER_SIZE = imageSize;
    if (!image)
        return null;
    return boundingBoxes
        .filter(emptyCoordinatesFilter)
        .filter(isNotOcr)
        .map(function (boundingBox) {
        var smallerImageSide;
        var biggerImageSide;
        if (image.naturalWidth > image.naturalHeight) {
            smallerImageSide = image.naturalHeight;
            biggerImageSide = image.naturalWidth;
        }
        else {
            smallerImageSide = image.naturalWidth;
            biggerImageSide = image.naturalHeight;
        }
        var ratio = smallerImageSide / CONTAINER_SIZE;
        var offset = ((biggerImageSide / ratio) - CONTAINER_SIZE) / 2;
        var x1 = boundingBox.x1 / ratio;
        var y1 = boundingBox.y1 / ratio;
        var width = (boundingBox.x2 - boundingBox.x1) / ratio;
        var height = (boundingBox.y2 - boundingBox.y1) / ratio;
        if (image.naturalHeight > image.naturalWidth)
            y1 -= offset;
        else
            x1 -= offset;
        return {
            x1: x1,
            y1: y1,
            width: width,
            height: height,
            color: BOUNDING_BOX_COLORS.default,
            borderRadius: PREVIEW_BOUNDING_BOX_BORDER_RADIUS,
            strokeWidth: PREVIEW_STROKE_WIDTH,
        };
    });
};
var getIsCoverImageByHeight = function (image, maxViewWidth, maxViewHeight) {
    if (!image || image.naturalHeight <= image.naturalWidth)
        return false;
    var expectedHeight = window.innerHeight * (maxViewHeight / 100);
    var expectedWidth = (expectedHeight * image.naturalWidth) / image.naturalHeight;
    return expectedHeight < image.naturalHeight * (maxViewHeight / 100)
        && expectedWidth < window.innerWidth * (maxViewWidth / 100);
};
/* harmony default export */ const utils = (getBoundingBoxesByImageRatio);

;// CONCATENATED MODULE: ./src/components/ui/ProcessedImage/ProcessedImage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ProcessedImage_ProcessedImage = ({"base":"oWDJWgF8rmh4EvF6WqKw","hidden":"XTOpHlziROMGEmBtgLvF","image":"zekFPj1i1ubfP2wi9V7d","svg":"biDTmmOFOmiaFhVPkgnE"});
;// CONCATENATED MODULE: ./src/components/ui/ProcessedImage/ProcessedImage.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






var ProcessedImage = /** @class */ (function (_super) {
    __extends(ProcessedImage, _super);
    function ProcessedImage(props) {
        var _this = _super.call(this, props) || this;
        _this.handleCalculateImageSizing = function () {
            var _a = _this.props, isSquareImage = _a.isSquareImage, maxViewHeight = _a.maxViewHeight, maxViewWidth = _a.maxViewWidth;
            _this.setState({
                isCoverByHeight: isSquareImage
                    ? null
                    : getIsCoverImageByHeight(_this.image.current, maxViewWidth, maxViewHeight),
            }, function () {
                _this.setState(_this.handleCalculateBoundingBoxes());
            });
        };
        _this.handleCalculateBoundingBoxes = function () {
            var isSquareImage = _this.props.isSquareImage;
            var itemsToHighlight = _this.itemsToHighlight;
            return {
                boundingBoxes: isSquareImage
                    ? getBoundingBoxesForCroppedImage(itemsToHighlight, _this.image.current, _this.props.squareImageSize)
                    : utils(itemsToHighlight, _this.image.current),
            };
        };
        _this.state = {
            isCoverByHeight: false,
            boundingBoxes: [],
        };
        _this.image = (0,react.createRef)();
        return _this;
    }
    ProcessedImage.prototype.componentDidMount = function () {
        var _this = this;
        var image = new Image();
        image.src = this.props.src;
        image.onload = this.handleCalculateImageSizing;
        if (this.props.onError) {
            image.onerror = function () { return _this.props.onError(); };
        }
        window.addEventListener('resize', this.handleCalculateImageSizing);
    };
    ProcessedImage.prototype.componentWillUnmount = function () {
        window.removeEventListener('resize', this.handleCalculateImageSizing);
    };
    Object.defineProperty(ProcessedImage.prototype, "itemsToHighlight", {
        get: function () {
            var _a = this.props, imageBrands = _a.imageBrands, ocrTexts = _a.ocrTexts;
            return __spreadArray(__spreadArray([], __read((imageBrands || []).map(function (coord) { return (__assign(__assign({}, coord), { type: 'logo' })); })), false), __read((ocrTexts || []).map(function (coord) { return (__assign(__assign({}, coord), { type: 'ocr' })); })), false);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(ProcessedImage.prototype, "baseStyle", {
        get: function () {
            var _a = this.props, maxViewHeight = _a.maxViewHeight, maxViewWidth = _a.maxViewWidth;
            return {
                maxHeight: "".concat(maxViewHeight, "vh"),
                maxWidth: "".concat(maxViewWidth, "vw"),
            };
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(ProcessedImage.prototype, "imageStyle", {
        get: function () {
            var maxViewHeight = this.props.maxViewHeight;
            return {
                width: 'initial',
                maxHeight: "".concat(maxViewHeight, "vh"),
            };
        },
        enumerable: false,
        configurable: true
    });
    ProcessedImage.prototype.render = function () {
        var _a = this.state, boundingBoxes = _a.boundingBoxes, isCoverByHeight = _a.isCoverByHeight;
        var _b = this.props, className = _b.className, captionClassName = _b.captionClassName, src = _b.src, alt = _b.alt, onClick = _b.onClick;
        return ((0,jsx_runtime.jsxs)("div", __assign({ role: "presentation", className: classnames_default()(ProcessedImage_ProcessedImage.base, className), "data-custom-class-name": "processedImage", style: this.baseStyle, onClick: onClick }, { children: [(0,jsx_runtime.jsx)("img", { ref: this.image, alt: alt, src: src, style: isCoverByHeight ? this.imageStyle : null, className: classnames_default()(ProcessedImage_ProcessedImage.image) }), (0,jsx_runtime.jsx)("svg", __assign({ width: "100%", height: "100%", className: classnames_default()(ProcessedImage_ProcessedImage.svg) }, { children: boundingBoxes
                        && boundingBoxes.map(function (boundingBox) {
                            var fontFamily = 'Roboto Mono';
                            var xCoordinate = boundingBox.x1;
                            var yCoordinate = boundingBox.y1;
                            var centeredLabelHorizontalPosition = boundingBox.centeredLabelHorizontalPosition;
                            var centeredLabelVerticalPosition = boundingBox.centeredLabelVerticalPosition;
                            var type = boundingBox.type;
                            var borderRadius = boundingBox.borderRadius;
                            var confidence = boundingBox.confidence;
                            var width = boundingBox.labelWidth;
                            var height = boundingBox.labelHeight;
                            if (type === 'imageObject') {
                                return ((0,jsx_runtime.jsxs)("g", __assign({ className: classnames_default()(ProcessedImage_ProcessedImage.hidden) }, { children: [(0,jsx_runtime.jsx)("rect", { fill: "black", fillOpacity: "0.75", x: centeredLabelHorizontalPosition - 10, y: centeredLabelVerticalPosition - 16, rx: borderRadius, ry: borderRadius, width: width, height: height }), (0,jsx_runtime.jsx)("text", __assign({ fontWeight: "600", fontFamily: fontFamily, x: centeredLabelHorizontalPosition, y: centeredLabelVerticalPosition, fontSize: boundingBox.fontSize, fill: "white" }, { children: boundingBox.label }))] }), "".concat(centeredLabelHorizontalPosition).concat(centeredLabelVerticalPosition)));
                            }
                            return ((0,jsx_runtime.jsxs)("g", __assign({ className: classnames_default()(type) }, { children: [boundingBox.label
                                        ? ((0,jsx_runtime.jsxs)("g", __assign({ className: classnames_default()(captionClassName, ProcessedImage_ProcessedImage.hidden) }, { children: [(0,jsx_runtime.jsx)("rect", { fillOpacity: "0.9", fill: boundingBox.color, x: xCoordinate, y: yCoordinate - 27, rx: borderRadius, ry: borderRadius, width: width, height: height }), (0,jsx_runtime.jsx)("text", __assign({ fontWeight: "600", fill: "white", fontFamily: fontFamily, x: xCoordinate + 10, y: yCoordinate - 10, fontSize: boundingBox.fontSize }, { children: boundingBox.label }))] })))
                                        : null, (0,jsx_runtime.jsx)("rect", { fill: "white", fillOpacity: "0", strokeOpacity: "0.9", x: xCoordinate, y: yCoordinate, rx: borderRadius, ry: borderRadius, width: boundingBox.width, height: boundingBox.height, stroke: boundingBox.color, strokeWidth: boundingBox.strokeWidth }), confidence && confidence > 0
                                        && ((0,jsx_runtime.jsx)("text", __assign({ fontSize: 11, fontWeight: "600", fontFamily: fontFamily, x: (xCoordinate + boundingBox.width) - 27, y: yCoordinate + boundingBox.height + 12, fill: boundingBox.color, className: classnames_default()(ProcessedImage_ProcessedImage.hidden) }, { children: numeral_default()(confidence).format('0.00') })))] }), "".concat(xCoordinate).concat(yCoordinate)));
                        }) }))] })));
    };
    return ProcessedImage;
}(react.PureComponent));
/* harmony default export */ const ui_ProcessedImage_ProcessedImage = (ProcessedImage);

;// CONCATENATED MODULE: ./src/components/ui/ProcessedImage/index.tsx



/***/ }),

/***/ "b2R6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Progressbar_Progressbar)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Progressbar/Progressbar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Progressbar = ({"base":"aN3tynqSUExcaCvTFAFx","progress":"YR2n7kT3jE_ljZE77QNS","visibleProgress":"MFeDTAp5aYAi9xMXmbgd"});
;// CONCATENATED MODULE: ./src/components/ui/Progressbar/Progressbar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var Progressbar_Progressbar = function (_a) {
    var _b;
    var selected = _a.selected, total = _a.total, visibleProgress = _a.visibleProgress, className = _a.className, color = _a.color;
    var percent = (100 * selected) / total;
    if (percent < 0) {
        percent = 0;
    }
    if (percent > 100) {
        percent = 100;
    }
    var style = {
        width: "".concat(percent, "%"),
        backgroundColor: color,
        minWidth: 5,
    };
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Progressbar.base, className, (_b = {}, _b[Progressbar.visibleProgress] = visibleProgress, _b)) }, { children: (0,jsx_runtime.jsx)("div", { className: classnames_default()(Progressbar.progress), style: style }) })));
};
/* harmony default export */ const ui_Progressbar_Progressbar = (Progressbar_Progressbar);

;// CONCATENATED MODULE: ./src/components/ui/Progressbar/index.ts



/***/ }),

/***/ "7iTR":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Range_Range)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/react-range/lib/index.js
var lib = __webpack_require__("0wfH");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/components/ui/Range/Range.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Range = ({"base":"jqatZBK6QLJnSaLtusGA","trackContainer":"Rr3dtHuYhof3HK5gF1Sc","trackLine":"EXoaNxPyutqfnDwf5H1c","thumb":"LP1nj4kZG3M3GVym1bz2","singleThumb":"TkvpeElWPyAQA7kbbpI7","thumbTooltip":"_z4ABnu230u0CdaF3XQZ","trackLabelsContainer":"W9qST6eih7QO9l50pMeJ"});
;// CONCATENATED MODULE: ./src/components/ui/Range/Range.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






var getColors = function (valuesCount) {
    var colorsByTheme = (0,colors/* getColorsByTheme */.hx)();
    if (valuesCount === 1)
        return [colorsByTheme.primary, colorsByTheme.primaryLighter];
    var primaryColoredElements = Array.from(Array(valuesCount - 1), function () { return colorsByTheme.primary; });
    return __spreadArray(__spreadArray([colorsByTheme.primaryLighter], __read(primaryColoredElements), false), [colorsByTheme.primaryLighter], false);
};
var Range_Range = function (_a) {
    var className = _a.className, forceUpdateThumbPosition = _a.forceUpdateThumbPosition, _b = _a.min, min = _b === void 0 ? 0 : _b, _c = _a.max, max = _c === void 0 ? 100 : _c, _d = _a.step, step = _d === void 0 ? 0.1 : _d, customTrackLabels = _a.customTrackLabels, values = _a.values, labelSuffix = _a.labelSuffix, onChange = _a.onChange, onFinalChange = _a.onFinalChange, _e = _a.disabled, disabled = _e === void 0 ? false : _e;
    var renderTrackLabels = function () {
        if (customTrackLabels) {
            return ((0,jsx_runtime.jsxs)("div", __assign({ className: Range.trackLabelsContainer }, { children: [(0,jsx_runtime.jsx)("div", { children: customTrackLabels.min }), (0,jsx_runtime.jsx)("div", { children: customTrackLabels.max })] })));
        }
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: Range.trackLabelsContainer }, { children: [values[0] !== min ? ((0,jsx_runtime.jsxs)("div", { children: [min, labelSuffix] })) : ((0,jsx_runtime.jsx)("div", {})), max !== values[0] && ((0,jsx_runtime.jsxs)("div", { children: [max, labelSuffix] }))] })));
    };
    var rangeRef = (0,react.useRef)();
    (0,react.useEffect)(function () {
        if (forceUpdateThumbPosition) {
            // Fix wrong thumb position
            setTimeout(function () {
                var _a;
                (_a = rangeRef.current) === null || _a === void 0 ? void 0 : _a.onResize();
            }, 200);
        }
    }, [rangeRef.current]);
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Range.base, className) }, { children: [(0,jsx_runtime.jsx)(lib.Range, { ref: rangeRef, values: values, step: step, min: min, max: max, disabled: disabled, onChange: onChange, onFinalChange: onFinalChange, renderTrack: function (_a) {
                    var props = _a.props, children = _a.children;
                    return ((0,jsx_runtime.jsx)("div", __assign({ className: Range.trackContainer, style: props.style, onMouseDown: props.onMouseDown, onTouchStart: props.onTouchStart }, { children: (0,jsx_runtime.jsx)("div", __assign({ className: Range.trackLine, ref: props.ref, style: {
                                background: (0,lib.getTrackBackground)({
                                    values: values,
                                    colors: getColors(values.length),
                                    min: min,
                                    max: max,
                                }),
                            } }, { children: children })) })));
                }, renderThumb: function (_a) {
                    var _b;
                    var props = _a.props, index = _a.index;
                    return ((0,jsx_runtime.jsx)("div", __assign({}, props, { className: classnames_default()((_b = {}, _b[Range.singleThumb] = values.length === 1, _b), Range.thumb), style: props.style }, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: Range.thumbTooltip }, { children: [values[index].toFixed(0), labelSuffix] })) })));
                } }), renderTrackLabels()] })));
};
/* harmony default export */ const ui_Range_Range = (Range_Range);

;// CONCATENATED MODULE: ./src/components/ui/Range/index.ts



/***/ }),

/***/ "Y2I4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_SearchableList_SearchableList)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/react-isolated-scroll/lib/index.js
var lib = __webpack_require__("rvBI");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./node_modules/downshift/dist/downshift.esm.js + 1 modules
var downshift_esm = __webpack_require__("2W6Z");
// EXTERNAL MODULE: ./node_modules/match-sorter/dist/match-sorter.esm.js
var match_sorter_esm = __webpack_require__("ilPa");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./node_modules/react-virtualized/dist/es/index.js + 68 modules
var es = __webpack_require__("woTO");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/utils/debounce.js
var debounce = __webpack_require__("P6/z");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/SearchableList/SearchableList.less
var SearchableList_SearchableList = __webpack_require__("XQtW");
;// CONCATENATED MODULE: ./src/components/ui/SearchableList/SearchableList.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
















var stateReducer = function (state, change) {
    var _a = downshift_esm/* default */.Ay.stateChangeTypes, keyDownEnter = _a.keyDownEnter, clickItem = _a.clickItem;
    if (change.type === keyDownEnter || change.type === clickItem) {
        return __assign(__assign({}, change), { isOpen: state.isOpen, highlightedIndex: state.highlightedIndex });
    }
    return change;
};
var SearchableList = /** @class */ (function (_super) {
    __extends(SearchableList, _super);
    function SearchableList(props) {
        var _this = _super.call(this, props) || this;
        _this.handleChange = function (_, filter) {
            _this.setState({ filter: filter });
            _this.updateSuggestions({ filter: filter });
        };
        _this.handleSelect = function (item, _a) {
            var selectedItem = _a.selectedItem;
            var _b = _this.props, onActionButtonPress = _b.onActionButtonPress, onSelect = _b.onSelect;
            /*
             * Downshift triggers onSelect callback on 'esc' click.
             * 'Esc' is recognized like clearing of search input in that case.
             */
            if (!selectedItem) {
                return null;
            }
            if (selectedItem.get('addButton') && onActionButtonPress) {
                return onActionButtonPress();
            }
            _this.updateSuggestions();
            return onSelect(item);
        };
        _this.updateSuggestions = function (predefinedState, predefinedProps) {
            if (predefinedState === void 0) { predefinedState = {}; }
            if (predefinedProps === void 0) { predefinedProps = {}; }
            _this.setState(function (state, props) { return ({
                suggestions: _this.mapSuggestions(__assign(__assign({}, state), (predefinedState || {})), __assign(__assign({}, props), (predefinedProps || {}))),
            }); });
        };
        _this.suggestionsSorter = function (suggestions, filter) {
            var sortingProperties = _this.props.sortingProperties;
            if (!sortingProperties) {
                return suggestions;
            }
            return (0,match_sorter_esm/* matchSorter */.Ht)(suggestions, filter, __assign({ threshold: match_sorter_esm/* rankings */.cG.MATCHES, baseSort: function (a, b) { return a.rankedValue.localeCompare(b.rankedValue, 'en', { numeric: true, sensitivity: 'base' }); } }, sortingProperties));
        };
        _this.formatSuggestionToRender = function (suggestion, index) { return ({ index: index, key: suggestion.get('id') }); };
        /* eslint-disable react/no-this-in-sfc */
        _this.renderSuggestion = function (highlightedIndex, getItemProps, darkMode) { return function (_a) {
            var _b, _c;
            var _d;
            var index = _a.index, isScrolling = _a.isScrolling, style = _a.style, key = _a.key;
            var _e = _this.props, renderItem = _e.renderItem, renderActionButton = _e.renderActionButton, isSuggestionSelected = _e.isSuggestionSelected;
            var item = _this.state.suggestions.get(index);
            /**
             * For now we just filter options that should not be rendered on search.
             * In future, I hope, we will come with more elegant solution:
             * SELECT_ALL should select/deselect only found options
             */
            if (_this.state.filter && ((_d = _this.props.suggestionsToAvoidOnSearch) === null || _d === void 0 ? void 0 : _d.includes(item.get('id')))) {
                return null;
            }
            if (isScrolling) {
                return ((0,jsx_runtime.jsxs)("div", __assign({ style: style, className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestion) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestionCheckboxEmptyIcon), type: "checkbox-empty", size: 20 }), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestionCheckboxEmptyLabel, (_b = {}, _b[SearchableList_SearchableList/* default */.A.darkMode] = darkMode, _b)) }, { children: item.get('name') }))] }), key));
            }
            var suggestion = renderItem(item, highlightedIndex === index);
            if (!suggestion) {
                return false;
            }
            if (item.get('addButton')) {
                return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestion) }, getItemProps({
                    item: item,
                    index: index,
                }), { children: renderActionButton(highlightedIndex === index) }), "addButton"));
            }
            return ((0,jsx_runtime.jsx)("div", __assign({ style: style, className: classnames_default()(SearchableList_SearchableList/* default */.A.suggestion, (_c = {}, _c[SearchableList_SearchableList/* default */.A.selected] = isSuggestionSelected && isSuggestionSelected(item), _c)) }, getItemProps({
                item: item,
                index: index,
                key: item.get('id'),
                disabled: isSuggestionSelected && isSuggestionSelected(item),
            }), { children: suggestion }), key));
        }; };
        _this.state = {
            filter: '',
            suggestions: _this.mapSuggestions({ filter: '' }, props),
        };
        _this.updateSuggestionsOnFilterChange = (0,debounce/* default */.A)(_this.updateSuggestions, 100);
        _this.downshift = (0,react.createRef)();
        return _this;
    }
    SearchableList.prototype.componentDidUpdate = function (prevProps) {
        var prevSuggestions = prevProps.suggestions, prevValue = prevProps.value;
        var _a = this.props, suggestions = _a.suggestions, value = _a.value;
        if (!prevSuggestions.equals(suggestions)) {
            this.updateSuggestions();
        }
        if (value !== prevValue) {
            this.updateSuggestionsOnFilterChange();
        }
    };
    SearchableList.prototype.mapSuggestions = function (state, props) {
        var suggestions = props.suggestions, value = props.value, renderActionButton = props.renderActionButton;
        var filter = state.filter;
        var inputValue = value || filter;
        var actionButton = (0,immutable.Map)({ addButton: true });
        var results = (0,immutable.List)(this.suggestionsSorter(suggestions, inputValue));
        var suggestionExists = results.find(function (suggestion) { return suggestion.get('name') === value; });
        if (!suggestions.isEmpty() && !suggestionExists && renderActionButton) {
            return (0,immutable.List)(__spreadArray(__spreadArray([], __read(results.toArray()), false), [actionButton], false));
        }
        return results;
    };
    SearchableList.prototype.render = function () {
        var _this = this;
        var _a = this.props, value = _a.value, size = _a.size, autoFocus = _a.autoFocus, leftIcon = _a.leftIcon, hintText = _a.hintText, placeholder = _a.placeholder, isLoading = _a.isLoading, className = _a.className, emptyState = _a.emptyState, itemToString = _a.itemToString, darkMode = _a.darkMode, isLongList = _a.isLongList, virtualListProps = _a.virtualListProps, onInputChange = _a.onInputChange;
        var _b = this.state, filter = _b.filter, suggestions = _b.suggestions;
        var showSuggestions = suggestions && suggestions.size > 0;
        var loaderEmptyState = emptyState || (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { title: l('No results') });
        var overrideVirtualListProps = __assign({ scrollToIndex: 0, rowCount: suggestions.size, rowHeight: 25, width: 250, overscanRowCount: 20 }, virtualListProps);
        return ((0,jsx_runtime.jsx)(downshift_esm/* default */.Ay, __assign({ ref: this.downshift, stateReducer: stateReducer, itemToString: itemToString, defaultHighlightedIndex: 0, onSelect: this.handleSelect }, { children: function (_a) {
                var _b, _c;
                var highlightedIndex = _a.highlightedIndex, getInputProps = _a.getInputProps, getItemProps = _a.getItemProps, isOpen = _a.isOpen, selectHighlightedItem = _a.selectHighlightedItem;
                return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(TextField/* NativeTextField */.z, __assign({ fullWidth: true, darkMode: darkMode, autoFocus: autoFocus, hintText: hintText, size: size, leftIcon: leftIcon || (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }) }, getInputProps({
                            placeholder: placeholder,
                            value: value || filter,
                            onChange: onInputChange || _this.handleChange,
                            onKeyDown: function (e) {
                                if (!isOpen && e.key === 'Enter' && highlightedIndex === 0) {
                                    selectHighlightedItem();
                                }
                            },
                        }))), !hintText && (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), isLongList && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(className, SearchableList_SearchableList/* default */.A.searchableListLong, SearchableList_SearchableList/* default */.A.suggestionsContainer, (_b = {}, _b[SearchableList_SearchableList/* default */.A.darkMode] = darkMode, _b)) }, { children: (0,jsx_runtime.jsx)(es/* AutoSizer */.t$, __assign({ disableWidth: true, disableHeight: !showSuggestions }, { children: function (_a) {
                                    var height = _a.height;
                                    return ((0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !isLoading, empty: !showSuggestions, emptyState: loaderEmptyState }, { children: (0,jsx_runtime.jsx)(es/* List */.B8, __assign({}, overrideVirtualListProps, { height: height, rowRenderer: _this.renderSuggestion(highlightedIndex, getItemProps, darkMode) })) })));
                                } })) }))), !isLongList && ((0,jsx_runtime.jsx)((lib_default()), __assign({ className: classnames_default()(className, SearchableList_SearchableList/* default */.A.suggestionsContainer, (_c = {}, _c[SearchableList_SearchableList/* default */.A.darkMode] = darkMode, _c)) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !isLoading, empty: !showSuggestions, emptyState: loaderEmptyState }, { children: suggestions.map((0,redux/* compose */.Zz)(_this.renderSuggestion(highlightedIndex, getItemProps, darkMode), _this.formatSuggestionToRender)) })) })))] }));
            } })));
    };
    SearchableList.defaultProps = {
        isLoading: false,
        itemToString: function (suggestion) { return (suggestion ? suggestion.get('name') : ''); },
        suggestions: (0,immutable.List)(),
    };
    return SearchableList;
}(react.PureComponent));
/* harmony default export */ const ui_SearchableList_SearchableList = (SearchableList);

;// CONCATENATED MODULE: ./src/components/ui/SearchableList/index.tsx



/***/ }),

/***/ "JSD5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_SecondaryText_SecondaryText)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/SecondaryText/SecondaryText.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SecondaryText = ({"base":"_FRPghYaPz66hIi5zh0L"});
;// CONCATENATED MODULE: ./src/components/ui/SecondaryText/SecondaryText.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var SecondaryText_SecondaryText = function (_a) {
    var className = _a.className, children = _a.children;
    return ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(className, SecondaryText.base) }, { children: children })));
};
/* harmony default export */ const ui_SecondaryText_SecondaryText = (SecondaryText_SecondaryText);

;// CONCATENATED MODULE: ./src/components/ui/SecondaryText/index.ts



/***/ }),

/***/ "/4sX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Section_Section)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Section/Section.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Section = ({"content":"BJM48MBgZawTOa9cisKm"});
;// CONCATENATED MODULE: ./src/components/ui/Section/Section.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





/**
 * Component that provides label and area under it - sections.
 * This component has label for showing what kind of section this is and can contain
 * anything inside of it, as some sort of labeled wrapper
 */
var Section_Section = function (_a) {
    var label = _a.label, children = _a.children, className = _a.className, withDivider = _a.withDivider;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(className) }, { children: [label
                && (0,jsx_runtime.jsx)(H3/* default */.A, { children: label }), withDivider
                && (0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Section.content) }, { children: children }))] })));
};
/* harmony default export */ const ui_Section_Section = (Section_Section);

;// CONCATENATED MODULE: ./src/components/ui/Section/index.ts



/***/ }),

/***/ "I9tN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Select_Select)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-select/dist/react-select.esm.js + 12 modules
var react_select_esm = __webpack_require__("dWY3");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Select/Select.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Select = ({"overlayedBlock":"mTexd7eZMdp0h_M78YI2","flexCenter":"B5QforVcgYJLv2O4T1FQ","smartFeature":"CN0e9VLPFgsi1ZmMTBcz","tag":"MOb4TfxAZBtlBXhLJQRO","visibleScrollBar":"Lg5tISI6QF6jcCkJQYGI","hiddenScrollBar":"RSgsngNQFQlIPODNHMdT","base":"xTyI8UDxnL59mxJu2l_B","select":"VUxecLO66ntg5QS4yRov","error":"XViQ59SLFx0PwwBsikec","hiddenInput":"pYo8mhky3NK57gdJpQ_w"});
;// CONCATENATED MODULE: ./src/components/ui/Select/Select.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





var noop = function () { };
var Select_Select = function (_a) {
    var _b;
    var isReadOnly = _a.isReadOnly, isSearchable = _a.isSearchable, isDisabled = _a.isDisabled, isClearable = _a.isClearable, required = _a.required, className = _a.className, placeholder = _a.placeholder, name = _a.name, menuPlacement = _a.menuPlacement, menuPosition = _a.menuPosition, value = _a.value, options = _a.options, formatGroupLabel = _a.formatGroupLabel, formatOptionLabel = _a.formatOptionLabel, filterOption = _a.filterOption, _c = _a.onChange, onChange = _c === void 0 ? noop : _c, onFocus = _a.onFocus, onBlur = _a.onBlur, error = _a.error;
    var _d = __read((0,react.useState)(value), 2), selectValue = _d[0], setSelectValue = _d[1];
    var selectRef = (0,react.useRef)();
    (0,react.useEffect)(function () {
        setSelectValue(value);
    }, [value]);
    var changeHandler = function (newValue, actionMeta) {
        onChange(newValue, actionMeta);
        setSelectValue(newValue);
    };
    var getValue = function () {
        return value || selectValue || '';
    };
    var focus = function () {
        var node = selectRef.current;
        if (node) {
            node.focus();
        }
    };
    var enableRequired = !isDisabled;
    if (isReadOnly) {
        return (0,jsx_runtime.jsx)("div", { children: (value === null || value === void 0 ? void 0 : value.label) || null });
    }
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Select.base) }, { children: [(0,jsx_runtime.jsx)(react_select_esm/* default */.Ay, { ref: selectRef, isSearchable: isSearchable || false, isDisabled: isDisabled, isClearable: isClearable, className: classnames_default()(className, Select.select, (_b = {}, _b[Select.error] = error, _b)), classNamePrefix: "select", noOptionsMessage: function () { return l('No options'); }, menuPlacement: menuPlacement, placeholder: placeholder, menuPosition: menuPosition, value: value, options: options, formatGroupLabel: formatGroupLabel, formatOptionLabel: formatOptionLabel, filterOption: filterOption, onChange: changeHandler, onFocus: onFocus, onBlur: onBlur, name: name }), enableRequired && ((0,jsx_runtime.jsx)("input", { tabIndex: -1, autoComplete: "off", className: classnames_default()(Select.hiddenInput), value: getValue(), onChange: noop, onFocus: focus, required: required }))] })));
};
/* harmony default export */ const ui_Select_Select = (Select_Select);

;// CONCATENATED MODULE: ./src/components/ui/Select/index.ts



/***/ }),

/***/ "NS2V":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_SentimentDistributionBar_SentimentDistributionBar)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/components/ui/SentimentDistributionBar/SentimentDistributionBar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SentimentDistributionBar = ({"base":"CQQcGTlVIZTXsJ8mhxxi","sentiment":"t9IxzlsdD_kLgpR_YTlZ","statsFull":"aJnofRQn8vUztI_myvsM"});
;// CONCATENATED MODULE: ./src/components/ui/SentimentDistributionBar/SentimentDistributionBar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var SentimentDistributionBar_SentimentDistributionBar = function (_a) {
    var className = _a.className, _b = _a.height, height = _b === void 0 ? 10 : _b, negativeCount = _a.negativeCount, positiveCount = _a.positiveCount, neutralCount = _a.neutralCount, _c = _a.undefinedCount, undefinedCount = _c === void 0 ? 0 : _c, maxCount = _a.maxCount, _d = _a.onSentimentClick, onSentimentClick = _d === void 0 ? function () { } : _d;
    var getPercent = function (value, total, max) {
        return (value * 100) / (max || total);
    };
    var totalCount = negativeCount + positiveCount + neutralCount + undefinedCount;
    var sentiments = [
        {
            type: 'negative',
            count: negativeCount,
        },
        {
            type: 'positive',
            count: positiveCount,
        },
        {
            type: 'neutral',
            count: neutralCount,
        },
        {
            type: 'undefined',
            count: undefinedCount,
        }
    ];
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(SentimentDistributionBar.base, className), style: { height: height } }, { children: sentiments.map(function (sentiment) { return ((0,jsx_runtime.jsx)("div", { title: String(sentiment.count), style: {
                cursor: 'pointer',
                width: "".concat(getPercent(sentiment.count, totalCount, maxCount), "%"),
                backgroundColor: (0,colors/* getSentimentColor */.HS)(sentiment.type),
            }, className: classnames_default()(SentimentDistributionBar.sentiment), onClick: function () { return onSentimentClick(sentiment.type); } }, sentiment.type)); }) })));
};
/* harmony default export */ const ui_SentimentDistributionBar_SentimentDistributionBar = ((0,react.memo)(SentimentDistributionBar_SentimentDistributionBar));

;// CONCATENATED MODULE: ./src/components/ui/SentimentDistributionBar/index.ts



/***/ }),

/***/ "3aHs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ShareLink_ShareLink)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-copy-to-clipboard/lib/index.js
var lib = __webpack_require__("P5Jw");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/ShareLink/ShareLink.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ShareLink = ({"base":"eZfdU8GqCMion_GeRg8S"});
;// CONCATENATED MODULE: ./src/components/ui/ShareLink/ShareLink.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};










function ShareLink_ShareLink(_a) {
    var value = _a.value, _b = _a.size, size = _b === void 0 ? 'default' : _b, loading = _a.loading, onCopy = _a.onCopy;
    var _c = __read((0,react.useState)(false), 2), copied = _c[0], setCopied = _c[1];
    var handleCopy = function () {
        setCopied(true);
        onCopy === null || onCopy === void 0 ? void 0 : onCopy();
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(ShareLink.base) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { autoFocus: true, readOnly: true, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "link" }), onCopy: onCopy, value: value, size: size }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)((lib_default()), __assign({ text: value, onCopy: handleCopy }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { loading: loading, primary: true, size: size, label: copied ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Copied')] })) : (l('Copy', 'action')) }) }))] })));
}

;// CONCATENATED MODULE: ./src/components/ui/ShareLink/index.ts



/***/ }),

/***/ "tfIF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_SourceIcon_SourceIcon)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
;// CONCATENATED MODULE: ./src/utils/getSourceIconSrc.js
var retrieveGoogle = function retrieveGoogle(name) {
  return "https://www.google.com/s2/favicons?sz=64&domain=".concat(name);
};
var retrieveDuckduckgo = function retrieveDuckduckgo(name) {
  return "https://icons.duckduckgo.com/ip3/".concat(name, ".ico");
};
function getSourceIconSrc(name) {
  return retrieveGoogle(name);
}
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/SourceIcon/SourceIcon.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SourceIcon = ({"base":"v5GRq8kcoFcFFPl1xqqb","gray":"aNVwNFEfwHwPycxFGYbZ"});
;// CONCATENATED MODULE: ./src/components/ui/SourceIcon/SourceIcon.tsx





/**
 * Component to display favicon of the source
 */
var SourceIcon_SourceIcon = function (_a) {
    var _b;
    var _c = _a.size, size = _c === void 0 ? 14 : _c, _d = _a.name, name = _d === void 0 ? '' : _d, _e = _a.alt, alt = _e === void 0 ? '' : _e, className = _a.className, gray = _a.gray, style = _a.style;
    return ((0,jsx_runtime.jsx)("img", { alt: alt, className: classnames_default()(SourceIcon.base, className, (_b = {}, _b[SourceIcon.gray] = gray, _b)), title: name, src: getSourceIconSrc(name), width: size, height: size, style: style }));
};
/* harmony default export */ const ui_SourceIcon_SourceIcon = ((0,react.memo)(SourceIcon_SourceIcon));


/***/ }),

/***/ "TkzK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _SourceIcon__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _SourceIcon__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("tfIF");



/***/ }),

/***/ "JWWG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Spinner_Spinner)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Spinner/Spinner.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Spinner = ({"pulsateSpinner":"E0syZPblPtIeBtCmZSKT","pulsate":"X3QdEAXJbItaEBTuLdh_","dotSpinner":"w3Ak_aDbLfCLYsMEKwwQ","doting":"gQb6mcua23oraWaf1Zp6","bounce1":"vN_Nd0go1DqMgEfm_bl9","bounce2":"EGDg1aaSjqWJlv28pPGf"});
;// CONCATENATED MODULE: ./src/components/ui/Spinner/Spinner.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var Spinner_Spinner = function (_a) {
    var type = _a.type;
    if (type === 'dots') {
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Spinner.dotSpinner) }, { children: [(0,jsx_runtime.jsx)("div", { className: classnames_default()(Spinner.bounce1) }), (0,jsx_runtime.jsx)("div", { className: classnames_default()(Spinner.bounce2) }), (0,jsx_runtime.jsx)("div", { className: classnames_default()(Spinner.bounce3) })] })));
    }
    return (0,jsx_runtime.jsx)("div", { className: classnames_default()(Spinner.pulsateSpinner) });
};
/* harmony default export */ const ui_Spinner_Spinner = (Spinner_Spinner);

;// CONCATENATED MODULE: ./src/components/ui/Spinner/index.ts



/***/ }),

/***/ "AacN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Switch_Switch)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/rc-switch/es/index.js
var es = __webpack_require__("XIdC");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Switch/Switch.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Switch = ({"container":"vKeSwvvXmbJBCtgtJCYE","withLabel":"VCM1pcnvp0fOLZ8wLDQr","verticallyAligned":"TMbWffhVUfChO1fQGIgn","text":"o7vRmENIhu5p8Vp4mHGR","loading":"ZR5_xETKnDGsNNwvzlvr"});
;// CONCATENATED MODULE: ./src/components/ui/Switch/Switch.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




var Switch_Switch = function (_a) {
    var _b;
    var verticallyAligned = _a.verticallyAligned, label = _a.label, loading = _a.loading, description = _a.description, className = _a.className, otherProps = __rest(_a, ["verticallyAligned", "label", "loading", "description", "className"]);
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Switch.container, className, (_b = {}, _b[Switch.loading] = loading, _b[Switch.verticallyAligned] = verticallyAligned, _b[Switch.withLabel] = label, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Switch.text) }, { children: [label && (0,jsx_runtime.jsx)("span", { children: label }), description && (0,jsx_runtime.jsx)("span", { children: description })] })), (0,jsx_runtime.jsx)(es["default"], __assign({}, otherProps))] })));
};
/* harmony default export */ const ui_Switch_Switch = (Switch_Switch);

;// CONCATENATED MODULE: ./src/components/ui/Switch/index.ts



/***/ }),

/***/ "AYO0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  U: () => (/* binding */ SortDirection),
  A: () => (/* binding */ ui_Table_Table)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
;// CONCATENATED MODULE: ./src/components/ui/Table/Table.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Table = ({"base":"CrETEX6vQk3IQrVdLXw_","table":"VmTskro4PtyeY96npLVc","header":"QpRBR2vywr6lm1opaow8","cell":"ks4N_GI0PtJlOp6FKUgi","withHighlight":"j2NS6mY9wjEnvVCmYWv2","highlight":"aNH4dU1_DK8RWEUgO0tY","blur":"MpwkFNMMbKpZpFhRveWK","sortableHeader":"p1VkuXrGq02e84M1wofz","active":"TMqEtDIOGPz3EZk_F1wY"});
;// CONCATENATED MODULE: ./src/components/ui/Table/Table.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};





var SortDirection;
(function (SortDirection) {
    SortDirection["Asc"] = "asc";
    SortDirection["Desc"] = "desc";
})(SortDirection || (SortDirection = {}));
var Table_Table = function (_a) {
    var _b, _c;
    var skipSorting = _a.skipSorting, data = _a.data, columnsConfig = _a.columnsConfig, tableConfig = _a.tableConfig, rowConfig = _a.rowConfig, headerConfig = _a.headerConfig, renderTopContent = _a.renderTopContent;
    var _d = __read((0,react.useState)((_b = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.defaultSorted) === null || _b === void 0 ? void 0 : _b.columnId), 2), sortColumn = _d[0], setSortColumn = _d[1];
    var _e = __read((0,react.useState)((_c = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.defaultSorted) === null || _c === void 0 ? void 0 : _c.direction), 2), sortDirection = _e[0], setSortDirection = _e[1];
    (0,react.useEffect)(function () {
        if ((tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.sort) && (tableConfig.sort.columnId !== sortColumn || tableConfig.sort.direction !== sortDirection)) {
            setSortColumn(tableConfig.sort.columnId);
            setSortDirection(tableConfig.sort.direction);
            if (tableConfig.onSorted)
                tableConfig.onSorted(sortData(tableConfig.sort.columnId, tableConfig.sort.direction));
        }
    }, [tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.sort]);
    var sortData = function (columnId, direction) {
        if (!columnId || !direction || skipSorting)
            return data;
        return __spreadArray([], __read(data), false).sort(function (a, b) {
            var accessor = columnsConfig.find(function (column) { return column.id === columnId; }).accessor;
            var valueA = accessor(a);
            var valueB = accessor(b);
            if (valueA === undefined)
                return direction === SortDirection.Asc ? -1 : 1;
            if (valueB === undefined)
                return direction === SortDirection.Asc ? 1 : -1;
            if (valueA < valueB)
                return direction === SortDirection.Asc ? -1 : 1;
            if (valueA > valueB)
                return direction === SortDirection.Asc ? 1 : -1;
            return 0;
        });
    };
    var handleSortData = function (columnId) {
        var _a, _b;
        var newSortDirection = sortColumn === columnId && sortDirection === SortDirection.Asc ? SortDirection.Desc : SortDirection.Asc;
        (_a = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.onSortHeaderClick) === null || _a === void 0 ? void 0 : _a.call(tableConfig, { columnId: columnId, direction: newSortDirection });
        if (!(tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.sort)) {
            setSortDirection(newSortDirection);
            setSortColumn(columnId);
            (_b = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.onSorted) === null || _b === void 0 ? void 0 : _b.call(tableConfig, sortData(columnId, newSortDirection), { columnId: columnId, direction: newSortDirection });
        }
    };
    var renderSortIcon = function (columnId) {
        if (sortColumn === columnId) {
            return sortDirection === SortDirection.Asc
                ? (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "arrow-up-thin", color: "black" })
                : (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 16, type: "arrow-down-thin", color: "black" });
        }
        return null;
    };
    var renderTableHeader = function () {
        return ((0,jsx_runtime.jsx)("thead", { children: (0,jsx_runtime.jsx)("tr", { children: columnsConfig.map(function (column) {
                    var _a;
                    return (column.show !== false && ((0,jsx_runtime.jsxs)("th", __assign({ className: classnames_default()(Table.header, (_a = {}, _a[Table.sortableHeader] = column.sortable, _a[Table.active] = column.id === sortColumn, _a[Table.highlight] = column.isHighlighted, _a)), style: {
                            minWidth: column.minWidth,
                            maxWidth: column.maxWidth,
                            width: column.width,
                            textAlign: column.headerAlign || (headerConfig === null || headerConfig === void 0 ? void 0 : headerConfig.align),
                        } }, (column.sortable && { onClick: function () { return handleSortData(column.id); } }), { children: [column.header(), column.sortable && renderSortIcon(column.id)] }), column.id)));
                }) }) }));
    };
    var renderTableBody = function () {
        return ((0,jsx_runtime.jsx)("tbody", { children: sortData(sortColumn, sortDirection).map(function (row) {
                var _a;
                return ((0,jsx_runtime.jsx)("tr", __assign({ className: classnames_default()((_a = {}, _a[Table.withHighlight] = rowConfig.withHighlight, _a)), onClick: rowConfig.onClick && (function () { return rowConfig.onClick(row); }) }, { children: columnsConfig.map(function (column) {
                        var _a;
                        return (column.show !== false && ((0,jsx_runtime.jsx)("td", __assign({ className: classnames_default()(Table.cell, (_a = {}, _a[Table.highlight] = column.isHighlighted, _a[Table.blur] = column.blur, _a)), style: {
                                minWidth: column.minWidth,
                                maxWidth: column.maxWidth,
                                width: column.width,
                                textAlign: column.align,
                            } }, { children: column.cell({ value: column.accessor(row), row: row }) }), column.id)));
                    }) }), rowConfig.keyAccessor(row)));
            }) }));
    };
    return ((0,jsx_runtime.jsx)("div", __assign({ className: Table.base }, { children: (0,jsx_runtime.jsxs)("table", __assign({ className: Table.table }, { children: [renderTopContent && renderTopContent(), renderTableHeader(), renderTableBody()] })) })));
};
/* harmony default export */ const ui_Table_Table = (Table_Table);


/***/ }),

/***/ "CiH5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_TextArea_TextArea)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Label/index.ts + 2 modules
var Label = __webpack_require__("HiCK");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/TextArea/TextArea.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const TextArea_TextArea = ({"base":"_Kr86cSuhxchg_yxzKUv","textarea":"ICrjGCYlGsktOUOf_DZW","fullWidth":"MAu5tnm83lcn69I7taAw","withoutBorders":"Y_guo7Tt2AVe9rp4TG6v","padded":"_3M5pqY4o8MLQqk7BR_Uw","label":"CnAAzKSxogtuWiH5H7fH","withError":"VG0g5X8wDLuDQpnxrBhm","errorText":"ii89QTC9JTLCfWK6tBJG"});
;// CONCATENATED MODULE: ./src/components/ui/TextArea/TextArea.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};





var ENTER_KEY = 13;
var TextArea = /** @class */ (function (_super) {
    __extends(TextArea, _super);
    function TextArea(props) {
        var _this = _super.call(this, props) || this;
        _this.handleKeyDown = function (e) {
            var _a;
            var _b = _this.props, onPressEnter = _b.onPressEnter, onKeyDown = _b.onKeyDown;
            var value = ((_a = _this.input) === null || _a === void 0 ? void 0 : _a.current).value;
            if (onPressEnter && e.keyCode === ENTER_KEY) {
                onPressEnter(value, e);
            }
            if (onKeyDown) {
                onKeyDown(e);
            }
        };
        _this.handleChange = function (e) {
            var onChange = _this.props.onChange;
            if (onChange) {
                onChange(e.target.value, e);
            }
        };
        _this.input = props.propRef || (0,react.createRef)();
        return _this;
    }
    TextArea.prototype.componentDidMount = function () {
        if (this.props.autoFocus) {
            this.input.current.focus();
        }
    };
    TextArea.prototype.render = function () {
        var _a, _b;
        var _c = this.props, className = _c.className, label = _c.label, withoutBorders = _c.withoutBorders, fullWidth = _c.fullWidth, padded = _c.padded, placeholder = _c.placeholder, value = _c.value, rows = _c.rows, onFocus = _c.onFocus, onBlur = _c.onBlur, onKeyDown = _c.onKeyDown, errorText = _c.errorText, required = _c.required, otherProps = __rest(_c, ["className", "label", "withoutBorders", "fullWidth", "padded", "placeholder", "value", "rows", "onFocus", "onBlur", "onKeyDown", "errorText", "required"]);
        var withLabel = !!label;
        var withError = !!errorText;
        var classes = classnames_default()(className, TextArea_TextArea.textarea, (_a = {},
            _a[TextArea_TextArea.fullWidth] = fullWidth,
            _a[TextArea_TextArea.padded] = padded,
            _a[TextArea_TextArea.withoutBorders] = withoutBorders,
            _a[TextArea_TextArea.withLabel] = withLabel,
            _a[TextArea_TextArea.withError] = withError,
            _a));
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(TextArea_TextArea.base, (_b = {}, _b[TextArea_TextArea.fullWidth] = fullWidth, _b)) }, { children: [withLabel
                    && ((0,jsx_runtime.jsx)(Label/* default */.A, __assign({ required: required }, { children: label }))), (0,jsx_runtime.jsx)("textarea", __assign({}, otherProps, { ref: this.input, className: classes, placeholder: placeholder, value: value, rows: rows, required: required, onChange: this.handleChange, onFocus: onFocus, onBlur: onBlur, onKeyDown: this.handleKeyDown })), (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(TextArea_TextArea.errorText) }, { children: errorText }))] })));
    };
    return TextArea;
}(react.PureComponent));
/* harmony default export */ const ui_TextArea_TextArea = (TextArea);

;// CONCATENATED MODULE: ./src/components/ui/TextArea/index.tsx



/***/ }),

/***/ "mVWl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_TextField_TextField)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Label/index.ts + 2 modules
var Label = __webpack_require__("HiCK");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/TextField/TextField.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TextField_TextField = ({"overlayedBlock":"rza7F8jLEB5JJaqYGJVB","flexCenter":"BNUhZxStvP7E_d4A4hdb","smartFeature":"kH30jfnilRtBHEjT6s8e","tag":"RD7nDFVQAsrI1eKGFowO","visibleScrollBar":"G6VM4hZkMkHvGz_KF3DU","hiddenScrollBar":"rKzQFQ_GRAnqYLIC6F3M","base":"kLGNTUg0T5GgeGqEPqMA","fullWidth":"ThQAjPT0xLQKyvUsxRRg","disabled":"bJIRpaZxnS9WnBTaxZZN","default":"gVDvV06ALghkw9IZT7AD","input":"rpQlqahlfDzS90LDZMAA","withRightIcon":"uvfzcn6vXQof01r11748","withLeftIcon":"bYJQPdZO1T4BKOwJrEQv","righticonContainer":"KLwl69h9XsVQwcFUFGNa","leftIconContainer":"o6cxnn63hjHPw7algSqO","large":"J4ipZOFlGTdcqbGyPPZ0","small":"VfqxK_JGC_RtgwYW5mXF","inputContainer":"vx_YoALDy_GCkxHBq99t","darkMode":"KfW7VuTYaBkNFjQcNHrd","withError":"jtot5eOrcdU0E5npHg5K","rightIconContainer":"mVE7CmvWlE3hpufCcykK","rightIcon":"IiU7lmf_JlaoQqovtXC1","leftIcon":"UJixYMQ2nvym6v9QCDMF","errorText":"f6QxSqOMJ9twu37t3QS3","hintText":"nqvMC04MripO3Wz27gti"});
;// CONCATENATED MODULE: ./src/components/ui/TextField/TextField.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};





var ENTER_KEY = 13;
/**
 * A basic widget for getting user's input is a text field.
 * Keyboard and mouse can be used for providing or changing data
 */
var TextField = /** @class */ (function (_super) {
    __extends(TextField, _super);
    function TextField(props) {
        var _this = _super.call(this, props) || this;
        _this.handleChange = function (e) {
            var _a = _this.props, onChange = _a.onChange, useNativeOnChangeSignature = _a.useNativeOnChangeSignature;
            var value = e.target.value;
            if (onChange) {
                if (useNativeOnChangeSignature) {
                    onChange(e, value);
                    return;
                }
                onChange(value, e);
            }
        };
        _this.handleKeyDown = function (e) {
            var _a = _this.props, onPressEnter = _a.onPressEnter, onKeyDown = _a.onKeyDown;
            var value = _this.input.current.value;
            if (onPressEnter && e.keyCode === ENTER_KEY) {
                onPressEnter(value, e);
            }
            if (onKeyDown) {
                onKeyDown(e);
            }
        };
        _this.handleFocus = function (e) {
            var onFocus = _this.props.onFocus;
            _this.focus();
            if (onFocus) {
                onFocus(e);
            }
        };
        /**
         * Method to focus input when needed
         * e.g. this.input.focus()
         */
        _this.focus = function () {
            if (_this.props.disableFocusOnClick)
                return;
            _this.input.current.focus();
        };
        _this.input = props.propRef || (0,react.createRef)();
        return _this;
    }
    TextField.prototype.componentDidMount = function () {
        var _this = this;
        if (this.props.autoFocus) {
            setTimeout(function () { var _a; return (_a = _this.input.current) === null || _a === void 0 ? void 0 : _a.focus(); }, 50);
        }
    };
    TextField.prototype.render = function () {
        var _a, _b, _c;
        var _d = this.props, disabled = _d.disabled, required = _d.required, size = _d.size, width = _d.width, className = _d.className, errorText = _d.errorText, errorTextClassName = _d.errorTextClassName, hintText = _d.hintText, fullWidth = _d.fullWidth, label = _d.label, placeholder = _d.placeholder, autoFocus = _d.autoFocus, leftIcon = _d.leftIcon, rightIcon = _d.rightIcon, type = _d.type, value = _d.value, inputClassName = _d.inputClassName, darkMode = _d.darkMode, onFocus = _d.onFocus, onBlur = _d.onBlur, onCopy = _d.onCopy, otherProps = __rest(_d, ["disabled", "required", "size", "width", "className", "errorText", "errorTextClassName", "hintText", "fullWidth", "label", "placeholder", "autoFocus", "leftIcon", "rightIcon", "type", "value", "inputClassName", "darkMode", "onFocus", "onBlur", "onCopy"]);
        var withLeftIcon = !!leftIcon;
        var withRightIcon = !!rightIcon;
        var withError = !!errorText;
        var withLabel = !!label;
        var classes = classnames_default()(className, TextField_TextField.base, TextField_TextField[size], (_a = {},
            _a[TextField_TextField.fullWidth] = fullWidth,
            _a[TextField_TextField.disabled] = disabled,
            _a[TextField_TextField.autoFocus] = autoFocus,
            _a));
        var inputClasses = classnames_default()(inputClassName, TextField_TextField.input, (_b = {},
            _b[TextField_TextField.darkMode] = darkMode,
            _b[TextField_TextField.fullWidth] = fullWidth,
            _b[TextField_TextField.withLeftIcon] = withLeftIcon,
            _b[TextField_TextField.withRightIcon] = withRightIcon,
            _b[TextField_TextField.withLabel] = withLabel,
            _b[TextField_TextField.withError] = withError,
            _b));
        // TODO: remove this when we stop using redux-form
        otherProps === null || otherProps === void 0 ? true : delete otherProps.autofill;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.autofilled;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.visited;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.touched;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.active;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.pristine;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.dirty;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.invalid;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.valid;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.onUpdate;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.initialValue;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.onPressEnter;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.disableFocusOnClick;
        otherProps === null || otherProps === void 0 ? true : delete otherProps.propRef;
        return ((0,jsx_runtime.jsxs)("div", __assign({ role: "presentation", className: classes, style: { width: width }, "data-custom-class-name": "textFieldBase", onClick: this.focus }, { children: [withLabel
                    && ((0,jsx_runtime.jsx)(Label/* default */.A, __assign({ required: required }, { children: label }))), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(TextField_TextField.inputContainer) }, { children: [withLeftIcon
                            && ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(TextField_TextField.leftIconContainer) }, { children: (0,react.cloneElement)(leftIcon, {
                                    color: 'default',
                                    className: 'leftIcon',
                                }) }))), (0,jsx_runtime.jsx)("input", __assign({}, otherProps, { ref: this.input, disabled: disabled, className: inputClasses, type: type, required: required, placeholder: placeholder, value: value, onChange: this.handleChange, onFocus: onFocus, onBlur: onBlur, onKeyDown: this.handleKeyDown, onCopy: onCopy })), withRightIcon
                            && ((0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(TextField_TextField.rightIconContainer) }, { children: (0,react.cloneElement)(rightIcon, {
                                    size: size,
                                    className: 'rightIcon',
                                }) })))] })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TextField_TextField.errorText, errorTextClassName) }, { children: errorText })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TextField_TextField.hintText, (_c = {}, _c[TextField_TextField.darkMode] = darkMode, _c)) }, { children: !errorText && hintText }))] })));
    };
    TextField.defaultProps = {
        disabled: false,
        type: 'text',
        size: 'default',
    };
    return TextField;
}(react.Component));
/* harmony default export */ const ui_TextField_TextField = (TextField);


/***/ }),

/***/ "ZSfL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ ui_Tooltip_Tooltip)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/Tooltip/Tooltip.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Tooltip = ({"base":"FSYLLiR0FvInXWviXJ3L"});
;// CONCATENATED MODULE: ./src/components/ui/Tooltip/Tooltip.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};




var Tooltip_Tooltip = function (_a) {
    var _b = _a.on, on = _b === void 0 ? 'hover' : _b, text = _a.text, position = _a.position, children = _a.children, otherProps = __rest(_a, ["on", "text", "position", "children"]);
    if (!text) {
        return children;
    }
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ inverted: true, fitted: true, content: (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(Tooltip.base) }, { children: text })), on: on, position: position ? position : "top center" }, otherProps, { children: children })));
};
/* harmony default export */ const ui_Tooltip_Tooltip = (Tooltip_Tooltip);

;// CONCATENATED MODULE: ./src/components/ui/Tooltip/index.ts



/***/ }),

/***/ "eCxQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ ui_UserAvatar_UserAvatar)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/string-hash/index.js
var string_hash = __webpack_require__("9kyW");
var string_hash_default = /*#__PURE__*/__webpack_require__.n(string_hash);
// EXTERNAL MODULE: ./node_modules/react-avatar/es/index.js + 17 modules
var es = __webpack_require__("dIci");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/ui/UserAvatar/UserAvatar.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const UserAvatar = ({"base":"auIsLh8jOZVWEef__8Sv","iconContainer":"FilKKscGx8p8cdEmKEpr","icon":"yZ7BWXZa9JRQ6388V2MA"});
;// CONCATENATED MODULE: ./src/components/ui/UserAvatar/UserAvatar.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var ICON_SIZE = 12;
var getSupportAvatar = function (email) { return (string_hash_default()(email) % 2
    ? '/static/images/support_avatar_female.png'
    : '/static/images/support_avatar_male.png'); };
/**
 * Universal avatar makes it possible to fetch/generate an avatar based on the information you have about that user.
 */
var UserAvatar_UserAvatar = function (props) {
    var email = props.email, additionalIconType = props.additionalIconType;
    var isSupportAvatar = email
        && email.includes('support_')
        && email.includes('youscan');
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(UserAvatar.base) }, { children: [(0,jsx_runtime.jsx)(es/* default */.Ay, __assign({}, props, { src: isSupportAvatar ? getSupportAvatar(email) : props.src })), additionalIconType && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(UserAvatar.iconContainer) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: additionalIconType, className: classnames_default()(UserAvatar.icon), color: "gray", size: ICON_SIZE }) })))] })));
};
/* harmony default export */ const ui_UserAvatar_UserAvatar = ((0,react.memo)(UserAvatar_UserAvatar));


/***/ }),

/***/ "hbQ8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _UserAvatar__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _UserAvatar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("eCxQ");



/***/ }),

/***/ "duiz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   E: () => (/* binding */ getAddons),
/* harmony export */   w: () => (/* binding */ getChatMessage)
/* harmony export */ });
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("872o");
/* harmony import */ var utils_navigation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("RBXy");
/* harmony import */ var utils_account__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("zTVD");
/* harmony import */ var models_Subscription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("a9xc");
/* eslint-disable max-len */




var getAddons = function (accountInfo) { return [
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('insightsCopilot'),
        imageUrl: '/static/images/addonsPromote/Insights_copilot_icon.svg',
        title: l('Insights Copilot'),
        text: l('This time you don\'t need to read the mentions at all! Your GPT-based copilot will do this for you and answer your questions about the data.'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.INSIGHTS_COPILOT,
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('visualDataAnalysis'),
        title: l('Visual Insights'),
        imageUrl: '/static/images/addonsPromote/Visual_insights_icon.svg',
        text: l('Ensure you don\'t miss logo mentions in images! Visual Insights uncover new insights by analyzing scenes, objects, personas, and logos in pictures.'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.IMAGE_ANALYSIS_WITH_VISUAL_INSIGHTS,
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('audioMonitoring'),
        title: l('Audio Monitoring'),
        imageUrl: '/static/images/addonsPromote/Audio_monitoring_icon.svg',
        text: l('Keep track of brand mentions in YouTube and TikTok videos - don\'t miss a thing!'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.AUDIO_MONITORING,
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('unlimitedDashboards'),
        title: l('Unlimited Dashboards'),
        imageUrl: '/static/images/addonsPromote/Unlimited_dashboards_icon.svg',
        text: l('Create and share one-page reports with all necessary metrics and custom visualizations for informed decision-making in your team.'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.CUSTOM_DASHBOARDS,
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('audienceInsights'),
        title: l('Audience Insights'),
        imageUrl: '/static/images/addonsPromote/Audience_insights_icon.svg',
        text: l('Analyze competitors\' audiences and tailor your offering and content to your customers using demographic, interest, and occupation data.'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.AUDIENCE_INSIGHTS,
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('additionalChannels'),
        title: l('Additional Channels'),
        imageUrl: '/static/images/addonsPromote/Additional_channels_icon.svg',
        text: l('Collect all posts and comments from any TikTok page.'),
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('api'),
        title: l('API'),
        imageUrl: '/static/images/addonsPromote/API_icon.svg',
        text: l('Integrate YouScan social media data with your other tools like BI solutions, Google Spreadsheets, CRM, or your internal custom tools.'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.API,
    },
    {
        addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('smartTags'),
        title: l('Smart Tags'),
        imageUrl: '/static/images/addonsPromote/Smart_tags_icon.svg',
        text: l('Save up to 50% manual work! Our robots tag mentions and filter out irrelevant data based on your previous actions in the topic, saving you time and effort.'),
        learnMoreLink: utils_navigation__WEBPACK_IMPORTED_MODULE_1__/* .HELP_YOUSCAN_PATH_NAMES */ .MH.SMART_TAGS,
    },
    accountInfo.accountCoverage === utils_account__WEBPACK_IMPORTED_MODULE_2__/* .ACCOUNT_COVERAGE_OPTIONS */ .oM.EASTER_EUROPE
        ? {
            addon: new models_Subscription__WEBPACK_IMPORTED_MODULE_3__/* .Addon */ .$J('extendedCoverage'),
            title: l('Global Coverage'),
            imageUrl: '/static/images/addonsPromote/Global_coverage_icon.svg',
            text: l('Monitor mentions across a broader range of languages and geographic locations.'),
        }
        : null
].filter(Boolean); };
var getChatMessage = function (addonName) {
    return (0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .sprintf */ .nv)(l('Hi! I\'m curious about the %s add-on. Could you give me more information about it?'), addonName);
};


/***/ }),

/***/ "02Tg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* binding */ LoginPage_CredentialsLoginPage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/InfoBox/index.ts
var InfoBox = __webpack_require__("rpFs");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/containers/Head/index.js
var Head = __webpack_require__("xO6Q");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/session/selectors.ts
var selectors = __webpack_require__("4gVp");
// EXTERNAL MODULE: ./src/state/session/model.ts + 1 modules
var model = __webpack_require__("V7KL");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/containers/LoginPage/styles.less
var styles = __webpack_require__("5KqD");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
;// CONCATENATED MODULE: ./src/containers/LoginPage/components/LoginForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const LoginForm = ({"base":"NkMV6qprm2csNyAfM4xk","field":"rOZOYrq8m39781pEh7bb"});
;// CONCATENATED MODULE: ./src/containers/LoginPage/components/LoginForm.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






var LoginForm_LoginForm = function (_a) {
    var loading = _a.loading, onSubmit = _a.onSubmit;
    var _b = __read((0,react.useState)(''), 2), username = _b[0], setUsername = _b[1];
    var _c = __read((0,react.useState)(''), 2), password = _c[0], setPassword = _c[1];
    var handleSubmit = function (e) {
        var _a;
        (_a = e === null || e === void 0 ? void 0 : e.preventDefault) === null || _a === void 0 ? void 0 : _a.call(e);
        onSubmit({ username: username, password: password });
    };
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(LoginForm.base) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, autoComplete: "off", className: classnames_default()(LoginForm.field), name: "username", size: "large", placeholder: l('Email'), type: "text", value: username, onChange: setUsername }), (0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, autoComplete: "off", className: classnames_default()(LoginForm.field), name: "password", size: "large", placeholder: l('Password'), type: "password", value: password, onChange: setPassword, onPressEnter: handleSubmit }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, fullWidth: true, size: "large", loading: loading, label: l('Log in'), onClick: handleSubmit })] })));
};
/* harmony default export */ const components_LoginForm = (LoginForm_LoginForm);

;// CONCATENATED MODULE: ./src/containers/LoginPage/CredentialsLoginPage.tsx
var CredentialsLoginPage_assign = (undefined && undefined.__assign) || function () {
    CredentialsLoginPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CredentialsLoginPage_assign.apply(this, arguments);
};














var CredentialsLoginPage = function (_a) {
    var loading = _a.loading, error = _a.error, logIn = _a.logIn, location = _a.location;
    var getErrorMessage = function () {
        if (!error) {
            return null;
        }
        var errorMessages = {
            invalid_grant: l('Make sure your email and password are correct'),
            deactivated_account: l('Your account is deactivated'),
            waiting_for_activation_account: l('Make sure your email and password are correct')
        };
        return errorMessages[error] || error;
    };
    var renderInfoBoxes = function () {
        var _a, _b;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(InfoBox/* default */.A, { error: true, fullWidth: true, displayed: !!error, title: l('Authentication failed'), text: getErrorMessage() }), (0,jsx_runtime.jsx)(InfoBox/* default */.A, { fullWidth: true, displayed: (_a = location.state) === null || _a === void 0 ? void 0 : _a.passwordReseted, text: l('We have sent an email to the specified address') }), (0,jsx_runtime.jsx)(InfoBox/* default */.A, { warning: true, fullWidth: true, displayed: (_b = location.state) === null || _b === void 0 ? void 0 : _b.isPasswordTokenExpired, text: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('The link has expired. '
                                + 'Log in if you have already set up a password or contact us at'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", CredentialsLoginPage_assign({ href: "mailto:".concat(constants/* SUPPORT_EMAIL */.Te) }, { children: constants/* SUPPORT_EMAIL */.Te }))] }) })] }));
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Sign in') }), (0,jsx_runtime.jsxs)("div", CredentialsLoginPage_assign({ className: classnames_default()(styles/* default */.A.formContainer) }, { children: [renderInfoBoxes(), (0,jsx_runtime.jsx)(components_LoginForm, { loading: loading, onSubmit: logIn }), (0,jsx_runtime.jsxs)(dist/* Link */.N_, CredentialsLoginPage_assign({ to: "/sso/login", className: styles/* default */.A.loginLink }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "arrow-right" }), " ", l('Log in with Single Sign-On')] })), (0,jsx_runtime.jsxs)(dist/* Link */.N_, CredentialsLoginPage_assign({ to: "/forgot_password", className: classnames_default()(styles/* default */.A.forgotPassLink) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "arrow-right" }), " ", l('Forgot password?')] }))] }))] }));
};
/* harmony default export */ const LoginPage_CredentialsLoginPage = ((0,withRouter/* withRouter */.y)((0,react_redux/* connect */.Ng)(function (state) { return ({
    loading: (0,selectors/* isLoggingIn */.xk)(state),
    error: (0,selectors/* getLogInErrorData */.ml)(state),
}); }, {
    logIn: model/* sessionModel */.S.action.logIn,
})(CredentialsLoginPage)));


/***/ }),

/***/ "uUOU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("SMvd");
/* harmony import */ var hoc_withRouter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("5aoS");
/* harmony import */ var state_session_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("V7KL");
/* harmony import */ var state_session_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("4gVp");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("X9tB");
/* harmony import */ var state_currentUser_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("cGQa");
/* harmony import */ var utils_routeState__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("vdWx");
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("V4z/");










var LoginPageLayout = function (_a) {
    var loggedIn = _a.loggedIn, currentUser = _a.currentUser, shouldSetUserAdditionalInfo = _a.shouldSetUserAdditionalInfo, clearAuthenticationData = _a.clearAuthenticationData, fetchUserProfile = _a.fetchUserProfile;
    var navigate = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_8__/* .useNavigate */ .Zp)();
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        if (loggedIn) {
            redirectLoggedInUser();
        }
        return function () {
            clearAuthenticationData();
        };
    }, [loggedIn, currentUser]);
    var redirectLoggedInUser = function () {
        if (!currentUser) {
            fetchUserProfile();
            return;
        }
        var state = (0,utils_routeState__WEBPACK_IMPORTED_MODULE_7__/* .getPersistentRouteState */ .Q)();
        if (shouldSetUserAdditionalInfo) {
            navigate('/me/role', { state: state, replace: true });
            return;
        }
        navigate(state.pathname, { state: state });
    };
    return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(react_router_dom__WEBPACK_IMPORTED_MODULE_8__/* .Outlet */ .sv, {});
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,hoc_withRouter__WEBPACK_IMPORTED_MODULE_2__/* .withRouter */ .y)((0,react_redux__WEBPACK_IMPORTED_MODULE_9__/* .connect */ .Ng)(function (state) { return ({
    loggedIn: (0,state_session_selectors__WEBPACK_IMPORTED_MODULE_4__/* .isLoggedIn */ .M3)(state),
    currentUser: (0,state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentUser */ .HW)(state),
    shouldSetUserAdditionalInfo: (0,state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .shouldSetUserAdditionalInfo */ .Ep)(state),
}); }, {
    clearAuthenticationData: state_session_model__WEBPACK_IMPORTED_MODULE_3__/* .sessionModel */ .S.action.clearAuthenticationData,
    fetchUserProfile: state_currentUser_model__WEBPACK_IMPORTED_MODULE_6__/* .currentUserStateModel */ .b.action.fetchUserProfile,
})(LoginPageLayout)));


/***/ }),

/***/ "Xvny":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* binding */ LoginPage_SSOLoginPage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/containers/Head/Head.js
var Head = __webpack_require__("pxZC");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/containers/LoginPage/styles.less
var styles = __webpack_require__("5KqD");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/state/session/model.ts + 1 modules
var model = __webpack_require__("V7KL");
// EXTERNAL MODULE: ./src/state/session/selectors.ts
var selectors = __webpack_require__("4gVp");
// EXTERNAL MODULE: ./src/utils/localStorage.ts
var localStorage = __webpack_require__("S/wQ");
;// CONCATENATED MODULE: ./src/utils/translations/authErrorsTranslation.ts
var getTranslations = function () { return ({
    authentication_failed: l('Authentication failed', 'authError'),
    invalid_identity_provider: l('The company doesn\'t support SSO', 'authError'),
    invalid_user: l('The user isn\'t onboarded to the account', 'authError'),
}); };
var translateError = function (error) {
    return getTranslations()[error] || l('Authentication failed', 'authError');
};

// EXTERNAL MODULE: ./src/hooks/useApi.tsx
var useApi = __webpack_require__("lvrO");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/config.js
var config = __webpack_require__("Jret");
;// CONCATENATED MODULE: ./src/containers/LoginPage/SSOLoginPage.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





















var LOCAL_STORAGE_KEY = 'ssoCompany';
var SSOLoginPage = function (_a) {
    var loggedIn = _a.loggedIn, logInError = _a.logInError, logInCompany = _a.logInCompany, logIn = _a.logIn;
    var _b = __read((0,react.useState)(''), 2), company = _b[0], setCompany = _b[1];
    var _c = __read((0,react.useState)(''), 2), error = _c[0], setError = _c[1];
    var _d = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.auth.validateIdp), validate = _d.fetch, loading = _d.loading;
    var clientId = 'app';
    var redirectUrl = "".concat(window.location.origin, "/sso/login");
    (0,react.useEffect)(function () {
        restoreCompany();
        if (loggedIn) {
            return;
        }
        if (logInError) {
            setError('authentication_failed');
            return;
        }
        if (logInCompany) {
            redirectToSSOLoginPage(logInCompany);
            return;
        }
        loginByParams();
    }, []);
    var handleSubmit = function () { return __awaiter(void 0, void 0, void 0, function () {
        var idp, isValid;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    idp = company.toLowerCase();
                    return [4 /*yield*/, validate({ idp: idp })];
                case 1:
                    isValid = _a.sent();
                    if (isValid) {
                        (0,localStorage/* saveItemToLocalStorage */.e7)(LOCAL_STORAGE_KEY, idp);
                        redirectToSSOLoginPage(idp);
                    }
                    else {
                        setError('invalid_identity_provider');
                    }
                    return [2 /*return*/];
            }
        });
    }); };
    var handleKeyDown = function (e) {
        if (e.keyCode === 13) {
            handleSubmit();
        }
    };
    var redirectToSSOLoginPage = function (idp) {
        var url = new URL("".concat(config/* default */.A.apiPrefix, "/authorize"));
        url.searchParams.set('client_id', clientId);
        url.searchParams.set('redirect_uri', redirectUrl);
        url.searchParams.set('response_type', 'code');
        url.searchParams.set('idp', idp);
        window.location.replace(url.toString());
    };
    var restoreCompany = function () {
        if (company)
            return;
        if (logInCompany) {
            restoreCompanyFromProps(logInCompany);
        }
        else {
            restoreCompanyFromStore((0,localStorage/* getItemFromLocalStorage */.Wu)(LOCAL_STORAGE_KEY));
        }
    };
    var restoreCompanyFromProps = function (name) {
        if (name) {
            setCompany(name);
            (0,localStorage/* saveItemToLocalStorage */.e7)(LOCAL_STORAGE_KEY, name);
        }
    };
    var restoreCompanyFromStore = function (name) {
        if (name) {
            setCompany(name);
        }
    };
    var loginByParams = function () {
        var params = new URLSearchParams(window.location.search);
        if (params.has('code')) {
            loginByCode(params.get('code'));
        }
        if (params.has('error')) {
            loginByError(params.get('error'));
        }
    };
    var loginByCode = function (code) {
        logIn({ code: code, clientId: clientId, redirectUrl: redirectUrl });
    };
    var loginByError = function (errorCode) {
        setError(errorCode);
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Log in with Single Sign-On') }), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(styles/* default */.A.formContainer) }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Log in with Single Sign-On') }), (0,jsx_runtime.jsx)("div", __assign({ className: styles/* default */.A.subtitle }, { children: l('If your organization uses Single Sign-on (SSO) with YouScan, enter your company name and sign in using your SSO credentials.') })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, size: "large", placeholder: l('Enter your company name'), type: "text", errorText: error ? translateError(error) : null, value: company, onChange: setCompany, onKeyDown: handleKeyDown }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, fullWidth: true, size: "large", label: l('Submit'), loading: loading, onClick: handleSubmit }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(dist/* Link */.N_, __assign({ to: "/login", className: styles/* default */.A.loginLink }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "arrow-right" }), " ", l('Log in without Single Sign-On')] }))] }))] }));
};
/* harmony default export */ const LoginPage_SSOLoginPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, _a) {
    var params = _a.params;
    return ({
        loggedIn: (0,selectors/* isLoggedIn */.M3)(state),
        logInError: (0,selectors/* getLogInError */.Yk)(state),
        logInCompany: params.name,
    });
}, {
    logIn: model/* sessionModel */.S.action.logIn,
}))(SSOLoginPage));


/***/ }),

/***/ "tZc3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ SmartFeaturesFeedbackLoopImmutable)
});

// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
var slicedToArray = __webpack_require__("oYSA");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/lodash/get.js
var get = __webpack_require__("mwIZ");
var get_default = /*#__PURE__*/__webpack_require__.n(get);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/state/modals/actions.ts
var actions = __webpack_require__("DuoS");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var stats_selectors = __webpack_require__("K9kJ");
// EXTERNAL MODULE: ./src/components/ui/Hotkeys/index.ts + 2 modules
var Hotkeys = __webpack_require__("NPdn");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/utils/smartFeaturesFeedbackLoop/index.js + 2 modules
var smartFeaturesFeedbackLoop = __webpack_require__("kD4d");
// EXTERNAL MODULE: ./src/utils/smartFeaturesFeedbackLoop/models.js
var models = __webpack_require__("8rkB");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Badge/index.ts + 4 modules
var Badge = __webpack_require__("5d8y");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/FeaturesNav/FeatureNav.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const FeatureNav = ({"overlayedBlock":"t_i75H2JDbcYww85yzFk","flexCenter":"SqHQIOxBskJA0Kgw3Idd","smartFeature":"Aj8dq6LKQM4Nj7s4MFg5","tag":"bNlCqVE0SiFrPKVy7f2D","visibleScrollBar":"cS5BOAyjD91sDVu2qC5w","hiddenScrollBar":"rqK7pjV_exDLOMicwrO1","feature-tabs":"k5aF5GIZ3_Mz0KakUTo5","tabsNav":"_jZC85Re37bo_EBXzT8s","tabsNavLink":"rP8xHa3v9jQwTL6Uksj1","selected":"TiqMsLtc780U0Mmf7hnG","darkMode":"Rnf2nUAswvK2cexPbeWC","nested":"rGjWm3RtcJzFQKCQp7YE","nestedOpened":"FOqGFIka7HjIa4L7ATjY","tabsNavLinkShevronIcon":"SYa4mkFNsEB1PldyINAA"});
;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/FeaturesNav/FeaturesNav.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};







var ICON_SIZE = 20;
var FeatureNavLink = function (_a) {
    var _b, _c;
    var activeFeatureName = _a.activeFeatureName, featureName = _a.featureName, opened = _a.opened, darkMode = _a.darkMode, handleTabChange = _a.handleTabChange, toggleOpened = _a.toggleOpened;
    var isNestedChildFeature = function (name) { return name && !(0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(name)
        && (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(name.split('.')[0]); };
    var name = (0,smartFeaturesFeedbackLoop/* getFeatureNameTranslation */.xB)(featureName);
    var showSupportBadge = constants/* FEEDBACK_LOOP_SUPPORT_ONLY_NAVIGATION_LINK_NAMES */.fA.includes(featureName);
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(FeatureNav.tabsNavLink, (_b = {},
            _b[FeatureNav.darkMode] = darkMode,
            _b[FeatureNav.selected] = activeFeatureName === featureName,
            _b[FeatureNav.nested] = isNestedChildFeature(featureName),
            _b[FeatureNav.nestedOpened] = isNestedChildFeature(featureName) && opened[featureName.split('.')[0]],
            _b)), onClick: handleTabChange(featureName), title: name }, { children: [showSupportBadge && (0,jsx_runtime.jsx)(Badge/* default */.A.Support, {}), name, (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(featureName)
                && ((0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(FeatureNav.tabsNavLinkShevronIcon, (_c = {}, _c[FeatureNav.darkMode] = darkMode, _c)), type: opened[featureName] ? 'menu-down' : 'menu-left', size: ICON_SIZE, onClick: toggleOpened(featureName) }))] })));
};
/* harmony default export */ const FeaturesNav = (function (_a) {
    var featureNames = _a.featureNames, rest = __rest(_a, ["featureNames"]);
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(FeatureNav.tabsNav) }, { children: featureNames.map(function (featureName) { return ((0,jsx_runtime.jsx)(FeatureNavLink, __assign({ featureName: featureName }, rest), featureName)); }) })));
});

;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/FeaturesNav/index.ts


// EXTERNAL MODULE: ./node_modules/react-media/esm/react-media.js
var react_media = __webpack_require__("lU33");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/ui/SearchableList/index.tsx + 1 modules
var SearchableList = __webpack_require__("Y2I4");
// EXTERNAL MODULE: ./src/components/other/SentimentSwitcher/index.ts
var SentimentSwitcher = __webpack_require__("9g4W");
;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/ActiveFeatureTab/ActiveFeatureTab.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ActiveFeatureTab = ({"feature-tabs":"Z8LRGEADdMrypL_cRXoY","tabs":"hwcyIm5JUiYZcU0lNXFS","suggestion":"dnB_m206NIxW0cuughrq","darkMode":"Ez36S13Egj4k7qhQz0wE","focused":"GtUufIz7SgijzFXTwUOY","suggestionLabel":"SSCXfopA8CG4DZpFyEdx","suggestionLabelText":"yBbI6F6nSSfC_plcmznn","cutted":"r0UggRgqDIvmnlVmbfQE","suggestionLabelFeatureName":"G3eSOa4CV4Iup0E1y0O3","suggestionLabelTextSeparator":"VTeCg_T3N3jUCdqUvVP5","suggestionLabelType":"J_4lWx_fKLyZEPbi4uzr","suggestionLabelColorFilter":"YAnqOfEmU6mFYdEAT8oL","suggestionChbox":"bWs1Uz08D2pgIamUKifN","suggestionSentimentSwitcher":"sTu1Zfi11mdhC2xc0cRx"});
;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/ActiveFeatureTab/ActiveFeatureTab.tsx
var ActiveFeatureTab_assign = (undefined && undefined.__assign) || function () {
    ActiveFeatureTab_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ActiveFeatureTab_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var SuggestionLabel = function (_a) {
    var suggestion = _a.suggestion, activeFeatureName = _a.activeFeatureName;
    var suggestionLabel = suggestion.get('type') && suggestion.get('type').replace('image', '');
    var label = suggestionLabel !== 'Brands' ? suggestionLabel : 'Logos';
    return ((0,jsx_runtime.jsxs)("div", ActiveFeatureTab_assign({ className: classnames_default()(ActiveFeatureTab.suggestionLabel) }, { children: [(0,jsx_runtime.jsxs)("div", ActiveFeatureTab_assign({ className: classnames_default()(ActiveFeatureTab.suggestionLabelText) }, { children: [(0,jsx_runtime.jsxs)("div", ActiveFeatureTab_assign({ className: classnames_default()(ActiveFeatureTab.suggestionLabelFeatureName) }, { children: [(0,smartFeaturesFeedbackLoop/* isColorFilterFeature */.qU)(suggestion.get('type')) && ((0,jsx_runtime.jsx)("span", { className: classnames_default()(ActiveFeatureTab.suggestionLabelColorFilter), style: { backgroundColor: suggestion.get('id') } })), suggestion.get('name')] })), (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(activeFeatureName) && (0,jsx_runtime.jsx)("div", { className: classnames_default()(ActiveFeatureTab.suggestionLabelTextSeparator) })] })), (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(activeFeatureName) && ((0,jsx_runtime.jsx)("div", ActiveFeatureTab_assign({ className: classnames_default()(ActiveFeatureTab.suggestionLabelType) }, { children: label })))] })));
};
var Suggestion = function (_a) {
    var _b;
    var suggestion = _a.suggestion, focused = _a.focused, activeFeature = _a.activeFeature, activeFeatureName = _a.activeFeatureName, getSelectedItemFromSuggestion = _a.getSelectedItemFromSuggestion, getSelectedSentiment = _a.getSelectedSentiment, handleSentimentChange = _a.handleSentimentChange, darkMode = _a.darkMode;
    if (!suggestion) {
        return null;
    }
    var key = "".concat(suggestion.get('id'), "_").concat(suggestion.get('type'));
    var selectedItem = getSelectedItemFromSuggestion(suggestion);
    var isIndeterminate = suggestion.isIndeterminate()
        && selectedItem.isEmpty()
        && (!(0,smartFeaturesFeedbackLoop/* hasSingleValue */.g7)(activeFeatureName) || !activeFeature.findEntry(function (value) { return value.selected; }));
    var checked = suggestion.isSelected();
    return ((0,jsx_runtime.jsxs)("div", ActiveFeatureTab_assign({ className: classnames_default()(ActiveFeatureTab.suggestion, (_b = {}, _b[ActiveFeatureTab.focused] = focused, _b[ActiveFeatureTab.darkMode] = darkMode, _b)) }, { children: [(0,jsx_runtime.jsx)(Checkbox/* default */.A, { label: (0,jsx_runtime.jsx)(SuggestionLabel, { suggestion: suggestion, activeFeatureName: activeFeatureName }), checked: checked || isIndeterminate, indeterminate: isIndeterminate, value: suggestion.get('id'), title: suggestion.get('name'), className: classnames_default()(ActiveFeatureTab.suggestionChbox) }, key), (0,smartFeaturesFeedbackLoop/* isFeatureWithSentiment */.q$)(activeFeatureName) && ((0,jsx_runtime.jsx)(SentimentSwitcher/* default */.A, { manual: false, className: classnames_default()(ActiveFeatureTab.suggestionSentimentSwitcher), selected: getSelectedSentiment(suggestion), onChange: handleSentimentChange(suggestion) }))] }), key));
};
var sort = function (selected) { return function (a, b) {
    var _a = __read([a, b].map(function (i) { var _a; return (_a = i.item) === null || _a === void 0 ? void 0 : _a.get('parentId'); }), 2), aId = _a[0], bId = _a[1];
    var _b = __read([a, b].map(function (i) { var _a; return (_a = i.item) === null || _a === void 0 ? void 0 : _a.get('type'); }), 2), aType = _b[0], bType = _b[1];
    var isSelected = function (id, type) { return !!selected.find(function (v) { return v.id === id && (!type || v.type === type); }); };
    var aSelected = isSelected(aId, aType);
    var bSelected = isSelected(bId, bType);
    if (aSelected === bSelected) {
        return a.rankedValue.localeCompare(b.rankedValue, 'en', { numeric: true, sensitivity: 'base' });
    }
    return aSelected ? -1 : 1;
}; };
function ActiveFeatureTab_ActiveFeatureTab(_a) {
    var filter = _a.filter, suggestions = _a.suggestions, activeFeatureName = _a.activeFeatureName, initialState = _a.initialState, getSelectedItemFromSuggestion = _a.getSelectedItemFromSuggestion, handleFeatureChange = _a.handleFeatureChange, handleFilterChange = _a.handleFilterChange, getSelectedSentiment = _a.getSelectedSentiment, handleSentimentChange = _a.handleSentimentChange, darkMode = _a.darkMode, activeFeature = _a.activeFeature, searchableListRef = _a.searchableListRef;
    var findSuggestion = function (suggestion) { return (suggestion
        ? suggestions.findByIdAndType(suggestion.get('parentId'), suggestion.get('type'))
        : null); };
    var renderSuggestion = function (suggestion, focused) { return ((0,jsx_runtime.jsx)(Suggestion, { darkMode: darkMode, suggestion: findSuggestion(suggestion), focused: focused, activeFeature: activeFeature, activeFeatureName: activeFeatureName, getSelectedItemFromSuggestion: getSelectedItemFromSuggestion, getSelectedSentiment: getSelectedSentiment, handleSentimentChange: handleSentimentChange })); };
    return ((0,jsx_runtime.jsx)("div", ActiveFeatureTab_assign({ className: classnames_default()(ActiveFeatureTab.tabs, ActiveFeatureTab.tabsLongList) }, { children: (0,jsx_runtime.jsx)(react_media/* default */.A, ActiveFeatureTab_assign({ query: "(max-width: 992px)" }, { children: function (matches) { return ((0,jsx_runtime.jsx)(SearchableList/* default */.A, { isLongList: true, ref: searchableListRef, darkMode: darkMode, autoFocus: !matches, value: filter, placeholder: l('Search'), hintText: !matches && l('Press Shift + Enter to apply'), sortingProperties: {
                    keys: [function (item) { return item.get('name'); }, function (item) { return item.get('similar'); }],
                    baseSort: sort(initialState),
                }, suggestions: suggestions.mapForSearchableList(), renderItem: renderSuggestion, virtualListProps: { width: 275, rowHeight: 25 }, onSelect: (0,redux/* compose */.Zz)(handleFeatureChange, findSuggestion), onInputChange: handleFilterChange })); } })) })));
}

;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/ActiveFeatureTab/index.ts


;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/components/index.ts




;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/SmartFeaturesFeedbackLoop.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop = ({"overlayedBlock":"cmy15LQ5U4TeP5hhNNv_","flexCenter":"DjPSnlqfO5ktQSBuUSRk","smartFeature":"D3w5Rd0VEcVfpiI8on4A","tag":"l77SzLXTzAqBZT2aBVQ8","visibleScrollBar":"MVjXeAXT_YKPSifjRMAP","hiddenScrollBar":"GnKOacEXVBdeTx8O8Omv","darkMode":"CEnOfkATJyq22dzb4hqA","base":"PxNCyMucTuoGWLC_oVOx","popover":"HoP1MQ0yCQ4M3ibLMw2z","features":"oZwp9znvxEh8mLdkcrjd","buttons":"Ztld3R9YGLYkwTKYqtLM"});
;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/SmartFeaturesFeedbackLoopImmutable.js








function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



















var ENTER_KEY = 13;

/* eslint-disable react/sort-comp */
var SmartFeaturesFeedbackLoop = /*#__PURE__*/function (_PureComponent) {
  function SmartFeaturesFeedbackLoop(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, SmartFeaturesFeedbackLoop);
    _this = _callSuper(this, SmartFeaturesFeedbackLoop, [props]);
    (0,defineProperty/* default */.A)(_this, "getIndeterminateList", function () {
      var activeFeatureName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _this.state.activeFeatureName;
      var indeterminate = _this.props.indeterminate;
      return (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(activeFeatureName) ? _this.getListOfNestedFeatureSuggestions(get_default()(indeterminate, activeFeatureName, {})) : get_default()(indeterminate, activeFeatureName, new immutable.List());
    });
    (0,defineProperty/* default */.A)(_this, "getActiveFeatureForSuggestionsMapping", function (activeFeatureName, selected) {
      var _get2;
      return activeFeatureName === 'visualInsights' ? Object.keys(selected.visualInsights).reduce(function (accum, name) {
        return accum.concat(selected.visualInsights[name].map(function (value, id) {
          return _objectSpread(_objectSpread({}, value), {}, {
            id: id,
            type: name
          });
        }).toList());
      }, (0,immutable.List)()) : ((_get2 = get_default()(selected, activeFeatureName)) === null || _get2 === void 0 ? void 0 : _get2.map(function (value, id) {
        return _objectSpread(_objectSpread({}, value), {}, {
          id: id,
          type: activeFeatureName.replace('visualInsights.', '')
        });
      }).toList()) || (0,immutable.List)();
    });
    (0,defineProperty/* default */.A)(_this, "getSelectedItemFromSuggestion", function (suggestion) {
      var _this$state = _this.state,
        activeFeatureName = _this$state.activeFeatureName,
        selected = _this$state.selected;
      var name = activeFeatureName === 'visualInsights' ? "visualInsights.".concat(suggestion.get('type')) : activeFeatureName;
      return new immutable.Map(_this.getActiveFeature(name, selected).get(suggestion.get('id')) || {});
    });
    (0,defineProperty/* default */.A)(_this, "getNestedFeaturesSuggestions", function (getSuggestionStructure) {
      return function (suggestions) {
        return Object.keys(suggestions).reduce(function (prev, key) {
          return prev.concat(suggestions[key] || getSuggestionStructure());
        }, getSuggestionStructure());
      };
    });
    (0,defineProperty/* default */.A)(_this, "getListOfNestedFeatureSuggestions", _this.getNestedFeaturesSuggestions(function () {
      return new immutable.List();
    }));
    (0,defineProperty/* default */.A)(_this, "getMapOfNestedFeatureSuggestions", _this.getNestedFeaturesSuggestions(function () {
      return new immutable.Map();
    }));
    (0,defineProperty/* default */.A)(_this, "getRawSuggestions", function (suggestions, activeFeatureName) {
      var raw = get_default()(suggestions, activeFeatureName);
      return !raw || raw instanceof immutable.List ? raw : _this.getListOfNestedFeatureSuggestions(raw);
    });
    (0,defineProperty/* default */.A)(_this, "getDefaultState", function () {
      var activeFeatureName = _this.props.activeFeatureName || smartFeaturesFeedbackLoop/* DEFAULT_FEEDBACK_LOOP_SMART_FEATURE_NAME */.m1;
      var selected = _this.getDefaultSelected();
      var _this$props$permissio = _this.props.permissions,
        isAdmin = _this$props$permissio.isAdmin,
        isSupport = _this$props$permissio.isSupport;
      return {
        filter: _this.getDefaultFilter(),
        activeFeatureName: activeFeatureName,
        selected: selected,
        opened: _this.getDefaultOpened(),
        isDirty: false,
        suggestions: _this.mapSuggestions(activeFeatureName, selected),
        featureNames: (0,smartFeaturesFeedbackLoop/* getNavigationLinkNames */.Tu)(selected, isAdmin || isSupport)
      };
    });
    (0,defineProperty/* default */.A)(_this, "getDefaultSelected", function () {
      return (0,smartFeaturesFeedbackLoop/* mapSelectedFeatures */.lV)(_this.props.selected, _this.props.permissions);
    });
    (0,defineProperty/* default */.A)(_this, "getDefaultFilter", function () {
      var _this$props = _this.props,
        selected = _this$props.selected,
        permissions = _this$props.permissions;
      return (0,smartFeaturesFeedbackLoop/* getFeatureNamesStructure */.mR)(selected, permissions, '');
    });
    (0,defineProperty/* default */.A)(_this, "getDefaultOpened", function () {
      var _this$props2 = _this.props,
        selected = _this$props2.selected,
        permissions = _this$props2.permissions;
      return (0,smartFeaturesFeedbackLoop/* getFeatureNamesStructure */.mR)(selected, permissions, false);
    });
    (0,defineProperty/* default */.A)(_this, "getSelectedSentiment", function (suggestion) {
      var defaultSentiment = suggestion.isSelected() ? smartFeaturesFeedbackLoop/* SENTIMENT_TYPES */.Sq.DEFAULT : null;
      return Object.values(smartFeaturesFeedbackLoop/* SENTIMENT_TYPES */.Sq).find(function (sentiment) {
        return suggestion.get(sentiment);
      }) || defaultSentiment;
    });
    /* MAPPERS */
    (0,defineProperty/* default */.A)(_this, "mapSuggestions", function (activeFeatureName, selected) {
      var indeterminateList = _this.getIndeterminateList(activeFeatureName);
      var active = _this.getActiveFeatureForSuggestionsMapping(activeFeatureName, selected);
      var vi = (0,smartFeaturesFeedbackLoop/* getAllVisualInsights */.xR)(_this.props.visualTags);
      var visualInsights = activeFeatureName.split('.')[0] === 'visualInsights' ? Object.keys(vi).reduce(function (accum, featureName) {
        var allOptions = vi[featureName];
        var selectedOptions = get_default()(selected, ['visualInsights', featureName]);
        if (!selectedOptions) return accum;
        return _objectSpread(_objectSpread({}, accum), {}, (0,defineProperty/* default */.A)({}, featureName, allOptions.concat(selectedOptions.keySeq().toList().filter(function (id) {
          return !allOptions.some(function (option) {
            return option.id === id;
          });
        }).map(function (id) {
          return {
            id: id,
            similar: [],
            type: featureName
          };
        }))));
      }, vi) : vi;
      return new models/* Suggestions */.CJ(_this.getRawSuggestions({
        systemTags: (0,smartFeaturesFeedbackLoop/* getAllSystemTags */.qV)(),
        subjects: (0,smartFeaturesFeedbackLoop/* getAllSubjects */.Nj)(),
        aspects: (0,smartFeaturesFeedbackLoop/* getAllAspects */.fA)(),
        visualInsights: visualInsights,
        imageType: (0,smartFeaturesFeedbackLoop/* getAllImageTypes */.cV)(),
        imageSubtype: (0,smartFeaturesFeedbackLoop/* getAllImageSubtypes */.WO)()
      }, activeFeatureName)).filterSentiments().mapSelected(active).mapIndeterminate(indeterminateList).addLocalizedNames(activeFeatureName).sortSuggestions();
    });
    /* HANDLERS */
    (0,defineProperty/* default */.A)(_this, "handleTabChange", function (activeFeatureName) {
      return function () {
        _this.setState(function (state) {
          return {
            activeFeatureName: activeFeatureName,
            suggestions: _this.mapSuggestions(activeFeatureName, state.selected)
          };
        });
      };
    });
    (0,defineProperty/* default */.A)(_this, "handleOpen", function () {
      if (_this.props.onOpen) {
        _this.props.onOpen();
      }
      _this.popover.current.show();
    });
    (0,defineProperty/* default */.A)(_this, "handleClose", function (e) {
      var forced = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      if (!forced && !_this.shouldHide()) {
        _this.onUnresolvedHide();
        return;
      }
      if (_this.props.onClose) {
        _this.props.onClose();
      }
      _this.popover.current.hide();
    });
    (0,defineProperty/* default */.A)(_this, "handleFilterChange", function (_, filter) {
      _this.setState(function (state) {
        return {
          filter: _objectSpread(_objectSpread({}, state.filter), {}, (0,defineProperty/* default */.A)({}, state.activeFeatureName, filter))
        };
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleKeyDown", function (e) {
      if (e.keyCode === ENTER_KEY && e.shiftKey) {
        _this.handleApply();
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleApply", function () {
      var selected = _this.state.selected;
      var _this$props3 = _this.props,
        indeterminate = _this$props3.indeterminate,
        onChange = _this$props3.onChange;
      _this.setState({
        isDirty: false
      });
      var payload = (0,smartFeaturesFeedbackLoop/* mapFeedbackLoopSmartFeatures */.mF)(selected, _this.getDefaultSelected(), indeterminate);
      var payloadJS = Object.keys(payload).reduce(function (accum, key) {
        return _objectSpread(_objectSpread({}, accum), {}, (0,defineProperty/* default */.A)({}, key, payload[key].toJS()));
      }, {});
      if (onChange) {
        onChange(payloadJS);
      }
      _this.handleClose({}, true);
    });
    (0,defineProperty/* default */.A)(_this, "updateStateOnFeatureChange", function (selected) {
      var active = _this.getActiveFeatureForSuggestionsMapping(_this.state.activeFeatureName, selected);
      _this.setState(function (state) {
        return {
          selected: selected,
          suggestions: state.suggestions.mapSelected(active),
          isDirty: true
        };
      });
    });
    (0,defineProperty/* default */.A)(_this, "handleFeatureChange", function (suggestion) {
      var _this$state2 = _this.state,
        stateActiveFeatureName = _this$state2.activeFeatureName,
        stateSelected = _this$state2.selected;
      var selectedItem = _this.getSelectedItemFromSuggestion(suggestion);
      var _stateActiveFeatureNa = stateActiveFeatureName.split('.'),
        _stateActiveFeatureNa2 = (0,slicedToArray/* default */.A)(_stateActiveFeatureNa, 2),
        activeFeatureName = _stateActiveFeatureNa2[0],
        _stateActiveFeatureNa3 = _stateActiveFeatureNa2[1],
        nestedFeatureName = _stateActiveFeatureNa3 === void 0 ? suggestion.get('type') : _stateActiveFeatureNa3;
      var isSelected = selectedItem.isEmpty() || selectedItem.get('hasJustChangedSentiment') || !selectedItem.get('selected');
      var newItem = _objectSpread(_objectSpread({}, selectedItem.toJS()), {}, {
        selected: isSelected,
        hasJustChangedSentiment: false
      }, isSelected ? {} : smartFeaturesFeedbackLoop/* EMPTY_SENTIMENT */.q0);
      var getSingleValueFeatureDeselected = function getSingleValueFeatureDeselected(featureName) {
        return function (feature) {
          return (0,smartFeaturesFeedbackLoop/* hasSingleValue */.g7)(featureName) ? feature.map(function (value) {
            return _objectSpread(_objectSpread({}, value), {}, {
              selected: false
            });
          }) : feature;
        };
      };
      var getFeature = (0,redux/* compose */.Zz)(getSingleValueFeatureDeselected(activeFeatureName), function (fullFeatureName) {
        return _this.getActiveFeature(fullFeatureName, stateSelected);
      }, function (featureName, subFeatureName) {
        return [featureName, subFeatureName].filter(Boolean).join('.');
      });
      var activeFeature = getFeature(activeFeatureName, nestedFeatureName);
      var selected = _objectSpread(_objectSpread({}, stateSelected), {}, (0,defineProperty/* default */.A)({}, activeFeatureName, (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(activeFeatureName) ? _objectSpread(_objectSpread({}, stateSelected[activeFeatureName]), {}, (0,defineProperty/* default */.A)({}, nestedFeatureName, activeFeature.set(suggestion.get('id'), newItem))) : activeFeature.set(suggestion.get('id'), newItem)));
      _this.updateStateOnFeatureChange(selected);
    });
    (0,defineProperty/* default */.A)(_this, "handleSentimentChange", function (suggestion) {
      return function (sentiment) {
        var shouldAvoidFeatureChangeCall = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
        var _this$state3 = _this.state,
          stateSelected = _this$state3.selected,
          activeFeatureName = _this$state3.activeFeatureName;
        var selectedItem = _this.getSelectedItemFromSuggestion(suggestion);
        var selected = _objectSpread(_objectSpread({}, stateSelected), {}, (0,defineProperty/* default */.A)({}, activeFeatureName, _this.getActiveFeature(activeFeatureName, stateSelected).set(suggestion.get('id'), _objectSpread(_objectSpread(_objectSpread({}, selectedItem.toJS()), smartFeaturesFeedbackLoop/* EMPTY_SENTIMENT */.q0), {}, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, sentiment, true), "hasJustChangedSentiment", shouldAvoidFeatureChangeCall)))));
        _this.updateStateOnFeatureChange(selected);
      };
    });
    (0,defineProperty/* default */.A)(_this, "toggleOpened", function (featureName) {
      return function () {
        var opened = _this.state.opened[featureName];
        _this.setState({
          opened: _objectSpread(_objectSpread({}, _this.getDefaultOpened()), {}, (0,defineProperty/* default */.A)({}, featureName, !opened))
        });
      };
    });
    /* SERVICE HANDLERS */
    (0,defineProperty/* default */.A)(_this, "openEditor", function () {
      _this.show();
      _this.handleOpen();
    });
    (0,defineProperty/* default */.A)(_this, "focusFeature", function () {
      var step = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
      return function (event) {
        event.stopPropagation();
        var navigationLinks = (0,smartFeaturesFeedbackLoop/* getNavigationLinkNames */.Tu)(_this.state.selected);
        var activeFeatureIndex = navigationLinks.findIndex(function (name) {
          return name === _this.state.activeFeatureName;
        });
        var featureIndex = (activeFeatureIndex + step + navigationLinks.length) % navigationLinks.length;
        var featureName = navigationLinks[featureIndex];
        var parentFeatureName = featureName.split('.')[0];
        if ((0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(parentFeatureName) && !_this.state.opened[parentFeatureName]) {
          _this.setState({
            opened: _objectSpread(_objectSpread({}, _this.getDefaultOpened()), {}, (0,defineProperty/* default */.A)({}, parentFeatureName, true))
          });
        }
        _this.handleTabChange(navigationLinks[featureIndex])();
        _this.searchableList.current.downshift.current.setHighlightedIndex(0);
      };
    });
    (0,defineProperty/* default */.A)(_this, "setFeatureSentiment", function () {
      var step = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
      return function () {
        var highlightedIndex = get_default()(_this.searchableList, 'current.downshift.current.state.highlightedIndex', null);
        if (highlightedIndex === null || !(0,smartFeaturesFeedbackLoop/* isFeatureWithSentiment */.q$)(_this.state.activeFeatureName)) {
          return;
        }
        var suggestion = _this.state.suggestions.suggestions.get(highlightedIndex);
        if (!suggestion.isSelected()) {
          return;
        }
        var suggestionSentiment = suggestion.getSentiment() || smartFeaturesFeedbackLoop/* SENTIMENT_TYPES */.Sq.NEUTRAL;
        var suggestionSentimentIndex = smartFeaturesFeedbackLoop/* SENTIMENT_TYPES_ORDER */.TQ.findIndex(function (type) {
          return type === suggestionSentiment;
        });
        var sentimentIndex = (suggestionSentimentIndex + 3 + step) % 3;
        var sentiment = smartFeaturesFeedbackLoop/* SENTIMENT_TYPES_ORDER */.TQ[sentimentIndex];
        _this.handleSentimentChange(suggestion)(sentiment, false);
      };
    });
    (0,defineProperty/* default */.A)(_this, "show", function () {
      _this.props.sendAnalyticalEvent({
        eventType: 'Smart feature: feedback loop opened'
      });
      _this.setState(_this.getDefaultState());
    });
    (0,defineProperty/* default */.A)(_this, "shouldHide", function () {
      return !_this.state.isDirty;
    });
    (0,defineProperty/* default */.A)(_this, "onUnresolvedHide", function () {
      _this.handleClose({}, true);
      _this.props.showModal('unsavedFeature', {
        onConfirm: function onConfirm() {
          return _this.handleClose({}, true);
        },
        onCancel: _this.handleOpen
      });
    });
    _this.state = {
      activeFeatureName: smartFeaturesFeedbackLoop/* DEFAULT_FEEDBACK_LOOP_SMART_FEATURE_NAME */.m1,
      filter: '',
      selected: new immutable.Map(),
      opened: {},
      isDirty: false,
      suggestions: null,
      featureNames: []
    };
    _this.popover = /*#__PURE__*/(0,react.createRef)();
    _this.searchableList = /*#__PURE__*/(0,react.createRef)();
    _this.hotkeyHandlers = [{
      hotkey: 'shift+down',
      handler: _this.focusFeature(1)
    }, {
      hotkey: 'shift+up',
      handler: _this.focusFeature(-1)
    }, {
      hotkey: 'left',
      handler: _this.setFeatureSentiment(-1)
    }, {
      hotkey: 'right',
      handler: _this.setFeatureSentiment(+1)
    }];
    return _this;
  }

  /* GETTERS */
  (0,inherits/* default */.A)(SmartFeaturesFeedbackLoop, _PureComponent);
  return (0,createClass/* default */.A)(SmartFeaturesFeedbackLoop, [{
    key: "filter",
    get: function get() {
      return this.state.filter[this.state.activeFeatureName];
    }
  }, {
    key: "getActiveFeature",
    value: function getActiveFeature(activeFeatureName, selected) {
      return (0,smartFeaturesFeedbackLoop/* isNestedFeature */.SK)(activeFeatureName) ? this.getMapOfNestedFeatureSuggestions(get_default()(selected, activeFeatureName)) : get_default()(selected, activeFeatureName);
    }
  }, {
    key: "render",
    value: function render() {
      if (!this.props.permissions.showFeedbackLoop) {
        return this.props.trigger;
      }
      var _this$props4 = this.props,
        className = _this$props4.className,
        position = _this$props4.position,
        trigger = _this$props4.trigger,
        darkMode = _this$props4.darkMode,
        shortcutsEnabled = _this$props4.shortcutsEnabled;
      var _this$state4 = this.state,
        activeFeatureName = _this$state4.activeFeatureName,
        featureNames = _this$state4.featureNames,
        opened = _this$state4.opened,
        selected = _this$state4.selected,
        suggestions = _this$state4.suggestions;
      var filter = this.filter,
        getSelectedItemFromSuggestion = this.getSelectedItemFromSuggestion,
        getSelectedSentiment = this.getSelectedSentiment,
        handleFeatureChange = this.handleFeatureChange,
        handleFilterChange = this.handleFilterChange,
        handleSentimentChange = this.handleSentimentChange,
        handleTabChange = this.handleTabChange,
        toggleOpened = this.toggleOpened;
      var activeFeature = this.getActiveFeature(activeFeatureName, selected);
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Popover/* default */.A, {
        id: "smartFeaturesFeedbackLoop",
        darkMode: darkMode,
        hideOnScroll: false,
        position: position,
        ref: this.popover,
        className: classnames_default()(SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop.popover, SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop['smart-features-feedback-loop'], (0,defineProperty/* default */.A)({}, SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop.darkMode, darkMode)),
        content: /*#__PURE__*/(0,jsx_runtime.jsx)(Hotkeys/* default */.A, {
          enabled: shortcutsEnabled,
          hotkeyHandlers: this.hotkeyHandlers,
          children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
            className: classnames_default()(className, SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop.base),
            onKeyDown: this.handleKeyDown,
            children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop.features),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(FeaturesNav, {
                darkMode: darkMode,
                activeFeatureName: activeFeatureName,
                featureNames: featureNames,
                opened: opened,
                handleTabChange: handleTabChange,
                toggleOpened: toggleOpened
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(ActiveFeatureTab_ActiveFeatureTab, {
                searchableListRef: this.searchableList,
                darkMode: darkMode,
                filter: filter,
                suggestions: suggestions,
                activeFeatureName: activeFeatureName,
                activeFeature: activeFeature,
                initialState: this.getActiveFeatureForSuggestionsMapping(activeFeatureName, this.getDefaultSelected()),
                getSelectedItemFromSuggestion: getSelectedItemFromSuggestion,
                getSelectedSentiment: getSelectedSentiment,
                handleFeatureChange: handleFeatureChange,
                handleFilterChange: handleFilterChange,
                handleSentimentChange: handleSentimentChange
              })]
            }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
              className: classnames_default()(SmartFeaturesFeedbackLoop_SmartFeaturesFeedbackLoop.buttons),
              children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                darkMode: darkMode,
                label: l('Cancel'),
                onClick: this.handleClose
              }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                primary: true,
                label: l('Apply'),
                onClick: this.handleApply
              })]
            })]
          })
        }),
        onShow: this.show,
        shouldHide: this.shouldHide,
        onUnresolvedHide: this.onUnresolvedHide,
        children: trigger
      });
    }
  }]);
}(react.PureComponent);
(0,defineProperty/* default */.A)(SmartFeaturesFeedbackLoop, "defaultProps", {
  activeFeatureName: '',
  selected: {}
});
var mapStateToProps = function mapStateToProps(state) {
  return {
    themeId: (0,selectors/* getCurrentThemeId */.Md)(state),
    visualTags: (0,stats_selectors/* getAllVisualTags */.xL)(state),
    permissions: {
      showVisualInsights: (0,selectors/* canUseImageRecognitionFeatures */.ZL)(state),
      showFeedbackLoop: (0,selectors/* canUseFeedbackLoopFeature */.Dj)(state),
      isAdmin: (0,currentUser_selectors/* isCurrentUserAccountAdmin */.B5)(state),
      isSupport: (0,currentUser_selectors/* isSupportUser */.x3)(state)
    },
    shortcutsEnabled: (0,currentUser_selectors/* isShortcutsEnabled */.Rm)(state)
  };
};
var connectedFeedbackLoop = (0,react_redux/* connect */.Ng)(mapStateToProps, {
  showModal: actions/* showModal */.to,
  sendAnalyticalEvent: model/* analyticsStateModel */.j.action.sendAnalyticalEvent
}, null, {
  forwardRef: true
})(SmartFeaturesFeedbackLoop);
/* harmony default export */ const SmartFeaturesFeedbackLoopImmutable = ((0,withRouter/* withRouter */.y)(connectedFeedbackLoop, {
  forwardRef: true
}));
;// CONCATENATED MODULE: ./src/containers/SmartFeaturesFeedbackLoop/index.ts



/***/ }),

/***/ "MT3B":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ AccountInfo_AccountInfo)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/insightsCopilot/model.ts
var model = __webpack_require__("HH70");
// EXTERNAL MODULE: ./src/state/settings/model.ts
var settings_model = __webpack_require__("C0Rk");
// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var selectors = __webpack_require__("YQsP");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/state/insightsCopilot/selectors.ts
var insightsCopilot_selectors = __webpack_require__("laSw");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/components/ui/Modal/Modal.tsx + 1 modules
var Modal = __webpack_require__("7Lz/");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/hoc/connectModal.ts
var connectModal = __webpack_require__("YvHy");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/models/Subscription.ts
var Subscription = __webpack_require__("a9xc");
// EXTERNAL MODULE: ./src/components/ui/Section/index.ts + 2 modules
var Section = __webpack_require__("/4sX");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/CheckboxGroup/index.ts + 2 modules
var CheckboxGroup = __webpack_require__("yqM+");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/index.ts + 2 modules
var Toolbar = __webpack_require__("rYbp");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
;// CONCATENATED MODULE: ./src/components/other/SubscriptionSettings/SubscriptionSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionSettings = ({"section":"qeOoJDmTIHtPWof_bhZh","limitsContainer":"Kz9m_jRpnnJc7k0fhL7g","select":"gX6XU0es35_kiMy_y62x","options":"j_4gWPNzutYrXx7THInl","notSelected":"qQVgi7UBlOjjoRFUez4u","number":"kHQCiwXuymXSadY253mB","text":"T0OhktHKRrf7RyrEULkE","checkBoxWithInput":"TzUFoWa_bYuY2UqWmdid","checkbox":"SI4wrjQZXtetCCrLUAn1","buttonBar":"dHNJRoTffoO4bTdbzFM0"});
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
;// CONCATENATED MODULE: ./src/components/other/SubscriptionSettings/SubscriptionSettings.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};













var SubscriptionSettingsSelect = function (_a) {
    var _b;
    var value = _a.value, options = _a.options, onChange = _a.onChange, _c = _a.isDisabled, isDisabled = _c === void 0 ? false : _c;
    return ((0,jsx_runtime.jsx)(Select/* default */.A, { isDisabled: isDisabled, className: classnames_default()(SubscriptionSettings.select), value: (_b = options.find(function (item) { return item.value === value; })) !== null && _b !== void 0 ? _b : formatValue(value, function (x) { return (0,commonTranslations/* translate */.Tl)(x); }), options: options, onChange: function (item) { return onChange(item.value); } }));
};
var formatOptions = function (options, translateOptionLabel) { return options.map(function (value) { return ({
    value: value,
    label: translateOptionLabel(value),
}); }); };
var formatValue = function (value, translateLabel) { return ({ value: value, label: translateLabel(value) }); };
var defaultAccountMentionsLimit = 500000;
var SubscriptionSettings_SubscriptionSettings = function (_a) {
    var _b, _c, _d, _e, _f, _g;
    var subscriptionPlan = _a.subscriptionPlan, onClick = _a.onClick;
    var _h = __read((0,react.useState)(subscriptionPlan.planType), 2), selectedPlanType = _h[0], setSubscriptionSelectedPlanType = _h[1];
    var _j = __read((0,react.useState)(subscriptionPlan.topicsLimit), 2), selectedTopicsLimit = _j[0], setSelectedTopicsLimit = _j[1];
    var _k = __read((0,react.useState)(subscriptionPlan.accountMentionsLimit || defaultAccountMentionsLimit), 2), selectedAccountMentionsLimit = _k[0], setSelectedAccountMentionsLimit = _k[1];
    var _l = __read((0,react.useState)(''), 2), accountLimitErrorMessage = _l[0], setAccountLimitErrorMessage = _l[1];
    var _m = __read((0,react.useState)(subscriptionPlan.addons ? Object.keys(subscriptionPlan.addons).map(function (a) { return a; }) : []), 2), selectedAddons = _m[0], setSelectedAddons = _m[1];
    var _o = __read((0,react.useState)((_d = (_c = (_b = subscriptionPlan.addons) === null || _b === void 0 ? void 0 : _b.api) === null || _c === void 0 ? void 0 : _c.apiType) !== null && _d !== void 0 ? _d : Subscription/* API_TYPES */.Dn[0]), 2), selectedApiAccessType = _o[0], setSelectedApiAccessType = _o[1];
    var _p = __read((0,react.useState)(selectedAddons.includes('api')), 2), apiChecked = _p[0], setApiChecked = _p[1];
    var _q = __read((0,react.useState)((_g = (_f = (_e = subscriptionPlan.addons) === null || _e === void 0 ? void 0 : _e.additionalChannels) === null || _f === void 0 ? void 0 : _f.count) !== null && _g !== void 0 ? _g : Subscription/* CHANNEL_LIMITS */.j7[0]), 2), selectedAdditionalChannelsLimit = _q[0], setSelectedAdditionalChannelsLimit = _q[1];
    var _r = __read((0,react.useState)(selectedAddons.includes('additionalChannels')), 2), additionalChannelsChecked = _r[0], setAdditionalChannelsChecked = _r[1];
    var onPlanTypeChange = function (planType) {
        setSubscriptionSelectedPlanType(planType);
        var options = (0,Subscription/* planTopicOptions */.JQ)(planType);
        if (!options.includes(selectedTopicsLimit)) {
            setSelectedTopicsLimit(options[0]);
        }
    };
    var planSupportsAddons = function () { var _a; return (_a = Subscription/* SUBSCRIPTION_ADDONS */.eD[selectedPlanType]) === null || _a === void 0 ? void 0 : _a.length; };
    function renderSubscriptionSupportedAddons() {
        return renderAddons(Subscription/* SUBSCRIPTION_ADDONS */.eD[selectedPlanType]);
    }
    function renderEnabledAddons() {
        var addons = subscriptionPlan.addons ? Object.keys(subscriptionPlan.addons) : [];
        return renderAddons(addons);
    }
    function renderAddons(addons) {
        return ((0,jsx_runtime.jsx)(Section/* default */.A, __assign({ className: classnames_default()(SubscriptionSettings.section), label: l('Add-ons', 'subscriptionSettingsModal') }, { children: (0,jsx_runtime.jsx)(CheckboxGroup/* default */.A, __assign({ classNameCheckbox: SubscriptionSettings.checkbox }, { children: addons.map(function (addon) { return renderControl(addon); }) })) })));
    }
    function renderControl(addon) {
        if (addon === 'api')
            return renderCheckboxWithOptions('text', apiChecked, formatValue(selectedApiAccessType, function (x) { return (0,commonTranslations/* translateApiType */.HY)(x); }), formatOptions(Subscription/* API_TYPES */.Dn, function (x) { return (0,commonTranslations/* translateApiType */.HY)(x); }), function (x) { return setSelectedApiAccessType(x); });
        if (addon === 'additionalChannels')
            return renderCheckboxWithOptions('text', additionalChannelsChecked, { value: selectedAccountMentionsLimit, label: selectedAdditionalChannelsLimit }, Subscription/* CHANNEL_LIMITS */.j7.map(function (l) { return ({ value: l, label: l }); }), function (x) { return setSelectedAdditionalChannelsLimit(x); });
        return renderCheckbox(addon, selectedAddons.includes(addon));
        function renderCheckboxWithOptions(cssClass, checked, selectedValue, options, onChange) {
            var _a;
            return ((0,jsx_runtime.jsxs)("span", __assign({ className: classnames_default()(SubscriptionSettings.checkBoxWithInput) }, { children: [renderCheckbox(addon, checked), (0,jsx_runtime.jsx)(Select/* default */.A, { className: classnames_default()(SubscriptionSettings.options, SubscriptionSettings[cssClass], (_a = {}, _a[SubscriptionSettings.notSelected] = !checked, _a)), value: selectedValue, options: options, onChange: function (x) { return onChange(x.value); } })] })));
        }
    }
    function renderCheckbox(addon, checked) {
        return ((0,jsx_runtime.jsx)(Checkbox/* default */.A, { label: (0,commonTranslations/* translateAddon */.DV)(addon), value: addon, checked: checked, onChange: handleChange }));
    }
    var handleChange = function (value) {
        if (selectedAddons.includes(value))
            setSelectedAddons(selectedAddons.filter(function (selected) { return selected !== value; }));
        else
            setSelectedAddons(__spreadArray(__spreadArray([], __read(selectedAddons), false), [value], false));
        if (value === 'api')
            setApiChecked(!apiChecked);
        if (value == 'additionalChannels')
            setAdditionalChannelsChecked(!additionalChannelsChecked);
    };
    function topicCountOptions() {
        return (0,react.useMemo)(function () {
            return formatOptions((0,Subscription/* planTopicOptions */.JQ)(selectedPlanType), function (x) { return x; });
        }, [selectedPlanType]);
    }
    function planTypeOptions() {
        return (0,react.useMemo)(function () { return formatOptions(Object.keys(Subscription/* SubscriptionPlanType */.dh), commonTranslations/* translate */.Tl); }, []);
    }
    function handleClick() {
        var subscriptionPlan = {
            planType: selectedPlanType,
            topicsLimit: selectedTopicsLimit,
            addons: collectAddons(),
        };
        if (selectedPlanType !== Subscription/* SubscriptionPlanType */.dh.enterprise)
            return onClick(subscriptionPlan);
        if (selectedAccountMentionsLimit % 100000 !== 0) {
            setAccountLimitErrorMessage(l('Account mentions limit must be a multiple of 100K (100K, 200K, 1 mln etc...)', 'subscriptionSettingsModal'));
            return;
        }
        subscriptionPlan.accountMentionsLimit = selectedAccountMentionsLimit;
        return onClick(subscriptionPlan);
    }
    var isPositiveNumber = function (input) { return !isNaN(input) && input > 0; };
    var collectAddons = function () {
        var addons = {};
        selectedAddons
            .filter(function (addon) { return Subscription/* SUBSCRIPTION_ADDONS */.eD[selectedPlanType].includes(addon); })
            .map(function (name) {
            var _a;
            return Object.assign(addons, (_a = {}, _a[name] = addonItem(name), _a));
        });
        return addons;
        function addonItem(name) {
            if (name === 'api')
                return new Subscription/* ApiAddon */.B5(name, selectedApiAccessType);
            if (name === 'additionalChannels')
                return new Subscription/* LimitAddon */.W9(name, selectedAdditionalChannelsLimit);
            return new Subscription/* Addon */.$J(name);
        }
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Section/* default */.A, __assign({ className: classnames_default()(SubscriptionSettings.section), label: l('Subscription plan', 'subscriptionSettingsModal') }, { children: (0,jsx_runtime.jsx)(SubscriptionSettingsSelect, { value: selectedPlanType, options: planTypeOptions(), onChange: onPlanTypeChange }) })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(SubscriptionSettings.limitsContainer) }, { children: [(0,jsx_runtime.jsx)(Section/* default */.A, __assign({ className: classnames_default()(SubscriptionSettings.section), label: l('Topics Limit', 'subscriptionSettingsModal') }, { children: (0,jsx_runtime.jsx)(SubscriptionSettingsSelect, { value: selectedTopicsLimit, options: topicCountOptions(), onChange: setSelectedTopicsLimit }) })), selectedPlanType === Subscription/* SubscriptionPlanType */.dh.enterprise && ((0,jsx_runtime.jsx)(Section/* default */.A, __assign({ className: classnames_default()(SubscriptionSettings.section), label: l('Account mentions limit', 'subscriptionSettingsModal') }, { children: (0,jsx_runtime.jsx)(TextField/* default */.A, { value: selectedAccountMentionsLimit, errorText: accountLimitErrorMessage, onChange: function (input) {
                                setSelectedAccountMentionsLimit(input);
                                var value = parseInt(input, 10);
                                if (isPositiveNumber(value)) {
                                    setAccountLimitErrorMessage('');
                                }
                                else {
                                    setAccountLimitErrorMessage(l('Please enter a positive number'));
                                }
                            } }) })))] })), planSupportsAddons()
                ? renderSubscriptionSupportedAddons()
                : renderEnabledAddons(), (0,jsx_runtime.jsx)(Toolbar/* ButtonBar */.WN, __assign({ className: classnames_default()(SubscriptionSettings.buttonBar) }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Apply'), onClick: handleClick }) }))] }));
};
/* harmony default export */ const other_SubscriptionSettings_SubscriptionSettings = (SubscriptionSettings_SubscriptionSettings);

;// CONCATENATED MODULE: ./src/components/other/SubscriptionSettings/index.ts


;// CONCATENATED MODULE: ./src/containers/modals/SubscriptionSettingsModal/SubscriptionSettingsModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubscriptionSettingsModal = ({"base":"JZm23pO3dRP3MlKbCeOp"});
;// CONCATENATED MODULE: ./src/containers/modals/SubscriptionSettingsModal/SubscriptionSettingsModal.tsx
var SubscriptionSettingsModal_assign = (undefined && undefined.__assign) || function () {
    SubscriptionSettingsModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SubscriptionSettingsModal_assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};










var SubscriptionSettingsModal_SubscriptionSettingsModal = function (_a) {
    var subscriptionPlan = _a.subscriptionPlan, fetchAccountInfo = _a.fetchAccountInfo, fetchMentionsUsageHistory = _a.fetchMentionsUsageHistory, handleHide = _a.handleHide;
    var handleApply = function (subscriptionPlanName) { return __awaiter(void 0, void 0, void 0, function () {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0: return [4 /*yield*/, apiSingleton/* default */.A.subscription.changeSubscriptionPlan({ subscriptionPlan: subscriptionPlanName })];
                case 1:
                    _a.sent();
                    fetchAccountInfo();
                    handleHide();
                    fetchMentionsUsageHistory();
                    return [2 /*return*/];
            }
        });
    }); };
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, SubscriptionSettingsModal_assign({ isOpen: true, fitted: true, withCloseIcon: true, title: (0,jsx_runtime.jsx)(H2/* default */.A, { children: l('Subscription settings') }), className: classnames_default()(SubscriptionSettingsModal.base), onRequestClose: handleHide }, { children: (0,jsx_runtime.jsx)(other_SubscriptionSettings_SubscriptionSettings, { subscriptionPlan: subscriptionPlan, onClick: handleApply }) })));
};
/* harmony default export */ const modals_SubscriptionSettingsModal_SubscriptionSettingsModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)('subscriptionSettings'), react.memo)(SubscriptionSettingsModal_SubscriptionSettingsModal));

// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Badge/index.ts + 4 modules
var Badge = __webpack_require__("5d8y");
// EXTERNAL MODULE: ./src/components/ui/Switch/index.ts + 2 modules
var Switch = __webpack_require__("AacN");
// EXTERNAL MODULE: ./src/components/ui/ListItem/index.ts + 2 modules
var ListItem = __webpack_require__("gyTG");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountInfo/components/AccountInfo.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AccountInfo = ({"base":"wSqFk_j9OreXevSk1Ww4","nameItem":"vzp8RvydCvU6vGJ_5bde","nameEditButton":"R2ySHBQnUPKKQN91xhIB"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountInfo/components/AccountInfo.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var AccountInfo_assign = (undefined && undefined.__assign) || function () {
    AccountInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AccountInfo_assign.apply(this, arguments);
};














var DEFAULT_INSIGHTS_COPILOT_USAGE_LIMIT = 100;
var AccountInfoContainer = /** @class */ (function (_super) {
    __extends(AccountInfoContainer, _super);
    function AccountInfoContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            newName: '',
            nameEditorOpened: false,
        };
        _this.handleEditName = function () {
            _this.setState({
                newName: _this.props.accountInfo.name,
                nameEditorOpened: true,
            });
        };
        _this.handleNewNameChange = function (newName) {
            _this.setState({ newName: newName });
        };
        _this.handleNewNameSave = function () {
            _this.props.onNewName({ name: _this.state.newName });
        };
        _this.planSupportsAddons = function (planType) { var _a; return (_a = Subscription/* SUBSCRIPTION_ADDONS */.eD[planType]) === null || _a === void 0 ? void 0 : _a.length; };
        _this.renderEnabledAddons = function () {
            var subscriptionPlan = _this.props.subscriptionPlan;
            return _this.renderAddons(subscriptionPlan.addons ? Object.keys(subscriptionPlan.addons).map(function (a) { return a; }) : []);
        };
        _this.renderSubscriptionAddons = function () {
            var subscriptionPlan = _this.props.subscriptionPlan;
            return _this.renderAddons(Subscription/* SUBSCRIPTION_ADDONS */.eD[subscriptionPlan.planType]);
        };
        _this.renderAddons = function (addons) {
            var _a;
            var _b = _this.props, isSupport = _b.isSupport, subscriptionPlan = _b.subscriptionPlan;
            // Hack to render retired addon to those who bought it
            if ((_a = subscriptionPlan.addons) === null || _a === void 0 ? void 0 : _a.dataSampling)
                addons = addons.concat(['dataSampling']);
            if (!addons.length)
                return null;
            return ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: addons
                    .filter(function (a) { return isSupport || !(0,Subscription/* isSystemAddon */.a5)(a); })
                    .map(function (a, index) { return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), _this.renderAddonItem(a)] }, index)); }) }));
        };
        return _this;
    }
    AccountInfoContainer.getDerivedStateFromProps = function (nextProps) {
        if (nextProps.isRenamed) {
            return { nameEditorOpened: false };
        }
        return null;
    };
    AccountInfoContainer.prototype.renderAddonItem = function (addon) {
        var subscriptionPlan = this.props.subscriptionPlan;
        return subscriptionPlan.addons && addon in subscriptionPlan.addons ? ((0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: (0,commonTranslations/* translateAddon */.DV)(addon) }, { children: addonAvailableLabel(addon) }))) : ((0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: (0,commonTranslations/* translateAddon */.DV)(addon) }, { children: l('Not available') })));
        function addonAvailableLabel(key) {
            if (key === 'api')
                return (0,commonTranslations/* translateApiType */.HY)(subscriptionPlan.addons.api.apiType);
            if (key === 'additionalChannels')
                return subscriptionPlan.addons.additionalChannels.count;
            return l('Available');
        }
    };
    AccountInfoContainer.prototype.render = function () {
        var _a = this.props, isSupport = _a.isSupport, accountInfo = _a.accountInfo, subscriptionEndDate = _a.subscriptionEndDate, themePermissionsEnabled = _a.themePermissionsEnabled, themePermissionsAllowed = _a.themePermissionsAllowed, isRenaming = _a.isRenaming, isRenamingAllowed = _a.isRenamingAllowed, subscriptionPlan = _a.subscriptionPlan, insightsCopilotUsage = _a.insightsCopilotUsage;
        var _b = this.state, nameEditorOpened = _b.nameEditorOpened, newName = _b.newName;
        return ((0,jsx_runtime.jsxs)("div", AccountInfo_assign({ className: classnames_default()(AccountInfo.base) }, { children: [isSupport && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: (0,jsx_runtime.jsxs)("span", { children: [l('Account id'), " ", (0,jsx_runtime.jsx)(Badge/* default */.A.Support, {})] }) }, { children: accountInfo.id })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })), (0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: l('Account name'), className: classnames_default()(AccountInfo.nameItem) }, { children: nameEditorOpened ? ((0,jsx_runtime.jsx)(TextField/* default */.A, { value: newName, onChange: this.handleNewNameChange, onPressEnter: this.handleNewNameSave, disabled: isRenaming, rightIcon: isRenaming ? (0,jsx_runtime.jsx)(Icon/* default */.A, { spinning: true, type: "loading" }) : null })) : ((0,jsx_runtime.jsxs)("span", { children: [accountInfo.name, isRenamingAllowed && (0,jsx_runtime.jsx)(IconButton/* default */.A, { className: classnames_default()(AccountInfo.nameEditButton), mini: true, iconType: "edit", onClick: this.handleEditName })] })) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: l('Number of users') }, { children: accountInfo.usersCount })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: l('Account status') }, { children: (0,commonTranslations/* translate */.Tl)(accountInfo.status) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ListItem/* default */.A, AccountInfo_assign({ label: l('Subscription type') }, { children: [(0,commonTranslations/* translate */.Tl)(subscriptionPlan.planType), " ", subscriptionPlan.topicsLimit] })), subscriptionEndDate && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: l('Subscription expiry') }, { children: moment_default()(subscriptionEndDate).format('LL') }))] })), themePermissionsAllowed && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ListItem/* default */.A, AccountInfo_assign({ label: l('Access rights for topic permissions') }, { children: (0,jsx_runtime.jsx)(Switch/* default */.A, { checked: themePermissionsEnabled, onChange: this.props.onPermissionToggle }) }))] })), (insightsCopilotUsage === null || insightsCopilotUsage === void 0 ? void 0 : insightsCopilotUsage.limit) <= DEFAULT_INSIGHTS_COPILOT_USAGE_LIMIT && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ListItem/* default */.A, AccountInfo_assign({ label: l('Insights Copilot usage for the current month') }, { children: [insightsCopilotUsage.used, "/", insightsCopilotUsage.limit] }))] })), this.planSupportsAddons(subscriptionPlan.planType) ? this.renderSubscriptionAddons() : this.renderEnabledAddons()] })));
    };
    return AccountInfoContainer;
}(react.PureComponent));
/* harmony default export */ const components_AccountInfo = (AccountInfoContainer);

;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountInfo/components/MentionsUsage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const MentionsUsage = ({"base":"NTw7hYol_VT2Y2FxOmki","title":"WqG8yQiLkTUWOtIyOTCF","table":"NwLHdj7p8vbVcOJzV4tb","monthCell":"Q760VrOag4diDSMhznbM"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountInfo/components/MentionsUsage.tsx
var MentionsUsage_assign = (undefined && undefined.__assign) || function () {
    MentionsUsage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return MentionsUsage_assign.apply(this, arguments);
};




var MentionsUsage_MentionsUsage = function (_a) {
    var history = _a.history;
    return ((0,jsx_runtime.jsxs)("div", MentionsUsage_assign({ className: classnames_default()(MentionsUsage.base) }, { children: [(0,jsx_runtime.jsx)("h3", MentionsUsage_assign({ className: classnames_default()(MentionsUsage.title) }, { children: l('Data usage', 'accountInfo') })), (0,jsx_runtime.jsxs)("table", MentionsUsage_assign({ className: MentionsUsage.table }, { children: [(0,jsx_runtime.jsx)("thead", { children: (0,jsx_runtime.jsxs)("tr", { children: [(0,jsx_runtime.jsx)("th", { children: l('Period', 'accountInfo') }), (0,jsx_runtime.jsx)("th", { children: l('Mentions limit', 'accountInfo') }), (0,jsx_runtime.jsx)("th", { children: l('Collected', 'accountInfo') })] }) }), (0,jsx_runtime.jsx)("tbody", { children: history.map(function (historyPeriod, index) {
                            var _a, _b;
                            return ((0,jsx_runtime.jsxs)("tr", { children: [(0,jsx_runtime.jsxs)("td", MentionsUsage_assign({ className: classnames_default()(MentionsUsage.monthCell) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "calendar", color: "lightgray", size: "small" }), "".concat(l(historyPeriod.month), ", ").concat(historyPeriod.year)] })), (0,jsx_runtime.jsx)("td", { children: (_a = historyPeriod.limit) === null || _a === void 0 ? void 0 : _a.toLocaleString() }), (0,jsx_runtime.jsxs)("td", { children: [(_b = historyPeriod.collected) === null || _b === void 0 ? void 0 : _b.toLocaleString(), historyPeriod.collectedHistorical > 0
                                                && " (".concat(historyPeriod.collectedHistorical.toLocaleString(), " ").concat(l('historical'), ")")] })] }, index));
                        }) })] }))] })));
};
/* harmony default export */ const components_MentionsUsage = (MentionsUsage_MentionsUsage);

;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountInfo/AccountInfo.tsx
var AccountInfo_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var AccountInfo_AccountInfo_assign = (undefined && undefined.__assign) || function () {
    AccountInfo_AccountInfo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AccountInfo_AccountInfo_assign.apply(this, arguments);
};














var AccountInfo_AccountInfoContainer = /** @class */ (function (_super) {
    AccountInfo_extends(AccountInfoContainer, _super);
    function AccountInfoContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            themePermissionsEnabled: false,
        };
        _this.fetchMentionsUsage = function () {
            var _a = _this.props, accountInfo = _a.accountInfo, userId = _a.userId;
            if ((accountInfo === null || accountInfo === void 0 ? void 0 : accountInfo.id) && userId) {
                _this.props.fetchMentionsUsageHistory({
                    accountId: accountInfo.id,
                    userId: userId,
                });
            }
        };
        _this.handleThemePermissionsToggle = function () {
            if (_this.props.accountInfo.themePermissionsEnabled) {
                (0,utils_confirm/* default */.A)({
                    title: l('Are you sure you want to disable topic permissions?'),
                    message: l('This will delete your permissions settings and'
                        + ' will give full access to topics for all users'),
                    actionLabel: l('I understand, disable'),
                }).then(function () { return _this.props.disableThemePermissions(); });
            }
            else {
                (0,utils_confirm/* default */.A)({
                    title: l('Are you sure you want to enable topic permissions?'),
                    message: l('You will need to set up permissions for users in this account'),
                    actionLabel: l('Enable'),
                    buttonType: 'primary',
                }).then(function () { return _this.props.enableThemePermissions(); });
            }
        };
        return _this;
    }
    AccountInfoContainer.getDerivedStateFromProps = function (nextProps) {
        var accountInfo = nextProps.accountInfo;
        if (accountInfo) {
            return { themePermissionsEnabled: accountInfo.themePermissionsEnabled };
        }
        return null;
    };
    AccountInfoContainer.prototype.componentDidMount = function () {
        var accountInfo = this.props.accountInfo;
        if (accountInfo) {
            this.setState({
                themePermissionsEnabled: accountInfo.themePermissionsEnabled,
            });
        }
        this.props.fetchAccountInfo();
        this.props.fetchInsightsCopilotUsage();
    };
    AccountInfoContainer.prototype.componentDidUpdate = function (prevProps, prevState, snapshot) {
        var mentionsUsageHistory = this.props.mentionsUsageHistory;
        if (!mentionsUsageHistory) {
            this.fetchMentionsUsage();
        }
    };
    AccountInfoContainer.prototype.render = function () {
        var _this = this;
        var _a = this.props, isSupport = _a.isSupport, isAdmin = _a.isAdmin, isRenaming = _a.isRenaming, isRenamed = _a.isRenamed, accountInfo = _a.accountInfo, mentionsUsageHistory = _a.mentionsUsageHistory, subscriptionEndDate = _a.subscriptionEndDate, themePermissionsAllowed = _a.themePermissionsAllowed, subscriptionPlan = _a.subscriptionPlan;
        return ((0,jsx_runtime.jsx)(Loader/* default */.A, AccountInfo_AccountInfo_assign({ loaded: Boolean(accountInfo), empty: accountInfo && !Object.keys(accountInfo).length, emptyStateImage: "/static/images/error_image.png", emptyStateTitle: l("Can't get account info"), emptyStateMessage: l('Something went wrong') }, { children: function () { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_AccountInfo, { isSupport: isSupport, isRenamed: isRenamed, isRenaming: isRenaming, isRenamingAllowed: _this.props.canRenameAccount, accountInfo: accountInfo, subscriptionPlan: subscriptionPlan, subscriptionEndDate: subscriptionEndDate, themePermissionsEnabled: _this.state.themePermissionsEnabled, themePermissionsAllowed: themePermissionsAllowed && isAdmin, insightsCopilotUsage: _this.props.insightsCopilotUsage, onNewName: _this.props.renameAccount, onPermissionToggle: _this.handleThemePermissionsToggle }), mentionsUsageHistory && mentionsUsageHistory.length && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Divider/* default */.A, {}), (0,jsx_runtime.jsx)(components_MentionsUsage, { history: mentionsUsageHistory })] })), (0,jsx_runtime.jsx)(modals_SubscriptionSettingsModal_SubscriptionSettingsModal, { subscriptionPlan: subscriptionPlan, fetchAccountInfo: _this.props.fetchAccountInfo, fetchMentionsUsageHistory: _this.fetchMentionsUsage })] })); } })));
    };
    return AccountInfoContainer;
}(react.PureComponent));
/* harmony default export */ const AccountInfo_AccountInfo = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isAdmin: (0,currentUser_selectors/* isCurrentUserAccountAdmin */.B5)(state),
    isSupport: (0,currentUser_selectors/* isSupportUser */.x3)(state),
    isRenamed: (0,selectors/* isAccountRenamed */.aF)(state),
    isRenaming: (0,selectors/* isAccountRenaming */.Ng)(state),
    canRenameAccount: (0,selectors/* canRenameAccount */.cy)(state),
    accountInfo: (0,selectors/* getAccountInfo */.Gf)(state),
    userId: (0,currentUser_selectors/* getCurrentUserId */.WR)(state),
    mentionsUsageHistory: (0,selectors/* getMentionsUsageHistory */.bf)(state),
    subscriptionPlan: (0,selectors/* getSubscriptionPlan */.le)(state),
    subscriptionEndDate: (0,selectors/* getSubscriptionEndDate */.Jz)(state),
    themePermissionsAllowed: (0,selectors/* isThemePermissionsAllowed */.WN)(state),
    insightsCopilotUsage: (0,insightsCopilot_selectors/* getInsightsCopilotUsage */.$3)(state),
}); }, {
    fetchInsightsCopilotUsage: model/* insightsCopilotStateModel */.e.action.fetchInsightsCopilotUsage,
    fetchAccountInfo: settings_model/* settingsModel */.N.action.fetchAccountInfo,
    fetchMentionsUsageHistory: settings_model/* settingsModel */.N.action.fetchMentionsUsageHistory,
    disableThemePermissions: settings_model/* settingsModel */.N.action.disableThemePermissions,
    enableThemePermissions: settings_model/* settingsModel */.N.action.enableThemePermissions,
    renameAccount: settings_model/* settingsModel */.N.action.renameAccount,
})(AccountInfo_AccountInfoContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/AccountInfo/index.ts



/***/ }),

/***/ "khcr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ AdministrationPage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var selectors = __webpack_require__("YQsP");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/state/settings/model.ts
var model = __webpack_require__("C0Rk");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/ui/ListItem/index.ts + 2 modules
var ListItem = __webpack_require__("gyTG");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/Calendar/index.ts + 5 modules
var Calendar = __webpack_require__("9i11");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/utils/account.js
var utils_account = __webpack_require__("zTVD");
// EXTERNAL MODULE: ./src/models/Billing.ts
var Billing = __webpack_require__("ejQr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/accountSettings/Administration/components/Administration.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_Administration = ({"base":"ct2Mab6aqxic4ib_VdOw","select":"o_UP9qHdUssQA1zg9Jfe","loading":"qs1whEOyWU956EwuHKzd","actions":"iSuZvFNqx6jeiIJuZ1hQ","action":"aKavBuBpOBH_ZOBYy0tP","listitem":"r7M4fMxbiCzlj1IJS4vB"});
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Administration/components/SaveButton.js





var SaveButton = function SaveButton(_ref) {
  var _ref$allowed = _ref.allowed,
    allowed = _ref$allowed === void 0 ? true : _ref$allowed,
    isDirty = _ref.isDirty,
    saving = _ref.saving,
    onSave = _ref.onSave;
  if (saving) {
    return /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
      spinning: true,
      type: "loading",
      className: classnames_default()(components_Administration.loading)
    });
  }
  return /*#__PURE__*/(0,jsx_runtime.jsx)(IconButton/* default */.A, {
    iconType: "save",
    disabled: !allowed,
    color: isDirty ? 'primary' : 'default',
    onClick: onSave
  });
};
/* harmony default export */ const components_SaveButton = (SaveButton);
;// CONCATENATED MODULE: ./src/containers/accountSettings/Administration/components/Administration.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




















var ALLOWED_OVERDUE_DAYS = [0, 5, 10].map(function (x) { return ({ value: x, label: x }); });
var Administration = /** @class */ (function (_super) {
    __extends(Administration, _super);
    function Administration(props) {
        var _this = _super.call(this, props) || this;
        _this.handleNameChange = function (newName) {
            _this.setState({ name: newName });
        };
        _this.handleNameSave = function () {
            _this.props.onRename({ name: _this.state.name });
        };
        _this.handleAccountOriginChange = function (_a) {
            var value = _a.value;
            _this.setState({ accountOrigin: value });
        };
        _this.handleAccountCoverageChange = function (_a) {
            var value = _a.value;
            _this.setState({ accountCoverage: value });
        };
        _this.handleAccountOriginSave = function () {
            _this.props.onAccountOriginChange({ origin: _this.state.accountOrigin });
        };
        _this.handleAccountCoverageSave = function () {
            _this.props.onAccountCoverageChange({ coverage: _this.state.accountCoverage });
        };
        _this.handleTrialActiveToChange = function (date) {
            _this.setState({ trialActiveTo: date });
        };
        _this.handlePaidToChange = function (date) {
            _this.setState({ paidTo: date });
        };
        _this.handleTrialPeriodSave = function () {
            _this.props.onTrialPeriodChange({ activeTo: _this.state.trialActiveTo });
        };
        _this.handleNotifyDeactivatedUsers = function () {
            _this.setState(function (prevProps) { return ({ notifyDeactivatedUsers: !prevProps.notifyDeactivatedUsers }); });
        };
        _this.handleActivateAccount = function () {
            _this.props.onActivateAccount();
        };
        _this.handleDeactivateAccount = function () {
            (0,utils_confirm/* default */.A)({
                title: l('Are you sure you want to deactivate account?'),
                stateCreator: function () { return ({
                    notifyUsers: false,
                }); },
                stateReducers: {
                    // @ts-ignore
                    handleNotifyUsers: function (state) { return ({ notifyUsers: !state.notifyUsers }); },
                },
                message: function (_a, _b) {
                    var notifyUsers = _a.notifyUsers;
                    var handleNotifyUsers = _b.handleNotifyUsers;
                    return ((0,jsx_runtime.jsxs)("span", { children: [l('Account '), (0,jsx_runtime.jsx)("b", __assign({ style: { whiteSpace: 'pre' } }, { children: _this.props.account.name })), l(' will be deactivated.'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)(Checkbox/* default */.A, { label: l('Do you want to notify users via email?'), checked: notifyUsers, onChange: function () { _this.handleNotifyDeactivatedUsers(); handleNotifyUsers(); } })] }));
                },
                actionLabel: l('Deactivate'),
            }).then(function () { return _this.props.onDeactivateAccount({ notifyUsers: _this.state.notifyDeactivatedUsers }); });
        };
        _this.handleAdvanceAccountToPaid = function () {
            _this.props.onAdvanceAccountToPaid({ paidTo: _this.state.paidTo });
        };
        _this.handleMaxOverdueDaysChange = function (_a) {
            var value = _a.value;
            _this.setState({ maxOverdueDays: parseInt(value, 10) || 0 });
        };
        _this.handleMaxOverdueDaysSave = function () {
            _this.props.onMaxOverdueDaysChange({ maxOverdueDays: _this.state.maxOverdueDays });
        };
        _this.getOptionsForSelect = function (options) {
            return options.map(function (x) { return ({ value: x, label: (0,commonTranslations/* translate */.Tl)(x) }); });
        };
        _this.state = {
            accountOrigin: props.account.accountOrigin,
            accountCoverage: props.account.accountCoverage,
            billingInfo: props.account.billingInfo,
            name: props.account.name,
            trialActiveTo: new Date(props.account.trialExpirationDate),
            paidTo: null,
            notifyDeactivatedUsers: false,
            maxOverdueDays: _this.maxOverdueDaysOrDefault,
        };
        return _this;
    }
    Administration.prototype.componentDidUpdate = function (prevProps) {
        if (prevProps.account.trialExpirationDate !== this.props.account.trialExpirationDate) {
            this.setState({
                trialActiveTo: new Date(this.props.account.trialExpirationDate),
            });
        }
    };
    Object.defineProperty(Administration.prototype, "accountOriginChanged", {
        get: function () {
            return this.state.accountOrigin !== this.props.account.accountOrigin;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "accountCoverageChanged", {
        get: function () {
            return this.state.accountCoverage !== this.props.account.accountCoverage;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "nameChanged", {
        get: function () {
            return this.state.name !== this.props.account.name;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "trialPeriodChanged", {
        get: function () {
            return this.state.trialActiveTo.getTime() !== new Date(this.props.account.trialExpirationDate).getTime();
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "status", {
        get: function () {
            return this.props.account.status;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "isActive", {
        get: function () {
            return ['trial', 'paying'].includes(this.status);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "isPaying", {
        get: function () {
            return this.status === 'paying';
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "isTrial", {
        get: function () {
            return this.status === 'trial';
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "hasPaidTo", {
        get: function () {
            return this.state.paidTo !== null;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "maxOverdueDaysOrDefault", {
        get: function () {
            var overdueDays = this.props.account.maxOverdueDays;
            // @ts-ignore
            return overdueDays !== undefined ? parseInt(overdueDays, 10) : 10;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "maxOverdueDaysChanged", {
        get: function () {
            return this.state.maxOverdueDays !== this.maxOverdueDaysOrDefault;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "isInvoicing", {
        get: function () {
            return this.state.billingInfo && this.state.billingInfo.paymentMethod === Billing/* PaymentMethod */.g5.Invoicing;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "isNone", {
        get: function () {
            return this.state.billingInfo && this.state.billingInfo.paymentMethod === Billing/* PaymentMethod */.g5.None;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Administration.prototype, "isNotSet", {
        get: function () {
            return !this.state.billingInfo;
        },
        enumerable: false,
        configurable: true
    });
    Administration.prototype.render = function () {
        var _this = this;
        var _a = this.props, isAllowedToRenameAccount = _a.isAllowedToRenameAccount, isAllowedToActivateAccount = _a.isAllowedToActivateAccount, isAllowedToDeactivateAccount = _a.isAllowedToDeactivateAccount, isAllowedToAdvanceAccountToPaid = _a.isAllowedToAdvanceAccountToPaid, isAllowedToChangeAccountTrialPeriod = _a.isAllowedToChangeAccountTrialPeriod, isAllowedToChangeAccountOrigin = _a.isAllowedToChangeAccountOrigin, isAllowedToChangeAccountCoverage = _a.isAllowedToChangeAccountCoverage, isRenaming = _a.isRenaming, isActivating = _a.isActivating, isDeactivating = _a.isDeactivating, isAdvancingToPaid = _a.isAdvancingToPaid, isTrialPeriodChanging = _a.isTrialPeriodChanging, isAccountOriginChanging = _a.isAccountOriginChanging, isAccountCoverageChanging = _a.isAccountCoverageChanging, isMaxOverdueDaysChanging = _a.isMaxOverdueDaysChanging, account = _a.account;
        var accountMarkets = this.getOptionsForSelect(utils_account/* ACCOUNT_ORIGINS */.Gm);
        var coverage = this.getOptionsForSelect(utils_account/* ACCOUNT_COVERAGES */.kN);
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(components_Administration.base) }, { children: [isAllowedToRenameAccount ? ((0,jsx_runtime.jsxs)(ListItem/* default */.A, __assign({ label: l('Account name') }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { disabled: isRenaming, value: this.state.name, onChange: this.handleNameChange, onPressEnter: this.handleNameSave }), (0,jsx_runtime.jsx)(components_SaveButton, { isDirty: this.nameChanged, saving: isRenaming, onSave: this.handleNameSave })] }))) : null, isAllowedToChangeAccountOrigin ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ListItem/* default */.A, __assign({ label: l('Origin') }, { children: [(0,jsx_runtime.jsx)(Select/* default */.A, { isClearable: false, isDisabled: isAccountOriginChanging, name: "accountOrigin", className: classnames_default()(components_Administration.select), options: accountMarkets, value: accountMarkets.find(function (o) { return o.value === _this.state.accountOrigin; }), onChange: this.handleAccountOriginChange }), (0,jsx_runtime.jsx)(components_SaveButton, { saving: isAccountOriginChanging, isDirty: this.accountOriginChanged, onSave: this.handleAccountOriginSave })] }))] })) : null, isAllowedToChangeAccountCoverage ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ListItem/* default */.A, __assign({ label: l('Coverage') }, { children: [(0,jsx_runtime.jsx)(Select/* default */.A, { isClearable: false, isDisabled: isAccountCoverageChanging, name: "accountCoverage", className: classnames_default()(components_Administration.select), options: coverage, value: coverage.find(function (o) { return o.value === _this.state.accountCoverage; }), onChange: this.handleAccountCoverageChange }), (0,jsx_runtime.jsx)(components_SaveButton, { saving: isAccountCoverageChanging, isDirty: this.accountCoverageChanged, onSave: this.handleAccountCoverageSave })] }))] })) : null, this.isTrial && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ListItem/* default */.A, __assign({ label: l('Trial') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ text: l('Activation date') }, { children: moment_default()(account.activationDate).format('L') })), (0,jsx_runtime.jsx)("span", __assign({ style: { marginLeft: 10, marginRight: 10 } }, { children: " \u2014 " })), (0,jsx_runtime.jsx)(Calendar/* DayPicker */.h, { withoutMaxDate: true, isDisabled: isTrialPeriodChanging || !isAllowedToChangeAccountTrialPeriod, date: this.state.trialActiveTo, onChange: this.handleTrialActiveToChange }), (0,jsx_runtime.jsx)(components_SaveButton, { allowed: isAllowedToChangeAccountTrialPeriod, isDirty: this.trialPeriodChanged, saving: isTrialPeriodChanging, onSave: this.handleTrialPeriodSave })] }))] })), this.isPaying && (this.isInvoicing || this.isNone || this.isNotSet) && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsxs)(ListItem/* default */.A, __assign({ label: (0,jsx_runtime.jsxs)("span", { children: [l('Allowed overdue'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ basic: true, on: "hover", position: "bottom right", text: l('Number of days account will stay active and'
                                            + ' will have access to YouScan after its paid period is over.') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) }))] }) }, { children: [(0,jsx_runtime.jsx)(Select/* default */.A, { isSearchable: true, isClearable: false, isDisabled: isMaxOverdueDaysChanging, name: "maxAccountOverdueDays", className: classnames_default()(components_Administration.select), options: ALLOWED_OVERDUE_DAYS, value: ALLOWED_OVERDUE_DAYS.find(function (x) { return x.value === _this.state.maxOverdueDays; }), onChange: this.handleMaxOverdueDaysChange }), (0,jsx_runtime.jsx)(components_SaveButton, { isDirty: this.maxOverdueDaysChanged, saving: isMaxOverdueDaysChanging, onSave: this.handleMaxOverdueDaysSave })] }))] })), !this.isPaying && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ListItem/* default */.A, __assign({ label: l('Paid to') }, { children: (0,jsx_runtime.jsx)(Calendar/* DayPicker */.h, { withoutMaxDate: true, date: this.state.paidTo, onChange: this.handlePaidToChange }) }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(ListItem/* default */.A, __assign({ label: l('Status'), className: classnames_default()(components_Administration.listitem) }, { children: (0,commonTranslations/* translate */.Tl)(account.status) })), (0,jsx_runtime.jsx)(ListItem/* default */.A, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(components_Administration.actions) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { success: true, loading: isActivating, disabled: this.isActive
                                    || isActivating
                                    || isDeactivating
                                    || isAdvancingToPaid
                                    || !isAllowedToActivateAccount, size: "small", label: l('Activate'), className: classnames_default()(components_Administration.action), onClick: this.handleActivateAccount }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, danger: true, loading: isDeactivating, disabled: isActivating
                                    || isDeactivating
                                    || isAdvancingToPaid
                                    || !isAllowedToDeactivateAccount, size: "small", label: l('Deactivate'), className: classnames_default()(components_Administration.action), onClick: this.handleDeactivateAccount }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, loading: isAdvancingToPaid, disabled: !this.hasPaidTo
                                    || this.isPaying
                                    || isActivating
                                    || isDeactivating
                                    || isAdvancingToPaid
                                    || !isAllowedToAdvanceAccountToPaid, size: "small", label: l('Advance to paid'), className: classnames_default()(components_Administration.action), onClick: this.handleAdvanceAccountToPaid })] })) })] })));
    };
    return Administration;
}(react.PureComponent));
/* harmony default export */ const Administration_components_Administration = (Administration);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Administration/AdministrationPage.tsx
var AdministrationPage_assign = (undefined && undefined.__assign) || function () {
    AdministrationPage_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AdministrationPage_assign.apply(this, arguments);
};

/* eslint-disable react/jsx-props-no-multi-spaces */






var AdministrationPageContainer = function (_a) {
    var isAllowedToRenameAccount = _a.isAllowedToRenameAccount, isAllowedToActivateAccount = _a.isAllowedToActivateAccount, isAllowedToDeactivateAccount = _a.isAllowedToDeactivateAccount, isAllowedToAdvanceAccountToPaid = _a.isAllowedToAdvanceAccountToPaid, isAllowedToChangeAccountTrialPeriod = _a.isAllowedToChangeAccountTrialPeriod, isAllowedToChangeAccountOrigin = _a.isAllowedToChangeAccountOrigin, isAllowedToChangeAccountCoverage = _a.isAllowedToChangeAccountCoverage, isRenaming = _a.isRenaming, isActivating = _a.isActivating, isDeactivating = _a.isDeactivating, isAdvancingToPaid = _a.isAdvancingToPaid, isTrialPeriodChanging = _a.isTrialPeriodChanging, isOriginChanging = _a.isOriginChanging, isCoverageChanging = _a.isCoverageChanging, isMaxOverdueDaysChanging = _a.isMaxOverdueDaysChanging, accountInfo = _a.accountInfo, renameAccount = _a.renameAccount, activateAccount = _a.activateAccount, deactivateAccount = _a.deactivateAccount, advanceAccountToPaid = _a.advanceAccountToPaid, changeAccountTrialPeriod = _a.changeAccountTrialPeriod, changeAccountOrigin = _a.changeAccountOrigin, changeAccountCoverage = _a.changeAccountCoverage, changeAccountMaxOverdueDays = _a.changeAccountMaxOverdueDays, fetchAccountInfo = _a.fetchAccountInfo;
    (0,react.useEffect)(function () {
        fetchAccountInfo();
    }, []);
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, AdministrationPage_assign({ loaded: !!accountInfo }, { children: function () { return ((0,jsx_runtime.jsx)(Administration_components_Administration, { isAllowedToRenameAccount: isAllowedToRenameAccount, isAllowedToActivateAccount: isAllowedToActivateAccount, isAllowedToDeactivateAccount: isAllowedToDeactivateAccount, isAllowedToAdvanceAccountToPaid: isAllowedToAdvanceAccountToPaid, isAllowedToChangeAccountTrialPeriod: isAllowedToChangeAccountTrialPeriod, isAllowedToChangeAccountOrigin: isAllowedToChangeAccountOrigin, isAllowedToChangeAccountCoverage: isAllowedToChangeAccountCoverage, isRenaming: isRenaming, isActivating: isActivating, isDeactivating: isDeactivating, isAdvancingToPaid: isAdvancingToPaid, isTrialPeriodChanging: isTrialPeriodChanging, isAccountOriginChanging: isOriginChanging, isAccountCoverageChanging: isCoverageChanging, isMaxOverdueDaysChanging: isMaxOverdueDaysChanging, account: accountInfo, onRename: renameAccount, onActivateAccount: activateAccount, onDeactivateAccount: deactivateAccount, onAdvanceAccountToPaid: advanceAccountToPaid, onAccountOriginChange: changeAccountOrigin, onTrialPeriodChange: changeAccountTrialPeriod, onAccountCoverageChange: changeAccountCoverage, onMaxOverdueDaysChange: changeAccountMaxOverdueDays })); } })));
};
/* harmony default export */ const AdministrationPage = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    isAllowedToRenameAccount: (0,selectors/* canRenameAccount */.cy)(state),
    isAllowedToActivateAccount: (0,selectors/* canActivateAccount */.J$)(state),
    isAllowedToDeactivateAccount: (0,selectors/* canDeactivateAccount */.QC)(state),
    isAllowedToAdvanceAccountToPaid: (0,selectors/* canAdvanceAccountToPaid */.$8)(state),
    isAllowedToChangeAccountTrialPeriod: (0,selectors/* canChangeAccountTrialPeriod */.v5)(state),
    isAllowedToChangeAccountOrigin: (0,selectors/* canChangeAccountOrigin */.kO)(state),
    isAllowedToChangeAccountCoverage: (0,selectors/* canChangeAccountCoverage */.yN)(state),
    isRenaming: (0,selectors/* isAccountRenaming */.Ng)(state),
    isActivating: (0,selectors/* isAccountActivating */.wY)(state),
    isDeactivating: (0,selectors/* isAccountDeactivating */.nR)(state),
    isAdvancingToPaid: (0,selectors/* isAccountAdvancingToPaid */.I8)(state),
    isTrialPeriodChanging: (0,selectors/* isAccountChangingTrialPeriod */.CK)(state),
    isOriginChanging: (0,selectors/* isAccountOriginChanging */.lM)(state),
    isCoverageChanging: (0,selectors/* isAccountCoverageChanging */.PL)(state),
    isMaxOverdueDaysChanging: (0,selectors/* isAccountMaxOverdueDaysChanging */.ko)(state),
    accountInfo: (0,selectors/* getAccountInfo */.Gf)(state),
}); }, {
    renameAccount: model/* settingsModel */.N.action.renameAccount,
    activateAccount: model/* settingsModel */.N.action.activateAccount,
    deactivateAccount: model/* settingsModel */.N.action.deactivateAccount,
    advanceAccountToPaid: model/* settingsModel */.N.action.advanceAccountToPaid,
    changeAccountTrialPeriod: model/* settingsModel */.N.action.changeAccountTrialPeriod,
    changeAccountOrigin: model/* settingsModel */.N.action.changeAccountOrigin,
    changeAccountCoverage: model/* settingsModel */.N.action.changeAccountCoverage,
    changeAccountMaxOverdueDays: model/* settingsModel */.N.action.changeAccountMaxOverdueDays,
    fetchAccountInfo: model/* settingsModel */.N.action.fetchAccountInfo,
})(AdministrationPageContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/Administration/index.ts



/***/ }),

/***/ "zcTO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ UserRolePermissions)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/models/User.ts
var User = __webpack_require__("KUKT");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/UserRoleSelect.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const UserRoleSelect = ({"name":"wVeEgbTp5guda716HgrD","description":"znzT1gtadGtr45voGdC5"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/UserRoleSelect.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var options = [{
        value: User/* UserRoles */.fo.MANAGER,
        get label() { return l('Admin'); },
        get description() { return l('Has access to all account information, including billing, can add/remove users and social accounts'); },
    }, {
        value: User/* UserRoles */.fo.MEMBER,
        get label() { return l('Member'); },
        get description() { return l('Standard access level. Doesn\'t have access to any account settings'); },
    }];
var formatOptionLabel = function (option, _a) {
    var context = _a.context;
    var selectedOption = ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: l(option.label) }));
    var detailedOption = ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("h3", __assign({ className: classnames_default()(UserRoleSelect.name) }, { children: l(option.label) })), (0,jsx_runtime.jsx)("p", __assign({ className: classnames_default()(UserRoleSelect.description) }, { children: l(option.description) }))] }));
    return context === 'value'
        ? selectedOption
        : detailedOption;
};
var formatOptionValue = function (value) {
    var _a;
    var option = (_a = options.find(function (x) { return x.value === value; })) !== null && _a !== void 0 ? _a : options[0];
    return {
        value: option.value,
        label: (0,commonTranslations/* translate */.Tl)(option.label),
        description: (0,commonTranslations/* translate */.Tl)(option.description),
    };
};
var UserRoleSelect_UserRoleSelect = function (_a) {
    var value = _a.value, onChange = _a.onChange;
    return ((0,jsx_runtime.jsx)(Select/* default */.A, { options: options, formatOptionLabel: formatOptionLabel, value: formatOptionValue(value), onChange: function (option) { return onChange(option.value); } }));
};
/* harmony default export */ const components_UserRoleSelect = ((0,react.memo)(UserRoleSelect_UserRoleSelect));

// EXTERNAL MODULE: ./src/components/ui/Switch/index.ts + 2 modules
var Switch = __webpack_require__("AacN");
;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/UserPermissionList.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const UserPermissionList = ({"listItem":"uT1qhavRmE51xm4T5fHJ"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/UserPermissionList.tsx
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






var UserPermissionList_UserPermissionList = function (_a) {
    var value = _a.value, onChange = _a.onChange, isDisable = _a.isDisable;
    var handleToggle = function (permission) { return (value.includes(permission)
        ? onChange(value.filter(function (p) { return p !== permission; }))
        : onChange(__spreadArray(__spreadArray([], __read(value), false), [permission], false))); };
    return ((0,jsx_runtime.jsx)("div", { children: User/* ALL_USER_PERMISSIONS */.xm.map(function (permission) { return ((0,jsx_runtime.jsx)(Switch/* default */.A, { className: classnames_default()(UserPermissionList.listItem), label: User/* UserPermissionLabels */.Ic[permission](), disabled: isDisable(permission), checked: value.includes(permission), onChange: function () { return handleToggle(permission); } }, permission)); }) }));
};
/* harmony default export */ const components_UserPermissionList = ((0,react.memo)(UserPermissionList_UserPermissionList));

;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/UserRolePermissions.tsx






var RolePermissionsFields = function (_a) {
    var role = _a.role, permissions = _a.permissions, accessRights = _a.accessRights;
    var handleRoleChange = function (value) {
        role.onChange(value);
        permissions.onChange(User/* DefaultRolePermissions */.YC[value]());
    };
    var isDisablePermission = function (permission) { return (permission === User/* UserPermissions */.mF.CAN_CREATE_TOPICS
        && (role.value === User/* UserRoles */.fo.MANAGER || !accessRights)); };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(components_UserRoleSelect, { value: role.value, onChange: handleRoleChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(components_UserPermissionList, { value: permissions.value, onChange: permissions.onChange, isDisable: isDisablePermission })] }));
};
/* harmony default export */ const UserRolePermissions = ((0,react.memo)(RolePermissionsFields));


/***/ }),

/***/ "6pw8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ CreateUser_CreateUser)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/users/model.ts
var model = __webpack_require__("lWdd");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/users/selectors.ts
var selectors = __webpack_require__("zcN7");
// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var settings_selectors = __webpack_require__("YQsP");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/hooks/useApi.tsx
var useApi = __webpack_require__("lvrO");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./node_modules/redux-form/lib/index.js
var lib = __webpack_require__("MCI9");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Section/index.ts + 2 modules
var Section = __webpack_require__("/4sX");
// EXTERNAL MODULE: ./src/components/ui/TextField/TextField.tsx + 1 modules
var TextField = __webpack_require__("mVWl");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/models/User.ts
var User = __webpack_require__("KUKT");
// EXTERNAL MODULE: ./src/containers/accountSettings/CreateUser/components/UserRolePermissions.tsx + 4 modules
var UserRolePermissions = __webpack_require__("zcTO");
;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/CreateUserForm.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_CreateUserForm = ({"base":"TK5XfSdQorD9z7_PZCBC","section":"PPbz9kacnPp7Le8gZsiz","sectionRole":"WmkN4K1IprSDPy74upV9","bottomBar":"sfv51dB2YSjudiquIMX9","errorText":"_0cONCsyoW8QOutKFiq_R"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/components/CreateUserForm.js






var _dec, _class;
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }













var CreateUserForm = (_dec = (0,lib/* reduxForm */.zW)({
  form: 'createUser',
  fields: ['firstName', 'lastName', 'email', 'phone', 'position', 'role', 'permissions'],
  initialValues: {
    role: User/* UserRoles */.fo.MANAGER,
    permissions: User/* DefaultRolePermissions */.YC[User/* UserRoles */.fo.MANAGER]()
  }
}), _dec(_class = /*#__PURE__*/function (_PureComponent) {
  function CreateUserForm() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CreateUserForm);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = _callSuper(this, CreateUserForm, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      emailValue: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleEmailChange", function (value) {
      _this.setState({
        emailValue: value
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderError", function () {
      var error = _this.props.validationError;
      if (error) {
        var errorText = l('An error has occurred! ' + 'Maybe user with given email already exists in another account', 'createUser');
        if (error.response.data.message === 'ACCOUNT_ACCESS_DENIED') {
          errorText = l('An error has occurred! Your account is not activated.', 'createUser');
        }
        return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
          className: classnames_default()(components_CreateUserForm.errorText),
          children: errorText
        });
      }
      return null;
    });
    return _this;
  }
  (0,inherits/* default */.A)(CreateUserForm, _PureComponent);
  return (0,createClass/* default */.A)(CreateUserForm, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        _this$props$fields = _this$props.fields,
        firstName = _this$props$fields.firstName,
        lastName = _this$props$fields.lastName,
        email = _this$props$fields.email,
        number = _this$props$fields.number,
        position = _this$props$fields.position,
        role = _this$props$fields.role,
        permissions = _this$props$fields.permissions,
        accessRights = _this$props.accessRights,
        creating = _this$props.creating,
        handleSubmit = _this$props.handleSubmit;
      var emailValue = this.state.emailValue;
      var emailIsTaken = this.props.isEmailTaken(emailValue);
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("form", {
        className: classnames_default()(components_CreateUserForm.base),
        onSubmit: handleSubmit,
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Section/* default */.A, {
          label: l('Main info'),
          className: classnames_default()(components_CreateUserForm.section),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            required: true,
            name: "firstName",
            type: "text",
            label: l('First name')
          }, firstName)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            required: true,
            name: "lastName",
            type: "text",
            label: l('Last name')
          }, lastName)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread(_objectSpread({}, email), {}, {
            required: true,
            name: "email",
            type: "email",
            value: emailValue,
            label: l('Email'),
            errorText: emailIsTaken ? l('This email is already taken in this account!') : null,
            onChange: this.handleEmailChange
          }))]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Section/* default */.A, {
          label: l('Additional info'),
          className: classnames_default()(components_CreateUserForm.section),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            name: "phone",
            type: "tel",
            label: l('Phone number')
          }, number)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            required: true,
            name: "position",
            type: "text",
            label: l('Job title')
          }, position))]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Section/* default */.A, {
          label: l('User role'),
          className: classnames_default()(components_CreateUserForm.section, components_CreateUserForm.sectionRole),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(UserRolePermissions/* default */.A, {
            role: role,
            permissions: permissions,
            accessRights: accessRights
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_CreateUserForm.bottomBar),
          children: [this.renderError(), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
              to: "/settings/users",
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                type: "button",
                label: l('Cancel')
              })
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              loading: creating,
              disabled: emailIsTaken,
              type: "submit",
              label: l('Add user')
            })]
          })]
        })]
      });
    }
  }]);
}(react.PureComponent)) || _class);

;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/CreateUser.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};












var CreateUser = function (_a) {
    var accessRights = _a.accessRights, users = _a.users, fetchAccountUsers = _a.fetchAccountUsers, push = _a.push, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.users.create), createUser = _b.fetch, isUserCreated = _b.loaded, userCreating = _b.loading, createUserError = _b.error;
    (0,react.useEffect)(function () {
        if (!(users === null || users === void 0 ? void 0 : users.length))
            fetchAccountUsers();
    }, []);
    var handleSubmit = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
        var isAdmin = _a.isAdmin, userData = __rest(_a, ["isAdmin"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0: return [4 /*yield*/, createUser({ user: userData })];
                case 1:
                    _b.sent();
                    sendAnalyticalEvent({ eventType: 'User: created', properties: userData });
                    push('/settings/users');
                    return [2 /*return*/];
            }
        });
    }); };
    var isEmailTaken = function (email) {
        var emails = users === null || users === void 0 ? void 0 : users.map(function (user) { return user.login; });
        return emails === null || emails === void 0 ? void 0 : emails.includes(email);
    };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !!users }, { children: (0,jsx_runtime.jsx)(CreateUserForm, { isEmailTaken: isEmailTaken, creating: userCreating, accessRights: accessRights, validationError: createUserError, onSubmit: handleSubmit }) })));
};
/* harmony default export */ const CreateUser_CreateUser = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    users: (0,selectors/* getAccountUsers */.IM)(state),
    accessRights: (0,settings_selectors/* isAccessRightsEnabled */.JA)(state),
}); }, {
    push: actions/* push */.VC,
    fetchAccountUsers: model/* usersModel */.O.action.fetchAccountUsers,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(CreateUser));

;// CONCATENATED MODULE: ./src/containers/accountSettings/CreateUser/index.ts



/***/ }),

/***/ "puug":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ accountSettings_Documents_Documents)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/billing/model.ts
var billing_model = __webpack_require__("85AV");
// EXTERNAL MODULE: ./src/state/billing/selectors.ts
var selectors = __webpack_require__("oqJG");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./src/components/ui/Table/Table.tsx + 1 modules
var Table = __webpack_require__("AYO0");
// EXTERNAL MODULE: ./src/utils/currency.js
var currency = __webpack_require__("0gnX");
;// CONCATENATED MODULE: ./src/containers/accountSettings/Documents/components/Documents.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Documents = ({"base":"YlSWQBG1a1RW6clPGHRu","tableHeader":"c4CxApDbrkYT_EfwraLP"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/Documents/components/Documents.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};










var isQuarterAct = function (value) { return value === null || value === void 0 ? void 0 : value.hasOwnProperty('quarter'); };
var EmptyState = function () { return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Documents.emptyState) }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/no_visual_insights.png", title: (0,jsx_runtime.jsx)("span", { children: l('You don’t have any documents yet.', 'accountDocuments') }) }) }))); };
var DocumentsTable = function (_a) {
    var data = _a.data, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
    var handleDownloadAct = function (downloadLink, isQuarter) {
        onSendAnalyticalEvent({
            eventType: 'Account documents: document downloaded',
            properties: {
                type: isQuarter ? 'Statements' : 'Acceptance Act',
            },
        });
        window.location.assign("".concat(downloadLink, "?q=").concat(new Date().getTime()));
    };
    var rowConfig = (0,react.useMemo)(function () { return ({
        keyAccessor: function (row) { return row.id; },
    }); }, []);
    var columnsConfig = (0,react.useMemo)(function () { return ([
        {
            id: 'documentType',
            accessor: function (row) { return row.downloadLink; },
            maxWidth: '30vw',
            minWidth: '100px',
            header: function () { return l('Type'); },
            cell: function (_a) {
                var row = _a.row;
                var isQuarter = isQuarterAct(row);
                return ((0,jsx_runtime.jsx)("a", __assign({ rel: "noopener noreferrer", onClick: function () { return handleDownloadAct(row.downloadLink, isQuarter); } }, { children: isQuarter
                        ? l('Statements', 'accountDocuments')
                        : l('Act of acceptance', 'accountDocuments') })));
            },
        },
        {
            id: 'issued',
            sortable: true,
            accessor: function (row) { return row.issued; },
            maxWidth: '20vw',
            minWidth: '130px',
            align: 'center',
            header: function () { return l('Date'); },
            cell: function (_a) {
                var value = _a.value;
                var paidAt = moment_default()(value || null);
                return ((0,jsx_runtime.jsx)("span", __assign({ title: value.toString() }, { children: paidAt.isValid() && paidAt.format('L') })));
            },
        },
        {
            id: 'amount',
            sortable: false,
            accessor: function (row) { return ('amount' in row ? row.amount : undefined); },
            maxWidth: '20vw',
            minWidth: '100px',
            align: 'center',
            header: function () { return l('Amount'); },
            cell: function (_a) {
                var row = _a.row;
                if ('amount' in row) {
                    return ((0,jsx_runtime.jsx)("span", __assign({ title: row.amount }, { children: (0,currency/* formatCurrency */.v)(row.currency, numeral_default()(row.amount).format('0,0[.]00')) })));
                }
                return (0,jsx_runtime.jsx)("span", { children: "-" });
            },
        }
    ]); }, []);
    return ((0,jsx_runtime.jsx)(Table/* default */.A, { data: data, columnsConfig: columnsConfig, rowConfig: rowConfig }));
};
var Documents_Documents = function (_a) {
    var _b = _a.documents, documents = _b === void 0 ? [] : _b, _c = _a.quarterActs, quarterActs = _c === void 0 ? [] : _c, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
    var data = (0,lodash.orderBy)(__spreadArray(__spreadArray([], __read(documents), false), __read(quarterActs), false), 'issued', 'desc');
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Documents.base) }, { children: !(data === null || data === void 0 ? void 0 : data.length) ? ((0,jsx_runtime.jsx)(EmptyState, {})) : ((0,jsx_runtime.jsx)(DocumentsTable, { data: data, onSendAnalyticalEvent: onSendAnalyticalEvent })) })));
};
/* harmony default export */ const components_Documents = (Documents_Documents);

;// CONCATENATED MODULE: ./src/containers/accountSettings/Documents/Documents.tsx
var Documents_assign = (undefined && undefined.__assign) || function () {
    Documents_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Documents_assign.apply(this, arguments);
};
var Documents_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var DOCUMENTS_UPDATE_DELAY = 5000;
var DocumentsContainer = function (_a) {
    var documents = _a.documents, quarterActs = _a.quarterActs, loading = _a.loading, fetchSubscription = _a.fetchSubscription, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = Documents_read((0,react.useState)(null), 2), pollerTimeoutId = _b[0], setPollerTimeoutId = _b[1];
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({ eventType: 'Account settings: Documents page loaded' });
        fetchSubscription();
    }, []);
    (0,react.useEffect)(function () {
        clearTimeout(pollerTimeoutId);
        setPollerTimeoutId(setTimeout(function () { return fetchSubscription({ justRefresh: true }); }, DOCUMENTS_UPDATE_DELAY));
        return function () {
            clearTimeout(pollerTimeoutId);
        };
    }, [documents]);
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, Documents_assign({ loaded: !loading }, { children: (0,jsx_runtime.jsx)(components_Documents, { documents: documents, quarterActs: quarterActs, onSendAnalyticalEvent: sendAnalyticalEvent }) })));
};
/* harmony default export */ const accountSettings_Documents_Documents = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) { return ({
    documents: (0,selectors/* getAccountDocuments */.AR)(state),
    quarterActs: (0,selectors/* getAccountQuarterActs */.T0)(state),
    loading: !(0,selectors/* isBillingLoaded */.Ji)(state),
}); }, {
    fetchSubscription: billing_model/* billingModel */.X.action.fetchBillingSubscription,
    sendAnalyticalEvent: model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(DocumentsContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/Documents/index.ts



/***/ }),

/***/ "kn5C":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ EditUser_EditUser)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./src/utils/alert.ts + 3 modules
var utils_alert = __webpack_require__("X4yY");
// EXTERNAL MODULE: ./src/state/users/model.ts
var model = __webpack_require__("lWdd");
// EXTERNAL MODULE: ./src/state/users/selectors.ts
var selectors = __webpack_require__("zcN7");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var settings_selectors = __webpack_require__("YQsP");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/redux-form/lib/index.js
var lib = __webpack_require__("MCI9");
// EXTERNAL MODULE: ./src/components/ui/Section/index.ts + 2 modules
var Section = __webpack_require__("/4sX");
// EXTERNAL MODULE: ./src/components/ui/TextField/TextField.tsx + 1 modules
var TextField = __webpack_require__("mVWl");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/accountSettings/EditUser/components/EditUserForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_EditUserForm = ({"base":"AgZ72N0UMTzj4RV3pNOQ","section":"D5bOqqU547Gf27sM2zTw","sectionRole":"VfxXbpB56GdkKG31rnYm","bottomBar":"MSWGCiYUSbzhPWafZNST","errorText":"F3mnJzpse2lWvReAz0Ys"});
// EXTERNAL MODULE: ./src/containers/accountSettings/CreateUser/components/UserRolePermissions.tsx + 4 modules
var UserRolePermissions = __webpack_require__("zcTO");
;// CONCATENATED MODULE: ./src/containers/accountSettings/EditUser/components/EditUserForm.js






var _dec, _class;
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }












var EditUserForm = (_dec = (0,lib/* reduxForm */.zW)({
  form: 'editUser',
  fields: ['firstName', 'lastName', 'phone', 'skype', 'position', 'role', 'permissions']
}, function (_state, ownProps) {
  return {
    initialValues: {
      firstName: ownProps.firstName,
      lastName: ownProps.lastName,
      phone: ownProps.phone,
      position: ownProps.position,
      role: ownProps.role,
      permissions: ownProps.permissions
    }
  };
}), _dec(_class = /*#__PURE__*/function (_PureComponent) {
  function EditUserForm() {
    (0,classCallCheck/* default */.A)(this, EditUserForm);
    return _callSuper(this, EditUserForm, arguments);
  }
  (0,inherits/* default */.A)(EditUserForm, _PureComponent);
  return (0,createClass/* default */.A)(EditUserForm, [{
    key: "render",
    value: function render() {
      var _this$props = this.props,
        _this$props$fields = _this$props.fields,
        firstName = _this$props$fields.firstName,
        lastName = _this$props$fields.lastName,
        phone = _this$props$fields.phone,
        position = _this$props$fields.position,
        role = _this$props$fields.role,
        permissions = _this$props$fields.permissions,
        accessRights = _this$props.accessRights,
        editing = _this$props.editing,
        handleSubmit = _this$props.handleSubmit;
      return /*#__PURE__*/(0,jsx_runtime.jsxs)("form", {
        className: classnames_default()(components_EditUserForm.base),
        onSubmit: handleSubmit,
        children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(Section/* default */.A, {
          label: l('Main info'),
          className: classnames_default()(components_EditUserForm.section),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            required: true,
            value: firstName,
            name: "firstName",
            type: "text",
            label: l('First name')
          }, firstName)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            required: true,
            value: lastName,
            name: "lastName",
            type: "text",
            label: l('Last name')
          }, lastName))]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)(Section/* default */.A, {
          label: l('Additional info'),
          className: classnames_default()(components_EditUserForm.section),
          children: [/*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            value: phone,
            name: "phone",
            type: "tel",
            label: l('Phone number')
          }, phone)), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, _objectSpread({
            required: true,
            value: position,
            name: "position",
            type: "text",
            label: l('Job title')
          }, position))]
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Section/* default */.A, {
          label: l('User role'),
          className: classnames_default()(components_EditUserForm.section, components_EditUserForm.sectionRole),
          children: /*#__PURE__*/(0,jsx_runtime.jsx)(UserRolePermissions/* default */.A, {
            role: role,
            permissions: permissions,
            accessRights: accessRights
          })
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
          "double": true
        }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(components_EditUserForm.bottomBar),
          children: [this.props.validationError && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(components_EditUserForm.errorText),
            children: l('An error has occurred! ' + 'Maybe user with given email already exists in another account', 'createUser')
          }), /*#__PURE__*/(0,jsx_runtime.jsxs)(ButtonBar/* default */.A, {
            children: [/*#__PURE__*/(0,jsx_runtime.jsx)(dist/* Link */.N_, {
              to: "/settings/users",
              children: /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
                type: "button",
                label: l('Cancel')
              })
            }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
              primary: true,
              loading: editing,
              type: "submit",
              label: l('Save')
            })]
          })]
        })]
      });
    }
  }]);
}(react.PureComponent)) || _class);

;// CONCATENATED MODULE: ./src/containers/accountSettings/EditUser/EditUser.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
















var EditUser = /** @class */ (function (_super) {
    __extends(EditUser, _super);
    function EditUser() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleEditUser = function (info) {
            var userId = _this.props.params.userId;
            _this.props.editUser({
                userId: userId,
                role: info.role,
                permissions: info.permissions,
                info: __assign({}, info),
            });
        };
        return _this;
    }
    EditUser.prototype.componentDidMount = function () {
        if (!this.props.users) {
            this.props.fetchAccountUsers();
        }
    };
    EditUser.prototype.componentDidUpdate = function () {
        var _a = this.props, currentUser = _a.currentUser, edited = _a.edited, error = _a.error;
        if (currentUser && !currentUser.isAccountAdmin) {
            this.props.push('/themes');
        }
        if (edited) {
            this.props.push('/settings/users');
        }
        if (error) {
            (0,utils_alert/* default */.A)({
                title: l('An error has occurred'),
                message: l('If reloading of the page doesn\'t fix the problem contact our support team'),
            });
            this.props.clearEditUserState();
        }
    };
    EditUser.prototype.componentWillUnmount = function () {
        this.props.clearEditUserState();
    };
    Object.defineProperty(EditUser.prototype, "userById", {
        get: function () {
            var _a = this.props, users = _a.users, params = _a.params;
            return users && users[params.userId];
        },
        enumerable: false,
        configurable: true
    });
    EditUser.prototype.render = function () {
        var _a = this.props, users = _a.users, editing = _a.editing, accessRights = _a.accessRights;
        var user = this.userById;
        if (users && !user) {
            return ((0,jsx_runtime.jsx)(EndorseContent/* default */.A, __assign({ title: l('User not found'), image: "/static/images/empty_users.png", message: l('User with given id was not found in this account') }, { children: (0,jsx_runtime.jsx)(dist/* Link */.N_, __assign({ to: "/settings/users" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", label: l('Back to users') }) })) })));
        }
        return ((0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: user }, { children: user
                && ((0,jsx_runtime.jsx)(EditUserForm, { editing: editing, firstName: user.firstName, lastName: user.lastName, phone: user.phone, skype: user.skype, position: user.position, role: user.role, permissions: user.permissions, onSubmit: this.handleEditUser, accessRights: accessRights })) })));
    };
    return EditUser;
}(react.Component));
/* harmony default export */ const EditUser_EditUser = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    users: (0,selectors/* getUsersMap */.B8)(state),
    editing: (0,selectors/* isUserEditing */.ks)(state),
    edited: (0,selectors/* isUserEdited */.pT)(state),
    error: (0,selectors/* getEditUserError */.G$)(state),
    accessRights: (0,settings_selectors/* isAccessRightsEnabled */.JA)(state),
}); }, {
    push: actions/* push */.VC,
    editUser: model/* usersModel */.O.action.editUser,
    fetchAccountUsers: model/* usersModel */.O.action.fetchAccountUsers,
    clearEditUserState: model/* usersModel */.O.action.clearEditUserState,
}))(EditUser));

;// CONCATENATED MODULE: ./src/containers/accountSettings/EditUser/index.ts



/***/ }),

/***/ "NX4p":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ accountSettings_ExternalAuthorizations_ExternalAuthorizations)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/settings/model.ts
var model = __webpack_require__("C0Rk");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var selectors = __webpack_require__("YQsP");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var account_selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/hooks/useApi.tsx
var useApi = __webpack_require__("lvrO");
// EXTERNAL MODULE: ./src/components/ui/Modal/index.ts
var Modal = __webpack_require__("V5xf");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/InfoBox/InfoBox.tsx + 1 modules
var InfoBox = __webpack_require__("Ikst");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/const.ts
var INSTAGRAM_TERMS_LINK = 'https://developers.facebook.com/docs/instagram-api/reference/ig-user/recently_searched_hashtags';

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/StopMonitoringHashtagModal/StopMonitoringHashtagModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const StopMonitoringHashtagModal = ({"container":"zybj1h8A8yoKSFNmhIV_","title":"s7y2fgLbH5actcJS5MqA","info":"jzCGUKyHIkeYNVZ9Bkx4","noBreak":"AfCEE6jvy6myNrYDamBW","instIcon":"hqQe1upAvspoRJQFPnva","warningContainer":"Tupp2qiSoYBSFNcDLX9U","warningMessage":"UNioyNHHtuhxNQeLsaJl","warningMessageListItem":"TGByWG2M0T7orx2nDtTG","error":"FzeARTo9smfAPFClqLDg","buttons":"ot5TKfifruPsNFzIKOkS"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/StopMonitoringHashtagModal/StopMonitoringHashtagModal.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};








var StopMonitoringHashtagModal_StopMonitoringHashtagModal = function (_a) {
    var isOpen = _a.isOpen, hashtagName = _a.hashtagName, pageName = _a.pageName, loading = _a.loading, error = _a.error, onStopMonitoring = _a.onStopMonitoring, onClose = _a.onClose;
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, __assign({ className: StopMonitoringHashtagModal.container, isOpen: isOpen, onRequestClose: onClose }, { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, __assign({ className: StopMonitoringHashtagModal.title }, { children: [l('Stop monitoring', 'stopMonitoringModalHeader'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), "#", hashtagName, (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('in', 'stopMonitoringModalHeader'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsxs)("span", __assign({ className: StopMonitoringHashtagModal.noBreak }, { children: [(0,jsx_runtime.jsx)("img", { className: StopMonitoringHashtagModal.instIcon, width: 16, height: 16, src: "/static/images/social_icons/instagram.png", alt: "" }), pageName] }))] })), (0,jsx_runtime.jsx)("p", __assign({ className: StopMonitoringHashtagModal.info }, { children: l('We will stop data collection for this hashtag immediately') })), (0,jsx_runtime.jsx)(InfoBox/* default */.A, { displayed: true, warning: true, className: StopMonitoringHashtagModal.warningContainer, text: ((0,jsx_runtime.jsxs)("ul", __assign({ className: StopMonitoringHashtagModal.warningMessage }, { children: [(0,jsx_runtime.jsxs)("li", __assign({ className: StopMonitoringHashtagModal.warningMessageListItem }, { children: [l('Per'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", __assign({ target: "_blank", rel: "noopener noreferrer", href: INSTAGRAM_TERMS_LINK }, { children: l('Instagram terms') })), ",", (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('the hashtag stays linked to this Instagram account for up to 7 days, occupying a slot allocated for hashtag collection')] })), (0,jsx_runtime.jsx)("li", __assign({ className: StopMonitoringHashtagModal.warningMessageListItem }, { children: l('The hashtag will only free up a slot if it\'s not monitored in any other application (or YouScan account)') }))] }))) }), error && ((0,jsx_runtime.jsx)("p", __assign({ className: StopMonitoringHashtagModal.error }, { children: l('Something went wrong...') }))), (0,jsx_runtime.jsxs)("div", __assign({ className: StopMonitoringHashtagModal.buttons }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: onClose }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, loading: loading, label: l('Stop # monitoring'), onClick: onStopMonitoring })] }))] })));
};
/* harmony default export */ const components_StopMonitoringHashtagModal_StopMonitoringHashtagModal = (StopMonitoringHashtagModal_StopMonitoringHashtagModal);

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/StopMonitoringHashtagModal/index.ts


// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/Hashtag/Hashtag.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Hashtag = ({"hashtagContainer":"a4ucwK9mPf7_ieHTMhBc","number":"jjseQjYQzD3ciNjTbaxD","label":"tMCtiprvxhgIi7Q6exXS","monitored":"NwukagOzvZw53PjTK4o_","stop":"gLerwLHIyg15uIZ42cuM","addToMonitoring":"eNz0YVwALgLVmo8hByYw","loading":"_53WwmP7HRnvOODYKScRg","error":"UazlRDzctKZlIVAs6I2L"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/Hashtag/Hashtag.tsx
var Hashtag_assign = (undefined && undefined.__assign) || function () {
    Hashtag_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Hashtag_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var Hashtag_Hashtag = function (_a) {
    var number = _a.number, hashtag = _a.hashtag, pageId = _a.pageId, pageName = _a.pageName, fetchHashtags = _a.fetchHashtags, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _b = __read((0,react.useState)(false), 2), isDeleteHashtagModalOpen = _b[0], setIsDeleteHashtagModalOpen = _b[1];
    var _c = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.externalAuthorizations.addInstagramHashtag), addToMonitoring = _c.fetch, addToMonitoringLoading = _c.loading, addToMonitoringError = _c.error;
    var _d = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.externalAuthorizations.stopMonitoringInstagramHashtag), stopMonitoring = _d.fetch, stopMonitoringLoading = _d.loading, stopMonitoringError = _d.error;
    var eventProperties = function () {
        return {
            pageId: pageId,
            hashtag: hashtag.name,
        };
    };
    var handleDeleteHashtagOpen = function () {
        setIsDeleteHashtagModalOpen(true);
        sendAnalyticalEvent('InstagramHashtags: start removing new hashtag from monitoring');
    };
    var handleDeleteHashtagClose = function () {
        setIsDeleteHashtagModalOpen(false);
    };
    var handleAddToMonitoringClick = function () {
        addToMonitoring({ pageId: pageId, hashtagName: hashtag.name })
            .then(function () { return fetchHashtags(); });
        sendAnalyticalEvent('InstagramHashtags: add existing hashtag to monitoring');
    };
    var handleStopMonitoringClick = function () {
        stopMonitoring({ pageId: pageId, hashtagName: hashtag.name })
            .then(function () {
            handleDeleteHashtagClose();
            fetchHashtags();
        });
        sendAnalyticalEvent('InstagramHashtags: remove hashtag from monitoring');
    };
    var renderMonitoredLabel = function () { return ((0,jsx_runtime.jsxs)("div", Hashtag_assign({ className: classnames_default()(Hashtag.label, Hashtag.monitored) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "check" }), (0,jsx_runtime.jsx)(Tooltip/* default */.A, Hashtag_assign({ text: l('Stop monitoring') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { className: Hashtag.stop, type: "minus-circle-outline", onClick: handleDeleteHashtagOpen }) }))] }))); };
    var renderAddToMonitoringLabel = function () {
        var _a;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", Hashtag_assign({ className: classnames_default()(Hashtag.label, Hashtag.addToMonitoring, (_a = {}, _a[Hashtag.loading] = addToMonitoringLoading, _a)), onClick: handleAddToMonitoringClick }, { children: addToMonitoringLoading
                        ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "loading", spinning: true }), (0,jsx_runtime.jsx)("span", { children: l('Adding...') })] }))
                        : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "plus" }), l('Add to monitoring')] })) })), addToMonitoringError && ((0,jsx_runtime.jsx)("span", Hashtag_assign({ className: Hashtag.error }, { children: l('Something went wrong...') })))] }));
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("li", Hashtag_assign({ className: Hashtag.hashtagContainer }, { children: [(0,jsx_runtime.jsxs)("span", Hashtag_assign({ className: Hashtag.number }, { children: [number, "."] })), (0,jsx_runtime.jsxs)("span", { children: ["#", hashtag.name] }), hashtag.isMonitored
                        ? renderMonitoredLabel()
                        : renderAddToMonitoringLabel()] }), hashtag.id), (0,jsx_runtime.jsx)(components_StopMonitoringHashtagModal_StopMonitoringHashtagModal, { isOpen: isDeleteHashtagModalOpen, loading: stopMonitoringLoading, error: !!stopMonitoringError, hashtagName: hashtag.name, pageName: pageName, onStopMonitoring: handleStopMonitoringClick, onClose: handleDeleteHashtagClose })] }));
};
/* harmony default export */ const components_Hashtag_Hashtag = (Hashtag_Hashtag);

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/Hashtag/index.ts


// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/ui/InfoBox/index.ts
var ui_InfoBox = __webpack_require__("rpFs");
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/AddHashtagModal/AddHashtagModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AddHashtagModal = ({"container":"gkrwIp5zt8GgFd0FhP4n","title":"kjcef1Vg47y_h73q7HB4","warningContainer":"GKkByLmY6YwzoC6TYP_m","warningMessage":"VF97XxGTB1tOpsfn6qQN","warningMessageListItem":"QrowN6ZWTxToegCCwgP1","error":"P9zcF4TEayi6Lre0_A1Q","buttons":"uRHAs1fmp4WH4_qAAVOT"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/AddHashtagModal/AddHashtagModal.tsx
var AddHashtagModal_assign = (undefined && undefined.__assign) || function () {
    AddHashtagModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AddHashtagModal_assign.apply(this, arguments);
};
var AddHashtagModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};










var AddHashtagModal_AddHashtagModal = function (_a) {
    var isOpen = _a.isOpen, onClose = _a.onClose, onAdd = _a.onAdd, loading = _a.loading, error = _a.error;
    var _b = AddHashtagModal_read((0,react.useState)(''), 2), newHashtag = _b[0], setNewHashtag = _b[1];
    (0,react.useEffect)(function () {
        setNewHashtag('');
    }, [isOpen]);
    var handleAddClick = function () {
        onAdd(newHashtag);
    };
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, AddHashtagModal_assign({ className: AddHashtagModal.container, isOpen: isOpen, onRequestClose: onClose }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, AddHashtagModal_assign({ className: AddHashtagModal.title }, { children: l('Monitor new hashtag') })), (0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, label: l('Type the hashtag you want to monitor'), leftIcon: ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: "#" })), placeholder: l('for example “veganfood”'), value: newHashtag, onChange: setNewHashtag }), (0,jsx_runtime.jsx)(ui_InfoBox/* default */.A, { displayed: true, warning: true, className: AddHashtagModal.warningContainer, text: ((0,jsx_runtime.jsxs)("ul", AddHashtagModal_assign({ className: AddHashtagModal.warningMessage }, { children: [(0,jsx_runtime.jsx)("li", AddHashtagModal_assign({ className: AddHashtagModal.warningMessageListItem }, { children: l('One slot allocated for hashtags collection will be used') })), (0,jsx_runtime.jsxs)("li", AddHashtagModal_assign({ className: AddHashtagModal.warningMessageListItem }, { children: [l('It may take up to 7 days to free this slot per'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", AddHashtagModal_assign({ target: "_blank", rel: "noopener noreferrer", href: INSTAGRAM_TERMS_LINK }, { children: l('Instagram terms') }))] }))] }))) }), error && ((0,jsx_runtime.jsx)("p", AddHashtagModal_assign({ className: AddHashtagModal.error }, { children: l('Something went wrong...') }))), (0,jsx_runtime.jsxs)("div", AddHashtagModal_assign({ className: AddHashtagModal.buttons }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: onClose }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, loading: loading, disabled: !newHashtag, label: l('Monitor this #'), onClick: handleAddClick })] }))] })));
};
/* harmony default export */ const components_AddHashtagModal_AddHashtagModal = (AddHashtagModal_AddHashtagModal);

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/components/AddHashtagModal/index.ts


// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/models/Authorization.ts
var Authorization = __webpack_require__("XSTB");
// EXTERNAL MODULE: ./node_modules/react-copy-to-clipboard/lib/index.js
var lib = __webpack_require__("P5Jw");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AddAuthorizations/components/AccountAuthorization.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AccountAuthorization = ({"base":"Y79AbWXxStiL9lyzLAqS","background":"TrJ13j1H1gr46unk6bdw","content":"YsrAP2bauKiU_5aQ1wHu","textBlock":"cfzovVY6CDBYHixAiYZ6","buttonContainer":"cPFfobFVOFd5B59Bl8Mc","button":"mplHB1BqYcg8gHqdQHIx","linkLabel":"mrEh2WcRg5HJgd9LaZPz","linkButton":"KIexgPJh51cwANbtRRhl"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AddAuthorizations/components/AccountAuthorization.tsx
var AccountAuthorization_assign = (undefined && undefined.__assign) || function () {
    AccountAuthorization_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AccountAuthorization_assign.apply(this, arguments);
};









var AccountAuthorization_AccountAuthorization = function (_a) {
    var _b;
    var onlyButtons = _a.onlyButtons, label = _a.label, description = _a.description, buttonLabel = _a.buttonLabel, buttonColor = _a.buttonColor, type = _a.type, authorizationLink = _a.authorizationLink, onAuthorizationInit = _a.onAuthorizationInit, onAuthorizationLinkCopy = _a.onAuthorizationLinkCopy;
    return ((0,jsx_runtime.jsxs)("div", AccountAuthorization_assign({ className: classnames_default()(AccountAuthorization.base) }, { children: [!onlyButtons && ((0,jsx_runtime.jsx)("div", { className: AccountAuthorization.background })), (0,jsx_runtime.jsxs)("div", AccountAuthorization_assign({ className: AccountAuthorization.content }, { children: [!onlyButtons && ((0,jsx_runtime.jsxs)("div", AccountAuthorization_assign({ className: AccountAuthorization.textBlock }, { children: [(0,jsx_runtime.jsx)("div", { children: label }), (0,jsx_runtime.jsx)("div", { children: description })] }))), (0,jsx_runtime.jsxs)("div", AccountAuthorization_assign({ className: AccountAuthorization.buttonContainer }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, className: AccountAuthorization.button, style: { backgroundColor: buttonColor, borderColor: buttonColor }, label: buttonLabel, onClick: onAuthorizationInit }), authorizationLink && ((0,jsx_runtime.jsx)(Tooltip/* default */.A, AccountAuthorization_assign({ on: "click", text: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "success", color: "green" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Authorization link was copied', 'socialAccounts')] }), (0,jsx_runtime.jsx)("span", AccountAuthorization_assign({ className: classnames_default()(AccountAuthorization.authorizationLinkDescription) }, { children: l(
                                            // eslint-disable-next-line max-len
                                            'Share this link with the user you want to add, so they can authorize access to their account without logging in to YouScan.', 'socialAccounts') }))] }) }, { children: (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)((lib_default()), AccountAuthorization_assign({ text: authorizationLink.externalUrl }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { link: true, className: classnames_default()((_b = {}, _b[AccountAuthorization.linkButton] = onlyButtons, _b)), label: (0,jsx_runtime.jsxs)("div", AccountAuthorization_assign({ className: classnames_default()(AccountAuthorization.linkLabel) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "link" }), " ", l('Authorize another person', 'socialAccounts')] })), onClick: onAuthorizationLinkCopy }) })) }) })))] }))] }))] })));
};
/* harmony default export */ const components_AccountAuthorization = (AccountAuthorization_AccountAuthorization);

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AddAuthorizations/components/AddAuthorizations.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AddAuthorizations = ({"base":"mKY3uhCwXfglSoKSq1bQ","title":"mYuNpif8_elwnpkgXQmf","labelContainer":"tfr5njM9cC3fZXIk1f6z","label":"fO_NIOTOGMyTHIuk_O7Y","plus":"EJJHExjhU2jGclxGVyzr","buttonContainer":"_PWhBT5TgfpEIaB7ocZS"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AddAuthorizations/components/AddAuthorizations.tsx
var AddAuthorizations_assign = (undefined && undefined.__assign) || function () {
    AddAuthorizations_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AddAuthorizations_assign.apply(this, arguments);
};







var AddAuthorizations_AddAuthorizations = function (_a) {
    var onlyFacebookButtons = _a.onlyFacebookButtons, authorizationLinks = _a.authorizationLinks, isFacebookComplianceAccount = _a.isFacebookComplianceAccount, onAuthorizationInit = _a.onAuthorizationInit, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
    var getAuthorizationOptions = function () {
        var LABEL_ICON_SIZE = 24;
        var BUTTON_ICON_SIZE = 18;
        return [
            {
                type: Authorization/* AuthorizationType */.s0.Facebook,
                buttonColor: '#1877F2',
                label: ((0,jsx_runtime.jsxs)("div", AddAuthorizations_assign({ className: AddAuthorizations.labelContainer }, { children: [(0,jsx_runtime.jsx)("img", { width: LABEL_ICON_SIZE, height: LABEL_ICON_SIZE, src: "/static/images/social_icons/fb_blue.png", alt: "" }), (0,jsx_runtime.jsx)("span", AddAuthorizations_assign({ className: AddAuthorizations.label }, { children: "Facebook" })), (0,jsx_runtime.jsx)("span", AddAuthorizations_assign({ className: AddAuthorizations.plus }, { children: "+" })), (0,jsx_runtime.jsx)("img", { width: LABEL_ICON_SIZE, height: LABEL_ICON_SIZE, src: "/static/images/social_icons/instagram.png", alt: "" }), (0,jsx_runtime.jsx)("span", AddAuthorizations_assign({ className: AddAuthorizations.label }, { children: "Instagram" }))] }))),
                buttonLabel: ((0,jsx_runtime.jsxs)("div", AddAuthorizations_assign({ className: AddAuthorizations.buttonContainer }, { children: [(0,jsx_runtime.jsx)("img", { width: BUTTON_ICON_SIZE, height: BUTTON_ICON_SIZE, src: "/static/images/social_icons/fb_white.png", alt: "" }), (0,jsx_runtime.jsxs)("span", { children: [l('Authorize your', 'socialAccounts'), " Facebook"] })] }))),
                description: l('to enable Facebook and Instagram collection; '
                    + 'to add Instagram profiles and Facebook public pages as channels and collect posts and comments', 'socialAccounts'),
                authorizationLink: authorizationLinks === null || authorizationLinks === void 0 ? void 0 : authorizationLinks.facebook,
                onAuthorizationInit: function () {
                    onSendAnalyticalEvent({ eventType: 'Social accounts: Continue with Facebook clicked' });
                    onAuthorizationInit(Authorization/* AuthorizationType */.s0.Facebook);
                },
                onAuthorizationLinkCopy: function () {
                    onSendAnalyticalEvent({ eventType: 'Social accounts: Add with a Facebook link clicked' });
                },
            },
            {
                type: Authorization/* AuthorizationType */.s0.LinkedIn,
                buttonColor: '#2867B2',
                label: ((0,jsx_runtime.jsxs)("div", AddAuthorizations_assign({ className: AddAuthorizations.labelContainer }, { children: [(0,jsx_runtime.jsx)("img", { width: LABEL_ICON_SIZE, height: LABEL_ICON_SIZE, src: "/static/images/social_icons/linkedin.png", alt: "" }), (0,jsx_runtime.jsx)("span", AddAuthorizations_assign({ className: AddAuthorizations.label }, { children: "LinkedIn" }))] }))),
                buttonLabel: ((0,jsx_runtime.jsxs)("div", AddAuthorizations_assign({ className: AddAuthorizations.buttonContainer }, { children: [(0,jsx_runtime.jsx)("img", { width: BUTTON_ICON_SIZE, height: BUTTON_ICON_SIZE, src: "/static/images/social_icons/linkedin.png", alt: "" }), (0,jsx_runtime.jsxs)("span", { children: [l('Authorize your', 'socialAccounts'), " LinkedIn"] })] }))),
                description: l('to add owned LinkedIn profiles as channels and collect posts and comments', 'socialAccounts'),
                authorizationLink: authorizationLinks === null || authorizationLinks === void 0 ? void 0 : authorizationLinks.linkedIn,
                onAuthorizationInit: function () {
                    onSendAnalyticalEvent({ eventType: 'Social accounts: Continue with LinkedIn clicked' });
                    onAuthorizationInit(Authorization/* AuthorizationType */.s0.LinkedIn);
                },
                onAuthorizationLinkCopy: function () {
                    onSendAnalyticalEvent({ eventType: 'Social accounts: Add with a LinkedIn link clicked' });
                },
            }
        ];
    };
    if (onlyFacebookButtons) {
        return ((0,jsx_runtime.jsx)("div", { children: getAuthorizationOptions().filter(function (v) { return v.type === 'facebook'; }).map(function (option) { return ((0,jsx_runtime.jsx)(components_AccountAuthorization, AddAuthorizations_assign({ onlyButtons: true }, option), option.type)); }) }));
    }
    return ((0,jsx_runtime.jsxs)("div", AddAuthorizations_assign({ className: classnames_default()(AddAuthorizations.base) }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, AddAuthorizations_assign({ className: AddAuthorizations.title }, { children: l('Add authorization', 'socialAccounts') })), getAuthorizationOptions().map(function (option) { return ((0,jsx_runtime.jsx)(components_AccountAuthorization, AddAuthorizations_assign({}, option), option.type)); })] })));
};
/* harmony default export */ const components_AddAuthorizations = ((0,react.memo)(AddAuthorizations_AddAuthorizations));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AddAuthorizations/AddAuthorizations.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();

/* eslint-disable import/named */








var AddAuthorizationsContainer = /** @class */ (function (_super) {
    __extends(AddAuthorizationsContainer, _super);
    function AddAuthorizationsContainer() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleFetchAuthorizationLink = function () {
            _this.props.fetchAuthorizationLink();
        };
        _this.handelOpenSetupWindow = function (type) {
            _this.createIntegrationSetupWindow(_this.props.authorizationLinks[type].internalUrl);
        };
        return _this;
    }
    AddAuthorizationsContainer.prototype.componentDidMount = function () {
        this.handleFetchAuthorizationLink();
    };
    AddAuthorizationsContainer.prototype.createIntegrationSetupWindow = function (integrationLink) {
        var _this = this;
        var integrationSetupWindow = window.open(integrationLink, '_self', 'YouScan');
        var poller = setInterval(function () {
            if (integrationSetupWindow.closed) {
                clearInterval(poller);
                _this.props.fetchAuthorizations();
            }
        }, 1000);
    };
    AddAuthorizationsContainer.prototype.render = function () {
        var _a = this.props, onlyFacebookButtons = _a.onlyFacebookButtons, isFacebookComplianceAccount = _a.isFacebookComplianceAccount, authorizationLinks = _a.authorizationLinks, sendAnalyticalEvent = _a.sendAnalyticalEvent;
        return ((0,jsx_runtime.jsx)(components_AddAuthorizations, { onlyFacebookButtons: onlyFacebookButtons, authorizationLinks: authorizationLinks, isFacebookComplianceAccount: isFacebookComplianceAccount, onAuthorizationInit: this.handelOpenSetupWindow, onSendAnalyticalEvent: sendAnalyticalEvent }));
    };
    return AddAuthorizationsContainer;
}(react.PureComponent));
/* harmony default export */ const ExternalAuthorizations_AddAuthorizations_AddAuthorizations = ((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
        authorizationLinks: (0,selectors/* getAuthorizationLink */.AP)(state),
        isFacebookComplianceAccount: (0,account_selectors/* getIsFacebookComplianceAccount */.v_)(state),
    });
}, {
    fetchAuthorizations: model/* settingsModel */.N.action.fetchAuthorizations,
    fetchAuthorizationLink: model/* settingsModel */.N.action.fetchAuthorizationLink,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(AddAuthorizationsContainer));

// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/InstagramAccounts.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const InstagramAccounts = ({"container":"wrcab8FdpcN1L8cdaJxS","explanation":"h36ftVADe1Wzt5aLfo_p","instagramAccountContainer":"PqvAOO2jgyFPCBhvckE7","accountInfo":"p2tVHfMNmJ908V_lwhfC","limitInfo":"tRHJlAqghDijgK0I3453","activeHashtags":"b5WhnexIMqZuGN9f45dU","hashtagsSectionContainer":"KZ8prv_Z4u8fYaK0uOWa","hashtagsSectionLabel":"E23oca45e1VtFH_FtdXy","divider":"fJF9zZeu6fgdqASyOECn","emptyState":"gQGEV0rcoZFt97VQjhzU","noAccountsContainer":"Eo93OLE6ISeM9YP6EjFS","noAccountsTitle":"Gstto1wymZ95a8XVroUK","noAccountsText":"H2Ken2oronfsKyzat0oJ","instIcon":"rsO6R3NSRnhDR2aSx4iU","buttonsContainer":"HOwFa7CCZz_NAwdVGtZB"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/InstagramAccounts.tsx
var InstagramAccounts_assign = (undefined && undefined.__assign) || function () {
    InstagramAccounts_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return InstagramAccounts_assign.apply(this, arguments);
};
var InstagramAccounts_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




















var DEFAULT_MAX_HASHTAGS = 30;
var InstagramAccounts_InstagramAccounts = function (_a) {
    var _b, _c;
    var accounts = _a.accounts, fetchInstagramAccounts = _a.fetchInstagramAccounts, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _d = InstagramAccounts_read((0,react.useState)(false), 2), isAddModalOpen = _d[0], setIsAddModalOpen = _d[1];
    var _e = InstagramAccounts_read((0,react.useState)(null), 2), accountToAddNewHashtag = _e[0], setAccountToAddNewHashtag = _e[1];
    var _f = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.externalAuthorizations.addInstagramHashtag), addNewHashtag = _f.fetch, addNewHashtagLoading = _f.loading, addNewHashtagError = _f.error;
    var sendHashtagEvent = function (pageId, hashtag) {
        if (hashtag === void 0) { hashtag = null; }
        return function (eventType) { return sendAnalyticalEvent({
            eventType: eventType,
            properties: {
                pageId: pageId,
                hashtag: hashtag,
            },
        }); };
    };
    (0,react.useEffect)(function () {
        fetchInstagramAccounts();
    }, []);
    var handleAddHashtagOpen = function (accountId) {
        setAccountToAddNewHashtag(accountId);
        setIsAddModalOpen(true);
        sendHashtagEvent(accountToAddNewHashtag)('InstagramHashtags: start adding new hashtag to monitoring');
    };
    var handleAddHashtagClose = function () {
        setAccountToAddNewHashtag(null);
        setIsAddModalOpen(false);
    };
    var handleAddNewHashtag = function (hashtagName) {
        addNewHashtag({
            pageId: accountToAddNewHashtag,
            hashtagName: hashtagName,
        })
            .then(function () {
            handleAddHashtagClose();
            fetchInstagramAccounts();
        });
        sendHashtagEvent(accountToAddNewHashtag, hashtagName)('InstagramHashtags: new hashtag added to monitoring');
    };
    var renderNoInstagramAccounts = function () { return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Instagram hashtags') }), (0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.noAccountsContainer }, { children: [(0,jsx_runtime.jsxs)(H3/* default */.A, InstagramAccounts_assign({ className: InstagramAccounts.noAccountsTitle }, { children: [l('No', 'noInstagramAccounts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("img", { className: InstagramAccounts.instIcon, width: 16, height: 16, src: "/static/images/social_icons/instagram.png", alt: "" }), l('Instagram authorization', 'noInstagramAccounts')] })), (0,jsx_runtime.jsx)("p", InstagramAccounts_assign({ className: InstagramAccounts.noAccountsText }, { children: l('To collect data by hashtags authorize your business Facebook page linked to the business Instagram account:') })), (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(ExternalAuthorizations_AddAuthorizations_AddAuthorizations, { onlyFacebookButtons: true }) })] }))] })); };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)(Loader/* default */.A, InstagramAccounts_assign({ className: InstagramAccounts.container, loaded: !!accounts, empty: !(accounts === null || accounts === void 0 ? void 0 : accounts.length), emptyState: renderNoInstagramAccounts() }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Instagram hashtag monitoring') }), (0,jsx_runtime.jsxs)("div", { children: [l('Add up to'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), ((_b = accounts === null || accounts === void 0 ? void 0 : accounts[0]) === null || _b === void 0 ? void 0 : _b.hashtagsLimit) || DEFAULT_MAX_HASHTAGS, (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('# per one Instagram Business or Creator Account.')] }), (0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.explanation }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info-outline" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('The limit of'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), ((_c = accounts === null || accounts === void 0 ? void 0 : accounts[0]) === null || _c === void 0 ? void 0 : _c.hashtagsLimit) || DEFAULT_MAX_HASHTAGS, (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('# is shared between all applications (including YouScan) where this Instagram account is authorized.')] }))] }), accounts === null || accounts === void 0 ? void 0 : accounts.map(function (acc) {
                        var maxHashtags = acc.hashtagsLimit || DEFAULT_MAX_HASHTAGS;
                        var totalHashtags = acc.hashtags.length;
                        var isHashtagsLimitReached = totalHashtags >= maxHashtags;
                        var monitoredHashtags = acc.hashtags.filter(function (v) { return v.isMonitored; });
                        var notMonitoredHashtags = acc.hashtags.filter(function (v) { return !v.isMonitored; });
                        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.instagramAccountContainer }, { children: [(0,jsx_runtime.jsx)(Divider/* default */.A, { className: InstagramAccounts.divider }), (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.accountInfo }, { children: [(0,jsx_runtime.jsx)("img", { width: 16, height: 16, src: "/static/images/social_icons/instagram.png", alt: "" }), acc.nickname, (0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.limitInfo }, { children: [l('# linked to this Instagram account:'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", InstagramAccounts_assign({ className: InstagramAccounts.activeHashtags }, { children: totalHashtags })), "/", maxHashtags] }))] })), !!monitoredHashtags.length && ((0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.hashtagsSectionContainer }, { children: [(0,jsx_runtime.jsx)("span", InstagramAccounts_assign({ className: InstagramAccounts.hashtagsSectionLabel }, { children: l('# monitored in your YouScan account') })), (0,jsx_runtime.jsx)("ul", { children: monitoredHashtags.map(function (hashtag, i) { return ((0,jsx_runtime.jsx)(components_Hashtag_Hashtag, { number: i + 1, hashtag: hashtag, pageId: acc.id, pageName: acc.nickname, fetchHashtags: fetchInstagramAccounts, sendAnalyticalEvent: sendHashtagEvent(acc.id, hashtag) }, i)); }) })] }))), !!notMonitoredHashtags.length && ((0,jsx_runtime.jsxs)("div", InstagramAccounts_assign({ className: InstagramAccounts.hashtagsSectionContainer }, { children: [(0,jsx_runtime.jsx)("span", InstagramAccounts_assign({ className: InstagramAccounts.hashtagsSectionLabel }, { children: l('# not monitored in your YouScan account') })), (0,jsx_runtime.jsx)("ul", { children: notMonitoredHashtags.map(function (hashtag, i) { return ((0,jsx_runtime.jsx)(components_Hashtag_Hashtag, { number: i + 1 + monitoredHashtags.length, hashtag: hashtag, pageId: acc.id, pageName: acc.nickname, fetchHashtags: fetchInstagramAccounts, sendAnalyticalEvent: sendHashtagEvent(acc.id, hashtag) }, i)); }) })] })))] }), (0,jsx_runtime.jsx)(Tooltip/* default */.A, InstagramAccounts_assign({ text: isHashtagsLimitReached && l('You’ve reached the hashtags limit per authorized Instagram account') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, disabled: isHashtagsLimitReached, label: l('Monitor new #'), onClick: function () { return handleAddHashtagOpen(acc.id); } }) }))] }), acc.id), !totalHashtags && ((0,jsx_runtime.jsx)("div", InstagramAccounts_assign({ className: InstagramAccounts.emptyState }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, message: l('No linked hashtags to this account'), image: "/static/images/hashtags_empty_state.svg" }) })))] }));
                    })] })), (0,jsx_runtime.jsx)(components_AddHashtagModal_AddHashtagModal, { isOpen: isAddModalOpen, onClose: handleAddHashtagClose, onAdd: handleAddNewHashtag, loading: addNewHashtagLoading, error: !!addNewHashtagError })] }));
};
/* harmony default export */ const ExternalAuthorizations_InstagramAccounts_InstagramAccounts = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    accounts: (0,selectors/* getInstagramAccounts */.nj)(state),
}); }, {
    fetchInstagramAccounts: model/* settingsModel */.N.action.fetchInstagramAccounts,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(InstagramAccounts_InstagramAccounts));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/InstagramAccounts/index.ts


// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/components/ui/Avatar/index.ts + 2 modules
var Avatar = __webpack_require__("tq5F");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/utils/authorizations.tsx

function getDaysLeft(date) {
    return moment_default()(date).diff(moment_default().now(), 'days');
}
function getAuthorizationsConnectedChannels(authorization) {
    var _a;
    return (_a = authorization.connectedTopics) === null || _a === void 0 ? void 0 : _a.map(function (connectedTopic) { return connectedTopic.channels; }).flat();
}
function getAuthorizationsConnectedChannelsCount(authorization) {
    var _a;
    if (!((_a = authorization.connectedTopics) === null || _a === void 0 ? void 0 : _a.length))
        return 0;
    return getAuthorizationsConnectedChannels(authorization).length;
}

// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./src/i18n.ts
var i18n = __webpack_require__("872o");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/SourceIcon.tsx + 2 modules
var SourceIcon_SourceIcon = __webpack_require__("tfIF");
// EXTERNAL MODULE: ./src/components/ui/Modal/Modal.tsx + 1 modules
var Modal_Modal = __webpack_require__("7Lz/");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/utils/navigation.ts
var navigation = __webpack_require__("RBXy");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/components/AuthorizationCard/components/AuthorizationDetailModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AuthorizationDetailModal = ({"base":"Po41aj1ou5LEZyrBslMX","divider":"aocdj2c0PhN9P3VSwPIg","avatar":"ZQKBK9GC_kDHVsob6JUC","name":"QumAuqRd7rlwRtFSmFr5","removeButton":"jT8XMr8d6czzh26LDp4i","closeButton":"hNJeWsdCChdOTxKheX6S","flexContainer":"_TE0n10GWBoo4b052cvG","socialAccounts":"wC8eRyhhCHcppDXAAxDj","showMore":"hcvub8cimDMhwZJK2aPT","warning":"vaL1rX8DjDO8VeUej56g","socialAccount":"qO18Yrh07EWyBdJpiyhX","additionalText":"AKMdcmDSW1rgzhxIEC5I","topics":"UA7PS9n0Szs1x8YT1fr3","line":"gz4qrw0IDW9_pvz68SvQ","channelsCount":"hA2910fQ31uDNO3cNMhT","footer":"OORyxDsKglm8kyZzrDQn","title":"ywg_tYm07QqXSoJrphch","text":"pT4FMWe2QiWq6oMJU0wW","textWithIcon":"K_MvE4y7uDAfAR2UF1Wv","image":"uodS0bXr2V8SK1wW6CP_"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/components/AuthorizationCard/components/AuthorizationDetailModal.tsx
var AuthorizationDetailModal_assign = (undefined && undefined.__assign) || function () {
    AuthorizationDetailModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorizationDetailModal_assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var AuthorizationDetailModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
















var AVATAR_SIZE = 44;
var CLIPPED_AVAILABLE_PAGES_COUNT = 7;
var AuthorizationDetailModal_AuthorizationDetailModal = function (_a) {
    var _b;
    var isOpen = _a.isOpen, authorization = _a.authorization, onRemove = _a.onRemove, onRequestClose = _a.onRequestClose, isFacebookComplianceAccount = _a.isFacebookComplianceAccount, otherProps = __rest(_a, ["isOpen", "authorization", "onRemove", "onRequestClose", "isFacebookComplianceAccount"]);
    var options = getComponentOptions(authorization, isFacebookComplianceAccount);
    var showTopicChannels = !!((_b = authorization.connectedTopics) === null || _b === void 0 ? void 0 : _b.length);
    var showFooter = options.footerTitle && options.footerDescription;
    var initialAvailablePages = authorization.availablePages || [];
    var isMoreAvailablePages = initialAvailablePages.length > CLIPPED_AVAILABLE_PAGES_COUNT;
    var clippedAvailablePages = initialAvailablePages.slice(0, CLIPPED_AVAILABLE_PAGES_COUNT);
    var _c = AuthorizationDetailModal_read((0,react.useState)(isMoreAvailablePages), 2), isClipAvailablePages = _c[0], setIsClipAvailablePages = _c[1];
    var availablePages = isClipAvailablePages ? clippedAvailablePages : initialAvailablePages;
    return ((0,jsx_runtime.jsx)(Modal_Modal/* default */.A, AuthorizationDetailModal_assign({ isOpen: isOpen, onRequestClose: onRequestClose }, otherProps, { children: (0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.base }, { children: [renderHeader(), showTopicChannels && renderTopicList(), showFooter && renderFooter()] })) })));
    function renderHeader() {
        return ((0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.header }, { children: [(0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.avatar }, { children: (0,jsx_runtime.jsx)(Avatar/* default */.A, { rounded: true, size: AVATAR_SIZE, imageUrl: authorization.avatarUrl }) })), (0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.name }, { children: [authorization.name, (0,jsx_runtime.jsx)(Icon/* default */.A, { className: AuthorizationDetailModal.removeButton, size: "small", type: "delete", onClick: onRemove })] })), (0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.flexContainer }, { children: [(0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.socialAccounts }, { children: availablePages.map(function (ap) {
                                        var _a;
                                        return ((0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.textWithIcon }, { children: [(0,jsx_runtime.jsx)(SourceIcon_SourceIcon/* default */.A, { size: 18, name: ap.source, gray: (_a = options.substatus) === null || _a === void 0 ? void 0 : _a.includes('expired') }), (0,jsx_runtime.jsx)("span", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.socialAccount }, { children: ap.userName }))] }), ap.userId));
                                    }) })), isMoreAvailablePages && ((0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.showMore, onClick: function () { return setIsClipAvailablePages(!isClipAvailablePages); } }, { children: isClipAvailablePages ? l('Show more') : l('Show less') })))] }), (0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.warning }, { children: options.warningText }))] })), isFacebookComplianceAccount && !availablePages.length && ((0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.additionalText }, { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsxs)("span", { children: [l('You will see the list of Instagram Business accounts and Facebook pages you’ve chosen to use with YouScan here.', 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('You can grant access to specific pages any time in ', 'socialAccounts'), (0,jsx_runtime.jsx)("a", AuthorizationDetailModal_assign({ href: constants/* FACEBOOK_BUSINESS_INTEGRATION_LINK */.CH, target: "_blank", rel: "noopener noreferrer" }, { children: l('Business Integrations settings', 'socialAccounts') })), l(' in your Facebook account.', 'socialAccounts')] })] }))), (0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.closeButton, onClick: onRequestClose }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "close", size: 24 }) })), (showFooter || showTopicChannels) && (0,jsx_runtime.jsx)(Divider/* default */.A, { className: AuthorizationDetailModal.divider })] })));
    }
    function renderTopicList() {
        var _a;
        return ((0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.topics }, { children: [(0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.line }, { children: [(0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.channelsCount }, { children: (0,jsx_runtime.jsx)("b", { children: l('Data collection', 'socialAccounts') }) })), (0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.topicName }, { children: l('In the topic', 'socialAccounts') }))] })), (_a = authorization.connectedTopics) === null || _a === void 0 ? void 0 : _a.map(function (ct) { return ((0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.line }, { children: [(0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.channelsCount }, { children: sprintf(nl('%d channel', '%d channels', ct.channels.length, 'socialAccounts'), ct.channels.length) })), (0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.topicName }, { children: (0,jsx_runtime.jsx)(dist/* Link */.N_, AuthorizationDetailModal_assign({ to: "/themes/".concat(ct.id, "/settings/channels") }, { children: ct.name })) }))] }), ct.id)); })] })));
    }
    function renderFooter() {
        var sourceName = authorization.type === Authorization/* AuthorizationType */.s0.FacebookInstagram ? Authorization/* AuthorizationType */.s0.Facebook : authorization.type;
        return ((0,jsx_runtime.jsxs)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.footer }, { children: [(0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.title }, { children: options.footerTitle })), (0,jsx_runtime.jsx)("div", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.text }, { children: options.footerDescription })), options.showImage
                    && (0,jsx_runtime.jsx)("img", { className: AuthorizationDetailModal.image, src: "/static/images/AuthorizationDetailModal/".concat(sourceName, "/").concat((0,i18n/* getLocale */.JK)(), ".gif"), alt: "helper gif" })] })));
    }
};
function getComponentOptions(authorization, isFacebookComplianceAccount) {
    var substatus = authorization.substatus;
    var dayLeft = getDaysLeft(authorization.expiresAt);
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredRegularCollectionConnected) {
        return {
            warningText: getText(isFacebookComplianceAccount
                ? l('Instagram and Facebook is not collected', 'socialAccounts')
                : l('Instagram is not collected', 'socialAccounts'), 'red'),
            footerTitle: getText(isFacebookComplianceAccount
                ? l('Resume collection', 'socialAccounts')
                : l('Resume Instagram collection', 'socialAccounts'), 'red'),
            footerDescription: getText(isFacebookComplianceAccount
                ? l('Re-add authorization to continue data collection', 'socialAccounts')
                : l('Re-authorize Instagram account to start data collection', 'socialAccounts')),
            showImage: true,
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringRegularCollectionConnected) {
        return {
            warningText: getText(sprintf(nl('%d day left', '%d days left', dayLeft, 'socialAccounts'), dayLeft), 'amber'),
            footerTitle: getText(l('Prevent missing data from Instagram', 'socialAccounts'), 'amber'),
            footerDescription: getText(sprintf(nl('%d day of activity left. Re-authorize this social account', '%d days of activity left. Re-authorize this social account', dayLeft, 'socialAccounts'), dayLeft)),
            showImage: true,
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredChannelsConnected) {
        return {
            warningText: getText(l('Data is not collected', 'socialAccounts'), 'red'),
            footerTitle: getText(l('Resume data collection', 'socialAccounts'), 'red'),
            footerDescription: getText(l('Re-authorize this social account to resume data collection', 'socialAccounts')),
            showImage: true,
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringChannelsConnected) {
        return {
            warningText: getText(sprintf(nl('%d day left', '%d days left', dayLeft, 'socialAccounts'), dayLeft), 'amber'),
            footerTitle: getText(l('Prevent missing data', 'socialAccounts'), 'amber'),
            footerDescription: getText(sprintf(nl('%d day of activity left. Re-authorize this social account', '%d days of activity left. Re-authorize this social account', dayLeft, 'socialAccounts'), dayLeft)),
            showImage: true,
            substatus: substatus,
        };
    }
    function getAuthorizationHelpLink() {
        var pathName = authorization.type === Authorization/* AuthorizationType */.s0.LinkedIn
            ? 'ADDING_LINKEDIN_ACCOUNT_AUTHORIZATION'
            : 'ADDING_META_ACCOUNT_AUTHORIZATION';
        return (0,navigation/* getLinkToHelpYouscan */.vn)(pathName);
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredNoChannelsConnected) {
        return {
            warningText: null,
            footerTitle: getText(l('Authorization has expired', 'socialAccounts')),
            footerDescription: getText((0,jsx_runtime.jsxs)("span", { children: [l("Don't worry, data collection has not been set. You can find instructions for data collection to channels in the", 'socialAccounts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", AuthorizationDetailModal_assign({ href: getAuthorizationHelpLink(), target: "_blank", rel: "noopener noreferrer" }, { children: l('knowledge base', 'socialAccounts') }))] })),
            showImage: false,
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringNoChannelsConnected) {
        return {
            warningText: getText(sprintf(nl('%d day left', '%d days left', dayLeft), dayLeft)),
            footerTitle: getText(l('Data collection')),
            footerDescription: getText((0,jsx_runtime.jsxs)("span", { children: [l('Data collection is not enabled for this account. You can find instructions for data collection to channels in the', 'socialAccounts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", AuthorizationDetailModal_assign({ href: getAuthorizationHelpLink(), target: "_blank", rel: "noopener noreferrer" }, { children: l('knowledge base', 'socialAccounts') }))] })),
            showImage: false,
            substatus: substatus,
        };
    }
    return {
        warningText: getText(sprintf(nl('%d day left', '%d days left', dayLeft, 'socialAccounts'), dayLeft)),
        footerTitle: null,
        footerDescription: null,
        showImage: false,
        substatus: substatus,
    };
    function getText(text, icon) {
        return ((0,jsx_runtime.jsxs)("span", AuthorizationDetailModal_assign({ className: AuthorizationDetailModal.textWithIcon }, { children: [text, (0,jsx_runtime.jsx)(Space/* default */.A, {}), icon ? (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "warning", size: 24, color: icon }) : null] })));
    }
}
/* harmony default export */ const components_AuthorizationDetailModal = (AuthorizationDetailModal_AuthorizationDetailModal);

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/components/AuthorizationCard/AuthorizationCard.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AuthorizationCard = ({"base":"bJxiYJKIobr4dsM7Xdbm","card":"uCeEa4bHPk_ADshADAKB","buttons":"f_qr2lDGf87P3d_XT23D","warningCard":"VxCeDVblM9rpQF8zlukg","userName":"m3vWkFIT4JxtLbgVmr_a","warningText":"HsHTBoTApf5Q6lkxGvyY","source":"WAJAzNEpsvzK6wme6fDi","expired":"vsHzhYa00kiWItihiOIu","expiring":"bnD8u90FhPyqMuVCyNIU","coloredSection":"RETr7VxrHTS8Ix7anspy","wightSection":"I5obYldG16AML8ej6pu3","userInfo":"lzs6Cdlxde7EpXBcrf3n","userAvatar":"xrJlpbfzSw29bXMRYha4","avatarContainer":"x9jxvlCSUg6zctGpBWqK","warning":"H3rARlBLFDRjRCU7KdWa","facebookInstagram":"lKNng50TTV_YhmrFjOkD","expiredText":"f4KI1QuBMNXpwoBC80_a","facebook":"cO8Qq85JGI9QIzUKJoHL","authorizedAccountName":"Jx59wVwbQ6KCaIVCauXe","redText":"KuB0LnwnsMpLwsA1wZUK","plus":"cSK7RMHLeL_wD5TghYmC"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/components/AuthorizationCard/AuthorizationCard.tsx
var AuthorizationCard_assign = (undefined && undefined.__assign) || function () {
    AuthorizationCard_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorizationCard_assign.apply(this, arguments);
};
var AuthorizationCard_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











var AuthorizationCard_AVATAR_SIZE = 44;
var AuthorizationCard_AuthorizationCard = function (_a) {
    var _b;
    var user = _a.user, isFacebookComplianceAccount = _a.isFacebookComplianceAccount, onRevokeAuthorization = _a.onRevokeAuthorization;
    var _c = AuthorizationCard_read((0,react.useState)(false), 2), open = _c[0], setOpen = _c[1];
    var dayLeft = getDaysLeft(user.expiresAt);
    var options = (0,react.useMemo)(function () { return getWarningOptions(user, isFacebookComplianceAccount); }, [user]);
    var handleRevokeAuthorization = function () {
        if (onRevokeAuthorization) {
            return onRevokeAuthorization({ userId: user.id, type: user.type });
        }
        return null;
    };
    var isStatusOk = options.substatus === Authorization/* AuthorizationSubstatus */.CH.Ok;
    return ((0,jsx_runtime.jsxs)("div", AuthorizationCard_assign({ className: AuthorizationCard.base }, { children: [(0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.card, (_b = {}, _b[AuthorizationCard.warningCard] = !isStatusOk, _b[AuthorizationCard.expiring] = options.isExpiring, _b[AuthorizationCard.expired] = options.isExpired, _b)), style: { borderColor: colors/* colors */.Tj[options === null || options === void 0 ? void 0 : options.color] }, onClick: function () { return setOpen(true); } }, { children: isStatusOk ? renderStatusOk() : renderWarningState() })), (0,jsx_runtime.jsx)(components_AuthorizationDetailModal, { isOpen: open, authorization: user, onRemove: handleRevokeAuthorization, onRequestClose: function () { return setOpen(false); }, isFacebookComplianceAccount: isFacebookComplianceAccount })] })));
    function renderSourceIcon(type) {
        if (type === Authorization/* AuthorizationType */.s0.FacebookInstagram) {
            return ((0,jsx_runtime.jsxs)("div", AuthorizationCard_assign({ className: AuthorizationCard.source }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { alt: "facebook", size: 18, name: "facebook.com" }), (0,jsx_runtime.jsx)("span", AuthorizationCard_assign({ className: AuthorizationCard.plus }, { children: "+" })), (0,jsx_runtime.jsx)(SourceIcon/* default */.A, { alt: "instagram", size: 18, name: "instagram.com" })] })));
        }
        return ((0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.source) }, { children: (0,jsx_runtime.jsx)(SourceIcon/* default */.A, { alt: user.type, size: 18, name: "".concat(user.type, ".com") }) })));
    }
    function renderStatusOk() {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.coloredSection, AuthorizationCard.facebook) }, { children: [renderButtons(), (0,jsx_runtime.jsx)(Avatar/* default */.A, { rounded: true, size: AuthorizationCard_AVATAR_SIZE, className: classnames_default()(AuthorizationCard.userAvatar), imageUrl: user.avatarUrl }), renderSourceIcon(user.type)] })), (0,jsx_runtime.jsxs)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.userInfo) }, { children: [(0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: AuthorizationCard.userName }, { children: user.name })), (0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.expiredText) }, { children: sprintf(nl('Authorization expiring in %d day', 'Authorization expiring in %d days', dayLeft, 'socialAccounts'), dayLeft) }))] }))] }));
    }
    function renderWarningState() {
        var _a;
        return ((0,jsx_runtime.jsxs)("div", AuthorizationCard_assign({ className: AuthorizationCard.wightSection }, { children: [renderButtons(), (0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.userName, AuthorizationCard.warningText) }, { children: (0,jsx_runtime.jsx)("span", { children: options.title }) })), (0,jsx_runtime.jsxs)("div", AuthorizationCard_assign({ className: AuthorizationCard.avatarContainer }, { children: [(0,jsx_runtime.jsx)(Avatar/* default */.A, { rounded: true, size: AuthorizationCard_AVATAR_SIZE, className: classnames_default()(AuthorizationCard.userAvatar), imageUrl: user.avatarUrl }), renderSourceIcon(user.type), options.isCritical
                            && (0,jsx_runtime.jsx)(Icon/* default */.A, { className: classnames_default()(AuthorizationCard.warning, (_a = {}, _a[AuthorizationCard.facebookInstagram] = user.type === Authorization/* AuthorizationType */.s0.FacebookInstagram, _a)), type: "warning", size: 24, color: options.color })] })), (0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.expiredText, options.subtitleClassName) }, { children: options.subtitle }))] })));
    }
    function renderButtons() {
        return ((0,jsx_runtime.jsx)("div", AuthorizationCard_assign({ className: classnames_default()(AuthorizationCard.buttons) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: "delete", onClick: handleRevokeAuthorization }) })));
    }
};
function getWarningOptions(authorization, isFacebookComplianceAccount) {
    var substatus = authorization.substatus;
    var dayLeft = getDaysLeft(authorization.expiresAt);
    var channelsCount = getAuthorizationsConnectedChannelsCount(authorization);
    var subtitleDayOfActivityLeft = dayLeft === 0
        ? l('Today the activity ends', 'socialAccounts')
        : sprintf(nl('%d day of activity left', '%d days of activity left', dayLeft, 'socialAccounts'), dayLeft);
    // GLOBAL
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredRegularCollectionConnected) {
        return {
            isCritical: true,
            isExpired: true,
            color: 'red',
            title: sprintf(l('%s authorization has expired', 'socialAccounts'), authorization.name),
            subtitle: isFacebookComplianceAccount
                ? l('Instagram and Facebook is not collected', 'socialAccounts')
                : l('Instagram is not collected', 'socialAccounts'),
            subtitleClassName: AuthorizationCard.redText,
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringRegularCollectionConnected) {
        return {
            isCritical: true,
            isExpiring: true,
            color: 'amber',
            title: sprintf(l('%s authorization іs expiring', 'socialAccounts'), authorization.name),
            subtitle: subtitleDayOfActivityLeft,
            substatus: substatus,
        };
    }
    // INTERNAL channels connected
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredChannelsConnected) {
        return {
            isCritical: true,
            isExpired: true,
            color: 'red',
            title: sprintf(l('%s authorization has expired', 'socialAccounts'), authorization.name),
            subtitle: sprintf(nl('Data collection has stopped for %d channel', 'Data collection has stopped for %d channels', channelsCount, 'socialAccounts'), channelsCount),
            subtitleClassName: AuthorizationCard.redText,
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringChannelsConnected) {
        return {
            isCritical: true,
            isExpiring: true,
            color: 'amber',
            title: sprintf(l('%s authorization іs expiring', 'socialAccounts'), authorization.name),
            subtitle: subtitleDayOfActivityLeft,
            substatus: substatus,
        };
    }
    // INTERNAL NO channels connected
    if ((substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiredNoChannelsConnected)) {
        return {
            isCritical: false,
            isExpired: true,
            title: sprintf(l('%s authorization has expired', 'socialAccounts'), authorization.name),
            subtitle: l('Data collection is not affected', 'socialAccounts'),
            substatus: substatus,
        };
    }
    if (substatus === Authorization/* AuthorizationSubstatus */.CH.ExpiringNoChannelsConnected) {
        return {
            isCritical: false,
            isExpiring: true,
            title: sprintf(l('%s authorization іs expiring', 'socialAccounts'), authorization.name),
            subtitle: subtitleDayOfActivityLeft,
            substatus: substatus,
        };
    }
    return {
        substatus: substatus,
    };
}
/* harmony default export */ const components_AuthorizationCard_AuthorizationCard = ((0,react.memo)(AuthorizationCard_AuthorizationCard));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/components/ExternalAuthorizations.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const ExternalAuthorizations = ({"base":"YwzvMjQTEIYRah7kuNnG","title":"pFSmv7PVLhMeyh6rwARl","authorizationCards":"O7Z6Al5fuVJdP_XCMKTX"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/components/ExternalAuthorizations.tsx
var ExternalAuthorizations_assign = (undefined && undefined.__assign) || function () {
    ExternalAuthorizations_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ExternalAuthorizations_assign.apply(this, arguments);
};






var ExternalAuthorizations_ExternalAuthorizations = function (_a) {
    var authorizations = _a.authorizations, isFacebookComplianceAccount = _a.isFacebookComplianceAccount, onRevokeAuthorization = _a.onRevokeAuthorization;
    return ((0,jsx_runtime.jsxs)("div", ExternalAuthorizations_assign({ className: classnames_default()(ExternalAuthorizations.base) }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, ExternalAuthorizations_assign({ className: ExternalAuthorizations.title }, { children: l('Added accounts', 'socialAccounts') })), (0,jsx_runtime.jsx)("div", ExternalAuthorizations_assign({ className: classnames_default()(ExternalAuthorizations.authorizationCards) }, { children: authorizations.map(function (authorizedUser) {
                    return (0,jsx_runtime.jsx)(components_AuthorizationCard_AuthorizationCard, { user: authorizedUser, isFacebookComplianceAccount: isFacebookComplianceAccount, onRevokeAuthorization: onRevokeAuthorization }, authorizedUser.id);
                }) }))] })));
};
/* harmony default export */ const components_ExternalAuthorizations = ((0,react.memo)(ExternalAuthorizations_ExternalAuthorizations));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/AutorizationsList.tsx
var AutorizationsList_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var AutorizationsList_assign = (undefined && undefined.__assign) || function () {
    AutorizationsList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AutorizationsList_assign.apply(this, arguments);
};













var getRevokeConfirmationText = function (type) {
    var _a;
    var linkedinTexts = {
        title: l('Delete LinkedIn account', 'socialAccounts'),
        message: ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('You can revoke LinkedIn authorization in LinkedIn account settings under', 'socialAccounts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", AutorizationsList_assign({ href: "https://www.linkedin.com/psettings/permitted-services", target: "_blank", rel: "noopener noreferrer" }, { children: l('"Permitted services"', 'socialAccounts') })), ".", (0,jsx_runtime.jsx)("br", {}), l('If you only delete LinkedIn account in YouScan, authorization will not be revoked.', 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('Danger zone:', 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('When you revoke LinkedIn authorization, YouScan will stop collecting data from all channels associated with this profile.', 'socialAccounts')] })),
    };
    var facebookTexts = {
        title: l('Delete Facebook account', 'socialAccounts'),
        message: ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('You can revoke Facebook authorization in Facebook account settings under', 'socialAccounts'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", AutorizationsList_assign({ href: "https://www.facebook.com/settings?tab=business_tools", target: "_blank", rel: "noopener noreferrer" }, { children: l('"Business Integrations"') })), ".", (0,jsx_runtime.jsx)("br", {}), l('If you only delete Facebook account in YouScan, the authorization will not be revoked.', 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('Danger zone:', 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('When you revoke Facebook authorization, YouScan will stop collecting data'
                    + ' from all channels associated with this profile,'
                    + ' including the connected Instagram pages.', 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('Facebook authorization and an Instagram Business account'
                    + ' are required to collect Instagram data.'
                    + " When you don't have any Instagram Business accounts in YouScan,"
                    + ' Instagram data collection will stop.', 'socialAccounts')] })),
    };
    var texts = (_a = {},
        _a[Authorization/* AuthorizationType */.s0.Facebook] = facebookTexts,
        _a[Authorization/* AuthorizationType */.s0.FacebookInstagram] = facebookTexts,
        _a[Authorization/* AuthorizationType */.s0.LinkedIn] = linkedinTexts,
        _a);
    return texts[type];
};
var AuthorizationsList = /** @class */ (function (_super) {
    AutorizationsList_extends(AuthorizationsList, _super);
    function AuthorizationsList() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleRevokeAuthorization = function (_a) {
            var userId = _a.userId, type = _a.type;
            var user = _this.props.authorizations.find(function (authorization) { return authorization.id === userId; });
            var dayLeft = moment_default()(user.expiresAt).diff(moment_default().now(), 'days');
            var deactivated = user.status === 'Expired' || dayLeft < 0;
            if (deactivated) {
                _this.revokeFacebookAuthorization({ userId: userId, type: type });
                return;
            }
            var text = getRevokeConfirmationText(type);
            (0,utils_confirm/* default */.A)(AutorizationsList_assign(AutorizationsList_assign({}, text), { maxModalWidth: 550, actionLabel: l('Delete', 'socialAccounts') })).then(function () { return _this.revokeFacebookAuthorization({ userId: userId, type: type }); });
        };
        _this.revokeFacebookAuthorization = function (_a) {
            var userId = _a.userId, type = _a.type;
            _this.props.sendAnalyticalEvent({ eventType: 'Social accounts: Facebook deleted' });
            _this.props.revokeFacebookAuthorization({ userId: userId, type: type });
        };
        return _this;
    }
    AuthorizationsList.prototype.render = function () {
        var _a = this.props, authorizations = _a.authorizations, isFacebookComplianceAccount = _a.isFacebookComplianceAccount;
        return ((0,jsx_runtime.jsx)(components_ExternalAuthorizations, { authorizations: authorizations, isFacebookComplianceAccount: isFacebookComplianceAccount, onRevokeAuthorization: this.handleRevokeAuthorization }));
    };
    return AuthorizationsList;
}(react.PureComponent));
/* harmony default export */ const AutorizationsList = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state) {
    return ({
        authorizations: (0,selectors/* getAuthorizations */.DT)(state),
        isFacebookComplianceAccount: (0,account_selectors/* getIsFacebookComplianceAccount */.v_)(state),
    });
}, {
    revokeFacebookAuthorization: model/* settingsModel */.N.action.revokeAuthorization,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(AuthorizationsList));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationsList/index.ts


;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AddAuthorizations/index.ts


// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationSuccessfulModal/AuthorizationSuccessfulModal.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AuthorizationSuccessfulModal = ({"base":"KUq1D6KKTJqD5p4MZoXw","image":"IxEnc8cxssJWGbkzfdeH","header":"C1x1w22gntqDkn60pz9H","text":"j5jnopMQx78d2Frdgwcj","additionalText":"I8eOk05_Ua6oohoeP7SA","buttonBar":"GPq1MYlQSlGoyJPxaNVa","readMoreButton":"WDEXWmZsTaNRQjoA2U2a"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationSuccessfulModal/AuthorizationSuccessfulModal.tsx
var AuthorizationSuccessfulModal_assign = (undefined && undefined.__assign) || function () {
    AuthorizationSuccessfulModal_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorizationSuccessfulModal_assign.apply(this, arguments);
};
var AuthorizationSuccessfulModal_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable */














var AuthorizationSuccessfulModal_AuthorizationSuccessfulModal = function (_a) {
    var userLanguage = _a.userLanguage, isFacebookComplianceAccount = _a.isFacebookComplianceAccount, location = _a.location;
    var isUserLanguageEnglish = userLanguage === 'eng';
    var _b = AuthorizationSuccessfulModal_read((0,react.useState)(false), 2), isOpen = _b[0], setIsOpen = _b[1];
    var _c = AuthorizationSuccessfulModal_read((0,react.useState)(null), 2), type = _c[0], setType = _c[1];
    (0,react.useEffect)(function () {
        if (location.query.fbAuthSuccess) {
            setIsOpen(true);
            setType(Authorization/* AuthorizationType */.s0.Facebook);
        }
        if (location.query.liAuthSuccess) {
            setIsOpen(true);
            setType(Authorization/* AuthorizationType */.s0.LinkedIn);
        }
    }, []);
    return ((0,jsx_runtime.jsx)(Modal/* default */.A, AuthorizationSuccessfulModal_assign({ isOpen: isOpen, fullWidth: true, withCloseIcon: true, maxWidth: 550, onRequestClose: function () { return setIsOpen(false); } }, { children: renderText() })));
    function renderText() {
        var _a;
        if (!type)
            return null;
        if (type === Authorization/* AuthorizationType */.s0.Facebook && isFacebookComplianceAccount)
            return renderFacebookComplianceMessage();
        var texts = (_a = {},
            _a[Authorization/* AuthorizationType */.s0.Facebook] = {
                imageSrc: '/static/images/social_icons/fb_blue.png',
                title: l('You have authorized the Facebook page'),
                description: l('Now you can start collecting mentions from your business Instagram profiles in the “Channels” section in any topic', 'socialAccounts'),
            },
            _a[Authorization/* AuthorizationType */.s0.FacebookInstagram] = {
                imageSrc: '/static/images/social_icons/fb_blue.png',
                title: l('You have authorized the Facebook page'),
                description: l('Now you can start collecting mentions from your business Instagram profiles in the “Channels” section in any topic', 'socialAccounts'),
            },
            _a[Authorization/* AuthorizationType */.s0.LinkedIn] = {
                imageSrc: '/static/images/social_icons/linkedin.png',
                title: l('You have authorized the LinkedIn page'),
                description: l('Now you can launch mentions collection from your LinkedIn business profiles in the "Channels" section ', 'socialAccounts'),
            },
            _a);
        return renderDefaultText(texts[type]);
    }
    function renderReadMoreButton() {
        return (!isUserLanguageEnglish && ((0,jsx_runtime.jsx)("a", AuthorizationSuccessfulModal_assign({ href: "https://bit.ly/2XiqNu9", target: "_blank" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { className: AuthorizationSuccessfulModal.readMoreButton, label: l('How to add channels  (Knowledge base)') }) }))));
    }
    function renderDefaultText(_a) {
        var imageSrc = _a.imageSrc, description = _a.description, title = _a.title;
        return ((0,jsx_runtime.jsxs)("div", AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.base) }, { children: [(0,jsx_runtime.jsx)("img", { alt: "facebook logo", src: imageSrc, className: classnames_default()(AuthorizationSuccessfulModal.image) }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(H2/* default */.A, AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.header) }, { children: title })), (0,jsx_runtime.jsx)("p", AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.text) }, { children: description })), renderReadMoreButton()] })));
    }
    function renderFacebookComplianceMessage() {
        return ((0,jsx_runtime.jsxs)("div", AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.base) }, { children: [(0,jsx_runtime.jsx)("img", { alt: "facebook logo", src: "/static/images/facebook_round_logo.png", className: classnames_default()(AuthorizationSuccessfulModal.image) }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(H2/* default */.A, AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.header) }, { children: l('You have added Facebook page authorization') })), (0,jsx_runtime.jsx)("p", AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.text) }, { children: l('Now you can collect mentions from Facebook and Instagram adding relevant pages in “Channels” section in any topic.', 'socialAccounts') })), (0,jsx_runtime.jsxs)("p", AuthorizationSuccessfulModal_assign({ className: classnames_default()(AuthorizationSuccessfulModal.text, AuthorizationSuccessfulModal.additionalText) }, { children: [l("Available features may vary depending on the permissions you've granted.", 'socialAccounts'), (0,jsx_runtime.jsx)("br", {}), l('You can grant additional permissions or revoke them any time in ', 'socialAccounts'), (0,jsx_runtime.jsx)("a", AuthorizationSuccessfulModal_assign({ href: constants/* FACEBOOK_BUSINESS_INTEGRATION_LINK */.CH, target: "_blank", rel: "noopener noreferrer" }, { children: l('Business Integrations settings', 'socialAccounts') })), l(' in your Facebook account.', 'socialAccounts')] })), renderReadMoreButton()] })));
    }
};
/* harmony default export */ const ExternalAuthorizations_AuthorizationSuccessfulModal_AuthorizationSuccessfulModal = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) {
    return ({
        userLanguage: (0,currentUser_selectors/* getUserLanguage */.mf)(state),
        isFacebookComplianceAccount: (0,account_selectors/* getIsFacebookComplianceAccount */.v_)(state),
    });
}, null))(AuthorizationSuccessfulModal_AuthorizationSuccessfulModal));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/AuthorizationSuccessfulModal/index.ts


;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/ExternalAuthorizationsEmptyState/ExternalAuthorizationsEmptyState.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ExternalAuthorizationsEmptyState = ({"base":"lim92s5iOEqgAsNIAKxd","title":"H_wh6L_Kaa301YI9qYwz"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/ExternalAuthorizationsEmptyState/ExternalAuthorizationsEmptyState.js





/* harmony default export */ const ExternalAuthorizationsEmptyState_ExternalAuthorizationsEmptyState = (function () {
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(ExternalAuthorizationsEmptyState.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
      alt: "",
      src: "/static/images/socialAccounts.png"
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(H2/* default */.A, {
      className: classnames_default()(ExternalAuthorizationsEmptyState.title),
      children: l('There are no connected social accounts yet', 'socialAccounts')
    })]
  });
});
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/ExternalAuthorizationsEmptyState/index.ts


// EXTERNAL MODULE: ./src/components/helpers/Loader/Loader.tsx + 1 modules
var Loader_Loader = __webpack_require__("5+yk");
;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/ExternalAuthorizations.tsx
var ExternalAuthorizations_ExternalAuthorizations_assign = (undefined && undefined.__assign) || function () {
    ExternalAuthorizations_ExternalAuthorizations_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ExternalAuthorizations_ExternalAuthorizations_assign.apply(this, arguments);
};














var ExternalAuthorizations_ExternalAuthorizations_ExternalAuthorizations = function (_a) {
    var loading = _a.loading, authorizations = _a.authorizations, fetchAuthorizations = _a.fetchAuthorizations, sendAnalyticalEvent = _a.sendAnalyticalEvent, showInstagramHashtags = _a.showInstagramHashtags, showAccountSettings = _a.showAccountSettings;
    if (!showAccountSettings)
        return null;
    (0,react.useEffect)(function () {
        fetchAuthorizations();
        sendAnalyticalEvent({ eventType: 'Account settings: Social accounts page loaded' });
    }, []);
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Loader_Loader/* default */.A, ExternalAuthorizations_ExternalAuthorizations_assign({ loaded: !loading }, { children: authorizations ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ExternalAuthorizations_AddAuthorizations_AddAuthorizations, {}), (0,jsx_runtime.jsx)(AutorizationsList, {}), showInstagramHashtags && (0,jsx_runtime.jsx)(ExternalAuthorizations_InstagramAccounts_InstagramAccounts, {})] })) : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ExternalAuthorizationsEmptyState_ExternalAuthorizationsEmptyState, {}), (0,jsx_runtime.jsx)(ExternalAuthorizations_AddAuthorizations_AddAuthorizations, {})] })) })), (0,jsx_runtime.jsx)(ExternalAuthorizations_AuthorizationSuccessfulModal_AuthorizationSuccessfulModal, {})] }));
};
/* harmony default export */ const accountSettings_ExternalAuthorizations_ExternalAuthorizations = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    loading: (0,selectors/* isAuthorizationsLoading */.zR)(state) || (0,selectors/* isAuthorizationRevoking */.RJ)(state),
    authorizations: (0,selectors/* getAuthorizations */.DT)(state),
    showInstagramHashtags: (0,account_selectors/* isInstagramHashtagsAllowed */.kI)(state),
    showAccountSettings: (0,currentUser_selectors/* isAccountSettingsVisible */.T$)(state),
}); }, {
    fetchAuthorizations: model/* settingsModel */.N.action.fetchAuthorizations,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(ExternalAuthorizations_ExternalAuthorizations_ExternalAuthorizations));

;// CONCATENATED MODULE: ./src/containers/accountSettings/ExternalAuthorizations/index.ts



/***/ }),

/***/ "WLaG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ UserSettings_UsersSettings)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/users/model.ts
var model = __webpack_require__("lWdd");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/settings/model.ts
var settings_model = __webpack_require__("C0Rk");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/modals/actions.ts
var modals_actions = __webpack_require__("DuoS");
// EXTERNAL MODULE: ./src/state/settings/selectors.ts
var selectors = __webpack_require__("YQsP");
// EXTERNAL MODULE: ./src/state/users/selectors.ts
var users_selectors = __webpack_require__("zcN7");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var account_selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Section/index.ts + 2 modules
var Section = __webpack_require__("/4sX");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/i18n.ts
var i18n = __webpack_require__("872o");
// EXTERNAL MODULE: ./node_modules/react-copy-to-clipboard/lib/index.js
var lib = __webpack_require__("P5Jw");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var ui_Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/UserAvatar/index.ts
var UserAvatar = __webpack_require__("hbQ8");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/ui/Spinner/index.ts + 2 modules
var Spinner = __webpack_require__("JWWG");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/components/other/User/User.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const User_User = ({"overlayedBlock":"Vc_80bRkX7wm0q1dFJlA","flexCenter":"LyPQI1JKTIzidqFRMnUc","smartFeature":"ShU0hDFk89sGCBqcuNQo","tag":"_1F_Z9DZtb1VfcEX9JbSk","visibleScrollBar":"unzsKTnwtjZc_77YzRKw","hiddenScrollBar":"TGOQOuKtEIrOrk68ZwlH","base":"TxCY9IlZvhipSh6GzyDf","deleting":"xsn33ms6WveR39iN5jFg","disabled":"cD0zNP3Vxt0tXm1L_c9i","buttons":"kt5JUQJ0dl2ra7BS5tfb","name":"bS09gbI5niscXOeL58Cc","userName":"P2bOvl_82a4rp2sx6ksj","emailBlock":"N55IFJwqRBCCM1s2f8M9","copyEmailButton":"Jfm3R04JQqm1jNvHPTLj","email":"d_EUoVzRJjVhuVLI425W","role":"oAnER1fnYVYD0ENCv5gi","actions":"dxFFGm7LW75UIrRaH1CD","themes":"XFvXxGrUH5GiAgRlyI0c","lastSeen":"NF5AYQJWLN83MpOjmrAO","inviteLink":"m744ITTWRgkvOr52bNxB","inProgress":"LmC1DBoXxjZ4Uy__jhK6","inviteCopyText":"JaA8nVW9ZQBfyA079gZA","inviteLinkText":"zyHmMzpQ96qLDauZF6zB","copyButton":"jRvN0Rx6Gwdp9fLRc1w_","permissions":"GV3efTgohiiiPQvtEaaJ","listIcon":"Z92bAkNFZ4_YQFXhs9Ox"});
;// CONCATENATED MODULE: ./src/components/other/User/User.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

















var User = /** @class */ (function (_super) {
    __extends(User, _super);
    function User() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.handleUserDelete = function () {
            var profile = _this.props.profile;
            (0,utils_confirm/* default */.A)({
                title: (0,i18n/* sprintf */.nv)(l('Delete %s?'), profile.fullName),
                message: l('If you delete this user, their data cannot be restored!'),
                actionLabel: l('Yes, delete'),
            }).then(function () { return _this.props.onDelete({ userId: profile.id }); });
        };
        _this.handleEditUser = function () {
            var _a = _this.props, profile = _a.profile, currentUser = _a.currentUser;
            _this.props.onEdit({
                userId: profile.id,
                isCurrentUser: profile.login === currentUser.login,
            });
        };
        _this.handlePermissionModalOpen = function () {
            var profile = _this.props.profile;
            _this.props.onPermissionsModalOpen({ profile: profile });
        };
        _this.handleGenerateInviteLink = function () {
            _this.props.onGenerateInviteLink({ userId: _this.props.profile.id });
        };
        _this.renderPermissionsColumn = function () {
            var _a = _this.props, themePermissionsAllowed = _a.themePermissionsAllowed, themePermissionsEnabled = _a.themePermissionsEnabled, profile = _a.profile;
            if (!themePermissionsAllowed) {
                return ((0,jsx_runtime.jsxs)("span", __assign({ className: classnames_default()(User_User.disabled) }, { children: [(0,jsx_runtime.jsx)("span", { children: l('All topics') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Tooltip/* default */.A, __assign({ inverted: false, text: l('Your current pricing plan doesn\'t allow you to set topic permissions in the account') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info" }) }))] })));
            }
            if (profile.isAccountAdmin) {
                return ((0,jsx_runtime.jsxs)("span", __assign({ className: classnames_default()(User_User.disabled) }, { children: [(0,jsx_runtime.jsx)("span", { children: l('All topics') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(ui_Tooltip/* default */.A, __assign({ inverted: false, text: l('This user has admin access, which means they can access ALL topics on this account') }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info" }) }))] })));
            }
            if (!themePermissionsEnabled) {
                return ((0,jsx_runtime.jsx)(ui_Tooltip/* default */.A, __assign({ inverted: false, text: (0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Topic permissions are currently disabled') }), (0,jsx_runtime.jsx)("span", { children: l('If you want to set permissions, please turn on'
                                    + ' "Access rights for topic permissions" setting') })] }) }, { children: (0,jsx_runtime.jsxs)("span", __assign({ className: classnames_default()(User_User.disabled) }, { children: [(0,jsx_runtime.jsx)("span", { children: l('Set permissions') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "edit" })] })) })));
            }
            return ((0,jsx_runtime.jsxs)("div", __assign({ role: "presentation", className: classnames_default()(User_User.permissions), onClick: _this.handlePermissionModalOpen }, { children: [(0,jsx_runtime.jsx)("span", { children: l('Set permissions') }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "edit", className: classnames_default()(User_User.listIcon) })] })));
        };
        _this.renderInviteLinkActions = function () {
            var _a = _this.props, inviteLink = _a.inviteLink, profile = _a.profile;
            if (inviteLink === null || inviteLink === void 0 ? void 0 : inviteLink.loading) {
                return (0,jsx_runtime.jsx)(Spinner/* default */.A, { type: "dots" });
            }
            if (inviteLink === null || inviteLink === void 0 ? void 0 : inviteLink.link) {
                return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(User_User.inviteCopyText) }, { children: l('Copy invite link') })), (0,jsx_runtime.jsx)(ui_Tooltip/* default */.A, __assign({ basic: true, on: "hover", position: "bottom center", text: l('Copy invite link') }, { children: (0,jsx_runtime.jsx)((lib_default()), __assign({ className: classnames_default()(User_User.copyButton), text: inviteLink.link }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "copy", color: "gray" }) })) }))] }));
            }
            return ((0,jsx_runtime.jsxs)("span", __assign({ className: classnames_default()(User_User.inviteLinkText), onClick: _this.handleGenerateInviteLink }, { children: [l('Get invite link'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "link", color: "gray" })] })));
        };
        return _this;
    }
    User.prototype.render = function () {
        var _a;
        var _b = this.props, profile = _b.profile, currentUser = _b.currentUser, canGenerateInviteLink = _b.canGenerateInviteLink, inviteLink = _b.inviteLink, ssoEnabled = _b.ssoEnabled;
        var isCurrentUser = profile.login === currentUser.login;
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(this.props.className, User_User.base) }, { children: [(0,jsx_runtime.jsx)(UserAvatar/* default */.A, { round: true, size: "50", additionalIconType: profile.apiKeyLastCharacters ? 'key' : null, email: profile.login, name: "".concat(profile.firstName, " ").concat(profile.lastName) }), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(User_User.name) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(User_User.userName) }, { children: [profile.firstName, " ", profile.lastName] })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(User_User.emailBlock), title: profile.login }, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: User_User.email }, { children: profile.login })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(User_User.copyEmailButton) }, { children: (0,jsx_runtime.jsx)(ui_Tooltip/* default */.A, __assign({ basic: true, on: "hover", position: "bottom center", text: l('Copy email') }, { children: (0,jsx_runtime.jsx)((lib_default()), __assign({ text: profile.login }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "copy", color: "gray" }) })) })) }))] }))] })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(User_User.role) }, { children: (0,commonTranslations/* translateRole */.$P)(profile.role) })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(User_User.themes) }, { children: this.renderPermissionsColumn() })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(User_User.lastSeen) }, { children: [(0,jsx_runtime.jsx)("div", { children: profile.lastActivityTime
                                ? moment_default()(profile.lastActivityTime).fromNow()
                                : l('hasn\'t visited yet', 'accountUser') }), canGenerateInviteLink && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(User_User.inviteLink, (_a = {}, _a[User_User.inProgress] = (inviteLink === null || inviteLink === void 0 ? void 0 : inviteLink.loading) || (inviteLink === null || inviteLink === void 0 ? void 0 : inviteLink.link), _a)) }, { children: this.renderInviteLinkActions() })))] })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(User_User.actions) }, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { tooltip: l('Edit user', 'iconButton'), iconType: "edit", disabled: !currentUser.isAccountAdmin || profile.isSupport, onClick: this.handleEditUser }), (0,jsx_runtime.jsx)(IconButton/* default */.A, { tooltip: l('Delete user', 'iconButton'), iconType: "delete", disabled: isCurrentUser || profile.isSupport, onClick: this.handleUserDelete })] }))] })));
    };
    return User;
}(react.Component));
/* harmony default export */ const other_User_User = (User);

;// CONCATENATED MODULE: ./src/components/other/User/index.tsx


;// CONCATENATED MODULE: ./src/containers/accountSettings/UserSettings/components/UsersSettings.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const UsersSettings = ({"base":"IvVDQaVL06nSeFgGCWAH","actionBar":"F38GVRetJlUUvwc1o7Mg","list":"pnMrFxcbUOkdsWYyeBnW","user":"RVYWFYie6flcUTdsijCw"});
;// CONCATENATED MODULE: ./src/containers/accountSettings/UserSettings/components/UsersSettings.tsx
var UsersSettings_assign = (undefined && undefined.__assign) || function () {
    UsersSettings_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return UsersSettings_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};











var withTooltip = function (children) {
    return _jsx(Tooltip, UsersSettings_assign({ text: l("You're using SSO with YouScan, that's why new users are added on your side") }, { children: children }));
};
var UsersSettings_UsersSettings = function (_a) {
    var users = _a.users, loaded = _a.loaded, currentUser = _a.currentUser, canGenerateInviteLink = _a.canGenerateInviteLink, themePermissionsEnabled = _a.themePermissionsEnabled, themePermissionsAllowed = _a.themePermissionsAllowed, inviteLinks = _a.inviteLinks, ssoEnabled = _a.ssoEnabled, onCreate = _a.onCreate, onEdit = _a.onEdit, onDelete = _a.onDelete, onPermissionsModalOpen = _a.onPermissionsModalOpen, onGenerateInviteLink = _a.onGenerateInviteLink;
    var _b = __read((0,react.useState)(''), 2), filter = _b[0], changeFilter = _b[1];
    var handleChangeFilter = function (value) {
        changeFilter(value);
    };
    var getUsersToDisplay = function () { return users && users.filter(function (user) {
        return "".concat(user.firstName, " ").concat(user.lastName, " ").concat(user.login)
            .toLowerCase()
            .includes(filter.toLowerCase());
    }); };
    var usersToShow = getUsersToDisplay();
    return ((0,jsx_runtime.jsxs)(Section/* default */.A, UsersSettings_assign({ className: classnames_default()(UsersSettings.base) }, { children: [(0,jsx_runtime.jsxs)("div", UsersSettings_assign({ className: classnames_default()(UsersSettings.actionBar) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { autoFocus: true, leftIcon: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "search" }), placeholder: l('Search'), value: filter, onChange: handleChangeFilter }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: l('Add user'), onClick: onCreate })] })), (0,jsx_runtime.jsx)(Loader/* default */.A, UsersSettings_assign({ className: UsersSettings.list, loaded: loaded, empty: !usersToShow.length, emptyStateImage: "/static/images/error_image.png", emptyStateTitle: l('No users were found'), emptyStateMessage: l('No users :(') }, { children: usersToShow
                    && usersToShow.map(function (user) {
                        return (0,jsx_runtime.jsx)(other_User_User, { className: UsersSettings.user, canGenerateInviteLink: canGenerateInviteLink, profile: user, currentUser: currentUser, themePermissionsAllowed: themePermissionsAllowed, themePermissionsEnabled: themePermissionsEnabled, inviteLink: inviteLinks[user.id], ssoEnabled: ssoEnabled, onDelete: onDelete, onEdit: onEdit, onPermissionsModalOpen: onPermissionsModalOpen, onGenerateInviteLink: onGenerateInviteLink }, user.id);
                    }) }))] })));
};
/* harmony default export */ const components_UsersSettings = ((0,react.memo)(UsersSettings_UsersSettings));

;// CONCATENATED MODULE: ./src/containers/accountSettings/UserSettings/UsersSettings.tsx













var UsersSettingsContainer = function (_a) {
    var loaded = _a.loaded, currentUser = _a.currentUser, accountInfo = _a.accountInfo, users = _a.users, themePermissionsAllowed = _a.themePermissionsAllowed, canGenerateInviteLink = _a.canGenerateInviteLink, inviteLinks = _a.inviteLinks, ssoEnabled = _a.ssoEnabled, fetchUserInviteLink = _a.fetchUserInviteLink, push = _a.push, showModal = _a.showModal, fetchUsersPageData = _a.fetchUsersPageData, deleteUser = _a.deleteUser, clearUserInviteLinksState = _a.clearUserInviteLinksState, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        fetchUsersPageData();
        return function () {
            clearUserInviteLinksState();
        };
    }, []);
    var handlePermissionsModalOpen = function (_a) {
        var profile = _a.profile;
        showModal('userPermissions', { profile: profile });
    };
    var handleEdit = function (_a) {
        var userId = _a.userId, isCurrentUser = _a.isCurrentUser;
        if (isCurrentUser) {
            push('/profile');
            return;
        }
        push("/settings/users/".concat(userId, "/edit"));
    };
    var handleCreate = function () {
        push('/settings/users/create');
    };
    var handleDelete = function (_a) {
        var userId = _a.userId;
        deleteUser({ userId: userId });
    };
    var handleGenerateInviteLink = function (_a) {
        var userId = _a.userId;
        fetchUserInviteLink({ userId: userId });
        sendAnalyticalEvent({ eventType: 'Generate invite link' });
    };
    return ((0,jsx_runtime.jsx)(components_UsersSettings, { canGenerateInviteLink: canGenerateInviteLink, users: users, loaded: loaded, currentUser: currentUser, themePermissionsAllowed: themePermissionsAllowed, themePermissionsEnabled: accountInfo && accountInfo.themePermissionsEnabled, inviteLinks: inviteLinks, ssoEnabled: ssoEnabled, onEdit: handleEdit, onDelete: handleDelete, onCreate: handleCreate, onPermissionsModalOpen: handlePermissionsModalOpen, onGenerateInviteLink: handleGenerateInviteLink }));
};
/* harmony default export */ const UserSettings_UsersSettings = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    users: (0,users_selectors/* getAccountUsers */.IM)(state),
    loaded: (0,selectors/* isUsersPageDataLoaded */.l6)(state),
    accountInfo: (0,selectors/* getAccountInfo */.Gf)(state),
    currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    themePermissionsAllowed: (0,selectors/* isThemePermissionsAllowed */.WN)(state),
    inviteLinks: (0,users_selectors/* getUserInviteLinks */.SP)(state),
    canGenerateInviteLink: (0,currentUser_selectors/* canGenerateInviteLink */.js)(state),
    ssoEnabled: (0,account_selectors/* isSsoEnabled */.dk)(state),
}); }, {
    push: actions/* push */.VC,
    showModal: modals_actions/* showModal */.to,
    deleteUser: model/* usersModel */.O.action.deleteUser,
    fetchUsersPageData: settings_model/* settingsModel */.N.action.fetchUsersPageData,
    fetchUserInviteLink: model/* usersModel */.O.action.fetchUserInviteLink,
    clearUserInviteLinksState: model/* usersModel */.O.action.clearUserInviteLinksState,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(UsersSettingsContainer));

;// CONCATENATED MODULE: ./src/containers/accountSettings/UserSettings/index.tsx



/***/ }),

/***/ "hypC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* reexport */ SetPasswordPage_SetPasswordPage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/state/session/model.ts + 1 modules
var model = __webpack_require__("V7KL");
// EXTERNAL MODULE: ./src/state/session/selectors.ts
var selectors = __webpack_require__("4gVp");
// EXTERNAL MODULE: ./src/state/publicPages/selectors.ts
var publicPages_selectors = __webpack_require__("ufcu");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./src/containers/Head/index.js
var Head = __webpack_require__("xO6Q");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/utils/navigation.ts
var navigation = __webpack_require__("RBXy");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/publicPages/model.ts
var publicPages_model = __webpack_require__("AwTm");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
var slicedToArray = __webpack_require__("oYSA");
// EXTERNAL MODULE: ./src/components/ui/H1/index.ts + 2 modules
var H1 = __webpack_require__("OIx8");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/InfoBox/index.ts
var InfoBox = __webpack_require__("rpFs");
// EXTERNAL MODULE: ./src/components/ui/Checkbox/index.ts + 2 modules
var Checkbox = __webpack_require__("KQVx");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/activateAccount/SetPasswordPage/components/SetPasswordForm.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_SetPasswordForm = ({"base":"SSAAILbEvJvLVj9yUCsw","error":"Wu35xAHbon5oBS3815cX","checkbox":"BroMLs7MGXFsV9C7CySq","checkboxLabel":"h2YFzOoqaa2UcLhougeS"});
;// CONCATENATED MODULE: ./src/containers/activateAccount/SetPasswordPage/components/SetPasswordForm.js

/* eslint-disable react/jsx-no-bind */












var SetPasswordForm = function SetPasswordForm(_ref) {
  var loading = _ref.loading,
    errorText = _ref.errorText,
    onSubmit = _ref.onSubmit,
    onTermsOfUseClick = _ref.onTermsOfUseClick,
    onPrivacyPolicyClick = _ref.onPrivacyPolicyClick;
  var _useState = (0,react.useState)(''),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    password = _useState2[0],
    setPassword = _useState2[1];
  var _useState3 = (0,react.useState)(''),
    _useState4 = (0,slicedToArray/* default */.A)(_useState3, 2),
    passwordConfirm = _useState4[0],
    setPasswordConfirm = _useState4[1];
  var _useState5 = (0,react.useState)(false),
    _useState6 = (0,slicedToArray/* default */.A)(_useState5, 2),
    termsOfUse = _useState6[0],
    setTermsOfUse = _useState6[1];
  var handleSubmit = function handleSubmit() {
    onSubmit(password);
  };
  var passwordsMismatch = password !== passwordConfirm;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(components_SetPasswordForm.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)(H1/* default */.A, {
      children: l('Create a password')
    }), errorText && /*#__PURE__*/(0,jsx_runtime.jsx)(InfoBox/* default */.A, {
      error: true,
      displayed: true,
      className: classnames_default()(components_SetPasswordForm.error),
      title: errorText.title,
      text: errorText.message
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
      required: true,
      fullWidth: true,
      size: "large",
      autoComplete: "off",
      name: "password",
      type: "password",
      label: l('Password'),
      value: password,
      onChange: function onChange(value) {
        return setPassword(value);
      }
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextField/* default */.A, {
      required: true,
      fullWidth: true,
      size: "large",
      autoComplete: "off",
      name: "passwordConfirm",
      type: "password",
      label: l('Confirm password'),
      value: passwordConfirm,
      errorText: passwordConfirm && passwordsMismatch && l('"Password" and "Confirm password" doesn\'t match'),
      onChange: function onChange(value) {
        return setPasswordConfirm(value);
      }
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Checkbox/* default */.A, {
      className: classnames_default()(components_SetPasswordForm.checkbox),
      label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
        className: classnames_default()(components_SetPasswordForm.checkboxLabel),
        children: [l('By clicking Done, you agree to our'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
          title: l('Terms of Services'),
          onClick: onTermsOfUseClick,
          children: l('Terms of Services')
        }), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), l('and to the processing of your personal data in conformity with'), /*#__PURE__*/(0,jsx_runtime.jsx)(Space/* default */.A, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
          title: l('YouScan Privacy Policy'),
          onClick: onPrivacyPolicyClick,
          children: l('YouScan Privacy Policy')
        })]
      }),
      checked: termsOfUse,
      onChange: function onChange() {
        return setTermsOfUse(!termsOfUse);
      }
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {
      "double": true
    }), /*#__PURE__*/(0,jsx_runtime.jsx)(Button/* default */.A, {
      primary: true,
      fullWidth: true,
      size: "large",
      label: l('Done'),
      loading: loading,
      disabled: !password || passwordsMismatch || !termsOfUse,
      onClick: handleSubmit
    })]
  });
};
/* harmony default export */ const SetPasswordPage_components_SetPasswordForm = (SetPasswordForm);
;// CONCATENATED MODULE: ./src/containers/activateAccount/SetPasswordPage/SetPasswordPage.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















function getValidationErrors(type) {
    if (type === 'VALIDATION_ERROR') {
        return {
            title: l('New password is too short'),
            message: l('Make sure that it\'s at least 6 characters long'),
        };
    }
    return {
        title: l('An error has occurred'),
        message: l('If reloading of the page doesn\'t fix the problem contact our support team'),
    };
}
var REDIRECT_URL = {
    ROLE: '/me/role',
    THEMES: '/themes',
};
var SetPasswordPage = function (_a) {
    var currentUser = _a.currentUser, isLocaleUpdated = _a.isLocaleUpdated, isNewPasswordSet = _a.isNewPasswordSet, isPasswordSetting = _a.isPasswordSetting, isPasswordTokenExpired = _a.isPasswordTokenExpired, isPasswordTokenVerified = _a.isPasswordTokenVerified, isPasswordTokenVerifying = _a.isPasswordTokenVerifying, location = _a.location, newPasswordError = _a.newPasswordError, router = _a.router, shouldSetAdditionalInfo = _a.shouldSetAdditionalInfo, userLogin = _a.userLogin, changeLocaleFromQuery = _a.changeLocaleFromQuery, clearSetNewPasswordData = _a.clearSetNewPasswordData, logOut = _a.logOut, sendAnalyticalEvent = _a.sendAnalyticalEvent, setUserPassword = _a.setUserPassword, verifyPasswordToken = _a.verifyPasswordToken;
    var _b = __read((0,react.useState)(null), 2), errorText = _b[0], setErrorText = _b[1];
    (0,react.useEffect)(function () {
        if (!isPasswordTokenVerifying && !isPasswordTokenVerified) {
            logOut();
            verifyPasswordToken({ token: location.query.token });
            changeLocaleFromQuery();
        }
    }, []);
    (0,react.useEffect)(function () {
        setErrorText(newPasswordError && getValidationErrors(newPasswordError === null || newPasswordError === void 0 ? void 0 : newPasswordError.data.errorCode));
    }, [newPasswordError]);
    (0,react.useEffect)(function () {
        if (isPasswordTokenExpired) {
            router.push({
                pathname: '/login',
                state: {
                    isPasswordTokenExpired: isPasswordTokenExpired,
                },
            });
        }
        if (isNewPasswordSet && currentUser) {
            router.push({
                pathname: shouldSetAdditionalInfo ? REDIRECT_URL.ROLE : REDIRECT_URL.THEMES,
            });
            clearSetNewPasswordData();
        }
    }, [isPasswordTokenExpired, isNewPasswordSet, currentUser]);
    var goTo = function (page) { return function () {
        sendAnalyticalEvent({ eventType: "Open external link. Promo site: ".concat(page) });
        (0,navigation/* goToPromoSite */.cO)(page);
    }; };
    var handleSetPassword = function (newPassword) {
        setUserPassword({
            password: newPassword,
            token: location.query.token,
            username: userLogin,
        });
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: l('Create a password') }), (0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !isPasswordTokenVerifying && isLocaleUpdated }, { children: (0,jsx_runtime.jsx)(SetPasswordPage_components_SetPasswordForm, { loading: isPasswordSetting, errorText: errorText, onSubmit: handleSetPassword, onTermsOfUseClick: goTo(navigation/* PROMO_SITE_PATHS */.h.TERMS_OF_USE), onPrivacyPolicyClick: goTo(navigation/* PROMO_SITE_PATHS */.h.PRIVACY_POLICY) }) }))] }));
};
/* harmony default export */ const SetPasswordPage_SetPasswordPage = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isPasswordSetting: (0,selectors/* isNewPasswordSetting */.mA)(state),
    newPasswordError: (0,selectors/* getNewPasswordError */.ew)(state),
    isPasswordTokenVerifying: (0,selectors/* isPasswordTokenVerifying */._y)(state),
    isPasswordTokenVerified: (0,selectors/* isPasswordTokenVerified */.Hb)(state),
    isPasswordTokenExpired: (0,selectors/* isPasswordTokenExpired */.sY)(state),
    userLogin: (0,selectors/* getVerificationUserLogin */.wF)(state),
    isNewPasswordSet: (0,selectors/* isNewPasswordSet */.i2)(state),
    isLocaleUpdated: (0,publicPages_selectors/* isLocaleCorrect */.b)(state),
    currentUser: (0,currentUser_selectors/* getCurrentUser */.HW)(state),
    shouldSetAdditionalInfo: (0,currentUser_selectors/* shouldSetUserAdditionalInfo */.Ep)(state),
}); }, {
    setUserPassword: model/* sessionModel */.S.action.setNewPassword,
    clearSetNewPasswordData: model/* sessionModel */.S.action.clearNewPasswordData,
    verifyPasswordToken: model/* sessionModel */.S.action.verifyPasswordToken,
    logOut: model/* sessionModel */.S.action.logOut,
    changeLocaleFromQuery: publicPages_model/* publicPagesModel */.f.action.changeLocaleFromQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(SetPasswordPage));

;// CONCATENATED MODULE: ./src/containers/activateAccount/SetPasswordPage/index.tsx



/***/ }),

/***/ "w98M":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ audience_Authors_Authors)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/state/stats/model.ts + 2 modules
var model = __webpack_require__("Gku9");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var filter_model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/authors/model.ts
var authors_model = __webpack_require__("azyO");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/routing/selectors.ts
var routing_selectors = __webpack_require__("KG/6");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var account_selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var stats_selectors = __webpack_require__("K9kJ");
// EXTERNAL MODULE: ./src/hoc/withFilter.js
var withFilter = __webpack_require__("EPN4");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/ui/ChipSelector/index.ts + 4 modules
var ChipSelector = __webpack_require__("YGsB");
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral_numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral_numeral);
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Avatar/index.ts + 2 modules
var Avatar = __webpack_require__("tq5F");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/components/ui/Table/Table.tsx + 1 modules
var Table = __webpack_require__("AYO0");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/other/AuthorDropdownInfo/AuthorInfoPopup.tsx + 2 modules
var AuthorInfoPopup = __webpack_require__("9K02");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/EmptyState.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EmptyState = ({"emptyState":"UmlmI8vQxATQABH_OOtw"});
;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/EmptyState.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var EmptyState_EmptyState = function () {
    return ((0,jsx_runtime.jsx)("div", __assign({ className: EmptyState.emptyState }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { image: "/static/images/empty_search.png", title: (0,jsx_runtime.jsx)("span", { children: l('No authors found') }), message: (0,jsx_runtime.jsx)("span", { children: l('Try changing applied filter or period to see authors') }) }) })));
};
/* harmony default export */ const components_EmptyState = (EmptyState_EmptyState);

;// CONCATENATED MODULE: ./src/containers/audience/Authors/utils.ts
var _a;

var InfluencerTypeKey;
(function (InfluencerTypeKey) {
    InfluencerTypeKey["NANO"] = "nano";
    InfluencerTypeKey["MICRO"] = "micro";
    InfluencerTypeKey["MACRO"] = "macro";
})(InfluencerTypeKey || (InfluencerTypeKey = {}));
var SUBSCRIBERS_RANGE_BY_INFLUENCER_TYPE = (_a = {},
    _a[InfluencerTypeKey.NANO] = {
        from: 1000,
        to: 10000,
    },
    _a[InfluencerTypeKey.MICRO] = {
        from: 10000,
        to: 100000,
    },
    _a[InfluencerTypeKey.MACRO] = {
        from: 100000,
        to: null,
    },
    _a);
var mapNumber = function (value) { return (value > 0 ? numeral(value).format() : '-'); };
var getCsvColumns = function (isAudienceInsightsAllowed) {
    var columns = [{
            header: l('Name', 'authorsTable'),
            accessor: function (a) { return a.name || "@".concat(a.nickname); },
        }, {
            header: l('Readers'),
            accessor: function (a) { return a.subscribers; },
            mapper: mapNumber,
        }, {
            header: l('Engagement'),
            accessor: function (a) { return a.engagement; },
            mapper: mapNumber,
        }, {
            header: l('Mentions'),
            accessor: function (a) { return a.mentions; },
            mapper: mapNumber,
        }, {
            header: l('Negative'),
            accessor: function (a) { var _a; return ((_a = a.sentiment) === null || _a === void 0 ? void 0 : _a.negative) || '-'; },
            mapper: mapNumber,
        }, {
            header: l('Positive'),
            accessor: function (a) { var _a; return ((_a = a.sentiment) === null || _a === void 0 ? void 0 : _a.positive) || '-'; },
            mapper: mapNumber,
        }, {
            header: l('Neutral'),
            accessor: function (a) { var _a; return ((_a = a.sentiment) === null || _a === void 0 ? void 0 : _a.neutral) || '-'; },
            mapper: mapNumber,
        }];
    if (isAudienceInsightsAllowed) {
        columns.push({
            header: l('Influence score'),
            accessor: function (a) { return a.influenceScore || '-'; },
            mapper: mapNumber,
        }, {
            header: l('Engagement rate'),
            accessor: function (a) { return a.engagementRate || '-'; },
            mapper: function (value) { return (value > 0 ? "".concat(Math.round(value * 100), "%") : '-'); },
        });
    }
    return columns;
};
var getTopSentiment = function (sentiments) {
    var sorted = Object.keys(sentiments).sort(function (a, b) { return sentiments[b] - sentiments[a]; });
    return sorted[0];
};
var getAuthorSubscribers = function (filter) {
    var _a;
    var subscribers = (_a = filter === null || filter === void 0 ? void 0 : filter.findByName) === null || _a === void 0 ? void 0 : _a.call(filter, 'authorSubscribers');
    if (!subscribers)
        return null;
    return { from: Number(subscribers.value.from) || null, to: Number(subscribers.value.to) || null };
};
var getSelectedInfluencerType = function (filter) {
    var currentSubscribersRange = getAuthorSubscribers(filter);
    if (!currentSubscribersRange)
        return null;
    var selectedInfluencerType = null;
    Object.values(InfluencerTypeKey).forEach(function (type) {
        if (SUBSCRIBERS_RANGE_BY_INFLUENCER_TYPE[type].from === currentSubscribersRange.from
            && SUBSCRIBERS_RANGE_BY_INFLUENCER_TYPE[type].to === currentSubscribersRange.to) {
            selectedInfluencerType = type;
        }
    });
    return selectedInfluencerType;
};
var getInfluenceScoreVisualisationPattern = function (influenceScore) {
    var visualisationPattern = [];
    var usedScore = influenceScore / 2;
    while (usedScore >= 1) {
        visualisationPattern.push(1);
        usedScore -= 1;
    }
    if (usedScore === 0.5)
        visualisationPattern.push(0.5);
    return visualisationPattern;
};
var formatEngagementRate = function (v) {
    var number = v * 100;
    if (number > 1)
        return "".concat(number.toFixed(0), "%");
    if (number > 0)
        return '<1%';
    return '0%';
};

;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/InfluenceScore.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const InfluenceScore = ({"influenceScoreContainer":"Bccgy_s3FxsF74J_iwao","influenceScoreBackground":"DIV9WHcnLaysFhdurJgS","influenceScoreIcons":"sqf4YPuYa1acA2pGJ2WQ","influenceScoreIcon":"hOe7sg_vM6m3MauSqttk"});
;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/InfluenceScore.tsx
var InfluenceScore_assign = (undefined && undefined.__assign) || function () {
    InfluenceScore_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return InfluenceScore_assign.apply(this, arguments);
};





var InfluenceScore_InfluenceScore = function (_a) {
    var score = _a.score;
    var visualisationPattern = getInfluenceScoreVisualisationPattern(score);
    return ((0,jsx_runtime.jsxs)("div", InfluenceScore_assign({ className: InfluenceScore.influenceScoreContainer, title: score === null || score === void 0 ? void 0 : score.toString() }, { children: [(0,jsx_runtime.jsx)("div", InfluenceScore_assign({ className: InfluenceScore.influenceScoreBackground }, { children: Array(5)
                    .fill(0)
                    .map(function (_, index) { return ((0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: "circle", color: "lightgray", className: classnames_default()(InfluenceScore.influenceScoreIcon) }, index)); }) })), (0,jsx_runtime.jsx)("div", InfluenceScore_assign({ className: InfluenceScore.influenceScoreIcons }, { children: visualisationPattern.map(function (v, index) {
                    var isHalf = v === 0.5;
                    return ((0,jsx_runtime.jsx)(Icon/* default */.A, { size: "small", type: isHalf ? 'circle-half' : 'circle', color: "primary", className: classnames_default()(InfluenceScore.influenceScoreIcon) }, index));
                }) }))] })));
};
/* harmony default export */ const components_InfluenceScore = (InfluenceScore_InfluenceScore);

;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/Table.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_Table = ({"demoMode":"kvTj2kpHK1wpXu1x1oVx","avatarContainer":"pm3qsQJundKOG5DApNI9","sourceIcon":"wjrw1el6l80BcEmau2Rs","occupations":"WCjEsRSYEPdIt9HJg_Bm","interestsContainer":"SZQ1iMQqQjMparRTXg8_","interest":"_SX9k9T66R6zxyei3wr2","performanceContainer":"_AcoJifyANG0wgsg100b","performance":"DVEfexvwXFriXwNJTHfM","infoPopover":"RNiDIV2yTcv5AESJSn8X","negativeAvatar":"xIRjJ6O6UnxicSBFBU0A","neutralAvatar":"O4TlGxJbw74ixm7C5E9w","positiveAvatar":"oPcm03PyvlqTUh8r52bX","exportButton":"arg5Aivq4of3bUTpQdZh","engagementRate":"VE5gsf9S_0bpXyuS8A3Z","mainEngagementRate":"RicN3x16f8CHABb0DOfB","tooltip":"vxIvbU4_fbWto37JYOFn","header":"EnNgJq8WCJWjrSMPrNZW","addon":"hVRsNxLFAb5H90OntYac","title":"HDz8WkT_vw2hk6MYh7mX"});
;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/Table.tsx
var Table_assign = (undefined && undefined.__assign) || function () {
    Table_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Table_assign.apply(this, arguments);
};

/* eslint react/jsx-no-bind: 0 */
















var AVATAR_SENTIMENT_CLASS_NAMES = {
    negative: components_Table.negativeAvatar,
    neutral: components_Table.neutralAvatar,
    positive: components_Table.positiveAvatar,
};
var renderNumbers = function (value) { return (0,jsx_runtime.jsx)("span", { children: value > 0 ? numeral_default()(value).format() : '—' }); };
var getRandomInt = function (min, max) {
    if (min === void 0) { min = 1000; }
    if (max === void 0) { max = 100000; }
    min = Math.ceil(min);
    max = Math.floor(max);
    return Math.floor(Math.random() * (max - min + 1)) + min;
};
var AuthorsTable = function (_a) {
    var isFetching = _a.isFetching, isAudienceInsightsAllowed = _a.isAudienceInsightsAllowed, authors = _a.authors, sendAnalyticalEvent = _a.sendAnalyticalEvent, onAuthorClick = _a.onAuthorClick, onOpenProfile = _a.onOpenProfile, onExcludeAuthor = _a.onExcludeAuthor;
    var headerConfig = (0,react.useMemo)(function () { return ({
        align: 'left',
    }); }, []);
    var rowConfig = (0,react.useMemo)(function () { return ({
        withHighlight: true,
        keyAccessor: function (row) { return row.id; },
    }); }, []);
    var columnsConfig = (0,react.useMemo)(function () { return ([
        {
            id: 'avatarUrl',
            accessor: function (row) { return row.sourceName; },
            header: function () { return null; },
            width: '80px',
            cell: function (_a) {
                var row = _a.row;
                return ((0,jsx_runtime.jsx)("div", Table_assign({ className: components_Table.avatarContainer }, { children: (0,jsx_runtime.jsxs)(AuthorInfoPopup/* default */.A, Table_assign({}, row, { avatarUrl: 'avatarUrl' in row ? row.avatarUrl : undefined, shouldHandleOutsideClick: true, fullWidth: true, canExclude: true, hideOnScroll: false, triggerClassName: components_Table.infoPopover, onExclude: function () { return onExcludeAuthor(row.id, row.sourceName); }, onShowMentions: function () { return onAuthorClick(row.id, row.sourceName); }, onOpenProfile: function () { return onOpenProfile(row.url, row.sourceName); }, onShow: function () { return sendAnalyticalEvent({ eventType: 'Authors multi-action: popup opened' }); } }, { children: [(0,jsx_runtime.jsx)(Avatar/* default */.A, { size: 60, rounded: true, imageUrl: 'avatarUrl' in row ? row.avatarUrl : undefined, className: AVATAR_SENTIMENT_CLASS_NAMES[getTopSentiment(row.sentiment)] }), (0,jsx_runtime.jsx)(SourceIcon/* default */.A, { size: 14, name: row.sourceName, className: components_Table.sourceIcon, alt: row.sourceName })] })) })));
            },
        },
        {
            sortable: false,
            id: 'name',
            accessor: function (d) { return d.name || "@".concat(d.nickname); },
            header: function () { return l('Main info', 'authorsTable'); },
            maxWidth: '10vw',
            minWidth: '120px',
            width: 'auto',
            align: 'left',
            cell: function (_a) {
                var row = _a.row, value = _a.value;
                return ((0,jsx_runtime.jsxs)(AuthorInfoPopup/* default */.A, Table_assign({}, row, { avatarUrl: 'avatarUrl' in row ? row.avatarUrl : undefined, shouldHandleOutsideClick: true, fullWidth: true, canExclude: true, hideOnScroll: false, triggerClassName: components_Table.infoPopover, onExclude: function () { return onExcludeAuthor(row.id, row.sourceName); }, onShowMentions: function () { return onAuthorClick(row.id, row.sourceName); }, onOpenProfile: function () { return onOpenProfile(row.url, row.sourceName); }, onShow: function () { return sendAnalyticalEvent({ eventType: 'Authors multi-action: popup opened' }); } }, { children: [(0,jsx_runtime.jsx)("div", Table_assign({ title: "".concat(row.sourceName, " | ").concat(value) }, { children: value })), (0,jsx_runtime.jsx)("div", Table_assign({ className: components_Table.occupations }, { children: row.occupations.map(function (p, i) { return ((0,jsx_runtime.jsxs)("span", { children: [p.key, i < row.occupations.length - 1 ? ', ' : ''] }, p.key)); }) })), (0,jsx_runtime.jsx)("div", Table_assign({ className: components_Table.interestsContainer }, { children: row.interests.map(function (v) { return ((0,jsx_runtime.jsx)("span", Table_assign({ className: components_Table.interest }, { children: v.key }), v.key)); }) }))] })));
            },
        },
        {
            sortable: false,
            id: 'subscribers',
            accessor: function (row) { return row.subscribers; },
            maxWidth: '10vw',
            minWidth: '120px',
            align: 'right',
            headerAlign: 'right',
            header: function () { return l('Subscribers'); },
            cell: function (_a) {
                var value = _a.value;
                return renderNumbers(value);
            },
        },
        {
            blur: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'averageViews',
            accessor: function (row) { return row.viewsP50; },
            maxWidth: '10vw',
            minWidth: '120px',
            align: 'right',
            headerAlign: 'right',
            header: function () { return ((0,jsx_runtime.jsxs)("span", Table_assign({ title: l('Avg. views') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, Table_assign({ position: "left center", text: (0,jsx_runtime.jsx)("div", Table_assign({ className: components_Table.tooltip }, { children: l('Median amount of views of the author’s videos within the last year') })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Avg. views')] }))); },
            cell: function (_a) {
                var value = _a.value;
                return ((0,jsx_runtime.jsx)("span", { children: value ? (renderNumbers(isAudienceInsightsAllowed ? value : getRandomInt())) : '—' }));
            },
        },
        {
            blur: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'averageEngagement',
            accessor: function (row) { return row.engagementP50; },
            maxWidth: '10vw',
            minWidth: '180px',
            align: 'right',
            headerAlign: 'right',
            header: function () { return ((0,jsx_runtime.jsxs)("span", Table_assign({ title: l('Avg. engagement') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, Table_assign({ position: "left center", text: (0,jsx_runtime.jsx)("div", Table_assign({ className: components_Table.tooltip }, { children: l('Median amount of likes, comments and reposts of the author’s posts within the last year') })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Avg. engagement')] }))); },
            cell: function (_a) {
                var value = _a.value;
                return ((0,jsx_runtime.jsx)("span", { children: value ? (renderNumbers(isAudienceInsightsAllowed ? value : getRandomInt())) : '—' }));
            },
        },
        {
            blur: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'engagementRate',
            accessor: function (row) { return row.engagementRateByFollowers; },
            maxWidth: '10vw',
            minWidth: '180px',
            headerAlign: 'right',
            header: function () { return ((0,jsx_runtime.jsxs)("span", Table_assign({ title: l('Engagement rate') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, Table_assign({ position: "left center", text: (0,jsx_runtime.jsxs)("div", Table_assign({ className: components_Table.tooltip }, { children: [l('Engagement rate (ER) measures the percentage of the audience that somehow reacts '
                                    + 'or responds to an author’s content with likes, comments, shares, etc. '
                                    + 'Formulae looks like this:'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER by followers') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER = ((Likes + Comments + Reposts) / Posts) / Followers * 100%') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER by views') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER = ((Likes + Comments + Reposts) / Posts) / Views) * 100%') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('Note that we use all recent posts from the author to calculate engagement '
                                    + '(not only mentions that are related to this topic).')] })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Engagement rate')] }))); },
            cell: function (_a) {
                var _b, _c;
                var _d, _e;
                var row = _a.row;
                var engagementRateByViewsSources = ['youtube.com', 'tiktok.com'];
                var isEngagementRateByViewsUsed = engagementRateByViewsSources.includes(row.sourceName);
                var engagementRate = row.engagementRateByViews || row.engagementRateByFollowers;
                if (!engagementRate)
                    return ((0,jsx_runtime.jsx)("div", Table_assign({ className: components_Table.performanceContainer }, { children: (0,jsx_runtime.jsx)("span", Table_assign({ className: components_Table.performance }, { children: "\u2014" })) })));
                return ((0,jsx_runtime.jsxs)("div", Table_assign({ className: components_Table.performanceContainer }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, Table_assign({ text: l('Engagement rate by followers') }, { children: (0,jsx_runtime.jsxs)("span", Table_assign({ className: classnames_default()(components_Table.engagementRate, (_b = {}, _b[components_Table.mainEngagementRate] = !isEngagementRateByViewsUsed, _b)), title: (_d = row.engagementRateByFollowers) === null || _d === void 0 ? void 0 : _d.toString() }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { color: "lightgray", type: "account-multiple" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), formatEngagementRate(isAudienceInsightsAllowed ? row.engagementRateByFollowers : 0.5)] })) })), row.engagementRateByViews ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, Table_assign({ text: l('Engagement rate by views') }, { children: (0,jsx_runtime.jsxs)("span", Table_assign({ className: classnames_default()(components_Table.engagementRate, (_c = {}, _c[components_Table.mainEngagementRate] = isEngagementRateByViewsUsed, _c)), title: (_e = row.engagementRateByViews) === null || _e === void 0 ? void 0 : _e.toString() }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { color: "lightgray", type: "eye" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), formatEngagementRate(isAudienceInsightsAllowed ? row.engagementRateByViews : 0.5)] })) }))) : null] })));
            },
        },
        {
            blur: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'influenceScore',
            accessor: function (row) { return row.influenceScore; },
            maxWidth: '7vw',
            minWidth: '140px',
            header: function () { return ((0,jsx_runtime.jsxs)("span", Table_assign({ title: l('Influence') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, Table_assign({ position: "left center", text: (0,jsx_runtime.jsxs)("div", Table_assign({ className: components_Table.tooltip }, { children: [l('Influence Score measures the amount of interaction an author’s content gets '
                                    + 'compared to views or followers. This score is calculated relative to other '
                                    + 'authors from the same platform or source.'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('Influence Score ranges from 1-10 for each author, based on their engagement '
                                    + 'rate compared to the average engagement rate generated by authors from the same source.'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('For TikTok and YouTube, Engagement Rate is calculated by views. For all other '
                                    + 'sources, it is based on followers.')] })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Influence')] }))); },
            cell: function (_a) {
                var row = _a.row;
                return (0,jsx_runtime.jsx)(components_InfluenceScore, { score: isAudienceInsightsAllowed ? row.influenceScore : 10 });
            },
        },
        {
            isHighlighted: true,
            sortable: false,
            id: 'mentions',
            accessor: function (row) { return row.mentions; },
            header: function () { return l('Mentions'); },
            minWidth: '80px',
            maxWidth: '12vw',
            width: 'auto',
            align: 'right',
            headerAlign: 'right',
            cell: function (_a) {
                var row = _a.row;
                return renderNumbers(row.mentions);
            },
        },
        {
            isHighlighted: true,
            sortable: false,
            id: 'engagement',
            accessor: function (row) { return row.engagement; },
            header: function () { return l('Engagement'); },
            minWidth: '80px',
            maxWidth: '12vw',
            width: 'auto',
            align: 'right',
            headerAlign: 'right',
            cell: function (_a) {
                var row = _a.row;
                return renderNumbers(row.engagement);
            },
        },
    ]); }, [isAudienceInsightsAllowed]);
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, Table_assign({ loaded: !isFetching }, { children: function () { return ((authors === null || authors === void 0 ? void 0 : authors.length)
            ? ((0,jsx_runtime.jsx)(Table/* default */.A, { skipSorting: true, data: authors, columnsConfig: columnsConfig, rowConfig: rowConfig, headerConfig: headerConfig, renderTopContent: function () { return ((0,jsx_runtime.jsx)("thead", { children: (0,jsx_runtime.jsxs)("tr", { children: [!isAudienceInsightsAllowed ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("th", Table_assign({ colSpan: 3 }, { children: ' ' })), (0,jsx_runtime.jsx)("th", Table_assign({ colSpan: 4, className: components_Table.addon }, { children: (0,jsx_runtime.jsx)(H3/* default */.A, Table_assign({ className: components_Table.title }, { children: l('These metrics are a part of an Audience Insights addon') })) }))] })) : (0,jsx_runtime.jsx)("th", Table_assign({ colSpan: 7 }, { children: ' ' })), (0,jsx_runtime.jsx)("th", Table_assign({ style: {
                                    minWidth: '160px',
                                    maxWidth: '24vw',
                                }, className: components_Table.header, align: "center", colSpan: 2 }, { children: (0,jsx_runtime.jsx)(H3/* default */.A, Table_assign({ className: components_Table.title }, { children: l('In topic') })) }))] }) })); } }))
            : (0,jsx_runtime.jsx)(components_EmptyState, {})); } })));
};
/* harmony default export */ const Authors_components_Table = ((0,react.memo)(AuthorsTable));

;// CONCATENATED MODULE: ./src/containers/audience/Authors/components/DemoTable.tsx
var DemoTable_assign = (undefined && undefined.__assign) || function () {
    DemoTable_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DemoTable_assign.apply(this, arguments);
};

/* eslint react/jsx-no-bind: 0 */
















var DemoTable_AVATAR_SENTIMENT_CLASS_NAMES = {
    negative: components_Table.negativeAvatar,
    neutral: components_Table.neutralAvatar,
    positive: components_Table.positiveAvatar,
};
var DemoTable_renderNumbers = function (value) { return (0,jsx_runtime.jsx)("span", { children: value > 0 ? numeral_default()(value).format() : '—' }); };
var DemoTable_AuthorsTable = function (_a) {
    var isFetching = _a.isFetching, isAudienceInsightsAllowed = _a.isAudienceInsightsAllowed, authors = _a.authors, sendAnalyticalEvent = _a.sendAnalyticalEvent, onAuthorClick = _a.onAuthorClick, onOpenProfile = _a.onOpenProfile, onExcludeAuthor = _a.onExcludeAuthor;
    var headerConfig = (0,react.useMemo)(function () { return ({
        align: 'left',
    }); }, []);
    var rowConfig = (0,react.useMemo)(function () { return ({
        withHighlight: true,
        keyAccessor: function (row) { return row.id; },
    }); }, []);
    var columnsConfig = (0,react.useMemo)(function () { return ([{
            show: true,
            id: 'avatarUrl',
            accessor: function (row) { return row.sourceName; },
            header: function () { return null; },
            width: '60px',
            cell: function (_a) {
                var row = _a.row;
                return ((0,jsx_runtime.jsx)("div", DemoTable_assign({ className: components_Table.avatarContainer }, { children: (0,jsx_runtime.jsxs)(AuthorInfoPopup/* default */.A, DemoTable_assign({}, row, { avatarUrl: 'avatarUrl' in row ? row.avatarUrl : undefined, shouldHandleOutsideClick: true, fullWidth: true, canExclude: true, hideOnScroll: false, triggerClassName: components_Table.infoPopover, onExclude: function () { return onExcludeAuthor(row.id, row.sourceName); }, onShowMentions: function () { return onAuthorClick(row.id, row.sourceName); }, onOpenProfile: function () { return onOpenProfile(row.url, row.sourceName); }, onShow: function () { return sendAnalyticalEvent({ eventType: 'Authors multi-action: popup opened' }); } }, { children: [(0,jsx_runtime.jsx)(Avatar/* default */.A, { size: 40, rounded: true, imageUrl: 'avatarUrl' in row ? row.avatarUrl : undefined, className: DemoTable_AVATAR_SENTIMENT_CLASS_NAMES[getTopSentiment(row.sentiment)] }), (0,jsx_runtime.jsx)(SourceIcon/* default */.A, { size: 14, name: row.sourceName, className: components_Table.sourceIcon, alt: row.sourceName })] })) })));
            },
        },
        {
            show: true,
            sortable: false,
            id: 'name',
            accessor: function (d) { return d.name || "@".concat(d.nickname); },
            header: function () { return l('Main info', 'authorsTable'); },
            maxWidth: '10vw',
            minWidth: '100px',
            width: 'auto',
            align: 'left',
            cell: function (_a) {
                var row = _a.row, value = _a.value;
                return ((0,jsx_runtime.jsxs)(AuthorInfoPopup/* default */.A, DemoTable_assign({}, row, { avatarUrl: 'avatarUrl' in row ? row.avatarUrl : undefined, shouldHandleOutsideClick: true, fullWidth: true, canExclude: true, hideOnScroll: false, triggerClassName: components_Table.infoPopover, onExclude: function () { return onExcludeAuthor(row.id, row.sourceName); }, onShowMentions: function () { return onAuthorClick(row.id, row.sourceName); }, onOpenProfile: function () { return onOpenProfile(row.url, row.sourceName); }, onShow: function () { return sendAnalyticalEvent({ eventType: 'Authors multi-action: popup opened' }); } }, { children: [(0,jsx_runtime.jsx)("div", DemoTable_assign({ title: "".concat(row.sourceName, " | ").concat(value) }, { children: value })), (0,jsx_runtime.jsx)("div", DemoTable_assign({ className: components_Table.occupations }, { children: row.occupations.map(function (p, i) { return ((0,jsx_runtime.jsxs)("span", { children: [p.key, i < row.occupations.length - 1 ? ', ' : ''] }, p.key)); }) })), (0,jsx_runtime.jsx)("div", DemoTable_assign({ className: components_Table.interestsContainer }, { children: row.interests.map(function (v) { return ((0,jsx_runtime.jsx)("span", DemoTable_assign({ className: components_Table.interest }, { children: v.key }), v.key)); }) }))] })));
            },
        },
        {
            show: true,
            sortable: false,
            id: 'subscribers',
            accessor: function (row) { return row.subscribers; },
            maxWidth: '10vw',
            minWidth: '90px',
            align: 'right',
            headerAlign: 'right',
            header: function () { return l('Subscribers'); },
            cell: function (_a) {
                var value = _a.value;
                return DemoTable_renderNumbers(value);
            },
        },
        {
            show: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'averageViews',
            accessor: function (row) { return row.viewsP50; },
            maxWidth: '10vw',
            minWidth: '90px',
            align: 'right',
            headerAlign: 'right',
            header: function () { return ((0,jsx_runtime.jsxs)("span", DemoTable_assign({ title: l('Avg. views') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, DemoTable_assign({ position: "left center", text: (0,jsx_runtime.jsx)("div", DemoTable_assign({ className: components_Table.tooltip }, { children: l('Median amount of views of the author’s videos within the last year') })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Avg. views')] }))); },
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: value ? (DemoTable_renderNumbers(value)) : '—' });
            },
        },
        {
            show: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'averageEngagement',
            accessor: function (row) { return row.engagementP50; },
            maxWidth: '10vw',
            minWidth: '130px',
            align: 'right',
            headerAlign: 'right',
            header: function () { return ((0,jsx_runtime.jsxs)("span", DemoTable_assign({ title: l('Avg. engagement') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, DemoTable_assign({ position: "left center", text: (0,jsx_runtime.jsx)("div", DemoTable_assign({ className: components_Table.tooltip }, { children: l('Median amount of likes, comments and reposts of the author’s posts within the last year') })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Avg. engagement')] }))); },
            cell: function (_a) {
                var value = _a.value;
                return (0,jsx_runtime.jsx)("span", { children: value ? (DemoTable_renderNumbers(value)) : '—' });
            },
        },
        {
            show: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'engagementRate',
            accessor: function (row) { return row.engagementRateByFollowers; },
            maxWidth: '10vw',
            minWidth: '150px',
            headerAlign: 'right',
            header: function () { return ((0,jsx_runtime.jsxs)("span", DemoTable_assign({ title: l('Engagement rate') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, DemoTable_assign({ position: "left center", text: (0,jsx_runtime.jsxs)("div", DemoTable_assign({ className: components_Table.tooltip }, { children: [l('Engagement rate (ER) measures the percentage of the audience that somehow reacts '
                                    + 'or responds to an author’s content with likes, comments, shares, etc. '
                                    + 'Formulae looks like this:'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER by followers') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER = ((Likes + Comments + Reposts) / Posts) / Followers * 100%') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER by views') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("b", { children: l('ER = ((Likes + Comments + Reposts) / Posts) / Views) * 100%') }), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('Note that we use all recent posts from the author to calculate engagement '
                                    + '(not only mentions that are related to this topic).')] })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Engagement rate')] }))); },
            cell: function (_a) {
                var _b, _c;
                var _d, _e;
                var row = _a.row;
                var engagementRateByViewsSources = ['youtube.com', 'tiktok.com'];
                var isEngagementRateByViewsUsed = engagementRateByViewsSources.includes(row.sourceName);
                var engagementRate = row.engagementRateByViews || row.engagementRateByFollowers;
                if (!engagementRate)
                    return (0,jsx_runtime.jsx)("span", { children: "\u2014" });
                return ((0,jsx_runtime.jsxs)("div", DemoTable_assign({ className: components_Table.performanceContainer }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, DemoTable_assign({ text: l('Engagement rate by followers') }, { children: (0,jsx_runtime.jsxs)("span", DemoTable_assign({ className: classnames_default()(components_Table.engagementRate, (_b = {}, _b[components_Table.mainEngagementRate] = !isEngagementRateByViewsUsed, _b)), title: (_d = row.engagementRateByFollowers) === null || _d === void 0 ? void 0 : _d.toString() }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { color: "lightgray", type: "account-multiple" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), formatEngagementRate(row.engagementRateByFollowers)] })) })), row.engagementRateByViews ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, DemoTable_assign({ text: l('Engagement rate by views') }, { children: (0,jsx_runtime.jsxs)("span", DemoTable_assign({ className: classnames_default()(components_Table.engagementRate, (_c = {}, _c[components_Table.mainEngagementRate] = isEngagementRateByViewsUsed, _c)), title: (_e = row.engagementRateByViews) === null || _e === void 0 ? void 0 : _e.toString() }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { color: "lightgray", type: "eye" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), formatEngagementRate(row.engagementRateByViews)] })) }))) : null] })));
            },
        },
        {
            show: !isAudienceInsightsAllowed,
            sortable: false,
            id: 'influenceScore',
            accessor: function (row) { return row.influenceScore; },
            maxWidth: '7vw',
            minWidth: '140px',
            header: function () { return ((0,jsx_runtime.jsxs)("span", DemoTable_assign({ title: l('Influence') }, { children: [(0,jsx_runtime.jsx)(Tooltip/* default */.A, DemoTable_assign({ position: "left center", text: (0,jsx_runtime.jsxs)("div", DemoTable_assign({ className: components_Table.tooltip }, { children: [l('Influence Score measures the amount of interaction an author’s content gets '
                                    + 'compared to views or followers. This score is calculated relative to other '
                                    + 'authors from the same platform or source.'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('Influence Score ranges from 1-10 for each author, based on their engagement '
                                    + 'rate compared to the average engagement rate generated by authors from the same source.'), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("br", {}), l('For TikTok and YouTube, Engagement Rate is calculated by views. For all other '
                                    + 'sources, it is based on followers.')] })) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info", color: "lightgray" }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Influence')] }))); },
            cell: function (_a) {
                var row = _a.row;
                return (0,jsx_runtime.jsx)(components_InfluenceScore, { score: row.influenceScore });
            },
        },
        {
            show: true,
            isHighlighted: true,
            sortable: false,
            id: 'mentions',
            accessor: function (row) { return row.mentions; },
            header: function () { return l('Mentions'); },
            minWidth: '60px',
            maxWidth: '12vw',
            width: 'auto',
            align: 'right',
            headerAlign: 'right',
            cell: function (_a) {
                var row = _a.row;
                return DemoTable_renderNumbers(row.mentions);
            },
        },
        {
            show: true,
            isHighlighted: true,
            sortable: false,
            id: 'engagement',
            accessor: function (row) { return row.engagement; },
            header: function () { return l('Engagement'); },
            minWidth: '60px',
            maxWidth: '12vw',
            width: 'auto',
            align: 'right',
            headerAlign: 'right',
            cell: function (_a) {
                var row = _a.row;
                return DemoTable_renderNumbers(row.engagement);
            },
        }]); }, [isAudienceInsightsAllowed]);
    var columnsSize = columnsConfig.filter(function (column) { return column.show; }).length;
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, DemoTable_assign({ className: components_Table.demoMode, loaded: !isFetching }, { children: function () { return ((authors === null || authors === void 0 ? void 0 : authors.length)
            ? ((0,jsx_runtime.jsx)(Table/* default */.A, { skipSorting: true, data: authors, columnsConfig: columnsConfig, rowConfig: rowConfig, headerConfig: headerConfig, renderTopContent: function () { return ((0,jsx_runtime.jsx)("thead", { children: (0,jsx_runtime.jsxs)("tr", { children: [(0,jsx_runtime.jsx)("th", DemoTable_assign({ colSpan: columnsSize - 2 }, { children: ' ' })), (0,jsx_runtime.jsx)("th", DemoTable_assign({ style: {
                                    minWidth: '160px',
                                    maxWidth: '24vw',
                                }, className: components_Table.header, align: "center", colSpan: 2 }, { children: (0,jsx_runtime.jsx)(H3/* default */.A, DemoTable_assign({ className: components_Table.title }, { children: l('In topic') })) }))] }) })); } }))
            : (0,jsx_runtime.jsx)(components_EmptyState, {})); } })));
};
/* harmony default export */ const DemoTable = ((0,react.memo)(DemoTable_AuthorsTable));

;// CONCATENATED MODULE: ./src/containers/audience/Authors/Authors.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Authors = ({"base":"zQmE5VqHXQC2bMEwiQj1","header":"NReksDG2QWZNt43z68mB","title":"MWczvtw6uM2eCFSvPxr1","sorting":"hOLdTVxAc14AZguzO0y1","cards":"ZpfpNMysvpUlbb9wLNJl"});
;// CONCATENATED MODULE: ./src/containers/audience/Authors/Authors.tsx
var Authors_assign = (undefined && undefined.__assign) || function () {
    Authors_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Authors_assign.apply(this, arguments);
};

























var DEFAULT_SORTING = 'totalEngagement';
var Authors_Authors = function (_a) {
    var isLoading = _a.isLoading, isDemoMode = _a.isDemoMode, isAudienceInsightsAllowed = _a.isAudienceInsightsAllowed, themeId = _a.themeId, filter = _a.filter, query = _a.query, router = _a.router, data = _a.data, fetchAuthorStats = _a.fetchAuthorStats, updateFilter = _a.updateFilter, updateLocation = _a.updateLocation, sendAnalyticalEvent = _a.sendAnalyticalEvent, excludeAuthor = _a.excludeAuthor;
    var sorting = query.authorsSorting || DEFAULT_SORTING;
    var sortingOptions = (0,react.useMemo)(function () { return [
        { value: 'readers', label: l('Subscribers'), isAllowed: true },
        { value: 'viewsP50', label: l('Average views'), isAllowed: isAudienceInsightsAllowed },
        { value: 'engagementP50', label: l('Average engagement'), isAllowed: isAudienceInsightsAllowed },
        { value: 'engagementRateByViews', label: l('Engagement rate by views'), isAllowed: isAudienceInsightsAllowed },
        { value: 'engagementRateByFollowers', label: l('Engagement rate by followers'), isAllowed: isAudienceInsightsAllowed },
        { value: 'influenceScore', label: l('Influence score'), isAllowed: isAudienceInsightsAllowed },
        { value: 'count', label: l('Mentions'), isAllowed: true },
        { value: 'totalEngagement', label: l('Engagement'), isAllowed: true }
    ].filter(function (x) { return x.isAllowed; }); }, [isAudienceInsightsAllowed]);
    (0,react.useEffect)(function () {
        if (!query.authorsSorting)
            handleChangeSorting(DEFAULT_SORTING);
        sendAnalyticalEvent({ eventType: 'Authors table: page opened' });
    }, []);
    (0,react.useEffect)(function () {
        fetchAuthorStats({
            filter: filter,
            themeId: themeId,
            sorting: sorting,
        });
    }, [query.authorsSorting, themeId]);
    var handleChangeSorting = function (sort) {
        updateLocation({
            query: { authorsSorting: sort },
        });
    };
    var handleOpenProfile = function (profileUrl, sourceName) {
        window.open(profileUrl, '_blank');
        sendAnalyticalEvent({
            eventType: 'Authors multi-action: external link clicked',
            properties: { source: sourceName },
        });
    };
    var handleExcludeAuthor = function (authorId, sourceName) {
        excludeAuthor({ authorId: authorId, themeId: themeId });
        sendAnalyticalEvent({
            eventType: 'Authors multi-action: author excluded',
            properties: { source: sourceName },
        });
    };
    var handleAuthorClick = function (id, sourceName) {
        filter.doSelect('authorId', [id]);
        window.open(router.createPath({
            pathname: "/themes/".concat(themeId, "/mentions"),
            search: "?".concat(filter.toQueryString()),
        }), '_blank');
        filter.doSelect('authorId', [id]);
        sendAnalyticalEvent({
            eventType: 'Authors multi-action: mention stream opened',
            properties: { source: sourceName },
        });
    };
    var handleInfluencerTypeChange = function (type) {
        var currentSubscribersRange = getAuthorSubscribers(filter);
        var subscribersRange = SUBSCRIBERS_RANGE_BY_INFLUENCER_TYPE[type];
        var shouldRemoveValue = function (currentValue, value) { return Number(currentValue) === value; };
        handleChangeSorting('influenceScore');
        sendAnalyticalEvent({
            eventType: 'Authors: change influencers type',
            properties: { type: type },
        });
        updateFilter({
            name: 'authorSubscribers',
            value: {
                from: shouldRemoveValue(currentSubscribersRange === null || currentSubscribersRange === void 0 ? void 0 : currentSubscribersRange.from, subscribersRange.from) ? 0 : subscribersRange.from,
                to: shouldRemoveValue(currentSubscribersRange === null || currentSubscribersRange === void 0 ? void 0 : currentSubscribersRange.to, subscribersRange.to) ? 0 : subscribersRange.to,
            },
        });
    };
    var selectedInfluencerType = (0,react.useMemo)(function () { return getSelectedInfluencerType(filter); }, [filter]);
    return ((0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: (0,jsx_runtime.jsxs)(Card/* default */.A, Authors_assign({ noPadding: true }, { children: [(0,jsx_runtime.jsxs)("div", Authors_assign({ className: classnames_default()(Authors.header) }, { children: [isDemoMode ? null : (0,jsx_runtime.jsx)(H2/* default */.A, Authors_assign({ className: classnames_default()(Authors.title) }, { children: l('Top authors') })), isAudienceInsightsAllowed && !isDemoMode ? ((0,jsx_runtime.jsxs)(ChipSelector/* ChipSelector */.I, { children: [(0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, value: InfluencerTypeKey.NANO, selected: selectedInfluencerType === InfluencerTypeKey.NANO, label: l('Nano influencers'), onSelect: handleInfluencerTypeChange }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { bordered: true, value: InfluencerTypeKey.MICRO, selected: selectedInfluencerType === InfluencerTypeKey.MICRO, label: l('Micro influencers'), onSelect: handleInfluencerTypeChange }), (0,jsx_runtime.jsx)(ChipSelector/* ChipItem */.K, { value: InfluencerTypeKey.MACRO, selected: selectedInfluencerType === InfluencerTypeKey.MACRO, label: l('Macro influencers'), onSelect: handleInfluencerTypeChange })] })) : null, (0,jsx_runtime.jsxs)("div", Authors_assign({ className: Authors.sorting }, { children: [(0,jsx_runtime.jsx)("div", { children: l('Sort by') }), (0,jsx_runtime.jsx)(Select/* default */.A, { options: sortingOptions, value: sortingOptions.find(function (option) { return option.value === sorting; }), onChange: function (option) { return handleChangeSorting(option.value); } })] }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), isDemoMode ? ((0,jsx_runtime.jsx)(DemoTable, { isFetching: isLoading, authors: data, isAudienceInsightsAllowed: isAudienceInsightsAllowed, sendAnalyticalEvent: sendAnalyticalEvent, onAuthorClick: handleAuthorClick, onOpenProfile: handleOpenProfile, onExcludeAuthor: handleExcludeAuthor })) : ((0,jsx_runtime.jsx)(Authors_components_Table, { isFetching: isLoading, authors: data, isAudienceInsightsAllowed: isAudienceInsightsAllowed, sendAnalyticalEvent: sendAnalyticalEvent, onAuthorClick: handleAuthorClick, onOpenProfile: handleOpenProfile, onExcludeAuthor: handleExcludeAuthor }))] })) }));
};
/* harmony default export */ const audience_Authors_Authors = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isAudienceInsightsAllowed: (0,account_selectors/* canShowAudienceInsights */.Po)(state),
    data: (0,stats_selectors/* getAuthorsData */.nj)(state),
    isLoading: (0,stats_selectors/* isAuthorsPageLoading */.gh)(state),
    query: (0,routing_selectors/* getQuery */.$Z)(state),
    themeId: (0,selectors/* getCurrentThemeId */.Md)(state),
}); }, {
    fetchAuthorStats: model/* statsModel */.l.action.fetchAuthorStats,
    updateFilter: filter_model/* filterModel */.W.action.updateFilter,
    updateLocation: actions/* update */.yo,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    excludeAuthor: authors_model/* authorsModel */.g.action.excludeAuthor,
}), (0,withFilter/* default */.A)(function (props, isFirstTime) {
    if (!isFirstTime) {
        props.fetchAuthorStats({
            filter: props.filter,
            themeId: props.themeId,
            sorting: props.query.authorsSorting || DEFAULT_SORTING,
        });
    }
}))(Authors_Authors));

;// CONCATENATED MODULE: ./src/containers/audience/Authors/index.ts



/***/ }),

/***/ "5Xsp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ components_AgeDistributionChart_AgeDistributionChart)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/hoc/withTopicStats.tsx
var withTopicStats = __webpack_require__("mN0g");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/containers/audience/Demographics/utils.ts
var utils = __webpack_require__("+Olt");
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/AgeDistributionChart/AgeDistributionChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AgeDistributionChart = ({"card":"wGEJwmjSgHuocjwZEPEs","demoCard":"WdmXEhwibOEJYvYj5VCi"});
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/AgeDistributionChart/AgeDistributionChart.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
















var AGE_CATEGORIES = [
    { name: '60+', from: 60, to: 110 },
    { name: '45-59', from: 45, to: 59 },
    { name: '35-44', from: 35, to: 44 },
    { name: '25-34', from: 25, to: 34 },
    { name: '18-24', from: 18, to: 24 },
    { name: '<18', from: 1, to: 17 }
];
var getAgeDataByGender = function (data) {
    var dataByGender = data.aggregations.authorGender.values
        .reduce(function (acc, v) {
        acc[v.key] = __spreadArray([], __read(v.authorAge.values), false);
        return acc;
    }, {});
    return utils/* GENDERS */.n.map(function (gender) { return ({
        name: (0,utils/* getGenderSeriesLabel */.z)(gender)(),
        data: AGE_CATEGORIES.map(function (_a) {
            var _b;
            var from = _a.from, to = _a.to;
            return (_b = dataByGender[gender]) === null || _b === void 0 ? void 0 : _b.reduce(function (acc, value) {
                var age = value.key;
                var ageCount = value.count;
                if (age >= from && age <= to)
                    return acc + ageCount;
                return acc;
            }, 0);
        }),
        color: colors/* CATEGORIZED_COLORS */.lC[gender],
    }); });
};
var AgeDistributionChart_AgeDistributionChart = function (_a) {
    var _b;
    var isDemoMode = _a.isDemoMode, isFetching = _a.isFetching, themeId = _a.themeId, data = _a.data, ageGroups = _a.ageGroups, updateFilter = _a.updateFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _c = __read((0,react.useState)(null), 2), chartData = _c[0], setChartData = _c[1];
    var handlePointClick = function (ageCategory) {
        var age = AGE_CATEGORIES.find(function (item) { return item.name === ageCategory; });
        updateFilter({
            name: 'authorAge',
            value: { from: String(age.from), to: String(age.to) },
            op: 'range',
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/audience/list"),
            },
        });
    };
    var chartConfig = (0,react.useMemo)(function () {
        return {
            chart: {
                type: 'bar',
                height: 350,
            },
            title: {
                text: 'ageDistribution',
                style: {
                    display: 'none',
                },
            },
            subtitle: {
                text: null,
            },
            xAxis: {
                categories: AGE_CATEGORIES.map(function (ageCategory) { return ageCategory.name; }),
                title: {
                    text: null,
                    style: {
                        display: 'none',
                    },
                },
            },
            yAxis: {
                visible: false,
                min: 0,
                labels: {
                    overflow: 'justify',
                },
                title: {
                    text: null,
                },
                gridLineWidth: 0,
            },
            tooltip: {
                enabled: false,
            },
            plotOptions: {
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) { return handlePointClick(e.point.category); },
                        },
                    },
                },
            },
            series: ageGroups,
        };
    }, [ageGroups]);
    var onExportChart = function (_a) {
        var fileType = _a.fileType;
        sendAnalyticalEvent({
            eventType: 'Age distribution chart: exported',
            properties: {
                fileType: fileType,
                chartType: 'Age by gender',
            },
        });
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, __assign({ className: classnames_default()(AgeDistributionChart.card, (_b = {}, _b[AgeDistributionChart.demoCard] = isDemoMode, _b)) }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !isFetching && data }, { children: function () {
                return (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { withoutExport: isDemoMode, title: l('Author age by gender', 'dashboard'), chartRef: chartData, onChartExport: onExportChart }), (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: chartConfig, callback: setChartData })] });
            } })) })));
};
/* harmony default export */ const components_AgeDistributionChart_AgeDistributionChart = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('ageDistributionChart', {
    aggregations: {
        authorGender: {
            aggregations: {
                authorAge: {},
            },
        },
    },
}, false, function (_state, _a) {
    var data = _a.data;
    return ({ ageGroups: getAgeDataByGender(data) });
}, 'authorsCount'))(AgeDistributionChart_AgeDistributionChart));

;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/AgeDistributionChart/index.ts



/***/ }),

/***/ "wlWs":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ components_AudienceMap_AudienceMap)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./node_modules/highcharts/highmaps.js
var highmaps = __webpack_require__("bIOw");
var highmaps_default = /*#__PURE__*/__webpack_require__.n(highmaps);
// EXTERNAL MODULE: ./src/3rd-party/mapdata/index.js + 26 modules
var mapdata = __webpack_require__("gXmr");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var selectors = __webpack_require__("K9kJ");
// EXTERNAL MODULE: ./src/hoc/withTopicStats.tsx
var withTopicStats = __webpack_require__("mN0g");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/helpers/Loader/Loader.tsx + 1 modules
var Loader = __webpack_require__("5+yk");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/components/other/AudienceChartsTooltip/index.ts + 1 modules
var AudienceChartsTooltip = __webpack_require__("XF/h");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/AudienceMap/AudienceMap.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AudienceMap = ({"base":"VvH_BbjEaDrgYdPv1Al0","demoCard":"Xx2LHPvEQFVn3qfMORVS"});
;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/AudienceMap/AudienceMap.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



















var AudienceMap_AudienceMap = function (_a) {
    var _b;
    var isDemoMode = _a.isDemoMode, themeId = _a.themeId, audienceGeoData = _a.audienceGeoData, isFetching = _a.isFetching, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateFilter = _a.updateFilter;
    var _c = __read((0,react.useState)(null), 2), chartData = _c[0], setChartData = _c[1];
    var handleExport = function () {
        sendAnalyticalEvent({ eventType: 'Audience map: exported' });
    };
    var handleClick = function (countryId) {
        updateFilter({
            name: 'country',
            value: [countryId],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/audience/list"),
            },
        });
    };
    var renderWorldMap = function () {
        if (!audienceGeoData)
            return null;
        var data = audienceGeoData
            .map(function (x) { return ({
            'hc-key': x.key,
            value: x.count,
            name: (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(x.key),
        }); })
            .filter(function (x) { return x.value; });
        var config = {
            title: {
                text: 'worldMap',
                style: {
                    display: 'none',
                },
            },
            chart: {
                height: 350,
            },
            tooltip: {
                padding: 0,
                outside: true,
                useHTML: true,
                formatter: function () {
                    return (0,AudienceChartsTooltip/* default */.A)({ chart: this });
                },
            },
            mapNavigation: {
                enabled: true,
                enableMouseWheelZoom: false,
                enableDoubleClickZoomTo: true,
                enableDoubleClickZoom: true,
                buttonOptions: {
                    verticalAlign: 'bottom',
                },
            },
            plotOptions: {
                map: {
                    cursor: 'pointer',
                    states: {
                        hover: {
                            color: '#EEDD66',
                        },
                    },
                },
            },
            series: [
                {
                    data: data,
                    mapData: (0,getCountryNameTranslation/* getTranslatedChartWorldMap */.pc)(mapdata/* world */.z),
                    tooltip: {
                        pointFormat: '{point.name}: {point.value}',
                    },
                    name: "".concat(l('Mentions'), ":"),
                    borderWidth: 0.5,
                    events: {
                        click: function (e) { return handleClick(e.point['hc-key']); },
                    },
                }
            ],
        };
        return ((0,jsx_runtime.jsx)((highcharts_react_min_default()), { constructorType: "mapChart", options: config, highcharts: (highmaps_default()), callback: setChartData }));
    };
    return ((0,jsx_runtime.jsx)(Card/* default */.A, __assign({ className: classnames_default()(AudienceMap.base, (_b = {}, _b[AudienceMap.demoCard] = isDemoMode, _b)) }, { children: (0,jsx_runtime.jsxs)(Loader/* default */.A, __assign({ loaded: !isFetching }, { children: [(0,jsx_runtime.jsx)(ChartHeader/* default */.A, { withoutExport: isDemoMode, title: l('Authors by location'), chartRef: chartData, onChartExport: handleExport }), renderWorldMap()] })) })));
};
/* harmony default export */ const components_AudienceMap_AudienceMap = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(null, {
    updateFilter: model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('audienceMap', {
    aggregations: {
        countries: {
            size: 300,
            aggregations: {},
        },
    },
}, false, function (state) { return ({
    audienceGeoData: (0,selectors/* getAudienceGeoData */.GT)(state),
}); }, 'authorsCount'))(AudienceMap_AudienceMap));

;// CONCATENATED MODULE: ./src/containers/audience/Demographics/components/AudienceMap/index.ts



/***/ }),

/***/ "+Olt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   n: () => (/* binding */ GENDERS),
/* harmony export */   z: () => (/* binding */ getGenderSeriesLabel)
/* harmony export */ });
var GENDERS = ['male', 'female'];
var getGenderSeriesLabel = function (gender) {
    return {
        male: function () { return l('Male', 'demographics'); },
        female: function () { return l('Female', 'demographics'); },
    }[gender];
};


/***/ }),

/***/ "7HtA":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Interests_AudienceInterests)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./src/hoc/withTopicStats.tsx
var withTopicStats = __webpack_require__("mN0g");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/authors/model.ts
var authors_model = __webpack_require__("azyO");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var selectors = __webpack_require__("K9kJ");
// EXTERNAL MODULE: ./src/state/authors/selectors.ts + 1 modules
var authors_selectors = __webpack_require__("SEw9");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Progressbar/index.ts + 2 modules
var Progressbar = __webpack_require__("b2R6");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/components/other/BubbleChart/index.ts
var BubbleChart = __webpack_require__("lZuL");
// EXTERNAL MODULE: ./src/components/other/AudienceChartsTooltip/index.ts + 1 modules
var AudienceChartsTooltip = __webpack_require__("XF/h");
// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/utils/table.ts
var table = __webpack_require__("pEH6");
;// CONCATENATED MODULE: ./src/containers/audience/Interests/AudienceInterests.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AudienceInterests = ({"base":"Mq4kMmjoCGtsMcGQUxW9","container":"Z0LOAio9GNxnaW9CTsBm","card":"YSpbsJXEd6BusRQOm2VD","demoCard":"_apFoaWFGEA7asjLkgwv","categoriesHeader":"_LHVGJY6Ehohkoate5qQ","categoriesTitle":"LOBak1VV7PV1yeBCfMVX","exportButton":"IqGbCP91QeMwjkkNum4O","categories":"jrNJ_wPKvJxulkgzonMc","emptyCategory":"_n1EESCxgnAzHgeg_LNd","category":"rtRXzvFwxPBhlNrRsMSl","selected":"bFlcOybH1L_f6X22RMkD","allCategory":"_qItRGKiOetFFBjudxAY","categoryProgressBar":"T8MKH7GHa3Fen8bD1Zzf","chart":"SaRKOJ9YQTYXRFr4mguE","dataLabel":"ryOcH3_meXd6OSqPvR5t"});
;// CONCATENATED MODULE: ./src/containers/audience/Interests/AudienceInterests.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint react/jsx-no-bind: 0 react/no-this-in-sfc: 0 */
























var ALL_INTEREST_CATEGORIES_KEY = 'All';
var CHART_INTEREST_CATEGORIES_THRESHOLD = 20;
var CHART_INTERESTS_THRESHOLD = 30;
var AudienceInterests_AudienceInterests = function (_a) {
    var _b, _c, _d;
    var _e;
    var isDemoMode = _a.isDemoMode, isFetching = _a.isFetching, height = _a.height, themeId = _a.themeId, interestsByCategories = _a.interestsByCategories, interestsHierarchy = _a.interestsHierarchy, updateFilter = _a.updateFilter, fetchInterestsHierarchy = _a.fetchInterestsHierarchy, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _f = __read((0,react.useState)(null), 2), selectedCategory = _f[0], setSelectedCategory = _f[1];
    var isCategoriesEmpty = !((_e = interestsByCategories === null || interestsByCategories === void 0 ? void 0 : interestsByCategories.categories) === null || _e === void 0 ? void 0 : _e.length);
    (0,react.useEffect)(function () {
        fetchInterestsHierarchy();
        sendAnalyticalEvent({ eventType: 'Audience interest: page opened' });
    }, []);
    (0,react.useEffect)(function () {
        if (interestsByCategories)
            setSelectedCategory(ALL_INTEREST_CATEGORIES_KEY);
    }, [interestsByCategories]);
    var chartData = (0,react.useMemo)(function () {
        if (!interestsByCategories || !selectedCategory || !interestsHierarchy)
            return null;
        var isAllCategorySelected = selectedCategory === ALL_INTEREST_CATEGORIES_KEY;
        var data = [];
        if (isAllCategorySelected) {
            interestsByCategories.interests
                .sort(function (a, b) { return a.count < b.count; })
                .slice(0, CHART_INTERESTS_THRESHOLD)
                .forEach(function (interest) {
                data.push({ name: interest.name, value: interest.count });
            });
        }
        else {
            interestsHierarchy[selectedCategory].forEach(function (interestName) {
                var interest = interestsByCategories.interests.find(function (x) { return x.name === interestName; });
                if (interest)
                    data.push({ name: interest.name, value: interest.count });
            });
        }
        return [{
                maxSize: 170,
                minSize: 60,
                color: (0,colorHandler/* isDarkTheme */.g4)() ? '#7BB555' : '#2B89ED',
                dataLabels: { color: 'white' },
                data: data,
            }];
    }, [interestsByCategories, selectedCategory, interestsHierarchy]);
    var handleExportButtonClick = function () {
        sendAnalyticalEvent({
            eventType: 'Audience interest categories: exported',
        });
        var getCsvColumns = function () { return ([
            {
                header: l('Category', 'interests'),
                accessor: function (x) { return x.key; },
            },
            {
                header: l('Authors count', 'interests'),
                accessor: function (x) { return x.count; },
            }
        ]); };
        (0,table/* exportCsv */.z)('interestCategories', getCsvColumns(), interestsByCategories.categories);
    };
    var handleChartExport = function (_a) {
        var properties = _a.properties;
        sendAnalyticalEvent({
            eventType: 'Audience interests: exported',
            properties: properties,
        });
    };
    var handleCategoryClick = function (category) {
        sendAnalyticalEvent({
            eventType: 'Audience interest categories: category clicked',
            properties: { category: category },
        });
        setSelectedCategory(category);
    };
    var handleBubbleClick = function (_a) {
        var label = _a.label;
        sendAnalyticalEvent({
            eventType: 'Audience interests: bubble clicked',
            properties: { label: label },
        });
        updateFilter({
            name: 'authorInterests',
            value: [label],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/audience/list"),
            },
        });
    };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ className: AudienceInterests.base, loaded: !isFetching }, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(AudienceInterests.container) }, { children: [(0,jsx_runtime.jsxs)(Card/* default */.A, __assign({ className: classnames_default()(AudienceInterests.card, (_b = {}, _b[AudienceInterests.demoCard] = isDemoMode, _b)) }, { children: [!isDemoMode && ((0,jsx_runtime.jsxs)("div", __assign({ className: AudienceInterests.categoriesHeader }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, __assign({ className: AudienceInterests.categoriesTitle }, { children: l('Categories', 'interests') })), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, size: "small", disabled: isCategoriesEmpty, className: AudienceInterests.exportButton, label: l('Export', 'interests'), onClick: handleExportButtonClick })] }))), (0,jsx_runtime.jsx)("div", __assign({ className: AudienceInterests.categories }, { children: isCategoriesEmpty
                                ? (0,jsx_runtime.jsx)("div", __assign({ className: AudienceInterests.emptyCategory }, { children: l('No categories to display') }))
                                : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(AudienceInterests.category, AudienceInterests.allCategory, (_c = {}, _c[AudienceInterests.selected] = selectedCategory === ALL_INTEREST_CATEGORIES_KEY, _c)), onClick: function () { return handleCategoryClick(ALL_INTEREST_CATEGORIES_KEY); } }, { children: l('All categories', 'interests') })), (0,jsx_runtime.jsx)(Divider/* default */.A, {}), interestsByCategories === null || interestsByCategories === void 0 ? void 0 : interestsByCategories.categories.slice(0, CHART_INTEREST_CATEGORIES_THRESHOLD).map(function (x) {
                                            var _a;
                                            return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(AudienceInterests.category, (_a = {}, _a[AudienceInterests.selected] = x.key === selectedCategory, _a)), onClick: function () { return handleCategoryClick(x.key); } }, { children: [x.key, (0,jsx_runtime.jsx)(Progressbar/* default */.A, { className: AudienceInterests.categoryProgressBar, total: interestsByCategories.totalCount, selected: x.count, color: (0,colors/* getColorsByTheme */.hx)().primaryLight })] }), x.key));
                                        })] })) }))] })), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Card/* default */.A, __assign({ className: classnames_default()(AudienceInterests.chart, (_d = {}, _d[AudienceInterests.demoCard] = isDemoMode, _d)) }, { children: (0,jsx_runtime.jsx)(BubbleChart/* default */.A, { withExport: !isDemoMode, showLegend: false, title: l('Top interests'), height: height || '750px', data: chartData, tooltipFormatter: AudienceChartsTooltip/* default */.A, labelFormatter: function () { return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsx)("span", __assign({ className: AudienceInterests.dataLabel }, { children: this.point.name }))); }, onBubbleClick: handleBubbleClick, onChartExport: handleChartExport }) }))] })) })));
};
/* harmony default export */ const Interests_AudienceInterests = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: model/* filterModel */.W.action.updateFilter,
    fetchInterestsHierarchy: authors_model/* authorsModel */.g.action.fetchAudienceInterestsHierarchy,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('audienceInterestsByCategories', {
    aggregations: {
        authorInterestCategories: { size: 100 },
        authorInterests: { size: 200 },
    },
}, false, function (state) { return ({
    interestsByCategories: (0,selectors/* getInterestsByCategories */.p7)(state),
    interestsHierarchy: (0,authors_selectors/* getAudienceInterestsHierarchy */.Zv)(state),
}); }, 'authorsCount'))(AudienceInterests_AudienceInterests));

;// CONCATENATED MODULE: ./src/containers/audience/Interests/index.ts



/***/ }),

/***/ "noWN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ components_OccupationsCloud)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
;// CONCATENATED MODULE: ./src/containers/audience/Occupations/components/OccupationsCloud.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const OccupationsCloud = ({"chart":"TIxUc92OEyu2A6HboYUv"});
;// CONCATENATED MODULE: ./src/containers/audience/Occupations/components/OccupationsCloud.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






var MAX_FONT_SIZE = 22;
var MIN_FONT_SIZE = 12;
var OccupationsCloud_OccupationsCloud = function (_a) {
    var isDemoMode = _a.isDemoMode, height = _a.height, tooltipFormatter = _a.tooltipFormatter, data = _a.data, onClick = _a.onClick, onExport = _a.onExport;
    var _b = __read((0,react.useState)(null), 2), chartData = _b[0], setChartData = _b[1];
    var config = {
        title: {
            text: 'wordCloud',
            style: {
                display: 'none',
            },
        },
        chart: {
            height: height || '100%',
        },
        tooltip: {
            padding: 0,
            outside: true,
            useHTML: true,
            formatter: function () {
                return tooltipFormatter({ chart: this });
            },
            style: {
                zIndex: 100,
            },
        },
        series: [
            {
                colors: [(0,colorHandler/* isDarkTheme */.g4)() ? '#7BB555' : '#234E89'],
                type: 'wordcloud',
                borderRadius: 16,
                data: data,
                rotation: { orientations: 0 },
                cursor: 'pointer',
                minFontSize: MIN_FONT_SIZE,
                maxFontSize: MAX_FONT_SIZE,
                style: {
                    borderRadius: 16,
                    fontFamily: '"Twemoji Country Flags", "Inter", "Helvetica Neue", sans-serif',
                    fontWeight: '500',
                },
                animation: false,
                point: {
                    events: {
                        click: function (e) {
                            onClick(e.point.name);
                        },
                    },
                },
            }
        ],
    };
    return ((0,jsx_runtime.jsxs)("div", { children: [!isDemoMode && ((0,jsx_runtime.jsx)(ChartHeader/* default */.A, { title: l('Top occupations'), chartRef: chartData, onChartExport: onExport })), (0,jsx_runtime.jsx)("div", __assign({ className: OccupationsCloud.chart }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartData }) }))] }));
};
/* harmony default export */ const components_OccupationsCloud = (OccupationsCloud_OccupationsCloud);


/***/ }),

/***/ "8WjO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ Occupations_AudienceOccupations)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/hoc/withTopicStats.tsx
var withTopicStats = __webpack_require__("mN0g");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var selectors = __webpack_require__("K9kJ");
// EXTERNAL MODULE: ./src/containers/audience/Occupations/components/OccupationsCloud.tsx + 1 modules
var OccupationsCloud = __webpack_require__("noWN");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/other/AudienceChartsTooltip/index.ts + 1 modules
var AudienceChartsTooltip = __webpack_require__("XF/h");
;// CONCATENATED MODULE: ./src/containers/audience/Occupations/AudienceOccupations.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AudienceOccupations = ({"card":"QyusbITCUpaEtpA9WuPw","demoCard":"f_axcnyBKl_v2cOFVhND"});
;// CONCATENATED MODULE: ./src/containers/audience/Occupations/AudienceOccupations.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

/* eslint react/jsx-no-bind: 0 */













var AudienceOccupations_AudienceOccupations = function (_a) {
    var _b;
    var isDemoMode = _a.isDemoMode, isFetching = _a.isFetching, height = _a.height, themeId = _a.themeId, occupations = _a.occupations, updateFilter = _a.updateFilter, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    (0,react.useEffect)(function () {
        sendAnalyticalEvent({ eventType: 'Audience jobs: page opened' });
    }, []);
    var handleExport = function (_a) {
        var fileType = _a.fileType;
        sendAnalyticalEvent({
            eventType: 'Audience jobs: exported',
            properties: { fileType: fileType },
        });
    };
    var handleClick = function (occupation) {
        sendAnalyticalEvent({
            eventType: 'Audience jobs: job clicked',
            properties: { occupation: occupation },
        });
        updateFilter({
            name: 'authorJobs',
            value: [occupation],
            locationOptions: {
                pathname: "/themes/".concat(themeId, "/audience/list"),
            },
        });
    };
    return ((0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !isFetching }, { children: (0,jsx_runtime.jsx)(Card/* default */.A, __assign({ className: classnames_default()(AudienceOccupations.card, (_b = {}, _b[AudienceOccupations.demoCard] = isDemoMode, _b)) }, { children: (0,jsx_runtime.jsx)(OccupationsCloud/* default */.A, { isDemoMode: isDemoMode, height: height || '750px', data: (occupations === null || occupations === void 0 ? void 0 : occupations.data.map(function (x) { return (__assign(__assign({}, x), { weight: x.authors, dataLabels: { enabled: false } })); })) || [], tooltipFormatter: AudienceChartsTooltip/* default */.A, onClick: handleClick, onExport: handleExport }) })) })));
};
/* harmony default export */ const Occupations_AudienceOccupations = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, {
    updateFilter: model/* filterModel */.W.action.updateFilter,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}), (0,withTopicStats/* default */.A)('audienceOccupations', {
    aggregations: {
        authorJobs: {
            size: 30,
            aggregations: {},
        },
    },
}, false, function (state) { return ({
    occupations: (0,selectors/* getOccupationsData */.VQ)(state),
}); }, 'authorsCount'))(AudienceOccupations_AudienceOccupations));

;// CONCATENATED MODULE: ./src/containers/audience/Occupations/index.ts



/***/ }),

/***/ "FmQ8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  uT: () => (/* binding */ CommunitiesButton),
  kE: () => (/* binding */ SentimentButton),
  Xb: () => (/* binding */ TrendsButton)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/ActionButtons.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ActionButtons = ({"highlighted":"N0B3Y7u2HhEGzUO8bopf"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/ActionButtons.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var SentimentButton = function (_a) {
    var _b;
    var isHighlighted = _a.isHighlighted, onClick = _a.onClick;
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ position: "bottom center", text: l('Show sentiment of conversations.') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: isHighlighted, className: classnames_default()((_b = {}, _b[ActionButtons.highlighted] = isHighlighted, _b)), label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive" }), onClick: onClick }) })));
};
var TrendsButton = function (_a) {
    var _b;
    var isHighlighted = _a.isHighlighted, onClick = _a.onClick;
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ position: "bottom center", text: l('Show recent changes in the popularity of conversations.') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: isHighlighted, className: classnames_default()((_b = {}, _b[ActionButtons.highlighted] = isHighlighted, _b)), label: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "trending-up" }), onClick: onClick }) })));
};
var CommunitiesButton = function (_a) {
    var _b;
    var isHighlighted = _a.isHighlighted, onClick = _a.onClick;
    return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ position: "bottom center", text: l('Determine groups of phrases that co-occur frequently.') }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: isHighlighted, className: classnames_default()((_b = {}, _b[ActionButtons.highlighted] = isHighlighted, _b)), label: (0,jsx_runtime.jsx)("img", { style: { width: 14 }, src: "/static/images/".concat(isHighlighted ? 'vi_clusters_icon' : 'vi_clusters_icon_disabled', ".svg"), alt: "clusters" }), onClick: onClick }) })));
};


/***/ }),

/***/ "OqSX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ components_SubjectPhrasesGraph)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/hoc/withFilter.js
var withFilter = __webpack_require__("EPN4");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/conversationalInsights/model.ts
var conversationalInsights_model = __webpack_require__("vuoO");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/conversationalInsights/selectors.ts
var selectors = __webpack_require__("uLYw");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/insightsCopilot/selectors.ts
var insightsCopilot_selectors = __webpack_require__("laSw");
// EXTERNAL MODULE: ./src/components/other/NetworkGraph/index.ts + 3 modules
var NetworkGraph = __webpack_require__("r7Fg");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/utils/table.ts
var table = __webpack_require__("pEH6");
// EXTERNAL MODULE: ./src/utils/nodeChartUtils.ts
var nodeChartUtils = __webpack_require__("lXfu");
// EXTERNAL MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/ActionButtons.tsx + 1 modules
var ActionButtons = __webpack_require__("FmQ8");
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/SubjectPhrasesGraph.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubjectPhrasesGraph = ({"base":"QP_njJTyck5rAfWidqzI"});
;// CONCATENATED MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/SubjectPhrasesGraph.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




















var SubjectPhrasesGraph_SubjectPhrasesGraph = function (_a) {
    var isDemoMode = _a.isDemoMode, isCopilotLimitReached = _a.isCopilotLimitReached, copilotSettings = _a.copilotSettings, filter = _a.filter, isLoading = _a.isLoading, topicId = _a.topicId, graph = _a.graph, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateFilterQuery = _a.updateFilterQuery;
    var _b = __read((0,react.useState)(false), 2), isSentimentHighlighted = _b[0], setIsSentimentHighlighted = _b[1];
    var _c = __read((0,react.useState)(false), 2), isTrendsHighlighted = _c[0], setIsTrendsHighlighted = _c[1];
    var _d = __read((0,react.useState)(false), 2), isCommunitiesHighlighted = _d[0], setIsCommunitiesHighlighted = _d[1];
    var handleInsightsCopilotCall = function (phrases, f) {
        var queryParams = {
            orderBy: 'engagement',
            isCopilotActive: !isCopilotLimitReached,
            copilotMetaData: isCopilotLimitReached ? null : { phrasesBySubjects: phrases },
        };
        updateFilterQuery({
            filter: f,
            pathname: "/themes/".concat(topicId, "/mentions"),
            queryParams: __assign({}, queryParams),
        });
    };
    var handlePointClick = function (properties) {
        var _a;
        sendAnalyticalEvent({ eventType: 'Conversational Insights: subjects graph clicked', properties: properties });
        filter.doAdd('phrase', ((_a = properties === null || properties === void 0 ? void 0 : properties.additionalData) === null || _a === void 0 ? void 0 : _a.similarKeywords) || []);
        filter.dedup = true;
        // TODO: enable this when DS fix is ready
        // if (copilotSettings.showWhenSubjectsClicked) {
        //     handleInsightsCopilotCall(properties?.additionalData?.similarKeywords, filter);
        //     return;
        // }
        updateFilterQuery({
            filter: filter,
            pathname: "/themes/".concat(topicId, "/mentions"),
            queryParams: { isCopilotActive: false },
        });
    };
    var handleSentimentHighlight = function () {
        setIsCommunitiesHighlighted(false);
        setIsSentimentHighlighted(!isSentimentHighlighted);
    };
    var handleCommunitiesHighlight = function () {
        setIsSentimentHighlighted(false);
        setIsCommunitiesHighlighted(!isCommunitiesHighlighted);
    };
    var handleTrendsHighlight = function () {
        setIsTrendsHighlighted(!isTrendsHighlighted);
    };
    var graphData = (0,react.useMemo)(function () { return graph === null || graph === void 0 ? void 0 : graph.getChartData({
        highlightCommunities: isCommunitiesHighlighted,
        highlightSentiment: isSentimentHighlighted,
        highlightTrends: isTrendsHighlighted,
    }); }, [graph, isCommunitiesHighlighted, isSentimentHighlighted, isTrendsHighlighted]);
    return ((0,jsx_runtime.jsx)("div", __assign({ className: SubjectPhrasesGraph.base }, { children: (0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: !isLoading && !!graphData }, { children: (0,jsx_runtime.jsx)(NetworkGraph/* default */.A, { isDemoMode: isDemoMode, title: isDemoMode ? '' : l('Conversation clusters'), additionalButtons: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ActionButtons/* TrendsButton */.Xb, { isHighlighted: isTrendsHighlighted, onClick: handleTrendsHighlight }), (0,jsx_runtime.jsx)(ActionButtons/* SentimentButton */.kE, { isHighlighted: isSentimentHighlighted, onClick: handleSentimentHighlight }), (0,jsx_runtime.jsx)(ActionButtons/* CommunitiesButton */.uT, { isHighlighted: isCommunitiesHighlighted, onClick: handleCommunitiesHighlight })] }), exportOptions: [
                    {
                        value: 'csv_data',
                        label: l('Data in CSV'),
                        handler: function () { return (0,table/* exportCsv */.z)('conversation_insights_data', (0,nodeChartUtils/* getCSVDataColumns */.S6)(), graphData.nodes); },
                    },
                    {
                        value: 'csv_graph',
                        label: l('Relations in CSV'),
                        handler: function () { return (0,table/* exportCsv */.z)('conversation_insights_relations', (0,nodeChartUtils/* getCSVRelationsColumns */.du)(), graphData.edges); },
                    }
                ], data: graphData, onNodeClick: (0,lodash.debounce)(handlePointClick, 1000) }) })) })));
};
/* harmony default export */ const components_SubjectPhrasesGraph = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    isCopilotLimitReached: (0,insightsCopilot_selectors/* isInsightsCopilotLimitReached */.hh)(state),
    copilotSettings: (0,insightsCopilot_selectors/* getInsightsCopilotSettings */.dx)(state),
    topicId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    isLoading: (0,selectors/* isPhrasesBySubjectsInterconnectionsLoading */.sE)(state),
    graph: (0,selectors/* getPhrasesBySubjectsInterconnections */.es)(state),
    data: (0,selectors/* getPhrasesBySubjectsInterconnectionsData */.YX)(state),
}); }, {
    updateLocation: actions/* update */.yo,
    updateFilterQuery: model/* filterModel */.W.action.updateFilterQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    fetchPhrasesBySubjectsInterconnections: conversationalInsights_model/* conversationalInsightsModel */.h.action.fetchPhrasesBySubjectsInterconnections,
}), (0,withFilter/* default */.A)(function (props) {
    var _a;
    if (!props.data || props.data.themeId !== props.themeId || !props.filter.equals((_a = props.data) === null || _a === void 0 ? void 0 : _a.filter)) {
        props.fetchPhrasesBySubjectsInterconnections({ themeId: props.themeId, filter: props.filter });
    }
}), react.memo)(SubjectPhrasesGraph_SubjectPhrasesGraph));


/***/ }),

/***/ "Oxpf":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var react_sparklines__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("nCnx");
/* harmony import */ var react_sparklines__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_sparklines__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("kHEK");
/* harmony import */ var hooks_useApi__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("lvrO");
/* harmony import */ var components_ui_H3__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("cxg2");
/* harmony import */ var components_ui_Card__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("ysMX");
/* harmony import */ var components_ui_Icon__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("LtxQ");
/* harmony import */ var components_ui_Tooltip__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("ZSfL");
/* harmony import */ var components_ui_SourceIcon_SourceIcon__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("tfIF");
/* harmony import */ var components_helpers_VerticalSpacer__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("RrxW");
/* harmony import */ var components_helpers_Space__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("YgU7");
/* harmony import */ var utils_truncate__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("wbkJ");
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("KV3C");
/* harmony import */ var utils_translations_autoCategoriesTranslation__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("e4Wn");
/* harmony import */ var utils_translations_trendTypesTranslations__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("/veU");
/* harmony import */ var _Trends_css__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("68G5");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



















var genderMapping = {
    male: {
        getName: function () { return l('Male', 'trendDetails'); },
        color: utils_colors__WEBPACK_IMPORTED_MODULE_14__/* .colors */ .Tj.blue,
    },
    female: {
        getName: function () { return l('Female', 'trendDetails'); },
        color: utils_colors__WEBPACK_IMPORTED_MODULE_14__/* .colors */ .Tj.pink,
    },
    community: {
        getName: function () { return l('Community', 'trendDetails'); },
        color: utils_colors__WEBPACK_IMPORTED_MODULE_14__/* .colors */ .Tj.amber,
    },
};
var Trend = function (_a) {
    var _b, _c, _d;
    var isDemoMode = _a.isDemoMode, withoutImage = _a.withoutImage, themeId = _a.themeId, filter = _a.filter, key = _a.key, id = _a.id, name = _a.name, sentiment = _a.sentiment, mentionsCount = _a.mentionsCount, authorsCount = _a.authorsCount, topSource = _a.topSource, topGender = _a.topGender, dates = _a.dates, engagement = _a.engagement, systemTags = _a.systemTags, trendType = _a.trendType, onClick = _a.onClick, _e = _a.onEdit, onEdit = _e === void 0 ? null : _e;
    var _f = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''), 2), image = _f[0], setImage = _f[1];
    var fetchImage = (0,hooks_useApi__WEBPACK_IMPORTED_MODULE_6__/* .useApi */ .g)(apiSingleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.mentions.gallery).fetch;
    var handleFetchImage = function () { return __awaiter(void 0, void 0, void 0, function () {
        var usedFilter, response, mentionId, mention;
        var _a;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    usedFilter = filter.copyFilter();
                    usedFilter.doAdd('trend', [id]);
                    return [4 /*yield*/, fetchImage({ themeId: themeId, filter: usedFilter, perPage: 1, page: 1 })];
                case 1:
                    response = _b.sent();
                    mentionId = response.result.mentions[0];
                    mention = (_a = response.entities.mentions) === null || _a === void 0 ? void 0 : _a[mentionId];
                    if (!mention)
                        return [2 /*return*/, null];
                    setImage(mention.imageUrl);
                    return [2 /*return*/];
            }
        });
    }); };
    var handleEdit = function (e) {
        if (!onEdit)
            return;
        e.preventDefault();
        e.stopPropagation();
        onEdit({ id: id, name: name, sentiment: sentiment });
    };
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        if (withoutImage)
            return;
        handleFetchImage();
    }, []);
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(components_ui_Card__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A, __assign({ noPadding: true, className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.card }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.trendContainer, (_b = {}, _b[_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.demoModeContainer] = isDemoMode, _b)) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.trend }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.additionalInfo, style: { borderColor: (0,utils_colors__WEBPACK_IMPORTED_MODULE_14__/* .getSentimentColor */ .HS)(sentiment) } }, { children: [trendType ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.infoBox }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", { children: (0,utils_translations_trendTypesTranslations__WEBPACK_IMPORTED_MODULE_16__/* .getTrendTypesTranslationByKey */ ._n)(trendType) }) }))) : null, !(0,lodash__WEBPACK_IMPORTED_MODULE_3__.isEmpty)(systemTags) && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.infoBox }, { children: Object.entries(systemTags)
                                            .map(function (_a) {
                                            var _b = __read(_a, 1), systemTag = _b[0];
                                            return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.nowrap) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Icon__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A, { type: systemTag, size: 13 }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_Space__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A, {}), (0,utils_translations_autoCategoriesTranslation__WEBPACK_IMPORTED_MODULE_17__/* .getAutoCategoryTranslation */ .Fj)(systemTag).label] }), systemTag));
                                        }) }))), topGender && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.infoBox }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", __assign({ style: { color: genderMapping[topGender.name].color } }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Icon__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A, { type: topGender.name, size: 14 }) })), genderMapping[topGender.name].getName()] })))] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_VerticalSpacer__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A, {}), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.container }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ onClick: function () { return (onClick ? onClick(id) : null); } }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(components_ui_H3__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A, __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.name, (_c = {}, _c[_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.clickable] = !!onClick, _c)) }, { children: [topSource && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Tooltip__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A, __assign({ text: topSource.name }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_SourceIcon_SourceIcon__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .A, { name: topSource.name }) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_Space__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A, {})] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Tooltip__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A, __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.tooltip, text: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.tooltip }, { children: name })) }, { children: (0,utils_truncate__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .A)(name, 100) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_Space__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A, {}), isDemoMode ? null : (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Icon__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A, { color: "gray", className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.edit), type: "edit", onClick: handleEdit })] })) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.trendInfo }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.mainInfo) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.dataBlock }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.data }, { children: num(mentionsCount) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.label }, { children: l('Mentions') }))] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.dataBlock }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.data }, { children: num(authorsCount) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.label }, { children: l('Authors') }))] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.dataBlock }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.data }, { children: num(engagement) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.label }, { children: l('Engagement') }))] }))] })) })) })] }))] })), image ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.imageContainer }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("img", { className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.image, (_d = {}, _d[_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.demoModeImage] = isDemoMode, _d)), src: image, alt: "" }) }))) : null] })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_4___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A.sparkline) }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(react_sparklines__WEBPACK_IMPORTED_MODULE_2__.Sparklines, __assign({ height: 20, svhHeight: 20, data: dates === null || dates === void 0 ? void 0 : dates.map(function (x) { return x.count; }) }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(react_sparklines__WEBPACK_IMPORTED_MODULE_2__.SparklinesLine, { style: { strokeWidth: 0.5, fill: (0,utils_colors__WEBPACK_IMPORTED_MODULE_14__/* .getSentimentColor */ .HS)(sentiment) } }) })) }))] }), key));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react__WEBPACK_IMPORTED_MODULE_1__.memo)(Trend));


/***/ }),

/***/ "0mf4":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var components_ui_EndorseContent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("Ig79");
/* harmony import */ var _Trend__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("Oxpf");
/* harmony import */ var _Trends_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("68G5");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

/* eslint-disable react/jsx-curly-brace-presence */





var Trends = function (_a) {
    var _b = _a.withoutImages, withoutImages = _b === void 0 ? false : _b, themeId = _a.themeId, filter = _a.filter, data = _a.data, onClick = _a.onClick, onEdit = _a.onEdit;
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.base) }, { children: data.length
            ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: _Trends_css__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.trendsContainer }, { children: data.map(function (trend) { return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_Trend__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A, __assign({ withoutImage: withoutImages, themeId: themeId, filter: filter }, trend, { onClick: onClick, onEdit: onEdit }), trend.id)); }) })))
            : ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.trendsEmptyState) }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_EndorseContent__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, { className: classnames__WEBPACK_IMPORTED_MODULE_2___default()(_Trends_css__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.endorseContent), image: "/static/images/digest_no_trends.png", message: l('There are no trends in your topic for the selected period') }) }))) })));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react__WEBPACK_IMPORTED_MODULE_1__.memo)(Trends));


/***/ }),

/***/ "3CuU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ widgets_DashboardWidget_DashboardWidget)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/state/customDashboards/selectors.ts
var selectors = __webpack_require__("z86f");
// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/EmptyChartState/index.ts + 2 modules
var EmptyChartState = __webpack_require__("bJ9l");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Card/index.ts
var Card = __webpack_require__("ysMX");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/models/CustomDashboards.ts
var CustomDashboards = __webpack_require__("svtq");
// EXTERNAL MODULE: ./src/utils/customDashboards/layout.ts
var layout = __webpack_require__("TAzt");
// EXTERNAL MODULE: ./src/utils/customDashboards/widgets.ts + 73 modules
var widgets = __webpack_require__("uIO5");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/state/modals/actions.ts
var actions = __webpack_require__("DuoS");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/containers/helpers/HistoryCollectionOptionIcon.tsx + 1 modules
var HistoryCollectionOptionIcon = __webpack_require__("8+mS");
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/components/ui/MenuItem/index.ts + 2 modules
var MenuItem = __webpack_require__("ADKe");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/components/ui/SecondaryText/index.ts + 2 modules
var SecondaryText = __webpack_require__("JSD5");
// EXTERNAL MODULE: ./src/components/ui/DropDownMenu/index.ts + 1 modules
var DropDownMenu = __webpack_require__("RWtR");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/index.js
var ChartHeader = __webpack_require__("+rhQ");
// EXTERNAL MODULE: ./src/components/other/ChartHeader/ChartHeader.js + 1 modules
var ChartHeader_ChartHeader = __webpack_require__("sCoI");
// EXTERNAL MODULE: ./src/utils/confirm.ts + 3 modules
var utils_confirm = __webpack_require__("Z9RP");
// EXTERNAL MODULE: ./src/utils/customDashboards/dates.tsx
var dates = __webpack_require__("wlTg");
// EXTERNAL MODULE: ./src/state/customDashboards/model.ts
var customDashboards_model = __webpack_require__("D6/I");
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
// EXTERNAL MODULE: ./src/models/filters/Filter.ts
var Filter = __webpack_require__("+MLa");
// EXTERNAL MODULE: ./src/components/ui/EditableElement/EditableElement.tsx + 1 modules
var EditableElement = __webpack_require__("6yp6");
// EXTERNAL MODULE: ./src/utils/customDashboards/constants.ts
var constants = __webpack_require__("7vdz");
// EXTERNAL MODULE: ./src/utils/customDashboards/segments.ts
var segments = __webpack_require__("N9LX");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/DashboardWidget.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const DashboardWidget = ({"base":"EkKaaiLu1Si7pTs5twGW","blurred":"GGq1Gj4aIZworPt5Ng7d","fullWidth":"dcVUitIiBOh7jCjLSqLU","blurredBg":"awKKVmY3ItTRmGgtPgHo","blurredBgControl":"lUjKCiLgkT7TpcsTpozZ","blurredIcon":"ldYbU3ZMIzyObPsw3zeD","isMetricsFullWidth":"VlvpqdBfhFuEKfqtmCsR","header":"dejuG7FYQ_I5JpKBCvN4","title":"pA1MlQoXj3cjaN0KV5Xj","filters":"MQZDEF3jrWB5O33BLYYJ","filterChip":"gl9M1G5TFGrltxrWqYXM","topicsContainer":"RNMXafNrxWDdmoItgP6h","topicTitle":"pi0Zen5C2E8esmdgOLCs","topicsList":"gAJdpIjJ2gEM4lxgS_qg","controls":"B4ghkRex5dZhOL59L4SG","wrapperContainer":"W3ZObgZbChr666cvZT5w","nestedControl":"yVh6ckkMZMeW__oThcSQ","delete":"TLWpAHYxBZ86R9xzPzlf","alert":"tMOYDXr9_TJjupteUzg5","sizeSelector":"Tldc5I1HfyS3d7t2FkX9","controlIcon":"NHqLP9HSsXsdjoJkALbo","configurationIcon":"l3iMU8ibSA3i8OFRZZwP","main":"pN8lfFOdb6y23ucxQjdl","widget":"NG_SknUZULmqtpXU_qNg","emptyWidget":"n2q0wl5jRpXHYTPpVBct","emptyState":"Xrg4QKWyxMPT3153yaOo","emptyStateImage":"nu5JjVGNeid9vS5XYbFY","emptyStateMessage":"NplUcubTgLfXCdjjoBEB","exportBtn":"ScaP8FjmxXracZvx4wHe","dropDownControl":"jYOP_z44e9z9c37rOKNs","bubble":"cs1cbt8HgRikKaYOjcUv"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/ WrapperHeader.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

































var FORBIDDEN_WIDGET_TYPES_FOR_EXPANDING = ['counter'];
var WrapperHeader = function (_a) {
    var _b;
    var dashboard = _a.dashboard, isEmpty = _a.isEmpty, chartInstance = _a.chartInstance, dashboardId = _a.dashboardId, widgetId = _a.widgetId, widget = _a.widget, dashboardDateRange = _a.dashboardDateRange, width = _a.width, themes = _a.themes, canAddWidget = _a.canAddWidget, canChangeWidget = _a.canChangeWidget, canRemoveWidget = _a.canRemoveWidget, isPublicDashboard = _a.isPublicDashboard, fullWidth = _a.fullWidth, dashboardFilter = _a.dashboardFilter, router = _a.router, deleteWidget = _a.deleteWidget, showModal = _a.showModal, onShowConfigurationMode = _a.onShowConfigurationMode, sendAnalyticalEvent = _a.sendAnalyticalEvent, updateWidgetName = _a.updateWidgetName;
    var _c = __read((0,react.useState)((widget === null || widget === void 0 ? void 0 : widget.name) || widgetId), 2), widgetName = _c[0], setWidgetName = _c[1];
    function getTheme(topicId) {
        return themes.find(function (topic) { return topic.id === topicId; });
    }
    var isChartExportAvailable = (0,react.useMemo)(function () { return widget.type !== CustomDashboards/* CustomDashboardWidgetType */.qP.counter; }, [widget]);
    var isExpandingAvailable = (0,react.useMemo)(function () { return !FORBIDDEN_WIDGET_TYPES_FOR_EXPANDING.includes(widget.type) && !(0,mobile/* isTabSize */.Ro)(); }, [widget]);
    var isInfoAvailable = (0,react.useMemo)(function () { return widget.type !== CustomDashboards/* CustomDashboardWidgetType */.qP.text; }, [widget]);
    var haveDuplicateAccess = canAddWidget && !isPublicDashboard;
    var haveEditAccess = canChangeWidget && !isPublicDashboard;
    var haveDeleteAccess = canRemoveWidget && !isPublicDashboard;
    var isPeriodSame = (0,segments/* isSameDateRangeInSegments */.D)(widget.segments);
    var period = (0,dates/* getDateRangeMessage */.NH)(dashboardDateRange || ((_b = widget.segments[0]) === null || _b === void 0 ? void 0 : _b.dateRange) || constants/* DEFAULT_DATE_RANGE */.Rc);
    var handleWidgetDelete = function () {
        return (0,utils_confirm/* default */.A)({
            title: ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Are you sure you want to delete the widget'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("b", { children: widget.name }), "?"] })),
            actionLabel: l('Yes, delete'),
        })
            .then(function () { return deleteWidget({ dashboardId: dashboardId, widgetId: widgetId }); })
            .catch(lodash.noop);
    };
    var handleWidgetUpdate = function () {
        var _a;
        var isFilterConfigured = !(dashboardFilter === null || dashboardFilter === void 0 ? void 0 : dashboardFilter.isEmpty()) && !(dashboardFilter === null || dashboardFilter === void 0 ? void 0 : dashboardFilter.equals(Filter/* Filter */.dJ.fromApi((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.filter), true));
        var confirmation = isFilterConfigured
            ? (0,utils_confirm/* default */.A)({
                title: l('Clear dashboard filters to update the widget'),
                actionLabel: l('Clear filters and continue'),
            })
            : Promise.resolve('');
        confirmation
            .then(function () {
            router.push({ pathname: "/dashboards/".concat(dashboardId, "/edit/").concat(widgetId) });
        })
            .catch(lodash.noop);
    };
    var handleWidgetDuplicate = function () {
        router.push({ pathname: "/dashboards/".concat(dashboardId, "/new"), state: { config: widget } });
    };
    var handleExpand = function () {
        showModal(layout/* CUSTOM_DASHBOARD_WIDGET_MODAL_ID */.u6, { dashboardId: dashboardId, widgetId: widgetId });
    };
    var handleChangeName = function (name) {
        updateWidgetName({ dashboardId: dashboardId, widgetId: widgetId, name: name });
        setWidgetName(name);
    };
    var onWidgetChartExport = function (_a) {
        var fileType = _a.fileType;
        sendAnalyticalEvent({
            eventType: 'Custom dashboards: widget chart exported',
            properties: {
                widgetName: widget.name,
                widgetType: widget.type,
                comparison: widget.segments.length > 1,
                filters: widget.segments.map(function (v) { return v.filter; }),
                dashboardFilter: dashboardFilter.toEvent(),
                fileType: fileType,
            },
        });
    };
    function renderHeader() {
        var _a, _b;
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.header) }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, __assign({ textTooltip: widgetName, className: classnames_default()(DashboardWidget.title) }, { children: (0,jsx_runtime.jsx)(EditableElement/* default */.A, __assign({ withIconEdit: true, onChange: handleChangeName }, { children: widgetName })) })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.controls) }, { children: [!fullWidth && isExpandingAvailable && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(DashboardWidget.control, (_a = {}, _a[DashboardWidget.fullWidth] = fullWidth, _a)) }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "expand", color: "default", size: "large", tooltip: l('Full Screen View'), className: classnames_default()(DashboardWidget.controlIcon), onClick: handleExpand }) }))), isChartExportAvailable && !isPublicDashboard && !isEmpty && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(DashboardWidget.control, (_b = {}, _b[DashboardWidget.fullWidth] = fullWidth, _b)) }, { children: (0,jsx_runtime.jsx)(ChartHeader/* default */.A, { className: classnames_default()(DashboardWidget.exportBtn), avoidOptions: [ChartHeader_ChartHeader/* EXPORT_TYPES */.l.PRINT], trigger: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "download", color: "default", size: "large", tooltip: l('Export'), className: classnames_default()(DashboardWidget.controlIcon) }), chartRef: chartInstance, onChartExport: onWidgetChartExport }) }))), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(DashboardWidget.control) }, { children: (0,jsx_runtime.jsxs)(DropDownMenu/* default */.A, __assign({ component: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(DashboardWidget.dropDownControl) }, { children: (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "dots", color: "default", size: "large", tooltip: l('More'), className: classnames_default()(DashboardWidget.controlIcon) }) })), position: "bottom right" }, { children: [haveEditAccess && ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.nestedControl) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "edit", color: "default", size: "large", className: classnames_default()(DashboardWidget.controlIcon) }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("p", { children: l('Edit') })] })), onSelect: handleWidgetUpdate })), isInfoAvailable && ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.nestedControl) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "info-outline", color: "default", size: "large", className: classnames_default()(DashboardWidget.controlIcon) }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("p", { children: l('Info') })] })), onSelect: onShowConfigurationMode })), haveDuplicateAccess && ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.nestedControl) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "duplicate", color: "default", size: "large", className: classnames_default()(DashboardWidget.controlIcon) }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("p", { children: l('Duplicate') })] })), onSelect: handleWidgetDuplicate })), haveDeleteAccess && ((0,jsx_runtime.jsx)(MenuItem/* default */.A, { label: (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.nestedControl, DashboardWidget.delete) }, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "delete", color: "red", size: "large", className: classnames_default()(DashboardWidget.controlIcon) }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("p", { children: l('Delete') })] })), onSelect: handleWidgetDelete }))] })) }))] }))] })));
    }
    function renderFilters() {
        var _a;
        if (widget.type === CustomDashboards/* CustomDashboardWidgetType */.qP.text)
            return null;
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(DashboardWidget.filters) }, { children: [isPeriodSame || !!dashboardDateRange ? (period && (0,jsx_runtime.jsx)(SecondaryText/* default */.A, __assign({ className: classnames_default()(DashboardWidget.filterChip) }, { children: period }))) : ((0,jsx_runtime.jsx)(SecondaryText/* default */.A, { children: l('Different periods are compared') })), width === 1 && (0,jsx_runtime.jsx)("br", {}), !isPublicDashboard && ((0,jsx_runtime.jsx)(SecondaryText/* default */.A, __assign({ className: classnames_default()(DashboardWidget.filterChip) }, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: DashboardWidget.topicsContainer }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: DashboardWidget.topicTitle }, { children: [l('Topic'), ":"] })), (0,jsx_runtime.jsx)("div", __assign({ className: DashboardWidget.topicsList }, { children: (_a = widget.segments) === null || _a === void 0 ? void 0 : _a.map(function (segment, index) {
                                    var theme = getTheme(segment === null || segment === void 0 ? void 0 : segment.topicId);
                                    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicScaleIcon */.Hi, { topic: theme }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicSamplingIcon */.I$, { topic: theme }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(HistoryCollectionOptionIcon/* TopicFilterIcon */.$2, { topic: theme }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", { children: theme === null || theme === void 0 ? void 0 : theme.name }), index !== widget.segments.length - 1 && (0,jsx_runtime.jsx)("span", { children: "," })] }, index));
                                }) }))] })) })))] })));
    }
    return ((0,jsx_runtime.jsxs)("div", { children: [renderHeader(), renderFilters()] }));
};
/* harmony default export */ const _WrapperHeader = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        themes: (0,themes_selectors/* getThemesWithoutStats */.aj)(state),
        dashboardDateRange: (0,selectors/* getCustomDashboardDateRange */.jV)(dashboardId)(state),
        canAddWidget: (0,selectors/* canCreateWidget */.Jw)(dashboardId)(state),
        canChangeWidget: (0,selectors/* canEditWidget */.$r)(dashboardId, widgetId)(state),
        canRemoveWidget: (0,selectors/* canDeleteWidget */.UE)(dashboardId, widgetId)(state),
        dashboardFilter: (0,selectors/* getCustomDashboardFilter */.ep)(dashboardId)(state),
        dashboard: (0,selectors/* getCustomDashboard */.o$)(dashboardId)(state),
        widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
    });
}, {
    updateWidgetName: customDashboards_model/* customDashboardsModel */.i.action.updateWidgetName,
    deleteWidget: customDashboards_model/* customDashboardsModel */.i.action.deleteCustomDashboardWidget,
    showModal: actions/* showModal */.to,
    sendAnalyticalEvent: model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(WrapperHeader));

// EXTERNAL MODULE: ./src/containers/filters/FilterChipPanel/FilterChipPanel.tsx + 1 modules
var FilterChipPanel = __webpack_require__("6hzH");
// EXTERNAL MODULE: ./src/containers/customDashboard/components/DatesFilterChip/index.ts + 2 modules
var DatesFilterChip = __webpack_require__("Wdgh");
// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboardWidgetConstructor/components/Constructor/components/MentionsSortOrderControl/utils.ts
var utils = __webpack_require__("k3Hp");
// EXTERNAL MODULE: ./src/hooks/useFacetsContext.tsx
var useFacetsContext = __webpack_require__("56YP");
// EXTERNAL MODULE: ./src/components/ui/Label/index.ts + 2 modules
var Label = __webpack_require__("HiCK");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/ConfigurationMode.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const ConfigurationMode = ({"base":"tFtsaO4C2gW6OE3_hhrw","header":"h3SBOPHEnCoVuqQu7zcf","title":"OSZTAQWu6vxediHH7CQL","main":"RPT3vD2Sb5R3Z45vt2FR","closeIcon":"IuNspgwCFiAxFN3_8hxw","characteristic":"sUfDO0Rg0AR1U_Yfl5nt","filtersContainer":"sLUIR7drtOX8JGm5qfjV","topicName":"y_FRJxdb5ehJi8tsUve0"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/ConfigurationMode.tsx
var ConfigurationMode_assign = (undefined && undefined.__assign) || function () {
    ConfigurationMode_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ConfigurationMode_assign.apply(this, arguments);
};











// eslint-disable-next-line max-len




var ConfigurationMode_ConfigurationMode = function (_a) {
    var _b, _c, _d;
    var widget = _a.widget, dashboardFilter = _a.dashboardFilter, themes = _a.themes, showTopicName = _a.showTopicName, onClose = _a.onClose;
    function getThemeName(topicId) {
        var _a;
        return (_a = themes.find(function (topic) { return topic.id === topicId; })) === null || _a === void 0 ? void 0 : _a.name;
    }
    return ((0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.base) }, { children: [(0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.header) }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.title) }, { children: l('Widget configuration') })), (0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "chart-line", size: "large", className: classnames_default()(ConfigurationMode.closeIcon), tooltip: l('Show chart'), onClick: onClose })] })), (0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.main) }, { children: [(0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.characteristics) }, { children: [(0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.characteristic) }, { children: [l('Title'), ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), widget.name] })), ((_b = widget.aggregationOptions) === null || _b === void 0 ? void 0 : _b.size) && ((0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.characteristic) }, { children: [l('Count'), ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), widget.aggregationOptions.size] }))), ((_c = widget.aggregationOptions) === null || _c === void 0 ? void 0 : _c.orderBy) && ((0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.characteristic) }, { children: [l('Sort'), ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,utils/* getMentionsSortOptions */.W)().find(function (m) { return m.value === widget.aggregationOptions.orderBy; }).label] })))] })), (0,jsx_runtime.jsx)("div", { children: (_d = widget === null || widget === void 0 ? void 0 : widget.segments) === null || _d === void 0 ? void 0 : _d.map(function (segment, index) {
                            var filter = Filter/* Filter */.dJ.merge(Filter/* Filter */.dJ.fromApi(segment.filter), dashboardFilter);
                            return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: classnames_default()(ConfigurationMode.topicName) }, { children: [l('Topic'), " ", index + 1, ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", { children: showTopicName && getThemeName(segment === null || segment === void 0 ? void 0 : segment.topicId) })] })), filter.hasVisibleChips() && ((0,jsx_runtime.jsx)(useFacetsContext/* FacetsProvider */.A, { children: (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: ConfigurationMode.filtersContainer }, { children: [(0,jsx_runtime.jsxs)(Label/* default */.A, { children: [l('Filters'), ":"] }), (0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(FilterChipPanel/* default */.A, { compactInFilterGroup: true, filter: filter, topicId: segment.topicId }) })] })) }) })), (0,jsx_runtime.jsxs)("div", ConfigurationMode_assign({ className: ConfigurationMode.filtersContainer }, { children: [(0,jsx_runtime.jsxs)(Label/* default */.A, { children: [l('Date range'), ":"] }), (0,jsx_runtime.jsx)(DatesFilterChip/* default */.A, { dateRange: segment.dateRange })] }))] }, segment.key));
                        }) })] }))] })));
};
/* harmony default export */ const DashboardWidget_ConfigurationMode = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        dashboardFilter: (0,selectors/* getCustomDashboardFilter */.ep)(dashboardId)(state),
        widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
        themes: (0,themes_selectors/* getManagedThemes */.Gl)(state),
        showTopicName: !(0,selectors/* getIsPublicDashboard */.CP)(state),
    });
})(ConfigurationMode_ConfigurationMode));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/useChartUpdate.ts
var useChartUpdate_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

var useChartUpdate = function (_a) {
    var containerRef = _a.containerRef, chartInstance = _a.chartInstance, width = _a.width;
    var _b = useChartUpdate_read((0,react.useState)(null), 2), widgetWidth = _b[0], setWidgetWidth = _b[1];
    var _c = useChartUpdate_read((0,react.useState)(null), 2), shouldRedraw = _c[0], setShouldRedraw = _c[1];
    (0,react.useEffect)(function () {
        if (containerRef.current && shouldRedraw && chartInstance) {
            var containerWidth = containerRef.current.clientWidth;
            chartInstance.update({ chart: { width: containerWidth } });
            setShouldRedraw(false);
        }
    }, [containerRef, shouldRedraw, chartInstance]);
    (0,react.useEffect)(function () {
        if (widgetWidth && widgetWidth !== width) {
            setShouldRedraw(true);
        }
        setWidgetWidth(width);
    }, [width]);
};
/* harmony default export */ const DashboardWidget_useChartUpdate = (useChartUpdate);

// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/utils.ts
var widgets_utils = __webpack_require__("ekcE");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/DashboardWidget.tsx
var DashboardWidget_assign = (undefined && undefined.__assign) || function () {
    DashboardWidget_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return DashboardWidget_assign.apply(this, arguments);
};
var DashboardWidget_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

















var DashboardWidget_DashboardWidget = function (_a) {
    var _b;
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId, widget = _a.widget, columns = _a.columns, rows = _a.rows, data = _a.data, loading = _a.loading, error = _a.error, columnsCount = _a.columnsCount, blurred = _a.blurred, isAvailable = _a.isAvailable, fullWidth = _a.fullWidth, isPublicDashboard = _a.isPublicDashboard;
    if (!CustomDashboards/* CustomDashboardWidgetType */.qP[widget.type]) {
        throw Error("Invalid config: there is no widget with type ".concat(widget.type));
    }
    var _c = DashboardWidget_read((0,react.useState)(null), 2), chartInstance = _c[0], setChartInstance = _c[1];
    var _d = DashboardWidget_read((0,react.useState)(false), 2), isConfigurationMode = _d[0], setIsConfigurationMode = _d[1];
    var containerRef = (0,react.useRef)();
    DashboardWidget_useChartUpdate({
        chartInstance: chartInstance,
        containerRef: containerRef,
        width: columns,
    });
    var isEmpty = (0,react.useMemo)(function () {
        var _a, _b, _c, _d, _e;
        var lines = (0,widgets_utils/* getChartLines */.WS)(data === null || data === void 0 ? void 0 : data.chart);
        var countries = ((_a = data === null || data === void 0 ? void 0 : data.chart) === null || _a === void 0 ? void 0 : _a.countries) || [];
        var words = (_b = data === null || data === void 0 ? void 0 : data.chart) === null || _b === void 0 ? void 0 : _b.words;
        var items = (_c = data === null || data === void 0 ? void 0 : data.chart) === null || _c === void 0 ? void 0 : _c.items;
        var trends = ((_d = data === null || data === void 0 ? void 0 : data.chart) === null || _d === void 0 ? void 0 : _d.trends) || [];
        var phrases = ((_e = data === null || data === void 0 ? void 0 : data.chart) === null || _e === void 0 ? void 0 : _e.phrases) || [];
        return (!loading
            && !error
            && (!lines.length || lines.every(function (line) { var _a; return !((_a = line === null || line === void 0 ? void 0 : line.points) === null || _a === void 0 ? void 0 : _a.length); }))
            && (!countries.length)
            && (!trends.length)
            && (!phrases.length)
            && (!words || Object.values(words).every(function (w) { return w.length === 0; }))
            && (!items)
            && widget.type !== CustomDashboards/* CustomDashboardWidgetType */.qP.text);
    }, [loading, error, data]);
    var widgetWrapperHeight = (0,react.useMemo)(function () {
        return (fullWidth
            ? "".concat(layout/* FULL_WIDTH_WIDGET_HEIGHT */.My, "px")
            : "".concat(rows * layout/* LAYOUT_ROW_HEIGHT */.Mk + (rows - 1) * layout/* LAYOUT_MARGIN */.O7, "px"));
    }, [rows, fullWidth]);
    var onWidgetConfigurationClose = function () { return setIsConfigurationMode(false); };
    var onWidgetConfigurationShow = function () { return setIsConfigurationMode(true); };
    var isMetricsFullWidth = fullWidth
        || ([CustomDashboards/* CustomDashboardWidgetType */.qP.counter].includes(widget === null || widget === void 0 ? void 0 : widget.type) && columns === columnsCount);
    function renderContent() {
        var _a;
        if (!isAvailable || (error === null || error === void 0 ? void 0 : error.message) === 'Topic not found') {
            return ((0,jsx_runtime.jsxs)("div", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.emptyStateContent) }, { children: [(0,jsx_runtime.jsx)("img", { src: "/static/images/404.svg", className: classnames_default()(DashboardWidget.emptyStateImage), alt: "404" }), (0,jsx_runtime.jsx)("p", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.emptyStateMessage) }, { children: l("You can't access this widget because the topic can’t be found") }))] })));
        }
        if (error) {
            var errorMsg = (error === null || error === void 0 ? void 0 : error.errorCode) === 'TOO_MUCH_DATA'
                ? l('Too much data. Choose a shorter period or fewer groups') : l('An error has occurred');
            return ((0,jsx_runtime.jsx)("div", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.emptyStateContent) }, { children: (0,jsx_runtime.jsx)("p", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.emptyStateMessage) }, { children: errorMsg })) })));
        }
        var WidgetComponent = widgets/* WIDGET_COMPONENT */.x[widget.type];
        return ((0,jsx_runtime.jsx)("div", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.widget, (_a = {}, _a[DashboardWidget.emptyWidget] = isEmpty, _a)), ref: containerRef }, { children: isEmpty
                ? (0,jsx_runtime.jsx)(EmptyChartState/* default */.A, { isPublic: isPublicDashboard })
                : ((0,jsx_runtime.jsx)(WidgetComponent, { dashboardId: dashboardId, widgetId: widgetId, width: columns, height: rows, setChartInstance: setChartInstance })) })));
    }
    return ((0,jsx_runtime.jsxs)(Card/* default */.A, DashboardWidget_assign({ className: classnames_default()(DashboardWidget.wrapperContainer, DashboardWidget.base, (_b = {},
            _b[DashboardWidget.blurred] = blurred,
            _b[DashboardWidget.isMetricsFullWidth] = isMetricsFullWidth,
            _b[DashboardWidget.fullWidth] = fullWidth,
            _b)), style: widgetWrapperHeight ? { height: widgetWrapperHeight } : null }, { children: [(0,jsx_runtime.jsx)(Loader/* default */.A, DashboardWidget_assign({ loaded: !loading }, { children: isConfigurationMode ? ((0,jsx_runtime.jsx)(DashboardWidget_ConfigurationMode, { dashboardId: dashboardId, widgetId: widgetId, onClose: onWidgetConfigurationClose })) : ((0,jsx_runtime.jsxs)("div", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.main) }, { children: [(0,jsx_runtime.jsx)(_WrapperHeader, { isPublicDashboard: isPublicDashboard, chartInstance: chartInstance, dashboardId: dashboardId, fullWidth: fullWidth, isEmpty: isEmpty, widgetId: widgetId, width: columns, onShowConfigurationMode: onWidgetConfigurationShow }), renderContent()] }))) })), blurred && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", { className: classnames_default()(DashboardWidget.blurredBg) }), (0,jsx_runtime.jsx)("div", DashboardWidget_assign({ className: classnames_default()(DashboardWidget.blurredBgControl) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "arrow-all", size: 64, className: classnames_default()(DashboardWidget.blurredIcon) }) }))] }))] })));
};
/* harmony default export */ const widgets_DashboardWidget_DashboardWidget = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        loading: (0,selectors/* isDashboardWidgetStatisticsLoading */.C0)(dashboardId, widgetId)(state),
        error: (0,selectors/* getDashboardWidgetStatisticsError */.mU)(dashboardId, widgetId)(state),
        data: (0,selectors/* getDashboardWidgetStatisticsData */.Qe)(dashboardId, widgetId)(state),
        columnsCount: (0,selectors/* getCustomDashboardColumnsCount */.CN)(dashboardId)(state),
        isAvailable: (0,selectors/* isWidgetAvailable */.kn)(dashboardId, widgetId)(state),
        isPublicDashboard: (0,selectors/* getIsPublicDashboard */.CP)(state),
    });
})((0,react.memo)(DashboardWidget_DashboardWidget)));


/***/ }),

/***/ "bJ9l":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ EmptyChartState_EmptyChartState)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/EndorseContent/index.ts
var EndorseContent = __webpack_require__("Ig79");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/EmptyChartState/EmptyChartState.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const EmptyChartState = ({"base":"uEBWTedlDVazOxcZeClu"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/EmptyChartState/EmptyChartState.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var EmptyState = function (_a) {
    var _b = _a.isPublic, isPublic = _b === void 0 ? false : _b;
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(EmptyChartState.base) }, { children: (0,jsx_runtime.jsx)(EndorseContent/* default */.A, { large: true, image: "/static/images/custom-dashboards/preview_empty_state_no data.png", title: isPublic
                ? l('Selected data can’t be found in your topic.')
                : "".concat(l('Selected data can’t be found in your topic.'), " ").concat(l('Choose another data type in the settings.')) }) })));
};
/* harmony default export */ const EmptyChartState_EmptyChartState = (EmptyState);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/EmptyChartState/index.ts



/***/ }),

/***/ "ekcE":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   IB: () => (/* binding */ getPointName),
/* harmony export */   Jw: () => (/* binding */ getSeriesName),
/* harmony export */   Mw: () => (/* binding */ getSeriesDimension),
/* harmony export */   OG: () => (/* binding */ getPointsDimension),
/* harmony export */   Tm: () => (/* binding */ getWidgetExportingOptions),
/* harmony export */   WR: () => (/* binding */ getChartHeight),
/* harmony export */   WS: () => (/* binding */ getChartLines),
/* harmony export */   aZ: () => (/* binding */ matchSortingSegmentLines),
/* harmony export */   ap: () => (/* binding */ getWidgetAxisLabelConfig),
/* harmony export */   bW: () => (/* binding */ getCategories),
/* harmony export */   cz: () => (/* binding */ WIDGET_LABELS_CONFIG),
/* harmony export */   mb: () => (/* binding */ WIDGET_LEGEND_CONFIG),
/* harmony export */   u0: () => (/* binding */ getHistograms),
/* harmony export */   uX: () => (/* binding */ shouldShowLegend),
/* harmony export */   zA: () => (/* binding */ getSegmentsDimension)
/* harmony export */ });
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("PQko");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("1ihG");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("H+Wd");
/* harmony import */ var colorHandler__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("MShE");
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KV3C");
/* harmony import */ var utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("TAzt");
/* harmony import */ var utils_translations_aggregationMetricTranslations__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("ZFgV");
/* harmony import */ var utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("xTZp");
/* harmony import */ var utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("ZcyI");
/* harmony import */ var models_Aggregation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("ttpX");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("9jXX");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};









var shouldShowLegend = function (series) { return __spreadArray([], __read(new Set(series.map(function (_a) {
    var name = _a.name;
    return name;
}))), false).length > 1; };
var mapDate = function (date, isMonth) {
    var stringFormat = isMonth ? 'MMMM' : 'dd MMMM';
    var parsedDate = typeof date === 'string' ? (0,date_fns__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A)((0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_6__/* .createDateWithoutTimeZone */ .OC)(date)) : (0,date_fns__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A)(date);
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(parsedDate, stringFormat);
    // dateFormat('%e %b %y %H:%M', +new Date(date.toString()));
};
var getPointName = function (x, entities, widget, seriesName) {
    var _a, _b, _c, _d, _e;
    var isDate = (((_a = widget === null || widget === void 0 ? void 0 : widget.dimension1) === null || _a === void 0 ? void 0 : _a.type) === 'date' || ((_b = widget === null || widget === void 0 ? void 0 : widget.dimension2) === null || _b === void 0 ? void 0 : _b.type) === 'date')
        && (0,date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A)(new Date(x === null || x === void 0 ? void 0 : x.toString()));
    var isMonth = isDate && (((_c = widget === null || widget === void 0 ? void 0 : widget.dimension1) === null || _c === void 0 ? void 0 : _c.timeInterval) === models_Aggregation__WEBPACK_IMPORTED_MODULE_5__/* .DateInterval */ .Sq.Month || ((_d = widget === null || widget === void 0 ? void 0 : widget.dimension2) === null || _d === void 0 ? void 0 : _d.timeInterval) === models_Aggregation__WEBPACK_IMPORTED_MODULE_5__/* .DateInterval */ .Sq.Month);
    return ((0,utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_4__/* .getAlias */ .bd)(widget, x, { isDate: isDate, isMonth: isMonth })
        || ((_e = entities === null || entities === void 0 ? void 0 : entities.find(function (entity) { var _a; return ((_a = entity.id) === null || _a === void 0 ? void 0 : _a.toString()) === (x === null || x === void 0 ? void 0 : x.toString()); })) === null || _e === void 0 ? void 0 : _e.name)
        || (isDate && mapDate(x, isMonth))
        || (!!x && (0,utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_3__/* .translate */ .Tl)(x === null || x === void 0 ? void 0 : x.toString()))
        || seriesName);
};
var getCategories = function (lines, entities, widget) {
    if (widget.segments.length > 1) {
        return getCategoriesForMultiSegments(lines, entities, widget);
    }
    return getCategoriesForOneSegment(lines, entities, widget);
};
var getCategoriesForOneSegment = function (lines, entities, widget) {
    var pointSet = __spreadArray([], __read(new Set(lines.map(function (_a) {
        var points = _a.points;
        return points.map(function (_a) {
            var x = _a.x;
            return x;
        });
    }).flat())), false);
    var categories = pointSet === null || pointSet === void 0 ? void 0 : pointSet.map(function (point) { return getPointName(point, entities, widget, null); }).filter(Boolean);
    return categories.length ? categories : null;
};
var getCategoriesForMultiSegments = function (lines, entities, widget) {
    var _a;
    var pointSet = (_a = lines[0]) === null || _a === void 0 ? void 0 : _a.points.map(function (_a) {
        var x = _a.x;
        return x;
    }).flat();
    var categories = pointSet === null || pointSet === void 0 ? void 0 : pointSet.map(function (point) { return getPointName(point, entities, widget, null); }).filter(Boolean);
    return (categories === null || categories === void 0 ? void 0 : categories.length) ? categories : null;
};
var WIDGET_LABELS_CONFIG = {
    style: {
        fontFamily: '"Twemoji Country Flags", "Helvetica Neue", sans-serif',
        fontSize: '14px',
        fontWeight: 'normal',
    },
};
var getWidgetAxisLabelConfig = function () { return ({
    style: {
        fontSize: '12px',
        fontWeight: 'normal',
        color: (0,utils_colors__WEBPACK_IMPORTED_MODULE_1__/* .getColorsByTheme */ .hx)().secondaryTextColor,
    },
}); };
var WIDGET_LEGEND_CONFIG = {
    itemStyle: {
        fontFamily: '"Twemoji Country Flags", "Helvetica Neue", sans-serif',
        fontSize: '14px',
        fontWeight: 'normal',
    },
};
var getSeriesDimension = function (widget) {
    var _a, _b;
    return ((_a = widget.dimension1) === null || _a === void 0 ? void 0 : _a.type) === 'sentimentAspects'
        ? 'aspects'
        : (_b = widget.dimension1) === null || _b === void 0 ? void 0 : _b.type;
};
var getPointsDimension = function (widget) {
    var _a, _b, _c, _d;
    return ((_b = (_a = widget.dimension2) === null || _a === void 0 ? void 0 : _a.type) !== null && _b !== void 0 ? _b : (_c = widget.dimension1) === null || _c === void 0 ? void 0 : _c.type) === 'sentimentAspects'
        ? 'sentiment'
        : (_d = widget.dimension2) === null || _d === void 0 ? void 0 : _d.type;
};
var getSegmentsDimension = function (widget) {
    var _a, _b;
    return ((_a = widget.segments) === null || _a === void 0 ? void 0 : _a.length) > 1 && !widget.dimension1 && !widget.dimension2
        ? 'topics'
        : (_b = widget.dimension1) === null || _b === void 0 ? void 0 : _b.type;
};
var getSeriesName = function (id, entities, widget) {
    var _a;
    var _b = widget || {}, aggregationMetric = _b.aggregationMetric, dimension1 = _b.dimension1, dimension2 = _b.dimension2;
    var isDate = ((dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.type) === 'date' || (dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.type) === 'date') && (0,date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A)(new Date(id === null || id === void 0 ? void 0 : id.toString()));
    var isMonth = isDate && ((dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.timeInterval) === models_Aggregation__WEBPACK_IMPORTED_MODULE_5__/* .DateInterval */ .Sq.Month || (dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.timeInterval) === models_Aggregation__WEBPACK_IMPORTED_MODULE_5__/* .DateInterval */ .Sq.Month);
    return ((0,utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_4__/* .getAlias */ .bd)(widget, id, { isDate: isDate, isMonth: isMonth })
        || ((_a = entities === null || entities === void 0 ? void 0 : entities.find(function (entity) { var _a; return ((_a = entity.id) === null || _a === void 0 ? void 0 : _a.toString()) === (id === null || id === void 0 ? void 0 : id.toString()); })) === null || _a === void 0 ? void 0 : _a.name)
        || (isDate && mapDate(id, isMonth))
        || (!!id && (0,utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_3__/* .translate */ .Tl)(id.toString()))
        || (0,utils_translations_aggregationMetricTranslations__WEBPACK_IMPORTED_MODULE_10__/* .translateAggregationMetric */ .p)(aggregationMetric)
        || 'series');
};
var getChartHeight = function (height, fullWidth) {
    return fullWidth ? utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_2__/* .FULL_WIDTH_WIDGET_CHART_HEIGHT */ .vS : utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_2__/* .WIDGET_CHART_HEIGHT */ .mc * height + (height - 1) * utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_2__/* .LAYOUT_MARGIN */ .O7;
};
var getWidgetExportingOptions = function (widget) {
    var _a;
    return ({
        exporting: {
            filename: (_a = widget.name) === null || _a === void 0 ? void 0 : _a.replace(/\s+/g, '_'),
            chartOptions: {
                title: {
                    text: widget.name,
                    style: {
                        color: (0,colorHandler__WEBPACK_IMPORTED_MODULE_0__/* .isDarkTheme */ .g4)() ? 'white' : (0,utils_colors__WEBPACK_IMPORTED_MODULE_1__/* .getColorsByTheme */ .hx)().textColor,
                    },
                },
            },
            tableCaption: widget.name,
        },
    });
};
var getChartLines = function (chart) { var _a; return ((_a = chart === null || chart === void 0 ? void 0 : chart.lines) !== null && _a !== void 0 ? _a : ((chart === null || chart === void 0 ? void 0 : chart.line) ? [chart.line] : [])).filter(Boolean); };
var getHistograms = function (chart, widget) {
    var _a;
    var dimension1 = widget.dimension1, dimension2 = widget.dimension2, segments = widget.segments;
    if (segments.length > 1 && !dimension1 && !dimension2) {
        return getHistogramForMultiSegments(chart);
    }
    return getHistogramForOneSegments(chart, dimension1, ((_a = chart === null || chart === void 0 ? void 0 : chart.lines) === null || _a === void 0 ? void 0 : _a.length) > 1);
};
var getHistogramForOneSegments = function (chart, dimension1, showLineKey) {
    var lines = getChartLines(chart);
    var pointSet = __spreadArray([], __read(new Set(lines.map(function (_a) {
        var points = _a.points;
        return points.map(function (_a) {
            var x = _a.x;
            return x;
        });
    }).flat())), false);
    if ((dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.type) === 'sentimentAspects') {
        return lines;
    }
    return pointSet.map(function (point) {
        return {
            key: point,
            points: lines.map(function (line) {
                var linePoint = line.points.find(function (p) { return p.x === point; });
                return {
                    x: line.key,
                    y: linePoint ? linePoint.y : 0,
                };
            }),
            otherCount: 0,
        };
    });
};
var getHistogramForMultiSegments = function (chart) {
    var lines = getChartLines(chart);
    var pointSet = lines[0].points.map(function (_a) {
        var x = _a.x;
        return x;
    }).flat();
    return pointSet.map(function (point) {
        return {
            key: point,
            points: lines.map(function (line) {
                var linePoint = line.points.find(function (p) { return p.x === point; });
                return {
                    x: line.key,
                    y: linePoint ? linePoint.y : 0,
                };
            }),
            otherCount: 0,
        };
    });
};
var matchSortingSegmentLines = function (lines) {
    var order = __spreadArray([], __read(new Set(lines.map(function (line) { return line.points.map(function (p) { return p.x; }); }).flat())), false);
    return lines.map(function (line) { return (__assign(__assign({}, line), { points: order.map(function (x) {
            var item = line.points.find(function (p) { return p.x === x; });
            return (item !== null && item !== void 0 ? item : {
                x: x,
                y: 0,
            });
        }) })); });
};


/***/ }),

/***/ "LEVl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var components_ui_TextField__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("C4iS");
/* harmony import */ var components_ui_Label__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("HiCK");
/* harmony import */ var _Constructor_less__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("G1t1");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var NameField = function (_a) {
    var value = _a.value, onChange = _a.onChange;
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Label__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_Constructor_less__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.label), required: true }, { children: l('Dashboard name') })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_TextField__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A, { fullWidth: true, autoFocus: true, required: true, size: "large", className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_Constructor_less__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.inputControl), inputClassName: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_Constructor_less__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.name), placeholder: l('Name your dashboard', 'dashboardConstructor'), value: value, onChange: onChange })] }));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NameField);


/***/ }),

/***/ "BIvI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   X: () => (/* binding */ getDashboardTemplateConfig),
/* harmony export */   y: () => (/* binding */ getTemplatesConfig)
/* harmony export */ });
/* harmony import */ var models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("svtq");
/* harmony import */ var colorHandler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("MShE");
/* harmony import */ var models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("NLA2");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("+MLa");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/* eslint-disable max-len */




var oneOf = function (field, values) { return new models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_2__/* .ListFilterGroup */ .II(field, 'oneOf', values, true); };
var notOneOf = function (field, values) { return new models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_2__/* .ListFilterGroup */ .II(field, 'notOneOf', values, true); };
var segmentFilter = function () {
    var groups = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        groups[_i] = arguments[_i];
    }
    return new models_filters_Filter__WEBPACK_IMPORTED_MODULE_3__/* .Filter */ .dJ({ deleted: false, op: 'and', filterGroups: groups });
};
var segmentDateRange = function () { return ({
    from: '-30d',
    type: 'relative',
}); };
function getSegments(topicIds, segmentConfig) {
    if (segmentConfig === void 0) { segmentConfig = {}; }
    return topicIds.map(function (id) { return (__assign(__assign({}, segmentConfig), { key: id.toString(), topicId: id, dateRange: {
            from: '-30d',
            type: 'relative',
        } })); });
}
var getTemplatesConfig = function () {
    var _a;
    return (_a = {},
        _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardTemplates */ .Vs.AnalyticsReport] = {
            title: l('General Analytics'),
            subtitle: l('A general analytical report on the data for your topic. Collect the main graphs and indicators in one dashboard.'),
            imageSrc: (0,colorHandler__WEBPACK_IMPORTED_MODULE_1__/* .isDarkTheme */ .g4)()
                ? '/static/images/custom-dashboards/templates/GeneralAnalyticsDark.png'
                : '/static/images/custom-dashboards/templates/GeneralAnalytics.png',
            layout: [
                ['widget-2701237431', 'widget-2914073941', 'widget-3998021334'],
                ['widget-2717579900', 'widget-2717579900', 'widget-2717579900'],
                ['widget-2717579900', 'widget-2717579900', 'widget-2717579900'],
                ['widget-4269330035', 'widget-4269330035', 'widget-1630733779'],
                ['widget-4269330035', 'widget-4269330035', 'widget-1630733779'],
                ['widget-2632246004', 'widget-2632246004', 'widget-1778881596'],
                ['widget-2632246004', 'widget-2632246004', 'widget-1778881596'],
                ['widget-3955478292', 'widget-3662243025', 'widget-3662243025'],
                ['widget-3955478292', 'widget-3662243025', 'widget-3662243025'],
                ['widget-3729851804', 'widget-1880973213', 'widget-1880973213'],
                ['widget-3729851804', 'widget-1880973213', 'widget-1880973213']
            ],
            withTwoTopics: false,
            previewCardImageSrc: '/static/images/custom-dashboards/preview-cards/general_analytics.svg',
            getWidgetsConfig: function (topicId) {
                return [
                    {
                        id: 'widget-2717579900',
                        name: l('Mention Volume', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-2701237431',
                        name: l('Total mentions', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3998021334',
                        name: l('Total Authors', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'authorsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-2914073941',
                        name: l('Total Sources', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'sourcesCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-1630733779',
                        name: l('Top 30 Mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 30,
                            orderBy: 'engagement',
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-4269330035',
                        name: l('Frequent Words', 'customDashboardsTemplate'),
                        type: 'wordCloud',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-2632246004',
                        name: l('Top 30 Authors', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'authors',
                            size: 30,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3662243025',
                        name: l('Sentiment Over Time', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 3,
                        },
                        dimension2: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3955478292',
                        name: l('Sentiment Distribution', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-1880973213',
                        name: l('Top 10 Sources', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 10,
                        },
                        dimension2: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3729851804',
                        name: l('Sources Distribution', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 10,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-1778881596',
                        name: l('Top 30 Authors by Sentiment', 'customDashboardsTemplate'),
                        type: 'stackedBar',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'authors',
                            size: 30,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    }
                ];
            },
        },
        _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardTemplates */ .Vs.BrandHealth] = {
            getWidgetsConfig: function (topicId) {
                return [
                    {
                        id: 'widget-173458811',
                        name: l('😡 Negative', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-798254129',
                        name: l('Total mentions', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-2607444338',
                        name: l('😍 Positive', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['positive'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2034838079',
                        name: l('Brand health pulse', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 3,
                        },
                        dimension2: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-1480601012',
                        name: l('Promoters & detractors', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'authorsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 2,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(notOneOf('sentiment', ['neutral']), oneOf('systemTags', ['wom']), notOneOf('systemTags', ['womQuestion', 'womOfficialResponse'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2132682004',
                        name: l('Key features', 'customDashboardsTemplate'),
                        type: 'spider',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentimentAspects',
                            size: 4,
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-1217861818',
                        name: l('Word of mouth', 'customDashboardsTemplate'),
                        type: 'wordCloud',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-3126877943',
                        name: l('Social networks', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 10,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {
                            valueDisplayKind: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('resourceType', ['social'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1307872989',
                        name: l('News & blogs', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 5,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('resourceType', ['blog', 'news'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1757270619',
                        name: l('Reviews & forums', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 10,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('resourceType', ['reviews', 'forum'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1634969784',
                        name: l('Total sentiment', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3986786108',
                        name: l('User engagement', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'engagementSum',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-434161817',
                        name: l('Hot topics', 'customDashboardsTemplate'),
                        type: 'stackedBar',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'subjects',
                            size: 5,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {
                            valueDisplayKind: 'absolute',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3452509785',
                        name: l('😍 Positive mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['positive']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2760919996',
                        name: l('😡 Negative mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    }
                ];
            },
            layout: [
                ['widget-798254129', 'widget-3986786108', 'widget-1634969784'],
                ['widget-173458811', 'widget-2607444338', 'widget-1634969784'],
                ['widget-2760919996', 'widget-3452509785', 'widget-1480601012'],
                ['widget-2760919996', 'widget-3452509785', 'widget-1480601012'],
                ['widget-2132682004', 'widget-2034838079', 'widget-2034838079'],
                ['widget-2132682004', 'widget-2034838079', 'widget-2034838079'],
                ['widget-434161817', 'widget-1217861818', 'widget-1217861818'],
                ['widget-434161817', 'widget-1217861818', 'widget-1217861818'],
                ['widget-1307872989', 'widget-1757270619', 'widget-3126877943'],
                ['widget-1307872989', 'widget-1757270619', 'widget-3126877943']
            ],
            title: l('Brand Health Tracking'),
            subtitle: l('Learn how loyal your audience is. Why users recommend using or avoiding your product.'),
            imageSrc: (0,colorHandler__WEBPACK_IMPORTED_MODULE_1__/* .isDarkTheme */ .g4)()
                ? '/static/images/custom-dashboards/templates/BrandHealthTrakingDark.png'
                : '/static/images/custom-dashboards/templates/BrandHealthTraking.png',
            previewCardImageSrc: (0,colorHandler__WEBPACK_IMPORTED_MODULE_1__/* .isDarkTheme */ .g4)()
                ? '/static/images/custom-dashboards/preview-cards/brand_health_tracking_dark.svg'
                : '/static/images/custom-dashboards/preview-cards/brand_health_tracking.svg',
        },
        _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardTemplates */ .Vs.CustomerExperience] = {
            getWidgetsConfig: function (topicId) {
                return [
                    {
                        id: 'widget-2774424372',
                        name: l('Brand health pulse', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 3,
                        },
                        dimension2: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-708691314',
                        name: l('Authors', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'authorGender',
                            size: 5,
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(notOneOf('gender', ['unknown'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1412782141',
                        name: l('Recommendations', 'customDashboardsTemplate'),
                        type: 'wordCloud',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('systemTags', ['womRecommendation'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-123944253',
                        name: l('Key discussions', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'subjects',
                            size: 10,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('postType', ['post']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-99615419',
                        name: l('Strengths & weaknesses', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentimentAspects',
                            size: 7,
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-3486554867',
                        name: l('Top social networks', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 10,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(notOneOf('sentiment', ['neutral']), oneOf('resourceType', ['social'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-157073204',
                        name: l('Top forums & reviews', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 8,
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(notOneOf('sentiment', ['neutral']), oneOf('resourceType', ['reviews', 'forum'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2237074034',
                        name: l('Questions & complaints', 'customDashboardsTemplate'),
                        type: 'spider',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentimentAspects',
                            size: 5,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('systemTags', ['womQuestion', 'womComplaint'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-204318973',
                        name: l('Total mentions', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-994545116',
                        name: l('Engagement', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'engagementSum',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-1671735193',
                        name: l('Recommendation mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('systemTags', ['womRecommendation'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1243024381',
                        name: l('😍 Positive mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['positive']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-221659516',
                        name: l('😡 Negative mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2038456404',
                        name: l('Negative customer service', 'customDashboardsTemplate'),
                        type: 'geo',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'countries',
                            size: 0,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('aspect', ['service_negative'])),
                            }
                        ],
                    }
                ];
            },
            layout: [
                ['widget-204318973', 'widget-1243024381', 'widget-221659516'],
                ['widget-994545116', 'widget-1243024381', 'widget-221659516'],
                ['widget-2774424372', 'widget-2774424372', 'widget-2774424372'],
                ['widget-2774424372', 'widget-2774424372', 'widget-2774424372'],
                ['widget-2237074034', 'widget-123944253', 'widget-99615419'],
                ['widget-2237074034', 'widget-123944253', 'widget-99615419'],
                ['widget-1412782141', 'widget-1412782141', 'widget-1671735193'],
                ['widget-1412782141', 'widget-1412782141', 'widget-1671735193'],
                ['widget-708691314', 'widget-3486554867', 'widget-157073204'],
                ['widget-708691314', 'widget-3486554867', 'widget-157073204'],
                ['widget-2038456404', 'widget-2038456404', 'widget-2038456404'],
                ['widget-2038456404', 'widget-2038456404', 'widget-2038456404']
            ],
            title: l('Customer Experience'),
            subtitle: l('Learn how users rate their experience. What affects user satisfaction the most, and what disappoints them.'),
            imageSrc: (0,colorHandler__WEBPACK_IMPORTED_MODULE_1__/* .isDarkTheme */ .g4)()
                ? '/static/images/custom-dashboards/templates/CustomerExperienceDark.png'
                : '/static/images/custom-dashboards/templates/CustomerExperience.png',
            previewCardImageSrc: '/static/images/custom-dashboards/preview-cards/customer_experience.svg',
        },
        _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardTemplates */ .Vs.CompetitorAnalysis] = {
            getWidgetsConfig: function (topicId, comparisonTopicIds) {
                return [
                    {
                        id: 'widget-14243347',
                        name: l('Mentions over time', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        segments: getSegments(__spreadArray([topicId], __read(comparisonTopicIds), false)),
                    },
                    {
                        id: 'widget-3383378293',
                        name: l('Share of conversation', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: getSegments(__spreadArray([topicId], __read(comparisonTopicIds), false)),
                    },
                    {
                        id: 'widget-74797527',
                        name: l('Sentiment', 'customDashboardsTemplate'),
                        type: 'stackedBar',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension2: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {
                            valueDisplayKind: 'absolute',
                        },
                        segments: getSegments(__spreadArray([topicId], __read(comparisonTopicIds), false)),
                    },
                    {
                        id: 'widget-2978983286',
                        name: l('Social networks', 'customDashboardsTemplate'),
                        type: 'stackedBar',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension2: {
                            type: 'sources',
                            size: 10,
                        },
                        widgetOptions: {
                            valueDisplayKind: 'absolute',
                        },
                        segments: getSegments(__spreadArray([topicId], __read(comparisonTopicIds), false), {
                            filter: segmentFilter(oneOf('resourceType', ['social'])),
                        }),
                    },
                    {
                        id: 'widget-2420393114',
                        name: l('Total mentions', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: getSegments(__spreadArray([topicId], __read(comparisonTopicIds), false)),
                    },
                    {
                        id: 'widget-2633756317',
                        name: l('Total engagement', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'engagementSum',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: getSegments(__spreadArray([topicId], __read(comparisonTopicIds), false)),
                    }
                ];
            },
            withTwoTopics: true,
            layout: [
                ['widget-2420393114', 'widget-2633756317', 'widget-3383378293'],
                ['widget-2420393114', 'widget-2633756317', 'widget-3383378293'],
                ['widget-14243347', 'widget-14243347', 'widget-14243347'],
                ['widget-14243347', 'widget-14243347', 'widget-14243347'],
                ['widget-2978983286', 'widget-2978983286', 'widget-74797527'],
                ['widget-2978983286', 'widget-2978983286', 'widget-74797527']
            ],
            title: l('Competitor Analysis'),
            subtitle: l("Find insights by comparing your brand to a competitor's. Key metrics on two topics in one dashboard."),
            imageSrc: (0,colorHandler__WEBPACK_IMPORTED_MODULE_1__/* .isDarkTheme */ .g4)()
                ? '/static/images/custom-dashboards/templates/CompetitorAnalysisDark.png'
                : '/static/images/custom-dashboards/templates/CompetitorAnalysis.png',
            previewCardImageSrc: '/static/images/custom-dashboards/preview-cards/competitor_analysis.svg',
        },
        _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardTemplates */ .Vs.CrisisAndSupportManagement] = {
            getWidgetsConfig: function (topicId) {
                return [
                    {
                        id: 'widget-1412782141',
                        name: l('🔥 Incidents', 'customDashboardsTemplate'),
                        type: 'wordCloud',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('subject', ['incident'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-99615419',
                        name: l('Strengths & weaknesses', 'customDashboardsTemplate'),
                        type: 'spider',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentimentAspects',
                            size: 6,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['positive', 'negative'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1759837268',
                        name: l('Promoters & detractors', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'authorsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 3,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(notOneOf('sentiment', ['neutral']), oneOf('systemTags', ['wom']), notOneOf('systemTags', ['womQuestion', 'womOfficialResponse'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-3856303379',
                        name: l('😡 Negative', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2732461500',
                        name: l('🙂 Positive', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['positive'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2698044725',
                        name: l('Total mentions', 'customDashboardsTemplate'),
                        type: 'counter',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(),
                            }
                        ],
                    },
                    {
                        id: 'widget-219880031',
                        name: l('Top detractors by mentions', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'authors',
                            size: 8,
                            authorsSortOrder: 'count',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative']), oneOf('postType', ['post']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1284526356',
                        name: l('Top detractors by engagement', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'engagementSum',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'authors',
                            size: 8,
                            authorsSortOrder: 'totalEngagement',
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative']), oneOf('postType', ['post']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-625046198',
                        name: l('Sentiment over time', 'customDashboardsTemplate'),
                        type: 'line',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sentiment',
                            size: 2,
                        },
                        dimension2: {
                            type: 'date',
                            timeInterval: 'day',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['positive', 'negative'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-3265817877',
                        name: l('😡 Negative mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                            orderBy: 'published',
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-787089680',
                        name: l('🔥 Incident mentions', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('subject', ['incident'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-2752240531',
                        name: l('😡 Negative trends', 'customDashboardsTemplate'),
                        type: 'pie',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'trends',
                            size: 5,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-3907192560',
                        name: l('😡 Negative word of mouth', 'customDashboardsTemplate'),
                        type: 'wordCloud',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative']), oneOf('systemTags', ['wom'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-1949581462',
                        name: l('📰 Negative news', 'customDashboardsTemplate'),
                        type: 'list',
                        aggregationMetric: 'mentionsCount',
                        aggregationOptions: {
                            size: 10,
                            orderBy: 'engagement',
                        },
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        widgetOptions: {
                            omittedDataKeys: [],
                        },
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative']), oneOf('resourceType', ['news'])),
                            }
                        ],
                    },
                    {
                        id: 'widget-757732218',
                        name: l('Top sources by negative mentions', 'customDashboardsTemplate'),
                        type: 'histogram',
                        aggregationMetric: 'mentionsCount',
                        dateRange: {
                            from: '-30d',
                            type: 'relative',
                        },
                        dimension1: {
                            type: 'sources',
                            size: 7,
                        },
                        widgetOptions: {},
                        segments: [
                            {
                                key: topicId.toString(),
                                dateRange: segmentDateRange(),
                                topicId: topicId,
                                filter: segmentFilter(oneOf('sentiment', ['negative'])),
                            }
                        ],
                    }
                ];
            },
            layout: [
                ['widget-2698044725', 'widget-2732461500', 'widget-3856303379'],
                ['widget-625046198', 'widget-625046198', 'widget-2752240531'],
                ['widget-625046198', 'widget-625046198', 'widget-2752240531'],
                ['widget-3265817877', 'widget-1949581462', 'widget-757732218'],
                ['widget-3265817877', 'widget-1949581462', 'widget-757732218'],
                ['widget-3907192560', 'widget-3907192560', 'widget-99615419'],
                ['widget-3907192560', 'widget-3907192560', 'widget-99615419'],
                ['widget-1412782141', 'widget-1412782141', 'widget-787089680'],
                ['widget-1412782141', 'widget-1412782141', 'widget-787089680'],
                ['widget-1759837268', 'widget-219880031', 'widget-1284526356'],
                ['widget-1759837268', 'widget-219880031', 'widget-1284526356']
            ],
            title: l('Crisis Management'),
            subtitle: l('Catch and prevent crisis in time. Deal with negative incidents and reduce their impact on brand reputation. Evaluate the result of customer support.'),
            imageSrc: (0,colorHandler__WEBPACK_IMPORTED_MODULE_1__/* .isDarkTheme */ .g4)()
                ? '/static/images/custom-dashboards/templates/CrisisManagementDark.png'
                : '/static/images/custom-dashboards/templates/CrisisManagement.png',
            previewCardImageSrc: '/static/images/custom-dashboards/preview-cards/crisis_and_support.svg',
        },
        _a);
};
var getDashboardTemplateConfig = function (templateType, topicId, comparisonTopicIds) {
    var _a = getTemplatesConfig()[templateType], getWidgetsConfig = _a.getWidgetsConfig, layout = _a.layout, title = _a.title, subtitle = _a.subtitle;
    return {
        layout: layout,
        widgetsConfig: getWidgetsConfig(topicId, comparisonTopicIds),
        title: title,
        subtitle: subtitle,
    };
};


/***/ }),

/***/ "k3Hp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   W: () => (/* binding */ getMentionsSortOptions)
/* harmony export */ });
/* harmony import */ var models_Mention__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Trc");

var getMentionsSortOptions = function () { return [
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.Published, label: l('by publication date (new first)') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.PublishedAsc, label: l('by publication date (old first)') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.Id, label: l('by indexing date') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.Engagement, label: l('by engagement') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.Comments, label: l('by comments') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.Views, label: l('by views') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.AuthorSubscribers, label: l('by author subscribers') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.ChannelSubscribers, label: l('by channel subscribers') },
    { value: models_Mention__WEBPACK_IMPORTED_MODULE_0__/* .MentionsSortOrder */ .qD.Duplicates, label: l('by number of duplicates') }
]; };


/***/ }),

/***/ "b5c/":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  "default": () => (/* binding */ PublicCustomDashboard_PublicCustomDashboardPage)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
// EXTERNAL MODULE: ./src/state/metaData/model.ts + 1 modules
var model = __webpack_require__("Jpep");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/customDashboards/selectors.ts
var selectors = __webpack_require__("z86f");
// EXTERNAL MODULE: ./src/state/customDashboards/model.ts
var customDashboards_model = __webpack_require__("D6/I");
// EXTERNAL MODULE: ./src/components/helpers/Loader/index.ts
var Loader = __webpack_require__("CecO");
// EXTERNAL MODULE: ./src/components/ui/H1/index.ts + 2 modules
var H1 = __webpack_require__("OIx8");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
// EXTERNAL MODULE: ./src/containers/Head/Head.js
var Head = __webpack_require__("pxZC");
// EXTERNAL MODULE: ./src/containers/customDashboard/components/CustomDashboardsLayout/index.ts + 1 modules
var CustomDashboardsLayout = __webpack_require__("vC0a");
;// CONCATENATED MODULE: ./src/containers/customDashboard/PublicCustomDashboard/PublicCustomDashboard.tsx





var PublicCustomDashboard = function (_a) {
    var _b;
    var dashboard = _a.dashboard, fetchWidgetsData = _a.fetchWidgetsData;
    var id = dashboard.id, widgets = dashboard.config.widgets;
    var widgetViews = (0,react.useMemo)(function () { return Object.values(widgets || {}); }, [dashboard]);
    var dashboardId = dashboard.id.toString();
    (0,react.useEffect)(function () { fetchWidgetsData(dashboardId); }, []);
    (0,react.useEffect)(function () {
        var _a, _b, _c;
        if (((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.autoRefreshDelay) && ((_b = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _b === void 0 ? void 0 : _b.autoRefreshDelay) > 0) {
            var intervalId_1 = setInterval(function () {
                fetchWidgetsData(dashboardId);
            }, (_c = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _c === void 0 ? void 0 : _c.autoRefreshDelay);
            return function () { return clearInterval(intervalId_1); };
        }
        return function () { return null; };
    }, [(_b = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _b === void 0 ? void 0 : _b.autoRefreshDelay]);
    return ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)(CustomDashboardsLayout/* default */.A, { dashboardId: "".concat(id), dashboardLayout: dashboard.config.layout, configurable: false, widgets: widgetViews }) }));
};
/* harmony default export */ const PublicCustomDashboard_PublicCustomDashboard = ((0,react_redux/* connect */.Ng)(function (_) { return ({}); }, { fetchWidgetsData: customDashboards_model/* customDashboardsModel */.i.action.fetchWidgetsData })(PublicCustomDashboard));

;// CONCATENATED MODULE: ./src/containers/customDashboard/PublicCustomDashboard/PublicCustomDashboardPage.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const PublicCustomDashboardPage = ({"header":"AI2VC8NDhneCfBEBmDOa","sticky":"NB5cMRYwbJ0F25_OVmst","withUserLogo":"T11h8NxFcxugKfWG6f_0","content":"IdfyVliJpuW6I8pKB0j4","info":"GIxbJ6Sc4VPJYyLRXccI","name":"DHfNjHTHhP0cB2d2NGvN","description":"YLRAHWi5X5LVTxq43QD6","demoButton":"ZyVq0LNcFBs91w7Zu0MT","logo":"CmXFA4M6YTmAt60l3PFA","infoMsg":"E6J5WK_hDk_H2dAokSFi","userLogoContainer":"osrSYMLhZFKMqnrvVJYw","userLogo":"F19dDgLOALfI0P1fvO9L","powerByLogo":"AJLoQmrNmQbgAQoc1yO3","powerByContainer":"McQaVxXpbJOrNtmeUTF2"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/PublicCustomDashboard/PublicCustomDashboardPage.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

















var PublicCustomDashboardPage_PublicCustomDashboardPage = function (_a) {
    var token = _a.params.token, query = _a.location.query, dashboards = _a.dashboards, isDashboardsLoaded = _a.isDashboardsLoaded, dashboardsError = _a.dashboardsError, fetchAspects = _a.fetchAspects, setPublicToken = _a.setPublicToken, fetchPublicDashboards = _a.fetchPublicDashboards, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var demoLink = query === null || query === void 0 ? void 0 : query.demoLink;
    var dashboard = dashboards[0];
    var name = dashboard === null || dashboard === void 0 ? void 0 : dashboard.name;
    var description = dashboard === null || dashboard === void 0 ? void 0 : dashboard.description;
    var userLogo = dashboard === null || dashboard === void 0 ? void 0 : dashboard.logo;
    (0,react.useEffect)(function () {
        fetchPublicDashboards({ token: token });
        fetchAspects();
        setPublicToken({ token: token });
    }, []);
    (0,react.useEffect)(function () {
        if (dashboards.length > 0) {
            sendAnalyticalEvent({ eventType: 'Public custom dashboard: opened', options: { isPublic: true }, properties: { dashboardId: dashboards[0].id } });
        }
    }, [dashboards]);
    if (dashboardsError) {
        if (dashboardsError.errorCode === 'RESOURCE_NOT_FOUND') {
            return (0,jsx_runtime.jsx)("div", __assign({ className: PublicCustomDashboardPage.infoMsg }, { children: l('Dashboard doesn\'t exist') }));
        }
        return (0,jsx_runtime.jsx)("div", __assign({ className: PublicCustomDashboardPage.infoMsg }, { children: l('An error has occurred') }));
    }
    function renderHeader() {
        var _a;
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(PublicCustomDashboardPage.header, (_a = {}, _a[PublicCustomDashboardPage.sticky] = !!demoLink && !(0,mobile/* isTabSize */.Ro)(), _a)) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: PublicCustomDashboardPage.content }, { children: [(0,jsx_runtime.jsx)("img", { alt: "", src: (0,colorHandler/* isDarkTheme */.g4)() ? '/static/images/logo/mainVersion/logo_outline_white.svg' : '/static/images/logo/mainVersion/logo_outline.svg', className: PublicCustomDashboardPage.logo }), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(PublicCustomDashboardPage.info) }, { children: [name && (0,jsx_runtime.jsx)(H1/* default */.A, __assign({ className: PublicCustomDashboardPage.name }, { children: name })), description && (0,jsx_runtime.jsx)("div", __assign({ className: PublicCustomDashboardPage.description }, { children: description }))] }))] })), demoLink && ((0,jsx_runtime.jsx)("a", __assign({ href: demoLink, target: "_blank", rel: "noreferrer" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { className: PublicCustomDashboardPage.demoButton, label: l('Request a demo') }) })))] })));
    }
    function renderHeaderWithLogo() {
        var _a;
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(PublicCustomDashboardPage.header, (_a = {}, _a[PublicCustomDashboardPage.withUserLogo] = userLogo, _a)) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: PublicCustomDashboardPage.content }, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: PublicCustomDashboardPage.userLogoContainer }, { children: (0,jsx_runtime.jsx)("img", { alt: "", src: userLogo, className: PublicCustomDashboardPage.userLogo }) })), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(PublicCustomDashboardPage.info) }, { children: [name && (0,jsx_runtime.jsx)(H1/* default */.A, __assign({ className: PublicCustomDashboardPage.name }, { children: name })), description && (0,jsx_runtime.jsx)("div", __assign({ className: PublicCustomDashboardPage.description }, { children: description }))] }))] })), (0,jsx_runtime.jsx)("div", __assign({ className: PublicCustomDashboardPage.powerByContainer }, { children: (0,jsx_runtime.jsx)("a", __assign({ href: "https://youscan.io/?utm_source=app.youscan.io&utm_medium=banner&utm_campaign=website_promo", target: "_blank" }, { children: (0,jsx_runtime.jsx)("img", { alt: "", src: "/static/images/power_by_youscan.svg", className: PublicCustomDashboardPage.powerByLogo }) })) })), demoLink && ((0,jsx_runtime.jsx)("a", __assign({ href: demoLink, target: "_blank", rel: "noreferrer" }, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { className: PublicCustomDashboardPage.demoButton, label: l('Request a demo') }) })))] })));
    }
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: PublicCustomDashboardPage.base }, { children: [(0,jsx_runtime.jsx)(Head/* default */.A, { title: "".concat(l('Dashboard'), ": ").concat((dashboard === null || dashboard === void 0 ? void 0 : dashboard.name) || '') }), isDashboardsLoaded && (userLogo ? renderHeaderWithLogo() : renderHeader()), (0,jsx_runtime.jsx)(Loader/* default */.A, __assign({ loaded: isDashboardsLoaded, empty: !dashboard, emptyState: (0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: (0,jsx_runtime.jsxs)("div", __assign({ className: PublicCustomDashboardPage.infoMsg }, { children: [(0,jsx_runtime.jsx)("img", { src: "/static/images/custom-dashboards/empty_layout_state.svg", alt: "no dashboards" }), (0,jsx_runtime.jsx)("p", { children: l('No dashboards to display yet') })] })) }) }, { children: (0,jsx_runtime.jsx)(PublicCustomDashboard_PublicCustomDashboard, { dashboard: dashboard }) }))] })));
};
/* harmony default export */ const PublicCustomDashboard_PublicCustomDashboardPage = ((0,withRouter/* withRouter */.y)((0,react_redux/* connect */.Ng)(function (state) { return ({
    isDashboardsLoaded: (0,selectors/* isCustomDashboardsLoaded */.mv)(state),
    dashboards: (0,selectors/* getCustomDashboards */.jp)(state),
    dashboardsError: (0,selectors/* getCustomDashboardsError */.zj)(state),
}); }, {
    fetchAspects: model/* metaDataModel */.v.action.fetchAspects,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
    setPublicToken: customDashboards_model/* customDashboardsModel */.i.action.setPublicToken,
    fetchPublicDashboards: customDashboards_model/* customDashboardsModel */.i.action.fetchPublicDashboards,
})(PublicCustomDashboardPage_PublicCustomDashboardPage)));


/***/ }),

/***/ "vC0a":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ components_CustomDashboardsLayout_CustomDashboardsLayout)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-grid-layout/index.js
var react_grid_layout = __webpack_require__("ChGz");
var react_grid_layout_default = /*#__PURE__*/__webpack_require__.n(react_grid_layout);
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/models/CustomDashboards.ts
var CustomDashboards = __webpack_require__("svtq");
// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/DashboardWidget/DashboardWidget.tsx + 5 modules
var DashboardWidget = __webpack_require__("3CuU");
// EXTERNAL MODULE: ./src/utils/customDashboards/constants.ts
var constants = __webpack_require__("7vdz");
// EXTERNAL MODULE: ./src/utils/customDashboards/layout.ts
var customDashboards_layout = __webpack_require__("TAzt");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
// EXTERNAL MODULE: ./src/containers/customDashboard/components/CustomDashboardsLayout/utils.ts
var utils = __webpack_require__("DH/5");
// EXTERNAL MODULE: ./src/containers/customDashboard/components/CustomDashboardsLayout/CustomDashboardsLayout.less
var CustomDashboardsLayout = __webpack_require__("CoUt");
;// CONCATENATED MODULE: ./src/containers/customDashboard/components/CustomDashboardsLayout/CustomDashboardsLayout.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};












var ReactGridLayout = (0,react_grid_layout.WidthProvider)((react_grid_layout_default()));
var CustomDashboardsLayout_CustomDashboardsLayout = function (_a) {
    var _b;
    var dashboardId = _a.dashboardId, className = _a.className, _c = _a.dashboardLayout, dashboardLayout = _c === void 0 ? [] : _c, configurable = _a.configurable, _d = _a.padding, padding = _d === void 0 ? [customDashboards_layout/* LAYOUT_CONTAINER_PADDING */.Dx, customDashboards_layout/* LAYOUT_CONTAINER_PADDING */.Dx] : _d, _e = _a.margin, margin = _e === void 0 ? [customDashboards_layout/* LAYOUT_MARGIN */.O7, customDashboards_layout/* LAYOUT_MARGIN */.O7] : _e, widgets = _a.widgets, onLayoutChange = _a.onLayoutChange;
    var widgetsOnLayout = new Set(dashboardLayout.flat().filter(function (id) { return id !== constants/* EMPTY_GRID_CELL */.eK; }));
    var layout = (0,mobile/* isMobile */.Fr)() ? adaptLayoutToMobile(dashboardLayout, widgets) : dashboardLayout;
    var columns = (_b = layout[0]) === null || _b === void 0 ? void 0 : _b.length;
    var layoutChangeHandler = (0,redux/* compose */.Zz)(onLayoutChange || lodash.noop, (0,utils/* toCustomDashboardLayout */.R)(columns));
    return ((0,jsx_runtime.jsx)(ReactGridLayout, __assign({ useCSSTransforms: true, verticalCompact: true, className: classnames_default()(CustomDashboardsLayout/* default */.A.base, className), layout: widgetsOnLayout.size !== widgets.length ? [] : (0,utils/* toReactGridLayout */.i)(layout, widgets), rowHeight: customDashboards_layout/* LAYOUT_ROW_HEIGHT */.Mk, margin: margin, containerPadding: padding, cols: columns, isDraggable: configurable, isResizable: configurable, resizeHandles: ['se'], onLayoutChange: layoutChangeHandler }, { children: widgets.filter(function (w) { return widgetsOnLayout.has(w.id); }).map(function (w) { return ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(CustomDashboardsLayout/* default */.A.sectionCard) }, { children: (0,jsx_runtime.jsx)(DashboardWidget/* default */.A, { dashboardId: dashboardId, widgetId: w.id, columns: dashboardLayout.find(function (row) { return !!row.find(function (wId) { return wId === w.id; }); }).filter(function (wId) { return wId === w.id; }).length, rows: dashboardLayout.filter(function (row) { return !!row.find(function (wId) { return wId === w.id; }); }).length, widget: w, blurred: configurable }) })) }, w.id)); }) })));
};
function adaptLayoutToMobile(layout, widgets) {
    var e_1, _a;
    var oneCellWidgets = Object.values(widgets)
        .filter(function (w) { return w.type === CustomDashboards/* CustomDashboardWidgetType */.qP.counter; })
        .map(function (w) { return w.id; });
    var flattenLayout = (0,lodash.uniq)((0,lodash.flattenDeep)(layout))
        .filter(function (cell) { return cell !== constants/* EMPTY_GRID_CELL */.eK; });
    var modified = [];
    try {
        for (var flattenLayout_1 = __values(flattenLayout), flattenLayout_1_1 = flattenLayout_1.next(); !flattenLayout_1_1.done; flattenLayout_1_1 = flattenLayout_1.next()) {
            var widget = flattenLayout_1_1.value;
            if (oneCellWidgets.includes(widget)) {
                modified.push([widget]);
            }
            else {
                modified.push([widget], [widget]);
            }
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (flattenLayout_1_1 && !flattenLayout_1_1.done && (_a = flattenLayout_1.return)) _a.call(flattenLayout_1);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return modified;
}
/* harmony default export */ const components_CustomDashboardsLayout_CustomDashboardsLayout = (CustomDashboardsLayout_CustomDashboardsLayout);

;// CONCATENATED MODULE: ./src/containers/customDashboard/components/CustomDashboardsLayout/index.ts



/***/ }),

/***/ "DH/5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   R: () => (/* binding */ toCustomDashboardLayout),
/* harmony export */   i: () => (/* binding */ toReactGridLayout)
/* harmony export */ });
/* harmony import */ var utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("7vdz");
/* harmony import */ var utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("TAzt");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};


var toCustomDashboardLayout = function (columns) { return function (layout) {
    var rows = layout.reduce(function (accum, gridCell) {
        var y1 = gridCell.y + gridCell.h - 1;
        return y1 > accum ? y1 : accum;
    }, 0) + 1;
    var mapped = Array(rows).fill(Array(columns).fill(utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_0__/* .EMPTY_GRID_CELL */ .eK));
    return layout.reduce(function (newLayout, _a) {
        var i = _a.i, w = _a.w, h = _a.h, x = _a.x, y = _a.y;
        return newLayout.map(function (row, rowIndex) { return ((rowIndex < y || rowIndex > y + h - 1)
            ? row
            : row.map(function (id, columnIndex) { return ((columnIndex < x || columnIndex > x + w - 1) ? id : i); })); });
    }, mapped);
}; };
var widgetToLayout = function (layout, widgets, rowIndex) {
    return function (widgetId, columnIndex) {
        if (widgetId === utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_0__/* .EMPTY_GRID_CELL */ .eK) {
            return null;
        }
        var y = layout.findIndex(function (row) { return row.includes(widgetId); });
        var x = layout[y].findIndex(function (id) { return id === widgetId; });
        if (x !== columnIndex || y !== rowIndex) {
            return null;
        }
        var widget = widgets.find(function (_a) {
            var id = _a.id;
            return widgetId === id;
        });
        return {
            i: widgetId,
            x: x,
            y: y,
            isBounded: true,
            w: layout[y].filter(function (id) { return id === widgetId; }).length,
            h: layout.filter(function (row) { return row.includes(widgetId); }).length,
            minH: utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_1__/* .CustomDashboardWidgetGridCellMinHeight */ .rT[widget.type],
            maxH: utils_customDashboards_layout__WEBPACK_IMPORTED_MODULE_1__/* .CustomDashboardWidgetGridCellMaxHeight */ .t3[widget.type],
            maxW: 3,
        };
    };
};
var toReactGridLayout = function (layout, widgets) {
    return layout.reduce(function (accum, row, rowIndex) {
        return __spreadArray(__spreadArray([], __read(accum), false), __read(row.map(widgetToLayout(layout, widgets, rowIndex)).filter(Boolean)), false);
    }, []);
};


/***/ }),

/***/ "1vwv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ CustomDashnoardSelectTopic_CustomDashboardSelectTopic)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/Select/index.ts + 2 modules
var Select = __webpack_require__("I9tN");
// EXTERNAL MODULE: ./src/containers/customDashboard/utils.tsx
var utils = __webpack_require__("fX3F");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var selectors = __webpack_require__("Qyqr");
;// CONCATENATED MODULE: ./src/containers/customDashboard/components/CustomDashnoardSelectTopic/CustomDashboardSelectTopic.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CustomDashboardSelectTopic = ({"base":"MoBhjK5d_bNIxb_2gO7b"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/components/CustomDashnoardSelectTopic/CustomDashboardSelectTopic.tsx







var CustomDashboardSelectTopic_CustomDashboardSelectTopic = function (_a) {
    var onChange = _a.onChange, topics = _a.topics, selectedTopicId = _a.selectedTopicId, className = _a.className, placeholder = _a.placeholder;
    var options = (0,utils/* useTopicOptions */.B)(topics);
    var filterOption = function (candidate, input) {
        if (!input)
            return true;
        return candidate.value.includes(input) || candidate.data.text.toLocaleLowerCase().includes(input.toLocaleLowerCase());
    };
    return ((0,jsx_runtime.jsx)(Select/* default */.A, { isClearable: true, className: classnames_default()(className, CustomDashboardSelectTopic.base), placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : l('Select topic'), isSearchable: true, name: "topicId", filterOption: filterOption, value: options.find(function (_a) {
            var value = _a.value;
            return value === selectedTopicId;
        }), options: options, onChange: onChange }));
};
/* harmony default export */ const CustomDashnoardSelectTopic_CustomDashboardSelectTopic = ((0,react_redux/* connect */.Ng)(function (state, _) { return ({
    topics: (0,selectors/* getManagedThemes */.Gl)(state),
}); })(CustomDashboardSelectTopic_CustomDashboardSelectTopic));


/***/ }),

/***/ "Wdgh":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ DatesFilterChip_DatesFilterChip)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/utils/customDashboards/dates.tsx
var dates = __webpack_require__("wlTg");
// EXTERNAL MODULE: ./src/models/filters/components/Chip.tsx
var Chip = __webpack_require__("hdiB");
// EXTERNAL MODULE: ./src/components/other/FilterOperator/index.ts
var FilterOperator = __webpack_require__("HnTy");
;// CONCATENATED MODULE: ./src/containers/customDashboard/components/DatesFilterChip/DatesFilterChip.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const DatesFilterChip = ({"base":"MyTBl0UgCK2lRvFD6Aaw"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/components/DatesFilterChip/DatesFilterChip.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var DateFilterChip = function (_a) {
    var dateRange = _a.dateRange, handleCancel = _a.handleCancel;
    if (!dateRange) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", __assign({ className: DatesFilterChip.base }, { children: (0,jsx_runtime.jsx)(Chip/* default */.A, { editable: !!handleCancel, label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [l('Date'), (0,jsx_runtime.jsx)(FilterOperator/* default */.A, { isEqualOperator: true, isMultiValue: false, editable: false, operator: "oneOf" })] }), onRemove: handleCancel, content: "".concat((0,dates/* getDateRangeMessage */.NH)(dateRange)) }) })));
};
/* harmony default export */ const DatesFilterChip_DatesFilterChip = (DateFilterChip);

;// CONCATENATED MODULE: ./src/containers/customDashboard/components/DatesFilterChip/index.ts



/***/ }),

/***/ "cAtx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ LimitReachedTooltip_LimitReachedTooltip)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/utils/intercom.js
var intercom = __webpack_require__("ah7T");
// EXTERNAL MODULE: ./src/containers/AddonsPromote/addons.ts
var addons = __webpack_require__("duiz");
;// CONCATENATED MODULE: ./src/containers/customDashboard/components/LimitReachedTooltip/LimitReachedTooltip.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var LimitReachedTooltip = function (_a) {
    var children = _a.children;
    var handleChatClick = function () {
        var addonName = 'Unlimited Dashboards';
        (0,intercom/* showNewMessage */.z$)((0,addons/* getChatMessage */.w)(l(addonName)));
    };
    return ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ hoverable: true, on: "hover", position: "bottom right", title: l('Dashboard limit is reached'), content: (0,jsx_runtime.jsxs)("div", __assign({ style: { maxWidth: 360 } }, { children: [l('Please contact our customer support team if you want to obtain our unlimited dashboard feature.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", __assign({ onClick: handleChatClick }, { children: l('Chat with us') }))] })) }, { children: children })));
};
/* harmony default export */ const LimitReachedTooltip_LimitReachedTooltip = (LimitReachedTooltip);

;// CONCATENATED MODULE: ./src/containers/customDashboard/components/LimitReachedTooltip/index.ts



/***/ }),

/***/ "fX3F":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   B: () => (/* binding */ useTopicOptions)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var containers_helpers_HistoryCollectionOptionIcon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("8+mS");
/* harmony import */ var components_helpers_Space__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("YgU7");




var useTopicOptions = function (topics) {
    return (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(function () {
        return (topics
            ? topics.map(function (topic) { return ({
                value: topic.id.toString(),
                label: ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(containers_helpers_HistoryCollectionOptionIcon__WEBPACK_IMPORTED_MODULE_2__/* .TopicScaleIcon */ .Hi, { topic: topic }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_Space__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, {}), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(containers_helpers_HistoryCollectionOptionIcon__WEBPACK_IMPORTED_MODULE_2__/* .TopicSamplingIcon */ .I$, { topic: topic }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_Space__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, {}), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(containers_helpers_HistoryCollectionOptionIcon__WEBPACK_IMPORTED_MODULE_2__/* .TopicFilterIcon */ .$2, { topic: topic }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_helpers_Space__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A, {}), topic.name] })),
                text: topic.name,
            }); })
            : []);
    }, [topics]);
};


/***/ }),

/***/ "Z8P+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   G: () => (/* binding */ getDiff)
/* harmony export */ });
/* eslint-disable import/prefer-default-export */
var getDiff = function (a, b) {
    if (b === void 0) { b = 0; }
    return (a ? Math.round(((b - a) * 100) / a) : null);
};


/***/ }),

/***/ "6hzH":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ filters_FilterChipPanel_FilterChipPanel)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/hooks/useHighlightContext.tsx
var useHighlightContext = __webpack_require__("qd5V");
// EXTERNAL MODULE: ./src/components/ui/Tag/index.js + 6 modules
var Tag = __webpack_require__("/i37");
// EXTERNAL MODULE: ./src/components/other/FilterOperator/FilterOperator.tsx + 1 modules
var FilterOperator = __webpack_require__("ZMuL");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/models/filters/domain/FilterGroupTypeCatalog.tsx + 79 modules
var FilterGroupTypeCatalog = __webpack_require__("yMOo");
// EXTERNAL MODULE: ./src/models/filters/domain/FilterOptionTypeCatalog.tsx + 9 modules
var FilterOptionTypeCatalog = __webpack_require__("qBsj");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./src/utils/Mutable.ts + 1 modules
var Mutable = __webpack_require__("2N3d");
// EXTERNAL MODULE: ./src/hooks/useFacetsContext.tsx
var useFacetsContext = __webpack_require__("56YP");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/utils/mobile.ts
var mobile = __webpack_require__("6Fjb");
// EXTERNAL MODULE: ./src/hooks/useEffectCustom.ts
var useEffectCustom = __webpack_require__("me3u");
;// CONCATENATED MODULE: ./src/containers/filters/FilterChipPanel/FilterChipPanel.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const FilterChipPanel = ({"base":"TX_smALtYBTD1Kp3a5aI","chips":"wkm2t1iuo5VtwQup7x_Q","noFiltersApplied":"WQDgF6ZNgBuQ1nM95HEV","abbreviatedValuesContainer":"AiGOeHgICReydOChZBQZ","abbreviatedValuesTrigger":"WoFfd33UBJ9TdgTOd4VM","error":"nHSreTq6rcDMfALRSycF"});
;// CONCATENATED MODULE: ./src/containers/filters/FilterChipPanel/FilterChipPanel.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};


















var FilterChipPanel_FilterChipPanel = function (_a) {
    var filter = _a.filter, showNoFilters = _a.showNoFilters, showFirstOperator = _a.showFirstOperator, onUpdate = _a.onUpdate, compactInFilterGroup = _a.compactInFilterGroup, compactFilter = _a.compactFilter, topicId = _a.topicId, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var readonly = !onUpdate;
    var editable = !readonly;
    var filterGroupLength = filter.filterGroups.length;
    var globalOptionsLength = filter.globalOptions.length;
    compactInFilterGroup = (0,mobile/* isSimplifiedView */.O7)() ? true : compactInFilterGroup;
    compactFilter = (0,mobile/* isSimplifiedView */.O7)() ? true : compactFilter;
    var isNoFilters = showNoFilters === undefined ? filterGroupLength === 0 && globalOptionsLength === 0 : showNoFilters;
    var _b = (0,useFacetsContext/* useFacetsContext */.P)(), facets = _b.facetsWithoutStats, fetchDescribeFilter = _b.fetchDescribeFilter;
    (0,useEffectCustom/* useEffectCustom */.m)(function () {
        if (isNoFilters || !topicId)
            return;
        fetchDescribeFilter(filter, topicId);
    }, [filter], function (prev, current) {
        var p = prev[0];
        var c = current[0];
        return p.equals(c);
    });
    var update = function () {
        if (editable)
            onUpdate(filter);
    };
    var handleFilterGroupRemove = function (fieldName, op) {
        var group = filter.findByNameAndOperator(fieldName, op);
        filter.removeFilterGroup(group);
        update();
    };
    var handleListFilterGroupRemoveValue = function (fieldName, op, value) {
        var group = filter.findByNameAndOperator(fieldName, op);
        group.remove([value]);
        update();
    };
    var handleFilterOptionRemove = function (name) {
        filter.removeGlobalOption(name);
        update();
    };
    var handleLogicalChangeOperator = function (_a) {
        var operator = _a.operator;
        sendAnalyticalEvent({
            eventType: 'New filters: change global operator',
            properties: { operator: operator, oldOperator: filter.op },
        });
        filter.changeLogicalOperator(operator);
        update();
    };
    var handleChangeOperator = function (_a) {
        var operator = _a.operator, oldOperator = _a.oldOperator, filterName = _a.filterName;
        sendAnalyticalEvent({
            eventType: 'New filters: change group operator',
            properties: { operator: operator, oldOperator: oldOperator },
        });
        filter.changeOperator(filterName, operator, oldOperator);
        update();
    };
    var renderFilterGroup = function (filterGroup, index) {
        var type = FilterGroupTypeCatalog/* FilterGroupTypeCatalog */.dA.get(filterGroup.fieldName);
        var e = Mutable/* Mutable */.rV.from(facets === null || facets === void 0 ? void 0 : facets.entities);
        if (!e)
            return null;
        return ((0,jsx_runtime.jsxs)("div", { children: [type.createChipFromGroup({
                    compact: compactInFilterGroup,
                    editable: editable,
                    group: filterGroup,
                    entities: e,
                    onRemove: handleFilterGroupRemove,
                    onRemoveValue: handleListFilterGroupRemoveValue,
                    onChangeOperator: handleChangeOperator,
                }), index !== filterGroupLength - 1 || (showFirstOperator && index === 0)
                    ? ((0,jsx_runtime.jsx)(FilterOperator/* GeneralFilterOperator */.$B, { operator: filter.op, editable: editable, onChange: handleLogicalChangeOperator })) : null] }, filterGroup.fieldName));
    };
    var maxDisplayValues = 2;
    var displayFilterGroups = compactFilter ? filter.filterGroups.slice(0, maxDisplayValues) : filter.filterGroups;
    var displayFilterGroupsRemainder = compactFilter ? filter.filterGroups.slice(maxDisplayValues) : [];
    if (hasLegacyItems(filter))
        return ((0,jsx_runtime.jsx)("span", __assign({ className: FilterChipPanel.error }, { children: l(('Oops, there is something wrong with your filters. Please contact support.')) })));
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [isNoFilters && ((0,jsx_runtime.jsx)("span", __assign({ className: FilterChipPanel.noFiltersApplied }, { children: l(('No filters applied')) }))), (0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(FilterChipPanel.base) }, { children: [globalOptionsLength
                        ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Tag/* TagList */.LY, __assign({ className: classnames_default()(FilterChipPanel.chips) }, { children: filter.globalOptions.map(function (option) {
                                        var type = FilterOptionTypeCatalog/* FilterOptionTypeCatalog */.Nk.get(option.name);
                                        return type.createChipFromOption({
                                            option: option,
                                            editable: editable,
                                            onRemove: handleFilterOptionRemove,
                                        });
                                    }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] }))
                        : null, filterGroupLength
                        ? ((0,jsx_runtime.jsx)(useHighlightContext/* HighlightProvider */.i, { children: (0,jsx_runtime.jsxs)(Tag/* TagList */.LY, __assign({ className: classnames_default()(FilterChipPanel.chips) }, { children: [displayFilterGroups.map(renderFilterGroup), displayFilterGroupsRemainder.length
                                        ? ((0,jsx_runtime.jsx)(Popover/* default */.A, __assign({ on: "click", content: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(FilterChipPanel.abbreviatedValuesContainer, FilterChipPanel.chips) }, { children: displayFilterGroupsRemainder.map(function (fg, i) { return renderFilterGroup(fg, displayFilterGroups.length + i); }) })) }, { children: (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(FilterChipPanel.abbreviatedValuesTrigger) }, { children: sprintf(l('%d more'), displayFilterGroupsRemainder.length) })) })))
                                        : null] })) }))
                        : null] }))] }));
};
/* harmony default export */ const filters_FilterChipPanel_FilterChipPanel = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(null, { sendAnalyticalEvent: model/* analyticsStateModel */.j.action.sendAnalyticalEvent }), react.memo)(FilterChipPanel_FilterChipPanel));
// TODO: Temp solution   to drop legacy filters support
// Should be validated on the backend side, but we need some validation rules for supported fields added first
function hasLegacyItems(filter) {
    return filter.filterGroups.some(function (group) {
        return isOneOf(group.fieldName)('authorId', 'sourceId', 'channelId')
            && isOneOf(group.op)('oneOf', 'notOneOf')
            && group.value.some(function (v) { return !Number.isNaN(+v); });
    });
    function isOneOf(value) {
        return function () {
            var values = [];
            for (var _i = 0; _i < arguments.length; _i++) {
                values[_i] = arguments[_i];
            }
            return values.includes(value);
        };
    }
}


/***/ }),

/***/ "5z1g":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* reexport safe */ _FilterChipPanel__WEBPACK_IMPORTED_MODULE_0__.A)
/* harmony export */ });
/* harmony import */ var _FilterChipPanel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("6hzH");



/***/ }),

/***/ "WvTN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ components_Filters)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/index.ts + 2 modules
var Toolbar = __webpack_require__("rYbp");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/containers/filters/ThemeFilters/components/TopicFilters.less
var TopicFilters = __webpack_require__("5Jgf");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Badge/index.ts + 4 modules
var Badge = __webpack_require__("5d8y");
;// CONCATENATED MODULE: ./src/containers/filters/filterTabs.tsx


var getTopicFilterTypesByTab = function () { return [
    {
        id: 'general',
        label: function () { return l('General'); },
        filterTypes: ['sentiment', 'postType', 'contentType', 'sponsored', 'collectionMethod', 'indirect'],
    },
    {
        id: 'systemTags',
        label: function () { return l('Auto-categories'); },
        filterTypes: ['systemTags'],
    },
    {
        id: 'aspects',
        label: function () { return l('Aspects'); },
        filterTypes: ['aspect'],
    },
    {
        id: 'subjects',
        label: function () { return l('Subjects'); },
        filterTypes: ['subject'],
    },
    {
        id: 'trends',
        label: function () { return l('Trends'); },
        filterTypes: ['trend'],
    },
    {
        id: 'tags',
        label: function () { return l('Tags'); },
        filterTypes: ['tag', 'tagged'],
    },
    {
        id: 'sources',
        label: function () { return l('Sources'); },
        filterTypes: ['resourceType', 'starRating', 'sourceId', 'sourceFormat'],
    },
    {
        id: 'channels',
        label: function () { return l('Publication place', 'filterTab'); },
        filterTypes: ['channelId', 'channelSubscribers'],
    },
    {
        id: 'languages',
        label: function () { return l('Languages'); },
        filterTypes: ['language'],
    },
    {
        id: 'geo',
        label: function () { return l('Geography'); },
        filterTypes: ['countryGroup', 'country', 'region', 'city'],
    },
    {
        id: 'authors',
        label: function () { return l('Audience'); },
        filterTypes: ['gender', 'authorAge', 'authorId', 'authorSubscribers', 'authorInterestCategories', 'authorInterests', 'authorJobs'],
    },
    {
        id: 'images',
        label: function () { return l('Visual', 'visualInsights'); },
        filterTypes: [
            'imageFilterSearch',
            'imageType',
            'imageSubtype',
            'imageBrand',
            'imageObject',
            'imageScene',
            'imagePeople',
            'imageActivities',
            'imageColors'
        ],
    },
    {
        id: 'links',
        label: function () { return l('Top shared URLs'); },
        filterTypes: ['host', 'link'],
    },
    {
        id: 'labs',
        label: function () { return (0,jsx_runtime.jsxs)("span", { children: [l('Labs'), (0,jsx_runtime.jsx)(Badge/* default */.A.Support, {})] }); },
        filterTypes: ['origin', 'other'],
    }
]; };
var getGlobalFilterTypesByTab = function () { return [
    {
        id: 'general',
        label: function () { return l('General'); },
        filterTypes: ['sentiment', 'postType', 'contentType', 'collectionMethod', 'indirect'],
    },
    {
        id: 'systemTags',
        label: function () { return l('Auto-categories'); },
        filterTypes: ['systemTags'],
    },
    {
        id: 'sources',
        label: function () { return l('Sources'); },
        filterTypes: ['resourceType', 'starRating', 'sourceFormat'],
    },
    {
        id: 'authors',
        label: function () { return l('Audience'); },
        filterTypes: ['gender', 'authorAge', 'authorSubscribers'],
    },
    {
        id: 'languages',
        label: function () { return l('Languages'); },
        filterTypes: ['language'],
    },
    {
        id: 'geo',
        label: function () { return l('Geography'); },
        filterTypes: ['countryGroup', 'country', 'region', 'city'],
    }
]; };

// EXTERNAL MODULE: ./src/containers/filters/filters.tsx + 45 modules
var filters = __webpack_require__("kfQj");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/Divider/index.ts + 2 modules
var Divider = __webpack_require__("82pc");
// EXTERNAL MODULE: ./src/components/ui/Modal/Modal.tsx + 1 modules
var Modal = __webpack_require__("7Lz/");
// EXTERNAL MODULE: ./src/models/filters/Filter.ts
var Filter = __webpack_require__("+MLa");
// EXTERNAL MODULE: ./src/containers/filters/FilterChipPanel/FilterChipPanel.tsx + 1 modules
var FilterChipPanel = __webpack_require__("6hzH");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/hooks/useFacetsContext.tsx
var useFacetsContext = __webpack_require__("56YP");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
;// CONCATENATED MODULE: ./src/containers/filters/ThemeFilters/components/Filters.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};




















var Filters = function (_a, ref) {
    var hideCounters = _a.hideCounters, countFormat = _a.countFormat, tabPermissions = _a.tabPermissions, filterTypePermissions = _a.filterTypePermissions, initialFilter = _a.initialFilter, triggerButtonLabel = _a.triggerButtonLabel, triggerButton = _a.triggerButton, topicId = _a.topicId, filterTabsConfig = _a.filterTabsConfig, sendAnalyticalEvent = _a.sendAnalyticalEvent, preFetchStats = _a.preFetchStats, onApply = _a.onApply, onUpdatePreviewFilter = _a.onUpdatePreviewFilter;
    var _b = __read((0,react.useState)(false), 2), isModalOpened = _b[0], toggleModal = _b[1];
    var _c = __read((0,react.useState)(0), 2), activeTabIndex = _c[0], onChangeActiveTab = _c[1];
    var _d = __read((0,react.useState)(initialFilter.copyFilter()), 2), previewFilter = _d[0], setPreviewFilter = _d[1];
    var _e = (0,useFacetsContext/* useFacetsContext */.P)(), facets = _e.facets, fetchFacets = _e.fetchFacets;
    var globalMode = !topicId;
    (0,react.useEffect)(function () {
        if (preFetchStats) {
            fetchFacets(previewFilter, topicId);
        }
    }, []);
    (0,react.useImperativeHandle)(ref, function () {
        return {
            open: function () {
                handleOpenModal();
            },
        };
    }, [initialFilter, topicId, isModalOpened]);
    var handleApply = function () {
        onApply(previewFilter);
        toggleModal(false);
    };
    var handleCancel = function () {
        setPreviewFilter(initialFilter);
        toggleModal(false);
    };
    var handleOpenModal = function () { return __awaiter(void 0, void 0, void 0, function () {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    toggleModal(true);
                    setPreviewFilter(initialFilter);
                    return [4 /*yield*/, fetchFacets(initialFilter, topicId)];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    }); };
    var updatePreviewFilter = function (_a) {
        var filter = _a.filter;
        return __awaiter(void 0, void 0, void 0, function () {
            return __generator(this, function (_b) {
                switch (_b.label) {
                    case 0:
                        setPreviewFilter(filter.copyFilter());
                        return [4 /*yield*/, fetchFacets(filter, topicId)];
                    case 1:
                        _b.sent();
                        onUpdatePreviewFilter === null || onUpdatePreviewFilter === void 0 ? void 0 : onUpdatePreviewFilter(filter);
                        return [2 /*return*/];
                }
            });
        });
    };
    var handleSelectFilter = function (name, values) {
        (0,Filter/* handleSelect */.lD)(name, values, previewFilter.copyFilter(), updatePreviewFilter);
    };
    var handleExcludeFilter = function (name, values) {
        (0,Filter/* handleExclude */.vO)(name, values, previewFilter.copyFilter(), updatePreviewFilter);
    };
    var btn = triggerButton ? (react.cloneElement(triggerButton, { onClick: handleOpenModal })) : ((0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "filter", color: "white", className: classnames_default()(TopicFilters/* default */.A.filterIcon) }), triggerButtonLabel] }), onClick: handleOpenModal }));
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [btn, (0,jsx_runtime.jsxs)(Modal/* default */.A, __assign({ fitted: true, isOpen: isModalOpened, className: classnames_default()(TopicFilters/* default */.A.modal), onRequestClose: function () { return toggleModal(false); } }, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, __assign({ className: classnames_default()(TopicFilters/* default */.A.title) }, { children: l('Filters') })), renderPreviewFiltersToolbar(), (0,jsx_runtime.jsx)(Divider/* default */.A, {}), renderFilterTabs()] }))] }));
    function renderPreviewFiltersToolbar() {
        return ((0,jsx_runtime.jsxs)(Toolbar/* Toolbar */.M7, __assign({ className: TopicFilters/* default */.A.previewFiltersToolbar }, { children: [(0,jsx_runtime.jsx)(Toolbar/* ToolbarGroup */.$Q, { children: (0,jsx_runtime.jsx)(FilterChipPanel/* default */.A, { topicId: topicId, filter: previewFilter, onUpdate: function (f) { return updatePreviewFilter({ filter: f }); } }) }), (0,jsx_runtime.jsxs)(Toolbar/* ToolbarGroup */.$Q, __assign({ className: classnames_default()(TopicFilters/* default */.A.buttons) }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: handleCancel }), (0,jsx_runtime.jsx)(Button/* default */.A, { primary: true, label: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "filter", color: "white", className: classnames_default()(TopicFilters/* default */.A.filterIcon) }), l('Apply')] }), onClick: handleApply })] }))] })));
    }
    function renderFilterTabs() {
        var isPermitted = function (permissions, tabId) {
            var showCtaInsteadOfHiding = ['images', 'authorInterests', 'authorInterestCategories', 'authorJobs'];
            if (Object.keys(permissions)
                .filter(function (p) { return !showCtaInsteadOfHiding.includes(p); })
                .includes(tabId)) {
                return permissions[tabId] || null;
            }
            return true;
        };
        var changeActiveFilterTab = function (tabId, tabIndex) {
            sendAnalyticalEvent({ eventType: "New filters: ".concat(tabId, " tab clicked") });
            onChangeActiveTab(tabIndex);
        };
        var filterTabs = filterTabsConfig || (globalMode ? getGlobalFilterTypesByTab() : getTopicFilterTypesByTab());
        var activeFilterTab = filterTabs[activeTabIndex];
        return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(TopicFilters/* default */.A.filtersContainer) }, { children: [(0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TopicFilters/* default */.A.tabs) }, { children: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TopicFilters/* default */.A.tabsScrollContainer) }, { children: filterTabs.filter(Boolean).map(function (filterTab, index) {
                            var _a;
                            return isPermitted(tabPermissions, filterTab.id) && ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TopicFilters/* default */.A.tabsNavLink, (_a = {}, _a[TopicFilters/* default */.A.selectedTab] = activeTabIndex === index, _a)), onClick: function () { return changeActiveFilterTab(filterTab.id, index); } }, { children: filterTab.label() }), filterTab.id));
                        }) })) })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TopicFilters/* default */.A.filtersContent) }, { children: (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(TopicFilters/* default */.A.tabContent) }, { children: activeFilterTab.filterTypes.filter(Boolean).map(function (type) {
                            var config = (0,filters/* default */.A)(type, previewFilter, facets, topicId);
                            var component = config.component({
                                hideCounters: hideCounters,
                                countFormat: countFormat,
                                dataRetriever: config.defaultDataRetriever,
                                onSendAnalyticalEvent: sendAnalyticalEvent,
                                onSelect: function (value, overrideParams) {
                                    return handleSelectFilter((overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterType) || type, (overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterValue) || [value]);
                                },
                                onExclude: function (value, overrideParams) {
                                    return handleExcludeFilter((overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterType) || type, (overrideParams === null || overrideParams === void 0 ? void 0 : overrideParams.customFilterValue) || [value]);
                                },
                                tabPermissions: tabPermissions,
                                filterTypePermissions: filterTypePermissions,
                            });
                            if (!isPermitted(filterTypePermissions, type))
                                return null;
                            return component;
                        }) })) }))] })));
    }
};
/* harmony default export */ const components_Filters = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, ownProps) {
    var stateProps = {};
    if (!ownProps.tabPermissions) {
        stateProps.tabPermissions = {
            // @ts-ignore
            systemTags: (0,selectors/* getSubscriptionFeatureValue */.ts)(state, 'smartTags'),
            subjects: (0,themes_selectors/* canShowSubjects */.n7)(state),
            aspects: (0,themes_selectors/* canShowAspects */.d2)(state),
            trends: (0,themes_selectors/* canAccessTrends */.lf)(state),
            images: (0,selectors/* isVisualInsightsEnabled */.PP)(state),
            labs: (0,themes_selectors/* canUseExperimentalFilters */.h)(state),
        };
    }
    if (!ownProps.filterTypePermissions) {
        stateProps.filterTypePermissions = {
            imageBrand: (0,themes_selectors/* canShowLogoFilter */.N)(state),
            authorInterests: (0,selectors/* canShowAudienceInsights */.Po)(state),
            authorInterestCategories: (0,selectors/* canShowAudienceInsights */.Po)(state),
            authorJobs: (0,selectors/* canShowAudienceInsights */.Po)(state),
            audioMonitoring: (0,selectors/* isAudioMonitoringEnabled */.Qf)(state),
        };
    }
    return stateProps;
}, {
    sendAnalyticalEvent: model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}, null, { forwardRef: true }), react.memo, react.forwardRef)(Filters));


/***/ }),

/***/ "c1C6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  t: () => (/* binding */ SOURCE_GROUPS),
  A: () => (/* binding */ components_Filter)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/FilterCheckbox/index.ts + 5 modules
var FilterCheckbox = __webpack_require__("Sdzr");
// EXTERNAL MODULE: ./src/components/ui/ExplanationText/index.ts + 2 modules
var ExplanationText = __webpack_require__("u4n0");
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/other/NoResultsText/index.js + 2 modules
var NoResultsText = __webpack_require__("jMZ8");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SourceFormatFilter/components/Filter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Filter = ({"checkboxGroup":"DtW9nUAZkG11vkdnhVtH"});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SourceFormatFilter/components/Filter.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};








var SOURCE_GROUPS = [
    'Instagram',
    'Pinterest',
    'Facebook',
    'YouTube',
    'Twitch',
];
var GenericFilter = function (_a) {
    var facets = _a.facets, hideCounters = _a.hideCounters, _b = _a.noResultsText, noResultsText = _b === void 0 ? '' : _b, isYoutubeStatistics = _a.isYoutubeStatistics, getPrefix = _a.getPrefix, _c = _a.getKey, getKey = _c === void 0 ? function (item) { return item.get('id'); } : _c, _d = _a.getLabel, getLabel = _d === void 0 ? function (item) { return (0,commonTranslations/* translate */.Tl)(item.get('id')); } : _d, _e = _a.getTitle, getTitle = _e === void 0 ? function (item) { return item.get('id'); } : _e, _f = _a.getValue, getValue = _f === void 0 ? function (item) { return item.get('id'); } : _f, _g = _a.getCount, getCount = _g === void 0 ? function (item, _customProperty) { return item.get('count'); } : _g, _h = _a.getIsSelected, getIsSelected = _h === void 0 ? function (item) { return item.get('selected'); } : _h, _j = _a.getIsExcluded, getIsExcluded = _j === void 0 ? function (item) { return item.get('excluded'); } : _j, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var renderSourceGroup = function (name) {
        var sourceGroupFacets = facets.filter(function (facet) { return facet.get('id').toString().toLowerCase().includes(name.toLowerCase()); });
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ExplanationText/* default */.A, __assign({ withoutMargin: true }, { children: name })), (0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, __assign({ className: Filter.checkboxGroup }, { children: sourceGroupFacets.map(function (item) { return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { prefix: getPrefix && getPrefix(item), label: getLabel && getLabel(item), title: getTitle && getTitle(item), count: !hideCounters && getCount && getCount(item, { isYoutubeStatistics: isYoutubeStatistics }), value: getValue && getValue(item), selected: getIsSelected(item), excluded: getIsExcluded(item), onSelect: onSelect, onExclude: onExclude }, getKey && getKey(item))); }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] }));
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Source-specific format') }), facets.isEmpty() && ((0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: noResultsText })), !facets.isEmpty() && SOURCE_GROUPS.map(renderSourceGroup), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] }));
};
/* harmony default export */ const components_Filter = (GenericFilter);


/***/ }),

/***/ "TGGk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   d: () => (/* binding */ SUBJECT_ORDERS),
/* harmony export */   t: () => (/* binding */ getOrderedSubjects)
/* harmony export */ });
/* harmony import */ var utils_translations_subjectsFilterTranslation__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("/KsC");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

var SUBJECT_ORDERS = {
    potentialCrisis: [
        'conflict',
        'copyrights',
        'crime',
        'crime.corruption',
        'crime.fraud',
        'ecology.ecological sustainability',
        'ecology.pollution',
        'incident',
        'layoff',
        'protest',
        'inequality',
        'inequality.social injustice',
        'inequality.hate',
        'war',
        'ecology.pollution'
    ],
    sports: [
        'sports',
        'sport_other',
        'sport_auto',
        'sports.motor sports',
        'sport_bets',
        'sport_football',
        'sport_boxing',
        'sport_winter',
        'sport_tennis',
        'sport_hockey',
        'sport_basketball'
    ],
    transportation: [
        'transport',
        'driving',
        'autos',
        'automotive.cars',
        'automotive.motorcycles',
        'EVs'
    ],
    entertainment: [
        'photo & video',
        'cinema',
        'music',
        'books',
        'games',
        'cybersport',
        'celebrities',
        'gambling',
        'events'
    ],
    creativity: [
        'arts',
        'design',
        'arts.decorative arts'
    ],
    tradesAndAffairs: [
        'economics',
        'industry',
        'industry.marketing',
        'industry.banking',
        'industry.investing',
        'industry.pharma',
        'industry.pr',
        'industry.trading',
        'industry.insurance',
        'industry.security',
        'business',
        'business.ecommerce',
        'business.startups',
        'media',
        'real_estate',
        'copyrights'
    ],
    civilization: [
        'science',
        'tech',
        'information technology',
        'society',
        'society.government',
        'society.law',
        'politics',
        'religion'
    ],
    planet: [
        'animals & pets',
        'ecology',
        'ecology.ecological sustainability',
        'nature'
    ],
    lifestyle: [
        'beauty',
        'beauty.makeup',
        'beauty.self care',
        'wellness',
        'wellness.fitness',
        'health',
        'wellness.medicine',
        'wellness.mental health',
        'wellness.nutrition',
        'family & parenting',
        'family & parenting.children',
        'fashion',
        'fashion.clothing',
        'fashion.footwear',
        'fashion.jewellery',
        'fashion.outfit',
        'travel',
        'tourism',
        'shopping',
        'study & coaching',
        'home & garden',
        'interior',
        'activities.dancing',
        'activities.hobby & leisure',
        'activities.crafting'
    ],
    mealsAndGroceries: [
        'food',
        'meals & groceries',
        'meals & groceries.cuisine',
        'meals & groceries.drinks'
    ],
};
var getFlippedOrder = function () {
    return Object.entries(SUBJECT_ORDERS).reduce(function (acc, _a) {
        var _b = __read(_a, 2), key = _b[0], value = _b[1];
        value.forEach(function (item) {
            acc[item] = key;
        });
        return acc;
    }, {});
};
var DOWNSIZING_LIMIT = 45;
var getDownsizedSubjects = function (subjects) {
    var sortedSubjects = subjects;
    var potentialCrisisSubjects = sortedSubjects.filter(function (subject) { return SUBJECT_ORDERS.potentialCrisis.includes(subject.id); });
    var otherSubjects = sortedSubjects.filter(function (subject) { return !SUBJECT_ORDERS.potentialCrisis.includes(subject.id); });
    return __spreadArray(__spreadArray([], __read(potentialCrisisSubjects), false), __read(otherSubjects.sort(function (a, b) { return b.count - a.count; }).slice(0, DOWNSIZING_LIMIT)), false);
};
var getOrderedSubjects = function (subjects) {
    var flippedOrder = getFlippedOrder();
    var downsizedSubjects = getDownsizedSubjects(subjects);
    return downsizedSubjects.reduce(function (acc, subject) {
        var orderType = flippedOrder[subject.id] || 'other';
        var subjectsByCurrentOrder = acc.find(function (item) { return item.type === orderType; });
        if (!(0,utils_translations_subjectsFilterTranslation__WEBPACK_IMPORTED_MODULE_0__/* .isSubjectFilterTranslationExists */ .K_)(subject.id))
            return acc;
        if (subjectsByCurrentOrder) {
            subjectsByCurrentOrder.values.push(subject);
            subjectsByCurrentOrder.sum += subject.count;
            return acc;
        }
        acc.push({
            type: orderType,
            label: (0,utils_translations_subjectsFilterTranslation__WEBPACK_IMPORTED_MODULE_0__/* .getSubjectOrderTypesTranslationByKey */ .P3)(orderType),
            values: [subject],
            sum: subject.count,
        });
        return acc;
    }, []).sort(function (a, b) { return b.sum - a.sum; });
};



/***/ }),

/***/ "kfQj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ filters)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
// EXTERNAL MODULE: ./src/state/filter/selectors.ts
var selectors = __webpack_require__("0Zyk");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("k6Di");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("79Ja");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
var possibleConstructorReturn = __webpack_require__("UHbJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
var getPrototypeOf = __webpack_require__("udpn");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("5hh5");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
;// CONCATENATED MODULE: ./src/hoc/skipUpdates.js






function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }



/* harmony default export */ const skipUpdates = (function (propNames) {
  return function (Child) {
    var WrappedComponent = /*#__PURE__*/function (_Component) {
      function WrappedComponent() {
        (0,classCallCheck/* default */.A)(this, WrappedComponent);
        return _callSuper(this, WrappedComponent, arguments);
      }
      (0,inherits/* default */.A)(WrappedComponent, _Component);
      return (0,createClass/* default */.A)(WrappedComponent, [{
        key: "shouldComponentUpdate",
        value: function shouldComponentUpdate(nextProps) {
          var _this = this;
          return !propNames.every(function (propName) {
            return immutable.Iterable.isIterable(nextProps[propName]) ? (0,immutable.is)(nextProps[propName], _this.props[propName]) : nextProps[propName] === _this.props[propName];
          });
        }
      }, {
        key: "render",
        value: function render() {
          return /*#__PURE__*/(0,jsx_runtime.jsx)(Child, _objectSpread({}, this.props));
        }
      }]);
    }(react.Component);
    return WrappedComponent;
  };
});
// EXTERNAL MODULE: ./src/components/ui/H3/index.ts + 2 modules
var H3 = __webpack_require__("cxg2");
// EXTERNAL MODULE: ./src/components/ui/FilterCheckbox/index.ts + 5 modules
var FilterCheckbox = __webpack_require__("Sdzr");
// EXTERNAL MODULE: ./src/components/ui/ExplanationText/index.ts + 2 modules
var ExplanationText = __webpack_require__("u4n0");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
// EXTERNAL MODULE: ./src/components/other/NoResultsText/index.js + 2 modules
var NoResultsText = __webpack_require__("jMZ8");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/GenericFilter/components/Filter.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var GenericFilter = function (_a) {
    var withoutSpacer = _a.withoutSpacer, facets = _a.facets, hideCounters = _a.hideCounters, countFormat = _a.countFormat, filterName = _a.filterName, searchHelperText = _a.searchHelperText, noResultsText = _a.noResultsText, themeId = _a.themeId, isYoutubeStatistics = _a.isYoutubeStatistics, getSearchComponent = _a.getSearchComponent, getPrefix = _a.getPrefix, getLabel = _a.getLabel, getTitle = _a.getTitle, getKey = _a.getKey, getValue = _a.getValue, getCount = _a.getCount, getIsSelected = _a.getIsSelected, getIsExcluded = _a.getIsExcluded, getProcessedFacets = _a.getProcessedFacets, getCta = _a.getCta, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var facetsToUse = getProcessedFacets ? getProcessedFacets(facets, { themeId: themeId, isYoutubeStatistics: isYoutubeStatistics }) : facets;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [filterName ? (0,jsx_runtime.jsx)(H3/* default */.A, __assign({ withSubtitle: !!getSearchComponent }, { children: filterName })) : null, !!getSearchComponent && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ExplanationText/* default */.A, __assign({ withoutMargin: true }, { children: searchHelperText })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), getSearchComponent(onSelect)] })), facets.isEmpty() && (0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: noResultsText }), (0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, { children: facetsToUse.map(function (item) {
                    var cta = getCta === null || getCta === void 0 ? void 0 : getCta(item);
                    var renderFilterCheckbox = function (disabled) {
                        if (disabled === void 0) { disabled = false; }
                        return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { disabled: disabled, prefix: getPrefix && getPrefix(item), label: getLabel && getLabel(item), title: getTitle && getTitle(item), count: !hideCounters && getCount && getCount(item, { isYoutubeStatistics: isYoutubeStatistics }), countFormat: countFormat, value: getValue && getValue(item), selected: getIsSelected(item), excluded: getIsExcluded(item), onSelect: onSelect, onExclude: onExclude }, getKey && getKey(item)));
                    };
                    if (cta) {
                        return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ hoverable: true, position: "top left", text: (0,jsx_runtime.jsxs)("span", { children: [(cta === null || cta === void 0 ? void 0 : cta.title) && (0,jsx_runtime.jsx)("span", { children: cta === null || cta === void 0 ? void 0 : cta.title }), (cta === null || cta === void 0 ? void 0 : cta.title) && (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("span", { children: cta === null || cta === void 0 ? void 0 : cta.text })] }) }, { children: renderFilterCheckbox(true) }), getKey && getKey(item)));
                    }
                    return renderFilterCheckbox();
                }) }), !withoutSpacer && (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
};
/* harmony default export */ const Filter = (GenericFilter);

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/GenericFilter/GenericFilter.tsx




/* harmony default export */ const GenericFilter_GenericFilter = (function (mapStateToProps) {
    return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(Filter);
});

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/GenericFilter/index.ts


// EXTERNAL MODULE: ./src/containers/filters/filterPanels/SourceFormatFilter/components/Filter.tsx + 1 modules
var components_Filter = __webpack_require__("c1C6");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SourceFormatFilter/SourceFormatFilter.tsx




/* harmony default export */ const SourceFormatFilter = (function (mapStateToProps) { return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(components_Filter/* default */.A); });

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SourceFormatFilter/index.ts


// EXTERNAL MODULE: ./node_modules/react-rating/lib/react-rating.esm.js
var react_rating_esm = __webpack_require__("4nr2");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/StarRatingFilter/components/Filter.tsx








var Filter_GenericFilter = function (_a) {
    var facets = _a.facets, hideCounters = _a.hideCounters, _b = _a.noResultsText, noResultsText = _b === void 0 ? '' : _b, isYoutubeStatistics = _a.isYoutubeStatistics, getPrefix = _a.getPrefix, _c = _a.getKey, getKey = _c === void 0 ? function (item) { return item.get('id'); } : _c, _d = _a.getLabel, getLabel = _d === void 0 ? function (item) { return (0,commonTranslations/* translate */.Tl)(item.get('id')); } : _d, _e = _a.getTitle, getTitle = _e === void 0 ? function (item) { return item.get('id'); } : _e, _f = _a.getValue, getValue = _f === void 0 ? function (item) { return item.get('id'); } : _f, _g = _a.getCount, getCount = _g === void 0 ? function (item, _customProperty) { return item.get('count'); } : _g, _h = _a.getIsSelected, getIsSelected = _h === void 0 ? function (item) { return item.get('selected'); } : _h, _j = _a.getIsExcluded, getIsExcluded = _j === void 0 ? function (item) { return item.get('excluded'); } : _j, onSelect = _a.onSelect, onExclude = _a.onExclude;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Rating') }), facets.isEmpty() && (0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: noResultsText }), !facets.isEmpty() && ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, { children: facets.toArray().reverse().map(function (item) { return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { prefix: getPrefix && getPrefix(item), label: getLabel && ((0,jsx_runtime.jsx)(react_rating_esm/* default */.A, { readonly: true, initialRating: getLabel(item), emptySymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "lightgray", size: 24 }), fullSymbol: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "amber", size: 24 }) })), title: getTitle && getTitle(item), count: !hideCounters && getCount && getCount(item, { isYoutubeStatistics: isYoutubeStatistics }), value: getValue && getValue(item), selected: getIsSelected(item), excluded: getIsExcluded(item), onSelect: onSelect, onExclude: onExclude }, getKey && getKey(item))); }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
};
/* harmony default export */ const StarRatingFilter_components_Filter = (Filter_GenericFilter);

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/StarRatingFilter/StarRatingFilter.tsx




/* harmony default export */ const StarRatingFilter = (function (mapStateToProps) { return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(StarRatingFilter_components_Filter); });

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/StarRatingFilter/index.ts


// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/utils/translations/autoCategoriesTranslation.js
var autoCategoriesTranslation = __webpack_require__("e4Wn");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SystemTagFilter/components/Filter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SystemTagFilter_components_Filter = ({"subtitle":"GNtOp2MnD_fNgyLrztc8","womGroup":"sugbcxq7KKQL5OMW8Emx"});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SystemTagFilter/components/Filter.tsx
var Filter_assign = (undefined && undefined.__assign) || function () {
    Filter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Filter_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};










var mainSectionOrder = [
    'article',
    'captionBeta',
    'listBeta',
    'porn',
    'pornImage'
];
var womSectionOrder = [
    'wom',
    'womReview',
    'womQuestion',
    'womComparison',
    'womComplaint',
    'womRecommendation',
    'womOfficialResponse'
];
var promoSectionOrder = [
    'advertisement',
    'commercial',
    'donation',
    'giveaway',
    'promotion',
    'recipe',
    'socialPromo',
    'vacancy'
];
var countSorter = function (facet) { return -facet.get('count'); };
var SystemTagFilter = function (_a) {
    var facets = _a.facets, hideCounters = _a.hideCounters, widgetId = _a.widgetId, dashboardId = _a.dashboardId, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var handleClearGroupFilter = function (group, shouldClearExclude) {
        group.forEach(function (x) {
            if (x.get('selected'))
                onSelect(x.get('id'), !x.get('selected'));
            if (shouldClearExclude && x.get('excluded'))
                onExclude(x.get('id'), !x.get('excluded'));
        });
    };
    var renderWom = function (group) {
        var wom = group.find(function (x) { return x.get('id') === 'wom'; });
        var other = group.filter(function (x) { return x.get('id') !== 'wom'; });
        if (!wom)
            return null;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, Filter_assign({ tagClassName: SystemTagFilter_components_Filter.womGroup }, { children: (0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { prefix: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: wom.get('id'), color: "gray" }), label: (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(wom.get('id')).label, title: (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(wom.get('id')).title, count: !hideCounters && wom.get('count'), value: wom.get('id'), selected: wom.get('selected'), excluded: wom.get('excluded'), indeterminate: other.some(function (x) { return x.get('selected'); }), customSelectedIconTypeFalse: !wom.get('selected') && other.some(function (x) { return x.get('selected'); })
                            ? 'checkbox-minus'
                            : null, onSelect: function (id, value) {
                            if (widgetId || dashboardId) {
                                return onSelect(__spreadArray([wom.get('id')], __read(other.filter(function (x) { return x.get('selected'); }).map(function (x) { return x.get('id'); })), false), null);
                            }
                            handleClearGroupFilter(other);
                            return onSelect(id, value);
                        }, onExclude: function (id, value) {
                            if (widgetId || dashboardId) {
                                return onExclude(__spreadArray([wom.get('id')], __read(other.filter(function (x) { return x.get('excluded'); }).map(function (x) { return x.get('id'); })), false), null);
                            }
                            handleClearGroupFilter(other, true);
                            return onExclude(id, value);
                        } }, wom.get('id')) })), (0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, { children: other.map(function (item) {
                        var id = item.get('id');
                        var translation = (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(id);
                        return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { prefix: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: id, color: "gray" }), label: translation.label, title: translation.title, count: !hideCounters && item.get('count'), value: id, selected: item.get('selected'), excluded: item.get('excluded'), indeterminate: wom.get('selected'), customSelectedIconTypeFalse: wom.get('selected')
                                ? 'checkbox-checked'
                                : null, onSelect: function (x, value) {
                                if (widgetId || dashboardId) {
                                    onSelect(wom.get('selected') ? [x, wom.get('id')] : x, null);
                                    return;
                                }
                                if (wom.get('selected'))
                                    onSelect(wom.get('id'), !wom.get('selected'));
                                onSelect(x, value);
                            }, onExclude: function (x, value) {
                                if (widgetId || dashboardId) {
                                    onExclude(wom.get('excluded') ? [x, wom.get('id')] : x, null);
                                    return;
                                }
                                if (wom.get('excluded'))
                                    onExclude(wom.get('id'), !wom.get('excluded'));
                                onExclude(x, value);
                            } }, id));
                    }) })] }));
    };
    var renderGroup = function (group) {
        return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, { children: group.map(function (item) {
                var id = item.get('id');
                var translation = (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(id);
                return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { prefix: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: id, color: "gray" }), label: translation.label, title: translation.title, count: !hideCounters && item.get('count'), value: id, selected: item.get('selected'), excluded: item.get('excluded'), onSelect: onSelect, onExclude: onExclude }, id));
            }) }));
    };
    var renderFilters = function () {
        var _a = facets.reduce(function (sections, facet) {
            if (mainSectionOrder.includes(facet.get('id'))) {
                return Filter_assign(Filter_assign({}, sections), { mainSection: sections.mainSection.push(facet) });
            }
            if (womSectionOrder.includes(facet.get('id'))) {
                return Filter_assign(Filter_assign({}, sections), { womSection: sections.womSection.push(facet) });
            }
            if (promoSectionOrder.includes(facet.get('id'))) {
                return Filter_assign(Filter_assign({}, sections), { promoSection: sections.promoSection.push(facet) });
            }
            return sections;
        }, {
            mainSection: (0,immutable.List)(),
            womSection: (0,immutable.List)(),
            promoSection: (0,immutable.List)(),
        }), mainSection = _a.mainSection, womSection = _a.womSection, promoSection = _a.promoSection;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [renderGroup(mainSection.sortBy(countSorter)), (0,jsx_runtime.jsx)("div", Filter_assign({ className: classnames_default()(SystemTagFilter_components_Filter.subtitle) }, { children: l('WOM categories') })), renderWom(womSection.sortBy(countSorter)), (0,jsx_runtime.jsx)("div", Filter_assign({ className: classnames_default()(SystemTagFilter_components_Filter.subtitle) }, { children: l('Promo categories') })), renderGroup(promoSection.sortBy(countSorter))] }));
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Auto-categories') }), facets.isEmpty()
                && ((0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: l('No auto-categories matching the chosen filter have been found') })), renderFilters(), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
};
/* harmony default export */ const filterPanels_SystemTagFilter_components_Filter = (SystemTagFilter);

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SystemTagFilter/SystemTagFilter.tsx




/* harmony default export */ const SystemTagFilter_SystemTagFilter = (function (mapStateToProps) { return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(filterPanels_SystemTagFilter_components_Filter); });

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SystemTagFilter/index.ts


// EXTERNAL MODULE: ./src/utils/translations/subjectsFilterTranslation.js
var subjectsFilterTranslation = __webpack_require__("/KsC");
// EXTERNAL MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/utils.ts
var utils = __webpack_require__("TGGk");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/components/Filter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const SubjectsFilter_components_Filter = ({"subtitle":"KXqW0lJ2wfpemGsX0Lmr"});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/components/Filter.tsx
var components_Filter_assign = (undefined && undefined.__assign) || function () {
    components_Filter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return components_Filter_assign.apply(this, arguments);
};










var SubjectsFilter = function (_a) {
    var facets = _a.facets, hideCounters = _a.hideCounters, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var renderGroup = function (group) {
        return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A.Group, { children: group === null || group === void 0 ? void 0 : group.map(function (item) {
                var id = item.id;
                var translation = (0,subjectsFilterTranslation/* getSubjectsFilterTranslation */.zY)(id);
                return ((0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, { prefix: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: id, color: "gray" }), label: translation.label, title: translation.title, count: !hideCounters && item.count, value: id, selected: item.selected, excluded: item.excluded, onSelect: onSelect, onExclude: onExclude }, id));
            }) }));
    };
    var renderFilters = function () {
        var orderedSubjects = (0,utils/* getOrderedSubjects */.t)(facets);
        var otherGroup = orderedSubjects.find(function (order) { return order.type === 'other'; });
        var crisisGroup = orderedSubjects.find(function (order) { return order.type === 'potentialCrisis'; });
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [crisisGroup
                    ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", components_Filter_assign({ className: classnames_default()(SubjectsFilter_components_Filter.subtitle) }, { children: crisisGroup.label })), renderGroup(crisisGroup.values)] }))
                    : null, orderedSubjects.filter(function (order) { return !['other', 'potentialCrisis'].includes(order.type); }).map(function (order) {
                    return (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", components_Filter_assign({ className: classnames_default()(SubjectsFilter_components_Filter.subtitle) }, { children: order.label })), renderGroup(order.values)] });
                }), otherGroup
                    ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("div", components_Filter_assign({ className: classnames_default()(SubjectsFilter_components_Filter.subtitle) }, { children: l('Other', 'subjectsOrderType') })), renderGroup(otherGroup.values)] }))
                    : null] }));
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: l('Subjects') }), facets.isEmpty()
                && ((0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: l('No subjects matching the chosen filter have been found') })), renderFilters(), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
};
/* harmony default export */ const filterPanels_SubjectsFilter_components_Filter = (SubjectsFilter);

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/SubjectsFilter.tsx




/* harmony default export */ const SubjectsFilter_SubjectsFilter = (function (mapStateToProps) { return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(filterPanels_SubjectsFilter_components_Filter); });

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/index.ts


// EXTERNAL MODULE: ./src/state/metaData/model.ts + 1 modules
var model = __webpack_require__("Jpep");
// EXTERNAL MODULE: ./src/state/metaData/selectors.ts
var metaData_selectors = __webpack_require__("UhQz");
;// CONCATENATED MODULE: ./src/utils/selectors.js
/* harmony default export */ const utils_selectors = ({
  ASPECTS_FILTER_TAB_CLASSNAME: 'aspectsTabPanel',
  WIDGET_CONSTRUCTOR_ASPECTS_FILTER_TAB_CLASSNAME: 'widgetConstructorAspectsFilterTabPanel'
});
// EXTERNAL MODULE: ./src/utils/translations/aspectTranslation.js
var aspectTranslation = __webpack_require__("0hC/");
// EXTERNAL MODULE: ./src/components/ui/Autocomplete/index.ts + 2 modules
var Autocomplete = __webpack_require__("qnrm");
// EXTERNAL MODULE: ./src/utils/debounce.js
var debounce = __webpack_require__("P6/z");
;// CONCATENATED MODULE: ./src/containers/search/search.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const search = ({"base":"cJf3Oxo0FCovfQ_fJXs7","suggestionContainer":"kdVzFUtlIdCrr2osgY6u","additionalInfo":"KNVRxMWqEle_m1o4pMPJ"});
;// CONCATENATED MODULE: ./src/containers/search/FilterSearch.js






function FilterSearch_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, FilterSearch_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function FilterSearch_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (FilterSearch_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }






var FilterSearch = /*#__PURE__*/function (_Component) {
  function FilterSearch(props) {
    var _this;
    (0,classCallCheck/* default */.A)(this, FilterSearch);
    _this = FilterSearch_callSuper(this, FilterSearch, [props]);
    (0,defineProperty/* default */.A)(_this, "state", {
      value: '',
      isLoading: false
    });
    (0,defineProperty/* default */.A)(_this, "handleFetch", function (value) {
      var themeId = _this.props.themeId;
      if (value) {
        _this.props.onSearch({
          themeId: themeId,
          query: value
        });
      }
    });
    (0,defineProperty/* default */.A)(_this, "handleChange", function (e, value) {
      _this.setState({
        value: value,
        isLoading: !!value
      });
      _this.handleSuggestionsFetch(value);
    });
    (0,defineProperty/* default */.A)(_this, "handleSelect", function (suggestion) {
      var onSelect = _this.props.onSelect;
      onSelect(suggestion);
      _this.clear();
    });
    (0,defineProperty/* default */.A)(_this, "clear", function () {
      var onClear = _this.props.onClear;
      _this.setState({
        value: ''
      });
      if (onClear) {
        onClear();
      }
    });
    _this.handleSuggestionsFetch = (0,debounce/* default */.A)(_this.handleFetch, 500);
    return _this;
  }
  (0,inherits/* default */.A)(FilterSearch, _Component);
  return (0,createClass/* default */.A)(FilterSearch, [{
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      if (prevProps.isLoading && !this.props.isLoading) {
        this.setState({
          isLoading: false
        });
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$state = this.state,
        value = _this$state.value,
        isLoading = _this$state.isLoading;
      var _this$props = this.props,
        suggestions = _this$props.suggestions,
        sortingKeys = _this$props.sortingKeys,
        renderSuggestion = _this$props.renderSuggestion,
        placeholder = _this$props.placeholder,
        parentContainerSelector = _this$props.parentContainerSelector;
      return /*#__PURE__*/(0,jsx_runtime.jsx)(Autocomplete/* default */.A, {
        suggestionContainerClassName: classnames_default()(search.suggestionContainer),
        parentContainerSelector: parentContainerSelector,
        value: value,
        size: "small",
        placeholder: placeholder || l('Search'),
        isLoading: isLoading,
        suggestions: suggestions && value ? suggestions.toJS() : [],
        sortingProperties: {
          keys: sortingKeys
        },
        renderItem: renderSuggestion,
        onChange: this.handleChange,
        onSelect: this.handleSelect
      });
    }
  }]);
}(react.Component);

;// CONCATENATED MODULE: ./src/containers/search/AspectsSearch.tsx
var AspectsSearch_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var renderSuggestion = function (suggestion) {
    return ((0,jsx_runtime.jsx)("span", { children: suggestion.aspect }));
};
var AspectsSearch = function (_a) {
    var aspectsList = _a.aspectsList, isAllAspectsLoading = _a.isAspectsListLoading, fetchAspects = _a.fetchAspects, onSelect = _a.onSelect;
    var _b = AspectsSearch_read((0,react.useState)([]), 2), suggestions = _b[0], setSuggestions = _b[1];
    var _c = AspectsSearch_read((0,react.useState)(false), 2), isLoading = _c[0], setIsLoading = _c[1];
    (0,react.useEffect)(function () {
        if (!Object.keys(aspectsList).length && !isAllAspectsLoading) {
            fetchAspects();
        }
    }, []);
    var handleSelect = function (suggestion) {
        var aspectTranslations = (0,aspectTranslation/* getTranslations */.$)();
        var aspectName = Object.keys(aspectTranslations)
            .find(function (key) { return aspectTranslations[key].label === suggestion.aspect; });
        onSelect(aspectName);
    };
    var selector = ".".concat(utils_selectors.ASPECTS_FILTER_TAB_CLASSNAME);
    var handleSearch = function (_a) {
        var query = _a.query;
        setIsLoading(true);
        var translations = (0,aspectTranslation/* getTranslations */.$)();
        var aspects = Object.keys(translations)
            .map(function (aspectName) { return ({ aspect: aspectName, label: translations[aspectName].label }); })
            .filter(function (_a) {
            var label = _a.label;
            return label.toLowerCase().includes(query.toLowerCase());
        })
            .map(function (_a) {
            var label = _a.label;
            return ({ aspect: label });
        });
        setSuggestions(aspects);
        setIsLoading(false);
    };
    return ((0,jsx_runtime.jsx)(FilterSearch, { parentContainerSelector: selector, suggestions: (0,immutable.fromJS)(suggestions), sortingKeys: ['aspect'], isLoading: isLoading, renderSuggestion: renderSuggestion, onSearch: handleSearch, onSelect: handleSelect }));
};
/* harmony default export */ const search_AspectsSearch = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        aspectsList: (0,metaData_selectors/* getAspectsList */.o$)(state),
        isAspectsListLoading: (0,metaData_selectors/* isAspectsListLoading */.MQ)(state),
    });
}, { fetchAspects: model/* metaDataModel */.v.action.fetchAspects })(AspectsSearch));

// EXTERNAL MODULE: ./src/utils/sentiments.ts
var sentiments = __webpack_require__("ofyo");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules
var slicedToArray = __webpack_require__("oYSA");
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/utils.js


function utils_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function utils_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? utils_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : utils_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }


var ASPECT_STATE = {
  SELECTED: 'SELECTED',
  EXCLUDED: 'EXCLUDED',
  NOT_SELECTED: 'NOT_SELECTED',
  INDETERMINATE: 'INDETERMINATE'
};
var getAspectState = function getAspectState(facet) {
  if (facet.selected) {
    return ASPECT_STATE.SELECTED;
  }
  if (facet.excluded) {
    return ASPECT_STATE.EXCLUDED;
  }
  if (Object.values(facet.sentiments).some(function (_ref) {
    var selected = _ref.selected,
      excluded = _ref.excluded;
    return selected || excluded;
  })) {
    return ASPECT_STATE.INDETERMINATE;
  }
  return ASPECT_STATE.NOT_SELECTED;
};
var formatAspects = function formatAspects(facets) {
  return facets.reduce(function (accum, facet) {
    var state = getAspectState(facet);
    return utils_objectSpread(utils_objectSpread({}, accum), {}, (0,defineProperty/* default */.A)({}, facet.id, utils_objectSpread(utils_objectSpread({}, facet), {}, {
      state: state,
      label: (0,aspectTranslation/* getAspectLabel */.zS)(facet.id),
      title: (0,aspectTranslation/* getAspectTitle */.TI)(facet.id)
    })));
  }, {});
};
var getUsedAndSelectedAspects = function getUsedAndSelectedAspects(aspects) {
  return aspects.filter(function (item) {
    return item.state !== ASPECT_STATE.NOT_SELECTED || item.count;
  });
};
var useAspects = function useAspects(_ref2) {
  var facets = _ref2.facets;
  var _useState = (0,react.useState)({}),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    aspects = _useState2[0],
    setAspects = _useState2[1];
  (0,react.useEffect)(function () {
    if (facets) {
      setAspects(formatAspects(facets.length ? facets : []));
    }
  }, [facets]);
  return aspects;
};
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/AspectSentimentControl/AspectSentimentControl.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const AspectSentimentControl = ({"base":"Sauiq7MLzwlxSwVLzoqI","control":"FhqBm3ViferswXSsPjoF","controlSelect":"RBYWkSyTrJmFaA0uiBQR","controlExclude":"Jd2biDhUaNXyPYQLZnVw","label":"Um4IhBKKjdf9QqRz8eMx","controlSelected":"EeR2lVmfxtIa5MwhW0C6","labelSelected":"KqaoFKWYwPCpnfIryPiQ","controlExcluded":"Y4oxgrVXilauwKkrRYt0","labelExcluded":"WdBeqhR6R6NcW5JZlQ6M","count":"qGyNCC6qcqnbpx35L6FL"});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/AspectSentimentControl/AspectSentimentControl.js







var ICON_SIZE = 11;
/* harmony default export */ const AspectSentimentControl_AspectSentimentControl = (function (_ref) {
  var aspectName = _ref.aspectName,
    sentiment = _ref.sentiment,
    count = _ref.count,
    selected = _ref.selected,
    excluded = _ref.excluded,
    onSelect = _ref.onSelect,
    onExclude = _ref.onExclude;
  var format = count >= 1000 ? '0,0 a' : '0,0';
  var mappedCount = numeral_default()(count || 0).format(format);
  var onSentimentSelect = function onSentimentSelect() {
    if (!selected) {
      onSelect(aspectName, sentiment);
    }
  };
  var onSentimentExclude = function onSentimentExclude() {
    if (!excluded) {
      onExclude(aspectName, sentiment);
    }
  };
  var onLabelClick = function onLabelClick() {
    if (!selected && !excluded || selected) {
      return onSelect(aspectName, sentiment);
    }
    return onExclude(aspectName, sentiment);
  };
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(AspectSentimentControl.base),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(AspectSentimentControl.control, AspectSentimentControl.controlSelect, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, AspectSentimentControl.controlSelected, selected), AspectSentimentControl.controlExcluded, excluded)),
      onClick: onSentimentSelect,
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        size: ICON_SIZE,
        type: "plus"
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
      className: classnames_default()(AspectSentimentControl.label, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, AspectSentimentControl.labelSelected, selected), AspectSentimentControl.labelExcluded, excluded)),
      onClick: onLabelClick,
      children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        size: "small",
        type: sentiments/* SENTIMENT_ICON_TYPE */.Fh[sentiment],
        color: sentiments/* SENTIMENT_ICON_COLOR */.Q2[sentiment]
      }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(AspectSentimentControl.count),
        children: mappedCount
      })]
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(AspectSentimentControl.control, AspectSentimentControl.controlExclude, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, AspectSentimentControl.controlSelected, selected), AspectSentimentControl.controlExcluded, excluded)),
      onClick: onSentimentExclude,
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(Icon/* default */.A, {
        size: ICON_SIZE,
        type: "minus"
      })
    })]
  });
});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/AspectSentimentControl/index.js

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/AspectFilterCheckbox/AspectFilterCheckbox.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AspectFilterCheckbox = ({"overlayedBlock":"chxg4CtfGgau3EQtMLMs","flexCenter":"gEFyqn1Y31osUAva6y_f","smartFeature":"WSnbRZoolYlkE_wmT9O2","tag":"pLvGRxRy_PYBHjtBOL6Z","visibleScrollBar":"OTUrKfVERijWW4N7k16D","hiddenScrollBar":"AWtHvQsiFpU69RuDbluw","aspect":"MgT_UvvBtmAmrX1C7Q4Z","checkbox":"v2pTn_9JKfDrqjyfRyNZ","sentimentControlContainer":"uCpLyTUY67Qvy8RoXOto","sentimentControl":"jzus1UpB3vqeURLTvq75","sentimentLabel":"YitJmpo9n6Pq3YJIF5yY","isAlwaysWithSentimentLabels":"kd0hDGv1CPGUQjE7eISQ","isWithSentimentLabelsOnDesktop":"KU41PGmdoNaVtbbJMXpt"});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/AspectFilterCheckbox/AspectFilterCheckbox.js









/* harmony default export */ const AspectFilterCheckbox_AspectFilterCheckbox = (function (_ref) {
  var className = _ref.className,
    aspect = _ref.aspect,
    isAlwaysWithSentimentLabels = _ref.isAlwaysWithSentimentLabels,
    isWithSentimentLabelsOnDesktop = _ref.isWithSentimentLabelsOnDesktop,
    onSelect = _ref.onSelect,
    onExclude = _ref.onExclude;
  var onAspectSelect = function onAspectSelect(aspectName) {
    return onSelect(aspectName);
  };
  var onAspectExclude = function onAspectExclude(aspectName) {
    return onExclude(aspectName);
  };
  var isSelected = aspect.state === ASPECT_STATE.SELECTED;
  var isIndeterminate = aspect.state === ASPECT_STATE.INDETERMINATE;
  var isExcluded = aspect.state === ASPECT_STATE.EXCLUDED;
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
    className: classnames_default()(AspectFilterCheckbox.aspect, className, (0,defineProperty/* default */.A)((0,defineProperty/* default */.A)({}, AspectFilterCheckbox.isAlwaysWithSentimentLabels, isAlwaysWithSentimentLabels), AspectFilterCheckbox.isWithSentimentLabelsOnDesktop, isWithSentimentLabelsOnDesktop)),
    children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(AspectFilterCheckbox.checkbox),
      children: /*#__PURE__*/(0,jsx_runtime.jsx)(FilterCheckbox/* default */.A, {
        label: aspect.label,
        value: aspect.id,
        title: aspect.title,
        selected: isSelected || isIndeterminate,
        excluded: isExcluded,
        indeterminate: isIndeterminate,
        onSelect: onAspectSelect,
        onExclude: onAspectExclude
      })
    }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
      className: classnames_default()(AspectFilterCheckbox.sentimentControlContainer),
      children: sentiments/* SENTIMENT_NAMES */.dY.map(function (sentiment) {
        var info = aspect.sentiments[sentiment];
        var count = info ? info.count : 0;
        return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
          className: classnames_default()(AspectFilterCheckbox.sentimentControl),
          children: [(isAlwaysWithSentimentLabels || isWithSentimentLabelsOnDesktop) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
            className: classnames_default()(AspectFilterCheckbox.sentimentLabel),
            children: (0,commonTranslations/* translate */.Tl)(sentiment)
          }), /*#__PURE__*/(0,jsx_runtime.jsx)(AspectSentimentControl_AspectSentimentControl, {
            aspectName: aspect.id,
            sentiment: sentiment,
            count: count,
            selected: info.selected,
            excluded: info.excluded,
            onSelect: onSelect,
            onExclude: onExclude
          })]
        }, sentiment);
      })
    })]
  }, aspect.id);
});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/AspectFilterCheckbox/index.js

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/Filter.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const AspectsFilter_components_Filter = ({"overlayedBlock":"qLIpn0NUzUru3Fm1v9Dn","flexCenter":"dxVZqYnowPbT2t2jhHTZ","smartFeature":"tdhQCRPGsGEI2QjYW0NE","tag":"z27bGp64ik1heMsnGYPO","visibleScrollBar":"niIGpeVZ5cDCQhbOG8PQ","hiddenScrollBar":"EtfyfryxpbniSSN248Q3","filtersContainer":"rKsAlThppJVd7zcYSQ0R","aspect":"U45kxfWqq8vo9MyWlbV_","aspectWide":"R64pbGGNjvy8ljlAMByy"});
;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/components/Filter.tsx
var AspectsFilter_components_Filter_assign = (undefined && undefined.__assign) || function () {
    AspectsFilter_components_Filter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AspectsFilter_components_Filter_assign.apply(this, arguments);
};










var AspectsFilter = function (_a) {
    var facets = _a.facets, dashboardId = _a.dashboardId, widgetId = _a.widgetId, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var aspects = useAspects({ facets: facets });
    var onAspectSelect = function (aspectName, sentiment) {
        var aspect = aspects[aspectName];
        var sentiments = Object.values(aspect.sentiments);
        if (!aspect) {
            return;
        }
        if (sentiment) {
            onSelect([aspect.sentiments[sentiment].key]);
            return;
        }
        if (aspect.state === ASPECT_STATE.INDETERMINATE) {
            onSelect(sentiments.filter(function (_a) {
                var selected = _a.selected;
                return !selected;
            }).map(function (_a) {
                var key = _a.key;
                return key;
            }));
            return;
        }
        onSelect(sentiments.map(function (_a) {
            var key = _a.key;
            return key;
        }));
    };
    var onAspectExclude = function (aspectName, sentiment) {
        var aspect = aspects[aspectName];
        var sentiments = Object.values(aspect.sentiments);
        if (sentiment) {
            onExclude([aspect.sentiments[sentiment].key]);
            return;
        }
        if (aspect.state === ASPECT_STATE.INDETERMINATE) {
            onExclude(sentiments.filter(function (_a) {
                var excluded = _a.excluded;
                return !excluded;
            }).map(function (_a) {
                var key = _a.key;
                return key;
            }));
            return;
        }
        onExclude(sentiments.map(function (_a) {
            var key = _a.key;
            return key;
        }));
    };
    var topAspects = getUsedAndSelectedAspects(Object.values(aspects));
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, AspectsFilter_components_Filter_assign({ withSubtitle: true }, { children: l('Aspects') })), (0,jsx_runtime.jsx)(ExplanationText/* default */.A, AspectsFilter_components_Filter_assign({ withoutMargin: true }, { children: l("Use the search field to select an aspect that's not on the list") })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(search_AspectsSearch, { dashboardId: dashboardId, widgetId: widgetId, onSelect: onAspectSelect }), (!facets || facets.length === 0 || topAspects.length === 0) && ((0,jsx_runtime.jsx)(NoResultsText/* default */.A, { children: l('No recognized aspects were found that match chosen filter') })), (0,jsx_runtime.jsx)("div", AspectsFilter_components_Filter_assign({ className: classnames_default()(AspectsFilter_components_Filter.filtersContainer) }, { children: topAspects.map(function (aspect, index) {
                    var _a;
                    var isFirst = index === 0;
                    var isSecond = index === 1;
                    return ((0,jsx_runtime.jsx)(AspectFilterCheckbox_AspectFilterCheckbox, { className: classnames_default()(AspectsFilter_components_Filter.aspect, (_a = {}, _a[AspectsFilter_components_Filter.aspectWide] = !dashboardId, _a)), aspect: aspect, isAlwaysWithSentimentLabels: isFirst, isWithSentimentLabelsOnDesktop: isSecond && !dashboardId, onSelect: onAspectSelect, onExclude: onAspectExclude }, index));
                }) })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
};
/* harmony default export */ const filterPanels_AspectsFilter_components_Filter = (AspectsFilter);

;// CONCATENATED MODULE: ./src/containers/filters/filterPanels/AspectsFilter/AspectsFilter_NEW.tsx




/* harmony default export */ const AspectsFilter_NEW = (function (mapStateToProps) { return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(filterPanels_AspectsFilter_components_Filter); });

// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
;// CONCATENATED MODULE: ./src/containers/filters/RangeFilterCreator/components/Filter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const RangeFilterCreator_components_Filter = ({"rangesContainer":"L0qIFdPzwzTRE5bxK68w","rangeField":"N6QDRSDrv44HUgOVmsc3","separator":"Q7RfSTuehk5JEzKLWkmr"});
;// CONCATENATED MODULE: ./src/containers/filters/RangeFilterCreator/components/Filter.tsx
var RangeFilterCreator_components_Filter_assign = (undefined && undefined.__assign) || function () {
    RangeFilterCreator_components_Filter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RangeFilterCreator_components_Filter_assign.apply(this, arguments);
};
var Filter_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var RangeFilter = function (_a) {
    var filterName = _a.filterName, appliedRange = _a.appliedRange, onSelect = _a.onSelect;
    var _b = Filter_read((0,react.useState)(appliedRange || { from: null, to: null }), 2), usedRange = _b[0], setRange = _b[1];
    var _c = Filter_read((0,react.useState)(false), 2), isFuzzy = _c[0], setFuzzy = _c[1];
    (0,react.useEffect)(function () {
        var from = usedRange.from, to = usedRange.to;
        if (appliedRange)
            setFuzzy(from !== appliedRange.from || to !== appliedRange.to);
        else
            setFuzzy(from !== null || to !== null);
    });
    var handleChangeRange = function (rangeType, newValue) {
        var _a;
        if (!isNaN(newValue)) {
            setRange(RangeFilterCreator_components_Filter_assign(RangeFilterCreator_components_Filter_assign({}, usedRange), (_a = {}, _a[rangeType] = newValue || null, _a)));
        }
    };
    var handleSelect = function () {
        onSelect(usedRange);
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(H3/* default */.A, { children: filterName }), (0,jsx_runtime.jsxs)("div", RangeFilterCreator_components_Filter_assign({ className: classnames_default()(RangeFilterCreator_components_Filter.rangesContainer) }, { children: [(0,jsx_runtime.jsx)(TextField/* default */.A, { size: "small", className: classnames_default()(RangeFilterCreator_components_Filter.rangeField), placeholder: l('from'), value: usedRange.from || '', onChange: function (value) { return handleChangeRange('from', value || null); }, onPressEnter: handleSelect }), (0,jsx_runtime.jsx)("span", RangeFilterCreator_components_Filter_assign({ className: classnames_default()(RangeFilterCreator_components_Filter.separator) }, { children: " - " })), (0,jsx_runtime.jsx)(TextField/* default */.A, { size: "small", className: classnames_default()(RangeFilterCreator_components_Filter.rangeField), placeholder: l('to'), value: usedRange.to || '', onChange: function (value) { return handleChangeRange('to', value || null); }, onPressEnter: handleSelect }), isFuzzy && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { ghost: true, primary: true, size: "small", label: l('Add to filter'), onClick: handleSelect })] }))] })), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
};
/* harmony default export */ const filters_RangeFilterCreator_components_Filter = (RangeFilter);

;// CONCATENATED MODULE: ./src/containers/filters/RangeFilterCreator/RangeFilterCreator.tsx




/* harmony default export */ const RangeFilterCreator = (function (mapStateToProps) { return (0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(mapStateToProps), skipUpdates(['facets']))(filters_RangeFilterCreator_components_Filter); });

;// CONCATENATED MODULE: ./src/containers/filters/RangeFilterCreator/index.ts


// EXTERNAL MODULE: ./src/components/ui/SourceIcon/SourceIcon.tsx + 2 modules
var SourceIcon = __webpack_require__("tfIF");
// EXTERNAL MODULE: ./src/hooks/useApi.tsx
var useApi = __webpack_require__("lvrO");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/utils/Mutable.ts + 1 modules
var Mutable = __webpack_require__("2N3d");
;// CONCATENATED MODULE: ./src/containers/search/SourcesSearch.tsx









var SourcesSearch = function (props) {
    var _a = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.sources.search), fetch = _a.fetch, data = _a.data, loading = _a.loading;
    var _b = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.sources.searchGlobal), fetchGlobal = _b.fetch, dataGlobal = _b.data, loadingGlobal = _b.loading;
    var handleSearch = function (_a) {
        var query = _a.query, themeId = _a.themeId;
        if (themeId) {
            fetch({ themeId: themeId, prefix: query });
        }
        else {
            fetchGlobal({ prefix: query });
        }
    };
    var handleSelect = function (suggestion) {
        var onSelect = props.onSelect;
        onSelect(suggestion.id);
    };
    var renderSuggestion = function (suggestion) {
        return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: suggestion.name, size: 12 }), " ", suggestion.name] }));
    };
    var topicId = props.topicId;
    var suggestions = topicId ? data === null || data === void 0 ? void 0 : data.sources : dataGlobal === null || dataGlobal === void 0 ? void 0 : dataGlobal.sources;
    return ((0,jsx_runtime.jsx)(FilterSearch, { themeId: topicId, suggestions: Mutable/* Mutable */.rV.from(suggestions || []), sortingKeys: ['name'], isLoading: loading || loadingGlobal, renderSuggestion: renderSuggestion, onSearch: handleSearch, onSelect: handleSelect }));
};
/* harmony default export */ const search_SourcesSearch = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, _a) {
    var topicId = _a.topicId;
    return ({
        topicId: topicId || (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    });
}, null))(SourcesSearch));

// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
;// CONCATENATED MODULE: ./src/containers/search/AuthorsSearch.tsx
var AuthorsSearch_assign = (undefined && undefined.__assign) || function () {
    AuthorsSearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return AuthorsSearch_assign.apply(this, arguments);
};










var AuthorsSearch = function (props) {
    var _a = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.authors.search), fetch = _a.fetch, data = _a.data, loading = _a.loading;
    var handleSearch = function (_a) {
        var query = _a.query, themeId = _a.themeId;
        fetch({ themeId: themeId, prefix: query });
    };
    var handleSelect = function (suggestion) {
        var onSelect = props.onSelect;
        onSelect(suggestion.id);
    };
    var renderSuggestion = function (suggestion) {
        var nickname = suggestion.nickname;
        return ((0,jsx_runtime.jsxs)("span", AuthorsSearch_assign({ title: nickname }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: suggestion.sourceName, size: 12 }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), suggestion.name, (0,jsx_runtime.jsx)(Space/* default */.A, {}), nickname && (0,jsx_runtime.jsxs)("span", AuthorsSearch_assign({ style: { fontSize: '12px', color: 'gray' } }, { children: ["@", nickname] }))] })));
    };
    var themeId = props.themeId;
    return ((0,jsx_runtime.jsx)(FilterSearch, { themeId: themeId, suggestions: Mutable/* Mutable */.rV.from((data === null || data === void 0 ? void 0 : data.authors) || []), sortingKeys: ['name', 'nickname'], isLoading: loading, renderSuggestion: renderSuggestion, onSearch: handleSearch, onSelect: handleSelect }));
};
/* harmony default export */ const search_AuthorsSearch = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, _a) {
    var topicId = _a.topicId;
    return ({
        themeId: topicId || (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    });
}, null))(AuthorsSearch));

;// CONCATENATED MODULE: ./src/containers/search/ChannelsSearch.tsx
var ChannelsSearch_assign = (undefined && undefined.__assign) || function () {
    ChannelsSearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ChannelsSearch_assign.apply(this, arguments);
};









var ChannelsSearch = function (props) {
    var _a = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.channels.search), fetch = _a.fetch, data = _a.data, loading = _a.loading;
    var handleSearch = function (_a) {
        var query = _a.query, themeId = _a.themeId;
        fetch({ themeId: themeId, prefix: query });
    };
    var handleSelect = function (suggestion) {
        var onSelect = props.onSelect;
        onSelect(suggestion.id);
    };
    var renderSuggestion = function (suggestion) {
        var nickname = suggestion.nickname;
        return ((0,jsx_runtime.jsxs)("span", ChannelsSearch_assign({ title: nickname }, { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: suggestion.sourceName, size: 12 }), " ", suggestion.name || nickname] })));
    };
    var themeId = props.themeId;
    return ((0,jsx_runtime.jsx)(FilterSearch, { themeId: themeId, suggestions: Mutable/* Mutable */.rV.from((data === null || data === void 0 ? void 0 : data.channels) || []), sortingKeys: ['name', 'nickname'], isLoading: loading, renderSuggestion: renderSuggestion, onSearch: handleSearch, onSelect: handleSelect }));
};
/* harmony default export */ const search_ChannelsSearch = ((0,redux/* compose */.Zz)((0,react_redux/* connect */.Ng)(function (state, _a) {
    var themeId = _a.themeId;
    return ({
        themeId: themeId || (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    });
}, null))(ChannelsSearch));

// EXTERNAL MODULE: ./node_modules/match-sorter/dist/match-sorter.esm.js
var match_sorter_esm = __webpack_require__("ilPa");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
;// CONCATENATED MODULE: ./src/containers/search/CountrySearch.js






function CountrySearch_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, CountrySearch_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function CountrySearch_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (CountrySearch_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/* eslint react/jsx-no-bind: 0 */








var CountrySearch = /*#__PURE__*/function (_Component) {
  function CountrySearch() {
    var _this;
    (0,classCallCheck/* default */.A)(this, CountrySearch);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = CountrySearch_callSuper(this, CountrySearch, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      filter: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleSelect", function (suggestion) {
      _this.setState({
        filter: ''
      });
      _this.props.onSelect(suggestion.code);
    });
    (0,defineProperty/* default */.A)(_this, "handleChange", function (_, filter) {
      _this.setState({
        filter: filter
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderSuggestion", function (suggestion) {
      var suggestionName = suggestion.name;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        title: suggestionName,
        children: suggestionName
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(CountrySearch, _Component);
  return (0,createClass/* default */.A)(CountrySearch, [{
    key: "render",
    value: function render() {
      var filter = this.state.filter;
      var _this$props = this.props,
        fullWidth = _this$props.fullWidth,
        placeholder = _this$props.placeholder,
        size = _this$props.size;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(search.base),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Autocomplete/* default */.A, {
          fullWidth: fullWidth,
          size: size,
          value: filter,
          placeholder: placeholder || l('Search'),
          suggestions: (0,getCountryNameTranslation/* getCountryNames */.zb)(),
          renderItem: this.renderSuggestion,
          suggestionContainerClassName: classnames_default()(search.suggestionContainer),
          sortingProperties: {
            keys: ['name'],
            threshold: match_sorter_esm/* rankings */.cG.MATCHES
          },
          onChange: this.handleChange,
          onSelect: this.handleSelect
        })
      });
    }
  }]);
}(react.Component);

// EXTERNAL MODULE: ./node_modules/react-country-flag/dist/index.es.js
var index_es = __webpack_require__("yaAG");
;// CONCATENATED MODULE: ./src/containers/search/RegionsSearch.tsx
var RegionsSearch_assign = (undefined && undefined.__assign) || function () {
    RegionsSearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RegionsSearch_assign.apply(this, arguments);
};






var RegionsSearch = function (props) {
    var _a = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.geo.searchRegions), fetch = _a.fetch, data = _a.data, loading = _a.loading;
    var handleSearch = function (_a) {
        var query = _a.query;
        fetch({ query: query });
    };
    var handleSelect = function (suggestion) {
        var onSelect = props.onSelect;
        onSelect(suggestion.regionId);
    };
    var renderSuggestion = function (suggestion) {
        var regionName = suggestion.region;
        return ((0,jsx_runtime.jsxs)("span", RegionsSearch_assign({ title: regionName }, { children: [(0,jsx_runtime.jsx)(index_es/* default */.A, { code: suggestion.countryCode }), " ", regionName] })));
    };
    return ((0,jsx_runtime.jsx)(FilterSearch, { suggestions: Mutable/* Mutable */.rV.from((data === null || data === void 0 ? void 0 : data.geos) || []), sortingKeys: ['region'], isLoading: loading, renderSuggestion: renderSuggestion, onSearch: handleSearch, onSelect: handleSelect }));
};
/* harmony default export */ const search_RegionsSearch = (RegionsSearch);

;// CONCATENATED MODULE: ./src/containers/search/CitiesSearch.tsx
var CitiesSearch_assign = (undefined && undefined.__assign) || function () {
    CitiesSearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return CitiesSearch_assign.apply(this, arguments);
};






var CitiesSearch = function (props) {
    var _a = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.geo.searchCities), fetch = _a.fetch, data = _a.data, loading = _a.loading;
    var handleSearch = function (_a) {
        var query = _a.query;
        fetch({ query: query });
    };
    var handleSelect = function (suggestion) {
        var onSelect = props.onSelect;
        onSelect(suggestion.cityId);
    };
    var renderSuggestion = function (suggestion) {
        var cityName = suggestion.city;
        var regionName = suggestion.region;
        var suggestionName = regionName ? "".concat(cityName, ", ").concat(regionName) : cityName;
        return ((0,jsx_runtime.jsxs)("span", CitiesSearch_assign({ title: suggestionName }, { children: [(0,jsx_runtime.jsx)(index_es/* default */.A, { code: suggestion.countryCode }), " ", suggestionName] })));
    };
    return ((0,jsx_runtime.jsx)(FilterSearch, { suggestions: Mutable/* Mutable */.rV.from((data === null || data === void 0 ? void 0 : data.geos) || []), sortingKeys: ['city'], isLoading: loading, renderSuggestion: renderSuggestion, onSearch: handleSearch, onSelect: handleSelect }));
};
/* harmony default export */ const search_CitiesSearch = (CitiesSearch);

// EXTERNAL MODULE: ./src/components/ui/SourceIcon/index.ts
var ui_SourceIcon = __webpack_require__("TkzK");
// EXTERNAL MODULE: ./src/components/ui/CountryFlag/index.ts + 2 modules
var CountryFlag = __webpack_require__("3LtM");
// EXTERNAL MODULE: ./src/components/ui/Tag/index.js + 6 modules
var Tag = __webpack_require__("/i37");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules
var toConsumableArray = __webpack_require__("+BzW");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("/0+J");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/regenerator/index.js
var regenerator = __webpack_require__("Kq5O");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);
;// CONCATENATED MODULE: ./src/hooks/useFilterExtend.js





function useFilterExtend_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function useFilterExtend_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? useFilterExtend_ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : useFilterExtend_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }



// Currently, we use it only for YouTube review
function useFilterExtend(facets, sourceName, themeId) {
  var isNeedExtend = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
  var _useState = (0,react.useState)(null),
    _useState2 = (0,slicedToArray/* default */.A)(_useState, 2),
    facet = _useState2[0],
    setFacet = _useState2[1];
  var isFacetsAlreadyHasNewFacet = facets.some(function (f) {
    return facet && Number(f.id) === Number(facet.id);
  });
  (0,react.useEffect)(function () {
    if (isNeedExtend) {
      var fetchSource = /*#__PURE__*/function () {
        var _ref = (0,asyncToGenerator/* default */.A)( /*#__PURE__*/regenerator_default().mark(function _callee() {
          var fetchedSource, source;
          return regenerator_default().wrap(function _callee$(_context) {
            while (1) switch (_context.prev = _context.next) {
              case 0:
                _context.next = 2;
                return apiSingleton/* default */.A.sources.search({
                  themeId: themeId,
                  prefix: sourceName
                });
              case 2:
                fetchedSource = _context.sent;
                source = Object.values(fetchedSource.entities.sources)[0];
                setFacet(useFilterExtend_objectSpread(useFilterExtend_objectSpread({}, source), {}, {
                  selected: false,
                  excluded: false,
                  count: null
                }));
              case 5:
              case "end":
                return _context.stop();
            }
          }, _callee);
        }));
        return function fetchSource() {
          return _ref.apply(this, arguments);
        };
      }();
      fetchSource();
    }
  }, []);
  if (isNeedExtend && !isFacetsAlreadyHasNewFacet && facet) {
    return [].concat((0,toConsumableArray/* default */.A)(facets), [facet]);
  }
  return facets;
}
// EXTERNAL MODULE: ./src/utils/getColorName.js
var getColorName = __webpack_require__("HIua");
// EXTERNAL MODULE: ./src/utils/translations/getLanguageFilterTranslations.js
var getLanguageFilterTranslations = __webpack_require__("nJxM");
// EXTERNAL MODULE: ./src/utils/translations/contentTypeTranslations.js
var contentTypeTranslations = __webpack_require__("yJPc");
// EXTERNAL MODULE: ./src/utils/translations/collectionMethodsFilterTranslations.ts
var collectionMethodsFilterTranslations = __webpack_require__("Rotz");
// EXTERNAL MODULE: ./src/utils/translations/countryGroupTranslations.ts + 1 modules
var countryGroupTranslations = __webpack_require__("OA2L");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var filter_model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/stats/selectors.ts + 1 modules
var stats_selectors = __webpack_require__("K9kJ");
// EXTERNAL MODULE: ./src/state/imagesDashboard/utils.ts
var imagesDashboard_utils = __webpack_require__("LwCN");
;// CONCATENATED MODULE: ./src/containers/search/VisualInsightsSearch.tsx
var VisualInsightsSearch_assign = (undefined && undefined.__assign) || function () {
    VisualInsightsSearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return VisualInsightsSearch_assign.apply(this, arguments);
};
var VisualInsightsSearch_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};















var OCR_SEARCH_TYPE = 'ocrSearch';
var extractSuggestionValues = function (data, type) { return Object.keys(data[type]).map(function (x) { return ({ type: type, name: x, values: data[type][x] }); }); };
var VisualInsightsSearch = function (_a) {
    var cta = _a.cta, themeId = _a.themeId, wide = _a.wide, imageTagType = _a.imageTagType, visualTags = _a.visualTags, placeholder = _a.placeholder, size = _a.size, sendAnalyticalEvent = _a.sendAnalyticalEvent, onSelect = _a.onSelect, onTextSearch = _a.onTextSearch;
    var _b = VisualInsightsSearch_read((0,react.useState)(''), 2), filter = _b[0], setFilter = _b[1];
    var savedSuggestions = (0,react.useMemo)(function () {
        if (!imageTagType)
            return Object.keys(visualTags).reduce(function (acc, tag) { return acc.concat(extractSuggestionValues(visualTags, tag)); }, []);
        return extractSuggestionValues(visualTags, imageTagType);
    }, [imageTagType, visualTags]);
    var handleSelect = function (suggestion) {
        if (cta)
            return;
        setFilter('');
        if (imageTagType) {
            onSelect(suggestion.name, null);
            return;
        }
        sendAnalyticalEvent({
            eventType: 'VisualInsights search: select suggestion',
            properties: {
                type: suggestion.type,
                value: suggestion.name,
            },
        });
        if (suggestion.type === OCR_SEARCH_TYPE) {
            onTextSearch({ text: "ocr: (".concat(suggestion.name, ")"), themeId: themeId });
            return;
        }
        onSelect(suggestion.name, { customFilterType: (0,imagesDashboard_utils/* formatVisualInsightsTagTypes */.U)(suggestion.type) });
    };
    var handleChange = function (_, newFilter) {
        setFilter(newFilter);
    };
    var renderSuggestion = function (suggestion) {
        var suggestionName = suggestion.name;
        var suggestionTypeLabel = suggestion.type === OCR_SEARCH_TYPE
            ? 'OCR'
            : (0,commonTranslations/* translate */.Tl)((0,imagesDashboard_utils/* formatVisualInsightsTagTypes */.U)(suggestion.type));
        return ((0,jsx_runtime.jsxs)("span", VisualInsightsSearch_assign({ title: suggestionName }, { children: [suggestionName, !imageTagType && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("span", VisualInsightsSearch_assign({ className: search.additionalInfo }, { children: suggestionTypeLabel }))] }))] })));
    };
    var getSuggestions = function () {
        if (filter.trim() === '')
            return savedSuggestions;
        return savedSuggestions.concat({ name: filter, type: OCR_SEARCH_TYPE, values: [] });
    };
    var autocomplete = ((0,jsx_runtime.jsx)(Autocomplete/* default */.A, { fullWidth: wide, size: size, value: filter, placeholder: placeholder, suggestions: getSuggestions(), suggestionsLimit: 20, renderItem: renderSuggestion, suggestionContainerClassName: classnames_default()(search.suggestionContainer), sortingProperties: {
            keys: [
                { minRanking: match_sorter_esm/* rankings */.cG.MATCHES, key: 'name' },
                { maxRanking: match_sorter_esm/* rankings */.cG.WORD_STARTS_WITH, key: 'values' }
            ],
            threshold: match_sorter_esm/* rankings */.cG.CONTAINS,
        }, onChange: handleChange, onSelect: handleSelect }));
    return ((0,jsx_runtime.jsx)("div", VisualInsightsSearch_assign({ className: classnames_default()(search.base) }, { children: cta ? ((0,jsx_runtime.jsx)(Tooltip/* default */.A, VisualInsightsSearch_assign({ text: cta.text, hoverable: true }, { children: autocomplete }))) : (autocomplete) })));
};
/* harmony default export */ const search_VisualInsightsSearch = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
    visualTags: (0,stats_selectors/* getAllVisualTags */.xL)(state, { excludedVisualTags: ['imageType'] }) || {},
}); }, {
    onTextSearch: filter_model/* filterModel */.W.action.searchMentionsByQuery,
    sendAnalyticalEvent: analytics_model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
})(VisualInsightsSearch));

;// CONCATENATED MODULE: ./src/containers/search/TagSearch.tsx
var TagSearch_assign = (undefined && undefined.__assign) || function () {
    TagSearch_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TagSearch_assign.apply(this, arguments);
};
var TagSearch_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};








var TagSearch = function (_a) {
    var previewFilter = _a.previewFilter, facets = _a.facets, onSelect = _a.onSelect;
    var _b = TagSearch_read((0,react.useState)(''), 2), filter = _b[0], setFilter = _b[1];
    var handleSelect = function (suggestion) {
        setFilter('');
        onSelect(suggestion.values.id);
    };
    var handleChange = function (_, tag) {
        setFilter(tag);
    };
    var renderSuggestion = function (suggestion) {
        return ((0,jsx_runtime.jsxs)("span", TagSearch_assign({ title: suggestion.name }, { children: [(0,jsx_runtime.jsx)(Tag/* TagColorSwatch */.WX, { color: suggestion.values.color }), suggestion.name] })));
    };
    var suggestions = (0,selectors/* getTagFacets */.fH)(null, previewFilter, facets).map(function (facet) { return ({
        name: facet.name,
        values: facet,
    }); });
    return ((0,jsx_runtime.jsx)("div", TagSearch_assign({ className: classnames_default()(search.base) }, { children: (0,jsx_runtime.jsx)(Autocomplete/* default */.A, { size: "small", placeholder: l('Search'), value: filter, suggestions: suggestions, renderItem: renderSuggestion, suggestionContainerClassName: classnames_default()(search.suggestionContainer), sortingProperties: { keys: ['name', 'values'], threshold: match_sorter_esm/* rankings */.cG.MATCHES }, onChange: handleChange, onSelect: handleSelect }) })));
};
/* harmony default export */ const search_TagSearch = (TagSearch);

// EXTERNAL MODULE: ./src/models/filters/domain/FilterGroupTypeCatalog.tsx + 79 modules
var FilterGroupTypeCatalog = __webpack_require__("yMOo");
// EXTERNAL MODULE: ./src/utils/translations/logoTranslations.ts
var logoTranslations = __webpack_require__("U8ND");
// EXTERNAL MODULE: ./src/utils/intercom.js
var intercom = __webpack_require__("ah7T");
// EXTERNAL MODULE: ./src/containers/AddonsPromote/addons.ts
var addons = __webpack_require__("duiz");
;// CONCATENATED MODULE: ./src/containers/search/LanguageSearch.js






function LanguageSearch_callSuper(t, o, e) { return o = (0,getPrototypeOf/* default */.A)(o), (0,possibleConstructorReturn/* default */.A)(t, LanguageSearch_isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,getPrototypeOf/* default */.A)(t).constructor) : o.apply(t, e)); }
function LanguageSearch_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (LanguageSearch_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
/* eslint react/jsx-no-bind: 0 */








var LanguageSearch = /*#__PURE__*/function (_Component) {
  function LanguageSearch() {
    var _this;
    (0,classCallCheck/* default */.A)(this, LanguageSearch);
    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }
    _this = LanguageSearch_callSuper(this, LanguageSearch, [].concat(args));
    (0,defineProperty/* default */.A)(_this, "state", {
      filter: ''
    });
    (0,defineProperty/* default */.A)(_this, "handleSelect", function (suggestion) {
      _this.setState({
        filter: ''
      });
      _this.props.onSelect(suggestion.code);
    });
    (0,defineProperty/* default */.A)(_this, "handleChange", function (_, filter) {
      _this.setState({
        filter: filter
      });
    });
    (0,defineProperty/* default */.A)(_this, "getLanguages", function () {
      var languages = (0,getLanguageFilterTranslations/* getLanguageFilterTranslations */.r)();
      var languageCodes = Object.keys(languages);
      return languageCodes.map(function (languageCode) {
        return {
          code: languageCode,
          label: languages[languageCode]
        };
      });
    });
    (0,defineProperty/* default */.A)(_this, "renderSuggestion", function (suggestion) {
      var suggestionName = suggestion.label;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
        title: suggestionName,
        children: suggestionName
      });
    });
    return _this;
  }
  (0,inherits/* default */.A)(LanguageSearch, _Component);
  return (0,createClass/* default */.A)(LanguageSearch, [{
    key: "render",
    value: function render() {
      var filter = this.state.filter;
      var _this$props = this.props,
        placeholder = _this$props.placeholder,
        fullWidth = _this$props.fullWidth,
        size = _this$props.size;
      return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
        className: classnames_default()(search.base),
        children: /*#__PURE__*/(0,jsx_runtime.jsx)(Autocomplete/* default */.A, {
          fullWidth: fullWidth,
          size: size,
          value: filter,
          placeholder: placeholder || l('Search'),
          suggestions: this.getLanguages(),
          renderItem: this.renderSuggestion,
          suggestionContainerClassName: classnames_default()(search.suggestionContainer),
          sortingProperties: {
            keys: ['label'],
            threshold: match_sorter_esm/* rankings */.cG.MATCHES
          },
          onChange: this.handleChange,
          onSelect: this.handleSelect
        })
      });
    }
  }]);
}(react.Component);

;// CONCATENATED MODULE: ./src/containers/filters/filters.tsx
var filters_assign = (undefined && undefined.__assign) || function () {
    filters_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return filters_assign.apply(this, arguments);
};







































var getFilterErrorComponent = function () {
    return (0,jsx_runtime.jsx)("span", { children: l('An error has occurred') });
};
function getViCta(tabPermissions, sendAnalyticalEvent) {
    if (sendAnalyticalEvent === void 0) { sendAnalyticalEvent = null; }
    var handleChatClick = function () {
        var addonName = 'Visual Insights';
        var openBy = 'filters';
        sendAnalyticalEvent === null || sendAnalyticalEvent === void 0 ? void 0 : sendAnalyticalEvent({ eventType: 'Promote Add-ons: click chat button', properties: { addonName: addonName, openBy: openBy } });
        (0,intercom/* showNewMessage */.z$)((0,addons/* getChatMessage */.w)(l(addonName)));
    };
    return function () {
        if (!tabPermissions.images) {
            return {
                text: ((0,jsx_runtime.jsxs)("span", { children: [l('Visual Insights is not supported in your account Please contact our customer support team to enable it.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", filters_assign({ onClick: handleChatClick }, { children: l('Chat with us') }))] })),
            };
        }
        return null;
    };
}
function getAuthorCta(filterTypePermissions, sendAnalyticalEvent) {
    var handleChatClick = function () {
        var addonName = 'Audience Insights';
        var openBy = 'filters';
        sendAnalyticalEvent({ eventType: 'Promote Add-ons: click chat button', properties: { addonName: addonName, openBy: openBy } });
        (0,intercom/* showNewMessage */.z$)((0,addons/* getChatMessage */.w)(l(addonName)));
    };
    return function () {
        if (!filterTypePermissions.authorInterests
            || !filterTypePermissions.authorInterestCategories
            || !filterTypePermissions.authorJobs) {
            return {
                text: ((0,jsx_runtime.jsxs)("span", { children: [l('Audience Insights is not supported in your account Please contact our customer support team to enable it.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", filters_assign({ onClick: handleChatClick }, { children: l('Chat with us') }))] })),
            };
        }
        return null;
    };
}
function getAudioMonitoringCta(filterTypePermissions, sendAnalyticalEvent) {
    var handleChatClick = function () {
        var addonName = 'Audio Monitoring';
        var openBy = 'filters';
        sendAnalyticalEvent({ eventType: 'Promote Add-ons: click chat button', properties: { addonName: addonName, openBy: openBy } });
        (0,intercom/* showNewMessage */.z$)((0,addons/* getChatMessage */.w)(l(addonName)));
    };
    return function (item) {
        if (!(filterTypePermissions === null || filterTypePermissions === void 0 ? void 0 : filterTypePermissions.audioMonitoring) && item.get('id') === 'subtitles') {
            return {
                text: ((0,jsx_runtime.jsxs)("span", { children: [l('Audio Monitoring is not supported in your account Please contact our customer support team to enable it.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", filters_assign({ onClick: handleChatClick }, { children: l('Chat with us') }))] })),
            };
        }
        return null;
    };
}
var getRangeFilterComponent = function (_a) {
    var _b = _a.filterName, filterName = _b === void 0 ? '' : _b, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect;
    var Component = RangeFilterCreator(dataRetriever);
    var handleSelect = function (value) { return onSelect(null, { customFilterValue: value }); };
    return (0,jsx_runtime.jsx)(Component, { filterName: filterName, onSelect: handleSelect });
};
var getFilterComponent = function (_a) {
    var _b = _a.hideCounters, hideCounters = _b === void 0 ? false : _b, _c = _a.countFormat, countFormat = _c === void 0 ? '0,0' : _c, _d = _a.withoutSpacer, withoutSpacer = _d === void 0 ? false : _d, filterName = _a.filterName, dataRetriever = _a.dataRetriever, _e = _a.searchHelperText, searchHelperText = _e === void 0 ? '' : _e, _f = _a.noResultsText, noResultsText = _f === void 0 ? '' : _f, _g = _a.getSearchComponent, getSearchComponent = _g === void 0 ? null : _g, _h = _a.getPrefix, getPrefix = _h === void 0 ? null : _h, _j = _a.getCta, getCta = _j === void 0 ? null : _j, _k = _a.getKey, getKey = _k === void 0 ? function (item) { return item.get('id'); } : _k, _l = _a.getLabel, getLabel = _l === void 0 ? function (item) { return (0,commonTranslations/* translate */.Tl)(item.get('id')); } : _l, _m = _a.getTitle, getTitle = _m === void 0 ? function (item) { return item.get('id'); } : _m, _o = _a.getValue, getValue = _o === void 0 ? function (item) { return item.get('id'); } : _o, _p = _a.getCount, getCount = _p === void 0 ? function (item, _customProperty) { return item.get('count'); } : _p, _q = _a.getIsSelected, getIsSelected = _q === void 0 ? function (item) { return item.get('selected'); } : _q, _r = _a.getIsExcluded, getIsExcluded = _r === void 0 ? function (item) { return item.get('excluded'); } : _r, _s = _a.getProcessedFacets, getProcessedFacets = _s === void 0 ? null : _s, onSelect = _a.onSelect, onExclude = _a.onExclude;
    var FilterComponent = GenericFilter_GenericFilter(dataRetriever);
    return ((0,jsx_runtime.jsx)(FilterComponent, { hideCounters: hideCounters, countFormat: countFormat, withoutSpacer: withoutSpacer, filterName: filterName, searchHelperText: searchHelperText, noResultsText: noResultsText, getSearchComponent: getSearchComponent, getKey: getKey, getCta: getCta, getPrefix: getPrefix, getLabel: getLabel, getTitle: getTitle, getValue: getValue, getCount: getCount, getIsSelected: getIsSelected, getIsExcluded: getIsExcluded, getProcessedFacets: getProcessedFacets, onSelect: onSelect, onExclude: onExclude }, filterName));
};
var getFilterByType = function (type, filter, facets, topicId) {
    var withPreviewFilter = function (selector) {
        var filterType = FilterGroupTypeCatalog/* FilterGroupTypeCatalog */.dA.get(type);
        return function (state) {
            var results = selector(state, filter, facets);
            if (filterType.sort) {
                results = results.sort(filterType.sort);
            }
            return results;
        };
    };
    var filtersByType = {
        sentiment: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(Icon/* default */.A, { type: sentiments/* SENTIMENT_ICON_TYPE */.Fh[item.get('id')], color: sentiments/* SENTIMENT_ICON_COLOR */.Q2[item.get('id')] }); },
                    filterName: l('Sentiment'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) {
                return { facets: withPreviewFilter(selectors/* getSentimentFacets */.Oy)(state) };
            },
        },
        postType: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Post type'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getPostTypeFacets */.TR)(state),
            }); },
        },
        sponsored: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Sponsored content'),
                    getLabel: function (_item) { return l('Sponsored posts and related comments'); },
                    getTitle: function (_item) { return l('Sponsored posts and related comments'); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) {
                var sponsoredFilterId = 'sponsored';
                var sponsoredFilter = filter.findAllGroupsByName(sponsoredFilterId)[0];
                return {
                    facets: (0,immutable.fromJS)([{
                            id: sponsoredFilterId,
                            selected: sponsoredFilter === null || sponsoredFilter === void 0 ? void 0 : sponsoredFilter.boolValue,
                            excluded: sponsoredFilter === null || sponsoredFilter === void 0 ? void 0 : sponsoredFilter.excluded,
                            count: (0,selectors/* getSponsoredCount */.JI)(state),
                        }]),
                };
            },
        },
        contentType: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, filterTypePermissions = _a.filterTypePermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(Icon/* default */.A, { type: item.get('id'), color: "gray" }); },
                    getLabel: function (item) { return (0,contentTypeTranslations/* translateContentType */.Ch)(item.get('id')).label; },
                    getCta: getAudioMonitoringCta(filterTypePermissions, onSendAnalyticalEvent),
                    filterName: l('Content type'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getContentTypeFacets */.OA)(state),
            }); },
        },
        collectionMethod: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    getLabel: function (item) { return (0,collectionMethodsFilterTranslations/* getCollectionMethodsFilterTranslation */.sL)(item.get('id')).label; },
                    getTitle: function (item) { return (0,collectionMethodsFilterTranslations/* getCollectionMethodsFilterTranslation */.sL)(item.get('id')).title; },
                    filterName: l('Collection method'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getCollectionMethodFacets */.gU)(state),
            }); },
        },
        indirect: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Indirect mentions'),
                    getLabel: function (_item) { return l('Comments not matching query'); },
                    getTitle: function (_item) { return l("Comments that don't have keywords and images matching topic query"); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) {
                var indirectFilterId = 'indirect';
                var indirectFilter = filter.findAllGroupsByName(indirectFilterId)[0];
                return {
                    facets: (0,immutable.fromJS)([
                        {
                            id: indirectFilterId,
                            selected: indirectFilter === null || indirectFilter === void 0 ? void 0 : indirectFilter.boolValue,
                            excluded: indirectFilter === null || indirectFilter === void 0 ? void 0 : indirectFilter.excluded,
                            count: (0,selectors/* getIndirectCount */.S)(state),
                        }
                    ]),
                };
            },
        },
        language: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Language'),
                    getLabel: function (item) { return (0,getLanguageFilterTranslations/* default */.A)(item.get('id')) || item.get('id'); },
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(LanguageSearch, { fullWidth: true, onSelect: function (value) { return onFilterSelect(value); } }); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getLanguageFacets */.zT)(state),
            }); },
        },
        systemTags: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var Component = SystemTagFilter_SystemTagFilter(dataRetriever);
                return (0,jsx_runtime.jsx)(Component, { onSelect: onSelect, onExclude: onExclude });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getSystemTagFacets */.mP)(state),
            }); },
        },
        resourceType: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Source type'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getResourceTypeFacets */.Xm)(state),
            }); },
        },
        sourceFormat: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var Component = SourceFormatFilter(dataRetriever);
                return (0,jsx_runtime.jsx)(Component, { onSelect: onSelect, onExclude: onExclude });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getSourceFormatFacets */.nJ)(state),
            }); },
        },
        starRating: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var Component = StarRatingFilter(dataRetriever);
                return (0,jsx_runtime.jsx)(Component, { onSelect: onSelect, onExclude: onExclude });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getRatingFacets */.ws)(state),
            }); },
        },
        sourceId: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var YOUTUBE_FILTER_NAME = 'youtube.com';
                var getCount = function (item, _a) {
                    var isYoutubeStatistics = _a.isYoutubeStatistics;
                    if (isYoutubeStatistics && item.name === YOUTUBE_FILTER_NAME) {
                        return undefined;
                    }
                    return item.count;
                };
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Source'),
                    searchHelperText: l("Use the search field to select a source that's not on the list"),
                    noResultsText: l('No sources were found that match chosen filter'),
                    getCount: getCount,
                    getProcessedFacets: function (filterFacets, _a) {
                        var isYoutubeStatistics = _a.isYoutubeStatistics, themeId = _a.themeId;
                        return useFilterExtend(filterFacets.toJS(), YOUTUBE_FILTER_NAME, themeId, isYoutubeStatistics);
                    },
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(ui_SourceIcon/* default */.A, { name: item.name, size: 12 }); },
                    getKey: function (item) { return item.id; },
                    getLabel: function (item) { return item.name; },
                    getValue: function (item) { return item.id; },
                    getTitle: function (item) { return item.name; },
                    getIsSelected: function (item) { return item.selected; },
                    getIsExcluded: function (item) { return item.excluded; },
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_SourcesSearch, { topicId: topicId, onSelect: onFilterSelect }); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getSourceIdsFacets */.Gq)(state),
                themeId: (0,themes_selectors/* getCurrentThemeId */.Md)(state),
                isYoutubeStatistics: (0,themes_selectors/* isYoutubeStatistics */.dm)(state),
            }); },
        },
        source: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Source'),
                    searchHelperText: l("Use the search field to select a source that's not on the list"),
                    noResultsText: l('No sources were found that match chosen filter'),
                    getCount: function (item) { return item.count; },
                    getLabel: function (item) { return item.id; },
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(ui_SourceIcon/* default */.A, { name: item.id, size: 12 }); },
                    getIsSelected: function (item) { return item.selected; },
                    getIsExcluded: function (item) { return item.excluded; },
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_SourcesSearch, { topicId: topicId, onSelect: onFilterSelect }); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getSourceFacets */.cs)(state),
            }); },
        },
        gender: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l("Author's gender"),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getAuthorGenderFacets */.V_)(state),
            }); },
        },
        authorId: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Author'),
                    searchHelperText: l("Use the search field to select an author that's not on the list"),
                    noResultsText: l('No authors were found that match chosen filter'),
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_AuthorsSearch, { topicId: topicId, onSelect: onFilterSelect }); },
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(ui_SourceIcon/* default */.A, { name: item.get('sourceName'), size: 12 }); },
                    getLabel: function (item) { return item.get('name') || "@".concat(item.get('nickname')); },
                    getTitle: function (item) { return (item.get('nickname') ? "".concat(item.get('name'), " @").concat(item.get('nickname')) : item.get('name')); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getAuthorFacets */.CS)(state),
            }); },
        },
        authorAge: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect;
                return getRangeFilterComponent({
                    filterName: l("Author's age"),
                    dataRetriever: dataRetriever,
                    onSelect: onSelect,
                });
            },
            defaultDataRetriever: function (state) { return ({
                appliedRange: (0,selectors/* getAuthorAgeRange */.cz)(filter),
            }); },
        },
        authorSubscribers: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect;
                return getRangeFilterComponent({
                    filterName: l("Author's subscribers"),
                    dataRetriever: dataRetriever,
                    onSelect: onSelect,
                });
            },
            defaultDataRetriever: function (state) { return ({
                appliedRange: (0,selectors/* getAuthorSubscribersRange */.sp)(filter),
            }); },
        },
        authorInterests: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, filterTypePermissions = _a.filterTypePermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l("Author's interests"),
                    getLabel: function (item) { return item.get('id'); },
                    getCta: getAuthorCta(filterTypePermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getAuthorInterestsFacets */.Ls)(state),
            }); },
        },
        authorInterestCategories: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, filterTypePermissions = _a.filterTypePermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l("Author's interest categories"),
                    getCta: getAuthorCta(filterTypePermissions, onSendAnalyticalEvent),
                    getLabel: function (item) { return item.get('id'); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getAuthorInterestCategoriesFacets */.oe)(state),
            }); },
        },
        authorJobs: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, filterTypePermissions = _a.filterTypePermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l("Author's occupations"),
                    getLabel: function (item) { return item.get('id'); },
                    getCta: getAuthorCta(filterTypePermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getAuthorJobsFacets */.YB)(state),
            }); },
        },
        channelId: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Publication place'),
                    searchHelperText: l("Use the search field to select a publication place that's not on the list"),
                    noResultsText: l('No publication places were found that match chosen filter'),
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_ChannelsSearch, { themeId: topicId, onSelect: onFilterSelect }); },
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(ui_SourceIcon/* default */.A, { name: item.get('sourceName'), size: 12 }); },
                    getLabel: function (item) { return item.get('name') || "@".concat(item.get('nickname')); },
                    getTitle: function (item) { return (item.get('nickname') ? "".concat(item.get('name'), " @").concat(item.get('nickname')) : item.get('name')); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getChannelFacets */.Sj)(state),
            }); },
        },
        channelSubscribers: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect;
                return getRangeFilterComponent({
                    filterName: l('Publication place subscribers'),
                    dataRetriever: dataRetriever,
                    onSelect: onSelect,
                });
            },
            defaultDataRetriever: function (state) { return ({
                appliedRange: (0,selectors/* getChannelSubscribersRange */.gM)(filter),
            }); },
        },
        link: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Links'),
                    noResultsText: l('No links were found that match chosen filter'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getLinkFacets */.vo)(state),
            }); },
        },
        host: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Hosts'),
                    noResultsText: l('No hosts were found that match chosen filter'),
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(ui_SourceIcon/* default */.A, { name: item.get('id'), size: 12 }); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getHostFacets */.NC)(state),
            }); },
        },
        country: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var isUnknown = function (name) { return name.toLowerCase() === 'unknown'; };
                var getCountryName = function (name) { return (isUnknown(name) ? l('Unknown') : (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(name)); };
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Country'),
                    searchHelperText: l("Use the search field to select a country that's not on the list"),
                    noResultsText: l('No countries were found that match chosen filter'),
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(CountrySearch, { size: "small", onSelect: onFilterSelect }); },
                    getPrefix: function (item) { return !isUnknown(item.get('id')) && (0,jsx_runtime.jsx)(CountryFlag/* default */.A, { countryCode: item.get('id') }); },
                    getLabel: function (item) { return getCountryName(item.get('id')); },
                    getTitle: function (item) { return getCountryName(item.get('id')); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getCountryFacets */.bE)(state),
            }); },
        },
        countryGroup: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    getLabel: function (item) { return (0,countryGroupTranslations/* getCountryGroupTranslation */.X7)(item.get('id')).label; },
                    getTitle: function (item) { return (0,countryGroupTranslations/* getCountryGroupTranslation */.X7)(item.get('id')).title; },
                    filterName: l('World region'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getCountryGroupFacets */.Aq)(state),
            }); },
        },
        region: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Region'),
                    searchHelperText: l("Use the search field to select a region that's not on the list"),
                    noResultsText: l('No regions were found that match chosen filter'),
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_RegionsSearch, { onSelect: onFilterSelect }); },
                    getPrefix: function (item) { var _a; return ((_a = item.get('countryCode')) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== 'unknown' && (0,jsx_runtime.jsx)(CountryFlag/* default */.A, { countryCode: item.get('countryCode') }); },
                    getLabel: function (item) { return item.get('region'); },
                    getTitle: function (item) { return item.get('region'); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getRegionFacets */.bY)(state),
            }); },
        },
        city: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('City'),
                    searchHelperText: l("Use the search field to find a city that's not on the list"),
                    noResultsText: l('No cities were found that match chosen filter'),
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_CitiesSearch, { onSelect: onFilterSelect }); },
                    getPrefix: function (item) { var _a; return ((_a = item.get('countryCode')) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== 'unknown' && (0,jsx_runtime.jsx)(CountryFlag/* default */.A, { countryCode: item.get('countryCode') }); },
                    getLabel: function (item) { return item.get('city'); },
                    getTitle: function (item) { return "".concat(item.get('city'), ", ").concat(item.get('region')); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getCityFacets */.uO)(state),
            }); },
        },
        tag: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    withoutSpacer: true,
                    filterName: l('Tag'),
                    getTitle: function (item) { return item.get('name'); },
                    getLabel: function (item) {
                        var name = item.get('name');
                        return name === 'tagged' ? l('Tagged') : name;
                    },
                    getPrefix: function (item) {
                        var color = item.get('color');
                        return color && (0,jsx_runtime.jsx)(Tag/* TagColorSwatch */.WX, { color: color });
                    },
                    getSearchComponent: function (onFilterSelect) { return (0,jsx_runtime.jsx)(search_TagSearch, { onSelect: onFilterSelect, previewFilter: filter, facets: facets }); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getTagFacets */.fH)(state),
            }); },
        },
        tagged: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: null,
                    getLabel: function (_item) { return l('Tagged'); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) {
                var taggedFilterId = 'tagged';
                var taggedFilter = filter.findAllGroupsByName(taggedFilterId)[0];
                return {
                    facets: (0,immutable.fromJS)([
                        {
                            id: taggedFilterId,
                            name: taggedFilterId,
                            selected: taggedFilter === null || taggedFilter === void 0 ? void 0 : taggedFilter.boolValue,
                            excluded: taggedFilter === null || taggedFilter === void 0 ? void 0 : taggedFilter.excluded,
                        }
                    ]),
                };
            },
        },
        trend: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSendAnalyticalEvent = _a.onSendAnalyticalEvent, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var handleTrendSelect = function (value) {
                    onSendAnalyticalEvent({ eventType: 'Trends: trend filter clicked' });
                    return onSelect(value);
                };
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Trends'),
                    noResultsText: l('No trends were found that match chosen filter'),
                    getPrefix: function (item) { return (0,jsx_runtime.jsx)(Icon/* default */.A, { size: 12, type: "circle", color: sentiments/* SENTIMENT_ICON_COLOR */.Q2[item.get('sentiment')] }); },
                    getTitle: function (item) { return item.get('name'); },
                    getLabel: function (item) { return item.get('name'); },
                    onSelect: handleTrendSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getTrendFacets */.sy)(state),
            }); },
        },
        aspect: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var Component = AspectsFilter_NEW(dataRetriever);
                var handleSelect = function (value) { return onSelect(null, { customFilterValue: (0,immutable.fromJS)(value) }); };
                var handleExclude = function (value) { return onExclude(null, { customFilterValue: (0,immutable.fromJS)(value) }); };
                return (0,jsx_runtime.jsx)(Component, { onSelect: handleSelect, onExclude: handleExclude });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getSentimentAspectsFacetsNew */.t6)(state),
            }); },
        },
        subject: {
            component: function (_a) {
                var dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                var Component = SubjectsFilter_SubjectsFilter(dataRetriever);
                return (0,jsx_runtime.jsx)(Component, { onSelect: onSelect, onExclude: onExclude });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getSubjectsFacets */.kU)(state),
            }); },
        },
        imageFilterSearch: {
            component: function (_a) {
                var onSelect = _a.onSelect, tabPermissions = _a.tabPermissions;
                var cta = getViCta(tabPermissions)();
                return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(search_VisualInsightsSearch, { wide: true, cta: cta, placeholder: l('Search by all visual tags'), onSelect: cta ? null : onSelect }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, { double: true })] }));
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageObjectsFacets */.Ce)(state),
            }); },
        },
        imageType: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Type'),
                    noResultsText: l('No recognized types were found that match chosen filter'),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageTypesFacets */.dW)(state),
            }); },
        },
        imageSubtype: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Subtype'),
                    noResultsText: l('No recognized subtypes were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageSubtypesFacets */.hv)(state),
            }); },
        },
        imageBrand: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    getLabel: function (item) { return (0,logoTranslations/* translateLogo */.I)(item.id); },
                    filterName: l('Logo'),
                    noResultsText: l('No recognized brands were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getBrandImageFacets */.zB)(state),
            }); },
        },
        imageObject: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Object'),
                    getLabel: function (item) { return item.get('id'); },
                    noResultsText: l('No recognized objects were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageObjectsFacets */.Ce)(state),
            }); },
        },
        imageScene: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Scene'),
                    noResultsText: l('No recognized scenes were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageScenesFacets */.RK)(state),
            }); },
        },
        imagePeople: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Person', 'filter'),
                    noResultsText: l('No recognized people were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImagePeopleFacets */.zw)(state),
            }); },
        },
        imageActivities: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Activity'),
                    noResultsText: l('No recognized activities were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageActivitiesFacets */.xo)(state),
            }); },
        },
        imageColors: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude, tabPermissions = _a.tabPermissions, onSendAnalyticalEvent = _a.onSendAnalyticalEvent;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Color'),
                    noResultsText: l('No recognized colors were found that match chosen filter'),
                    getCta: getViCta(tabPermissions, onSendAnalyticalEvent),
                    getPrefix: function (item) { return ((0,jsx_runtime.jsx)("span", { style: {
                            display: 'inline-block',
                            width: '10px',
                            height: '10px',
                            borderRadius: '50%',
                            backgroundColor: item.get('id'),
                        } })); },
                    getLabel: function (item) { return (0,getColorName/* default */.A)(item.get('id')); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getImageColorsFacets */.E1)(state),
            }); },
        },
        origin: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Collection type'),
                    noResultsText: l('No recognized collection types were found that match chosen filter'),
                    getLabel: function (item) { return (0,commonTranslations/* translateOrigin */.BJ)(item.get('id')); },
                    onSelect: onSelect,
                    onExclude: onExclude,
                });
            },
            defaultDataRetriever: function (state) { return ({
                facets: withPreviewFilter(selectors/* getOriginsFacets */.gw)(state),
            }); },
        },
        other: {
            component: function (_a) {
                var hideCounters = _a.hideCounters, countFormat = _a.countFormat, dataRetriever = _a.dataRetriever, onSelect = _a.onSelect, onExclude = _a.onExclude;
                return getFilterComponent({
                    hideCounters: hideCounters,
                    countFormat: countFormat,
                    dataRetriever: dataRetriever,
                    filterName: l('Other', 'filter'),
                    getLabel: function (item) { return item.get('label'); },
                    onSelect: function (value, selected) { return onSelect(selected, { customFilterType: value }); },
                    onExclude: function (value, excluded) { return onExclude(excluded, { customFilterType: value }); },
                });
            },
            defaultDataRetriever: function (state) {
                var types = {
                    withImage: l('With image'),
                    hasSentimentCorrection: l('With sentiment correction'),
                };
                var data = Object.keys(types).map(function (id) { return ({
                    id: id,
                    filter: filter.findAllGroupsByName(id)[0],
                }); });
                return {
                    facets: (0,immutable.fromJS)(data.map(function (d) {
                        var _a, _b;
                        return ({
                            id: d.id,
                            name: d.id,
                            label: types[d.id],
                            selected: (_a = d.filter) === null || _a === void 0 ? void 0 : _a.boolValue,
                            excluded: (_b = d.filter) === null || _b === void 0 ? void 0 : _b.excluded,
                        });
                    })),
                };
            },
        },
    };
    return filtersByType[type] || { component: getFilterErrorComponent, defaultDataRetriever: null };
};
/* harmony default export */ const filters = (getFilterByType);


/***/ }),

/***/ "8+mS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  $2: () => (/* binding */ TopicFilterIcon),
  I$: () => (/* binding */ TopicSamplingIcon),
  Hi: () => (/* binding */ TopicScaleIcon)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-router-dom/dist/index.js
var dist = __webpack_require__("SOjZ");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/utils/translations/getLanguageFilterTranslations.js
var getLanguageFilterTranslations = __webpack_require__("nJxM");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
;// CONCATENATED MODULE: ./src/containers/helpers/HistoryCollectionOptionIcon.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const HistoryCollectionOptionIcon = ({"filter":"wFSzap0WwrH9IYETf2ao","title":"TVRk6Ac5cDO9H65MibDA","floatIcon":"Vv5kEhhPBV4LSW9p5CCB"});
;// CONCATENATED MODULE: ./src/containers/helpers/HistoryCollectionOptionIcon.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};









var TopicScaleIcon = function (_a) {
    var isInline = _a.isInline, topic = _a.topic, iconSize = _a.iconSize;
    if (!(topic === null || topic === void 0 ? void 0 : topic.scale) || topic.scale === 1)
        return null;
    var iconType = topic.scale < 10 ? "numeric-circle-".concat(topic.scale) : 'numeric-circle-9-plus';
    var description = sprintf(l('Topic uses a combined data volume quota of %d standard topics in your account'), topic.scale);
    return isInline
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize }), " ", description] }))
        : ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ on: "hover", position: "top left", text: description }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize }) })));
};
var TopicSamplingIcon = function (_a) {
    var isInline = _a.isInline, topic = _a.topic, iconSize = _a.iconSize;
    if (!(topic === null || topic === void 0 ? void 0 : topic.samplingRate) || topic.samplingRate === 1)
        return null;
    var iconType = 'chart-donut';
    var description = sprintf(l('Based on sampled data. Sampling rate: %d%s'), topic.samplingRate * 100, '%');
    return isInline
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize }), " ", description] }))
        : ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ on: "hover", position: "top left", text: description }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize }) })));
};
var TopicFilterDescription = function (_a) {
    var topic = _a.topic;
    var translateFilter = function (value) {
        return (0,getLanguageFilterTranslations/* default */.A)(value) || (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(value) || (0,commonTranslations/* translate */.Tl)(value) || value;
    };
    var parseAndTranslateValue = function (value) {
        try {
            var parsedValue = JSON.parse(value);
            if (Array.isArray(parsedValue)) {
                return parsedValue.map(function (v) { return translateFilter(v); }).join(', ');
            }
            return translateFilter(parsedValue);
        }
        catch (e) {
            return translateFilter(value);
        }
    };
    var renderDescription = function () {
        var _a;
        var filters = (_a = topic === null || topic === void 0 ? void 0 : topic.topicQuery) === null || _a === void 0 ? void 0 : _a.filter.filters;
        if (!Array.isArray(filters)) {
            return null;
        }
        return filters.map(function (filter) {
            var fieldName = filter.fieldName, op = filter.op, value = filter.value;
            return ((0,jsx_runtime.jsxs)("div", __assign({ className: HistoryCollectionOptionIcon.filter }, { children: [translateFilter(fieldName), ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), op === 'oneOf' && parseAndTranslateValue(value), op === 'notOneOf' && "-".concat(parseAndTranslateValue(value)), (0,jsx_runtime.jsx)("br", {})] }), "".concat(fieldName, "-").concat(value)));
        });
    };
    return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)("div", __assign({ className: HistoryCollectionOptionIcon.title }, { children: (0,jsx_runtime.jsx)("b", { children: l('Topic-level filters') }) })), (0,jsx_runtime.jsxs)("div", { children: [renderDescription(), topic.hasInlineFilters && ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsxs)("span", { children: [l('Please note, that the', 'historyCollectionOptionIcon'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)(dist/* Link */.N_, __assign({ to: "/themes/".concat(topic.id, "/settings/general") }, { children: (0,jsx_runtime.jsx)("span", { children: l('Search query') }) })), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('also contains filters', 'historyCollectionOptionIcon')] })] }))] })] }));
};
var TopicFilterIconComponent = function (_a) {
    var _b;
    var isInline = _a.isInline, topic = _a.topic, iconSize = _a.iconSize;
    var filter = (_b = topic === null || topic === void 0 ? void 0 : topic.topicQuery) === null || _b === void 0 ? void 0 : _b.filter;
    if (!Object.values(filter || {}).length)
        return null;
    var iconType = 'filter';
    return isInline
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize }), " ", (0,jsx_runtime.jsx)(TopicFilterDescription, { topic: topic })] }))
        : ((0,jsx_runtime.jsx)(Tooltip/* default */.A, __assign({ hoverable: true, on: "hover", position: "top left", text: (0,jsx_runtime.jsx)(TopicFilterDescription, { topic: topic }) }, { children: (0,jsx_runtime.jsx)(Icon/* default */.A, { type: iconType, size: iconSize }) })));
};
var TopicFilterIcon = TopicFilterIconComponent;



/***/ }),

/***/ "xRpW":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   C: () => (/* binding */ getVILabelTranslations)
/* harmony export */ });
var getVILabelTranslations = function (label) {
    var labelTranslations = {
        imageObject: l('Objects', 'viChartLabels'),
        imageScene: l('Scenes', 'viChartLabels'),
        imageActivities: l('Activities', 'viChartLabels'),
        imagePeople: l('Persons', 'viChartLabels'),
        imageBrand: l('Logos', 'viChartLabels'),
        line: l('Median'),
    };
    return labelTranslations[label];
};


/***/ }),

/***/ "o+o8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  L: () => (/* binding */ CUSTOM_DASHBOARD_SHARE_MODAL_ID),
  A: () => (/* binding */ modals_CustomDashboardShareModal_CustomDashboardShareModal)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/hoc/connectModal.ts
var connectModal = __webpack_require__("YvHy");
// EXTERNAL MODULE: ./src/components/ui/Modal/index.ts
var Modal = __webpack_require__("V5xf");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/components/ui/H2/index.ts + 2 modules
var H2 = __webpack_require__("qJYH");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/utils/navigation.ts
var navigation = __webpack_require__("RBXy");
// EXTERNAL MODULE: ./src/components/ui/ShareLink/index.ts + 2 modules
var ShareLink = __webpack_require__("3aHs");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/hooks/useApi.tsx
var useApi = __webpack_require__("lvrO");
// EXTERNAL MODULE: ./src/state/customDashboards/filterSelectors.ts
var filterSelectors = __webpack_require__("7lJ6");
;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardShareModal/CustomDashboardShareModal.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const CustomDashboardShareModal = ({"modal":"Sz9Z9ea2AWkmLplqgZsF","modalTitle":"OS9yP9NVILf_cnDSf5ag","modalSubtitle":"XEo40pUMyaFRUoXTEi9S"});
;// CONCATENATED MODULE: ./src/containers/modals/CustomDashboardShareModal/CustomDashboardShareModal.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
















var CUSTOM_DASHBOARD_SHARE_MODAL_ID = 'CustomDashboardShareModal';
var CustomDashboardShareModal_CustomDashboardShareModal = function (_a) {
    var _b;
    var show = _a.show, handleHide = _a.handleHide, dateRange = _a.dateRange, filter = _a.filter, dashboardName = _a.dashboardName, dashboardId = _a.dashboardId, eventTriggerFrom = _a.eventTriggerFrom, sendAnalyticalEvent = _a.sendAnalyticalEvent;
    var _c = (0,useApi/* useApi */.g)(apiSingleton/* default */.A.customDashboards.share), fetch = _c.fetch, loading = _c.loading, data = _c.data;
    (0,react.useEffect)(function () {
        fetch({ dashboardId: dashboardId, filter: filter.toApi(), dateRange: dateRange });
    }, []);
    var handleCopy = function () {
        sendAnalyticalEvent({
            eventType: 'Custom dashboards: link copied',
            properties: {
                dashboardId: dashboardId,
                dashboardName: dashboardName,
                eventTriggerFrom: eventTriggerFrom,
            },
        });
    };
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, __assign({ shouldCloseOnEsc: true, shouldCloseOnOverlayClick: true, isOpen: show, className: classnames_default()(CustomDashboardShareModal.modal), onRequestClose: handleHide }, { children: [(0,jsx_runtime.jsx)(H2/* default */.A, __assign({ className: classnames_default()(CustomDashboardShareModal.modalTitle) }, { children: l('Share public link') })), (0,jsx_runtime.jsxs)("p", __assign({ className: classnames_default()(CustomDashboardShareModal.modalSubtitle) }, { children: [l('This link allows you to share the dashboard with anyone. They will have view-only access.'), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,jsx_runtime.jsx)("a", __assign({ href: (0,navigation/* getLinkToHelpYouscan */.vn)('EXTERNAL_ACCESS_TO_A_DASHBOARD'), target: "_blank", rel: "noopener noreferrer" }, { children: l('Learn more') }))] })), (0,jsx_runtime.jsx)(ShareLink/* default */.A, { value: (_b = data === null || data === void 0 ? void 0 : data.url) !== null && _b !== void 0 ? _b : '', onCopy: handleCopy, loading: loading })] })));
};
/* harmony default export */ const modals_CustomDashboardShareModal_CustomDashboardShareModal = ((0,redux/* compose */.Zz)((0,connectModal/* default */.A)(CUSTOM_DASHBOARD_SHARE_MODAL_ID), (0,react_redux/* connect */.Ng)(function (state, ownProps) { return ({
    filter: (0,filterSelectors/* getCustomDashboardFilter */.ep)("".concat(ownProps.dashboardId))(state),
    dateRange: (0,filterSelectors/* getCustomDashboardDateRange */.jV)("".concat(ownProps.dashboardId))(state),
}); }, {
    sendAnalyticalEvent: model/* analyticsStateModel */.j.action.sendAnalyticalEvent,
}))(CustomDashboardShareModal_CustomDashboardShareModal));


/***/ }),

/***/ "cFE2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* reexport */ notifications_NotificationsStacker_NotificationsStacker)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/notifications/NotificationsStacker/NotificationsStacker.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const NotificationsStacker = ({"base":"gXxSUWGpiEI9jXrIpJR3"});
;// CONCATENATED MODULE: ./src/containers/notifications/NotificationsStacker/NotificationsStacker.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var NotificationsStacker_NotificationsStacker = function (_a) {
    var children = _a.children;
    return ((0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(NotificationsStacker.base) }, { children: children })));
};
/* harmony default export */ const notifications_NotificationsStacker_NotificationsStacker = (NotificationsStacker_NotificationsStacker);

;// CONCATENATED MODULE: ./src/containers/notifications/NotificationsStacker/index.ts



/***/ }),

/***/ "YvHy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var redux_modal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("R9/U");

/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (name) { return (0,redux_modal__WEBPACK_IMPORTED_MODULE_0__/* .connectModal */ .UG)({ name: name }); });


/***/ }),

/***/ "5aoS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   y: () => (/* binding */ withRouter)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("V4z/");
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("Qyje");
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var utils_routing__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("aALz");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





function withRouter(Component, options) {
    function ComponentWithRouterProp(props, ref) {
        var location = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_2__/* .useLocation */ .zy)();
        var navigate = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_2__/* .useNavigate */ .Zp)();
        var params = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_2__/* .useParams */ .g)();
        var query = (0,utils_routing__WEBPACK_IMPORTED_MODULE_3__/* .locationToQuery */ .T)(location);
        var locationWithQuery = __assign(__assign({}, location), { query: query });
        var router = {
            location: locationWithQuery,
            isActive: function (path) {
                return location.pathname.includes(path);
            },
            push: function (path) {
                if (typeof path === 'string') {
                    navigate(path);
                }
                else {
                    navigate(path.pathname, { state: path.state });
                }
            },
            replace: function (loc) {
                if (typeof loc === 'string') {
                    navigate(loc, { replace: true });
                }
                else {
                    navigate(loc.pathname, { state: loc.state, replace: true });
                }
            },
            goBack: function () {
                navigate(-1);
            },
            createPath: function (loc) {
                var path = '';
                if (typeof loc === 'string') {
                    path = loc;
                }
                else if ('pathname' in loc) {
                    path = loc.pathname;
                    if (loc.search) {
                        path += loc.search;
                    }
                    else if (loc.query) {
                        var queryString = qs__WEBPACK_IMPORTED_MODULE_4___default().stringify(loc.query, { addQueryPrefix: true });
                        path += queryString;
                    }
                }
                return path;
            },
        };
        var refProps = (options === null || options === void 0 ? void 0 : options.forwardRef) ? { ref: ref } : {};
        return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(Component, __assign({}, props, refProps, { router: router, location: locationWithQuery, navigate: navigate, params: params }));
    }
    if (options === null || options === void 0 ? void 0 : options.forwardRef) {
        return (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(ComponentWithRouterProp);
    }
    return ComponentWithRouterProp;
}


/***/ }),

/***/ "mN0g":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("sYBo");
/* harmony import */ var hoc_withRouter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("5aoS");
/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("SMvd");
/* harmony import */ var state_stats_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("Gku9");
/* harmony import */ var state_stats_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("K9kJ");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("Qyqr");
/* harmony import */ var state_session_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("4gVp");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("0Zyk");
/* harmony import */ var utils_detectStatsConfigPeriod__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("uZfh");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("9jXX");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};












/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (key, config, prevPeriod, mapStateToProps, statsByOverwrite) {
    if (prevPeriod === void 0) { prevPeriod = false; }
    if (mapStateToProps === void 0) { mapStateToProps = function (_) { }; }
    if (statsByOverwrite === void 0) { statsByOverwrite = null; }
    return function (Component) {
        var withTopicStats = /** @class */ (function (_super) {
            __extends(withTopicStats, _super);
            function withTopicStats() {
                var _this = _super !== null && _super.apply(this, arguments) || this;
                _this.getIntervalMs = function () {
                    var _a = _this.props, periodFrom = _a.periodFrom, periodTo = _a.periodTo;
                    return utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_9__/* .TIME */ .E9[(0,utils_detectStatsConfigPeriod__WEBPACK_IMPORTED_MODULE_8__/* .getInterval */ .A8)(periodFrom, periodTo)];
                };
                _this.fetchStats = function (props) {
                    var themeId = props.themeId, filter = props.filter, periodFrom = props.periodFrom, periodTo = props.periodTo, statsBy = props.statsBy;
                    (0,utils_detectStatsConfigPeriod__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Ay)(config, periodFrom, periodTo);
                    props.fetchStats({ themeId: themeId, filter: filter, config: config, key: key, prevPeriod: prevPeriod, statsBy: statsByOverwrite || statsBy });
                };
                return _this;
            }
            withTopicStats.prototype.componentDidMount = function () {
                this.fetchStats(this.props);
            };
            withTopicStats.prototype.componentDidUpdate = function (prevProps) {
                var prevFilter = prevProps.filter;
                var filter = this.props.filter;
                var hasFilterChanged = prevFilter && !filter.equals(prevFilter);
                var hasThemeChanged = prevProps.themeId && prevProps.themeId !== this.props.themeId;
                var hasMetricChanged = prevProps.statsBy && prevProps.statsBy !== this.props.statsBy;
                if (hasThemeChanged || hasFilterChanged || hasMetricChanged) {
                    this.fetchStats(this.props);
                }
            };
            withTopicStats.prototype.render = function () {
                return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(Component, __assign({}, this.props, { interval: this.getIntervalMs() })));
            };
            return withTopicStats;
        }(react__WEBPACK_IMPORTED_MODULE_1__.PureComponent));
        return (0,redux__WEBPACK_IMPORTED_MODULE_10__/* .compose */ .Zz)(hoc_withRouter__WEBPACK_IMPORTED_MODULE_2__/* .withRouter */ .y, (0,react_redux__WEBPACK_IMPORTED_MODULE_11__/* .connect */ .Ng)(function (state) {
            var stats = (0,state_stats_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getStatsByKey */ ._$)(state, key) || {};
            var filter = (0,state_filter_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getThemeFilter */ .Ic)(state);
            var props = {
                loggedOn: (0,state_session_selectors__WEBPACK_IMPORTED_MODULE_6__/* .isLoggedOn */ .e5)(state),
                filter: filter,
                themeId: (0,state_themes_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentThemeId */ .Md)(state),
                data: stats.data,
                prevData: stats.prevData,
                isFetching: stats.isFetching,
                periodFrom: filter.from,
                periodTo: filter.to,
                error: stats.error,
                statsBy: (0,state_stats_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getStatsBy */ .b8)(state),
            };
            if (!stats.data || stats.isFetching) {
                return props;
            }
            return __assign(__assign({}, props), mapStateToProps(state, props));
        }, { fetchStats: state_stats_model__WEBPACK_IMPORTED_MODULE_3__/* .statsModel */ .l.action.fetchStats }))(withTopicStats);
    };
});


/***/ }),

/***/ "lvrO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   g: () => (/* binding */ useApi)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

function useApi(method) {
    var _a = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null), 2), data = _a[0], setData = _a[1];
    var _b = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null), 2), error = _b[0], setError = _b[1];
    var _c = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false), 2), loading = _c[0], setLoading = _c[1];
    var _d = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false), 2), loaded = _d[0], setLoaded = _d[1];
    var fetch = function () {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        setLoading(true);
        setLoaded(false);
        return method.apply(void 0, __spreadArray([], __read(args), false)).then(function (r) {
            setData(r);
            setLoaded(true);
            setLoading(false);
            return r;
        })
            .catch(function (e) {
            setLoading(false);
            setLoaded(true);
            setError(e);
            throw e;
        });
    };
    var clearData = function () {
        setData(null);
        setError(null);
        setLoaded(false);
        setLoading(false);
    };
    return { fetch: fetch, clearData: clearData, data: data, loading: loading, loaded: loaded, error: error };
}


/***/ }),

/***/ "gw6y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Ay: () => (__WEBPACK_DEFAULT_EXPORT__),
/* harmony export */   lf: () => (/* binding */ FULL_VOLUME),
/* harmony export */   uH: () => (/* binding */ WORD_CHARTS_VOLUME)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

var DEFAULT_VOLUME = [10, 95];
var WORD_CHARTS_VOLUME = [10, 99];
var FULL_VOLUME = [0, 100];
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (defaultVolume) {
    if (defaultVolume === void 0) { defaultVolume = DEFAULT_VOLUME; }
    var _a = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(defaultVolume), 2), volume = _a[0], setVolume = _a[1];
    var _b = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(defaultVolume), 2), usedVolume = _b[0], setUsedVolume = _b[1];
    return {
        volume: volume,
        usedVolume: usedVolume,
        setVolume: setVolume,
        setUsedVolume: setUsedVolume,
    };
});


/***/ }),

/***/ "me3u":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   m: () => (/* binding */ useEffectCustom)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");

function useEffectCustom(effect, deps, compare) {
    var depsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(deps);
    if (!compare(depsRef.current, deps)) {
        depsRef.current = deps;
    }
    (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(effect, depsRef.current);
}


/***/ }),

/***/ "56YP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* binding */ FacetsProvider),
/* harmony export */   P: () => (/* binding */ useFacetsContext)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
/* harmony import */ var state_filter_model__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("xvzv");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("kHEK");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_4__);
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};





var defaultValue = {
    facets: null,
    facetsWithoutStats: null,
    fetchFacets: null,
    fetchDescribeFilter: null,
};
var FacetsContext = (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)(defaultValue);
FacetsContext.displayName = 'FacetsContext';
var FacetsProvider = function (_a) {
    var children = _a.children, options = _a.options;
    var _b = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), savedTopicId = _b[0], setSavedTopicId = _b[1];
    var _c = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false), 2), isRequestPending = _c[0], setIsRequestPending = _c[1];
    var _d = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), facetResultPromise = _d[0], setFacetResultPromise = _d[1];
    var _e = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), savedFilter = _e[0], setSavedFilter = _e[1];
    var _f = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), savedFilterWithoutStats = _f[0], setSavedFilterWithoutStats = _f[1];
    var _g = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), savedExternalCachingCriteria = _g[0], setSavedExternalCachingCriteria = _g[1];
    var _h = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), facets = _h[0], setFacets = _h[1];
    var _j = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), facetsWithoutStats = _j[0], setFacetsWithoutStats = _j[1];
    var _k = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null), 2), facetsDefault = _k[0], setFacetsDefault = _k[1];
    (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
        if (options === null || options === void 0 ? void 0 : options.fetchDefaultFacets) {
            options.fetchDefaultFacets().then(function (result) {
                setFacets(result);
                setFacetsWithoutStats(result);
                setFacetsDefault(result);
            });
        }
    }, []);
    var fetchFacets = function (filter, topicId) { return __awaiter(void 0, void 0, void 0, function () {
        var f, promise, result;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    if ((options === null || options === void 0 ? void 0 : options.useDefaultFacets) && facetsDefault) {
                        setFacets(facetsDefault);
                        setFacetsWithoutStats(facetsDefault);
                        return [2 /*return*/, Promise.resolve(facetsDefault)];
                    }
                    if (isRequestPending && filter.equals(savedFilter) && savedTopicId === topicId) {
                        return [2 /*return*/, facetResultPromise];
                    }
                    if (filter.equals(savedFilter) && savedTopicId === topicId) {
                        if ((0,lodash__WEBPACK_IMPORTED_MODULE_4__.isEqual)(options === null || options === void 0 ? void 0 : options.externalFacetsCachingCriteria, savedExternalCachingCriteria)) {
                            return [2 /*return*/, Promise.resolve(facets)];
                        }
                        setFacets(facetsDefault);
                        setFacetsWithoutStats(facetsDefault);
                    }
                    f = filter.copyFilter();
                    setSavedFilter(f);
                    setSavedTopicId(topicId);
                    setSavedExternalCachingCriteria(options === null || options === void 0 ? void 0 : options.externalFacetsCachingCriteria);
                    setIsRequestPending(true);
                    promise = (options === null || options === void 0 ? void 0 : options.fetchFacets) ? options === null || options === void 0 ? void 0 : options.fetchFacets(f, topicId) : state_filter_model__WEBPACK_IMPORTED_MODULE_2__/* .filterModel */ .W.fetchAllFilterFacetsAsync({ filter: f, themeId: topicId });
                    setFacetResultPromise(promise);
                    return [4 /*yield*/, promise];
                case 1:
                    result = _a.sent();
                    setFacets(result);
                    setFacetsWithoutStats(result);
                    setIsRequestPending(false);
                    setFacetResultPromise(null);
                    return [2 /*return*/, result];
            }
        });
    }); };
    var fetchDescribeFilter = function (filter, topicId) { return __awaiter(void 0, void 0, void 0, function () {
        var f, result, _a;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    if (filter.equals(savedFilter) && savedTopicId === topicId) {
                        return [2 /*return*/, Promise.resolve(facets)];
                    }
                    if (filter.equals(savedFilterWithoutStats)) {
                        return [2 /*return*/, Promise.resolve(facetsWithoutStats)];
                    }
                    f = filter.copyFilter();
                    setSavedFilterWithoutStats(f);
                    if (!(options === null || options === void 0 ? void 0 : options.fetchDescribeFilter)) return [3 /*break*/, 2];
                    return [4 /*yield*/, (options === null || options === void 0 ? void 0 : options.fetchDescribeFilter(f))];
                case 1:
                    _a = _b.sent();
                    return [3 /*break*/, 4];
                case 2: return [4 /*yield*/, apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.facets.fetchFilterEntitiesNew({ themeId: topicId, filter: f.toApi() })];
                case 3:
                    _a = _b.sent();
                    _b.label = 4;
                case 4:
                    result = _a;
                    setFacetsWithoutStats(facetsWithoutStats
                        ? (0,lodash__WEBPACK_IMPORTED_MODULE_4__.merge)(facetsWithoutStats, {
                            uiEntities: result.entities,
                            entities: result.entities,
                            aggregations: {},
                        })
                        : {
                            uiEntities: result.entities,
                            entities: result.entities,
                            aggregations: {},
                        });
                    setFacets(facets
                        ? (0,lodash__WEBPACK_IMPORTED_MODULE_4__.merge)({
                            uiEntities: result.entities,
                            entities: result.entities,
                            aggregations: {},
                        }, facets) : {
                        uiEntities: result.entities,
                        entities: result.entities,
                        aggregations: {},
                    });
                    return [2 /*return*/, result];
            }
        });
    }); };
    return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(FacetsContext.Provider, __assign({ value: { facets: facets, facetsWithoutStats: facetsWithoutStats, fetchFacets: fetchFacets, fetchDescribeFilter: fetchDescribeFilter } }, { children: children }));
};
var useFacetsContext = function () {
    return (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(FacetsContext);
};


/***/ }),

/***/ "qd5V":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   D: () => (/* binding */ useHighlightContext),
/* harmony export */   i: () => (/* binding */ HighlightProvider)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("q1tI");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};


var defaultValue = {
    isHighlighted: false,
    showHighlight: function () { },
    hideHighlight: function () { },
};
var HighlightContext = (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)(defaultValue);
var HighlightProvider = function (_a) {
    var children = _a.children;
    var _b = __read((0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false), 2), isHighlighted = _b[0], setIsHighlighted = _b[1];
    var showHighlight = function () { return setIsHighlighted(true); };
    var hideHighlight = function () { return setIsHighlighted(false); };
    var highlightToolbox = {
        isHighlighted: isHighlighted,
        showHighlight: showHighlight,
        hideHighlight: hideHighlight,
    };
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(HighlightContext.Provider, __assign({ value: highlightToolbox }, { children: children })));
};
var useHighlightContext = function () {
    return (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(HighlightContext);
};


/***/ }),

/***/ "QNbQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Z: () => (/* binding */ useMentionTranslation)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");
/* harmony import */ var hooks_useApi__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("lvrO");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



var useMentionTranslation = function (_a) {
    var title = _a.title, text = _a.text, mentionLanguage = _a.mentionLanguage, userLanguage = _a.userLanguage, canBackendTranslate = _a.canBackendTranslate, _b = _a.sendAnalyticalEvent, sendAnalyticalEvent = _b === void 0 ? undefined : _b;
    var _c = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false), 2), isTranslated = _c[0], setIsTranslated = _c[1];
    var _d = __read((0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false), 2), translationError = _d[0], setTranslationError = _d[1];
    var _e = (0,hooks_useApi__WEBPACK_IMPORTED_MODULE_1__/* .useApi */ .g)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.translation.translate), fetchTranslation = _e.fetch, translation = _e.data, loading = _e.loading;
    var translate = function () {
        setTranslationError(false);
        if (isTranslated) {
            setIsTranslated(false);
            return;
        }
        fetchTranslation({
            title: title,
            text: text,
            mentionLanguage: mentionLanguage,
            translateToLanguage: userLanguage,
        }).then(function (r) {
            setIsTranslated(!!r);
            setTranslationError(!r);
        }).catch(function (e) {
            setIsTranslated(false);
            setTranslationError(!!e);
        });
        sendAnalyticalEvent === null || sendAnalyticalEvent === void 0 ? void 0 : sendAnalyticalEvent({
            eventType: 'Translation button clicked',
            properties: {
                mentionLanguage: mentionLanguage,
                translateToLanguage: userLanguage,
            },
        });
    };
    var canTranslate = canBackendTranslate && (userLanguage !== mentionLanguage);
    return {
        canTranslate: canTranslate,
        isTranslated: isTranslated,
        isTranslationLoading: loading,
        translationError: translationError,
        translation: translation,
        translate: translate,
    };
};


/***/ }),

/***/ "872o":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $G: () => (/* binding */ detectUserLocale),
/* harmony export */   JK: () => (/* binding */ getLocale),
/* harmony export */   fh: () => (/* binding */ setLocaleData),
/* harmony export */   nv: () => (/* binding */ sprintf),
/* harmony export */   pL: () => (/* binding */ changeLocale)
/* harmony export */ });
/* unused harmony exports init, l, nl, num, getSupportedLocales, isLocaleSupported, getBrowserLanguage, loadLocaleData, resetLocaleData */
/* harmony import */ var jed__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("YzMP");
/* harmony import */ var jed__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jed__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("wd/R");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("f0Wu");
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(moment_timezone__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var numeral__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("ZhIB");
/* harmony import */ var numeral__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(numeral__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var moment_locale_ru__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("lXzo");
/* harmony import */ var moment_locale_ru__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(moment_locale_ru__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var moment_locale_uk__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("raLr");
/* harmony import */ var moment_locale_uk__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(moment_locale_uk__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var moment_locale_es__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("iYuL");
/* harmony import */ var moment_locale_es__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(moment_locale_es__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var moment_locale_pt_br__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("0tRk");
/* harmony import */ var moment_locale_pt_br__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(moment_locale_pt_br__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var numeral_locales_ru__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("Rgn1");
/* harmony import */ var numeral_locales_ru__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(numeral_locales_ru__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var numeral_locales_es__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("4uMZ");
/* harmony import */ var numeral_locales_es__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(numeral_locales_es__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var numeral_locales_uk_ua__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("s68W");
/* harmony import */ var numeral_locales_uk_ua__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(numeral_locales_uk_ua__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var numeral_locales_pt_br__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("AvQX");
/* harmony import */ var numeral_locales_pt_br__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(numeral_locales_pt_br__WEBPACK_IMPORTED_MODULE_11__);












var i18n;
var locale;
var onChange;
function init(localeData, localeCode, rerenderApp) {
    if (rerenderApp === void 0) { rerenderApp = null; }
    i18n = new (jed__WEBPACK_IMPORTED_MODULE_0___default())(localeData);
    locale = localeCode;
    moment__WEBPACK_IMPORTED_MODULE_1___default().locale(localeCode === 'en' ? 'en_GB' : localeCode);
    moment_timezone__WEBPACK_IMPORTED_MODULE_2___default().locale(localeCode === 'en' ? 'en_GB' : localeCode);
    var enLocaleData = numeral__WEBPACK_IMPORTED_MODULE_3___default().localeData('en');
    enLocaleData.abbreviations.thousand = 'K';
    enLocaleData.abbreviations.million = 'M';
    enLocaleData.abbreviations.billion = 'B';
    enLocaleData.abbreviations.trillion = 'T';
    numeral__WEBPACK_IMPORTED_MODULE_3___default().locale(localeCode === 'uk' ? 'uk-ua' : localeCode);
    window.l = l;
    window.nl = nl;
    window.num = num;
    window.sprintf = sprintf;
    if (!onChange) {
        onChange = rerenderApp;
    }
}
function sprintf() {
    var args = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
    }
    return jed__WEBPACK_IMPORTED_MODULE_0___default().sprintf.apply(this, args);
}
function l(text, context, options) {
    if (options === null || options === void 0 ? void 0 : options.alwaysDefaultTranslation)
        return text;
    return context
        ? i18n.pgettext(context, text)
        : i18n.gettext(text);
}
function nl(singular, plural, amount, context) {
    if (!Number.isInteger(amount)) {
        return singular;
    }
    return context
        ? i18n.npgettext(context, singular, plural, amount)
        : i18n.ngettext(singular, plural, amount);
}
function num(number, formatter) {
    if (formatter === void 0) { formatter = null; }
    return numeral__WEBPACK_IMPORTED_MODULE_3___default()(number).format(formatter);
}
function getSupportedLocales() {
    return ['ru', 'en', 'uk', 'es', 'pt-br'];
}
function isLocaleSupported(localeCode) {
    return getSupportedLocales().indexOf(localeCode) !== -1;
}
function getBrowserLanguage() {
    var browserLanguage = navigator.language;
    if (browserLanguage.includes('ru')) {
        return 'ru';
    }
    if (browserLanguage.includes('uk')) {
        return 'uk';
    }
    if (browserLanguage.includes('es')) {
        return 'es';
    }
    if (browserLanguage.includes('pt-br')) {
        return 'pt-br';
    }
    return 'en';
}
function detectUserLocale() {
    var savedLocale = localStorage.getItem('locale');
    if (isLocaleSupported(savedLocale)) {
        return savedLocale;
    }
    return getBrowserLanguage();
}
function getLocale() {
    return locale;
}
function loadLocaleData(localeCode) {
    return fetch("/static/lang/".concat(localeCode, ".json"))
        .then(function (res) {
        if (res.status >= 400) {
            throw new Error('Bad response from server');
        }
        return res.json();
    });
}
function changeLocale(localeCode) {
    if (isLocaleSupported(localeCode)) {
        localStorage.setItem('locale', localeCode);
        resetLocaleData(localeCode);
    }
    else {
        console.error('Locale is not supported', localeCode);
    }
}
function resetLocaleData(localeCode) {
    if (localeCode === locale) {
        return null;
    }
    return loadLocaleData(localeCode)
        .then(function (localeData) {
        init(localeData, localeCode);
        onChange === null || onChange === void 0 ? void 0 : onChange();
    });
}
function setLocaleData(localeCode, rerenderApp) {
    return loadLocaleData(localeCode)
        .then(function (localeData) { return init(localeData, localeCode, rerenderApp); });
}


/***/ }),

/***/ "ttpX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Sq: () => (/* binding */ DateInterval),
/* harmony export */   dv: () => (/* binding */ AGGREGATION_METRICS),
/* harmony export */   un: () => (/* binding */ LinksSortOrder)
/* harmony export */ });
/* unused harmony exports AGGREGATIONS, AuthorsSortOrder */
var AGGREGATION_METRICS = [
    'mentionsCount',
    'authorsCount',
    'sourcesCount',
    'engagementSum',
    'viewsSum',
    'impressionsSum',
    'reachSum',
    'potentialReachSum',
    'likesSum',
    'repostsSum',
    'commentsSum',
    'sentimentRate'
];
var AGGREGATIONS = (/* unused pure expression or super */ null && ([
    'sentiment',
    'tags',
    'trends',
    'systemTags',
    'resourceTypes',
    'postTypes',
    'indirect',
    'languages',
    'sources',
    'sourceFormat',
    'authors',
    'influencers',
    'influenceScore',
    'engagementRates',
    'channels',
    'countryGroups',
    'countries',
    'regions',
    'regionIds',
    'cities',
    'cityIds',
    'words',
    'significantWords',
    'authorAge',
    'authorGender',
    'authorJobs',
    'authorInterests',
    'authorInterestCategories',
    'links',
    'hosts',
    'emojis',
    'objects',
    'discussions',
    'rules',
    'imageBrands',
    'imageObjects',
    'imageScenes',
    'imagePeople',
    'imageContentSensitivity',
    'imageActivities',
    'imageColors',
    'imageTags',
    'sentimentAffects',
    'imageTypes',
    'imageSubtypes',
    'topics',
    'subjects',
    'aspects',
    'sentimentAspects',
    'origins',
    'collectionMethods',
    'contentTypes',
    'dates',
    'engagement',
    'authorsCount',
    'sourcesCount',
    'starRating',
    'viewsCount',
    'subscribersCount',
    'maxDate',
    'mentionIds',
    'medianAuthorEngagement',
    'metricTotal',
    'date',
    'sponsored',
    'authorAgeRange'
]));
var DateInterval;
(function (DateInterval) {
    DateInterval["Hour"] = "hour";
    DateInterval["Day"] = "day";
    DateInterval["Week"] = "week";
    DateInterval["Month"] = "month";
    DateInterval["Quarter"] = "quarter";
    DateInterval["Year"] = "year";
})(DateInterval || (DateInterval = {}));
var AuthorsSortOrder;
(function (AuthorsSortOrder) {
    AuthorsSortOrder["Count"] = "count";
    AuthorsSortOrder["TotalEngagement"] = "totalEngagement";
    AuthorsSortOrder["Readers"] = "readers";
})(AuthorsSortOrder || (AuthorsSortOrder = {}));
var LinksSortOrder;
(function (LinksSortOrder) {
    LinksSortOrder["Count"] = "count";
    LinksSortOrder["TotalEngagement"] = "totalEngagement";
    LinksSortOrder["AvgEngagement"] = "avgEngagement";
})(LinksSortOrder || (LinksSortOrder = {}));


/***/ }),

/***/ "XSTB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CH: () => (/* binding */ AuthorizationSubstatus),
/* harmony export */   Fg: () => (/* binding */ AuthorizationRequireType),
/* harmony export */   s0: () => (/* binding */ AuthorizationType)
/* harmony export */ });
/* unused harmony exports AuthorizationStatus, AuthorizationSource */
var AuthorizationRequireType;
(function (AuthorizationRequireType) {
    AuthorizationRequireType["NotRequire"] = "notRequire";
    AuthorizationRequireType["RequireInstagram"] = "requireInstagram";
    AuthorizationRequireType["RequireFacebookInstagram"] = "requireFacebookInstagram";
})(AuthorizationRequireType || (AuthorizationRequireType = {}));
var AuthorizationType;
(function (AuthorizationType) {
    AuthorizationType["FacebookInstagram"] = "facebookInstagram";
    AuthorizationType["Facebook"] = "facebook";
    AuthorizationType["LinkedIn"] = "linkedIn";
})(AuthorizationType || (AuthorizationType = {}));
var AuthorizationStatus;
(function (AuthorizationStatus) {
    AuthorizationStatus["Ok"] = "Ok";
    AuthorizationStatus["Expired"] = "Expired";
})(AuthorizationStatus || (AuthorizationStatus = {}));
var AuthorizationSubstatus;
(function (AuthorizationSubstatus) {
    AuthorizationSubstatus["Ok"] = "ok";
    AuthorizationSubstatus["ExpiringNoChannelsConnected"] = "expiringNoChannelsConnected";
    AuthorizationSubstatus["ExpiringChannelsConnected"] = "expiringChannelsConnected";
    AuthorizationSubstatus["ExpiringRegularCollectionConnected"] = "expiringRegularCollectionConnected";
    AuthorizationSubstatus["ExpiredNoChannelsConnected"] = "expiredNoChannelsConnected";
    AuthorizationSubstatus["ExpiredChannelsConnected"] = "expiredChannelsConnected";
    AuthorizationSubstatus["ExpiredRegularCollectionConnected"] = "expiredRegularCollectionConnected";
})(AuthorizationSubstatus || (AuthorizationSubstatus = {}));
var AuthorizationSource;
(function (AuthorizationSource) {
    AuthorizationSource["Instagram"] = "instagram.com";
})(AuthorizationSource || (AuthorizationSource = {}));


/***/ }),

/***/ "ejQr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   g5: () => (/* binding */ PaymentMethod)
/* harmony export */ });
/* unused harmony exports SubscriptionStatus, InvoiceStatus, InvoicingGateway, TimeUnit, Currency */
var SubscriptionStatus;
(function (SubscriptionStatus) {
    SubscriptionStatus["NotActive"] = "notActive";
    SubscriptionStatus["Active"] = "active";
    SubscriptionStatus["WaitingForPayment"] = "waitingForPayment";
    SubscriptionStatus["PastDue"] = "pastDue";
})(SubscriptionStatus || (SubscriptionStatus = {}));
var PaymentMethod;
(function (PaymentMethod) {
    PaymentMethod["None"] = "none";
    PaymentMethod["Invoicing"] = "invoicing";
    PaymentMethod["Card"] = "card";
    PaymentMethod["Stripe"] = "stripe";
})(PaymentMethod || (PaymentMethod = {}));
var InvoiceStatus;
(function (InvoiceStatus) {
    InvoiceStatus["Created"] = "created";
    InvoiceStatus["WaitingForPayment"] = "waitingForPayment";
    InvoiceStatus["Paid"] = "paid";
    InvoiceStatus["Canceled"] = "canceled";
    InvoiceStatus["Declined"] = "declined";
    InvoiceStatus["Pending"] = "pending";
    InvoiceStatus["UnderReview"] = "underReview";
})(InvoiceStatus || (InvoiceStatus = {}));
var InvoicingGateway;
(function (InvoicingGateway) {
    InvoicingGateway["RuOneC"] = "ruOneC";
    InvoicingGateway["UaOneC"] = "uaOneC";
    InvoicingGateway["CyOneC"] = "cyOneC";
})(InvoicingGateway || (InvoicingGateway = {}));
var TimeUnit;
(function (TimeUnit) {
    TimeUnit["Day"] = "day";
    TimeUnit["Month"] = "month";
    TimeUnit["Year"] = "year";
})(TimeUnit || (TimeUnit = {}));
var Currency;
(function (Currency) {
    Currency["Usd"] = "usd";
    Currency["Rub"] = "rub";
    Currency["Uah"] = "uah";
    Currency["Eur"] = "eur";
    Currency["Gbp"] = "gbp";
})(Currency || (Currency = {}));


/***/ }),

/***/ "svtq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   GR: () => (/* binding */ ShiftPeriod),
/* harmony export */   P7: () => (/* binding */ AuthorsSortOrder),
/* harmony export */   VC: () => (/* binding */ CustomDashboardValueDisplayKind),
/* harmony export */   Vs: () => (/* binding */ CustomDashboardTemplates),
/* harmony export */   ci: () => (/* binding */ DateRangeType),
/* harmony export */   pf: () => (/* binding */ CustomDateRangeType),
/* harmony export */   qP: () => (/* binding */ CustomDashboardWidgetType),
/* harmony export */   un: () => (/* binding */ LinksSortOrder),
/* harmony export */   up: () => (/* binding */ ExportDashboardFormat),
/* harmony export */   wE: () => (/* binding */ RelativeDateRangeType)
/* harmony export */ });
/* unused harmony export CustomDashboardOrientation */
var CustomDashboardWidgetType;
(function (CustomDashboardWidgetType) {
    CustomDashboardWidgetType["line"] = "line";
    CustomDashboardWidgetType["dumbbell"] = "dumbbell";
    CustomDashboardWidgetType["pie"] = "pie";
    CustomDashboardWidgetType["spider"] = "spider";
    CustomDashboardWidgetType["counter"] = "counter";
    CustomDashboardWidgetType["histogram"] = "histogram";
    CustomDashboardWidgetType["wordCloud"] = "wordCloud";
    CustomDashboardWidgetType["geo"] = "geo";
    CustomDashboardWidgetType["stackedBar"] = "stackedBar";
    CustomDashboardWidgetType["list"] = "list";
    CustomDashboardWidgetType["text"] = "text";
    CustomDashboardWidgetType["graph"] = "graph";
    CustomDashboardWidgetType["trends"] = "trends";
})(CustomDashboardWidgetType || (CustomDashboardWidgetType = {}));
var DateRangeType;
(function (DateRangeType) {
    DateRangeType["ABSOLUTE"] = "absolute";
    DateRangeType["RELATIVE"] = "relative";
    DateRangeType["CUSTOM"] = "custom";
})(DateRangeType || (DateRangeType = {}));
var CustomDateRangeType;
(function (CustomDateRangeType) {
    CustomDateRangeType["TODAY"] = "Today";
    CustomDateRangeType["YESTERDAY"] = "Yesterday";
    CustomDateRangeType["THIS_WEEK"] = "ThisWeek";
    CustomDateRangeType["PREVIOUS_WEEK"] = "PreviousWeek";
    CustomDateRangeType["THIS_MONTH"] = "ThisMonth";
    CustomDateRangeType["PREVIOUS_MONTH"] = "PreviousMonth";
    CustomDateRangeType["THIS_QUARTER"] = "ThisQuarter";
    CustomDateRangeType["PREVIOUS_QUARTER"] = "PreviousQuarter";
    CustomDateRangeType["THIS_YEAR"] = "ThisYear";
    CustomDateRangeType["PREVIOUS_YEAR"] = "PreviousYear";
})(CustomDateRangeType || (CustomDateRangeType = {}));
var RelativeDateRangeType;
(function (RelativeDateRangeType) {
    RelativeDateRangeType["LAST_24_HOURS"] = "-1d";
    RelativeDateRangeType["LAST_7_DAYS"] = "-1w";
    RelativeDateRangeType["LAST_30_DAYS"] = "-30d";
    RelativeDateRangeType["LAST_3_MONTHS"] = "-3mo";
    RelativeDateRangeType["LAST_YEAR"] = "-1y";
})(RelativeDateRangeType || (RelativeDateRangeType = {}));
var ShiftPeriod;
(function (ShiftPeriod) {
    ShiftPeriod["DAY"] = "d";
    ShiftPeriod["WEEK"] = "w";
    ShiftPeriod["MONTH"] = "mo";
    ShiftPeriod["YEAR"] = "y";
})(ShiftPeriod || (ShiftPeriod = {}));
var AuthorsSortOrder;
(function (AuthorsSortOrder) {
    AuthorsSortOrder["Count"] = "count";
    AuthorsSortOrder["TotalEngagement"] = "totalEngagement";
    AuthorsSortOrder["Readers"] = "readers";
})(AuthorsSortOrder || (AuthorsSortOrder = {}));
var LinksSortOrder;
(function (LinksSortOrder) {
    LinksSortOrder["Count"] = "Count";
    LinksSortOrder["TotalEngagement"] = "TotalEngagement";
    LinksSortOrder["AvgEngagement"] = "AvgEngagement";
})(LinksSortOrder || (LinksSortOrder = {}));
var CustomDashboardTemplates;
(function (CustomDashboardTemplates) {
    CustomDashboardTemplates["BrandHealth"] = "BrandHealth";
    CustomDashboardTemplates["CustomerExperience"] = "CustomerExperience";
    CustomDashboardTemplates["CrisisAndSupportManagement"] = "CrisisAndSupportManagement";
    CustomDashboardTemplates["CompetitorAnalysis"] = "CompetitorAnalysis";
    CustomDashboardTemplates["AnalyticsReport"] = "AnalyticsReport";
})(CustomDashboardTemplates || (CustomDashboardTemplates = {}));
var CustomDashboardOrientation;
(function (CustomDashboardOrientation) {
    CustomDashboardOrientation["Horizontal"] = "horizontal";
    CustomDashboardOrientation["Vertical"] = "vertical";
})(CustomDashboardOrientation || (CustomDashboardOrientation = {}));
var CustomDashboardValueDisplayKind;
(function (CustomDashboardValueDisplayKind) {
    CustomDashboardValueDisplayKind["Absolute"] = "absolute";
    CustomDashboardValueDisplayKind["Relative"] = "relative";
})(CustomDashboardValueDisplayKind || (CustomDashboardValueDisplayKind = {}));
var ExportDashboardFormat;
(function (ExportDashboardFormat) {
    ExportDashboardFormat["PDF"] = "pdf";
    ExportDashboardFormat["POWERPOINT"] = "pptx";
})(ExportDashboardFormat || (ExportDashboardFormat = {}));


/***/ }),

/***/ "+Trc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   qD: () => (/* binding */ MentionsSortOrder),
/* harmony export */   vA: () => (/* binding */ SourceFormat),
/* harmony export */   vt: () => (/* binding */ ResourceType),
/* harmony export */   xj: () => (/* binding */ PostType)
/* harmony export */ });
/* unused harmony exports ApiGender, ContentType, SystemTag */
var ApiGender;
(function (ApiGender) {
    ApiGender["Unknown"] = "unknown";
    ApiGender["Community"] = "community";
    ApiGender["Male"] = "male";
    ApiGender["Female"] = "female";
})(ApiGender || (ApiGender = {}));
var ResourceType;
(function (ResourceType) {
    ResourceType["Blog"] = "blog";
    ResourceType["Forum"] = "forum";
    ResourceType["News"] = "news";
    ResourceType["Social"] = "social";
    ResourceType["Reviews"] = "reviews";
    ResourceType["Messenger"] = "messenger";
    ResourceType["Other"] = "other";
})(ResourceType || (ResourceType = {}));
var PostType;
(function (PostType) {
    PostType["Post"] = "post";
    PostType["Repost"] = "repost";
    PostType["Comment"] = "comment";
    PostType["ReplyComment"] = "replyComment";
    PostType["extendedRepost"] = "extendedRepost";
})(PostType || (PostType = {}));
var SourceFormat;
(function (SourceFormat) {
    SourceFormat["InstagramReels"] = "instagramReels";
    SourceFormat["InstagramStories"] = "instagramStories";
    SourceFormat["PinterestStoryPins"] = "pinterestStoryPins";
    SourceFormat["YouTubeShorts"] = "youTubeShorts";
    SourceFormat["FacebookReels"] = "facebookReels";
    SourceFormat["FacebookLive"] = "facebookLive";
    SourceFormat["TwitchLive"] = "twitchLive";
})(SourceFormat || (SourceFormat = {}));
var ContentType;
(function (ContentType) {
    ContentType["Text"] = "text";
    ContentType["Link"] = "link";
    ContentType["Image"] = "image";
    ContentType["Video"] = "video";
    ContentType["Album"] = "album";
    ContentType["Location"] = "location";
    ContentType["Poll"] = "poll";
    ContentType["Subtitles"] = "subtitles";
})(ContentType || (ContentType = {}));
var SystemTag;
(function (SystemTag) {
    SystemTag[SystemTag["None"] = 0] = "None";
    SystemTag[SystemTag["Adult"] = 1] = "Adult";
    SystemTag[SystemTag["Commercial"] = 2] = "Commercial";
    SystemTag[SystemTag["Gibberish"] = 3] = "Gibberish";
    SystemTag[SystemTag["Bots"] = 4] = "Bots";
    SystemTag[SystemTag["Bayes"] = 5] = "Bayes";
    SystemTag[SystemTag["Donation"] = 6] = "Donation";
    SystemTag[SystemTag["News"] = 7] = "News";
    SystemTag[SystemTag["WomObsolete"] = 8] = "WomObsolete";
    SystemTag[SystemTag["Porn"] = 9] = "Porn";
    SystemTag[SystemTag["Recipe"] = 10] = "Recipe";
    SystemTag[SystemTag["Intent"] = 11] = "Intent";
    SystemTag[SystemTag["Wom"] = 12] = "Wom";
    SystemTag[SystemTag["Article"] = 13] = "Article";
    SystemTag[SystemTag["Promotion"] = 14] = "Promotion";
    SystemTag[SystemTag["TeaserBeta"] = 15] = "TeaserBeta";
    SystemTag[SystemTag["ListBeta"] = 16] = "ListBeta";
    SystemTag[SystemTag["CaptionBeta"] = 17] = "CaptionBeta";
    SystemTag[SystemTag["NonsenseBeta"] = 18] = "NonsenseBeta";
    SystemTag[SystemTag["Advertisement"] = 19] = "Advertisement";
    SystemTag[SystemTag["Giveaway"] = 20] = "Giveaway";
    SystemTag[SystemTag["Vacancy"] = 21] = "Vacancy";
    SystemTag[SystemTag["SocialPromo"] = 22] = "SocialPromo";
    SystemTag[SystemTag["WomComparison"] = 23] = "WomComparison";
    SystemTag[SystemTag["WomComplaint"] = 24] = "WomComplaint";
    SystemTag[SystemTag["WomOfficialResponse"] = 25] = "WomOfficialResponse";
    SystemTag[SystemTag["WomQuestion"] = 26] = "WomQuestion";
    SystemTag[SystemTag["WomRecommendation"] = 27] = "WomRecommendation";
    SystemTag[SystemTag["WomReview"] = 28] = "WomReview";
    SystemTag[SystemTag["WomObjectInHashtag"] = 29] = "WomObjectInHashtag";
})(SystemTag || (SystemTag = {}));
var MentionsSortOrder;
(function (MentionsSortOrder) {
    MentionsSortOrder["Published"] = "published";
    MentionsSortOrder["PublishedAsc"] = "publishedAsc";
    MentionsSortOrder["Id"] = "id";
    MentionsSortOrder["Engagement"] = "engagement";
    MentionsSortOrder["Comments"] = "comments";
    MentionsSortOrder["Views"] = "views";
    MentionsSortOrder["AuthorSubscribers"] = "authorSubscribers";
    MentionsSortOrder["ChannelSubscribers"] = "channelSubscribers";
    MentionsSortOrder["Duplicates"] = "duplicates";
})(MentionsSortOrder || (MentionsSortOrder = {}));


/***/ }),

/***/ "ckFD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  y6: () => (/* binding */ PhraseGraph),
  q0: () => (/* binding */ VisualInsightsGraph)
});

// UNUSED EXPORTS: Graph

// EXTERNAL MODULE: ./node_modules/jlouvain.js/dist/jLouvain.js
var jLouvain = __webpack_require__("HuTG");
var jLouvain_default = /*#__PURE__*/__webpack_require__.n(jLouvain);
// EXTERNAL MODULE: ./src/components/other/VisualInsightsChartTooltip/index.ts + 1 modules
var VisualInsightsChartTooltip = __webpack_require__("48Kc");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/utils/colors.ts
var utils_colors = __webpack_require__("KV3C");
// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
// EXTERNAL MODULE: ./src/utils/nodeChartUtils.ts
var nodeChartUtils = __webpack_require__("lXfu");
;// CONCATENATED MODULE: ./src/components/other/PhraseGraphTooltip/PhraseGraphTooltip.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var PhraseChartTooltip = function (_a) {
    var _b;
    var chart = _a.chart;
    var point = chart.point;
    var colors = (0,utils_colors/* getColorsByTheme */.hx)();
    var getTrendApperance = function () {
        var _a;
        var isTrendAvailable = (_a = point.trend) === null || _a === void 0 ? void 0 : _a.info;
        var getBadgeBackground = function (color) { return ((0,colorHandler/* isDarkTheme */.g4)() ? '#424242' : color); };
        var defaultAppearance = {
            containerStyle: {
                border: '1px solid',
                borderColor: isTrendAvailable ? colors.grayLight : 'transparent',
                borderRadius: '8px',
                padding: '6px 8px',
                marginBottom: isTrendAvailable ? '6px' : 0,
                marginRight: isTrendAvailable ? '10px' : 0,
            },
            badgeStyle: {
                color: colors.textColor,
                backgroundColor: getBadgeBackground('white'),
                fontWeight: 600,
            },
        };
        if (!isTrendAvailable)
            return defaultAppearance;
        if (point.trend.info.score > nodeChartUtils/* TREND_SCORE_THRESHOLD */.$D)
            return {
                containerStyle: __assign(__assign({}, defaultAppearance.containerStyle), { borderColor: '#61B53D' }),
                badgeStyle: __assign(__assign({}, defaultAppearance.badgeStyle), { color: '#509931', backgroundColor: getBadgeBackground('#ecffeb') }),
            };
        if (point.trend.info.score < -nodeChartUtils/* TREND_SCORE_THRESHOLD */.$D)
            return {
                containerStyle: __assign(__assign({}, defaultAppearance.containerStyle), { borderColor: '#F44336' }),
                badgeStyle: __assign(__assign({}, defaultAppearance.badgeStyle), { color: '#FA2A36', backgroundColor: getBadgeBackground('#FFD5DB') }),
            };
        return defaultAppearance;
    };
    var trendAppearance = getTrendApperance();
    return (0,server_browser/* renderToString */.F0)((0,jsx_runtime.jsxs)("div", __assign({ style: {
            backgroundColor: colors.white,
            padding: '8px 8px 0 8px',
            border: "1px solid ".concat(colors.bordersColor),
            borderRadius: 4,
        } }, { children: [(0,jsx_runtime.jsxs)("h5", __assign({ style: { marginBottom: 16, verticalAlign: 'middle' } }, { children: [(0,jsx_runtime.jsx)("div", { style: {
                            display: 'inline-block',
                            width: '10px',
                            height: '10px',
                            backgroundColor: chart.color,
                            borderRadius: '50%',
                            marginRight: '4px',
                        } }), (0,jsx_runtime.jsx)("span", __assign({ style: { fontSize: 14, color: colors.textColor, textTransform: 'uppercase' } }, { children: point.name })), (0,jsx_runtime.jsx)("br", {}), (0,jsx_runtime.jsx)("span", __assign({ style: { marginLeft: 16, fontSize: 12, color: colors.secondaryTextColor } }, { children: point.type }))] })), (0,jsx_runtime.jsxs)("div", __assign({ style: { marginLeft: 10, display: 'flex', gap: 16, marginBottom: '6px' } }, { children: [point.uniqueCount ? ((0,jsx_runtime.jsxs)("div", __assign({ style: { whiteSpace: 'nowrap', padding: '6px 8px' } }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: numeral_default()(point.uniqueCount).format('0,0') })), (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('unique mentions') }))] }))) : null, point.count ? ((0,jsx_runtime.jsxs)("div", __assign({ style: __assign({ whiteSpace: 'nowrap', position: 'relative', zIndex: 1, padding: '6px 8px' }, trendAppearance.containerStyle) }, { children: [(0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 14, color: colors.textColor } }, { children: numeral_default()(point.count).format('0,0') })), ((_b = point.trend) === null || _b === void 0 ? void 0 : _b.info)
                                ? ((0,jsx_runtime.jsx)("pre", __assign({ style: __assign({ position: 'absolute', padding: '2px 3px', top: -24, right: -8, fontSize: '12px', lineHeight: '12px', borderRadius: 2, boxShadow: '2px 2px 2px rgba(0, 0, 0, 0.12)', zIndex: 100, backgroundColor: colors.white }, trendAppearance.badgeStyle) }, { children: "".concat(point.trend.info.score > 0 ? '+' : '').concat(Math.round(point.trend.info.score * 100), "%") })))
                                : null, (0,jsx_runtime.jsx)("div", __assign({ style: { fontSize: 12, color: colors.secondaryTextColor } }, { children: l('all mentions') }))] }))) : null] }))] })));
};
/* harmony default export */ const PhraseGraphTooltip = (PhraseChartTooltip);

// EXTERNAL MODULE: ./src/state/imagesDashboard/utils.ts
var utils = __webpack_require__("LwCN");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
// EXTERNAL MODULE: ./src/utils/translations/subjectsFilterTranslation.js
var subjectsFilterTranslation = __webpack_require__("/KsC");
;// CONCATENATED MODULE: ./src/models/NetworkGraph.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var NetworkGraph_assign = (undefined && undefined.__assign) || function () {
    NetworkGraph_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return NetworkGraph_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};








var Graph = /** @class */ (function () {
    function Graph() {
        this.edges = [];
        this.nodes = [];
    }
    Graph.prototype.addEdge = function (source, target, weight) {
        if (source !== target)
            this.edges.push({ source: source, target: target, weight: weight });
    };
    Graph.prototype.addNode = function (newNode) {
        this.nodes = this.nodes.concat(newNode);
    };
    Graph.prototype.removeNode = function (nodeId) {
        this.nodes = this.nodes.filter(function (node) { return node.id !== nodeId; });
    };
    Graph.prototype.replaceNode = function (newNode) {
        this.removeNode(newNode.id);
        this.addNode(newNode);
    };
    Graph.prototype.setNode = function (newNode) {
        var node = this.nodes.find(function (x) { return newNode.id === x.id; });
        if (!node)
            this.addNode(newNode);
        else if (node.value < newNode.value)
            this.replaceNode(newNode);
    };
    return Graph;
}());

var getTopSentiment = function (sentiments) {
    var _a;
    if (!sentiments)
        return null;
    var sortedSentiments = __spreadArray([], __read(sentiments), false).sort(function (a, b) { return b.count - a.count; });
    return (_a = sortedSentiments[0]) === null || _a === void 0 ? void 0 : _a.key;
};
var PhraseGraph = /** @class */ (function (_super) {
    __extends(PhraseGraph, _super);
    function PhraseGraph(phrases, subjectColors) {
        var _this = _super.call(this) || this;
        _this.subjectColors = subjectColors;
        _this.fillGraph(phrases);
        return _this;
    }
    PhraseGraph.prototype.fillGraph = function (phrases) {
        var _this = this;
        phrases.forEach(function (phrase) {
            var _a;
            _this.setNode({
                type: phrase.subject,
                id: phrase.key,
                value: phrase.uniqueCount,
                additionalData: {
                    trend: phrase.trendingScore,
                    topSentiment: getTopSentiment((_a = phrase.sentiment) === null || _a === void 0 ? void 0 : _a.values),
                    count: phrase.count,
                    uniqueCount: phrase.uniqueCount,
                    similarKeywords: phrase.similarKeywords,
                },
                logarithmicValue: phrase.count !== null ? Math.log(phrase.uniqueCount) : null,
            });
            phrase.phrases.forEach(function (innerPhrase) {
                _this.addEdge(phrase.key, innerPhrase.key, innerPhrase.count);
            });
        });
    };
    PhraseGraph.prototype.getTopNodes = function () {
        return this.nodes
            .sort(function (a, b) { return (a.value < b.value ? 1 : -1); })
            .slice(0, PhraseGraph.TOP_NODES_LIMIT);
    };
    PhraseGraph.prototype.getUsedEdges = function () {
        var topNodes = this.getTopNodes();
        return this.edges
            .filter(function (edge) {
            var matchingOuterNode = topNodes.some(function (node) { return node.id === edge.source; });
            var matchingInnerNode = topNodes.some(function (node) { return node.id === edge.target; });
            return matchingOuterNode && matchingInnerNode;
        })
            .reduce(function (edges, edge) {
            if (!edges.find(function (x) { return x.target === edge.source && x.source === edge.target; }))
                edges.push(edge);
            return edges;
        }, []);
    };
    PhraseGraph.prototype.getTopGraphData = function () {
        var nodes = this.getTopNodes();
        var edges = this.getUsedEdges();
        return { nodes: nodes, edges: edges };
    };
    PhraseGraph.prototype.getChartData = function (_a) {
        var _this = this;
        var highlightCommunities = _a.highlightCommunities, highlightTrends = _a.highlightTrends, highlightSentiment = _a.highlightSentiment;
        var _b = this.getTopGraphData(), nodes = _b.nodes, edges = _b.edges;
        if (!nodes.length)
            return { nodes: nodes, edges: edges };
        var _c = (0,utils_colors/* getColorsByTheme */.hx)(), textColor = _c.textColor, secondaryTextColor = _c.secondaryTextColor, grayLightest = _c.grayLightest;
        var communities = jLouvain_default()().nodes(nodes.map(function (n) { return n.id; })).edges(edges)();
        var getNodeColor = function (node, _communities) {
            if (highlightCommunities)
                return utils_colors/* communitiesColors */.Wx[_communities[node.id]];
            if (highlightSentiment)
                return (0,utils_colors/* getSentimentColor */.HS)(node.additionalData.topSentiment);
            return _this.subjectColors[node.type] || '#51a6b6';
        };
        return {
            edges: edges.map(function (edge) { return ({
                from: edge.source,
                to: edge.target,
                value: edge.weight,
                color: grayLightest,
            }); }),
            nodes: nodes.map(function (node) {
                var color = getNodeColor(node, communities);
                var trend = highlightTrends ? (0,nodeChartUtils/* getPhraseTrend */.jv)(node, nodes.map(function (n) { return n.additionalData.trend; })) : null;
                var useDefaultStyles = !trend || trend.isTopTrend;
                return NetworkGraph_assign(NetworkGraph_assign({}, node), { type: node.type, id: node.id, label: node.id, title: PhraseGraphTooltip({
                        chart: {
                            color: color,
                            point: {
                                type: (0,subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE)(node.type),
                                name: node.id,
                                count: node.additionalData.count,
                                uniqueCount: node.additionalData.uniqueCount,
                                trend: trend,
                            },
                        },
                    }), color: {
                        background: useDefaultStyles ? color : "".concat(color, "40"),
                        border: "".concat(color, "60"),
                        hover: {
                            background: color,
                            border: "".concat(color, "75"),
                        },
                        highlight: {
                            background: color,
                            border: "".concat(color, "60"),
                        },
                    }, font: { color: useDefaultStyles ? textColor : secondaryTextColor }, borderWidth: trend === null || trend === void 0 ? void 0 : trend.highlightSize });
            }),
        };
    };
    PhraseGraph.TOP_NODES_LIMIT = 100;
    return PhraseGraph;
}(Graph));

var VisualInsightsGraph = /** @class */ (function (_super) {
    __extends(VisualInsightsGraph, _super);
    function VisualInsightsGraph(stats) {
        var _this = _super.call(this) || this;
        _this.fillGraph(stats);
        return _this;
    }
    VisualInsightsGraph.prototype.fillGraph = function (stats, viTagType, parentEntity) {
        var _this = this;
        if (!stats.values) {
            constants/* VISUAL_INSIGHTS_FEATURES */.l3.forEach(function (viFeatureType) {
                if (stats[viFeatureType])
                    _this.fillGraph(stats[viFeatureType], viFeatureType, stats);
            });
            return;
        }
        stats.values.forEach(function (entityValue) {
            if (parentEntity.key)
                _this.addEdge(parentEntity.key, entityValue.key, entityValue.imagesCount);
            else
                _this.fillGraph(entityValue, viTagType);
            _this.setNode({
                type: viTagType,
                id: entityValue.key,
                value: entityValue.imagesCount,
                logarithmicValue: Math.log(entityValue.imagesCount),
                additionalData: {
                    mentionsCount: entityValue.count,
                },
            });
        });
    };
    VisualInsightsGraph.prototype.getTopNodes = function () {
        return this.nodes
            .sort(function (a, b) { return (a.value < b.value ? 1 : -1); })
            .slice(0, VisualInsightsGraph.TOP_NODES_LIMIT);
    };
    VisualInsightsGraph.prototype.getTopEdges = function () {
        var topNodes = this.getTopNodes();
        return this.edges
            .filter(function (edge) {
            var matchingOuterNode = topNodes.some(function (node) { return node.id === edge.source; });
            var matchingInnerNode = topNodes.some(function (node) { return node.id === edge.target; });
            return matchingOuterNode && matchingInnerNode;
        })
            .reduce(function (edges, edge) {
            if (!edges.find(function (x) { return x.target === edge.source && x.source === edge.target; }))
                edges.push(edge);
            return edges;
        }, []);
    };
    VisualInsightsGraph.prototype.getTopGraphData = function () {
        var nodes = this.getTopNodes();
        var edges = this.getTopEdges();
        return { nodes: nodes, edges: edges };
    };
    VisualInsightsGraph.prototype.getChartData = function (trends, highlightCommunities, highlightTrends) {
        var _a = this.getTopGraphData(), nodes = _a.nodes, edges = _a.edges;
        if (!nodes.length)
            return { nodes: nodes, edges: edges };
        var communities = jLouvain_default()().nodes(nodes.map(function (n) { return n.id; })).edges(edges)();
        var _b = (0,utils_colors/* getColorsByTheme */.hx)(), textColor = _b.textColor, secondaryTextColor = _b.secondaryTextColor, grayLightest = _b.grayLightest;
        return {
            edges: edges.map(function (edge) { return ({
                from: edge.source,
                to: edge.target,
                value: edge.weight,
                color: highlightTrends ? grayLightest : null,
            }); }),
            nodes: nodes.map(function (node) {
                var type = (0,utils/* formatVisualInsightsTagTypes */.U)(node.type);
                var color = highlightCommunities ? utils_colors/* communitiesColors */.Wx[communities[node.id]] : utils_colors/* visualInsightsChartColors */.Cg[type];
                var trend = highlightTrends ? (0,nodeChartUtils/* getVIPointTrend */.jk)(trends, type, node.id) : null;
                var useDefaultStyles = !trend || trend.isTopTrend;
                return NetworkGraph_assign(NetworkGraph_assign({}, node), { type: type, id: node.id, label: node.id, title: (0,VisualInsightsChartTooltip/* default */.A)({
                        chart: {
                            color: color,
                            point: {
                                type: type,
                                trend: trend,
                                name: node.id,
                                imagesCount: node.value,
                                mentionsCount: node.additionalData.mentionsCount,
                            },
                        },
                    }), color: {
                        background: useDefaultStyles ? color : "".concat(color, "40"),
                        border: "".concat(color, "60"),
                        hover: {
                            background: color,
                            border: "".concat(color, "75"),
                        },
                        highlight: {
                            background: color,
                            border: "".concat(color, "60"),
                        },
                    }, font: { color: useDefaultStyles ? textColor : secondaryTextColor }, borderWidth: trend === null || trend === void 0 ? void 0 : trend.highlightSize });
            }),
        };
    };
    VisualInsightsGraph.TOP_NODES_LIMIT = 50;
    return VisualInsightsGraph;
}(Graph));



/***/ }),

/***/ "RzvX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   gJ: () => (/* binding */ NotificationFrequency),
/* harmony export */   jN: () => (/* binding */ Frequency),
/* harmony export */   l9: () => (/* binding */ Trigger),
/* harmony export */   ob: () => (/* binding */ DayOfWeek),
/* harmony export */   ye: () => (/* binding */ DeliveryMethod)
/* harmony export */ });
var DeliveryMethod;
(function (DeliveryMethod) {
    DeliveryMethod["Email"] = "email";
    DeliveryMethod["Integration"] = "integration";
})(DeliveryMethod || (DeliveryMethod = {}));
var Frequency;
(function (Frequency) {
    Frequency["Immediately"] = "immediately";
    Frequency["Hourly"] = "hourly";
})(Frequency || (Frequency = {}));
var Trigger;
(function (Trigger) {
    Trigger["EveryNewMention"] = "everyNewMention";
    Trigger["DataVolumeSpike"] = "dataVolumeSpike";
})(Trigger || (Trigger = {}));
var NotificationFrequency;
(function (NotificationFrequency) {
    NotificationFrequency["Daily"] = "daily";
    NotificationFrequency["Weekly"] = "weekly";
    NotificationFrequency["Monthly"] = "monthly";
})(NotificationFrequency || (NotificationFrequency = {}));
var DayOfWeek;
(function (DayOfWeek) {
    DayOfWeek["Sunday"] = "sunday";
    DayOfWeek["Monday"] = "monday";
    DayOfWeek["Tuesday"] = "tuesday";
    DayOfWeek["Wednesday"] = "wednesday";
    DayOfWeek["Thursday"] = "thursday";
    DayOfWeek["Friday"] = "friday";
    DayOfWeek["Saturday"] = "saturday";
})(DayOfWeek || (DayOfWeek = {}));


/***/ }),

/***/ "a9xc":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $J: () => (/* binding */ Addon),
/* harmony export */   B5: () => (/* binding */ ApiAddon),
/* harmony export */   Dn: () => (/* binding */ API_TYPES),
/* harmony export */   JQ: () => (/* binding */ planTopicOptions),
/* harmony export */   W9: () => (/* binding */ LimitAddon),
/* harmony export */   a5: () => (/* binding */ isSystemAddon),
/* harmony export */   dh: () => (/* binding */ SubscriptionPlanType),
/* harmony export */   eD: () => (/* binding */ SUBSCRIPTION_ADDONS),
/* harmony export */   j7: () => (/* binding */ CHANNEL_LIMITS)
/* harmony export */ });
/* unused harmony export SubscriptionAddons */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
var _a;
var SubscriptionPlanType;
(function (SubscriptionPlanType) {
    SubscriptionPlanType["starter"] = "starter";
    SubscriptionPlanType["listen"] = "listen";
    SubscriptionPlanType["analyze"] = "analyze";
    SubscriptionPlanType["innovate"] = "innovate";
    SubscriptionPlanType["enterprise"] = "enterprise";
    SubscriptionPlanType["demo"] = "demo";
})(SubscriptionPlanType || (SubscriptionPlanType = {}));
var allAddons = [
    'api',
    'smartTags',
    'visualDataAnalysis',
    'audienceInsights',
    'audioMonitoring',
    'extendedCoverage',
    'unlimitedDashboards',
    'insightsCopilot',
    'additionalChannels'
];
var SUBSCRIPTION_ADDONS = (_a = {},
    _a[SubscriptionPlanType.starter] = [
        'api',
        'smartTags',
        'visualDataAnalysis',
        'audienceInsights',
        'audioMonitoring',
        'unlimitedDashboards',
        'insightsCopilot',
        'extendedCoverage'
    ],
    _a[SubscriptionPlanType.listen] = allAddons,
    _a[SubscriptionPlanType.analyze] = allAddons,
    _a[SubscriptionPlanType.innovate] = [
        'api',
        'smartTags',
        'audienceInsights',
        'audioMonitoring',
        'extendedCoverage',
        'unlimitedDashboards',
        'insightsCopilot',
        'additionalChannels'
    ],
    _a[SubscriptionPlanType.enterprise] = __spreadArray(__spreadArray([], __read(allAddons), false), ['limitedHistory'], false),
    _a[SubscriptionPlanType.demo] = [
        'api',
        'smartTags',
        'audioMonitoring',
        'extendedCoverage',
        'unlimitedDashboards',
        'insightsCopilot',
        'additionalChannels'
    ],
    _a);
var SubscriptionAddons = /** @class */ (function () {
    function SubscriptionAddons() {
    }
    return SubscriptionAddons;
}());

var Addon = /** @class */ (function () {
    function Addon(type) {
        this.type = type;
    }
    return Addon;
}());

var LimitAddon = /** @class */ (function (_super) {
    __extends(LimitAddon, _super);
    function LimitAddon(type, count) {
        var _this = _super.call(this, type) || this;
        _this.count = count;
        return _this;
    }
    return LimitAddon;
}(Addon));

var ApiAddon = /** @class */ (function (_super) {
    __extends(ApiAddon, _super);
    function ApiAddon(type, apiType) {
        var _this = _super.call(this, type) || this;
        _this.apiType = apiType;
        return _this;
    }
    return ApiAddon;
}(Addon));

var API_TYPES = ['statistics', 'advanced'];
var CHANNEL_LIMITS = [50, 100, 150, 200, 250, 300, 350, 400, 500];
// It's dangerous, so we don't want to show it to users
// And allow to turn it on only by developers via request in chat (for better visibility)
var isSystemAddon = function (addon) { return addon === 'extendedCoverage'; };
var planTopicOptions = function (planType) {
    return (planType == SubscriptionPlanType.starter
        ? [3]
        : [5, 10, 15, 20, 25, 30, 40, 45, 50, 70, 100, 200, 500]);
};


/***/ }),

/***/ "31cT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   HD: () => (/* binding */ MESSENGERS),
/* harmony export */   J9: () => (/* binding */ HistorySources)
/* harmony export */ });
/* unused harmony exports HistoryStatus, HistoryCollectionNotificationType, TopicPermission, IntegrationType */
var HistorySources;
(function (HistorySources) {
    HistorySources["ELASTIC"] = "elastic";
})(HistorySources || (HistorySources = {}));
var HistoryStatus;
(function (HistoryStatus) {
    HistoryStatus["None"] = "none";
    HistoryStatus["Collecting"] = "collecting";
    HistoryStatus["Collected"] = "collected";
    HistoryStatus["Failed"] = "failed";
})(HistoryStatus || (HistoryStatus = {}));
var HistoryCollectionNotificationType;
(function (HistoryCollectionNotificationType) {
    HistoryCollectionNotificationType[HistoryCollectionNotificationType["Ok"] = 0] = "Ok";
    HistoryCollectionNotificationType["Warning"] = "warning";
    HistoryCollectionNotificationType["Error"] = "Error";
})(HistoryCollectionNotificationType || (HistoryCollectionNotificationType = {}));
var TopicPermission;
(function (TopicPermission) {
    TopicPermission["None"] = "none";
    TopicPermission["View"] = "view";
    TopicPermission["Edit"] = "edit";
    TopicPermission["Manage"] = "manage";
})(TopicPermission || (TopicPermission = {}));
var IntegrationType;
(function (IntegrationType) {
    IntegrationType["Webhook"] = "Webhook";
    IntegrationType["HelpDeskEddy"] = "HelpDeskEddy";
    IntegrationType["CrmViaEmail"] = "CrmViaEmail";
    IntegrationType["Zendesk"] = "Zendesk";
    IntegrationType["Terrasoft"] = "Terrasoft";
    IntegrationType["Telegram"] = "Telegram";
    IntegrationType["UseDesk"] = "UseDesk";
    IntegrationType["Slack"] = "Slack";
    IntegrationType["Freshdesk"] = "Freshdesk";
    IntegrationType["CustomWebhook"] = "CustomWebhook";
    IntegrationType["CreatioService"] = "CreatioService";
    IntegrationType["BpmOnlineService"] = "BpmOnlineService";
})(IntegrationType || (IntegrationType = {}));
var MESSENGERS = [
    'telegram',
    'slack',
    'msTeams',
    'whatsApp'
];


/***/ }),

/***/ "KUKT":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Ic: () => (/* binding */ UserPermissionLabels),
/* harmony export */   YC: () => (/* binding */ DefaultRolePermissions),
/* harmony export */   fo: () => (/* binding */ UserRoles),
/* harmony export */   mF: () => (/* binding */ UserPermissions),
/* harmony export */   xm: () => (/* binding */ ALL_USER_PERMISSIONS)
/* harmony export */ });
var _a, _b;
var UserRoles;
(function (UserRoles) {
    UserRoles["ADMIN"] = "admin";
    UserRoles["MANAGER"] = "manager";
    UserRoles["MEMBER"] = "member";
})(UserRoles || (UserRoles = {}));
var UserPermissions;
(function (UserPermissions) {
    UserPermissions["CAN_CREATE_TOPICS"] = "canCreateTopics";
})(UserPermissions || (UserPermissions = {}));
var ALL_USER_PERMISSIONS = Object.values(UserPermissions);
var DefaultRolePermissions = (_a = {},
    _a[UserRoles.ADMIN] = function () { return [UserPermissions.CAN_CREATE_TOPICS]; },
    _a[UserRoles.MANAGER] = function () { return [UserPermissions.CAN_CREATE_TOPICS]; },
    _a[UserRoles.MEMBER] = function () { return [UserPermissions.CAN_CREATE_TOPICS]; },
    _a);
var UserPermissionLabels = (_b = {},
    _b[UserPermissions.CAN_CREATE_TOPICS] = function () { return l('Can create topics'); },
    _b);


/***/ }),

/***/ "YM4o":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   r: () => (/* binding */ WORD_CLOUD_DATA_KEYS)
/* harmony export */ });
var WORD_CLOUD_DATA_KEYS = [
    'objects',
    'phrases',
    'hashtags',
    'emojis',
    'actions',
    'characteristics',
    'persons',
    'locations',
    'organizations',
    'words'
];


/***/ }),

/***/ "yu8y":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   F: () => (/* binding */ Alert)
/* harmony export */ });
/* harmony import */ var models_Notifications__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("RzvX");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("+MLa");
/* harmony import */ var models_emailNotification_EmailNotifications__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("WseC");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var Alert = /** @class */ (function (_super) {
    __extends(Alert, _super);
    function Alert(alert) {
        var _this = _super.call(this) || this;
        _this.id = alert.id;
        _this.creatorId = alert.creatorId;
        _this.creatorFullName = alert.creatorFullName;
        _this.creatorEmail = alert.creatorEmail;
        _this.title = alert.data.title;
        _this.trigger = alert.data.trigger;
        _this.deliveryMethod = alert.data.deliveryMethod;
        _this.frequency = alert.data.frequency;
        _this.recipients = alert.data.recipients;
        _this.integrations = alert.data.integrations;
        _this.filter = models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__/* .Filter */ .dJ.fromApi(alert.data.filter);
        _this.dataVolumeSpikePercentage = alert.data.dataVolumeSpikePercentage;
        return _this;
    }
    Alert.prototype.toApi = function () {
        var newRecipients = this.deliveryMethod === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DeliveryMethod */ .ye.Email ? this.recipients : [];
        var newIntegrations = this.deliveryMethod === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DeliveryMethod */ .ye.Integration ? this.integrations : [];
        return {
            id: this.id,
            creatorId: this.creatorId,
            creatorFullName: this.creatorFullName,
            creatorEmail: this.creatorEmail,
            data: {
                title: this.title,
                trigger: this.trigger,
                deliveryMethod: this.deliveryMethod,
                frequency: this.frequency,
                recipients: newRecipients,
                integrations: newIntegrations,
                filter: this.filter.toApi(),
                dataVolumeSpikePercentage: this.dataVolumeSpikePercentage,
            },
        };
    };
    Object.defineProperty(Alert.prototype, "isShowFrequency", {
        get: function () {
            return this.deliveryMethod === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DeliveryMethod */ .ye.Email;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Alert.prototype, "isEdit", {
        get: function () {
            return !!this.id;
        },
        enumerable: false,
        configurable: true
    });
    Alert.prototype.deliveryMethodToString = function () {
        if (this.deliveryMethod === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DeliveryMethod */ .ye.Email)
            return "".concat(l('Email', 'emailNotification'));
        if (this.deliveryMethod === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DeliveryMethod */ .ye.Integration)
            return "".concat(l('Messenger', 'emailNotification'));
        return '';
    };
    Alert.prototype.frequencyToString = function () {
        if (this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .Frequency */ .jN.Immediately)
            return "".concat(l('Immediately', 'emailNotification'));
        if (this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .Frequency */ .jN.Hourly)
            return "".concat(l('Hourly', 'emailNotification'));
        return '';
    };
    Alert.fromApi = function (alert) {
        return new Alert(alert);
    };
    Alert.fromApiArray = function (alerts) {
        return alerts.map(function (alert) { return Alert.fromApi(alert); });
    };
    Alert.empty = function () {
        return new Alert({
            data: {
                title: '',
                trigger: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .Trigger */ .l9.EveryNewMention,
                deliveryMethod: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DeliveryMethod */ .ye.Email,
                frequency: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .Frequency */ .jN.Immediately,
                recipients: [],
                integrations: [],
                filter: null,
                dataVolumeSpikePercentage: null,
            },
        });
    };
    Alert.merge = function (first, second) {
        if (!first)
            return second;
        if (!second)
            return first;
        var firstData = first.toApi();
        var secondData = second.toApi();
        var mergedData = {
            id: firstData.id,
            creatorId: firstData.creatorId,
            creatorFullName: firstData.creatorFullName,
            creatorEmail: firstData.creatorEmail,
            data: __assign({}, secondData.data),
        };
        return new Alert(mergedData);
    };
    return Alert;
}(models_emailNotification_EmailNotifications__WEBPACK_IMPORTED_MODULE_2__/* .EmailNotification */ .O));



/***/ }),

/***/ "WseC":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   O: () => (/* binding */ EmailNotification)
/* harmony export */ });
var EmailNotification = /** @class */ (function () {
    function EmailNotification() {
    }
    EmailNotification.getIntegrationImageUrl = function (type) {
        return "/static/images/integrations/".concat(type, ".svg");
    };
    return EmailNotification;
}());



/***/ }),

/***/ "x8Pq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   p: () => (/* binding */ Report)
/* harmony export */ });
/* harmony import */ var models_Notifications__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("RzvX");
/* harmony import */ var models_emailNotification_EmailNotifications__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("WseC");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("+MLa");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var Report = /** @class */ (function (_super) {
    __extends(Report, _super);
    function Report(report) {
        var _this = _super.call(this) || this;
        _this.id = report.id;
        _this.creatorId = report.creatorId;
        _this.creatorFullName = report.creatorFullName;
        _this.creatorEmail = report.creatorEmail;
        _this.frequency = report.data.frequency;
        _this.title = report.data.title;
        _this.deliveryTime = report.data.deliveryTime;
        _this.period = report.data.period;
        _this.recipients = report.data.recipients;
        _this.filter = models_filters_Filter__WEBPACK_IMPORTED_MODULE_2__/* .Filter */ .dJ.fromApi(report.data.filter);
        _this.enabled = report.enabled;
        return _this;
    }
    Object.defineProperty(Report.prototype, "showPeriodTile", {
        get: function () {
            var _a, _b;
            return this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Daily && !(((_a = this.period) === null || _a === void 0 ? void 0 : _a.from) === '00:00' && ((_b = this.period) === null || _b === void 0 ? void 0 : _b.to) === '24:00');
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(Report.prototype, "isEdit", {
        get: function () {
            return !!this.id;
        },
        enumerable: false,
        configurable: true
    });
    Report.prototype.toApi = function () {
        var newPeriod = this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Daily ? this.period : null;
        var newDeliveryTime = this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Weekly
            ? this.deliveryTime
            : { dayOfWeek: null, time: this.deliveryTime.time };
        return {
            id: this.id,
            creatorId: this.creatorId,
            creatorFullName: this.creatorFullName,
            creatorEmail: this.creatorEmail,
            data: {
                frequency: this.frequency,
                title: this.title,
                deliveryTime: newDeliveryTime,
                period: newPeriod,
                recipients: this.recipients,
                filter: this.filter.toApi(),
            },
            enabled: this.enabled,
        };
    };
    Report.prototype.getDeliveryTimeText = function () {
        if (this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Daily) {
            return "".concat(l('Every day at', 'emailNotification'), " ").concat(this.deliveryTime.time);
        }
        if (this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Weekly) {
            return "".concat(Report.translateDeliveryTimeForDayOfWeek(this.deliveryTime.dayOfWeek), " ").concat(l('at', 'emailNotification'), " ").concat(this.deliveryTime.time);
        }
        if (this.frequency === models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Monthly) {
            return "".concat(l('First day of each month at', 'emailNotification'), " ").concat(this.deliveryTime.time);
        }
        return '';
    };
    Report.prototype.translateFrequency = function (key) {
        return Report.getReportFrequencies().find(function (r) { return r.value === key; }).label;
    };
    Report.translateDeliveryTimeForDayOfWeek = function (key) {
        return ({
            sunday: l('Every Sunday', 'emailNotification'),
            monday: l('Every Monday', 'emailNotification'),
            tuesday: l('Every Tuesday', 'emailNotification'),
            wednesday: l('Every Wednesday', 'emailNotification'),
            thursday: l('Every Thursday', 'emailNotification'),
            friday: l('Every Friday', 'emailNotification'),
            saturday: l('Every Saturday', 'emailNotification'),
        }[key] || key);
    };
    Report.getReportFrequencies = function () {
        return [
            {
                value: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Daily,
                label: l('Daily report', 'emailNotification'),
            },
            {
                value: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Weekly,
                label: l('Weekly report', 'emailNotification'),
            },
            {
                value: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Monthly,
                label: l('Monthly report', 'emailNotification'),
            }
        ];
    };
    Report.sort = function (reports, userEmail) {
        reports.sort(function (a, b) {
            var recipientA = a.recipients.find(function (recipient) { return recipient.email === userEmail; });
            var recipientB = b.recipients.find(function (recipient) { return recipient.email === userEmail; });
            if (recipientA && !recipientB) {
                return -1;
            }
            if (!recipientA && recipientB) {
                return 1;
            }
            var isUnsubscribedA = a.recipients.some(function (recipient) { return recipient.email === userEmail && recipient.unsubscribed; });
            var isUnsubscribedB = b.recipients.some(function (recipient) { return recipient.email === userEmail && recipient.unsubscribed; });
            if (isUnsubscribedA && !isUnsubscribedB) {
                return 1;
            }
            if (!isUnsubscribedA && isUnsubscribedB) {
                return -1;
            }
            return 0;
        });
        return reports;
    };
    Report.isEqual = function (first, second) {
        var _a, _b, _c, _d;
        if (!first || !second)
            return false;
        return (first.title !== second.title
            || first.frequency !== second.frequency
            || (((_a = first.period) === null || _a === void 0 ? void 0 : _a.from) ? first.period.from !== second.period.from : false)
            || (((_b = first.period) === null || _b === void 0 ? void 0 : _b.to) ? first.period.to !== second.period.to : false)
            || (((_c = first.deliveryTime) === null || _c === void 0 ? void 0 : _c.time) ? first.deliveryTime.time !== second.deliveryTime.time : false)
            || (((_d = first.deliveryTime) === null || _d === void 0 ? void 0 : _d.dayOfWeek) ? first.deliveryTime.dayOfWeek !== second.deliveryTime.dayOfWeek : false)
            || first.recipients.length !== second.recipients.length
            || !first.recipients.every(function (reportRecipients) { return second.recipients.find(function (r) { return r.email === reportRecipients.email; }); }));
    };
    Report.fromApi = function (report) {
        return new Report(report);
    };
    Report.fromApiArray = function (reports) {
        return reports.map(function (report) { return Report.fromApi(report); });
    };
    Report.merge = function (first, second) {
        if (!first)
            return second;
        if (!second)
            return first;
        var firstData = first.toApi();
        var secondData = second.toApi();
        var mergedData = {
            id: firstData.id,
            creatorId: firstData.creatorId,
            creatorFullName: firstData.creatorFullName,
            creatorEmail: firstData.creatorEmail,
            data: __assign({}, secondData.data),
            enabled: firstData.enabled,
        };
        return new Report(mergedData);
    };
    Report.empty = function () {
        return new Report({
            data: {
                frequency: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .NotificationFrequency */ .gJ.Daily,
                title: '',
                deliveryTime: {
                    time: '09:00',
                    dayOfWeek: models_Notifications__WEBPACK_IMPORTED_MODULE_0__/* .DayOfWeek */ .ob.Monday,
                },
                period: {
                    from: '00:00',
                    to: '24:00',
                },
                recipients: [],
                filter: null,
            },
        });
    };
    return Report;
}(models_emailNotification_EmailNotifications__WEBPACK_IMPORTED_MODULE_1__/* .EmailNotification */ .O));



/***/ }),

/***/ "SvIo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   s: () => (/* binding */ Facet)
/* harmony export */ });
/* harmony import */ var models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("yMOo");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("+MLa");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};


var Facet = /** @class */ (function () {
    function Facet() {
    }
    Object.defineProperty(Facet, "allAggregations", {
        get: function () {
            if (this._allAggregations)
                return this._allAggregations;
            this._allAggregations = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_0__/* .FilterGroupTypeCatalog */ .dA.facets.reduce(function (acc, t) { return (__assign(__assign({}, acc), t.getFacet())); }, {});
            return this._allAggregations;
        },
        enumerable: false,
        configurable: true
    });
    Facet.mergeAggregations = function (aggregations) {
        var e_1, _a;
        var _b, _c;
        var result = {};
        var _d = __read(aggregations), mainAggregation = _d[0], clarifyAggregations = _d.slice(1);
        var _loop_1 = function (mainKey, mainTerms) {
            var fromFiltered = (_c = (_b = clarifyAggregations.find(function (a) { return a === null || a === void 0 ? void 0 : a[mainKey]; })) === null || _b === void 0 ? void 0 : _b[mainKey]) !== null && _c !== void 0 ? _c : {};
            result[mainKey] = __assign(__assign({}, mainTerms), fromFiltered);
        };
        try {
            for (var _e = __values(Object.entries(mainAggregation)), _f = _e.next(); !_f.done; _f = _e.next()) {
                var _g = __read(_f.value, 2), mainKey = _g[0], mainTerms = _g[1];
                _loop_1(mainKey, mainTerms);
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (_f && !_f.done && (_a = _e.return)) _a.call(_e);
            }
            finally { if (e_1) throw e_1.error; }
        }
        return result;
    };
    Facet.buildFacetQueries = function (filter, aggregations) {
        if (filter.op === 'or') {
            return [this.buildFacetQueryWithoutFilter(filter, aggregations)];
        }
        return __spreadArray([
            this.buildFacetQueryWithFilter(filter, aggregations)
        ], __read(this.buildFacetQueriesWithoutFilterGroups(filter)), false);
    };
    Facet.buildFacetQueryWithoutFilter = function (filter, aggregations) {
        return new models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__/* .FacetQuery */ .gD((filter || models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__/* .Filter */ .dJ.empty()).withoutFilter(), aggregations || this.allAggregations);
    };
    Facet.buildFacetQueryWithFilter = function (filter, aggregations) {
        return new models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__/* .FacetQuery */ .gD(filter, aggregations || this.allAggregations);
    };
    Facet.buildFacetQueriesWithoutFilterGroups = function (filter) {
        return getDistinctFieldNames().map(function (fieldName) {
            var _a;
            var filterWithoutFilterGroup = filter.withoutFilterGroupsByOperator('oneOf', fieldName);
            return new models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__/* .FacetQuery */ .gD(filterWithoutFilterGroup, (_a = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_0__/* .FilterGroupTypeCatalog */ .dA.get(fieldName).facet) !== null && _a !== void 0 ? _a : null);
        });
        function getDistinctFieldNames() {
            return __spreadArray([], __read(new Set(filter.filterGroups.map(function (fg) { return fg.fieldName; }))), false);
        }
    };
    Facet.findFacet = function (facetName) {
        return this.allAggregations[facetName];
    };
    return Facet;
}());



/***/ }),

/***/ "+MLa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Cb: () => (/* binding */ handleAdd),
/* harmony export */   cR: () => (/* binding */ IS_NATIVE_FILTER),
/* harmony export */   dJ: () => (/* binding */ Filter),
/* harmony export */   gD: () => (/* binding */ FacetQuery),
/* harmony export */   lD: () => (/* binding */ handleSelect),
/* harmony export */   vO: () => (/* binding */ handleExclude)
/* harmony export */ });
/* unused harmony export handleLogicalOperatorChange */
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("yMOo");
/* harmony import */ var models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("qBsj");
/* harmony import */ var models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("xFwg");
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("Qyje");
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("LYLD");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("9jXX");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("2N3d");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("9/EM");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};










var IS_NATIVE_FILTER = '@@__IS_NATIVE_FILTER__@@';
var FacetQueryConfig = /** @class */ (function () {
    function FacetQueryConfig(config) {
        this.aggregations = config || {};
    }
    return FacetQueryConfig;
}());
var FacetQuery = /** @class */ (function () {
    function FacetQuery(filter, config) {
        this.filter = filter;
        this.config = new FacetQueryConfig(config);
    }
    return FacetQuery;
}());

var Filter = /** @class */ (function () {
    function Filter(_a) {
        var dedup = _a.dedup, dedupImage = _a.dedupImage, spam = _a.spam, processed = _a.processed, starred = _a.starred, assigned = _a.assigned, deleted = _a.deleted, from = _a.from, to = _a.to, op = _a.op, globalOptions = _a.globalOptions, filterGroups = _a.filterGroups;
        var _this = this;
        this.hasVisibleChips = function () { return _this.filterGroups.length !== 0 || _this.globalOptions.length !== 0; };
        this.getFromOrDefault = function () { return _this.from || (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .getDayMonthAgo */ .y8)(); };
        this.getToOrDefault = function () { return _this.to || new Date(); };
        this.getVisibleChipsLength = function () { return _this.filterGroups.length + _this.globalOptions.length; };
        this.periodToApi = function () {
            function formatDate(value, addDay) {
                return (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .isDateWithTime */ .Wo)(value)
                    ? (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)(value)
                    : (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(addDay ? (0,date_fns__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(value, 1) : value);
            }
            return {
                from: _this.from ? formatDate(_this.from) : undefined,
                to: _this.to ? formatDate(_this.to, true) : undefined,
            };
        };
        this.dedup = dedup || false;
        this.dedupImage = dedupImage || false;
        this.spam = spam || undefined;
        this.processed = (0,lodash__WEBPACK_IMPORTED_MODULE_0__.isBoolean)(processed) ? processed : undefined;
        this.starred = starred || undefined;
        this.assigned = assigned || undefined;
        this.deleted = deleted || undefined;
        this.from = from;
        this.to = to;
        this.op = op || 'and';
        this.filterGroups = filterGroups || [];
        this.globalOptions = globalOptions || [];
    }
    Filter.empty = function () {
        return new Filter({
            dedup: false,
            dedupImage: false,
            spam: false,
            processed: undefined,
            starred: false,
            assigned: false,
            deleted: false,
            from: undefined,
            to: undefined,
            op: 'and',
            filterGroups: [],
            globalOptions: [],
        });
    };
    Filter.fromRule = function (data) {
        var filter = this.fromNewApi(data);
        filter.from = undefined;
        filter.to = undefined;
        filter.spam = undefined;
        filter.processed = undefined;
        filter.starred = undefined;
        filter.assigned = undefined;
        filter.deleted = undefined;
        filter.dedup = false;
        filter.dedupImage = false;
        filter.globalOptions = [];
        return filter;
    };
    Filter.fromNewApi = function (data) {
        var _a;
        if (!data)
            return null;
        var from = data.from ? (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseDateString */ .Rm)(data.from) : undefined;
        var to = data.to ? (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseDateString */ .Rm)(data.to) : undefined;
        var filterGroups = (_a = data.filters) === null || _a === void 0 ? void 0 : _a.map(function (x) { return models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.get(x.fieldName).fromApi(x); });
        var globalOptions = Object.keys(data)
            .filter(function (x) { return data.hasOwnProperty(x); })
            .filter(function (x) { return models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .FilterOptionTypeCatalog */ .Nk.exists(x); })
            .map(function (x) { return (0,models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .createFilterOption */ .K3)(data[x], x); });
        return new Filter({
            op: data.op,
            dedup: data.dedup,
            dedupImage: data.dedupImage,
            spam: data.spam,
            processed: data.processed,
            starred: data.starred,
            assigned: data.assigned,
            deleted: data.deleted,
            from: from,
            to: to,
            filterGroups: filterGroups,
            globalOptions: globalOptions,
        });
    };
    Filter.fromApi = function (filter) {
        var isNewFilter = function (f) { return !!f.filters; };
        if (!filter)
            return Filter.empty();
        if (isNewFilter(filter))
            return Filter.fromNewApi(filter);
        return Filter.fromLegacyQuery(filter);
    };
    Filter.createFromImmutableState = function (x) {
        if (!x)
            return this.empty();
        return this.createFromState(utils_Mutable__WEBPACK_IMPORTED_MODULE_5__/* .Mutable */ .rV.from(x));
    };
    Filter.createFromState = function (x) {
        var _a;
        var filterGroups = ((_a = x.filterGroups) === null || _a === void 0 ? void 0 : _a.unwrap().map(function (fg) { return (0,models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .createFilterGroupFromState */ .vO)(fg); })) || [];
        var globalOptions = [];
        for (var key in x) {
            if (!x.hasOwnProperty(key) || this.isDistinguishedProperty(key))
                continue;
            var value = x[key];
            if (models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .FilterOptionTypeCatalog */ .Nk.exists(key)) {
                addFilterGlobalOption(key, value);
            }
        }
        return new Filter({
            dedup: x.dedup,
            dedupImage: x.dedupImage,
            spam: x.spam,
            processed: x.processed,
            starred: x.starred,
            assigned: x.assigned,
            deleted: x.deleted,
            from: x.from,
            to: x.to,
            op: x.op,
            filterGroups: filterGroups,
            globalOptions: globalOptions,
        });
        function addFilterGlobalOption(fieldName, value) {
            var v = Array.isArray(value) && utils_Mutable__WEBPACK_IMPORTED_MODULE_5__/* .Mutable */ .rV.isMutable(value) ? value === null || value === void 0 ? void 0 : value.unwrap() : value;
            globalOptions.push((0,models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .createFilterOption */ .K3)(v, fieldName));
        }
    };
    Filter.prototype.copyFilter = function () {
        var result = Filter.fromQuery(qs__WEBPACK_IMPORTED_MODULE_7__.parse(this.toQueryString()));
        if (!this.from)
            delete result.from;
        if (!this.to)
            delete result.to;
        return result;
    };
    Filter.prototype.toJS = function () {
        var result = {
            dedup: this.dedup,
            dedupImage: this.dedupImage,
            spam: this.spam,
            processed: this.processed,
            starred: this.starred,
            assigned: this.assigned,
            deleted: this.deleted,
            from: this.from,
            to: this.to,
            op: this.op,
            filterGroups: this.filterGroups.map(function (x) { return x.toJS(); }),
        };
        this.globalOptions.forEach(function (x) { return Object.assign(result, x.toApi()); });
        return result;
    };
    Filter.prototype.findByName = function (name) {
        return this.filterGroups.find(function (group) { return group.fieldName === name; });
    };
    Filter.prototype.findByNameAndOperator = function (name, op) {
        return this.filterGroups.find(function (group) { return group.fieldName === name && group.op === op; });
    };
    Filter.prototype.findGroupsNotMatchingOperator = function (name, operator) {
        return this.filterGroups.filter(function (group) { return group.fieldName === name && group.op !== operator; });
    };
    Filter.prototype.findAllGroupsByName = function (name) {
        return this.filterGroups.filter(function (group) { return group.fieldName === name; });
    };
    Filter.prototype.changeOperator = function (name, targetOperator, sourceOperator) {
        var sourceGroup = this.findByNameAndOperator(name, sourceOperator);
        var targetGroup = this.findByNameAndOperator(name, targetOperator);
        sourceGroup.op = targetOperator;
        if (targetGroup) {
            sourceGroup.mergeWith(targetGroup);
            this.removeFilterGroup(targetGroup);
        }
    };
    Filter.prototype.doAdd = function (name, values) {
        var filterType = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.get(name);
        filterType.add(this, values);
    };
    Filter.prototype.doSelect = function (name, values) {
        var filterType = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.get(name);
        filterType.include(this, values);
    };
    Filter.prototype.doExclude = function (name, values) {
        var filterType = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.get(name);
        filterType.exclude(this, values);
    };
    Filter.prototype.addFilterGroup = function (newGroup) {
        this.filterGroups.push(newGroup);
    };
    Filter.prototype.addGlobalOption = function (option) {
        this.globalOptions.push(option);
    };
    Filter.prototype.removeFilterGroup = function (group) {
        this.filterGroups = this.filterGroups.filter(function (x) { return x !== group; });
    };
    Filter.prototype.removeGlobalOption = function (name) {
        this.globalOptions = this.globalOptions.filter(function (x) { return x.name !== name; });
    };
    Filter.prototype.setDateRange = function (from, to) {
        this.from = from ? new Date(from) : undefined;
        this.to = to ? new Date(to) : undefined;
        return this;
    };
    Filter.prototype.withoutFilterGroup = function (group) {
        return new Filter({
            dedup: this.dedup,
            dedupImage: this.dedupImage,
            spam: this.spam,
            processed: this.processed,
            starred: this.starred,
            assigned: this.assigned,
            deleted: this.deleted,
            from: this.from,
            to: this.to,
            op: this.op,
            globalOptions: this.globalOptions,
            filterGroups: this.filterGroups.filter(function (x) { return x !== group; }),
        });
    };
    Filter.prototype.withoutFilterGroupsByOperator = function (op, restrictByFieldName) {
        if (restrictByFieldName === void 0) { restrictByFieldName = ''; }
        var filterGroups = this.filterGroups
            .map(function (fg) {
            if (restrictByFieldName && fg.fieldName !== restrictByFieldName)
                return fg;
            if (fg.op === op)
                return null;
            return fg;
        })
            .filter(Boolean);
        return new Filter({
            dedup: this.dedup,
            dedupImage: this.dedupImage,
            spam: this.spam,
            processed: this.processed,
            starred: this.starred,
            assigned: this.assigned,
            deleted: this.deleted,
            from: this.from,
            to: this.to,
            op: this.op,
            globalOptions: this.globalOptions,
            filterGroups: filterGroups,
        });
    };
    Filter.prototype.withoutFilter = function () {
        return new Filter({
            dedup: this.dedup,
            spam: this.spam,
            processed: this.processed,
            starred: this.starred,
            assigned: this.assigned,
            deleted: this.deleted,
            from: this.from,
            to: this.to,
            op: this.op,
            globalOptions: [],
            filterGroups: [],
        });
    };
    Filter.prototype.withoutFilterGroupByName = function (fieldName) {
        return this.findAllGroupsByName(fieldName).reduce(function (acc, fg) {
            return acc.withoutFilterGroup(fg);
        }, this);
    };
    Filter.prototype.replace = function (group, replacement) {
        this.removeFilterGroup(group);
        this.addFilterGroup(replacement);
    };
    Filter.prototype.appendTo = function (params) {
        if (this.dedup)
            params.set('dedup', String(this.dedup));
        if (this.dedupImage)
            params.set('dedupImage', String(this.dedupImage));
        if (this.spam)
            params.set('spam', String(this.spam));
        if ((0,lodash__WEBPACK_IMPORTED_MODULE_0__.isBoolean)(this.processed))
            params.set('processed', String(this.processed));
        if (this.starred)
            params.set('starred', String(this.starred));
        if (this.assigned)
            params.set('assigned', String(this.assigned));
        if (this.deleted)
            params.set('deleted', String(this.deleted));
        if (this.from)
            params.set('from', (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .formatDateToString */ .A)(this.from));
        if (this.to)
            params.set('to', (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .formatDateToString */ .A)(this.to));
        if (this.op !== 'and')
            params.set('op', this.op);
        this.appendFilterGroupsTo(params);
        this.appendGlobalOptionsTo(params);
    };
    Filter.prototype.appendFilterGroupsTo = function (params) {
        this.filterGroups.forEach(function (group, index) { return group.appendTo(params, index); });
    };
    Filter.prototype.appendGlobalOptionsTo = function (params) {
        this.globalOptions.forEach(function (option) { return option.appendTo(params); });
    };
    Filter.prototype.toQueryString = function () {
        var params = new URLSearchParams();
        this.appendTo(params);
        return params.toString();
    };
    Filter.isDistinguishedProperty = function (prop) {
        return (prop === 'from'
            || prop === 'to'
            || prop === 'dedup'
            || prop === 'dedupImage'
            || prop === 'spam'
            || prop === 'processed'
            || prop === 'starred'
            || prop === 'assigned'
            || prop === 'deleted'
            || prop === 'op'
            || prop === 'filters'
            || prop === 'filterGroups');
    };
    Filter.fromQuery = function (query) {
        var globalOptions = this.extractExtraParametersFromQuery(query).globalOptions;
        var _a = this.extractFilterParametersFromQuery(query), filterGroups = _a.filterGroups, from = _a.from, to = _a.to, dedup = _a.dedup, spam = _a.spam, processed = _a.processed, starred = _a.starred, assigned = _a.assigned, deleted = _a.deleted, operator = _a.operator;
        return new Filter({
            dedup: dedup,
            spam: spam,
            processed: processed,
            starred: starred,
            assigned: assigned,
            deleted: deleted,
            from: from,
            to: to,
            op: operator,
            globalOptions: globalOptions,
            filterGroups: filterGroups,
        });
    };
    Filter.fromQuerySeparated = function (query) {
        var _a = this.extractExtraParametersFromQuery(query), additionalParameters = _a.additionalParameters, globalOptions = _a.globalOptions;
        var _b = this.extractFilterParametersFromQuery(query), filterGroups = _b.filterGroups, from = _b.from, to = _b.to, dedup = _b.dedup, spam = _b.spam, processed = _b.processed, starred = _b.starred, assigned = _b.assigned, deleted = _b.deleted, operator = _b.operator;
        return {
            filter: new Filter({
                dedup: dedup,
                spam: spam,
                processed: processed,
                starred: starred,
                assigned: assigned,
                deleted: deleted,
                from: from,
                to: to,
                op: operator,
                globalOptions: globalOptions,
                filterGroups: filterGroups,
            }),
            additionalParameters: additionalParameters,
        };
    };
    Filter.extractFilterParametersFromQuery = function (query) {
        var filterGroups = [];
        if (query.filterGroups)
            parseFilterGroups();
        var from = (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseDateString */ .Rm)(query.from ? query.from : this.getDefaultFromTo().from);
        var to = (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseDateString */ .Rm)(query.to ? query.to : this.getDefaultFromTo().to);
        var dedup = query.dedup || typeof query.dedup === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(query.dedup)) : false;
        var spam = query.spam || typeof query.spam === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(query.spam)) : false;
        var processed = query.processed || typeof query.processed === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(query.processed)) : undefined;
        var starred = query.starred || typeof query.starred === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(query.starred)) : false;
        var assigned = query.assigned || typeof query.assigned === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(query.assigned)) : false;
        var deleted = query.deleted || typeof query.deleted === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(query.deleted)) : false;
        var operator = query.op || 'and';
        function addFilterGroup(fieldName, value, op) {
            var filterType = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.get(fieldName);
            if (!value)
                return;
            filterGroups.push(filterType.createFilterGroup(value, op));
        }
        function parseFilterGroups() {
            for (var key in query.filterGroups) {
                if (!query.filterGroups.hasOwnProperty(key))
                    continue;
                var _a = query.filterGroups[key], fieldName = _a.fieldName, op = _a.op, value = _a.value;
                if (models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.exists(fieldName)) {
                    addFilterGroup(fieldName, value, op);
                }
            }
        }
        return {
            filterGroups: filterGroups,
            from: from,
            to: to,
            dedup: dedup,
            spam: spam,
            processed: processed,
            starred: starred,
            assigned: assigned,
            deleted: deleted,
            operator: operator,
        };
    };
    Filter.extractExtraParametersFromQuery = function (query) {
        var globalOptions = [];
        var additionalParameters = [];
        for (var key in query) {
            if (!query.hasOwnProperty(key) || this.isDistinguishedProperty(key))
                continue;
            if (models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .FilterOptionTypeCatalog */ .Nk.exists(key)) {
                addFilterOption(key, query[key]);
                continue;
            }
            addQueryParameter(key, query[key]);
        }
        return { additionalParameters: additionalParameters, globalOptions: globalOptions };
        function addQueryParameter(key, value) {
            additionalParameters.push({ key: key, value: value });
        }
        function addFilterOption(fieldName, value) {
            globalOptions.push((0,models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .createFilterOption */ .K3)(value, fieldName));
        }
    };
    Filter.fromLegacyQuery = function (data) {
        function parseFieldName(key) {
            var isExcluded = key.includes('exclude');
            var actualFieldName = key.replace('exclude', '');
            var camelCaseFieldName = actualFieldName[0].toLowerCase() + actualFieldName.substring(1);
            var fieldName = isExcluded ? camelCaseFieldName : key;
            var mappedFieldName = fieldName === 'source' ? 'sourceId' : fieldName;
            return { exclude: isExcluded, fieldName: mappedFieldName };
        }
        var filterGroups = [];
        var globalOptions = [];
        function addFilterGroup(fieldName, value, exclude) {
            var filterType = models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.get(fieldName);
            filterGroups.push(filterType.createFilterGroupFromLegacyFormat(value, exclude));
        }
        function addFilterOption(fieldName, value) {
            globalOptions.push((0,models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .createFilterOption */ .K3)(value, fieldName));
        }
        for (var key in data) {
            if (!data.hasOwnProperty(key) || this.isDistinguishedProperty(key))
                continue;
            var value = data[key];
            var _a = parseFieldName(key), exclude = _a.exclude, fieldName = _a.fieldName;
            if (models_filters_domain_FilterGroupTypeCatalog__WEBPACK_IMPORTED_MODULE_1__/* .FilterGroupTypeCatalog */ .dA.exists(fieldName)) {
                addFilterGroup(fieldName, value, exclude);
                continue;
            }
            if (models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_2__/* .FilterOptionTypeCatalog */ .Nk.exists(fieldName)) {
                addFilterOption(key, value);
            }
        }
        var from = (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseDateString */ .Rm)(data.from ? data.from : this.getDefaultFromTo().from);
        var to = (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseDateString */ .Rm)(data.to ? data.to : this.getDefaultFromTo().to);
        var dedup = data.dedup || typeof data.dedup === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.dedup)) : false;
        var spam = data.spam || typeof data.spam === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.spam)) : false;
        var processed = data.processed || typeof data.processed === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.processed)) : undefined;
        var starred = data.starred || typeof data.starred === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.starred)) : false;
        var assigned = data.assigned || typeof data.assigned === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.assigned)) : false;
        var deleted = data.deleted || typeof data.deleted === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.deleted)) : false;
        var dedupImage = data.dedupImage || typeof data.dedupImage === 'boolean' ? (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_8__/* .toBoolean */ .G)(String(data.dedupImage)) : false;
        return new Filter({
            dedup: dedup,
            dedupImage: dedupImage,
            spam: spam,
            processed: processed,
            starred: starred,
            assigned: assigned,
            deleted: deleted,
            from: from,
            to: to,
            op: 'and',
            globalOptions: globalOptions,
            filterGroups: filterGroups,
        });
    };
    Filter.prototype.clear = function () {
        this.filterGroups = [];
        this.globalOptions = [];
        this.op = 'and';
    };
    Object.defineProperty(Filter.prototype, "hasLegacyItems", {
        // TODO: Temp solution to drop legacy filters support
        // Should be validated on the backend side, but we need some validation rules for supported fields added first
        get: function () {
            return this.filterGroups.some(function (group) {
                return isOneOf(group.fieldName)('authorId', 'sourceId', 'channelId')
                    && isOneOf(group.op)('oneOf', 'notOneOf')
                    && group.value.some(function (v) { return !Number.isNaN(+v); });
            });
            function isOneOf(value) {
                return function () {
                    var values = [];
                    for (var _i = 0; _i < arguments.length; _i++) {
                        values[_i] = arguments[_i];
                    }
                    return values.includes(value);
                };
            }
        },
        enumerable: false,
        configurable: true
    });
    Filter.prototype.toApi = function () {
        var result = __assign(__assign({}, this.periodToApi()), { op: this.op, filters: this.filterGroups.map(function (x) { return x.toApi(); }), dedup: this.dedup, dedupImage: this.dedupImage, spam: this.spam, processed: this.processed, starred: this.starred, assigned: this.assigned, deleted: this.deleted });
        if (!result.filters.length) {
            delete result.filters;
        }
        this.globalOptions.forEach(function (x) { return Object.assign(result, x.toApi()); });
        return result;
    };
    Filter.prototype.changeLogicalOperator = function (operator) {
        this.op = operator;
    };
    Filter.prototype.equals = function (comparableFilter, withoutFromTo) {
        if (!comparableFilter)
            return null;
        var fromToEquals = withoutFromTo
            ? true
            : time(this.from) === time(comparableFilter.from) && time(this.to) === time(comparableFilter.to);
        return ((0,lodash__WEBPACK_IMPORTED_MODULE_0__.isEqual)(this.filterGroups, comparableFilter.filterGroups)
            && (0,lodash__WEBPACK_IMPORTED_MODULE_0__.isEqual)(this.globalOptions, comparableFilter.globalOptions)
            && this.op === comparableFilter.op
            && fromToEquals
            && this.dedup === comparableFilter.dedup
            && this.spam === comparableFilter.spam
            && this.processed === comparableFilter.processed
            && this.starred === comparableFilter.starred
            && this.assigned === comparableFilter.assigned
            && this.deleted === comparableFilter.deleted);
        function time(t) {
            if (!t)
                return undefined;
            return Math.floor(t.getTime() / 1000);
        }
    };
    Filter.prototype.replaceQuery = function (query) {
        var _a = Filter.fromQuerySeparated(query), _b = _a.filter, from = _b.from, to = _b.to, additionalParameters = _a.additionalParameters;
        var params = {};
        additionalParameters.forEach(function (p) {
            params[p.key] = p.value;
        });
        return __assign(__assign(__assign({}, (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_3__/* .parseQuery */ .mA)(this.toQueryString())), { from: from, to: to }), params);
    };
    Filter.prototype.toEvent = function () {
        var filters = this.filterGroups.map(function (fg) { return fg.toEvent(); }).concat(this.globalOptions.map(function (o) { return o.toEvent(); }));
        return {
            globalOp: this.op,
            filters: filters,
        };
    };
    Filter.prototype.isEmpty = function () {
        return this.filterGroups.length === 0;
    };
    Filter.prototype.key = function () {
        return (0,qs__WEBPACK_IMPORTED_MODULE_7__.stringify)(this.toApi());
    };
    Filter.merge = function (first, second) {
        if (!first || first.isEmpty())
            return second;
        if (!second || second.isEmpty())
            return first;
        var result = new Filter(second.copyFilter());
        var mainFilterNames = second.filterGroups.map(function (fg) { return fg.fieldName; });
        first.copyFilter().filterGroups.forEach(function (fg) {
            if (mainFilterNames.includes(fg.fieldName))
                return;
            result.addFilterGroup(fg);
        });
        return result;
    };
    Filter.getDefaultFromTo = function () {
        var now = new Date();
        return {
            from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .getDayMonthAgo */ .y8)(now),
            to: now,
        };
    };
    return Filter;
}());

Filter.prototype[IS_NATIVE_FILTER] = true;
function prepare(values) {
    return values instanceof Array ? values.map(function (v) { return v.toString(); }) : values;
}
var handle = function (filter, updateFilter, values, callback) {
    callback(filter, prepare(values));
    updateFilter({ filter: filter });
};
var handleAdd = function (name, values, filter, updateFilter) {
    handle(filter, updateFilter, values, function (f, v) { return f.doAdd(name, v); });
};
var handleSelect = function (name, values, filter, updateFilter) {
    handle(filter, updateFilter, values, function (f, v) { return f.doSelect(name, v); });
};
var handleExclude = function (name, values, filter, updateFilter) {
    handle(filter, updateFilter, values, function (f, v) { return f.doExclude(name, v); });
};
var handleLogicalOperatorChange = function (operator, updateOperator) {
    updateOperator({ newOperator: operator });
};


/***/ }),

/***/ "NLA2":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   II: () => (/* binding */ ListFilterGroup),
/* harmony export */   Qr: () => (/* binding */ BooleanFilterGroup),
/* harmony export */   lB: () => (/* binding */ RangeFilterGroup),
/* harmony export */   nw: () => (/* binding */ TextFilterGroup)
/* harmony export */ });
/* unused harmony export FilterGroup */
/* harmony import */ var models_filters_utils_RangeInfo__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("KkiJ");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2N3d");
/* harmony import */ var utils_themeFilterUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("oLrK");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};



var FilterGroup = /** @class */ (function () {
    function FilterGroup(fieldName, op) {
        this.fieldName = fieldName;
        this.op = op;
    }
    FilterGroup.prototype.toImmutable = function () {
        return utils_Mutable__WEBPACK_IMPORTED_MODULE_0__/* .Mutable */ .rV.toImmutable(this);
    };
    FilterGroup.prototype.appendFieldNameAndOperator = function (params, index) {
        params.append("filterGroups[".concat(index, "][fieldName]"), this.fieldName);
        params.append("filterGroups[".concat(index, "][op]"), this.op);
    };
    FilterGroup.prototype.appendValue = function (params, index, value) {
        params.append("filterGroups[".concat(index, "][value]"), value);
    };
    FilterGroup.prototype.appendArrayValue = function (params, index, values) {
        var e_1, _a;
        try {
            for (var values_1 = __values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) {
                var value = values_1_1.value;
                params.append("filterGroups[".concat(index, "][value][]"), value);
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (values_1_1 && !values_1_1.done && (_a = values_1.return)) _a.call(values_1);
            }
            finally { if (e_1) throw e_1.error; }
        }
    };
    return FilterGroup;
}());

var BooleanFilterGroup = /** @class */ (function (_super) {
    __extends(BooleanFilterGroup, _super);
    function BooleanFilterGroup(fieldName, value) {
        var _this = _super.call(this, fieldName, BooleanFilterGroup.DefaultOperator) || this;
        _this.boolValue = value;
        _this.value = [value];
        _this.excluded = !value;
        return _this;
    }
    BooleanFilterGroup.prototype.appendTo = function (params, index) {
        this.appendFieldNameAndOperator(params, index);
        this.appendArrayValue(params, index, ["".concat(this.value)]);
    };
    BooleanFilterGroup.prototype.toApi = function () {
        return { fieldName: this.fieldName, op: 'oneOf', value: "[\"".concat(this.value, "\"]") };
    };
    BooleanFilterGroup.prototype.toJS = function () {
        return {
            fieldName: this.fieldName,
            op: BooleanFilterGroup.DefaultOperator,
            value: ["".concat(this.value)],
        };
    };
    BooleanFilterGroup.prototype.toEvent = function () {
        return {
            name: this.fieldName,
            op: this.op,
            value: [this.value],
        };
    };
    BooleanFilterGroup.DefaultOperator = 'oneOf';
    return BooleanFilterGroup;
}(FilterGroup));

var RangeFilterGroup = /** @class */ (function (_super) {
    __extends(RangeFilterGroup, _super);
    function RangeFilterGroup(fieldName, value) {
        var _this = this;
        if (!value.from && !value.to) {
            throw new Error("can't create range group from empty range");
        }
        _this = _super.call(this, fieldName, (0,models_filters_utils_RangeInfo__WEBPACK_IMPORTED_MODULE_2__/* .deduceOperator */ .fd)(value)) || this;
        _this.value = value;
        return _this;
    }
    RangeFilterGroup.prototype.appendTo = function (params, index) {
        this.appendFieldNameAndOperator(params, index);
        switch (this.op) {
            case 'range':
                this.appendArrayValue(params, index, ["".concat(this.value.from), "".concat(this.value.to)]);
                return;
            case 'lessOrEqual':
                this.appendValue(params, index, "".concat(this.value.to));
                return;
            case 'greaterOrEqual':
                this.appendValue(params, index, "".concat(this.value.from));
                return;
            default:
                throw new Error("RangeFilterGroup appendTo: unknown operator - ".concat(this.op));
        }
    };
    RangeFilterGroup.prototype.toApi = function () {
        return {
            fieldName: this.fieldName,
            op: this.op,
            value: this.op === 'range'
                ? "[".concat(this.value.from, "..").concat(this.value.to, "]")
                : "".concat(this.value.from || this.value.to),
        };
    };
    RangeFilterGroup.prototype.toJS = function () {
        return {
            fieldName: this.fieldName,
            op: this.op,
            value: (0,models_filters_utils_RangeInfo__WEBPACK_IMPORTED_MODULE_2__/* .toWeirdValue */ .ky)(this.value),
        };
    };
    RangeFilterGroup.prototype.toEvent = function () {
        return {
            name: this.fieldName,
            op: this.op,
            value: this.op === 'range'
                ? ["".concat(this.value.from, "..").concat(this.value.to)]
                : ["".concat(this.value.from || this.value.to)],
        };
    };
    return RangeFilterGroup;
}(FilterGroup));

var TextFilterGroup = /** @class */ (function (_super) {
    __extends(TextFilterGroup, _super);
    function TextFilterGroup(fieldName, value) {
        var _this = _super.call(this, fieldName, TextFilterGroup.DefaultOperator) || this;
        _this.value = value;
        return _this;
    }
    TextFilterGroup.prototype.appendTo = function (params, index) {
        this.appendFieldNameAndOperator(params, index);
        this.appendValue(params, index, this.value);
    };
    TextFilterGroup.prototype.toJS = function () {
        return {
            fieldName: this.fieldName,
            op: TextFilterGroup.DefaultOperator,
            value: this.value,
        };
    };
    TextFilterGroup.prototype.toApi = function () {
        return {
            fieldName: this.fieldName,
            op: 'textQuery',
            value: this.value,
        };
    };
    TextFilterGroup.prototype.toEvent = function () {
        return {
            name: this.fieldName,
            op: 'textQuery',
            value: [this.value],
        };
    };
    TextFilterGroup.DefaultOperator = 'textQuery';
    return TextFilterGroup;
}(FilterGroup));

var ListFilterGroup = /** @class */ (function (_super) {
    __extends(ListFilterGroup, _super);
    function ListFilterGroup(type, op, values, multiValue) {
        var _this = _super.call(this, type, op) || this;
        _this.value = Array.from(values);
        _this.multiValue = multiValue;
        _this.excluded = utils_themeFilterUtils__WEBPACK_IMPORTED_MODULE_1__/* .excludeFilterOperatorTypes */ .W4.includes(_this.op);
        return _this;
    }
    ListFilterGroup.prototype.appendTo = function (params, index) {
        this.appendFieldNameAndOperator(params, index);
        this.appendArrayValue(params, index, this.value);
    };
    ListFilterGroup.prototype.toApi = function () {
        return { fieldName: this.fieldName, op: this.op, value: JSON.stringify(this.value) };
    };
    ListFilterGroup.prototype.mergeWith = function (source) {
        this.value = __spreadArray(__spreadArray([], __read(this.value), false), __read(source.value), false);
    };
    ListFilterGroup.prototype.mergeUnion = function (newValues) {
        this.value = __spreadArray([], __read(new Set(__spreadArray(__spreadArray([], __read(newValues), false), __read(this.value), false))), false);
    };
    ListFilterGroup.prototype.mergeToggle = function (newValues) {
        return newValues.reduce(function (accum, id) {
            var oldValues = accum.value;
            if (oldValues.includes(id)) {
                accum.value = oldValues.filter(function (_id) { return _id !== id; });
            }
            else {
                oldValues.push(id);
            }
            return accum;
        }, this);
    };
    ListFilterGroup.prototype.remove = function (newValues) {
        return newValues.reduce(function (accum, id) {
            var oldValues = accum.value;
            accum.value = oldValues.filter(function (_id) { return _id !== id; });
            return accum;
        }, this);
    };
    ListFilterGroup.prototype.isEmpty = function () {
        return this.value.length === 0;
    };
    ListFilterGroup.prototype.toJS = function () {
        return {
            fieldName: this.fieldName,
            op: this.op,
            value: this.value,
        };
    };
    ListFilterGroup.prototype.toEvent = function () {
        return {
            name: this.fieldName,
            op: this.op,
            value: this.value,
        };
    };
    return ListFilterGroup;
}(FilterGroup));



/***/ }),

/***/ "XA9s":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   jt: () => (/* binding */ ArrayFilterOption),
/* harmony export */   q0: () => (/* binding */ SimpleFilterOption)
/* harmony export */ });
/* unused harmony export FilterOption */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var FilterOption = /** @class */ (function () {
    function FilterOption(name, value) {
        this.name = name;
        this.value = value;
        this.name = name;
        this.value = value;
    }
    FilterOption.prototype.toEvent = function () {
        return {
            name: this.name,
            value: [this.value],
        };
    };
    return FilterOption;
}());

var SimpleFilterOption = /** @class */ (function (_super) {
    __extends(SimpleFilterOption, _super);
    function SimpleFilterOption(name, value) {
        return _super.call(this, name, value) || this;
    }
    SimpleFilterOption.prototype.appendTo = function (params) {
        params.append(this.name, String(this.value));
    };
    SimpleFilterOption.prototype.toApi = function () {
        var _a;
        return _a = {}, _a[this.name] = this.value.toString(), _a;
    };
    return SimpleFilterOption;
}(FilterOption));

var ArrayFilterOption = /** @class */ (function (_super) {
    __extends(ArrayFilterOption, _super);
    function ArrayFilterOption(name, value) {
        return _super.call(this, name, value) || this;
    }
    ArrayFilterOption.prototype.appendArrayValue = function (params, name, values) {
        for (var i = 0; i < values.length; i++) {
            var value = values[i];
            params.append("".concat(name, "[").concat(i, "]"), value);
        }
    };
    ArrayFilterOption.prototype.appendTo = function (params) {
        this.appendArrayValue(params, this.name, this.value.map(String));
    };
    ArrayFilterOption.prototype.toApi = function () {
        var _a;
        return _a = {}, _a[this.name] = this.value, _a;
    };
    return ArrayFilterOption;
}(FilterOption));



/***/ }),

/***/ "hdiB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LMMr");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var components_ui_Icon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("LtxQ");
/* harmony import */ var _Chip_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("dfJs");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var Chip = function (_a) {
    var _b;
    var editable = _a.editable, excluded = _a.excluded, label = _a.label, content = _a.content, onRemove = _a.onRemove;
    return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", __assign({ role: "presentation", className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_Chip_css__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.base, (_b = {}, _b[_Chip_css__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.excluded] = excluded, _b)) }, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", __assign({ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_Chip_css__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.label) }, { children: label })), content, editable && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Icon__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A, { type: "close", className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_Chip_css__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.remove), onClick: onRemove })] })));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Chip);


/***/ }),

/***/ "yMOo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  dA: () => (/* binding */ FilterGroupTypeCatalog),
  e1: () => (/* binding */ createFilterGroup),
  vO: () => (/* binding */ createFilterGroupFromState)
});

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
;// CONCATENATED MODULE: ./src/utils/filterConfigs.js
var aggregationsConfigByFilterType = {
  age: {
    authorAge: {}
  },
  aspect: {
    aspects: {
      size: 20
    },
    sentimentAspects: {}
  },
  // Fix aspects filter in CD. Double check. Check the correctness of the work after removing old filters
  // important to call two aggregations `aspects` and `sentimentAspects` for aspects
  author: {
    authors: {
      size: 10
    }
  },
  channel: {
    channels: {
      size: 10
    }
  },
  cityId: {
    cityIds: {
      size: 10
    }
  },
  collectionMethod: {
    collectionMethods: {}
  },
  contentType: {
    contentTypes: {
      size: 10
    }
  },
  countryGroup: {
    countryGroups: {
      size: 10
    }
  },
  country: {
    countries: {
      size: 10
    }
  },
  gender: {
    authorGender: {}
  },
  authorInterests: {
    authorInterests: {
      size: 10
    }
  },
  authorInterestCategories: {
    authorInterestCategories: {
      size: 10
    }
  },
  authorJobs: {
    authorJobs: {
      size: 10
    }
  },
  host: {
    host: {
      size: 10
    }
  },
  imageActivities: {
    imageActivities: {
      size: 20
    }
  },
  imageBrand: {
    imageBrands: {
      size: 20
    }
  },
  imageColors: {
    imageColors: {
      size: 20
    }
  },
  imageContentSensitivity: {
    imageContentSensitivities: {
      size: 20
    }
  },
  imageObject: {
    imageObjects: {
      size: 20
    }
  },
  imagePeople: {
    imagePeople: {
      size: 20
    }
  },
  imageScene: {
    imageScenes: {
      size: 20
    }
  },
  imageSubtype: {
    imageSubtypes: {
      size: 20
    }
  },
  imageType: {
    imageTypes: {
      size: 20
    }
  },
  indirect: {
    indirect: {}
  },
  language: {
    languages: {
      size: 20
    }
  },
  link: {
    link: {
      size: 10
    }
  },
  origin: {
    origins: {}
  },
  postType: {
    postTypes: {}
  },
  starRating: {
    starRating: {}
  },
  regionId: {
    regionIds: {
      size: 10
    }
  },
  resourceType: {
    resourceTypes: {}
  },
  sentiment: {
    sentiment: {}
  },
  sentimentAffect: {
    sentimentAffects: {
      size: 20
    }
  },
  sentimentAspects: {},
  source: {
    sources: {
      size: 10
    }
  },
  sourceFormat: {
    sourceFormat: {}
  },
  subject: {
    subjects: {
      size: 20
    }
  },
  systemTag: {
    systemTags: {}
  },
  tag: {
    tags: {}
  },
  trend: {
    trends: {}
  }
};
var allFilterTypes = Object.keys(aggregationsConfigByFilterType);
;// CONCATENATED MODULE: ./src/models/filters/meta/FilterGroupType.tsx

var FilterGroupType = /** @class */ (function () {
    function FilterGroupType(type, legacyType) {
        this.type = type;
        this.legacyType = legacyType;
    }
    FilterGroupType.prototype.getFacet = function () {
        return this.facet || aggregationsConfigByFilterType[this.type] || aggregationsConfigByFilterType[this.legacyType];
    };
    FilterGroupType.prototype.isSingularFacet = function () {
        return false;
    };
    return FilterGroupType;
}());


// EXTERNAL MODULE: ./src/models/filters/utils/RangeInfo.ts
var RangeInfo = __webpack_require__("KkiJ");
// EXTERNAL MODULE: ./src/models/filters/FilterGroup.ts
var FilterGroup = __webpack_require__("NLA2");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./src/models/filters/components/Chip.css
var Chip = __webpack_require__("dfJs");
;// CONCATENATED MODULE: ./src/models/filters/components/RangeFilterGroupChipValue.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var RangeFilterGroupChipValue = function (_a) {
    var from = _a.from, to = _a.to;
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [from, (0,jsx_runtime.jsx)("span", __assign({ className: classnames_default()(Chip/* default */.A.rangeFilterValueSeparator) }, { children: ".." })), to] }));
};

// EXTERNAL MODULE: ./src/models/filters/components/Chip.tsx
var components_Chip = __webpack_require__("hdiB");
// EXTERNAL MODULE: ./src/components/other/FilterOperator/FilterOperator.tsx + 1 modules
var FilterOperator = __webpack_require__("ZMuL");
// EXTERNAL MODULE: ./src/utils/themeFilterUtils.ts
var themeFilterUtils = __webpack_require__("oLrK");
;// CONCATENATED MODULE: ./src/models/filters/components/RangeFilterChip.tsx
var RangeFilterChip_assign = (undefined && undefined.__assign) || function () {
    RangeFilterChip_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RangeFilterChip_assign.apply(this, arguments);
};







var RangeFilterChip = function (_a) {
    var editable = _a.editable, group = _a.group, groupType = _a.groupType, onRemove = _a.onRemove;
    var type = group.fieldName;
    var _b = group.value, from = _b.from, to = _b.to;
    var op = group.op;
    var handleRemove = function () {
        onRemove(type, op);
    };
    function renderBody() {
        var renderOperator = function () {
            if (group.op === themeFilterUtils/* FROM_RANGE_OPERATOR */.ey) {
                return (0,FilterOperator/* renderNonSelectableOperatorIcon */.J6)('greater-or-equal');
            }
            if (group.op === themeFilterUtils/* TO_RANGE_OPERATOR */.zy) {
                return (0,FilterOperator/* renderNonSelectableOperatorIcon */.J6)('less-or-equal');
            }
            if (group.op === themeFilterUtils/* DEFAULT_RANGE_OPERATOR */.Z_) {
                return (0,FilterOperator/* renderNonSelectableOperatorIcon */.J6)('equal');
            }
            throw new Error("Unknown range operator: ".concat(group.op));
        };
        var renderValue = function () {
            var renderer = groupType.renderer || (function (v) { return v; });
            if (!from)
                return renderer(to);
            if (!to)
                return renderer(from);
            return (0,jsx_runtime.jsx)(RangeFilterGroupChipValue, { from: renderer(from), to: renderer(to) });
        };
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [renderOperator(), (0,jsx_runtime.jsx)("span", RangeFilterChip_assign({ className: classnames_default()(Chip/* default */.A.values) }, { children: renderValue() }))] }));
    }
    return ((0,jsx_runtime.jsx)(components_Chip/* default */.A, { label: groupType.label() || type, editable: editable, onRemove: handleRemove, content: renderBody() }));
};
/* harmony default export */ const components_RangeFilterChip = (RangeFilterChip);

;// CONCATENATED MODULE: ./src/models/filters/meta/groups/RangeFilterGroupType.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var RangeFilterGroupType_assign = (undefined && undefined.__assign) || function () {
    RangeFilterGroupType_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return RangeFilterGroupType_assign.apply(this, arguments);
};

/* eslint-disable no-useless-constructor */





var range = function (params) {
    return new RangeFilterGroupType(params);
};
var RangeFilterGroupType = /** @class */ (function (_super) {
    __extends(RangeFilterGroupType, _super);
    function RangeFilterGroupType(_a) {
        var type = _a.type, legacyType = _a.legacyType, label = _a.label, renderer = _a.renderer;
        var _this = _super.call(this, type, legacyType) || this;
        _this.label = label !== null && label !== void 0 ? label : (function () { return type; });
        _this.renderer = renderer;
        return _this;
    }
    RangeFilterGroupType.prototype.add = function (filter, values) {
        this.include(filter, values);
    };
    RangeFilterGroupType.prototype.include = function (filter, values) {
        var _a = this.getRangeInfo(values), filterValues = _a.values, operator = _a.operator;
        var existent = filter.findByName(this.type);
        if (existent && !filterValues) {
            filter.removeFilterGroup(existent);
            return;
        }
        var newGroup = this.createFilterGroup(filterValues, operator);
        if (existent) {
            filter.replace(existent, newGroup);
            return;
        }
        filter.addFilterGroup(newGroup);
    };
    RangeFilterGroupType.prototype.exclude = function (filter, values) {
        throw new Error('RangeFilterType: exclude is not implemented');
    };
    RangeFilterGroupType.prototype.getRangeInfo = function (rangeData) {
        if (rangeData.from && rangeData.to) {
            return {
                operator: themeFilterUtils/* DEFAULT_RANGE_OPERATOR */.Z_,
                values: [rangeData.from, rangeData.to],
            };
        }
        if (rangeData.from && !rangeData.to) {
            return {
                operator: themeFilterUtils/* FROM_RANGE_OPERATOR */.ey,
                values: rangeData.from,
            };
        }
        if (!rangeData.from && rangeData.to) {
            return {
                operator: themeFilterUtils/* TO_RANGE_OPERATOR */.zy,
                values: rangeData.to,
            };
        }
        return {
            operator: themeFilterUtils/* DEFAULT_RANGE_OPERATOR */.Z_,
            values: null,
        };
    };
    RangeFilterGroupType.prototype.createChipFromGroup = function (params) {
        return (0,jsx_runtime.jsx)(components_RangeFilterChip, RangeFilterGroupType_assign({}, params, { groupType: this, group: params.group }));
    };
    RangeFilterGroupType.prototype.createFilterGroup = function (value, op) {
        return new FilterGroup/* RangeFilterGroup */.lB(this.type, (0,RangeInfo/* fromWeirdValue */.tZ)(value, op));
    };
    RangeFilterGroupType.prototype.fromApi = function (data) {
        var rangeData = RangeFilterGroupType.parseRangeApiString(data.op, data.value);
        return new FilterGroup/* RangeFilterGroup */.lB(this.type, rangeData);
    };
    RangeFilterGroupType.parseRangeApiString = function (op, value) {
        if (op === 'range') {
            var parts = value.split('..');
            var from = parts[0].substr(1);
            var to = parts[1].substr(0, parts[1].length - 1);
            return { from: from, to: to };
        }
        if (op === 'greaterOrEqual')
            return { from: value, to: undefined };
        if (op === 'lessOrEqual')
            return { from: undefined, to: value };
        throw new Error("Unknown range operator: ".concat(op));
    };
    RangeFilterGroupType.prototype.createFilterGroupFromLegacyFormat = function (legacyValue, exclude) {
        throw new Error('Legacy format is not supported for RangeFilterType');
    };
    return RangeFilterGroupType;
}(FilterGroupType));


;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorSubscribers.tsx

/* harmony default export */ const authorSubscribers = (range({
    type: 'authorSubscribers',
    label: function () { return l('Author\'s subscribers'); },
    // TODO: renderer ???
}));

// EXTERNAL MODULE: ./src/hooks/useHighlightContext.tsx
var useHighlightContext = __webpack_require__("qd5V");
// EXTERNAL MODULE: ./src/components/other/FilterOperator/index.ts
var other_FilterOperator = __webpack_require__("HnTy");
// EXTERNAL MODULE: ./src/components/ui/Tooltip/index.ts + 2 modules
var Tooltip = __webpack_require__("ZSfL");
// EXTERNAL MODULE: ./src/components/ui/Popover/index.ts + 2 modules
var Popover = __webpack_require__("+xhm");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
;// CONCATENATED MODULE: ./src/models/filters/components/ListFilterGroupChipValue.tsx
var ListFilterGroupChipValue_assign = (undefined && undefined.__assign) || function () {
    ListFilterGroupChipValue_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ListFilterGroupChipValue_assign.apply(this, arguments);
};







var ListFilterGroupChipValue = function (_a) {
    var editable = _a.editable, isMultiValue = _a.isMultiValue, values = _a.values, excluded = _a.excluded, type = _a.type, op = _a.op, compact = _a.compact, renderer = _a.renderer, info = _a.info, onChangeOperator = _a.onChangeOperator, onRemoveValue = _a.onRemoveValue;
    var maxDisplayValues = compact ? 1 : 2;
    var displayValues = values.slice(0, maxDisplayValues);
    var displayValuesRemainder = values.slice(maxDisplayValues);
    var hasRemainder = displayValuesRemainder.length;
    var handleRemove = function (value) {
        onRemoveValue(type, op, value);
    };
    return ((0,jsx_runtime.jsxs)("div", ListFilterGroupChipValue_assign({ className: Chip/* default */.A.listFilterGroupChipValue }, { children: [renderDisplayValues(), hasRemainder ? renderDisplayValuesRemainder() : null] })));
    function renderRemovableValue(renderedValue, value) {
        return ((0,jsx_runtime.jsxs)("div", ListFilterGroupChipValue_assign({ className: classnames_default()(Chip/* default */.A.chipTooltipValue) }, { children: [renderedValue, editable
                    && ((0,jsx_runtime.jsx)(Icon/* default */.A, { type: "close", className: classnames_default()(Chip/* default */.A.remove), onClick: function () { return handleRemove(value); } }))] })));
    }
    function renderDisplayValues() {
        return displayValues.map(renderDisplayValue);
        function renderDisplayValue(value, index) {
            var isFirst = index === 0;
            var renderedValue = getRenderedValue(value);
            return ((0,jsx_runtime.jsx)(Tooltip/* default */.A, ListFilterGroupChipValue_assign({ flowing: true, hoverable: true, inverted: false, text: renderRemovableValue(renderedValue, value) }, { children: (0,jsx_runtime.jsxs)("span", ListFilterGroupChipValue_assign({ className: classnames_default()(Chip/* default */.A.chipValue), title: null, "data-testid": "ChipValue" }, { children: [isFirst ? null : renderFilterOperator(), renderedValue] })) }), value));
        }
    }
    function getRenderedValue(value) {
        return renderer(Number(value) || value, info) || null;
    }
    function renderDisplayValuesRemainder() {
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [compact ? (0,jsx_runtime.jsx)("span", { className: Chip/* default */.A.line }) : renderFilterOperator(), renderRemainder()] }));
        function renderRemainder() {
            var _a;
            return ((0,jsx_runtime.jsx)(Popover/* default */.A, ListFilterGroupChipValue_assign({ on: "click", "data-testid": "FilterOperatorPopover", content: (0,jsx_runtime.jsx)("div", ListFilterGroupChipValue_assign({ className: classnames_default()(Chip/* default */.A.abbreviatedValuesContainer, (_a = {}, _a[Chip/* default */.A.short] = displayValuesRemainder.length < 3, _a)) }, { children: displayValuesRemainder.map(function (value, index) {
                        var renderedValue = getRenderedValue(value);
                        return ((0,jsx_runtime.jsx)("div", ListFilterGroupChipValue_assign({ className: classnames_default()(Chip/* default */.A.abbreviatedValueChip) }, { children: (0,jsx_runtime.jsx)("span", ListFilterGroupChipValue_assign({ className: classnames_default()(Chip/* default */.A.abbreviatedValue) }, { children: renderRemovableValue(renderedValue, value) })) }), index));
                    }) })) }, { children: (0,jsx_runtime.jsx)("span", ListFilterGroupChipValue_assign({ className: classnames_default()(Chip/* default */.A.abbreviatedValuesTrigger) }, { children: sprintf(l('and %d more'), displayValuesRemainder.length) })) })));
        }
    }
    function renderFilterOperator() {
        return ((0,jsx_runtime.jsx)(other_FilterOperator/* default */.A, { editable: editable, isMultiValue: isMultiValue, isExcluded: excluded, filterName: type, operator: op, onChange: onChangeOperator }));
    }
};

;// CONCATENATED MODULE: ./src/models/filters/components/ListFilterChip.tsx
var ListFilterChip_assign = (undefined && undefined.__assign) || function () {
    ListFilterChip_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ListFilterChip_assign.apply(this, arguments);
};







var ListFilterChip = function (_a) {
    var editable = _a.editable, info = _a.info, group = _a.group, groupType = _a.groupType, compact = _a.compact, onChangeOperator = _a.onChangeOperator, onRemove = _a.onRemove, onRemoveValue = _a.onRemoveValue;
    var excluded = group.excluded;
    var type = group.fieldName;
    var op = group.op;
    var handleRemove = function () {
        onRemove(type, op);
    };
    var renderer = groupType.renderer || (function (v, _info) { return v; });
    function renderBody() {
        var renderOperator = function () {
            return ((0,jsx_runtime.jsx)(other_FilterOperator/* default */.A, { editable: editable, isEqualOperator: true, isExcluded: excluded, isMultiValue: group.multiValue, filterName: group.fieldName, operator: group.op, onChange: onChangeOperator }));
        };
        var renderValue = function () {
            return ((0,jsx_runtime.jsx)(ListFilterGroupChipValue, { editable: editable, isMultiValue: group.multiValue, values: group.value, excluded: excluded, type: type, op: op, info: info, compact: compact, renderer: renderer, onChangeOperator: onChangeOperator, onRemoveValue: onRemoveValue }));
        };
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [renderOperator(), (0,jsx_runtime.jsx)("span", ListFilterChip_assign({ className: classnames_default()(Chip/* default */.A.values) }, { children: renderValue() }))] }));
    }
    return ((0,jsx_runtime.jsx)(useHighlightContext/* HighlightProvider */.i, { children: (0,jsx_runtime.jsx)(components_Chip/* default */.A, { label: groupType.label() || type, editable: editable, onRemove: handleRemove, content: renderBody(), excluded: excluded }) }));
};
/* harmony default export */ const components_ListFilterChip = (ListFilterChip);

;// CONCATENATED MODULE: ./src/models/filters/meta/groups/ListFilterGroupType.tsx
var ListFilterGroupType_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var ListFilterGroupType_assign = (undefined && undefined.__assign) || function () {
    ListFilterGroupType_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return ListFilterGroupType_assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};

/* eslint-disable no-useless-constructor */




var list = function (params) {
    return new ListFilterGroupType(ListFilterGroupType_assign(ListFilterGroupType_assign({}, params), { multiValue: false }));
};
var listMultivalued = function (params) {
    return new ListFilterGroupType(ListFilterGroupType_assign(ListFilterGroupType_assign({}, params), { multiValue: true }));
};
var ListFilterGroupType = /** @class */ (function (_super) {
    ListFilterGroupType_extends(ListFilterGroupType, _super);
    function ListFilterGroupType(_a) {
        var type = _a.type, multiValue = _a.multiValue, label = _a.label, renderer = _a.renderer, legacyType = _a.legacyType, facet = _a.facet, sort = _a.sort;
        var _this = _super.call(this, type, legacyType) || this;
        _this.multiValue = multiValue;
        _this.facet = facet;
        _this.label = label !== null && label !== void 0 ? label : (function () { return type; });
        _this.renderer = renderer;
        _this.sort = sort;
        return _this;
    }
    ListFilterGroupType.prototype.isSingularFacet = function () {
        return !this.multiValue;
    };
    ListFilterGroupType.prototype.add = function (filter, values) {
        this.toggle(filter, values, true, themeFilterUtils/* DEFAULT_OPERATOR */.ZP);
    };
    ListFilterGroupType.prototype.include = function (filter, values) {
        this.toggle(filter, values, false, themeFilterUtils/* DEFAULT_OPERATOR */.ZP);
    };
    ListFilterGroupType.prototype.exclude = function (filter, values) {
        this.toggle(filter, values, false, themeFilterUtils/* DEFAULT_EXCLUDE_OPERATOR */._U);
    };
    ListFilterGroupType.prototype.toggle = function (filter, values, keepExistent, operator) {
        var e_1, _a;
        var existent = filter.findByNameAndOperator(this.type, operator);
        if (existent) {
            if (keepExistent)
                existent.mergeUnion(values);
            else
                existent.mergeToggle(values);
        }
        var groups = filter.findGroupsNotMatchingOperator(this.type, operator);
        try {
            for (var groups_1 = __values(groups), groups_1_1 = groups_1.next(); !groups_1_1.done; groups_1_1 = groups_1.next()) {
                var group = groups_1_1.value;
                group.remove(values);
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (groups_1_1 && !groups_1_1.done && (_a = groups_1.return)) _a.call(groups_1);
            }
            finally { if (e_1) throw e_1.error; }
        }
        filter.filterGroups = filter.filterGroups.filter(function (group) { return (group instanceof FilterGroup/* ListFilterGroup */.II ? !group.isEmpty() : true); });
        if (!existent) {
            var newGroup = this.createFilterGroup(values, operator);
            filter.addFilterGroup(newGroup);
        }
    };
    ListFilterGroupType.prototype.createChipFromGroup = function (params) {
        var mapping = {
            authorId: 'authors',
            authorUid: 'authors',
            sourceId: 'sources',
            source: 'sources',
            tag: 'tags',
            trend: 'trends',
            channelId: 'authors',
            channelUid: 'authors',
            city: 'geos',
            region: 'geos',
            integration: 'integrations',
        };
        var mappingKey = mapping[this.type];
        var info = mappingKey ? params.entities[mappingKey] : undefined;
        return ((0,jsx_runtime.jsx)(components_ListFilterChip, ListFilterGroupType_assign({}, params, { info: info, groupType: this, group: params.group })));
    };
    ListFilterGroupType.prototype.createFilterGroup = function (value, op) {
        return new FilterGroup/* ListFilterGroup */.II(this.type, op, value, this.multiValue);
    };
    ListFilterGroupType.prototype.fromApi = function (data) {
        var v = JSON.parse(data.value);
        return new FilterGroup/* ListFilterGroup */.II(this.type, data.op, v, this.multiValue);
    };
    ListFilterGroupType.prototype.createFilterGroupFromLegacyFormat = function (legacyValue, exclude) {
        function deduceOperator(type) {
            if (type === 'tag')
                return exclude ? 'notContainsAll' : 'containsAll';
            return exclude ? 'notOneOf' : 'oneOf';
        }
        return new FilterGroup/* ListFilterGroup */.II(this.type, deduceOperator(this.type), legacyValue, this.multiValue);
    };
    return ListFilterGroupType;
}(FilterGroupType));


;// CONCATENATED MODULE: ./src/models/filters/utils/Sorting.ts
var sortByCountAndId = function (a, b) {
    var countComparison = b.count - a.count;
    if (countComparison !== 0) {
        return countComparison;
    }
    return a.id.toString().localeCompare(b.id.toString());
};

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorInterest.tsx


/* harmony default export */ const authorInterest = (listMultivalued({
    type: 'authorInterests',
    facet: { authorInterests: { size: 20 } },
    label: function () { return l('Author\'s interests'); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorInterestCategories.tsx


/* harmony default export */ const authorInterestCategories = (listMultivalued({
    type: 'authorInterestCategories',
    facet: { authorInterestCategories: { size: 20 } },
    label: function () { return l('Author\'s interest categories'); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorJob.tsx


/* harmony default export */ const authorJob = (listMultivalued({
    type: 'authorJobs',
    facet: { authorJobs: { size: 20 } },
    label: function () { return l('Author\'s occupations'); },
    sort: sortByCountAndId,
}));

// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/resourceType.tsx


/* harmony default export */ const resourceType = (list({
    type: 'resourceType',
    facet: { resourceTypes: {} },
    label: function () { return l('Source type'); },
    renderer: commonTranslations/* translate */.Tl,
}));

// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/containers/filters/filterPanels/SourceFormatFilter/components/Filter.tsx + 1 modules
var Filter = __webpack_require__("c1C6");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/sourceFormat.tsx





/* harmony default export */ const sourceFormat = (list({
    type: 'sourceFormat',
    facet: { sourceFormat: {} },
    label: function () { return l('Source-specific format'); },
    renderer: function (sourceFormatName) { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [Filter/* SOURCE_GROUPS */.t.find(function (group) { return sourceFormatName.toLowerCase().includes(group.toLowerCase()); }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,commonTranslations/* translate */.Tl)(sourceFormatName)] })); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageSubtype.tsx


/* harmony default export */ const imageSubtype = (list({
    type: 'imageSubtype',
    facet: { imageSubtypes: { size: 20 } },
    label: function () { return l('Image subtype'); },
    renderer: function (value) { return value; },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/discussion.tsx

/* harmony default export */ const discussion = (list({
    type: 'discussionId',
    label: function () { return l('Discussion ID'); },
    renderer: function (value) { return value; },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorAge.tsx

/* harmony default export */ const authorAge = (range({
    type: 'authorAge',
    facet: { authorAge: {} },
    label: function () { return l('Author\'s age'); },
    // TODO: renderer ???
}));

// EXTERNAL MODULE: ./src/utils/sentiments.ts
var sentiments = __webpack_require__("ofyo");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/sentiment.tsx






/* harmony default export */ const sentiment = (list({
    type: 'sentiment',
    facet: { sentiment: {} },
    label: function () { return l('Sentiment'); },
    renderer: function (value) { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: 12, type: sentiments/* SENTIMENT_ICON_TYPE */.Fh[value], color: sentiments/* SENTIMENT_ICON_COLOR */.Q2[value] }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,commonTranslations/* translate */.Tl)(value)] })); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageType.tsx


/* harmony default export */ const imageType = (list({
    type: 'imageType',
    facet: { imageTypes: { size: 20 } },
    label: function () { return l('Image type'); },
    renderer: function (value) { return value; },
    sort: sortByCountAndId,
}));

// EXTERNAL MODULE: ./src/utils/translations/getLanguageFilterTranslations.js
var getLanguageFilterTranslations = __webpack_require__("nJxM");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/language.tsx



var UNDEFINED_LANGUAGE_IDS = ['udf', 'unl', 'unc'];
/* harmony default export */ const language = (list({
    type: 'language',
    facet: { languages: { size: 20 } },
    label: function () { return l('Language'); },
    renderer: getLanguageFilterTranslations/* default */.A,
    sort: function (a, b) {
        var aIsUndefinedLang = UNDEFINED_LANGUAGE_IDS.includes(a.id.toString());
        var bIsUndefinedLang = UNDEFINED_LANGUAGE_IDS.includes(b.id.toString());
        if (aIsUndefinedLang !== bIsUndefinedLang) {
            return aIsUndefinedLang ? 1 : -1;
        }
        return sortByCountAndId(a, b);
    },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/postType.tsx


/* harmony default export */ const postType = (list({
    type: 'postType',
    facet: { postTypes: {} },
    label: function () { return l('Post type'); },
    renderer: commonTranslations/* translate */.Tl,
}));

// EXTERNAL MODULE: ./src/components/ui/SourceIcon/SourceIcon.tsx + 2 modules
var SourceIcon = __webpack_require__("tfIF");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/sourceId.tsx




/* harmony default export */ const sourceId = (list({
    type: 'sourceId',
    facet: { sources: { size: 20 } },
    label: function () { return l('Source'); },
    renderer: function (value, info) { return (info && info.get(value)
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: info.getIn([value, 'name']), size: 10 }), info.getIn([value, 'name'])] }))
        : l('Loading...')); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/source.tsx



/* harmony default export */ const source = (list({
    type: 'source',
    facet: { sources: { size: 20 } },
    label: function () { return l('Source'); },
    renderer: function (value) { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: value, size: 10 }), value] })); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/apiCode.tsx

/* harmony default export */ const apiCode = (list({
    type: 'apiCode',
    label: function () { return l('Api Code'); },
    renderer: function (value) { return value; },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/channelId.tsx




/* harmony default export */ const channelId = (list({
    type: 'channelId',
    legacyType: 'channel',
    facet: { channels: { size: 10 } },
    label: function () { return l('Publication place'); },
    renderer: function (value, info) { return (info && info.get(value)
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: info.getIn([value, 'sourceName']), size: 10 }), info.getIn([value, 'name']) || "@".concat(info.getIn([value, 'nickname']))] }))
        : l('Loading...')); },
    sort: sortByCountAndId,
}));

// EXTERNAL MODULE: ./src/components/ui/CountryFlag/index.ts + 2 modules
var CountryFlag = __webpack_require__("3LtM");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/country.tsx





/* harmony default export */ const country = (list({
    type: 'country',
    facet: { countries: { size: 10 } },
    label: function () { return l('Country'); },
    renderer: function (value) { return (value === 'unknown'
        ? l('Unknown')
        : (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(CountryFlag/* default */.A, { countryCode: value }), " ", (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(value) || value] })); },
    sort: function (a, b) {
        var aIdIsUnknown = a.id === 'unknown';
        var bIdIsUnknown = b.id === 'unknown';
        if (aIdIsUnknown !== bIdIsUnknown) {
            return aIdIsUnknown ? 1 : -1;
        }
        return sortByCountAndId(a, b);
    },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/hashtag.tsx


/* harmony default export */ const hashtag = (listMultivalued({
    type: 'hashtag',
    label: function () { return l('Hashtag'); },
    renderer: commonTranslations/* translate */.Tl,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/gender.tsx


/* harmony default export */ const gender = (list({
    type: 'gender',
    facet: { authorGender: {} },
    label: function () { return l('Gender'); },
    renderer: commonTranslations/* translate */.Tl,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/region.tsx




/* harmony default export */ const region = (list({
    type: 'region',
    legacyType: 'regionId',
    facet: { regionIds: { size: 10 } },
    label: function () { return l('Region'); },
    renderer: function (value, info) { return (info && info.get(value)
        ? (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(CountryFlag/* default */.A, { countryCode: info.getIn([value, 'countryCode']) }), " ", info.getIn([value, 'region'])] })
        : l('Loading...')); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/origin.tsx


/* harmony default export */ const origin = (list({
    type: 'origin',
    facet: { origins: {} },
    label: function () { return l('Collection type'); },
    renderer: commonTranslations/* translateOrigin */.BJ,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorId.tsx




/* harmony default export */ const authorId = (list({
    type: 'authorId',
    legacyType: 'author',
    facet: { authors: { size: 10 } },
    label: function () { return l('Author'); },
    renderer: function (value, info) { return (info && info.get(value)
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: info.getIn([value, 'sourceName']), size: 10 }), info.getIn([value, 'name']) || "@".concat(info.getIn([value, 'nickname']))] }))
        : l('Loading...')); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/host.tsx


/* harmony default export */ const host = (listMultivalued({
    type: 'host',
    facet: { hosts: { size: 10 } },
    label: function () { return l('Host'); },
    renderer: function (value) { return value || l('Loading...'); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/components/TextFilterChip.tsx
var TextFilterChip_assign = (undefined && undefined.__assign) || function () {
    TextFilterChip_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TextFilterChip_assign.apply(this, arguments);
};





var TextFilterChip = function (_a) {
    var editable = _a.editable, compact = _a.compact, group = _a.group, groupType = _a.groupType, onRemove = _a.onRemove;
    var type = group.fieldName;
    var op = group.op;
    var handleRemove = function () {
        onRemove(type, op);
    };
    function renderBody() {
        var _a;
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,FilterOperator/* renderNonSelectableOperatorIcon */.J6)('equal'), (0,jsx_runtime.jsx)("span", TextFilterChip_assign({ className: classnames_default()(Chip/* default */.A.values, (_a = {}, _a[Chip/* default */.A.compact] = compact, _a)) }, { children: groupType.renderer(group.value) }))] }));
    }
    return ((0,jsx_runtime.jsx)(components_Chip/* default */.A, { label: groupType.label(), editable: editable, onRemove: handleRemove, content: renderBody() }));
};
/* harmony default export */ const components_TextFilterChip = (TextFilterChip);

;// CONCATENATED MODULE: ./src/models/filters/meta/groups/TextFilterGroupType.tsx
var TextFilterGroupType_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var TextFilterGroupType_assign = (undefined && undefined.__assign) || function () {
    TextFilterGroupType_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TextFilterGroupType_assign.apply(this, arguments);
};

/* eslint-disable no-useless-constructor */



var TextFilterGroupType_text = function (params) {
    return new TextFilterGroupType(params);
};
var TextFilterGroupType = /** @class */ (function (_super) {
    TextFilterGroupType_extends(TextFilterGroupType, _super);
    function TextFilterGroupType(_a) {
        var type = _a.type, label = _a.label, renderer = _a.renderer;
        var _this = _super.call(this, type) || this;
        _this.label = label !== null && label !== void 0 ? label : (function () { return type; });
        _this.renderer = renderer;
        return _this;
    }
    TextFilterGroupType.prototype.add = function (filter, value) {
        var existent = filter.findByName(this.type);
        if (existent)
            filter.removeFilterGroup(existent);
        var newGroup = this.createFilterGroup(value, null);
        filter.addFilterGroup(newGroup);
    };
    TextFilterGroupType.prototype.include = function (filter, values) {
        throw new Error('TextFilterType: include is not implemented');
    };
    TextFilterGroupType.prototype.exclude = function (filter, values) {
        throw new Error('TextFilterType: exclude is not implemented');
    };
    TextFilterGroupType.prototype.createChipFromGroup = function (params) {
        return (0,jsx_runtime.jsx)(components_TextFilterChip, TextFilterGroupType_assign({}, params, { groupType: this, group: params.group }));
    };
    TextFilterGroupType.prototype.createFilterGroup = function (value, op) {
        return new FilterGroup/* TextFilterGroup */.nw(this.type, value);
    };
    TextFilterGroupType.prototype.fromApi = function (data) {
        return new FilterGroup/* TextFilterGroup */.nw(this.type, data.value);
    };
    TextFilterGroupType.prototype.createFilterGroupFromLegacyFormat = function (legacyValue, exclude) {
        return new FilterGroup/* TextFilterGroup */.nw(this.type, legacyValue);
    };
    return TextFilterGroupType;
}(FilterGroupType));


;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/text.tsx

/* harmony default export */ const configuration_text = (new TextFilterGroupType({
    type: 'text',
    label: function () { return l('Search'); },
    renderer: function (value) { return value; },
}));

// EXTERNAL MODULE: ./src/models/filters/utils/TypeUtils.ts
var TypeUtils = __webpack_require__("xFwg");
;// CONCATENATED MODULE: ./src/models/filters/components/BooleanFilterChip.tsx


var BooleanFilterChip = function (_a) {
    var editable = _a.editable, group = _a.group, groupType = _a.groupType, onRemove = _a.onRemove;
    var type = group.fieldName;
    var op = group.op;
    var handleRemove = function () {
        onRemove(type, op);
    };
    return ((0,jsx_runtime.jsx)(components_Chip/* default */.A, { label: groupType.label(group.value[0]), editable: editable, onRemove: handleRemove }));
};
/* harmony default export */ const components_BooleanFilterChip = (BooleanFilterChip);

;// CONCATENATED MODULE: ./src/models/filters/meta/groups/BooleanFilterGroupType.tsx
var BooleanFilterGroupType_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var BooleanFilterGroupType_assign = (undefined && undefined.__assign) || function () {
    BooleanFilterGroupType_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return BooleanFilterGroupType_assign.apply(this, arguments);
};





var BooleanFilterGroupType_boolean = function (params) {
    return new BooleanFilterGroupType(params);
};
var BooleanFilterGroupType = /** @class */ (function (_super) {
    BooleanFilterGroupType_extends(BooleanFilterGroupType, _super);
    function BooleanFilterGroupType(_a) {
        var type = _a.type, label = _a.label, renderer = _a.renderer;
        var _this = _super.call(this, type) || this;
        _this.label = label;
        _this.renderer = renderer;
        return _this;
    }
    BooleanFilterGroupType.prototype.add = function (filter, values) {
        throw new Error('BooleanFilterType: add is not implemented');
    };
    BooleanFilterGroupType.prototype.include = function (filter, values) {
        this.toggle(filter, ['true']);
    };
    BooleanFilterGroupType.prototype.exclude = function (filter, values) {
        this.toggle(filter, ['false']);
    };
    BooleanFilterGroupType.prototype.toggle = function (filter, value) {
        var existent = filter.findByName(this.type);
        if (existent && existent.value[0] === (0,TypeUtils/* toBoolean */.G)(value[0])) {
            filter.removeFilterGroup(existent);
            return;
        }
        var newGroup = this.createFilterGroup(value, null);
        if (existent) {
            filter.replace(existent, newGroup);
            return;
        }
        filter.addFilterGroup(newGroup);
    };
    BooleanFilterGroupType.prototype.createChipFromGroup = function (params) {
        return (0,jsx_runtime.jsx)(components_BooleanFilterChip, BooleanFilterGroupType_assign({}, params, { groupType: this, group: params.group }));
    };
    BooleanFilterGroupType.prototype.createFilterGroup = function (value, op) {
        return new FilterGroup/* BooleanFilterGroup */.Qr(this.type, (0,TypeUtils/* toBoolean */.G)(value[0]));
    };
    BooleanFilterGroupType.prototype.fromApi = function (data) {
        var v = JSON.parse(data.value);
        return new FilterGroup/* BooleanFilterGroup */.Qr(this.type, (0,TypeUtils/* toBoolean */.G)(v[0]));
    };
    BooleanFilterGroupType.prototype.createFilterGroupFromLegacyFormat = function (legacyValue, exclude) {
        return new FilterGroup/* BooleanFilterGroup */.Qr(this.type, (0,TypeUtils/* toBoolean */.G)(legacyValue));
    };
    return BooleanFilterGroupType;
}(FilterGroupType));


;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/indirect.tsx

/* harmony default export */ const indirect = (BooleanFilterGroupType_boolean({
    type: 'indirect',
    facet: { indirect: {} },
    label: function (value) { return (value ? l('Comments not matching query') : l('Comments matching query')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/rule.tsx



/* harmony default export */ const rule = (list({
    type: 'rule',
    label: function () { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "rules" }), " ", l('Rule applied')] })); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/alert.tsx



/* harmony default export */ const configuration_alert = (list({
    type: 'alert',
    label: function () { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "alerts-mark" }), " ", l('Alert applied')] })); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/tagged.tsx

/* harmony default export */ const tagged = (BooleanFilterGroupType_boolean({
    type: 'tagged',
    label: function (value) { return (value === true ? l('Tagged mentions') : l('Mentions without tags')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/withImage.tsx

/* harmony default export */ const withImage = (BooleanFilterGroupType_boolean({
    type: 'withImage',
    label: function (value) { return (value ? l('Mentions with images') : l('Mentions without images')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/city.tsx




/* harmony default export */ const city = (list({
    type: 'city',
    legacyType: 'cityId',
    facet: { cityIds: { size: 10 } },
    label: function () { return l('City'); },
    renderer: function (value, info) { return (info
        ? (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(CountryFlag/* default */.A, { countryCode: info.getIn([value, 'countryCode']) }), " ", info.getIn([value, 'city'])] })
        : l('Loading...')); },
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/channelSubscribers.tsx

/* harmony default export */ const channelSubscribers = (range({
    type: 'channelSubscribers',
    label: function () { return l('Publication place subscribers'); },
    // TODO: renderer ???
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/likes.tsx

/* harmony default export */ const likes = (range({
    type: 'likes',
    label: function () { return l('Likes'); },
    // TODO: renderer ???
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/starRating.tsx



/* harmony default export */ const starRating = (list({
    type: 'starRating',
    facet: { starRating: {} },
    label: function () { return l('Rating'); },
    renderer: function (v) { return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [v, (0,jsx_runtime.jsx)(Icon/* default */.A, { type: "star-full", color: "amber", size: 17, style: { position: 'relative', top: '1px' } })] })); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/textHash.tsx

/* harmony default export */ const textHash = (list({
    type: 'textHash',
    label: function () { return l('Text hash'); },
    // TODO: renderer ???
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/actions.tsx

/* harmony default export */ const actions = (listMultivalued({
    type: 'actions',
    label: function () { return l('Actions'); },
    // todo: renderer?
}));

// EXTERNAL MODULE: ./src/utils/translations/aspectTranslation.js
var aspectTranslation = __webpack_require__("0hC/");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/aspect.tsx
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};






/* harmony default export */ const aspect = (listMultivalued({
    type: 'aspect',
    facet: { aspects: { size: 20 }, sentimentAspects: {} },
    label: function () { return l('Aspect'); },
    renderer: function (value) {
        var _a = __read(value.split('_'), 2), aspect = _a[0], sentiment = _a[1];
        return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: 12, type: sentiments/* SENTIMENT_ICON_TYPE */.Fh[sentiment], color: sentiments/* SENTIMENT_ICON_COLOR */.Q2[sentiment] }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (0,aspectTranslation/* getAspectLabel */.zS)(aspect)] }));
    },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/characteristic.tsx

/* harmony default export */ const characteristic = (listMultivalued({
    type: 'characteristic',
    label: function () { return l('Characteristic'); },
    // todo: renderer?
}));

// EXTERNAL MODULE: ./src/utils/translations/collectionMethodsFilterTranslations.ts
var collectionMethodsFilterTranslations = __webpack_require__("Rotz");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/collectionMethod.tsx


/* harmony default export */ const collectionMethod = (listMultivalued({
    type: 'collectionMethod',
    facet: { collectionMethods: {} },
    label: function () { return l('Collection method'); },
    renderer: collectionMethodsFilterTranslations/* getCollectionMethodsFilterLabel */.z7,
}));

// EXTERNAL MODULE: ./src/utils/translations/contentTypeTranslations.js
var contentTypeTranslations = __webpack_require__("yJPc");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/contentType.tsx


/* harmony default export */ const contentType = (listMultivalued({
    type: 'contentType',
    facet: { contentTypes: { size: 10 } },
    label: function () { return l('Content type'); },
    renderer: contentTypeTranslations/* getContentTypeFilterTranslationLabel */.jf,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/emoji.tsx

/* harmony default export */ const emoji = (listMultivalued({
    type: 'emoji',
    label: function () { return l('Emoji'); },
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageActivities.tsx


/* harmony default export */ const imageActivities = (listMultivalued({
    type: 'imageActivities',
    facet: { imageActivities: { size: 20 } },
    label: function () { return l('Activity on image'); },
    sort: sortByCountAndId,
    // todo: renderer?
}));

// EXTERNAL MODULE: ./src/utils/translations/logoTranslations.ts
var logoTranslations = __webpack_require__("U8ND");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageBrand.tsx



/* harmony default export */ const imageBrand = (listMultivalued({
    type: 'imageBrand',
    facet: { imageBrands: { size: 20 } },
    label: function () { return l('Logo'); },
    renderer: logoTranslations/* translateLogo */.I,
    sort: sortByCountAndId,
}));

// EXTERNAL MODULE: ./src/utils/getColorName.js
var getColorName = __webpack_require__("HIua");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageColors.tsx



/* harmony default export */ const imageColors = (listMultivalued({
    type: 'imageColors',
    facet: { imageColors: { size: 20 } },
    label: function () { return l('Image color'); },
    renderer: getColorName/* default */.A,
    sort: sortByCountAndId,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageContentSensitivity.tsx

/* harmony default export */ const imageContentSensitivity = (listMultivalued({
    type: 'imageContentSensitivity',
    facet: { imageContentSensitivity: { size: 20 } },
    label: function () { return l('Image content sensitivity'); },
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageObject.tsx


/* harmony default export */ const imageObject = (listMultivalued({
    type: 'imageObject',
    facet: { imageObjects: { size: 20 } },
    label: function () { return l('Object'); },
    sort: sortByCountAndId,
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imagePeople.tsx


/* harmony default export */ const imagePeople = (listMultivalued({
    type: 'imagePeople',
    facet: { imagePeople: { size: 20 } },
    label: function () { return l('Person on image'); },
    sort: sortByCountAndId,
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/imageScene.tsx


/* harmony default export */ const imageScene = (listMultivalued({
    type: 'imageScene',
    facet: { imageScenes: { size: 20 } },
    label: function () { return l('Scene'); },
    sort: sortByCountAndId,
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/link.tsx


/* harmony default export */ const configuration_link = (listMultivalued({
    type: 'link',
    facet: { links: { size: 10 } },
    label: function () { return l('Link'); },
    sort: sortByCountAndId,
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/objects.tsx

/* harmony default export */ const objects = (listMultivalued({
    type: 'objects',
    legacyType: 'object',
    label: function () { return l('Object'); },
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/phrase.tsx

/* harmony default export */ const phrase = (listMultivalued({
    type: 'phrase',
    label: function () { return l('Phrase'); },
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/sentimentAffects.tsx

/* harmony default export */ const sentimentAffects = (listMultivalued({
    type: 'sentimentAffects',
    facet: { sentimentAffects: { size: 20 } },
    label: function () { return l('Sentiment affect'); },
    // todo: renderer?
}));

// EXTERNAL MODULE: ./src/utils/translations/subjectsFilterTranslation.js
var subjectsFilterTranslation = __webpack_require__("/KsC");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/subject.tsx



/* harmony default export */ const subject = (listMultivalued({
    type: 'subject',
    facet: { subjects: { size: 90 } },
    label: function () { return l('Subject'); },
    renderer: subjectsFilterTranslation/* getSubjectsFilterTranslationLabel */.zE,
    sort: sortByCountAndId,
}));

// EXTERNAL MODULE: ./src/utils/translations/autoCategoriesTranslation.js
var autoCategoriesTranslation = __webpack_require__("e4Wn");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/systemTags.tsx


/* harmony default export */ const systemTags = (listMultivalued({
    type: 'systemTags',
    legacyType: 'systemTag',
    facet: { systemTags: {} },
    label: function () { return l('Category'); },
    renderer: function (value) { return (0,autoCategoriesTranslation/* getAutoCategoryTranslation */.Fj)(value).label; },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/parentPostId.tsx

/* harmony default export */ const parentPostId = (list({
    type: 'parentPostId',
    // todo: renderer?
    label: function () { return l('Parent post ID'); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/tag.tsx

/* harmony default export */ const tag = (listMultivalued({
    type: 'tag',
    facet: { tags: {} },
    label: function () { return l('Tag'); },
    renderer: function (value, info) { return (info ? info.getIn([value, 'name']) : l('Loading...')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/trend.tsx





/* harmony default export */ const trend = (listMultivalued({
    type: 'trend',
    facet: { trends: {} },
    label: function () { return l('Trend'); },
    renderer: function (value, info) { return (info
        ? ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { size: 12, type: "circle", color: sentiments/* SENTIMENT_ICON_COLOR */.Q2[info.getIn([value, 'sentiment'])] }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), info.getIn([value, 'name'])] }))
        : l('Loading...')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/word.tsx

/* harmony default export */ const word = (listMultivalued({
    type: 'word',
    label: function () { return l('Word'); },
    // todo: renderer?
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/ocr.tsx

/* harmony default export */ const ocr = (new TextFilterGroupType({
    type: 'ocr',
    label: function () { return l('OCR Search'); },
    renderer: function (value) { return value; },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/partOfTrend.tsx

/* harmony default export */ const partOfTrend = (BooleanFilterGroupType_boolean({
    type: 'partOfTrend',
    label: function (value) { return (value === true ? l('Part of trend') : l('Mentions without trend')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/wordCount.tsx

/* harmony default export */ const wordCount = (range({
    type: 'wordCount',
    facet: { wordCount: {} },
    label: function () { return l('Word count'); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/hasSentimentCorrection.tsx

/* harmony default export */ const hasSentimentCorrection = (BooleanFilterGroupType_boolean({
    type: 'hasSentimentCorrection',
    label: function (value) { return (value === true ? l('Has sentiment correction') : l('Has not sentiment correction')); },
}));

// EXTERNAL MODULE: ./src/utils/translations/countryGroupTranslations.ts + 1 modules
var countryGroupTranslations = __webpack_require__("OA2L");
;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/countryGroup.tsx


/* harmony default export */ const countryGroup = (listMultivalued({
    type: 'countryGroup',
    facet: { countryGroups: { size: 10 } },
    label: function () { return l('World region'); },
    renderer: countryGroupTranslations/* getCountryGroupLabel */.Ip,
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/sponsored.tsx

/* harmony default export */ const sponsored = (BooleanFilterGroupType_boolean({
    type: 'sponsored',
    facet: { sponsored: {} },
    label: function (value) { return (value ? l('Sponsored posts and related comments') : l('Excluding sponsored posts and related comments')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/authorUid.tsx



/* harmony default export */ const authorUid = (list({
    type: 'authorUid',
    legacyType: 'author',
    facet: { authors: { size: 10 } },
    label: function () { return l('Author'); },
    renderer: function (value, info) { return (info && info.get(value)
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: info.getIn([value, 'sourceName']), size: 10 }), info.getIn([value, 'name']) || "@".concat(info.getIn([value, 'nickname']))] }))
        : l('Loading...')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/configuration/channelUid.tsx



/* harmony default export */ const channelUid = (list({
    type: 'channelUid',
    legacyType: 'channel',
    facet: { channels: { size: 10 } },
    label: function () { return l('Publication place'); },
    renderer: function (value, info) { return (info && info.get(value)
        ? ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(SourceIcon/* default */.A, { name: info.getIn([value, 'sourceName']), size: 10 }), info.getIn([value, 'name']) || "@".concat(info.getIn([value, 'nickname']))] }))
        : l('Loading...')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/FilterGroupTypeCatalog.tsx



































































var createFilterGroupFromState = function (x) {
    return createFilterGroup(x.fieldName, x.op, x.value instanceof Array ? Array.from(x.value) : x.value);
};
var createFilterGroup = function (fieldName, op, value) {
    var type = FilterGroupTypeCatalog.get(fieldName);
    return type.createFilterGroup(value, op || themeFilterUtils/* DEFAULT_OPERATOR */.ZP);
};
var FilterGroupTypeCatalog = /** @class */ (function () {
    function FilterGroupTypeCatalog() {
    }
    FilterGroupTypeCatalog.initialize = function () {
        // Please keep this list grouped and sorted alphabetically according to backend
        // https://github.com/youscan/youscan/blob/master/Source/Accounting.Legacy.Contracts/MentionsFilterNew.cs#L34
        this.add(configuration_text);
        this.add(ocr);
        // Range
        this.add(authorAge);
        this.add(authorSubscribers);
        this.add(channelSubscribers);
        this.add(likes);
        this.add(textHash);
        this.add(wordCount);
        // Boolean
        this.add(indirect);
        this.add(tagged);
        this.add(withImage);
        this.add(partOfTrend);
        this.add(sponsored);
        this.add(hasSentimentCorrection);
        // ListMultivalued
        this.add(actions); // action
        this.add(aspect);
        this.add(characteristic);
        this.add(collectionMethod);
        this.add(contentType);
        this.add(emoji);
        this.add(hashtag);
        this.add(host);
        this.add(imageActivities); // imageActivity
        this.add(imageBrand);
        this.add(imageColors); // imageColor
        this.add(imageContentSensitivity);
        this.add(imageObject);
        this.add(imagePeople); // imagePerson
        this.add(imageScene);
        this.add(configuration_link);
        this.add(objects); // object
        this.add(phrase);
        this.add(sentimentAffects);
        this.add(subject);
        this.add(systemTags); // systemTag
        this.add(tag);
        this.add(trend);
        this.add(word);
        this.add(authorInterest);
        this.add(authorInterestCategories);
        this.add(authorJob);
        this.add(countryGroup);
        // List
        this.add(configuration_alert);
        this.add(apiCode);
        this.add(authorId);
        this.add(authorUid);
        this.add(channelId);
        this.add(channelUid);
        this.add(city);
        this.add(country);
        this.add(discussion);
        this.add(gender);
        this.add(imageSubtype);
        this.add(imageType);
        this.add(language);
        this.add(origin);
        this.add(parentPostId);
        this.add(postType);
        this.add(starRating);
        this.add(region);
        this.add(resourceType);
        this.add(rule);
        this.add(sentiment);
        this.add(sourceId);
        this.add(source);
        this.add(sourceFormat);
    };
    FilterGroupTypeCatalog.add = function (type) {
        this.types[type.type] = type;
        if (type.legacyType)
            this.legacyTypes[type.legacyType] = type;
        if (type.getFacet())
            this.facets.push(type);
    };
    FilterGroupTypeCatalog.exists = function (type) {
        var _a;
        var t = (_a = this.types[type]) !== null && _a !== void 0 ? _a : this.legacyTypes[type];
        return !!t;
    };
    FilterGroupTypeCatalog.get = function (type) {
        var _a;
        var t = (_a = this.types[type]) !== null && _a !== void 0 ? _a : this.legacyTypes[type];
        if (t)
            return t;
        throw new Error("FilterTypeError: Unknown filter type \u2013 \"".concat(type, "\""));
    };
    FilterGroupTypeCatalog.types = {};
    FilterGroupTypeCatalog.legacyTypes = {};
    FilterGroupTypeCatalog.facets = [];
    return FilterGroupTypeCatalog;
}());

FilterGroupTypeCatalog.initialize();


/***/ }),

/***/ "qBsj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  Nk: () => (/* binding */ FilterOptionTypeCatalog),
  K3: () => (/* binding */ createFilterOption)
});

// UNUSED EXPORTS: createFilterOptionFromState

// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/models/filters/FilterOption.ts
var FilterOption = __webpack_require__("XA9s");
;// CONCATENATED MODULE: ./src/models/filters/meta/FilterOptionType.tsx
var FilterOptionType = /** @class */ (function () {
    function FilterOptionType(type, label, renderer) {
        this.type = type;
        this.label = label;
        this.renderer = renderer;
    }
    return FilterOptionType;
}());


// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/models/filters/components/Chip.tsx
var Chip = __webpack_require__("hdiB");
;// CONCATENATED MODULE: ./src/models/filters/components/FilterOptionChip.tsx



var FilterOptionChip = function (_a) {
    var option = _a.option, optionType = _a.optionType, editable = _a.editable, onRemove = _a.onRemove;
    var type = option.name;
    var handleRemove = function () {
        onRemove(type);
    };
    var chipBody = optionType.renderer && ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Space/* default */.A, {}), ":", (0,jsx_runtime.jsx)(Space/* default */.A, {}), optionType.renderer(option.value)] }));
    return ((0,jsx_runtime.jsx)(Chip/* default */.A, { label: optionType.label(option.value), editable: editable, onRemove: handleRemove, content: chipBody }));
};
/* harmony default export */ const components_FilterOptionChip = (FilterOptionChip);

;// CONCATENATED MODULE: ./src/models/filters/meta/options/ArrayFilterOptionType.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};




var arrayFilterOption = function (params) {
    return new ArrayFilterOptionType(params);
};
var ArrayFilterOptionType = /** @class */ (function (_super) {
    __extends(ArrayFilterOptionType, _super);
    function ArrayFilterOptionType(_a) {
        var type = _a.type, label = _a.label, renderer = _a.renderer;
        return _super.call(this, type, label, renderer) || this;
    }
    ArrayFilterOptionType.prototype.createFilterOption = function (value) {
        return new FilterOption/* ArrayFilterOption */.jt(this.type, value);
    };
    ArrayFilterOptionType.prototype.createChipFromOption = function (params) {
        return ((0,jsx_runtime.jsx)(components_FilterOptionChip, __assign({}, params, { optionType: this })));
    };
    return ArrayFilterOptionType;
}(FilterOptionType));


;// CONCATENATED MODULE: ./src/models/filters/domain/optionConfigurtion/similar.tsx



/* harmony default export */ const similar = (arrayFilterOption({
    type: 'similar',
    label: function () { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "similar" }), " ", l('Similar to the mention')] })); },
    renderer: (function (value) { return value.join(', '); }),
}));

;// CONCATENATED MODULE: ./src/models/filters/meta/options/SimpleFilterOptionType.tsx
var SimpleFilterOptionType_extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var SimpleFilterOptionType_assign = (undefined && undefined.__assign) || function () {
    SimpleFilterOptionType_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return SimpleFilterOptionType_assign.apply(this, arguments);
};




var simpleFilterOption = function (params) {
    return new SimpleFilterOptionType(params);
};
var SimpleFilterOptionType = /** @class */ (function (_super) {
    SimpleFilterOptionType_extends(SimpleFilterOptionType, _super);
    function SimpleFilterOptionType(_a) {
        var type = _a.type, label = _a.label, renderer = _a.renderer;
        return _super.call(this, type, label, renderer) || this;
    }
    SimpleFilterOptionType.prototype.createFilterOption = function (value) {
        return new FilterOption/* SimpleFilterOption */.q0(this.type, value);
    };
    SimpleFilterOptionType.prototype.createChipFromOption = function (params) {
        return ((0,jsx_runtime.jsx)(components_FilterOptionChip, SimpleFilterOptionType_assign({}, params, { optionType: this })));
    };
    return SimpleFilterOptionType;
}(FilterOptionType));


;// CONCATENATED MODULE: ./src/models/filters/domain/optionConfigurtion/samplingRate.tsx

/* harmony default export */ const samplingRate = (simpleFilterOption({
    type: 'samplingRate',
    label: function () { return l('Sampling rate'); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/optionConfigurtion/duplicates.tsx



/* harmony default export */ const duplicates = (arrayFilterOption({
    type: 'duplicates',
    label: function () { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "duplicate" }), " ", l('Duplicates to the mention')] })); },
    renderer: function (value) { return value.join(', '); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/optionConfigurtion/discussions.tsx



/* harmony default export */ const discussions = (arrayFilterOption({
    type: 'discussions',
    label: function () { return ((0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "comment" }), " ", l('Discussion')] })); },
    renderer: function (value) { return value.join(', '); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/optionConfigurtion/withTextHighlight.tsx

/* harmony default export */ const withTextHighlight = (simpleFilterOption({
    type: 'withTextHighlight',
    label: function (v) { return (v === 'true' ? l('Mentions with text highlight') : l('Mentions without text highlight')); },
}));

;// CONCATENATED MODULE: ./src/models/filters/domain/FilterOptionTypeCatalog.tsx





var createFilterOptionFromState = function (x) {
    return createFilterOption(x.value, x.name);
};
var createFilterOption = function (value, type) {
    var t = FilterOptionTypeCatalog.get(type);
    if (!t)
        throw new Error("FilterOptionTypeError: Unknown filter option type \u2013 \"".concat(type, "\""));
    return t.createFilterOption(value);
};
var FilterOptionTypeCatalog = /** @class */ (function () {
    function FilterOptionTypeCatalog() {
    }
    FilterOptionTypeCatalog.initialize = function () {
        this.add(similar);
        this.add(withTextHighlight);
        this.add(duplicates);
        this.add(samplingRate);
        this.add(discussions);
    };
    FilterOptionTypeCatalog.add = function (type) {
        this.types[type.type] = type;
    };
    FilterOptionTypeCatalog.exists = function (type) {
        return !!this.types[type];
    };
    FilterOptionTypeCatalog.get = function (name) {
        var t = this.types[name];
        if (t)
            return t;
        throw new Error("FilterOptionTypeError: Unknown filter option \u2013 \"".concat(name, "\""));
    };
    FilterOptionTypeCatalog.types = {};
    return FilterOptionTypeCatalog;
}());

FilterOptionTypeCatalog.initialize();


/***/ }),

/***/ "KkiJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   fd: () => (/* binding */ deduceOperator),
/* harmony export */   ky: () => (/* binding */ toWeirdValue),
/* harmony export */   tZ: () => (/* binding */ fromWeirdValue)
/* harmony export */ });
/* unused harmony exports createFromRange, createToRange, createEmptyRange, createRange */
function createFromRange(from) {
    return createRange(from, undefined);
}
function createToRange(to) {
    return createRange(undefined, to);
}
function createEmptyRange() {
    return createRange(undefined, undefined);
}
function createRange(from, to) {
    return {
        from: from ? "".concat(from) : undefined,
        to: to ? "".concat(to) : undefined,
    };
}
function deduceOperator(value) {
    if (!value.from && !value.to)
        throw new Error("can't deduce operator from empty range");
    if (value.from && value.to)
        return 'range';
    if (!value.from)
        return 'lessOrEqual';
    return 'greaterOrEqual';
}
function toWeirdValue(value) {
    if (value.from && value.to)
        return ["".concat(value.from), "".concat(value.to)];
    if (value.from)
        return "".concat(value.from);
    return "".concat(value.to);
}
function fromWeirdValue(values, op) {
    if (op === 'range')
        return { from: values[0], to: values[1] };
    if (op === 'greaterOrEqual')
        return { from: values };
    return { to: values };
}


/***/ }),

/***/ "xFwg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   G: () => (/* binding */ toBoolean)
/* harmony export */ });
function toBoolean(value) {
    switch (value) {
        case 'true':
            return true;
        case 'false':
            return false;
        case true:
            return true;
        case false:
            return false;
        default:
            throw new Error("Given value is not boolean: ".concat(value));
    }
}


/***/ }),

/***/ "vQyv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   BZ: () => (/* binding */ History),
/* harmony export */   Z5: () => (/* binding */ HISTORY_MODE),
/* harmony export */   cN: () => (/* binding */ DUMMY_THREAD_ID)
/* harmony export */ });
/* harmony import */ var models_insightsCopilot_Question__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("eNss");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("9jXX");


var DUMMY_THREAD_ID = 'loading';
var HISTORY_MODE;
(function (HISTORY_MODE) {
    HISTORY_MODE["DETAILED"] = "detailed";
    HISTORY_MODE["GENERAL"] = "general";
    HISTORY_MODE["DISABLED"] = "disabled";
})(HISTORY_MODE || (HISTORY_MODE = {}));
var History = /** @class */ (function () {
    function History(_a) {
        var mode = _a.mode, threads = _a.threads, currentThreadId = _a.currentThreadId;
        this.mode = mode || HISTORY_MODE.DISABLED;
        this.currentThreadId = currentThreadId || null;
        this.threads = this.prepareThreads(threads);
    }
    History.prototype.prepareThreads = function (threads) {
        var _this = this;
        return threads.map(function (thread) {
            var preparedQuestions = _this.prepareQuestions(thread.items);
            if (!preparedQuestions.length)
                return null;
            return {
                threadId: thread.threadId,
                questions: preparedQuestions,
            };
        }).filter(function (question) { return question; });
    };
    History.prototype.prepareQuestions = function (questions) {
        return questions.map(function (question) {
            if (question.hidden || question.canceled)
                return null;
            if (question.status === 'failed' && (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_1__/* .isDateOlderThanFiveMinutes */ .x9)(new Date(question.date.concat('Z'))))
                return null;
            return new models_insightsCopilot_Question__WEBPACK_IMPORTED_MODULE_0__/* .Question */ .vN(question);
        }).filter(function (question) { return question; }).reverse();
    };
    History.prototype.getDummyThread = function () {
        return {
            threadId: DUMMY_THREAD_ID,
            questions: [new models_insightsCopilot_Question__WEBPACK_IMPORTED_MODULE_0__/* .Question */ .vN({
                    id: models_insightsCopilot_Question__WEBPACK_IMPORTED_MODULE_0__/* .DUMMY_QUESTION_ID */ .CY,
                    date: null,
                    request: l('Preparing your question...', 'insightsCopilot'),
                    response: [],
                    status: models_insightsCopilot_Question__WEBPACK_IMPORTED_MODULE_0__/* .QuestionStatus */ .Tq.PENDING,
                    hidden: false,
                    voted: false,
                })],
        };
    };
    Object.defineProperty(History.prototype, "isEmpty", {
        get: function () {
            return this.threads.length === 0;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(History.prototype, "isLoading", {
        get: function () {
            return !!this.threads.find(function (thread) { return thread.questions.find(function (question) { return question.status === 'pending'; }); });
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(History.prototype, "isOpen", {
        get: function () {
            return this.mode !== HISTORY_MODE.DISABLED;
        },
        enumerable: false,
        configurable: true
    });
    History.prototype.has = function (threadId) {
        if (threadId === DUMMY_THREAD_ID)
            return true;
        return !!this.threads.find(function (thread) { return String(thread.threadId) === threadId; });
    };
    History.prototype.getDisplayedThreadIndex = function () {
        var _this = this;
        return this.threads.findIndex(function (thread) { return String(thread.threadId) === _this.currentThreadId; });
    };
    History.prototype.getDisplayedThread = function () {
        if (this.currentThreadId === DUMMY_THREAD_ID)
            return this.getDummyThread();
        var threadIndex = this.getDisplayedThreadIndex();
        return this.threads[threadIndex];
    };
    History.prototype.getPendingThreadId = function () {
        var _a;
        return (_a = this.threads.find(function (thread) { return thread.questions.find(function (question) { return question.status === models_insightsCopilot_Question__WEBPACK_IMPORTED_MODULE_0__/* .QuestionStatus */ .Tq.PENDING; }); })) === null || _a === void 0 ? void 0 : _a.threadId;
    };
    History.prototype.getLatestThreadId = function () {
        if (this.isEmpty)
            return null;
        return this.threads[0].threadId;
    };
    return History;
}());



/***/ }),

/***/ "eNss":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CY: () => (/* binding */ DUMMY_QUESTION_ID),
/* harmony export */   Tq: () => (/* binding */ QuestionStatus),
/* harmony export */   i2: () => (/* binding */ QuestionResponseAction),
/* harmony export */   vN: () => (/* binding */ Question)
/* harmony export */ });
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+MLa");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

var DUMMY_QUESTION_ID = 0;
var QuestionStatus;
(function (QuestionStatus) {
    QuestionStatus["PENDING"] = "pending";
    QuestionStatus["SUCCESS"] = "success";
    QuestionStatus["FAILED"] = "failed";
})(QuestionStatus || (QuestionStatus = {}));
var QuestionResponseAction;
(function (QuestionResponseAction) {
    QuestionResponseAction["ANALYSE_MENTIONS"] = "analyse_mentions";
    QuestionResponseAction["BUILD_CHART"] = "build_chart";
    QuestionResponseAction["GATHER_STATISTICS"] = "gather_statistics";
    QuestionResponseAction["EXTRACT_FILTERS"] = "extract_filters";
    QuestionResponseAction["DISPLAY_TEXT"] = "display_text";
})(QuestionResponseAction || (QuestionResponseAction = {}));
var Question = /** @class */ (function () {
    function Question(_a) {
        var id = _a.id, threadId = _a.threadId, date = _a.date, request = _a.request, response = _a.response, status = _a.status, hidden = _a.hidden, voted = _a.voted, feedback = _a.feedback, canceled = _a.canceled;
        this.id = id || null;
        this.threadId = threadId || null;
        this.date = date || (new Date()).toString();
        this.request = request || '';
        this.response = this.prepareResponse(response);
        this.status = status || QuestionStatus.PENDING;
        this.hidden = hidden || false;
        this.voted = voted || false;
        this.feedback = feedback || null;
        this.canceled = canceled || false;
    }
    Question.prototype.prepareResponse = function (response) {
        if (!response)
            return [];
        return response.map(function (x) {
            var _a, _b;
            if (x.action !== QuestionResponseAction.DISPLAY_TEXT) {
                if ((_b = (_a = x.answer) === null || _a === void 0 ? void 0 : _a.structured) === null || _b === void 0 ? void 0 : _b.filters) {
                    return __assign(__assign({}, x), { filter: models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.fromApi(x.answer.structured.filters) });
                }
            }
            return x;
        });
    };
    Object.defineProperty(Question.prototype, "isLoading", {
        get: function () {
            return this.status === QuestionStatus.PENDING;
        },
        enumerable: false,
        configurable: true
    });
    return Question;
}());



/***/ }),

/***/ "9I83":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   P: () => (/* binding */ DEFAULT_LANGUAGE_CODE),
/* harmony export */   w: () => (/* binding */ Settings)
/* harmony export */ });
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);

var DEFAULT_LANGUAGE_CODE = 'auto';
var Settings = /** @class */ (function () {
    function Settings(_a) {
        var usedQuestionsCount = _a.usedQuestionsCount, questionsLimit = _a.questionsLimit, showWhenTrendsClicked = _a.showWhenTrendsClicked, showWhenAspectsClicked = _a.showWhenAspectsClicked, showWhenSubjectsClicked = _a.showWhenSubjectsClicked, language = _a.language;
        this.usedQuestionsCount = usedQuestionsCount;
        this.questionsLimit = questionsLimit;
        this.showWhenTrendsClicked = (0,lodash__WEBPACK_IMPORTED_MODULE_0__.isBoolean)(showWhenTrendsClicked) ? showWhenTrendsClicked : true;
        this.showWhenAspectsClicked = (0,lodash__WEBPACK_IMPORTED_MODULE_0__.isBoolean)(showWhenAspectsClicked) ? showWhenAspectsClicked : true;
        this.showWhenSubjectsClicked = (0,lodash__WEBPACK_IMPORTED_MODULE_0__.isBoolean)(showWhenSubjectsClicked) ? showWhenSubjectsClicked : true;
        this.language = language || DEFAULT_LANGUAGE_CODE;
    }
    Settings.prototype.getAvailableQuestionsCount = function () {
        var count = this.questionsLimit - this.usedQuestionsCount;
        return count < 0 ? 0 : count;
    };
    Settings.prototype.changeLanguage = function (newVal) {
        this.language = newVal;
    };
    Settings.prototype.changeShowWhenTrendsClicked = function (newVal) {
        this.showWhenTrendsClicked = newVal;
    };
    Settings.prototype.changeShowWhenAspectsClicked = function (newVal) {
        this.showWhenAspectsClicked = newVal;
    };
    Settings.prototype.changeShowWhenSubjectsClicked = function (newVal) {
        this.showWhenSubjectsClicked = newVal;
    };
    Settings.prototype.toApi = function () {
        return {
            showWhenTrendsClicked: this.showWhenTrendsClicked,
            showWhenAspectsClicked: this.showWhenAspectsClicked,
            showWhenSubjectsClicked: this.showWhenSubjectsClicked,
            language: this.language,
        };
    };
    return Settings;
}());



/***/ }),

/***/ "RHZg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   h: () => (/* binding */ accountModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("kHEK");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};


var AccountModel = /** @class */ (function (_super) {
    __extends(AccountModel, _super);
    function AccountModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            accountInfo: { info: null, loading: true, error: null },
            accountHistoryStats: { info: null, loading: true, error: null },
            accountLogos: { logos: [], limit: null, error: null, loading: false },
        };
        return _this;
    }
    AccountModel.prototype.fetchAccount = function () {
        var account_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountInfo.loading = true;
                        state.accountInfo.error = null;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.account.get)];
                case 1:
                    account_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountInfo.loading = false;
                        state.accountInfo.info = account_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountInfo.loading = false;
                        state.accountInfo.error = error_1;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    AccountModel.prototype.fetchAccountHistoryStats = function () {
        var accountHistoryStats_1, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountHistoryStats.loading = true;
                        state.accountHistoryStats.error = null;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.account.getHistoryStats)];
                case 1:
                    accountHistoryStats_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountHistoryStats.loading = false;
                        state.accountHistoryStats.info = accountHistoryStats_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountHistoryStats.loading = false;
                        state.accountHistoryStats.error = error_2;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    AccountModel.prototype.fetchAccountLogos = function () {
        var response_1, error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountLogos.loading = true;
                        state.accountLogos.error = null;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.account.getAccountLogos)];
                case 1:
                    response_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        var _a;
                        state.accountLogos.loading = false;
                        state.accountLogos.logos = response_1.result.logos;
                        state.accountLogos.limit = (_a = response_1.result) === null || _a === void 0 ? void 0 : _a.limit;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_3 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountLogos.loading = false;
                        state.accountLogos.error = error_3;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], AccountModel.prototype, "fetchAccount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], AccountModel.prototype, "fetchAccountHistoryStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], AccountModel.prototype, "fetchAccountLogos", null);
    AccountModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('Account')
    ], AccountModel);
    return AccountModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var accountModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(AccountModel);


/***/ }),

/***/ "FFtF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $b: () => (/* binding */ isYoutubeReviewAccount),
/* harmony export */   B9: () => (/* binding */ getDeepHistoryCollectionsLimit),
/* harmony export */   Bh: () => (/* binding */ getAccountExpirationDate),
/* harmony export */   C8: () => (/* binding */ canBrandingCustomDashboards),
/* harmony export */   Ej: () => (/* binding */ isAccountLogosLoading),
/* harmony export */   Gf: () => (/* binding */ getAccountInfo),
/* harmony export */   Hg: () => (/* binding */ isIntercomEnabled),
/* harmony export */   Hj: () => (/* binding */ canAddAccountLogos),
/* harmony export */   KQ: () => (/* binding */ announcementsEnabled),
/* harmony export */   Om: () => (/* binding */ getAccountCoverage),
/* harmony export */   PP: () => (/* binding */ isVisualInsightsEnabled),
/* harmony export */   PU: () => (/* binding */ getAccountId),
/* harmony export */   Po: () => (/* binding */ canShowAudienceInsights),
/* harmony export */   Qf: () => (/* binding */ isAudioMonitoringEnabled),
/* harmony export */   S3: () => (/* binding */ isApiAddonAvailable),
/* harmony export */   TT: () => (/* binding */ isInsightsCopilotEnabled),
/* harmony export */   UE: () => (/* binding */ isAccountDocumentsEnabled),
/* harmony export */   W: () => (/* binding */ canShowFacebookForbiddenChannel),
/* harmony export */   Yu: () => (/* binding */ getNextDeepCollectionAvailableAt),
/* harmony export */   ZI: () => (/* binding */ getDeepHistoryCollectionsUsed),
/* harmony export */   _w: () => (/* binding */ isWordReportEnabled),
/* harmony export */   a4: () => (/* binding */ isAccountTrial),
/* harmony export */   aL: () => (/* binding */ isAccountAccessAllowed),
/* harmony export */   bt: () => (/* binding */ getAccountHistoryStats),
/* harmony export */   dX: () => (/* binding */ isDeepHistoryCollectionAllowed),
/* harmony export */   dk: () => (/* binding */ isSsoEnabled),
/* harmony export */   gW: () => (/* binding */ getAccountLogos),
/* harmony export */   hZ: () => (/* binding */ getCurrentThemeLogos),
/* harmony export */   hj: () => (/* binding */ canShowSocialSearch),
/* harmony export */   kI: () => (/* binding */ isInstagramHashtagsAllowed),
/* harmony export */   nl: () => (/* binding */ isDeepHistoryCollectionDisabled),
/* harmony export */   pb: () => (/* binding */ getAccountExpirationAlert),
/* harmony export */   t8: () => (/* binding */ isAccountHistoryStatsLoading),
/* harmony export */   ts: () => (/* binding */ getSubscriptionFeatureValue),
/* harmony export */   uk: () => (/* binding */ canManageCustomDashboards),
/* harmony export */   v_: () => (/* binding */ getIsFacebookComplianceAccount),
/* harmony export */   wr: () => (/* binding */ getAccountOrigin),
/* harmony export */   yW: () => (/* binding */ getExpectedDeactivationDate),
/* harmony export */   yw: () => (/* binding */ shouldShowExpirationAlert)
/* harmony export */ });
/* unused harmony exports getAccountSubscriptionFeatures, getAccountLogoIds, getSubscriptionFeatures */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("3o2z");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var getAccountInfo = function (state) {
    // @ts-ignore
    return state.account.accountInfo.info || {};
};
var getAccountId = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account && Number(account.id); });
var getAccountCoverage = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account && account.accountCoverage; });
var getIsFacebookComplianceAccount = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account && (Number(account.id) === 26781); });
var getAccountSubscriptionFeatures = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) {
    return account && account.subscriptionFeatures;
});
var getAccountHistoryStats = function (state) { return state.account.accountHistoryStats.info; };
var getAccountLogoIds = function (state) { return state.account.accountLogos.logos || []; };
var isAccountLogosLoading = function (state) { return state.account.accountLogos.loading; };
var getAccountLogos = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getLogosEntities */ .CD, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getThemeEntities */ .PW, getAccountLogoIds, function (logoEntities, topicEntities, logoIds) { return (logoIds.map(function (logoId) {
    var logo = logoEntities[logoId];
    var logoTopics = logo.topics.map(function (topicId) {
        var _a;
        return ({
            id: topicId,
            name: ((_a = topicEntities[topicId]) === null || _a === void 0 ? void 0 : _a.name) || null,
        });
    });
    return __assign(__assign({}, logo), { topics: logoTopics, enabledForAll: Object.keys(topicEntities).length === logoTopics.length });
})); });
var getCurrentThemeLogos = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getLogosEntities */ .CD, getAccountLogoIds, function (state) { return state.themes.currentTheme; }, function (logoEntities, logoIds, themeId) { return (themeId && !logoIds.length
    ? logoIds
        .map(function (logoId) { return logoEntities[logoId]; })
        .filter(function (logo) { return logo.topics.includes(themeId); })
    : []); });
var getSubscriptionFeatures = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return (account ? account.subscriptionFeatures : {}); });
var getSubscriptionFeatureValue = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getSubscriptionFeatures, function (_state, key) { return key; }, function (features, key) { return features && features[key]; });
var getExpectedDeactivationDate = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account === null || account === void 0 ? void 0 : account.expectedDeactivationDate; });
var getAccountExpirationDate = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account === null || account === void 0 ? void 0 : account.payedTo; });
var isAccountTrial = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account && account.status === 'trial'; });
var getAccountOrigin = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account === null || account === void 0 ? void 0 : account.accountOrigin; });
var getAccountExpirationAlert = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (account) { return account === null || account === void 0 ? void 0 : account.expirationWarning; });
var shouldShowExpirationAlert = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountExpirationAlert, function (expirationAlert) { return !!expirationAlert; });
var isAccountHistoryStatsLoading = function (state) { return state.account.accountHistoryStats.loading; };
// TODO: remove. We and BE haven't this data
// getDeepHistoryCollectionsLimit
// isDeepHistoryCollectionDisabled
// getDeepHistoryCollectionsUsed
// getNextDeepCollectionAvailableAt
var getDeepHistoryCollectionsLimit = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountHistoryStats, function (historyStats) { var _a; return (_a = historyStats === null || historyStats === void 0 ? void 0 : historyStats.info) === null || _a === void 0 ? void 0 : _a.collectionsLimit; });
var isDeepHistoryCollectionDisabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountHistoryStats, function (historyStats) { var _a; return (_a = historyStats === null || historyStats === void 0 ? void 0 : historyStats.info) === null || _a === void 0 ? void 0 : _a.deepHistoryCollectionAllowed; });
var getDeepHistoryCollectionsUsed = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountHistoryStats, function (historyStats) { var _a; return (_a = historyStats === null || historyStats === void 0 ? void 0 : historyStats.info) === null || _a === void 0 ? void 0 : _a.collectionsUsed; });
var getNextDeepCollectionAvailableAt = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountHistoryStats, function (historyStats) { var _a; return (_a = historyStats === null || historyStats === void 0 ? void 0 : historyStats.info) === null || _a === void 0 ? void 0 : _a.nextDeepCollectionAvailableAt; });
var isWordReportEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('wordReport'));
var isInsightsCopilotEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('insightsCopilot'));
var isAccountAccessAllowed = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('accountAccess'));
var isDeepHistoryCollectionAllowed = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('deepHistoryCollection'));
var isInstagramHashtagsAllowed = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('instagramHashtags'));
var canShowFacebookForbiddenChannel = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('facebookReview'));
var isYoutubeReviewAccount = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (accInfo) { return !(0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('youtubeStatistics')(accInfo); });
var announcementsEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (accInfo) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('announcements')(accInfo); });
var canAddAccountLogos = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('addAccountLogos'));
var isVisualInsightsEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('visualInsights'));
var isAudioMonitoringEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('audioMonitoring'));
var isAccountDocumentsEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('documentsPage'));
var canManageCustomDashboards = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('changeCustomDashboards'));
var canBrandingCustomDashboards = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('dashboardBranding'));
var canShowAudienceInsights = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('audienceInsights'));
var canShowSocialSearch = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('socialSearch'));
var isIntercomEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_1__/* .isFeatureAllowed */ .To)('intercom'));
var isApiAddonAvailable = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountSubscriptionFeatures, function (features) {
    return features.api;
});
var isSsoEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getAccountInfo, function (info) { return info.ssoEnabled; });


/***/ }),

/***/ "+9Gl":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  j: () => (/* binding */ analyticsStateModel)
});

// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
// EXTERNAL MODULE: ./src/utils/filterQueryUtils.js
var filterQueryUtils = __webpack_require__("iL/N");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/entities-new/selectors.ts + 2 modules
var entities_new_selectors = __webpack_require__("+Oxy");
// EXTERNAL MODULE: ./src/utils/analytics.js
var analytics = __webpack_require__("iyim");
// EXTERNAL MODULE: ./src/utils/intercom.js
var intercom = __webpack_require__("ah7T");
// EXTERNAL MODULE: ./src/state/analytics/actions.js
var actions = __webpack_require__("mkji");
// EXTERNAL MODULE: ./src/state/analytics/selectors.ts
var analytics_selectors = __webpack_require__("kqWU");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var account_selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/utils/localStorage.ts
var localStorage = __webpack_require__("S/wQ");
// EXTERNAL MODULE: ./src/models/filters/Filter.ts
var Filter = __webpack_require__("+MLa");
// EXTERNAL MODULE: ./src/state/currentUser/selectors.ts
var currentUser_selectors = __webpack_require__("X9tB");
// EXTERNAL MODULE: ./node_modules/@sentry/react/build/esm/sdk.js
var sdk = __webpack_require__("k7Si");
;// CONCATENATED MODULE: ./src/utils/analytics.sentry.ts

var __sentryInit__ = false;
function initSentry(userTraits) {
    var _a;
    // @ts-ignore
    var sentryToken = (_a = window === null || window === void 0 ? void 0 : window.__CONFIG__) === null || _a === void 0 ? void 0 : _a.sentryToken;
    if (!sentryToken || __sentryInit__) {
        return;
    }
    sdk/* init */.T({
        dsn: sentryToken,
        maxBreadcrumbs: 50,
        debug: false,
        initialScope: {
            tags: {
                userInfo: "".concat(userTraits.name, ", ").concat(userTraits.email),
                accountInfo: "".concat(userTraits.accountName, ", id:").concat(userTraits.accountId),
            },
            user: userTraits,
        },
        allowUrls: [/https?:\/\/(next|app)\.youscan\.io/],
        ignoreErrors: [
            'node_modules/@microsoft/signalr',
            'Cannot send data if the connection is not in the \'Connected\' State',
            'Cannot send data if the connection is not in the',
            'Server timeout elapsed without receiving a message from the server',
            'WebSocket closed with status code',
            'Request failed with status code',
            'Object captured as promise rejection with keys'
        ],
    });
    __sentryInit__ = true;
}

// EXTERNAL MODULE: ./src/state/analytics/sagas.js + 1 modules
var sagas = __webpack_require__("n8kL");
;// CONCATENATED MODULE: ./src/state/analytics/model.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};















var AnalyticsModel = /** @class */ (function (_super) {
    __extends(AnalyticsModel, _super);
    function AnalyticsModel() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    AnalyticsModel.prototype.sendEventSaga = function (eventType, properties, options) {
        var theme, accountId, origin, isIdentified, accountInfo, props, savedEvents;
        var _a;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getCurrentTheme */.j1)];
                case 1:
                    theme = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(account_selectors/* getAccountId */.PU)];
                case 2:
                    accountId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(account_selectors/* getAccountOrigin */.wr)];
                case 3:
                    origin = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(analytics_selectors/* isIdentified */.m)];
                case 4:
                    isIdentified = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(account_selectors/* getAccountInfo */.Gf)];
                case 5:
                    accountInfo = _b.sent();
                    props = __assign({ accountId: accountId, origin: origin, subscriptionPlan: (_a = accountInfo === null || accountInfo === void 0 ? void 0 : accountInfo.subscriptionPlan) === null || _a === void 0 ? void 0 : _a.plan }, properties);
                    if (theme) {
                        props.topic = {
                            id: theme.id,
                            name: theme.name,
                        };
                    }
                    if (!(accountId && isIdentified)) return [3 /*break*/, 11];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* extractStashedEvents */.V9)];
                case 6:
                    savedEvents = _b.sent();
                    if (!savedEvents.length) return [3 /*break*/, 8];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* all */.Q7)(savedEvents.map(function (savedEvent) { return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* sendEvent */.BI, savedEvent.eventType, __assign(__assign({}, savedEvent.properties), { accountId: accountId })); }))];
                case 7:
                    _b.sent();
                    _b.label = 8;
                case 8: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* clearStashedEvents */.RH)];
                case 9:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* sendEvent */.BI, eventType, props)];
                case 10:
                    _b.sent();
                    return [3 /*break*/, 15];
                case 11:
                    if (!(options === null || options === void 0 ? void 0 : options.isPublic)) return [3 /*break*/, 13];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* sendEvent */.BI, eventType, props)];
                case 12:
                    _b.sent();
                    return [3 /*break*/, 15];
                case 13: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* addEventToStash */.UC, { eventType: eventType, properties: props })];
                case 14:
                    _b.sent();
                    _b.label = 15;
                case 15: return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.sendAnalyticalEvent = function (payload) {
        var eventType, properties, options;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    eventType = payload.eventType, properties = payload.properties, options = payload.options;
                    return [4 /*yield*/, this.sendEventSaga(eventType, properties, options)];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.sendChartExportedEvent = function (payload) {
        var _a, properties, eventFilters;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _a = payload.properties, properties = _a === void 0 ? {} : _a;
                    eventFilters = {};
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sagas/* sendEventSaga */.NE, 'Chart exported', __assign(__assign({}, properties), eventFilters))];
                case 1:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.sendWidgetChartClickedEvent = function (payload) {
        var _a, properties, filterEntities, getEntity, getEntityKey, eventProperties, _loop_1, _b, _c, propKey;
        var e_1, _d;
        return __generator(this, function (_e) {
            switch (_e.label) {
                case 0:
                    _a = payload.properties, properties = _a === void 0 ? {} : _a;
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(entities_new_selectors/* getFilterEntities */.UQ)];
                case 1:
                    filterEntities = (_e.sent());
                    getEntity = function (propKey) { return filterEntities[filterQueryUtils/* entitiesByFilterType */.v$[propKey]]; };
                    getEntityKey = function (propKey) { return (propKey === 'regionId' ? 'region' : 'name'); };
                    eventProperties = {};
                    _loop_1 = function (propKey) {
                        if (filterQueryUtils/* entitiesByFilterType */.v$[propKey]) {
                            eventProperties[propKey] = properties[propKey].map(function (v) { return getEntity(propKey).getIn([v, getEntityKey(propKey)]); });
                        }
                        else {
                            eventProperties[propKey] = properties[propKey];
                        }
                    };
                    try {
                        for (_b = __values(Object.keys(properties)), _c = _b.next(); !_c.done; _c = _b.next()) {
                            propKey = _c.value;
                            _loop_1(propKey);
                        }
                    }
                    catch (e_1_1) { e_1 = { error: e_1_1 }; }
                    finally {
                        try {
                            if (_c && !_c.done && (_d = _b.return)) _d.call(_b);
                        }
                        finally { if (e_1) throw e_1.error; }
                    }
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sagas/* sendEventSaga */.NE, 'Custom dashboards: widget chart clicked', eventProperties)];
                case 2:
                    _e.sent();
                    return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.sendReportViewedEvent = function (payload) {
        var reportType, eventFilters;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    reportType = payload.reportType;
                    if (!reportType)
                        return [2 /*return*/];
                    eventFilters = {};
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sagas/* sendEventSaga */.NE, "Analytics report ".concat(reportType, ": viewed"), __assign({}, eventFilters))];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.sendCreateTopicSuccess = function (topic) {
        var filter, sourceFilterProperties;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    if (!topic.topicQuery.viQuery) return [3 /*break*/, 2];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sagas/* sendEventSaga */.NE, 'Theme text recognition: set', { topic: topic })];
                case 1:
                    _a.sent();
                    _a.label = 2;
                case 2:
                    filter = Filter/* Filter */.dJ.fromApi(topic.topicQuery.filter);
                    sourceFilterProperties = (function () {
                        if (filter.findByName('source')) {
                            return {
                                sourceFilterType: 'source',
                                filterBySource: filter.findByName('source'),
                            };
                        }
                        if (filter.findByName('resourceType')) {
                            return {
                                sourceFilterType: 'resourceType',
                                filterByResourceType: filter.findByName('resourceType'),
                            };
                        }
                        return {
                            sourceFilterType: 'resourceType',
                            filterByResourceType: 'all',
                        };
                    })();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sagas/* sendEventSaga */.NE, 'Theme: created', __assign({ topic: topic }, sourceFilterProperties))];
                case 3:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.setAnalyticsData = function (_a) {
        var analyticsAccount, userTraits;
        var currentUser = _a.currentUser;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    analyticsAccount = (0,analytics/* getCurrentAnalyticsAccount */.zU)();
                    if (!(analyticsAccount && analyticsAccount.id && analyticsAccount.id() !== currentUser.accountId)) return [3 /*break*/, 3];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* reset */.cL)];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(intercom/* shutDown */.BP)];
                case 2:
                    _b.sent();
                    _b.label = 3;
                case 3: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(currentUser_selectors/* getCurrentUserTraits */.Kz)];
                case 4:
                    userTraits = _b.sent();
                    initSentry(userTraits);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* identify */.ls, currentUser.id, userTraits)];
                case 5:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* group */.Os, currentUser.accountId, {})];
                case 6:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* identify */.ls)())];
                case 7:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    AnalyticsModel.prototype.sendFilterEvent = function (filter) {
        var mergedEntities_1, events_1, e_2;
        var _this = this;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(entities_new_selectors/* getFilterMergedEntities */.u7)];
                case 1:
                    mergedEntities_1 = _a.sent();
                    events_1 = filter.toEvent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* all */.Q7)(events_1.filters.map(function (e) {
                            return (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(_this.sendEventSaga.bind(_this), "New filters: filter by ".concat(e.name, " applied"), {
                                op: e.op,
                                globalOp: events_1.globalOp,
                                value: e.value,
                                name: e.value.map(function (v) { var _a, _b, _c; return ((_a = mergedEntities_1[v]) === null || _a === void 0 ? void 0 : _a.name) || ((_b = mergedEntities_1[v]) === null || _b === void 0 ? void 0 : _b.city) || ((_c = mergedEntities_1[v]) === null || _c === void 0 ? void 0 : _c.country); }),
                            });
                        }))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    e_2 = _a.sent();
                    console.log(e_2);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String, Object, Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendEventSaga", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendAnalyticalEvent", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendChartExportedEvent", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendWidgetChartClickedEvent", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendReportViewedEvent", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendCreateTopicSuccess", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "setAnalyticsData", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Filter/* Filter */.dJ]),
        __metadata("design:returntype", void 0)
    ], AnalyticsModel.prototype, "sendFilterEvent", null);
    AnalyticsModel = __decorate([
        (0,pixieDust/* namespace */.MF)('Analytics')
    ], AnalyticsModel);
    return AnalyticsModel;
}(pixieDust/* StateModel */.Nd));
var analyticsStateModel = (0,pixieDust/* pixieDust */.kJ)(AnalyticsModel);


/***/ }),

/***/ "kqWU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   m: () => (/* binding */ isIdentified)
/* harmony export */ });
/* eslint-disable import/prefer-default-export */
var isIdentified = function (state) { return state.analytics.get('identified'); };


/***/ }),

/***/ "azyO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   g: () => (/* binding */ authorsModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("2N3d");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("kHEK");
/* harmony import */ var state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("iY5o");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("9jXX");
/* harmony import */ var state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("cpfI");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("3o2z");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("+MLa");
/* harmony import */ var models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("NLA2");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};










var Authors = /** @class */ (function (_super) {
    __extends(Authors, _super);
    function Authors() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            excludedList: {
                loading: false,
                error: null,
                data: null,
            },
            searchExcluded: '',
            sortExcluded: 'DATE',
            audienceInterestsHierarchy: null,
        };
        return _this;
    }
    Authors.prototype.excludeAuthor = function (_a) {
        var filter, error_1;
        var themeId = _a.themeId, authorId = _a.authorId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    // TODO: Remove after migrations
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_7__/* .getAction */ .Th)('EXCLUDE_AUTHOR')({ themeId: themeId, authorId: authorId }))];
                case 1:
                    // TODO: Remove after migrations
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)((0,state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_4__/* .updateUiAuthors */ .mn)({
                            ids: [authorId],
                            value: { excluding: true },
                        }))];
                case 2:
                    _b.sent();
                    filter = new models_filters_Filter__WEBPACK_IMPORTED_MODULE_8__/* .Filter */ .dJ({
                        from: new Date(0),
                        to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_5__/* .getDayFiveYearsAgo */ .M3)(),
                        filterGroups: [new models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_9__/* .ListFilterGroup */ .II('authorId', 'oneOf', [authorId], false)],
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.mentions.delete, { themeId: themeId, filter: utils_Mutable__WEBPACK_IMPORTED_MODULE_1__/* .Mutable */ .rV.from(filter) })];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.authors.exclude, { themeId: themeId, authorId: authorId })];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamModel */ .K.action.fetchMentions({ themeId: themeId }))];
                case 5:
                    _b.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_1 = _b.sent();
                    console.log(error_1);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    Authors.prototype.fetchExcludedAuthors = function (_a) {
        var response_1, error_2;
        var _this = this;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.excludedList.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.authors.getExcluded, { themeId: themeId })];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.excludedList.loading = false;
                        state.excludedList.data = response_1.authors;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.excludedList = _this.initialState.excludedList;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Authors.prototype.restoreAuthor = function (_a) {
        var error_3;
        var themeId = _a.themeId, authorId = _a.authorId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.authors.restore, { themeId: themeId, authorId: authorId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchExcludedAuthors({ themeId: themeId })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Authors.prototype.sortExcludedAuthors = function (_a) {
        var sortType = _a.sortType;
        this.updateWithImmer(function (state) {
            state.sortExcluded = sortType;
        });
    };
    Authors.prototype.searchExcludedAuthors = function (_a) {
        var searchQuery = _a.searchQuery;
        this.updateWithImmer(function (state) {
            state.searchExcluded = searchQuery;
        });
    };
    Authors.prototype.fetchAudienceInterestsHierarchy = function () {
        var audienceInterestsHierarchy_1, error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.authors.getInterestsHierarchy)];
                case 1:
                    audienceInterestsHierarchy_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.audienceInterestsHierarchy = audienceInterestsHierarchy_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _a.sent();
                    console.error(error_4);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Authors.prototype, "excludeAuthor", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Authors.prototype, "fetchExcludedAuthors", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Authors.prototype, "restoreAuthor", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Authors.prototype, "sortExcludedAuthors", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Authors.prototype, "searchExcludedAuthors", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Authors.prototype, "fetchAudienceInterestsHierarchy", null);
    Authors = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('Authors')
    ], Authors);
    return Authors;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var authorsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(Authors);


/***/ }),

/***/ "SEw9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  Zv: () => (/* binding */ getAudienceInterestsHierarchy),
  AT: () => (/* binding */ getFilteredAuthors),
  V8: () => (/* binding */ getSearchQuery),
  BN: () => (/* binding */ getSortType)
});

// UNUSED EXPORTS: getExcludedAuthors

// EXTERNAL MODULE: ./node_modules/reselect/es/index.js + 1 modules
var es = __webpack_require__("XFM9");
;// CONCATENATED MODULE: ./src/state/authors/utils.js
/* eslint import/prefer-default-export: 0 */

function compareAuthors(sortType, a, b) {
  switch (sortType) {
    case 'NAME':
      {
        return a.name > b.name ? 1 : -1;
      }
    case 'DATE':
      {
        return a && b;
      }
    case 'SUBSCRIBERS':
      {
        return a.subscribers < b.subscribers ? 1 : -1;
      }
    default:
      {
        return 0;
      }
  }
}
;// CONCATENATED MODULE: ./src/state/authors/selectors.ts


var getSortType = function (state) { return state.authors.sortExcluded; };
var getSearchQuery = function (state) { return state.authors.searchExcluded; };
var getExcludedAuthors = function (state) { return state.authors.excludedList.data; };
var getFilteredAuthors = (0,es/* createSelector */.Mz)(getExcludedAuthors, getSortType, getSearchQuery, function (authors, sortType, searchQuery) {
    return (authors
        && authors
            .filter(function (author) {
            var searchString = "".concat(author.name || '', " ").concat(author.nickname || '');
            return searchString.toLowerCase().includes(searchQuery.toLowerCase());
        })
            .sort(compareAuthors.bind(null, sortType)));
});
var getAudienceInterestsHierarchy = function (state) { var _a; return (_a = state.authors.audienceInterestsHierarchy) === null || _a === void 0 ? void 0 : _a.interests; };


/***/ }),

/***/ "85AV":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   X: () => (/* binding */ billingModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IihT");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("+9Gl");
/* harmony import */ var state_account_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("RHZg");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};





var BillingModel = /** @class */ (function (_super) {
    __extends(BillingModel, _super);
    function BillingModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            billing: {
                loaded: false,
                subscribing: false,
                subscription: null,
                declined: false,
                declinedDetails: null,
                error: null,
                waitingForUpdate: false,
            },
            billingOffers: { loading: false, loaded: false, data: null, error: null },
            payer: { loading: false, loaded: false, data: null, error: null },
        };
        return _this;
    }
    BillingModel.prototype.fetchBillingSubscription = function (payload) {
        var subscription_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    if (!(payload === null || payload === void 0 ? void 0 : payload.justRefresh)) {
                        this.updateWithMutable(function (state) {
                            state.billing.subscription = null;
                            state.billing.loaded = false;
                            state.billing.error = null;
                        });
                    }
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.billing.getBillingSubscription)];
                case 1:
                    subscription_1 = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h.action.fetchAccount())];
                case 2:
                    _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billing.subscription = subscription_1;
                        state.billing.loaded = true;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_1 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billing.error = error_1;
                        state.billing.loaded = false;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    BillingModel.prototype.fetchBillingOffers = function () {
        var items_1, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithMutable(function (state) {
                        state.billingOffers.loading = true;
                        state.billingOffers.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.billing.getBillingOffers)];
                case 1:
                    items_1 = (_a.sent()).items;
                    this.updateWithMutable(function (state) {
                        state.billingOffers.loading = false;
                        state.billingOffers.loaded = true;
                        state.billingOffers.data = items_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billingOffers.error = error_2;
                        state.billingOffers.loading = false;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    BillingModel.prototype.setSubscription = function (info) {
        var error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    this.updateWithMutable(function (state) {
                        state.billing.declined = false;
                        state.billing.declinedDetails = null;
                        state.billing.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.billing.setSubscription, info)];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(billingModel.action.fetchBillingSubscription())];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billing.loaded = true;
                        state.billing.error = error_3;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    BillingModel.prototype.cancelBilling = function () {
        var error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 5, , 6]);
                    this.updateWithMutable(function (state) {
                        state.billing.declined = false;
                        state.billing.declinedDetails = null;
                        state.billing.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.billing.cancelBilling)];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(billingModel.action.fetchBillingOffers())];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(billingModel.action.fetchBillingSubscription())];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({ eventType: 'Billing: billing canceled' }))];
                case 4:
                    _a.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_4 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billing.loaded = true;
                        state.billing.error = error_4;
                    });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    BillingModel.prototype.setBillingPaymentMethodWaitComplete = function () {
        return __generator(this, function (_a) {
            this.updateWithMutable(function (state) {
                state.billing.waitingForUpdate = false;
            });
            return [2 /*return*/];
        });
    };
    BillingModel.prototype.setPaymentMethod = function (info) {
        var error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    this.updateWithMutable(function (state) {
                        state.billing.declined = false;
                        state.billing.declinedDetails = null;
                        state.billing.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.billing.setPaymentMethod, info)];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(billingModel.action.fetchBillingSubscription())];
                case 2:
                    _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billing.waitingForUpdate = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .delay */ .cb)(10000)];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(billingModel.action.setBillingPaymentMethodWaitComplete())];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({ eventType: 'Billing: payment method set' }))];
                case 5:
                    _a.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_5 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.billing.loaded = true;
                        state.billing.error = error_5;
                    });
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    BillingModel.prototype.fetchPayer = function (_a) {
        var payer_1, error_6;
        var options = _a.options;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithMutable(function (state) {
                        state.payer.loading = true;
                        state.payer.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.billing.getPayer, options)];
                case 1:
                    payer_1 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.payer.loading = false;
                        state.payer.loaded = true;
                        state.payer.data = payer_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_6 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.payer.error = error_6;
                        state.payer.loading = false;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    BillingModel.prototype.clearPayer = function () {
        return __generator(this, function (_a) {
            this.updateWithMutable(function (state) {
                state.payer.data = null;
            });
            return [2 /*return*/];
        });
    };
    BillingModel.prototype.downloadInvoice = function () {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({ eventType: 'Billing: invoice downloaded' }))];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "fetchBillingSubscription", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "fetchBillingOffers", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "setSubscription", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "cancelBilling", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "setBillingPaymentMethodWaitComplete", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "setPaymentMethod", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "fetchPayer", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "clearPayer", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], BillingModel.prototype, "downloadInvoice", null);
    BillingModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('Billing')
    ], BillingModel);
    return BillingModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var billingModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(BillingModel);


/***/ }),

/***/ "oqJG":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   AR: () => (/* binding */ getAccountDocuments),
/* harmony export */   JG: () => (/* binding */ getDeclinedDetails),
/* harmony export */   Ji: () => (/* binding */ isBillingLoaded),
/* harmony export */   Op: () => (/* binding */ isWaitingForUpdate),
/* harmony export */   Pk: () => (/* binding */ isDeclined),
/* harmony export */   T0: () => (/* binding */ getAccountQuarterActs),
/* harmony export */   Zj: () => (/* binding */ getBillingSubscription),
/* harmony export */   al: () => (/* binding */ isPayerLoading),
/* harmony export */   tq: () => (/* binding */ getBillingOffers),
/* harmony export */   um: () => (/* binding */ getPayer),
/* harmony export */   up: () => (/* binding */ isBillingOffersLoaded)
/* harmony export */ });
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("XFM9");

var getBillingSubscription = function (state) { return state.billing.getIn(['billing', 'subscription']); };
var isBillingLoaded = function (state) { return state.billing.getIn(['billing', 'loaded']); };
var isDeclined = function (state) { return state.billing.getIn(['billing', 'declined']); };
var getDeclinedDetails = function (state) { return state.billing.getIn(['billing', 'declinedDetails']); };
var isWaitingForUpdate = function (state) { return state.billing.getIn(['billing', 'waitingForUpdate']); };
var getBillingOffers = function (state) { return state.billing.getIn(['billingOffers', 'data']); };
var isBillingOffersLoaded = function (state) { return state.billing.getIn(['billingOffers', 'loaded']); };
var getPayer = function (state) { return state.billing.getIn(['payer', 'data']); };
var isPayerLoading = function (state) { return state.billing.getIn(['payer', 'loading']); };
var getAccountDocuments = (0,reselect__WEBPACK_IMPORTED_MODULE_0__/* .createSelector */ .Mz)(getBillingSubscription, function (subscription) {
    var _a;
    return subscription ? ((_a = subscription.get('acts')) === null || _a === void 0 ? void 0 : _a.toJS()) || [] : [];
});
var getAccountQuarterActs = (0,reselect__WEBPACK_IMPORTED_MODULE_0__/* .createSelector */ .Mz)(getBillingSubscription, function (subscription) {
    var _a;
    return subscription ? ((_a = subscription.get('quarterActs')) === null || _a === void 0 ? void 0 : _a.toJS()) || [] : [];
});


/***/ }),

/***/ "iSPL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   S: () => (/* binding */ channelsModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("2N3d");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("kHEK");
/* harmony import */ var state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("iY5o");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("9jXX");
/* harmony import */ var state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("cpfI");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("3o2z");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("+MLa");
/* harmony import */ var models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("NLA2");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("+9Gl");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};











var Channels = /** @class */ (function (_super) {
    __extends(Channels, _super);
    function Channels() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            list: { loading: false, error: null, channels: null },
            preview: { loading: false, channels: null, error: null },
            add: { loading: false, errors: {} },
            excludedChannels: { loading: false, data: null, error: null },
        };
        return _this;
    }
    Channels.prototype.addChannel = function (_a) {
        var error_1;
        var themeId = _a.themeId, channelKey = _a.channelKey, collectHistorySince = _a.collectHistorySince, source = _a.source;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.add, {
                            themeId: themeId,
                            channelKey: channelKey,
                            collectHistorySince: collectHistorySince,
                        })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchChannels({ themeId: themeId })];
                case 2:
                    _b.sent();
                    state_analytics_model__WEBPACK_IMPORTED_MODULE_10__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                        eventType: 'Channel: added',
                        properties: { source: source },
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_1 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.add.errors[channelKey] = error_1;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.fetchChannels = function (_a) {
        var response_1, error_2;
        var _b;
        var themeId = _a.themeId;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 2, , 3]);
                    this.updateWithMutable(function (state) {
                        state.list.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.fetch, { themeId: themeId })];
                case 1:
                    response_1 = _c.sent();
                    this.updateWithMutable(function (state) {
                        state.list.loading = false;
                        state.list.channels = response_1.channels;
                    });
                    state_analytics_model__WEBPACK_IMPORTED_MODULE_10__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                        eventType: 'Channels settings: page loaded',
                        properties: { isEmpty: !((_b = response_1.channels) === null || _b === void 0 ? void 0 : _b.length) },
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _c.sent();
                    this.updateWithMutable(function (state) {
                        state.list.loading = false;
                        state.list.channels = null;
                        state.list.error = error_2 && error_2.response ? error_2.response : {};
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.deleteChannel = function (_a) {
        var error_3;
        var channelKey = _a.channelKey, themeId = _a.themeId, source = _a.source;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.delete, {
                            themeId: themeId,
                            channelKey: channelKey,
                        })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchChannels({ themeId: themeId })];
                case 2:
                    _b.sent();
                    state_analytics_model__WEBPACK_IMPORTED_MODULE_10__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                        eventType: 'Channel: deleted',
                        properties: { source: source },
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _b.sent();
                    console.error({ error: error_3.response });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.collectChannelHistory = function (props) {
        var themeId, from, channelKey, error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    themeId = props.themeId, from = props.from, channelKey = props.channelKey;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.collectHistory, {
                            themeId: themeId,
                            from: from,
                            channelKey: channelKey,
                        })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchChannels({ themeId: themeId })];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_4 = _a.sent();
                    console.error({ error: error_4.response });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.fetchPreviewChannels = function (props) {
        var url, response_2, error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    url = props.url;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 3, , 4]);
                    this.updateWithMutable(function (state) {
                        state.preview.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.fetchPreview, { url: url })];
                case 2:
                    response_2 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.preview.loading = false;
                        state.preview.channels = response_2.channels;
                    });
                    state_analytics_model__WEBPACK_IMPORTED_MODULE_10__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                        eventType: 'Channels settings: channels searched',
                        properties: { url: url },
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_5 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.preview.loading = false;
                        state.preview.channels = null;
                        state.preview.error = error_5.response;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.clearPreviewChannelsState = function () {
        var _this = this;
        this.updateWithMutable(function (state) {
            state.preview = _this.initialState.preview;
            state.add.errors = {};
        });
    };
    Channels.prototype.excludeChannel = function (props) {
        var themeId, channelId, filter, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    themeId = props.themeId, channelId = props.channelId;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 7, , 8]);
                    // TODO: Remove after migrations
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_7__/* .getAction */ .Th)('EXCLUDE_CHANNEL')({ themeId: themeId, channelId: channelId }))];
                case 2:
                    // TODO: Remove after migrations
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)((0,state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_4__/* .updateUiChannel */ .BO)({
                            ids: [channelId],
                            value: { excluding: true },
                        }))];
                case 3:
                    _a.sent();
                    filter = new models_filters_Filter__WEBPACK_IMPORTED_MODULE_8__/* .Filter */ .dJ({
                        from: new Date(0),
                        to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_5__/* .getDayFiveYearsAgo */ .M3)(),
                        filterGroups: [new models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_9__/* .ListFilterGroup */ .II('channelId', 'oneOf', [channelId], false)],
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.mentions.delete, { themeId: themeId, filter: utils_Mutable__WEBPACK_IMPORTED_MODULE_1__/* .Mutable */ .rV.from(filter) })];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.exclude, { themeId: themeId, channelId: channelId })];
                case 5:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamModel */ .K.action.fetchMentions({ themeId: themeId }))];
                case 6:
                    _a.sent();
                    return [3 /*break*/, 8];
                case 7:
                    error_6 = _a.sent();
                    console.log(error_6);
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.fetchExcludedChannels = function (_a) {
        var response_3, error_7;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithMutable(function (state) {
                        state.excludedChannels.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.getExcluded, { themeId: themeId })];
                case 1:
                    response_3 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.excludedChannels.loading = false;
                        state.excludedChannels.data = response_3.channels;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_7 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.excludedChannels.loading = false;
                        state.excludedChannels.error = error_7.response;
                        state.excludedChannels.data = null;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Channels.prototype.restoreExcludedChannel = function (props) {
        var themeId, channelId, error_8;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    themeId = props.themeId, channelId = props.channelId;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.channels.restore, {
                            themeId: themeId,
                            channelId: channelId,
                        })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchExcludedChannels({ themeId: themeId })];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_8 = _a.sent();
                    console.error(error_8);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "addChannel", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "fetchChannels", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "deleteChannel", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "collectChannelHistory", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "fetchPreviewChannels", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "clearPreviewChannelsState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "excludeChannel", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "fetchExcludedChannels", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Channels.prototype, "restoreExcludedChannel", null);
    Channels = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('Channels')
    ], Channels);
    return Channels;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var channelsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(Channels);


/***/ }),

/***/ "vuoO":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   h: () => (/* binding */ conversationalInsightsModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("0Zyk");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("Qyqr");
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("KV3C");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
/* eslint-disable generator-star-spacing */






var ConversationalInsights = /** @class */ (function (_super) {
    __extends(ConversationalInsights, _super);
    function ConversationalInsights() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            colorsBySubjects: {},
            geo: {
                isLoading: false,
                countries: [],
                otherCountriesCount: 0,
                error: null,
            },
            wordCloud: {
                isLoading: false,
                data: null,
                error: null,
            },
            trendWords: {
                isLoading: false,
                data: null,
                error: null,
            },
            phrasesBySubjectsInterconnections: {
                isLoading: false,
                data: null,
                error: null,
            },
        };
        return _this;
    }
    ConversationalInsights.prototype.matchSubjectsWithColors = function (_a) {
        var filter, response_1, colors_1, error_1;
        var themeId = _a.themeId, statsBy = _a.statsBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchSubjects, { themeId: themeId, filter: filter, statsBy: statsBy })];
                case 2:
                    response_1 = _b.sent();
                    colors_1 = (0,utils_colors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentChartColorScheme */ .KK)();
                    this.updateWithImmer(function (state) {
                        state.colorsBySubjects = response_1.aggregations.subjects.values.reduce(function (acc, subject, i) {
                            acc[subject.key] = colors_1[i % colors_1.length];
                            return acc;
                        }, {});
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = false;
                        state.geo.error = error_1;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    ConversationalInsights.prototype.fetchSubjectsGeoData = function (_a) {
        var filter, response_2, error_2;
        var themeId = _a.themeId, statsBy = _a.statsBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = true;
                        state.geo.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchSubjectsGeo, { themeId: themeId, filter: filter, statsBy: statsBy })];
                case 2:
                    response_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = false;
                        state.geo.countries = response_2.aggregations.countries.values.filter(function (v) { return v === null || v === void 0 ? void 0 : v.count; });
                        state.geo.otherCountriesCount = response_2.aggregations.countries.otherCount;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = false;
                        state.geo.error = error_2;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    ConversationalInsights.prototype.fetchWordCloud = function () {
        var themeId, filter, words_1, error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.wordCloud.isLoading = true;
                        state.wordCloud.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _a.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchWordCloud, {
                            themeId: themeId,
                            filter: filter,
                        })];
                case 3:
                    words_1 = __rest.apply(void 0, [_a.sent(), []]);
                    this.updateWithImmer(function (state) {
                        state.wordCloud.isLoading = false;
                        state.wordCloud.data = { words: words_1 };
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_3 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.wordCloud.isLoading = false;
                        state.wordCloud.error = error_3;
                    });
                    console.error(error_3);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    ConversationalInsights.prototype.fetchTrendWords = function () {
        var themeId, filter, _a, currentDateRange_1, previousDateRange_1, words_2, error_4;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.trendWords.isLoading = true;
                        state.trendWords.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchTrendingWords, { themeId: themeId, filter: filter })];
                case 3:
                    _a = _b.sent(), currentDateRange_1 = _a.currentDateRange, previousDateRange_1 = _a.previousDateRange, words_2 = __rest(_a, ["currentDateRange", "previousDateRange"]);
                    this.updateWithImmer(function (state) {
                        state.trendWords.isLoading = false;
                        state.trendWords.data = { currentDateRange: currentDateRange_1, previousDateRange: previousDateRange_1, words: words_2 };
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.trendWords.isLoading = false;
                        state.trendWords.error = error_4;
                    });
                    console.error(error_4);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    ConversationalInsights.prototype.fetchPhrasesBySubjectsInterconnections = function () {
        var themeId_1, filter_1, response_3, error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.phrasesBySubjectsInterconnections.isLoading = true;
                        state.phrasesBySubjectsInterconnections.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId_1 = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter_1 = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchPhrasesBySubjectsInterconnections, { themeId: themeId_1, filter: filter_1 })];
                case 3:
                    response_3 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.phrasesBySubjectsInterconnections.isLoading = false;
                        state.phrasesBySubjectsInterconnections.data = {
                            phrases: response_3.values,
                            themeId: themeId_1,
                            filter: filter_1,
                        };
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_5 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.phrasesBySubjectsInterconnections.isLoading = false;
                        state.phrasesBySubjectsInterconnections.error = error_5;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ConversationalInsights.prototype, "matchSubjectsWithColors", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ConversationalInsights.prototype, "fetchSubjectsGeoData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], ConversationalInsights.prototype, "fetchWordCloud", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], ConversationalInsights.prototype, "fetchTrendWords", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], ConversationalInsights.prototype, "fetchPhrasesBySubjectsInterconnections", null);
    ConversationalInsights = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('ConversationalInsights')
    ], ConversationalInsights);
    return ConversationalInsights;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var conversationalInsightsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(ConversationalInsights);


/***/ }),

/***/ "uLYw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   TQ: () => (/* binding */ getTrendWords),
/* harmony export */   YH: () => (/* binding */ getWordCloudData),
/* harmony export */   YX: () => (/* binding */ getPhrasesBySubjectsInterconnectionsData),
/* harmony export */   a4: () => (/* binding */ getIsWordCloudLoading),
/* harmony export */   es: () => (/* binding */ getPhrasesBySubjectsInterconnections),
/* harmony export */   l3: () => (/* binding */ getColorsBySubjects),
/* harmony export */   sE: () => (/* binding */ isPhrasesBySubjectsInterconnectionsLoading),
/* harmony export */   sY: () => (/* binding */ getTrendWordsPeriod),
/* harmony export */   yp: () => (/* binding */ getWordCloudError),
/* harmony export */   zS: () => (/* binding */ getTrendWordsError),
/* harmony export */   zj: () => (/* binding */ getTrendWordsLoading)
/* harmony export */ });
/* unused harmony exports getCountries, isGeoForMapLoading, getGeoForMap */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("XFM9");
/* harmony import */ var models_NetworkGraph__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ckFD");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};


var getColorsBySubjects = function (state) { return state.conversationalInsights.colorsBySubjects; };
var getCountries = function (state) { return state.conversationalInsights.geo.countries; };
var isGeoForMapLoading = function (state) { return state.conversationalInsights.geo.isLoading; };
var getPhrasesBySubjectsInterconnectionsData = function (state) { return state.conversationalInsights.phrasesBySubjectsInterconnections.data; };
var isPhrasesBySubjectsInterconnectionsLoading = function (state) { return state.conversationalInsights.phrasesBySubjectsInterconnections.isLoading; };
var getGeoForMap = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getCountries, function (countries) { return countries.map(function (country) { return ({
    key: country.key,
    count: country.count,
    subjects: country.subjects.values.map(function (subject) { return (__assign(__assign({}, subject), { phrases: subject.phrases.values })); }),
}); }); });
var getWordCloudData = function (state) { var _a; return (_a = state.conversationalInsights.wordCloud.data) === null || _a === void 0 ? void 0 : _a.words; };
var getIsWordCloudLoading = function (state) { return state.conversationalInsights.wordCloud.isLoading; };
var getWordCloudError = function (state) { return state.conversationalInsights.wordCloud.error; };
var getTrendWords = function (state) { var _a; return (_a = state.conversationalInsights.trendWords.data) === null || _a === void 0 ? void 0 : _a.words; };
var getTrendWordsLoading = function (state) { return state.conversationalInsights.trendWords.isLoading; };
var getTrendWordsError = function (state) { return state.conversationalInsights.trendWords.error; };
var getTrendWordsPeriod = function (state) {
    if (!state.conversationalInsights.trendWords.data)
        return {};
    var _a = state.conversationalInsights.trendWords.data, currentDateRange = _a.currentDateRange, previousDateRange = _a.previousDateRange;
    return { currentDateRange: currentDateRange, previousDateRange: previousDateRange };
};
var getPhrasesBySubjectsInterconnections = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getPhrasesBySubjectsInterconnectionsData, getColorsBySubjects, function (stats, colors) {
    if (!stats)
        return null;
    return new models_NetworkGraph__WEBPACK_IMPORTED_MODULE_0__/* .PhraseGraph */ .y6(stats.phrases, colors);
});


/***/ }),

/***/ "cGQa":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   b: () => (/* binding */ currentUserStateModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_session_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("4gVp");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("+9Gl");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("X9tB");
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("872o");
/* harmony import */ var utils_localization__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("Q/k7");
/* harmony import */ var utils_getCurrentTimeZone__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("ynXH");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */









var CurrentUser = /** @class */ (function (_super) {
    __extends(CurrentUser, _super);
    function CurrentUser() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            user: {
                profile: null,
                loading: true,
                error: null,
            },
            apiKey: { value: null, error: null, loading: false },
            introduction: { highlightVideoPosition: false },
            changeUserInfo: { changing: false, changed: false, error: null },
            updateUserAdditionalInfo: { isUpdated: false, updating: false, error: null },
        };
        _this.setChangeUserInfo = _this.getStateUpdaterWithMutable('changeUserInfo');
        _this.setApiKey = _this.getStateUpdaterWithMutable('apiKey');
        _this.setUpdateUserAdditionalInfo = _this.getStateUpdaterWithMutable('updateUserAdditionalInfo');
        return _this;
    }
    CurrentUser.prototype.fetchUserProfile = function () {
        var currentUser_1, isUserLoggedIn, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.user.loading = true;
                        state.user.error = null;
                    });
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 7, , 8]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.getCurrentUser)];
                case 2:
                    currentUser_1 = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_session_selectors__WEBPACK_IMPORTED_MODULE_3__/* .isLoggedIn */ .M3)];
                case 3:
                    isUserLoggedIn = _a.sent();
                    if (!isUserLoggedIn) return [3 /*break*/, 5];
                    this.updateWithImmer(function (state) {
                        state.user.profile = currentUser_1;
                        state.user.loading = false;
                        state.user.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_4__/* .analyticsStateModel */ .j.action.setAnalyticsData({ currentUser: currentUser_1 }))];
                case 4:
                    _a.sent();
                    return [3 /*break*/, 6];
                case 5:
                    this.updateWithImmer(function (state) {
                        state.user.loading = false;
                    });
                    _a.label = 6;
                case 6: return [3 /*break*/, 8];
                case 7:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.user.loading = false;
                        state.user.error = error_1;
                    });
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.changeUserInfo = function (_a) {
        var error_2;
        var info = _a.info;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setChangeUserInfo({ changing: true, changed: false, error: null });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.editCurrentUserInfo, { info: info })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchUserProfile()];
                case 2:
                    _b.sent();
                    this.setChangeUserInfo({ changing: false, changed: true });
                    return [3 /*break*/, 4];
                case 3:
                    error_2 = _b.sent();
                    this.setChangeUserInfo({ changing: false, changed: true, error: error_2 });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.clearChangeUserInfoState = function () {
        return __generator(this, function (_a) {
            this.setChangeUserInfo(this.initialState.changeUserInfo);
            return [2 /*return*/];
        });
    };
    CurrentUser.prototype.changeUserSettings = function (settings) {
        var error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.changeSettings, { settings: settings })];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, this.fetchUserProfile()];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _a.sent();
                    console.error(error_3);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.markAnnouncementAsRead = function (_a) {
        var announcementsRead, error_4;
        var ids = _a.ids;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getAnnouncementsRead */ .DB)];
                case 1:
                    announcementsRead = _b.sent();
                    return [4 /*yield*/, this.updateUiSettings({
                            announcementsRead: __spreadArray([], __read((announcementsRead || [])), false).concat(ids).filter(function (item, index, array) { return array.indexOf(item) === index; }),
                        })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_4 = _b.sent();
                    console.error(error_4);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.updateUserSettings = function (_a) {
        var settings, error_5;
        var update = _a.update;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.getCurrentUser)];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentUserSettings */ .qJ)];
                case 2:
                    settings = _b.sent();
                    if (update.language) {
                        (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .changeLocale */ .pL)((0,utils_localization__WEBPACK_IMPORTED_MODULE_7__/* .convertLanguageToLocale */ .h)(update.language));
                    }
                    if (!settings) return [3 /*break*/, 4];
                    return [4 /*yield*/, this.changeUserSettings(__assign(__assign({}, settings), update))];
                case 3:
                    _b.sent();
                    _b.label = 4;
                case 4: return [3 /*break*/, 6];
                case 5:
                    error_5 = _b.sent();
                    console.error(error_5);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.updateUiSettings = function (update) {
        var uiSettings, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentUserUiSettings */ .KC)];
                case 1:
                    uiSettings = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.changeUiSettings, __assign(__assign({}, uiSettings), update))];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchUserProfile()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_6 = _a.sent();
                    console.error(error_6);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.saveUserBrowserSettings = function () {
        var user, userLocale, detectedUserLocale, settings, error_7;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.getCurrentUser)];
                case 1:
                    user = _a.sent();
                    userLocale = user.settings.language && (0,utils_localization__WEBPACK_IMPORTED_MODULE_7__/* .convertLanguageToLocale */ .h)(user.settings.language);
                    detectedUserLocale = (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .detectUserLocale */ .$G)();
                    settings = {
                        timeZone: (0,utils_getCurrentTimeZone__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(),
                    };
                    if (!userLocale) {
                        (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .changeLocale */ .pL)(detectedUserLocale);
                        settings.language = (0,utils_localization__WEBPACK_IMPORTED_MODULE_7__/* .convertLocaleToLanguage */ .b)(detectedUserLocale);
                    }
                    else {
                        (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .changeLocale */ .pL)(userLocale);
                    }
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.saveUserBrowserSettings, { settings: settings })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchUserProfile()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_7 = _a.sent();
                    console.error(error_7);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.generateApiKey = function () {
        var apiKey, error_8;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    this.setApiKey({ loading: true, error: null });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.generateApiKey)];
                case 1:
                    apiKey = (_a.sent()).apiKey;
                    return [4 /*yield*/, this.fetchUserProfile()];
                case 2:
                    _a.sent();
                    this.setApiKey({ value: apiKey, loading: false, error: null });
                    return [3 /*break*/, 4];
                case 3:
                    error_8 = _a.sent();
                    this.setApiKey({ loading: false, error: error_8 });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.clearApiKey = function () {
        return __generator(this, function (_a) {
            this.setApiKey(this.initialState.apiKey);
            return [2 /*return*/];
        });
    };
    CurrentUser.prototype.updateUserAdditionalInfo = function (_a) {
        var error_9;
        var team = _a.team, useCases = _a.useCases, otherTeam = _a.otherTeam, otherUseCases = _a.otherUseCases;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setUpdateUserAdditionalInfo({ updating: true, error: null });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.setUserAdditionalInfo, { team: team, useCases: useCases, otherTeam: otherTeam, otherUseCases: otherUseCases })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchUserProfile()];
                case 2:
                    _b.sent();
                    this.setUpdateUserAdditionalInfo({ updating: false, isUpdated: true });
                    return [3 /*break*/, 4];
                case 3:
                    error_9 = _b.sent();
                    this.setUpdateUserAdditionalInfo({ updating: false, isUpdated: false, error: error_9 });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CurrentUser.prototype.clearUpdateUserAdditionalInfo = function () {
        return __generator(this, function (_a) {
            this.setUpdateUserAdditionalInfo(this.initialState.updateUserAdditionalInfo);
            return [2 /*return*/];
        });
    };
    CurrentUser.prototype.highlightIntroductionVideo = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.introduction.highlightVideoPosition = true;
            });
            return [2 /*return*/];
        });
    };
    CurrentUser.prototype.unhighlightIntroductionVideo = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.introduction.highlightVideoPosition = false;
            });
            return [2 /*return*/];
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "fetchUserProfile", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "changeUserInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "clearChangeUserInfoState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "changeUserSettings", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "markAnnouncementAsRead", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "updateUserSettings", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "updateUiSettings", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "saveUserBrowserSettings", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "generateApiKey", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "clearApiKey", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "updateUserAdditionalInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "clearUpdateUserAdditionalInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "highlightIntroductionVideo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CurrentUser.prototype, "unhighlightIntroductionVideo", null);
    CurrentUser = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('CurrentUser')
    ], CurrentUser);
    return CurrentUser;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var currentUserStateModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(CurrentUser);


/***/ }),

/***/ "X9tB":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A0: () => (/* binding */ isTopicCreationEnabled),
/* harmony export */   B5: () => (/* binding */ isCurrentUserAccountAdmin),
/* harmony export */   B9: () => (/* binding */ showExplore),
/* harmony export */   BR: () => (/* binding */ isCurrentUserLoading),
/* harmony export */   DB: () => (/* binding */ getAnnouncementsRead),
/* harmony export */   EW: () => (/* binding */ isCurrentUserApiKeyLoading),
/* harmony export */   Ep: () => (/* binding */ shouldSetUserAdditionalInfo),
/* harmony export */   F3: () => (/* binding */ isTextRecognitionAllowed),
/* harmony export */   HW: () => (/* binding */ getCurrentUser),
/* harmony export */   IY: () => (/* binding */ announcementLastOpenedAt),
/* harmony export */   KC: () => (/* binding */ getCurrentUserUiSettings),
/* harmony export */   Kz: () => (/* binding */ getCurrentUserTraits),
/* harmony export */   NZ: () => (/* binding */ isCurrentUserInfoChanged),
/* harmony export */   Np: () => (/* binding */ getThemeCreationDisableReason),
/* harmony export */   Pq: () => (/* binding */ isAccountStatisticsVisible),
/* harmony export */   QC: () => (/* binding */ getCurrentUserApiKeyError),
/* harmony export */   Qi: () => (/* binding */ getCurrentUserCreationDate),
/* harmony export */   Rm: () => (/* binding */ isShortcutsEnabled),
/* harmony export */   Ro: () => (/* binding */ getCurrentUserFullName),
/* harmony export */   T$: () => (/* binding */ isAccountSettingsVisible),
/* harmony export */   V_: () => (/* binding */ getCurrentUserMaskedApiKey),
/* harmony export */   WR: () => (/* binding */ getCurrentUserId),
/* harmony export */   Xc: () => (/* binding */ getCurrentUserChangeError),
/* harmony export */   Zu: () => (/* binding */ isIntroductionVideoHighlighted),
/* harmony export */   dV: () => (/* binding */ isIntroductionVideoSeen),
/* harmony export */   dh: () => (/* binding */ getCurrentUserUseCases),
/* harmony export */   fy: () => (/* binding */ getUserTimeZone),
/* harmony export */   "if": () => (/* binding */ isUserAdditionalInfoUpdated),
/* harmony export */   iu: () => (/* binding */ getCurrentUserApiKey),
/* harmony export */   js: () => (/* binding */ canGenerateInviteLink),
/* harmony export */   k4: () => (/* binding */ isCurrentUserInfoChanging),
/* harmony export */   kl: () => (/* binding */ isApiKeyCreationEnabled),
/* harmony export */   mf: () => (/* binding */ getUserLanguage),
/* harmony export */   qJ: () => (/* binding */ getCurrentUserSettings),
/* harmony export */   rf: () => (/* binding */ isUserAdditionalInfoUpdating),
/* harmony export */   u4: () => (/* binding */ isCurrentUserAdmin),
/* harmony export */   vZ: () => (/* binding */ isKeywordHighlightingEnabled),
/* harmony export */   x3: () => (/* binding */ isSupportUser),
/* harmony export */   yh: () => (/* binding */ shouldShowIntroductionVideo)
/* harmony export */ });
/* unused harmony exports isCurrentUserSupport, isOversizeTopicCreationAllowed */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("XFM9");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("3o2z");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("9jXX");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var getCurrentUser = function (state) { return state.currentUser.user.profile; };
var getCurrentUserId = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, function (user) { return user && user.id; });
var getCurrentUserUseCases = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, function (user) { var _a; return (user && ((_a = user === null || user === void 0 ? void 0 : user.additionalInfo) === null || _a === void 0 ? void 0 : _a.useCases)) || []; });
var getCurrentUserFullName = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, function (user) { return user && user.fullName; });
var getCurrentUserCreationDate = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, function (user) { return user === null || user === void 0 ? void 0 : user.createdAt; });
var isCurrentUserInfoChanged = function (state) { return state.currentUser.changeUserInfo.changed; };
var isCurrentUserInfoChanging = function (state) { return state.currentUser.changeUserInfo.changing; };
var getCurrentUserChangeError = function (state) { return state.currentUser.changeUserInfo.error; };
var getCurrentUserSettings = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.settings; };
var getCurrentUserUiSettings = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.uiSettings; };
var getCurrentUserTraits = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, function (currentUser) {
    var _a;
    if (!currentUser)
        return {};
    var traits = (_a = currentUser.traits) !== null && _a !== void 0 ? _a : {};
    var userLanguage = currentUser.settings.language;
    var language = userLanguage && userLanguage.slice(0, -1);
    return __assign(__assign({}, traits), { language: language, language_override: language, id: currentUser.id, email: currentUser.login, name: currentUser.fullName });
});
var isCurrentUserLoading = function (state) { return state.currentUser.user.loading; };
var isSupportUser = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.isSupport; };
var getUserTimeZone = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.settings.timeZone; };
var isCurrentUserAccountAdmin = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.isAccountAdmin; };
var isAccountSettingsVisible = function (state) {
    var _a, _b, _c;
    return !(((_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.role) === 'member'
        && ((_b = state.currentUser.user.profile) === null || _b === void 0 ? void 0 : _b.themePermissions) !== undefined && Object.keys((_c = state.currentUser.user.profile) === null || _c === void 0 ? void 0 : _c.themePermissions).length !== 0);
};
var isAccountStatisticsVisible = function (state) { return isCurrentUserAccountAdmin(state) || isSupportUser(state); };
var isIntroductionVideoSeen = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.uiSettings.introductionVideoSeen; };
var isIntroductionVideoHighlighted = function (state) { return state.currentUser.introduction.highlightVideoPosition; };
var isCurrentUserAdmin = function (state) { var _a; return ((_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.role) === 'administrator'; };
var isCurrentUserSupport = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.isSupport; };
var isTextRecognitionAllowed = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .isFeatureAllowed */ .To)('ocr'));
var isTopicCreationEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .isFeatureAllowed */ .To)('createTopic'));
var isOversizeTopicCreationAllowed = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .isFeatureAllowed */ .To)('createOversizeTopic'));
var getThemeCreationDisableReason = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a._links.createTopic.denyReason; };
var isApiKeyCreationEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .isFeatureAllowed */ .To)('generateUserApiKey'));
var canGenerateInviteLink = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .isFeatureAllowed */ .To)('generateActivationLink'));
var showExplore = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .isFeatureAllowed */ .To)('showExplore'));
var isShortcutsEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUserSettings, function (userSettings) { return userSettings && userSettings.shortcutsEnabled; });
var isKeywordHighlightingEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUserSettings, function (userSettings) { return userSettings && userSettings.keywordHighlightingEnabled; });
var getUserLanguage = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUserSettings, function (userSettings) { return userSettings && userSettings.language; });
var announcementLastOpenedAt = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUserUiSettings, function (settings) {
    return (settings && settings.announcementOpenedAt ? settings.announcementOpenedAt : (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_1__/* .getDayWeekAgo */ .AZ)());
});
var getAnnouncementsRead = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUserUiSettings, function (settings) {
    return (settings && settings.announcementsRead ? settings.announcementsRead : []);
});
var shouldShowIntroductionVideo = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCurrentUser, isIntroductionVideoSeen, getUserLanguage, isSupportUser, function (currentUser, introductionVideoSeen, userLanguage, isSupport) { return currentUser && !isSupport && !introductionVideoSeen; });
var getCurrentUserApiKey = function (state) { return state.currentUser.apiKey.value; };
var getCurrentUserMaskedApiKey = function (state) { var _a; return (_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a.apiKeyLastCharacters; };
var isCurrentUserApiKeyLoading = function (state) { return state.currentUser.apiKey.loading; };
var getCurrentUserApiKeyError = function (state) { return state.currentUser.apiKey.error; };
var shouldSetUserAdditionalInfo = function (state) { var _a; return ((_a = state.currentUser.user.profile) === null || _a === void 0 ? void 0 : _a._links.initAdditionalInfo.denied) === false; };
var isUserAdditionalInfoUpdating = function (state) { return state.currentUser.updateUserAdditionalInfo.updating; };
var isUserAdditionalInfoUpdated = function (state) { return state.currentUser.updateUserAdditionalInfo.isUpdated; };


/***/ }),

/***/ "jL7h":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $0: () => (/* binding */ getWidgetConstructorSegments),
/* harmony export */   $n: () => (/* binding */ getWidgetConstructorDashboardLayout),
/* harmony export */   $r: () => (/* binding */ canEditWidget),
/* harmony export */   $y: () => (/* binding */ getPublicDashboardToken),
/* harmony export */   A7: () => (/* binding */ canExportCustomDashboard),
/* harmony export */   Bc: () => (/* binding */ canShareCustomDashboard),
/* harmony export */   Bh: () => (/* binding */ getWidgetConstructorGeneralTopicInfo),
/* harmony export */   C0: () => (/* binding */ isDashboardWidgetStatisticsLoading),
/* harmony export */   CN: () => (/* binding */ getCustomDashboardColumnsCount),
/* harmony export */   CP: () => (/* binding */ getIsPublicDashboard),
/* harmony export */   DT: () => (/* binding */ getWidgetConstructorSegmentTopicInfo),
/* harmony export */   DY: () => (/* binding */ isDashboardExportLoading),
/* harmony export */   JK: () => (/* binding */ getWidgetConstructorUiConfig),
/* harmony export */   Jw: () => (/* binding */ canCreateWidget),
/* harmony export */   Jx: () => (/* binding */ canCreateCustomDashboards),
/* harmony export */   Pe: () => (/* binding */ getCustomDashboardTopicIds),
/* harmony export */   Qe: () => (/* binding */ getDashboardWidgetStatisticsData),
/* harmony export */   RB: () => (/* binding */ getWidgetConstructorPreviewData),
/* harmony export */   T0: () => (/* binding */ getDashboardExportError),
/* harmony export */   UE: () => (/* binding */ canDeleteWidget),
/* harmony export */   VW: () => (/* binding */ getWidgetConstructor),
/* harmony export */   YG: () => (/* binding */ getDashboardWidgetEntities),
/* harmony export */   Z$: () => (/* binding */ isCustomDashboardCreationInProgress),
/* harmony export */   ZL: () => (/* binding */ isWidgetConstructorPreviewDataLoading),
/* harmony export */   Zb: () => (/* binding */ canChangeDashboard),
/* harmony export */   bm: () => (/* binding */ isCustomDashboardWidgetCreationInProgress),
/* harmony export */   eH: () => (/* binding */ isWidgetLimitReached),
/* harmony export */   ep: () => (/* binding */ getWidgetConstructorEntities),
/* harmony export */   fH: () => (/* binding */ isCustomDashboardsLoading),
/* harmony export */   gp: () => (/* binding */ isCustomDashboardsLimitReached),
/* harmony export */   gt: () => (/* binding */ isCustomDashboardDeletionInProgress),
/* harmony export */   hx: () => (/* binding */ getCustomDashboardsPreview),
/* harmony export */   i6: () => (/* binding */ getListEntities),
/* harmony export */   jp: () => (/* binding */ getCustomDashboards),
/* harmony export */   kn: () => (/* binding */ isWidgetAvailable),
/* harmony export */   lp: () => (/* binding */ isCustomDashboardUpdateInProgress),
/* harmony export */   mU: () => (/* binding */ getDashboardWidgetStatisticsError),
/* harmony export */   mv: () => (/* binding */ isCustomDashboardsLoaded),
/* harmony export */   o$: () => (/* binding */ getCustomDashboard),
/* harmony export */   tZ: () => (/* binding */ getWidgetConstructorConfig),
/* harmony export */   tm: () => (/* binding */ canChangeDashboardLayout),
/* harmony export */   tx: () => (/* binding */ getWidgetConstructorPreviewDataError),
/* harmony export */   vX: () => (/* binding */ getDashboardWidget),
/* harmony export */   w5: () => (/* binding */ getCustomDashboardFirstTopicId),
/* harmony export */   wF: () => (/* binding */ isDashboardWidgetGeneralTopicInfoLoading),
/* harmony export */   wK: () => (/* binding */ canDeleteDashboard),
/* harmony export */   z8: () => (/* binding */ getCustomDashboardGeneralTopicInfo),
/* harmony export */   zj: () => (/* binding */ getCustomDashboardsError),
/* harmony export */   zu: () => (/* binding */ isCustomDashboardWidgetUpdateInProgress)
/* harmony export */ });
/* unused harmony exports getCustomDashboardStatsByKey, createCustomDashboardStatsSelector, isCustomDashboardGeneralTopicInfoLoading, getCustomDashboardGeneralTopicInfoError, isCustomDashboardWidgetDeletionInProgress, getCustomDashboardCreationError, getCustomDashboardUpdateError, isWidgetConstructorGeneralTopicInfoLoading, isDashboardWidgetStatisticsLoaded */
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var models_CustomDashboards__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("svtq");
/* harmony import */ var models_Mention__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("+Trc");
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("sYBo");
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("XFM9");
/* harmony import */ var state_customDashboards_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("8scP");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("+Oxy");
/* harmony import */ var state_entities_reducer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("0w9K");
/* harmony import */ var state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("Z+iQ");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("Qyqr");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("3o2z");
/* harmony import */ var utils_getColorName__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("HIua");
/* harmony import */ var utils_translations_aspectTranslation__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__("0hC/");
/* harmony import */ var utils_translations_autoCategoriesTranslation__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("e4Wn");
/* harmony import */ var utils_translations_collectionMethodsFilterTranslations__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__("Rotz");
/* harmony import */ var utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("xTZp");
/* harmony import */ var utils_translations_contentTypeTranslations__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("yJPc");
/* harmony import */ var utils_translations_getCountryNameTranslation__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("ExDt");
/* harmony import */ var utils_translations_countryGroupTranslations__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("OA2L");
/* harmony import */ var utils_translations_getLanguageFilterTranslations__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("nJxM");
/* harmony import */ var utils_translations_subjectsFilterTranslation__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("/KsC");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};





















var getCustomDashboardStatsByKey = function (state, dashboardId, widgetId, key) { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = state === null || state === void 0 ? void 0 : state.customDashboards) === null || _a === void 0 ? void 0 : _a.statistics) === null || _b === void 0 ? void 0 : _b[dashboardId]) === null || _c === void 0 ? void 0 : _c[widgetId]) === null || _d === void 0 ? void 0 : _d[key]; };
var createCustomDashboardStatsSelector = function (key) { return function (dashboardId, widgetId) {
    return function (state) { return getCustomDashboardStatsByKey(state, dashboardId, widgetId, key); };
}; };
var isCustomDashboardsLoading = function (state) { return state.customDashboards.dashboards.loading; };
var isCustomDashboardsLoaded = function (state) { return state.customDashboards.dashboards.loaded; };
var getCustomDashboardsError = function (state) { return state.customDashboards.dashboards.error; };
var isCustomDashboardGeneralTopicInfoLoading = function (state) { return state.customDashboards.topicInfo.loading; };
var getCustomDashboardGeneralTopicInfoError = function (state) { return state.customDashboards.topicInfo.error; };
var getCustomDashboardGeneralTopicInfo = function (state) { return state.customDashboards.topicInfo.data || {}; };
var isCustomDashboardDeletionInProgress = function (state) {
    return state.customDashboards.dashboardDeletion.loading;
};
var isCustomDashboardWidgetDeletionInProgress = function (state) {
    return state.customDashboards.widgetDeletion.loading;
};
var isCustomDashboardCreationInProgress = function (state) {
    return state.customDashboards.dashboardCreation.loading;
};
var getCustomDashboardCreationError = function (state) {
    return state.customDashboards.dashboardCreation.error;
};
var isCustomDashboardUpdateInProgress = function (state) {
    return state.customDashboards.dashboardUpdate.loading;
};
var getCustomDashboardUpdateError = function (state) {
    return state.customDashboards.dashboardUpdate.error;
};
var isCustomDashboardWidgetCreationInProgress = function (state) {
    return state.customDashboards.widgetCreation.loading;
};
var isCustomDashboardWidgetUpdateInProgress = function (state) {
    return state.customDashboards.widgetUpdate.loading;
};
var isWidgetConstructorGeneralTopicInfoLoading = function (state) {
    return Object.values(state.customDashboards.widgetConstructor.segmentsInfo).some(function (s) { return s.topicInfo.loading; });
};
var getWidgetConstructorGeneralTopicInfo = function (state) {
    return Object.values(state.customDashboards.widgetConstructor.segmentsInfo).map(function (s) { return s.topicInfo.data; });
};
var isDashboardWidgetGeneralTopicInfoLoading = function (dashboardId, widgetId) { return function (state) {
    if (!widgetId) {
        return isCustomDashboardGeneralTopicInfoLoading(state);
    }
    return isWidgetConstructorGeneralTopicInfoLoading(state);
}; };
var isDashboardExportLoading = function (state) {
    return state.customDashboards.export.loading;
};
var getDashboardExportError = function (state) {
    return state.customDashboards.export.error;
};
var getCustomDashboards = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (dashboards) { return Object.values(dashboards || {}); }, function (state) { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = state.customDashboards) === null || _a === void 0 ? void 0 : _a.dashboards) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.dashboards) !== null && _d !== void 0 ? _d : {}; });
var getCustomDashboardsPreview = (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboards, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeEntities */ .PW, function (dashboards, themes) { return dashboards.map(function (_a) {
    var _b;
    var id = _a.id, name = _a.name, description = _a.description, config = _a.config, _links = _a._links, modifiedBy = _a.modifiedBy, modifiedAt = _a.modifiedAt;
    var defaultTopicName = (_b = themes[config.defaultTopicId]) === null || _b === void 0 ? void 0 : _b.name;
    return ({ id: id, name: name, description: description, defaultTopicName: defaultTopicName, _links: _links, modifiedBy: modifiedBy, modifiedAt: modifiedAt });
}); });
var getCustomDashboard = function (dashboardId) { return function (state) { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = state.customDashboards) === null || _a === void 0 ? void 0 : _a.dashboards) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.dashboards) === null || _d === void 0 ? void 0 : _d[dashboardId]; }; };
var getDashboardWidget = function (dashboardId, widgetId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { var _a, _b; return (_b = (_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.widgets) === null || _b === void 0 ? void 0 : _b[widgetId]; });
};
var isDashboardWidgetStatisticsLoading = createCustomDashboardStatsSelector('loading');
var isDashboardWidgetStatisticsLoaded = createCustomDashboardStatsSelector('loaded');
var getDashboardWidgetStatisticsError = createCustomDashboardStatsSelector('error');
var getDashboardWidgetStatisticsData = createCustomDashboardStatsSelector('data');
var getCustomDashboardColumnsCount = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { var _a; return ((((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.layout) || [])[0] || []).length; }); };
var getSystemTagEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (autoCategories) { return Object.keys(autoCategories)
    .map(function (autoCategory) { return ({ id: autoCategory, name: autoCategories[autoCategory].label }); }); }, utils_translations_autoCategoriesTranslation__WEBPACK_IMPORTED_MODULE_15__/* .getAutoCategoryTranslations */ .kV);
var getResourceTypeEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (types) { return types.map(function (id) { return ({ id: id, name: (0,utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_10__/* .translate */ .Tl)(id) }); }); }, function () { return Object.values(models_Mention__WEBPACK_IMPORTED_MODULE_2__/* .ResourceType */ .vt); });
var getPostTypeEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (types) { return types.map(function (id) { return ({ id: id, name: (0,utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_10__/* .translate */ .Tl)(id) }); }); }, function () { return Object.values(models_Mention__WEBPACK_IMPORTED_MODULE_2__/* .PostType */ .xj); });
var getSourceFormatEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (types) { return types.map(function (id) { return ({ id: id, name: (0,utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_10__/* .translate */ .Tl)(id) }); }); }, function () { return Object.values(models_Mention__WEBPACK_IMPORTED_MODULE_2__/* .SourceFormat */ .vA); });
var getStarRatingEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (types) { return types.map(function (id) { return ({ id: id, name: (0,utils_translations_commonTranslations__WEBPACK_IMPORTED_MODULE_10__/* .translate */ .Tl)(id) }); }); }, function () { return [1, 2, 3, 4, 5]; });
var getContentTypeEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (contentTypes) { return Object.keys(contentTypes)
    .map(function (contentType) { return ({ id: contentType, name: contentTypes[contentType].label }); }); }, utils_translations_contentTypeTranslations__WEBPACK_IMPORTED_MODULE_16__/* .getTranslations */ .$);
var getCountryGroupEntities = (0,redux__WEBPACK_IMPORTED_MODULE_13__/* .compose */ .Zz)(function (countryGroups) { return Object.keys(countryGroups)
    .map(function (countryGroup) { return ({ id: countryGroup, name: countryGroups[countryGroup].label }); }); }, utils_translations_countryGroupTranslations__WEBPACK_IMPORTED_MODULE_12__/* .getTranslations */ .$);
var mapEntities = function (dimension1, dimension2, type) { return function (trends, tags, sources, authors, channels, logos, geos) {
    var languages = (0,utils_translations_getLanguageFilterTranslations__WEBPACK_IMPORTED_MODULE_17__/* .getLanguageFilterTranslations */ .r)();
    var languageEntities = Object.keys(languages)
        .reduce(function (accum, code) { return __spreadArray(__spreadArray([], __read(accum), false), [{ id: code, name: languages[code] }], false); }, []);
    var countryEntities = (0,utils_translations_getCountryNameTranslation__WEBPACK_IMPORTED_MODULE_11__/* .getCountryNames */ .zb)().map(function (_a) {
        var code = _a.code, name = _a.name;
        return ({ id: code, name: name });
    });
    var systemTagsEntities = getSystemTagEntities();
    var resourceTypesEntities = getResourceTypeEntities();
    var postTypesEntities = getPostTypeEntities();
    var sourceFormatEntities = getSourceFormatEntities();
    var starRatingEntities = getStarRatingEntities();
    var contentTypesEntities = getContentTypeEntities();
    var countryGroupEntities = getCountryGroupEntities();
    var subjects = (0,utils_translations_subjectsFilterTranslation__WEBPACK_IMPORTED_MODULE_18__/* .getSubjectTranslations */ .V8)();
    var subjectEntities = Object.keys(subjects).map(function (id) { return ({ id: id, name: subjects[id].label }); });
    var aspects = (0,utils_translations_aspectTranslation__WEBPACK_IMPORTED_MODULE_19__/* .getTranslations */ .$)();
    var aspectEntities = Object.keys(aspects).map(function (id) { return ({ id: id, name: aspects[id].label }); });
    var indirectEntities = [
        { id: true, name: l('Comments not matching query') },
        { id: false, name: l('Comments matching query') }
    ];
    var colorEntities = Object.keys(utils_getColorName__WEBPACK_IMPORTED_MODULE_9__/* .colorNames */ .i).map(function (code) { return ({ id: code, name: utils_getColorName__WEBPACK_IMPORTED_MODULE_9__/* .colorNames */ .i[code] }); });
    var collectionMethods = (0,utils_translations_collectionMethodsFilterTranslations__WEBPACK_IMPORTED_MODULE_20__/* .getCollectionMethodTranslations */ .O$)();
    var collectionMethodEntities = Object.keys(collectionMethods).map(function (id) { return ({ id: id, name: collectionMethods[id].label }); });
    var entities = {
        trends: trends,
        tags: tags,
        sources: sources,
        languages: (0,utils_translations_getLanguageFilterTranslations__WEBPACK_IMPORTED_MODULE_17__/* .getLanguageFilterTranslations */ .r)(),
        authors: authors,
        channels: channels.merge(authors),
        logos: logos,
        influencers: authors,
        regionIds: geos.map(function (value) {
            var _a;
            return ({
                id: value.get('regionId', ''),
                name: value.get('region', ''),
                'hc-key': (_a = value.get('mapRegions')) === null || _a === void 0 ? void 0 : _a.first(),
            });
        }),
        cityIds: geos.map(function (value) { return ({
            id: value.get('cityId', ''),
            name: value.get('city', ''),
        }); }),
    };
    var necessaryEntities = [dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.type, dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.type];
    var entityNames = __spreadArray(__spreadArray([], __read(state_entities_reducer__WEBPACK_IMPORTED_MODULE_5__/* .defaultEntities */ .bl.keySeq().toJS()), false), [
        'influencers',
        'regionIds',
        'cityIds'
    ], false);
    return necessaryEntities
        .filter(function (key) { return entityNames.includes(key); })
        .reduce(function (accum, key) { var _a, _b; return accum.concat(((_b = (_a = entities[key.toString()]) === null || _a === void 0 ? void 0 : _a.valueSeq()) === null || _b === void 0 ? void 0 : _b.toJS()) || []); }, [])
        .concat(necessaryEntities.includes('languages') ? languageEntities : [])
        .concat(necessaryEntities.includes('countryGroups') ? countryGroupEntities : [])
        .concat(necessaryEntities.includes('countries') ? countryEntities : [])
        .concat(necessaryEntities.includes('systemTags') ? systemTagsEntities : [])
        .concat(necessaryEntities.includes('resourceTypes') ? resourceTypesEntities : [])
        .concat(necessaryEntities.includes('postTypes') ? postTypesEntities : [])
        .concat(necessaryEntities.includes('sourceFormat') ? sourceFormatEntities : [])
        .concat(necessaryEntities.includes('starRating') ? starRatingEntities : [])
        .concat(necessaryEntities.includes('contentTypes') ? contentTypesEntities : [])
        .concat(necessaryEntities.includes('subjects') ? subjectEntities : [])
        .concat(necessaryEntities.includes('indirect') ? indirectEntities : [])
        .concat(necessaryEntities.includes('sentimentAspects') ? aspectEntities : [])
        .concat(necessaryEntities.includes('imageColors') ? colorEntities : [])
        .concat(necessaryEntities.includes('collectionMethods') ? collectionMethodEntities : []);
}; };
var getDashboardWidgetEntities = function (dashboardId, widgetId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getDashboardWidget(dashboardId, widgetId), state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getTrendEntities */ .zR, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getTagEntities */ .ul, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getSourceEntities */ .tw, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getAuthorEntities */ .fU, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getChannelEntities */ .JK, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getLogosEntities */ .CD, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getGeoEntities */ .vQ, function (widget) {
    var entities = [];
    for (var _i = 1; _i < arguments.length; _i++) {
        entities[_i - 1] = arguments[_i];
    }
    return mapEntities(widget === null || widget === void 0 ? void 0 : widget.dimension1, (widget.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_1__/* .CustomDashboardWidgetType */ .qP.geo ? { type: 'regionIds' } : widget === null || widget === void 0 ? void 0 : widget.dimension2), widget === null || widget === void 0 ? void 0 : widget.type).apply(void 0, __spreadArray([], __read(entities), false));
}); };
var getListEntities = (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getSourceEntities */ .tw, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getMentionEntities */ .W2, function (sources, mentions) {
    return Object.values(mentions)
        .map(function (entity) {
        var mention = (0,lodash__WEBPACK_IMPORTED_MODULE_0__.cloneDeep)(entity);
        var sourceId = mention.source;
        mention.source = sources[sourceId];
        return mention;
    });
});
var getCustomDashboardTopicIds = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getThemeWithoutStatsIds */ .h7, getCustomDashboard(dashboardId), function (topicIds, dashboard) {
    var _a;
    var widgets = Object.values(((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.widgets) || {});
    var segmentsTopics = widgets.map(state_customDashboards_utils__WEBPACK_IMPORTED_MODULE_3__/* .getTopicIdsFromWidgetSegments */ .uj).flat();
    return __spreadArray([], __read(new Set(__spreadArray([], __read(segmentsTopics), false))), false).filter(function (id) { return topicIds
        .some(function (topicId) { return topicId.toString() === id; }); });
}); };
var getCustomDashboardFirstTopicId = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboardTopicIds(dashboardId), function (ids) { return ids[0]; }); };
var getWidgetConstructorConfig = function (state) { return state.customDashboards.widgetConstructor.config; };
var getWidgetConstructor = function (state) { return state.customDashboards.widgetConstructor; };
var isWidgetConstructorPreviewDataLoading = function (state) {
    return state.customDashboards.widgetConstructor.preview.loading;
};
var getWidgetConstructorPreviewDataError = function (state) {
    return state.customDashboards.widgetConstructor.preview.error;
};
var getWidgetConstructorPreviewData = function (state) {
    return state.customDashboards.widgetConstructor.preview.data;
};
var getWidgetConstructorEntities = function (dimension1, dimension2, type) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getTrendEntities */ .zR, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getTagEntities */ .ul, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getSourceEntities */ .tw, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getAuthorEntities */ .fU, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getChannelEntities */ .JK, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getLogosEntities */ .CD, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getGeoEntities */ .vQ, state_entities_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getMentionEntities */ .W2, mapEntities(dimension1, dimension2 || { type: 'regionIds' }, type));
};
var getWidgetConstructorDashboardLayout = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (state) { return state.customDashboards.widgetConstructor.layout; }, function (dashboard, layout) {
    var _a;
    return layout || ((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.layout) || [];
}); };
var isWidgetAvailable = function (dashboardId, widgetId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getThemeWithoutStatsIds */ .h7, getDashboardWidget(dashboardId, widgetId), function (topicIds, widget) {
    var _a;
    if ((0,lodash__WEBPACK_IMPORTED_MODULE_0__.isEmpty)(topicIds) || !widget)
        return true;
    var ids = topicIds || [];
    var widgetTopicIds = (_a = widget.segments) === null || _a === void 0 ? void 0 : _a.map(function (s) { return s.topicId; });
    return widgetTopicIds.every(function (wId) { return ids.includes(wId); });
}); };
var canCreateCustomDashboards = function (state) {
    return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('createDashboardRequest')(state.customDashboards.dashboards.data);
};
var isCustomDashboardsLimitReached = function (state) {
    return !(0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('createDashboardRequest')(state.customDashboards.dashboards.data)
        && (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getFeatureDenyReason */ .Ni)('createDashboardRequest')(state.customDashboards.dashboards.data) === 'DASHBOARDS_LIMIT_REACHED';
};
var canShareCustomDashboard = function (state) {
    return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('shareDashboardRequest')(state.customDashboards.dashboards.data);
};
var canExportCustomDashboard = function (state) {
    return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('exportDashboardRequest')(state.customDashboards.dashboards.data);
};
var canCreateWidget = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('addWidgetRequest')(dashboard); }); };
var isWidgetLimitReached = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { return !(0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('addWidgetRequest')(dashboard)
    && (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getFeatureDenyReason */ .Ni)('addWidgetRequest')(dashboard) === 'SUBSCRIPTION_FEATURE_UNAVAILABLE'; }); };
var canChangeDashboard = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('changeDashboardRequest')(dashboard); }); };
var canChangeDashboardLayout = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('changeLayoutRequest')(dashboard); }); };
var canDeleteDashboard = function (dashboardId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getCustomDashboard(dashboardId), function (dashboard) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('deleteDashboard')(dashboard); }); };
var canEditWidget = function (dashboardId, widgetId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getDashboardWidget(dashboardId, widgetId), function (widget) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('changeWidgetRequest')(widget); }); };
var canDeleteWidget = function (dashboardId, widgetId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_14__/* .createSelector */ .Mz)(getDashboardWidget(dashboardId, widgetId), function (widget) { return (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .isFeatureAllowed */ .To)('deleteWidgetRequest')(widget); }); };
var getWidgetConstructorUiConfig = function (state) {
    return state.customDashboards.widgetConstructor.uiConfig;
};
var getIsPublicDashboard = function (state) { return state.customDashboards.public.isPublicDashboard; };
var getPublicDashboardToken = function (state) { return state.customDashboards.public.token; };
// TODO: check
var getWidgetConstructorSegments = function (state) { return state.customDashboards.widgetConstructor.segmentsInfo; };
var getWidgetConstructorSegmentTopicInfo = function (segment) { return function (state) { var _a, _b; return ((_b = (_a = state.customDashboards.widgetConstructor.segmentsInfo) === null || _a === void 0 ? void 0 : _a[segment.key]) === null || _b === void 0 ? void 0 : _b.topicInfo) || {}; }; };


/***/ }),

/***/ "7lJ6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Or: () => (/* binding */ canShowSubjectsForDashboardWidgetFilter),
/* harmony export */   Ow: () => (/* binding */ canAccessTrendsForDashboardWidgetFilter),
/* harmony export */   YV: () => (/* binding */ canShowLogoForDashboardWidgetFilter),
/* harmony export */   aM: () => (/* binding */ getDashboardWidgetSegmentFilter),
/* harmony export */   cV: () => (/* binding */ isCustomDashboardWidgetForSingleTopic),
/* harmony export */   ep: () => (/* binding */ getCustomDashboardFilter),
/* harmony export */   jV: () => (/* binding */ getCustomDashboardDateRange),
/* harmony export */   r2: () => (/* binding */ canShowImageRecognitionForDashboardWidgetFilter),
/* harmony export */   uR: () => (/* binding */ canShowAspectsForDashboardWidgetFilter)
/* harmony export */ });
/* unused harmony exports canShowAspectsForCustomDashboardFilter, canShowSubjectsForCustomDashboardFilter, canShowLogoForCustomDashboardFilter, canAccessTrendsForCustomDashboardFilter, canAccessImageRecognitionForCustomDashboardFilter, canShowAspectsForWidgetConstructorFilter, canShowSubjectsForWidgetConstructorFilter, canShowLogoForWidgetConstructorFilter, canShowImageRecognitionForWidgetConstructorFilter, canAccessTrendsForWidgetConstructorFilter, getDashboardWidgetSegments, isCustomDashboardForSingleTopic */
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+MLa");
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("+Oxy");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("KG/6");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("3o2z");
/* harmony import */ var _dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("jL7h");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var getCustomDashboardFirstTopic = function (dashboardId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getCustomDashboardFirstTopicId */ .w5)(dashboardId), _dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getCustomDashboardGeneralTopicInfo */ .z8, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getThemeEntities */ .PW, function (id, topics, topicsEntities) {
        var topic = topics[id] || {};
        var topicEntity = topicsEntities[parseInt(id, 10)] || {};
        return __assign(__assign({}, topicEntity), topic);
    });
};
var isCustomDashboardFilterAllowed = function (featureName) { return function (dashboardId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getCustomDashboardFirstTopic(dashboardId), (0,state_utils__WEBPACK_IMPORTED_MODULE_3__/* .isFeatureAllowed */ .To)(featureName));
}; };
var canShowAspectsForCustomDashboardFilter = isCustomDashboardFilterAllowed('aspects');
var canShowSubjectsForCustomDashboardFilter = isCustomDashboardFilterAllowed('subjectsFilter');
var canShowLogoForCustomDashboardFilter = isCustomDashboardFilterAllowed('logoFilter');
var canAccessTrendsForCustomDashboardFilter = isCustomDashboardFilterAllowed('trends');
var canAccessImageRecognitionForCustomDashboardFilter = isCustomDashboardFilterAllowed('visualInsights');
var getWidgetConstructorTopics = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getWidgetConstructorGeneralTopicInfo */ .Bh, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getThemeEntities */ .PW, function (topics, topicsEntities) {
    return topics.map(function (topic) {
        var topicEntity = topicsEntities[topic === null || topic === void 0 ? void 0 : topic.id] || {};
        return __assign(__assign({}, topicEntity), topic);
    });
});
var isWidgetConstructorFilterAllowed = function (featureName) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getWidgetConstructorTopics, function (topics) { return topics.every((0,state_utils__WEBPACK_IMPORTED_MODULE_3__/* .isFeatureAllowed */ .To)(featureName)); });
};
var canShowAspectsForWidgetConstructorFilter = isWidgetConstructorFilterAllowed('aspects');
var canShowSubjectsForWidgetConstructorFilter = isWidgetConstructorFilterAllowed('subjectsFilter');
var canShowLogoForWidgetConstructorFilter = isWidgetConstructorFilterAllowed('logoFilter');
var canShowImageRecognitionForWidgetConstructorFilter = isWidgetConstructorFilterAllowed('visualInsights');
var canAccessTrendsForWidgetConstructorFilter = isWidgetConstructorFilterAllowed('trends');
var canShowAspectsForDashboardWidgetFilter = function (dashboardId, widgetId) { return function (state) {
    if (!widgetId) {
        return canShowAspectsForCustomDashboardFilter(dashboardId)(state);
    }
    return canShowAspectsForWidgetConstructorFilter(state);
}; };
var canShowSubjectsForDashboardWidgetFilter = function (dashboardId, widgetId) { return function (state) {
    if (!widgetId) {
        return canShowSubjectsForCustomDashboardFilter(dashboardId)(state);
    }
    return canShowSubjectsForWidgetConstructorFilter(state);
}; };
var canShowLogoForDashboardWidgetFilter = function (dashboardId, widgetId) { return function (state) {
    if (!widgetId) {
        return canShowLogoForCustomDashboardFilter(dashboardId)(state);
    }
    return canShowLogoForWidgetConstructorFilter(state);
}; };
var canShowImageRecognitionForDashboardWidgetFilter = function (dashboardId, widgetId) { return function (state) {
    if (!widgetId) {
        return canAccessImageRecognitionForCustomDashboardFilter(dashboardId)(state);
    }
    return canShowImageRecognitionForWidgetConstructorFilter(state);
}; };
var canAccessTrendsForDashboardWidgetFilter = function (dashboardId, widgetId) { return function (state) {
    if (!widgetId) {
        return canAccessTrendsForCustomDashboardFilter(dashboardId)(state);
    }
    return canAccessTrendsForWidgetConstructorFilter(state);
}; };
var getCustomDashboardFilter = function (dashboardId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getQuery */ .$Z, (0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getCustomDashboard */ .o$)(dashboardId), function (state) { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = state.customDashboards.data) === null || _a === void 0 ? void 0 : _a.dashboards) === null || _b === void 0 ? void 0 : _b[Number(dashboardId)]) === null || _c === void 0 ? void 0 : _c.config) === null || _d === void 0 ? void 0 : _d.filter; }, function (query, dashboard, selectedFilter) {
        var _a, _b;
        if (query.filter)
            return models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.fromQuery(query.filter);
        if (selectedFilter)
            return models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.fromApi(selectedFilter);
        if (query.filter === '' || !((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.filter))
            return models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.fromQuery({});
        return models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.fromNewApi((_b = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _b === void 0 ? void 0 : _b.filter);
    });
};
var getDashboardWidgetSegments = function (dashboardId, widgetId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getDashboardWidget */ .vX)(dashboardId, widgetId), function (widget) { var _a; return ((_a = widget === null || widget === void 0 ? void 0 : widget.segments) === null || _a === void 0 ? void 0 : _a.map(function (s) { return (__assign(__assign({}, s), { filter: models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.fromApi(s.filter) })); })) || []; }); };
var getDashboardWidgetSegmentFilter = function (dashboardId, widgetId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getCustomDashboardFilter(dashboardId), getDashboardWidgetSegments(dashboardId, widgetId), function (dashboardFilters, segments) {
        var result = {};
        segments.forEach(function (s) {
            result[s.key] = models_filters_Filter__WEBPACK_IMPORTED_MODULE_0__/* .Filter */ .dJ.merge(s.filter, dashboardFilters);
        });
        return result;
    });
};
var isCustomDashboardForSingleTopic = function (dashboardId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getCustomDashboardTopicIds */ .Pe)(dashboardId), function (ids) { return ids.length === 1; });
};
var isCustomDashboardWidgetForSingleTopic = function (dashboardId, widgetId) {
    if (!widgetId) {
        return isCustomDashboardForSingleTopic(dashboardId);
    }
    return function () { return true; };
};
var getCustomDashboardDateRange = function (dashboardId) {
    return (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getQuery */ .$Z, (0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_4__/* .getCustomDashboard */ .o$)(dashboardId), function (state) { var _a, _b, _c, _d; return (_d = (_c = (_b = (_a = state.customDashboards.data) === null || _a === void 0 ? void 0 : _a.dashboards) === null || _b === void 0 ? void 0 : _b[Number(dashboardId)]) === null || _c === void 0 ? void 0 : _c.config) === null || _d === void 0 ? void 0 : _d.dateRange; }, function (query, dashboard, selectedRange) {
        var _a;
        if (query.dateRange)
            return query.dateRange;
        if (selectedRange)
            return selectedRange.type ? selectedRange : null;
        return (_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.dateRange;
    });
};


/***/ }),

/***/ "D6/I":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   i: () => (/* binding */ customDashboardsModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("f0Wu");
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(moment_timezone__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var string_hash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("9kyW");
/* harmony import */ var string_hash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(string_hash__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("kHEK");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("IH55");
/* harmony import */ var state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("7lJ6");
/* harmony import */ var utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("LYLD");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("872o");
/* harmony import */ var utils_localization__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("Q/k7");
/* harmony import */ var state_account_selectors__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("FFtF");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("+9Gl");
/* harmony import */ var state_routing_actions__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("8W5t");
/* harmony import */ var containers_customDashboard_CustomDashboardTemplates_templates__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("BIvI");
/* harmony import */ var utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("7vdz");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("KG/6");
/* harmony import */ var models_Aggregation__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("ttpX");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("Qyqr");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("+MLa");
/* harmony import */ var utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__("ZcyI");
/* harmony import */ var utils_customDashboards_dates__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__("wlTg");
/* harmony import */ var utils_customDashboards_segments__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__("N9LX");
/* harmony import */ var state_metaData_model__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__("Jpep");
/* harmony import */ var state_themes_model__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__("JJJ0");
/* harmony import */ var _dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__("jL7h");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__("8scP");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
/* eslint-disable func-names,require-yield,generator-star-spacing,no-console */


























var defaultLoadingState = { loading: false, error: null };
var initialConfig = {
    id: null,
    name: '',
    type: null,
    aggregationMetric: null,
    aggregationOptions: null,
    dimension1: null,
    dimension2: null,
    widgetOptions: {
        mapPosition: null,
        orientation: null,
        valueDisplayKind: null,
        omittedDataKeys: [],
        sortByUniqueWords: true,
        wordCloudColorPalette: 'default',
        shouldShowWordsSentiment: false,
        visibleRange: { from: 10, to: 99 },
        content: null,
    },
    segments: [],
    _links: null,
};
var initialUiConfig = {
    mapPosition: null,
    orientation: null,
    valueDisplayKind: null,
    shouldStoreMapPosition: false,
    omittedDataKeys: [],
    wordCloudColorPalette: 'default',
    shouldShowWordsSentiment: false,
    sortByUniqueWords: true,
    visibleRange: { from: 10, to: 99 },
    content: null,
};
var initialWidgetConstructorState = Object.freeze({
    previewFilter: null,
    filter: null,
    layout: null,
    segmentsInfo: {},
    facets: __assign(__assign({}, defaultLoadingState), { data: null }),
    preview: __assign(__assign({}, defaultLoadingState), { data: null }),
    config: initialConfig,
    initialConfig: null,
    uiConfig: initialUiConfig,
    isChangeLegend: false,
});
var CustomDashboardsModel = /** @class */ (function (_super) {
    __extends(CustomDashboardsModel, _super);
    function CustomDashboardsModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            public: { isPublicDashboard: false, token: null },
            dashboards: {
                data: null,
                error: null,
                loaded: false,
                loading: false,
            },
            statistics: {
                error: null,
            },
            dashboardCreation: defaultLoadingState,
            export: defaultLoadingState,
            widgetUpdate: defaultLoadingState,
            widgetDeletion: defaultLoadingState,
            widgetCreation: defaultLoadingState,
            dashboardUpdate: defaultLoadingState,
            dashboardDeletion: defaultLoadingState,
            topicInfo: __assign(__assign({}, defaultLoadingState), { data: null }),
            widgetConstructor: initialWidgetConstructorState,
            data: null,
        };
        return _this;
    }
    CustomDashboardsModel.prototype.setPublicToken = function (payload) {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.public.isPublicDashboard = true;
                state.public.token = payload.token;
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.fetchDashboards = function () {
        var data_1, dashboards_1, dashboardsKey, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.dashboards.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .all */ .Q7)([
                            (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(state_themes_model__WEBPACK_IMPORTED_MODULE_23__/* .themesModel */ .i.fetchThemesWithoutStats.bind(state_themes_model__WEBPACK_IMPORTED_MODULE_23__/* .themesModel */ .i)),
                            (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(state_metaData_model__WEBPACK_IMPORTED_MODULE_22__/* .metaDataModel */ .v.fetchAspects.bind(state_metaData_model__WEBPACK_IMPORTED_MODULE_22__/* .metaDataModel */ .v))
                        ])];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.getList)];
                case 2:
                    data_1 = _a.sent();
                    dashboards_1 = data_1.dashboards.reduce((0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .idMapperReducer */ .xb)(), {});
                    // TODO: remove when BE migrates all date ranges to segments
                    for (dashboardsKey in dashboards_1) {
                        dashboards_1[dashboardsKey] = this.migrateDateRangeToSegments(dashboards_1[dashboardsKey]);
                    }
                    this.updateWithImmer(function (state) {
                        state.dashboards.loading = false;
                        state.dashboards.loaded = true;
                        state.dashboards.data = {
                            dashboards: dashboards_1,
                            _links: data_1._links,
                        };
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboards.loading = false;
                        state.dashboards.loaded = true;
                        state.dashboards.data = null;
                        state.dashboards.error = error_1;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchDashboard = function (dashboardId, options) {
        var data_2, dashboard_1, filter, dateRange, error_2;
        if (options === void 0) { options = { hideLoader: false, setFilter: false }; }
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    this.updateWithImmer(function (state) {
                        if (!options.hideLoader) {
                            state.dashboards.loading = true;
                        }
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .all */ .Q7)([
                            (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(state_themes_model__WEBPACK_IMPORTED_MODULE_23__/* .themesModel */ .i.fetchThemesWithoutStats.bind(state_themes_model__WEBPACK_IMPORTED_MODULE_23__/* .themesModel */ .i)),
                            (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(state_metaData_model__WEBPACK_IMPORTED_MODULE_22__/* .metaDataModel */ .v.fetchAspects.bind(state_metaData_model__WEBPACK_IMPORTED_MODULE_22__/* .metaDataModel */ .v))
                        ])];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.get, dashboardId)];
                case 2:
                    data_2 = _a.sent();
                    dashboard_1 = this.migrateDateRangeToSegments((0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .dashboardWidgetsMapper */ .Xz)(data_2.dashboard));
                    if (!options.setFilter) return [3 /*break*/, 4];
                    filter = models_filters_Filter__WEBPACK_IMPORTED_MODULE_18__/* .Filter */ .dJ.fromApi(dashboard_1.config.filter);
                    dateRange = dashboard_1.config.dateRange;
                    return [4 /*yield*/, this.setCustomDashboardFilter({ dashboardId: dashboardId, filter: filter, dateRange: dateRange })];
                case 3:
                    _a.sent();
                    _a.label = 4;
                case 4: return [4 /*yield*/, this.fetchCustomDashboardGeneralTopicInfo({ dashboardId: dashboardId })];
                case 5:
                    _a.sent();
                    this.updateWithImmer(function (state) {
                        var _a;
                        var _b;
                        state.dashboards.loading = false;
                        state.dashboards.loaded = true;
                        (_a = (_b = state.dashboards).data) !== null && _a !== void 0 ? _a : (_b.data = {
                            dashboards: {},
                            _links: data_2._links,
                        });
                        state.dashboards.data.dashboards[dashboardId] = dashboard_1;
                    });
                    return [3 /*break*/, 7];
                case 6:
                    error_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboards.loading = false;
                        state.dashboards.loaded = true;
                        state.dashboards.data = null;
                        state.dashboards.error = error_2;
                    });
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    /**
     * Migrates date ranges for each segment in old widgets with outdated date range settings.
     * This function takes an original dashboard, creates a deep clone, and updates the date ranges
     * within each segment of widgets where it's missing. The modified dashboard is then returned.
     *
     * @param originalDashboard - The original dashboard view with potentially outdated date range settings.
     * @returns The modified dashboard with updated date ranges for each segment in applicable widgets.
     */
    CustomDashboardsModel.prototype.migrateDateRangeToSegments = function (originalDashboard) {
        var _a;
        // TODO: remove when BE migrates all date ranges to segments
        var dashboard = (0,lodash__WEBPACK_IMPORTED_MODULE_7__.cloneDeep)(originalDashboard);
        var _loop_1 = function (widgetsKey) {
            var widget = dashboard.config.widgets[widgetsKey];
            var updatedSegments = widget.segments.map(function (segment) {
                if (!(segment === null || segment === void 0 ? void 0 : segment.dateRange)) {
                    return __assign(__assign({}, segment), { dateRange: (widget.dateRange || utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__/* .DEFAULT_DATE_RANGE */ .Rc) });
                }
                return segment;
            });
            widget.segments = updatedSegments;
        };
        for (var widgetsKey in (_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.widgets) {
            _loop_1(widgetsKey);
        }
        return dashboard;
    };
    CustomDashboardsModel.prototype.updateCustomDashboardLayout = function (_a) {
        var account, hasCustomDashboardsAddon, error_3;
        var _b;
        var dashboardId = _a.dashboardId, layout = _a.layout;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data', 'dashboards', dashboardId, 'config', 'layout'], layout);
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.updateLayout, { dashboardId: dashboardId, layout: layout })];
                case 1:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_account_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getAccountInfo */ .Gf)];
                case 2:
                    account = _c.sent();
                    hasCustomDashboardsAddon = !!((_b = account.addons) === null || _b === void 0 ? void 0 : _b.customDashboards);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: dashboard updated',
                            properties: {
                                addon: hasCustomDashboardsAddon,
                                layout: true,
                                name: false,
                                description: false,
                            },
                        }))];
                case 3:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboard(dashboardId))];
                case 4:
                    _c.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_3 = _c.sent();
                    console.error({ error: error_3 });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.updateCustomDashboardDateRangePeriod = function (_a) {
        var query, filter, error_4;
        var dashboardId = _a.dashboardId, dateRange = _a.dateRange;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data', 'dashboards', dashboardId, 'config', 'dateRange'], dateRange || {});
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_15__/* .getQuery */ .$Z)];
                case 1:
                    query = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .update */ .yo)({
                            query: __assign(__assign({}, query), { dateRange: dateRange || '' }),
                        }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardFilter */ .ep)];
                case 3:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchWidgetsData(dashboardId, { filter: filter, dateRange: dateRange }))];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_4 = _b.sent();
                    console.error({ error: error_4 });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.setCustomDashboardFilter = function (_a) {
        var query, updatedQuery, error_5;
        var dashboardId = _a.dashboardId, filter = _a.filter, dateRange = _a.dateRange;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data', 'dashboards', dashboardId, 'config', 'filter'], filter.toApi());
                        if (dateRange) {
                            (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data', 'dashboards', dashboardId, 'config', 'dateRange'], dateRange || {});
                        }
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_15__/* .getQuery */ .$Z)];
                case 1:
                    query = _b.sent();
                    updatedQuery = __assign(__assign({}, query), { filter: (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_6__/* .parseQuery */ .mA)(filter.toQueryString()), dateRange: dateRange || '' });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .update */ .yo)({
                            query: (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .getNonEmptyQuery */ .FA)(updatedQuery),
                        }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchWidgetsData(dashboardId, { filter: filter, dateRange: dateRange }))];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_5 = _b.sent();
                    console.error({ error: error_5 });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.clearCustomDashboardFilter = function (_a) {
        var query, error_6;
        var dashboardId = _a.dashboardId, preventWidgetDataFetching = _a.preventWidgetDataFetching;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data', 'dashboards', dashboardId, 'config', 'filter'], {});
                        (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data', 'dashboards', dashboardId, 'config', 'dateRange'], {});
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_15__/* .getQuery */ .$Z)];
                case 1:
                    query = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .update */ .yo)({ query: __assign(__assign({}, query), { filter: {}, dateRange: '' }) }))];
                case 2:
                    _b.sent();
                    if (!!preventWidgetDataFetching) return [3 /*break*/, 4];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchWidgetsData(dashboardId, {
                            filter: models_filters_Filter__WEBPACK_IMPORTED_MODULE_18__/* .Filter */ .dJ.empty(),
                            dateRange: null,
                        }))];
                case 3:
                    _b.sent();
                    _b.label = 4;
                case 4: return [3 /*break*/, 6];
                case 5:
                    error_6 = _b.sent();
                    console.error({ error: error_6 });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.clearCustomDashboardTempData = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['data'], null);
                });
            }
            catch (error) {
                console.error({ error: error });
            }
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.fetchPublicDashboards = function (payload) {
        var response, data_3, error_7;
        var _a;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.getPublic, payload.token)];
                case 1:
                    response = (_b.sent());
                    data_3 = (_a = {},
                        _a[response.id] = (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .dashboardWidgetsMapper */ .Xz)(response),
                        _a);
                    this.updateWithImmer(function (state) {
                        state.dashboards.data = { dashboards: data_3, _links: null };
                        state.dashboards.loaded = true;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_7 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboards.error = error_7.response.data;
                        console.error(error_7);
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.updateWidgetStats = function (_a) {
        var dashboardId = _a.dashboardId, widgetId = _a.widgetId, _b = _a.data, data = _b === void 0 ? null : _b, _c = _a.error, error = _c === void 0 ? null : _c, _d = _a.loading, loading = _d === void 0 ? false : _d, _e = _a.loaded, loaded = _e === void 0 ? true : _e;
        this.updateWithImmer(function (state) {
            (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state.statistics, [dashboardId, widgetId], {
                data: data,
                error: error,
                loading: loading,
                loaded: loaded,
            });
        });
    };
    CustomDashboardsModel.prototype.fetchPrivateWidgetStats = function (payload) {
        var dashboardId, widgetId, dateRange, widget, dashboardDateRange, dashboardFilter, isAvailable, widgetWithFilterInNewFormat, range, response, result, error_8;
        var _a, _b;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    dashboardId = payload.dashboardId, widgetId = payload.widgetId, dateRange = payload.dateRange;
                    _c.label = 1;
                case 1:
                    _c.trys.push([1, 7, , 8]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getDashboardWidget */ .vX)(dashboardId, widgetId))];
                case 2:
                    widget = (_c.sent());
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardDateRange */ .jV)(dashboardId))];
                case 3:
                    dashboardDateRange = (_c.sent());
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardFilter */ .ep)(dashboardId))];
                case 4:
                    dashboardFilter = (_c.sent());
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .isWidgetAvailable */ .kn)(dashboardId, widgetId))];
                case 5:
                    isAvailable = (_c.sent());
                    if (dashboardFilter.isEmpty()) {
                        dashboardFilter = null;
                    }
                    if (!isAvailable) {
                        customDashboardsModel.updateWidgetStats({
                            dashboardId: dashboardId,
                            widgetId: widgetId,
                            loaded: true,
                        });
                        return [2 /*return*/];
                    }
                    customDashboardsModel.updateWidgetStats({
                        dashboardId: dashboardId,
                        widgetId: widgetId,
                        loading: true,
                        loaded: false,
                    });
                    widgetWithFilterInNewFormat = __assign(__assign({}, widget), { segments: widget.segments.map(function (s) { return (__assign(__assign({}, s), { filter: models_filters_Filter__WEBPACK_IMPORTED_MODULE_18__/* .Filter */ .dJ.fromApi(s.filter).toApi() })); }) });
                    range = dateRange || dashboardDateRange;
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.getWidgetData, {
                            widget: widgetWithFilterInNewFormat,
                            dashboardFilter: dashboardFilter ? dashboardFilter.toApi() : {},
                            dashboardDateRange: range,
                        })];
                case 6:
                    response = (_c.sent());
                    result = response.result;
                    customDashboardsModel.updateWidgetStats({
                        dashboardId: dashboardId,
                        widgetId: widgetId,
                        data: result,
                    });
                    return [3 /*break*/, 8];
                case 7:
                    error_8 = _c.sent();
                    customDashboardsModel.updateWidgetStats({
                        dashboardId: dashboardId,
                        widgetId: widgetId,
                        error: (_b = (_a = error_8 === null || error_8 === void 0 ? void 0 : error_8.response) === null || _a === void 0 ? void 0 : _a.data) !== null && _b !== void 0 ? _b : error_8,
                    });
                    console.error(error_8);
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchPublicWidgetStats = function (payload) {
        var dashboardId, widgetId, token, userLanguage, response, result, error_9;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    dashboardId = payload.dashboardId, widgetId = payload.widgetId, token = payload.token;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 3, , 4]);
                    userLanguage = (0,utils_localization__WEBPACK_IMPORTED_MODULE_9__/* .convertLocaleToLanguage */ .b)((0,i18n__WEBPACK_IMPORTED_MODULE_8__/* .detectUserLocale */ .$G)());
                    customDashboardsModel.updateWidgetStats({
                        dashboardId: dashboardId,
                        widgetId: widgetId,
                        loading: true,
                        loaded: false,
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.getPublicWidgetData, {
                            token: token,
                            widgetId: widgetId,
                            userLanguage: userLanguage,
                            timeZone: moment_timezone__WEBPACK_IMPORTED_MODULE_1__.tz.guess(),
                        })];
                case 2:
                    response = (_a.sent());
                    result = response.result;
                    customDashboardsModel.updateWidgetStats({
                        dashboardId: dashboardId,
                        widgetId: widgetId,
                        data: result,
                        loading: false,
                        loaded: true,
                        error: null,
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_9 = _a.sent();
                    customDashboardsModel.updateWidgetStats({
                        dashboardId: dashboardId,
                        widgetId: widgetId,
                        loading: false,
                        loaded: true,
                        error: error_9.response.data,
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchWidgetsData = function (dashboardId, filters) {
        var sort, dashboard, widgets, e_1;
        var _a, _b;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    sort = function (widgets) { return widgets.sort(function (a, b) {
                        var segmentCountA = a.segments ? a.segments.length : 0;
                        var segmentCountB = b.segments ? b.segments.length : 0;
                        if (a.type === 'wordCloud') {
                            return 1; // Move 'wordCloud' type widgets to the end
                        }
                        if (b.type === 'wordCloud') {
                            return -1; // Move 'wordCloud' type widgets to the end
                        }
                        return segmentCountA - segmentCountB;
                    }); };
                    _c.label = 1;
                case 1:
                    _c.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 2:
                    dashboard = _c.sent();
                    widgets = Object.values((_b = (_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.config) === null || _a === void 0 ? void 0 : _a.widgets) !== null && _b !== void 0 ? _b : {});
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .all */ .Q7)(sort(widgets)
                            .map(function (w) { return (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchWidgetStats({
                            dashboardId: dashboardId,
                            widgetId: w.id,
                            dateRange: filters === null || filters === void 0 ? void 0 : filters.dateRange,
                            filter: filters === null || filters === void 0 ? void 0 : filters.filter,
                        })); }))];
                case 3:
                    _c.sent();
                    return [3 /*break*/, 5];
                case 4:
                    e_1 = _c.sent();
                    console.error(e_1);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchWidgetStats = function (payload) {
        var token, e_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getPublicDashboardToken */ .$y)];
                case 1:
                    token = (_a.sent());
                    if (!token) return [3 /*break*/, 3];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchPublicWidgetStats(__assign(__assign({}, payload), { token: token })))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 3: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchPrivateWidgetStats(payload))];
                case 4:
                    _a.sent();
                    _a.label = 5;
                case 5: return [3 /*break*/, 7];
                case 6:
                    e_2 = _a.sent();
                    console.error(e_2);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.createTemplate = function (_a) {
        var _b, widgetsConfig, layout, widgets, dashboard, error_10;
        var type = _a.type, topicId = _a.topicId, comparisonTopicIds = _a.comparisonTopicIds, dashboardId = _a.dashboardId, dashboardName = _a.dashboardName;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 7, , 8]);
                    _b = (0,containers_customDashboard_CustomDashboardTemplates_templates__WEBPACK_IMPORTED_MODULE_13__/* .getDashboardTemplateConfig */ .X)(type, topicId, comparisonTopicIds), widgetsConfig = _b.widgetsConfig, layout = _b.layout;
                    widgets = widgetsConfig.map(function (w) { return (__assign(__assign({}, w), { segments: w.segments.map(function (s) { return (__assign(__assign({}, s), { filter: s.filter ? s.filter.toApi() : s.filter })); }) })); });
                    if (!dashboardId) return [3 /*break*/, 3];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 1:
                    dashboard = _c.sent();
                    return [4 /*yield*/, this.updateCustomDashboard(__assign(__assign({ dashboardId: dashboardId }, dashboard), { config: __assign(__assign({}, dashboard.config), { widgets: widgets, layout: layout, templateType: type }) }))];
                case 2:
                    _c.sent();
                    return [3 /*break*/, 5];
                case 3: return [4 /*yield*/, this.createCustomDashboard({
                        name: dashboardName,
                        description: null,
                        config: {
                            layout: layout,
                            widgets: widgets,
                            defaultTopicId: topicId,
                            templateType: type,
                        },
                    })];
                case 4:
                    _c.sent();
                    _c.label = 5;
                case 5: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                        eventType: 'Custom dashboards: dashboard created from a template',
                        properties: { type: type },
                    }))];
                case 6:
                    _c.sent();
                    return [3 /*break*/, 8];
                case 7:
                    error_10 = _c.sent();
                    console.error(error_10);
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.createCustomDashboard = function (_a) {
        var newDashboard_1, account, hasCustomDashboardsAddon, error_11;
        var _b;
        var name = _a.name, description = _a.description, logo = _a.logo, config = _a.config;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 8, , 9]);
                    this.updateWithImmer(function (state) {
                        state.dashboardCreation.loading = true;
                        state.dashboardCreation.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.create, {
                            name: name,
                            description: description,
                            logo: logo,
                            config: config,
                        })];
                case 1:
                    newDashboard_1 = (_c.sent()).dashboard;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_account_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getAccountInfo */ .Gf)];
                case 2:
                    account = _c.sent();
                    hasCustomDashboardsAddon = !!((_b = account.addons) === null || _b === void 0 ? void 0 : _b.customDashboards);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: dashboard created',
                            properties: {
                                addon: hasCustomDashboardsAddon,
                            },
                        }))];
                case 3:
                    _c.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboardCreation.loading = false;
                        if (newDashboard_1 === null || newDashboard_1 === void 0 ? void 0 : newDashboard_1.id) {
                            (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['dashboards', 'data', 'dashboards', newDashboard_1.id], (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .dashboardWidgetsMapper */ .Xz)(newDashboard_1));
                        }
                    });
                    if (!(newDashboard_1 === null || newDashboard_1 === void 0 ? void 0 : newDashboard_1.id)) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: "/dashboards/".concat(newDashboard_1.id) }))];
                case 4:
                    _c.sent();
                    return [3 /*break*/, 7];
                case 5: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: '/dashboards' }))];
                case 6:
                    _c.sent();
                    _c.label = 7;
                case 7: return [3 /*break*/, 9];
                case 8:
                    error_11 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboardCreation.error = error_11;
                    });
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.duplicateCustomDashboard = function (_a) {
        var newDashboard_2, account, hasCustomDashboardsAddon, error_12;
        var _b;
        var name = _a.name, description = _a.description, logo = _a.logo, config = _a.config;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 8, , 9]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.create, {
                            name: name,
                            description: description,
                            logo: logo,
                            config: config,
                        })];
                case 1:
                    newDashboard_2 = (_c.sent()).dashboard;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_account_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getAccountInfo */ .Gf)];
                case 2:
                    account = _c.sent();
                    hasCustomDashboardsAddon = !!((_b = account.addons) === null || _b === void 0 ? void 0 : _b.customDashboards);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: dashboard duplicate',
                            properties: {
                                addon: hasCustomDashboardsAddon,
                            },
                        }))];
                case 3:
                    _c.sent();
                    this.updateWithImmer(function (state) {
                        if (newDashboard_2 === null || newDashboard_2 === void 0 ? void 0 : newDashboard_2.id) {
                            (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state, ['dashboards', 'data', 'dashboards', newDashboard_2.id], (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .dashboardWidgetsMapper */ .Xz)(newDashboard_2));
                        }
                    });
                    if (!(newDashboard_2 === null || newDashboard_2 === void 0 ? void 0 : newDashboard_2.id)) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: "/dashboards/".concat(newDashboard_2.id) }))];
                case 4:
                    _c.sent();
                    return [3 /*break*/, 7];
                case 5: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: '/dashboards' }))];
                case 6:
                    _c.sent();
                    _c.label = 7;
                case 7: return [3 /*break*/, 9];
                case 8:
                    error_12 = _c.sent();
                    console.log(error_12);
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.exportDashboard = function (_a) {
        var dashboard, dashboardName, dashboardDateRange, dashboardFilter, error_13;
        var dashboardId = _a.dashboardId, format = _a.format;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    this.updateWithImmer(function (state) {
                        state.export.loading = true;
                        state.export.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 1:
                    dashboard = _b.sent();
                    dashboardName = dashboard.name;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardDateRange */ .jV)(dashboardId))];
                case 2:
                    dashboardDateRange = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardFilter */ .ep)(dashboardId))];
                case 3:
                    dashboardFilter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.export, {
                            dashboardId: dashboardId,
                            dashboardName: dashboardName,
                            format: format,
                            dashboardFilter: dashboardFilter,
                            dashboardDateRange: dashboardDateRange,
                        })];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: export',
                        }))];
                case 5:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.export.loading = false;
                    });
                    return [3 /*break*/, 7];
                case 6:
                    error_13 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.export.error = error_13;
                    });
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.hideExportDashboardNotification = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.export.loading = false;
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.updateCustomDashboardWidget = function (_a) {
        var config, widgetConstructor, segmentsInfo_1, layout, updated, error_14;
        var _b;
        var dashboardId = _a.dashboardId;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 11, , 12]);
                    this.updateWithImmer(function (state) {
                        state.widgetUpdate.loading = true;
                        state.widgetUpdate.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorConfig */ .tZ)];
                case 1:
                    config = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructor */ .VW)];
                case 2:
                    widgetConstructor = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorSegments */ .$0)];
                case 3:
                    segmentsInfo_1 = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorDashboardLayout */ .$n)(dashboardId))];
                case 4:
                    layout = _c.sent();
                    updated = __assign(__assign({}, config), { segments: (_b = config.segments) === null || _b === void 0 ? void 0 : _b.map(function (segment) {
                            var _a, _b, _c, _d;
                            return (__assign(__assign({}, segment), { filter: (_c = (_a = segment === null || segment === void 0 ? void 0 : segment.filter) !== null && _a !== void 0 ? _a : (_b = segmentsInfo_1[segment.key]) === null || _b === void 0 ? void 0 : _b.filter) !== null && _c !== void 0 ? _c : {}, dateRange: (_d = segment === null || segment === void 0 ? void 0 : segment.dateRange) !== null && _d !== void 0 ? _d : utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__/* .DEFAULT_DATE_RANGE */ .Rc }));
                        }) });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.updateWidget, { dashboardId: dashboardId, widget: updated })];
                case 5:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.updateLayout, { dashboardId: dashboardId, layout: layout })];
                case 6:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: widget completed',
                            properties: __assign(__assign({}, (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .getAnalyticalEventWidgetConfig */ .Xd)(config)), { dashboardId: dashboardId, new: false, existing: true, topicIds: config.segments.map(function (s) { return s.topicId; }), legendChanged: widgetConstructor.isChangeLegend, differentDateRangeInSegments: !(0,utils_customDashboards_segments__WEBPACK_IMPORTED_MODULE_21__/* .isSameDateRangeInSegments */ .D)(config === null || config === void 0 ? void 0 : config.segments) }),
                        }))];
                case 7:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.clearWidgetConstructorData())];
                case 8:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboard(dashboardId, { setFilter: true, hideLoader: false }))];
                case 9:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: "/dashboards/".concat(dashboardId) }))];
                case 10:
                    _c.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetUpdate.loading = false;
                    });
                    return [3 /*break*/, 12];
                case 11:
                    error_14 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetUpdate.loading = false;
                        state.widgetUpdate.error = error_14;
                    });
                    return [3 /*break*/, 12];
                case 12: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.updateWidgetName = function (_a) {
        var widget, updated, error_15;
        var dashboardId = _a.dashboardId, widgetId = _a.widgetId, name = _a.name;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getDashboardWidget */ .vX)(dashboardId, widgetId))];
                case 1:
                    widget = _b.sent();
                    updated = __assign(__assign({}, widget), { name: name });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.updateWidget, { dashboardId: dashboardId, widget: updated })];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: change widget name from view screen',
                            properties: {
                                dashboardId: dashboardId,
                            },
                        }))];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_15 = _b.sent();
                    console.log(error_15);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.deleteCustomDashboardWidget = function (_a) {
        var widget, error_16;
        var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        state.widgetDeletion.loading = true;
                        state.widgetDeletion.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getDashboardWidget */ .vX)(dashboardId, widgetId))];
                case 1:
                    widget = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.deleteWidget, {
                            dashboardId: dashboardId,
                            widgetId: widgetId,
                        })];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: widget deleted',
                            properties: __assign({ dashboardId: dashboardId }, (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .getAnalyticalEventWidgetConfig */ .Xd)(widget)),
                        }))];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboard(dashboardId))];
                case 4:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetDeletion.loading = false;
                    });
                    return [3 /*break*/, 6];
                case 5:
                    error_16 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetDeletion.loading = false;
                        state.widgetDeletion.error = error_16;
                    });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.saveCustomDashboardWidget = function (_a) {
        var config, widgetConstructor, layout, requestData, error_17;
        var dashboardId = _a.dashboardId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 9, , 10]);
                    this.updateWithImmer(function (state) {
                        state.widgetCreation.loading = true;
                        state.widgetCreation.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorConfig */ .tZ)];
                case 1:
                    config = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructor */ .VW)];
                case 2:
                    widgetConstructor = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorDashboardLayout */ .$n)(dashboardId))];
                case 3:
                    layout = _b.sent();
                    requestData = {
                        dashboardId: dashboardId,
                        widget: __assign(__assign({}, config), { segments: config.segments.map(function (s) {
                                var _a;
                                return (__assign(__assign({}, s), { dateRange: (_a = s === null || s === void 0 ? void 0 : s.dateRange) !== null && _a !== void 0 ? _a : utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__/* .DEFAULT_DATE_RANGE */ .Rc }));
                            }) }),
                        layout: layout,
                    };
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.createWidget, requestData)];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: widget completed',
                            properties: __assign(__assign({}, (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .getAnalyticalEventWidgetConfig */ .Xd)(config)), { dashboardId: dashboardId, new: true, existing: false, topicIds: config.segments.map(function (s) { return s.topicId; }), legendChanged: widgetConstructor.isChangeLegend, differentDateRangeInSegments: !(0,utils_customDashboards_segments__WEBPACK_IMPORTED_MODULE_21__/* .isSameDateRangeInSegments */ .D)(config === null || config === void 0 ? void 0 : config.segments) }),
                        }))];
                case 5:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.clearWidgetConstructorData())];
                case 6:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboard(dashboardId, { setFilter: true, hideLoader: false }))];
                case 7:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: "/dashboards/".concat(dashboardId) }))];
                case 8:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetCreation.loading = false;
                    });
                    return [3 /*break*/, 10];
                case 9:
                    error_17 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetCreation.loading = false;
                        state.widgetCreation.error = error_17;
                    });
                    return [3 /*break*/, 10];
                case 10: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.dashboardToApiFormat = function (dashboard) {
        var _a;
        return __assign(__assign({}, dashboard), { config: __assign(__assign({}, dashboard.config), { widgets: Object.values(dashboard.config.widgets), defaultTopicId: (_a = dashboard.config.defaultTopicId) !== null && _a !== void 0 ? _a : null }) });
    };
    CustomDashboardsModel.prototype.saveDashboardFilterAsDefault = function (dashboardId) {
        var dashboardFilter, dashboard, dateRange, dashboardView, e_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardFilter */ .ep)(dashboardId))];
                case 1:
                    dashboardFilter = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 2:
                    dashboard = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardDateRange */ .jV)(dashboardId))];
                case 3:
                    dateRange = _a.sent();
                    dashboardView = __assign(__assign({}, dashboard), { config: __assign(__assign({}, dashboard.config), { filter: dashboardFilter.isEmpty() ? null : dashboardFilter.toApi(), dateRange: dateRange || null }) });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.update, this.dashboardToApiFormat(dashboardView))];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboard(dashboardId, { hideLoader: true, setFilter: false }))];
                case 5:
                    _a.sent();
                    return [3 /*break*/, 7];
                case 6:
                    e_3 = _a.sent();
                    console.log(e_3);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.updateCustomDashboard = function (_a) {
        var accountId, dashboard, links, account, hasCustomDashboardsAddon, error_18;
        var _b;
        var dashboardId = _a.dashboardId, name = _a.name, description = _a.description, logo = _a.logo, config = _a.config;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 8, , 9]);
                    this.updateWithImmer(function (state) {
                        state.dashboardUpdate.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_account_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getAccountId */ .PU)];
                case 1:
                    accountId = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 2:
                    dashboard = _c.sent();
                    links = null;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.update, {
                            id: parseInt(dashboardId, 10),
                            accountId: accountId,
                            name: name,
                            description: description,
                            config: config,
                            logo: logo || null,
                            _links: links,
                        })];
                case 3:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_account_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getAccountInfo */ .Gf)];
                case 4:
                    account = _c.sent();
                    hasCustomDashboardsAddon = !!((_b = account.addons) === null || _b === void 0 ? void 0 : _b.customDashboards);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: dashboard updated',
                            properties: {
                                addon: hasCustomDashboardsAddon,
                                layout: (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .layoutToString */ .rm)(dashboard.config) !== (0,_utils__WEBPACK_IMPORTED_MODULE_25__/* .layoutToString */ .rm)(config),
                                name: dashboard.name !== name,
                                description: dashboard.description !== description,
                            },
                        }))];
                case 5:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboard(dashboardId, { setFilter: true, hideLoader: false }))];
                case 6:
                    _c.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboardUpdate.loading = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: "/dashboards/".concat(dashboardId) }))];
                case 7:
                    _c.sent();
                    return [3 /*break*/, 9];
                case 8:
                    error_18 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboardUpdate.loading = false;
                        state.dashboardUpdate.error = error_18;
                    });
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.updateDashboardInfo = function (_a) {
        var dashboard, _b, error_19;
        var dashboardId = _a.dashboardId, name = _a.name, description = _a.description;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 4, , 5]);
                    _b = this.dashboardToApiFormat;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 1:
                    dashboard = _b.apply(this, [_c.sent()]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.update, __assign(__assign({}, dashboard), { name: name !== null && name !== void 0 ? name : dashboard.name, description: description !== null && description !== void 0 ? description : dashboard.description }))];
                case 2:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: Name or description updated from view screen',
                            properties: {
                                name: dashboard.name !== name,
                                description: dashboard.description !== description,
                            },
                        }))];
                case 3:
                    _c.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_19 = _c.sent();
                    console.log(error_19);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.deleteCustomDashboard = function (_a) {
        var dashboard, accountId, config, name_1, error_20;
        var dashboardId = _a.dashboardId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    this.updateWithImmer(function (state) {
                        state.dashboardDeletion.loading = true;
                        state.dashboardDeletion.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboard */ .o$)(dashboardId))];
                case 1:
                    dashboard = _b.sent();
                    accountId = dashboard.accountId, config = dashboard.config, name_1 = dashboard.name;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.delete, dashboardId)];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_11__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Custom dashboards: dashboard deleted',
                            properties: {
                                dashboardId: dashboardId,
                                accountId: accountId,
                                name: name_1,
                                widgetsCount: Object.keys((config === null || config === void 0 ? void 0 : config.widgets) || {}).length,
                                widgets: Object.values((config === null || config === void 0 ? void 0 : config.widgets) || {}).map(function (widget) { return widget.type; }),
                            },
                        }))];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchDashboards())];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_12__/* .push */ .VC)({ pathname: '/dashboards' }))];
                case 5:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboardDeletion.loading = false;
                    });
                    return [3 /*break*/, 7];
                case 6:
                    error_20 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.dashboardDeletion.loading = false;
                        state.dashboardDeletion.error = error_20;
                    });
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchCustomDashboardGeneralTopicInfo = function (_a) {
        var topicIds, topics_1, error_21;
        var dashboardId = _a.dashboardId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.topicInfo.loading = true;
                        state.topicInfo.error = null;
                    });
                    _b.label = 1;
                case 1:
                    _b.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getCustomDashboardTopicIds */ .Pe)(dashboardId))];
                case 2:
                    topicIds = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .all */ .Q7)(topicIds.map(function (id) { return (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.themes.fetchTheme, { themeId: id }); }))];
                case 3:
                    topics_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.topicInfo.loading = false;
                        state.topicInfo.data = topics_1.reduce(function (accum, topic) {
                            var _a;
                            return (__assign(__assign({}, accum), (_a = {}, _a[topic.id] = topic, _a)));
                        }, {});
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_21 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.topicInfo.loading = false;
                        state.topicInfo.error = error_21;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchWidgetConstructorGeneralTopicInfo = function (_a) {
        var segmentTopicInfo, data_4, error_22;
        var segment = _a.segment;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorSegmentTopicInfo */ .DT)(segment))];
                case 1:
                    segmentTopicInfo = _b.sent();
                    if (!!(segmentTopicInfo === null || segmentTopicInfo === void 0 ? void 0 : segmentTopicInfo.data)) return [3 /*break*/, 3];
                    this.updateWithImmer(function (state) {
                        if (!state.widgetConstructor.segmentsInfo[segment.key]) {
                            // @ts-ignore
                            state.widgetConstructor.segmentsInfo[segment.key] = {};
                        }
                        state.widgetConstructor.segmentsInfo[segment.key].topicInfo = {
                            loading: true,
                            error: null,
                            data: null,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.themes.fetchTheme, { themeId: segment.topicId })];
                case 2:
                    data_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.segmentsInfo[segment.key].topicInfo = {
                            loading: false,
                            error: null,
                            data: data_4,
                        };
                    });
                    _b.label = 3;
                case 3: return [3 /*break*/, 5];
                case 4:
                    error_22 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.segmentsInfo[segment.key].topicInfo = {
                            loading: false,
                            data: null,
                            error: error_22,
                        };
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.fetchWidgetConstructorGeneralTopicsInfo = function (_a) {
        var e_4;
        var segments = _a.segments;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .all */ .Q7)(segments.map(function (segment) { return (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(customDashboardsModel.action.fetchWidgetConstructorGeneralTopicInfo({ segment: segment })); }))];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    e_4 = _b.sent();
                    console.log(e_4);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.setWidgetConstructorSegmentFilter = function (_a) {
        var config_1, e_5;
        var filter = _a.filter, segmentKey = _a.segmentKey;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorConfig */ .tZ)];
                case 1:
                    config_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.config.segments = config_1.segments.map(function (s) {
                            if (s.key === segmentKey)
                                return __assign(__assign({}, s), { filter: filter.toApi() });
                            return s;
                        });
                    });
                    return [3 /*break*/, 3];
                case 2:
                    e_5 = _b.sent();
                    console.log(e_5);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.setWidgetConstructorSegmentDateRange = function (_a) {
        var widgetConstructor, widget, initialWidget, data, newSegments_2, chartAliases, configAliases, sameDateRangeInSegments, _loop_2, newSegments_1, newSegments_1_1, newSegment, e_6;
        var e_7, _b;
        var _c, _d, _e, _f;
        var dateRange = _a.dateRange, segmentKey = _a.segmentKey;
        return __generator(this, function (_g) {
            switch (_g.label) {
                case 0:
                    _g.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructor */ .VW)];
                case 1:
                    widgetConstructor = _g.sent();
                    widget = widgetConstructor.config;
                    initialWidget = widgetConstructor.initialConfig;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorPreviewData */ .RB)];
                case 2:
                    data = _g.sent();
                    newSegments_2 = widget.segments.map(function (s) {
                        if (s.key === segmentKey)
                            return __assign(__assign({}, s), { dateRange: dateRange });
                        return s;
                    });
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.config.segments = newSegments_2;
                    });
                    chartAliases = (0,utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_19__/* .legendAliases */ .CW)(data === null || data === void 0 ? void 0 : data.chart, widget);
                    configAliases = {
                        segments: (0,utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_19__/* .toWidgetConfigAlias */ .k6)(chartAliases.segments.aliases),
                        dimension1: (0,utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_19__/* .toWidgetConfigAlias */ .k6)(chartAliases.dimension1.aliases),
                        dimension2: (0,utils_customDashboards_legendAlias__WEBPACK_IMPORTED_MODULE_19__/* .toWidgetConfigAlias */ .k6)(chartAliases.dimension2.aliases),
                    };
                    sameDateRangeInSegments = (0,utils_customDashboards_segments__WEBPACK_IMPORTED_MODULE_21__/* .isSameDateRangeInSegments */ .D)(newSegments_2);
                    _loop_2 = function (newSegment) {
                        var index = newSegments_2.findIndex(function (s) { return s.key === newSegment.key; });
                        if (sameDateRangeInSegments) {
                            configAliases.segments[index].alias = ((_f = (_e = (_d = (_c = initialWidget === null || initialWidget === void 0 ? void 0 : initialWidget.widgetOptions) === null || _c === void 0 ? void 0 : _c.legendAliases) === null || _d === void 0 ? void 0 : _d.segments) === null || _e === void 0 ? void 0 : _e[index]) === null || _f === void 0 ? void 0 : _f.alias) || '';
                        }
                        else {
                            configAliases.segments[index].alias = "".concat(configAliases.segments[index].key, ": ").concat((0,utils_customDashboards_dates__WEBPACK_IMPORTED_MODULE_20__/* .getDateRangeMessage */ .NH)(newSegment.dateRange || utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__/* .DEFAULT_DATE_RANGE */ .Rc, true));
                        }
                    };
                    try {
                        for (newSegments_1 = __values(newSegments_2), newSegments_1_1 = newSegments_1.next(); !newSegments_1_1.done; newSegments_1_1 = newSegments_1.next()) {
                            newSegment = newSegments_1_1.value;
                            _loop_2(newSegment);
                        }
                    }
                    catch (e_7_1) { e_7 = { error: e_7_1 }; }
                    finally {
                        try {
                            if (newSegments_1_1 && !newSegments_1_1.done && (_b = newSegments_1.return)) _b.call(newSegments_1);
                        }
                        finally { if (e_7) throw e_7.error; }
                    }
                    return [4 /*yield*/, this.changeWidgetConstructorLegend(configAliases)];
                case 3:
                    _g.sent();
                    return [3 /*break*/, 5];
                case 4:
                    e_6 = _g.sent();
                    console.log(e_6);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.setWidgetConstructorConfig = function (_a) {
        var config = _a.config;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.widgetConstructor.config = config;
                state.widgetConstructor.initialConfig = config;
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.updateWidgetConstructorConfig = function (props) {
        var prop_1, value_1;
        return __generator(this, function (_a) {
            if (Array.isArray(props)) {
                this.updateWithImmer(function (state) {
                    props.forEach(function (p) {
                        if (!p)
                            return;
                        var prop = p.prop, value = p.value;
                        (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state.widgetConstructor.config, prop, value);
                    });
                });
            }
            else {
                prop_1 = props.prop, value_1 = props.value;
                this.updateWithImmer(function (state) {
                    (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state.widgetConstructor.config, prop_1, value_1);
                });
            }
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.setWidgetConstructorUiConfig = function (_a) {
        var uiConfig = _a.uiConfig;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.widgetConstructor.uiConfig = uiConfig;
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.updateWidgetConstructorUiConfig = function (_a) {
        var value = _a.value, prop = _a.prop;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                (0,lodash__WEBPACK_IMPORTED_MODULE_7__.set)(state.widgetConstructor.uiConfig, prop, value);
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.fetchCustomDashboardPreviewStats = function (_a) {
        var dashboardDateRange, config, range, requestData, result_1, error_23;
        var dashboardId = _a.dashboardId, mode = _a.mode;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.preview.error = null;
                        state.widgetConstructor.preview.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)((0,state_customDashboards_filterSelectors__WEBPACK_IMPORTED_MODULE_5__/* .getCustomDashboardDateRange */ .jV)(dashboardId))];
                case 1:
                    dashboardDateRange = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(_dashboardSelectors__WEBPACK_IMPORTED_MODULE_24__/* .getWidgetConstructorConfig */ .tZ)];
                case 2:
                    config = _b.sent();
                    range = config.dateRange || dashboardDateRange || utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__/* .DEFAULT_DATE_RANGE */ .Rc;
                    requestData = {
                        widget: __assign(__assign({}, config), { type: mode || config.type, dateRange: config.dateRange || range, segments: config.segments.map(function (s) {
                                var _a;
                                return (__assign(__assign({}, s), { dateRange: (_a = s === null || s === void 0 ? void 0 : s.dateRange) !== null && _a !== void 0 ? _a : utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_14__/* .DEFAULT_DATE_RANGE */ .Rc }));
                            }) }),
                        dashboardFilter: {},
                        dashboardDateRange: dashboardDateRange,
                    };
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.customDashboards.getWidgetData, requestData)];
                case 3:
                    result_1 = (_b.sent()).result;
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.preview.loading = false;
                        state.widgetConstructor.preview.data = result_1;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_23 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.widgetConstructor.preview.loading = false;
                        state.widgetConstructor.preview.error = error_23;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.clearWidgetConstructorData = function () {
        var _this = this;
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.widgetConstructor = _this.initialState.widgetConstructor;
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.setDefaultWidgetConstructorData = function (dashboard) {
        var themes_1, dateHash, widgetId_1, e_8;
        var _this = this;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_17__/* .getManagedThemes */ .Gl)];
                case 1:
                    themes_1 = _a.sent();
                    dateHash = string_hash__WEBPACK_IMPORTED_MODULE_2___default()(new Date().toISOString());
                    widgetId_1 = "widget-".concat(dateHash);
                    this.updateWithImmer(function (state) {
                        var _a, _b;
                        state.widgetConstructor.config.id = (_a = state.widgetConstructor.config.id) !== null && _a !== void 0 ? _a : widgetId_1;
                        state.widgetConstructor.config.aggregationMetric = models_Aggregation__WEBPACK_IMPORTED_MODULE_16__/* .AGGREGATION_METRICS */ .dv[0];
                        state.widgetConstructor.config.dimension1 = null;
                        state.widgetConstructor.config.dimension2 = null;
                        state.widgetConstructor.config.widgetOptions = null;
                        state.widgetConstructor.config.aggregationOptions = null;
                        state.widgetConstructor.preview = (0,lodash__WEBPACK_IMPORTED_MODULE_7__.cloneDeep)(_this.initialState.widgetConstructor.preview);
                        state.widgetConstructor.uiConfig = (0,lodash__WEBPACK_IMPORTED_MODULE_7__.cloneDeep)(_this.initialState.widgetConstructor.uiConfig);
                        if (themes_1 === null || themes_1 === void 0 ? void 0 : themes_1.length) {
                            var validTopicId = (_b = themes_1.find(function (t) { return t.id === dashboard.config.defaultTopicId; })) === null || _b === void 0 ? void 0 : _b.id;
                            var topicId = validTopicId !== null && validTopicId !== void 0 ? validTopicId : themes_1[0].id;
                            state.widgetConstructor.config.segments = [{ topicId: topicId, key: topicId, filter: null, dateRange: null }];
                        }
                    });
                    return [3 /*break*/, 3];
                case 2:
                    e_8 = _a.sent();
                    console.log(e_8);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    CustomDashboardsModel.prototype.updateWidgetConstructorLayout = function (_a) {
        var layout = _a.layout;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.widgetConstructor.layout = layout;
            });
            return [2 /*return*/];
        });
    };
    CustomDashboardsModel.prototype.changeWidgetConstructorLegend = function (aliases) {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        if (!state.widgetConstructor.isChangeLegend) {
                            state.widgetConstructor.isChangeLegend = true;
                        }
                    });
                    return [4 /*yield*/, this.updateWidgetConstructorConfig({
                            prop: ['widgetOptions', 'legendAliases'],
                            value: aliases,
                        })];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setPublicToken", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchDashboards", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String, Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchDashboard", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateCustomDashboardLayout", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateCustomDashboardDateRangePeriod", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setCustomDashboardFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "clearCustomDashboardFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "clearCustomDashboardTempData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchPublicDashboards", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchPrivateWidgetStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchPublicWidgetStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String, Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchWidgetsData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchWidgetStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "createTemplate", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "createCustomDashboard", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "duplicateCustomDashboard", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "exportDashboard", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "hideExportDashboardNotification", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateCustomDashboardWidget", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateWidgetName", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "deleteCustomDashboardWidget", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "saveCustomDashboardWidget", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "saveDashboardFilterAsDefault", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateCustomDashboard", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateDashboardInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "deleteCustomDashboard", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchCustomDashboardGeneralTopicInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchWidgetConstructorGeneralTopicInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchWidgetConstructorGeneralTopicsInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setWidgetConstructorSegmentFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setWidgetConstructorSegmentDateRange", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setWidgetConstructorConfig", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateWidgetConstructorConfig", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setWidgetConstructorUiConfig", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateWidgetConstructorUiConfig", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "fetchCustomDashboardPreviewStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "clearWidgetConstructorData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "setDefaultWidgetConstructorData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "updateWidgetConstructorLayout", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], CustomDashboardsModel.prototype, "changeWidgetConstructorLegend", null);
    CustomDashboardsModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .namespace */ .MF)('CustomDashboards')
    ], CustomDashboardsModel);
    return CustomDashboardsModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .StateModel */ .Nd));
var customDashboardsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_4__/* .pixieDust */ .kJ)(CustomDashboardsModel);


/***/ }),

/***/ "z86f":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $0: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.$0),
/* harmony export */   $n: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.$n),
/* harmony export */   $r: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.$r),
/* harmony export */   C0: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.C0),
/* harmony export */   CN: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.CN),
/* harmony export */   CP: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.CP),
/* harmony export */   JK: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.JK),
/* harmony export */   Jw: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.Jw),
/* harmony export */   Jx: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.Jx),
/* harmony export */   N3: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.ep),
/* harmony export */   Or: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.Or),
/* harmony export */   Ow: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.Ow),
/* harmony export */   Qe: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.Qe),
/* harmony export */   RB: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.RB),
/* harmony export */   UE: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.UE),
/* harmony export */   YG: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.YG),
/* harmony export */   YV: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.YV),
/* harmony export */   ZL: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.ZL),
/* harmony export */   Zb: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.Zb),
/* harmony export */   aM: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.aM),
/* harmony export */   bm: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.bm),
/* harmony export */   cV: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.cV),
/* harmony export */   eH: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.eH),
/* harmony export */   ep: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.ep),
/* harmony export */   gp: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.gp),
/* harmony export */   hx: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.hx),
/* harmony export */   i6: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.i6),
/* harmony export */   jV: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.jV),
/* harmony export */   jp: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.jp),
/* harmony export */   kn: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.kn),
/* harmony export */   mU: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.mU),
/* harmony export */   mv: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.mv),
/* harmony export */   o$: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.o$),
/* harmony export */   r2: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.r2),
/* harmony export */   tZ: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.tZ),
/* harmony export */   tm: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.tm),
/* harmony export */   tx: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.tx),
/* harmony export */   uR: () => (/* reexport safe */ _filterSelectors__WEBPACK_IMPORTED_MODULE_1__.uR),
/* harmony export */   vX: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.vX),
/* harmony export */   w5: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.w5),
/* harmony export */   wF: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.wF),
/* harmony export */   zj: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.zj),
/* harmony export */   zu: () => (/* reexport safe */ _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__.zu)
/* harmony export */ });
/* harmony import */ var _dashboardSelectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("jL7h");
/* harmony import */ var _filterSelectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("7lJ6");




/***/ }),

/***/ "8scP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   FA: () => (/* binding */ getNonEmptyQuery),
/* harmony export */   Xd: () => (/* binding */ getAnalyticalEventWidgetConfig),
/* harmony export */   Xz: () => (/* binding */ dashboardWidgetsMapper),
/* harmony export */   rm: () => (/* binding */ layoutToString),
/* harmony export */   uj: () => (/* binding */ getTopicIdsFromWidgetSegments),
/* harmony export */   xb: () => (/* binding */ idMapperReducer)
/* harmony export */ });
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var idMapperReducer = function (map) {
    if (map === void 0) { map = function (item) { return item; }; }
    return function (accum, item) {
        var _a;
        return (__assign(__assign({}, accum), (_a = {}, _a[item.id] = map(item), _a)));
    };
};
var dashboardWidgetsMapper = function (dashboard) {
    var _a;
    return (__assign(__assign({}, dashboard), { config: __assign(__assign({}, dashboard.config), { widgets: ((_a = dashboard.config.widgets) === null || _a === void 0 ? void 0 : _a.reduce(idMapperReducer(), {})) || {} }) }));
};
var getAnalyticalEventWidgetConfig = function (config) {
    var _a, _b, _c;
    return ({
        widgetId: config.id,
        name: config.name,
        topicIds: config.segments.map(function (s) { return s.topicId; }),
        type: config.type,
        aggregationMetric: config.aggregationMetric,
        dimension1: (_a = config.dimension1) === null || _a === void 0 ? void 0 : _a.type,
        dimension2: (_b = config.dimension2) === null || _b === void 0 ? void 0 : _b.type,
        segments: ((_c = config.segments) === null || _c === void 0 ? void 0 : _c.length) || 1,
    });
};
var layoutToString = function (config) {
    var _a;
    return (_a = config === null || config === void 0 ? void 0 : config.layout) === null || _a === void 0 ? void 0 : _a.flat().join('|');
};
var getNonEmptyQuery = function (query) {
    var filter = query.filter || {};
    var withoutEmpties = Object.keys(filter)
        .reduce(function (accum, name) {
        var _a;
        var value = filter[name];
        return value !== undefined && value !== null && (!Array.isArray(value) || value.length)
            ? __assign(__assign({}, accum), (_a = {}, _a[name] = value, _a)) : accum;
    }, {});
    return __assign(__assign({}, query), { filter: Object.keys(withoutEmpties).length ? withoutEmpties : '' });
};
var getTopicIdsFromWidgetSegments = function (widget) { var _a; return (_a = widget.segments) === null || _a === void 0 ? void 0 : _a.map(function (s) { return s.topicId.toString(); }); };


/***/ }),

/***/ "EHNt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   _: () => (/* binding */ dashboardModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("0Zyk");
/* harmony import */ var utils_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("L02r");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable generator-star-spacing */





var Dashboard = /** @class */ (function (_super) {
    __extends(Dashboard, _super);
    function Dashboard() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            geo: {
                isLoading: false,
                countries: [],
                otherCountriesCount: 0,
                error: null,
            },
        };
        return _this;
    }
    Dashboard.prototype.fetchGeoData = function (_a) {
        var filter, response_1, countryIds, supportedCountryIds, error_1;
        var themeId = _a.themeId, statsBy = _a.statsBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = true;
                        state.geo.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchGeo, { themeId: themeId, filter: filter, statsBy: statsBy })];
                case 2:
                    response_1 = _b.sent();
                    countryIds = response_1.aggregations.countries.values.map(function (country) { return country.key; });
                    supportedCountryIds = countryIds.filter(function (id) { return utils_constants__WEBPACK_IMPORTED_MODULE_4__/* .SUPPORTED_COUNTRIES_WITH_REGIONS */ .j4.includes(id); });
                    if (supportedCountryIds.length) {
                        filter.doAdd('country', countryIds.filter(function (id) { return utils_constants__WEBPACK_IMPORTED_MODULE_4__/* .SUPPORTED_COUNTRIES_WITH_REGIONS */ .j4.includes(id); }));
                    }
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchRegions, {
                            themeId: themeId,
                            filter: filter,
                        })];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = false;
                        state.geo.countries = response_1.aggregations.countries.values.filter(function (v) { return v === null || v === void 0 ? void 0 : v.count; });
                        state.geo.otherCountriesCount = response_1.aggregations.countries.otherCount;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.geo.isLoading = false;
                        state.geo.error = error_1;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Dashboard.prototype, "fetchGeoData", null);
    Dashboard = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('Dashboard')
    ], Dashboard);
    return Dashboard;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var dashboardModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(Dashboard);


/***/ }),

/***/ "BdiN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* binding */ original),
/* harmony export */   b: () => (/* binding */ defaultEntities)
/* harmony export */ });
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var defaultEntities = {
    authors: {},
    channels: {},
    geos: {},
    history: {},
    integrations: {},
    mentions: {},
    reports: {},
    rules: {},
    sources: {},
    tags: {},
    tasks: {},
    themes: {},
    trends: {},
    users: {},
    logos: {},
    supportedLogos: {},
};
function original(state, action) {
    var e_1, _a;
    if (state === void 0) { state = defaultEntities; }
    var entities = action.entities;
    if (entities && Object.keys(entities).length > 0) {
        var newState = __assign({}, state);
        try {
            for (var _b = __values(Object.keys(entities)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var entityName = _c.value;
                var entityInState = state[entityName];
                var newEntity = entities[entityName];
                newState[entityName] = Object.keys(entityInState).length
                    ? __assign(__assign({}, entityInState), newEntity) : newEntity;
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_1) throw e_1.error; }
        }
        return newState;
    }
    return state;
}


/***/ }),

/***/ "+Oxy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  fU: () => (/* binding */ getAuthorEntities),
  JK: () => (/* binding */ getChannelEntities),
  UQ: () => (/* binding */ getFilterEntities),
  u7: () => (/* binding */ getFilterMergedEntities),
  vQ: () => (/* binding */ getGeoEntities),
  cp: () => (/* binding */ getIntegrationEntities),
  CD: () => (/* binding */ getLogosEntities),
  W2: () => (/* binding */ getMentionEntities),
  u1: () => (/* binding */ getReportEntities),
  ku: () => (/* binding */ getRuleEntities),
  tw: () => (/* binding */ getSourceEntities),
  ul: () => (/* binding */ getTagEntities),
  xk: () => (/* binding */ getTaskEntities),
  PW: () => (/* binding */ getThemeEntities),
  zR: () => (/* binding */ getTrendEntities),
  Nn: () => (/* binding */ getUserEntities)
});

// UNUSED EXPORTS: getAuthorOriginalEntities, getChannelOriginalEntities, getGeoOriginalEntities, getIntegrationOriginalEntities, getLogosOriginalEntities, getMentionOriginalEntities, getReportOriginalEntities, getRuleOriginalEntities, getSourceOriginalEntities, getSupportedLogosEntities, getSupportedLogosOriginalEntities, getTagOriginalEntities, getTaskOriginalEntities, getThemeOriginalEntities, getTrendOriginalEntities, getUserOriginalEntities

// EXTERNAL MODULE: ./node_modules/reselect/es/index.js + 1 modules
var es = __webpack_require__("XFM9");
;// CONCATENATED MODULE: ./src/state/entities-new/ui/selectors.ts
var getMentionUiEntities = function (state) { return state.uiEntities.mentions; };
var getAuthorUiEntities = function (state) { return state.uiEntities.authors; };
var getChannelUiEntities = function (state) { return state.uiEntities.channels; };
var getSourceUiEntities = function (state) { return state.uiEntities.sources; };
var getSubjectUiEntities = function (state) { return state.uiEntities.subjects; };
var getThemeUiEntities = function (state) { return state.uiEntities.themes; };
var getTagUiEntities = function (state) { return state.uiEntities.tags; };
var getIntegrationUiEntities = function (state) { return state.uiEntities.integrations; };
var getTrendUiEntities = function (state) { return state.uiEntities.trends; };

// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/state/entities-new/utils.ts
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};


function mergeMention(original, ui) {
    if (!ui)
        return original;
    var uiTags = ui.tags || {};
    var uiSystemTags = ui.systemTags || {};
    var uiSubjects = ui.subjects || {};
    var uiAspects = ui.aspects || {};
    var uiImageBrands = ui.imageBrands || {};
    var uiImageActivities = ui.imageActivities || {};
    var uiImageColors = ui.imageColors || {};
    var uiImageObjects = ui.imageObjects || {};
    var uiImagePeople = ui.imagePeople || {};
    var uiImageContentSensitivity = ui.imageContentSensitivity || {};
    var uiImageScenes = ui.imageScenes || {};
    var uiImageType = ui.imageType || {};
    var uiImageSubtype = ui.imageSubtype || {};
    return __assign(__assign({}, mergeEntity(__assign({}, original), ui)), { tags: overrideEntityKeys('tags', original, uiTags), systemTags: overrideEntityKeys('systemTags', original, uiSystemTags), subjects: overrideEntityKeys('subjects', original, uiSubjects), aspects: overrideSentimentEntityKeys('aspects', original, uiAspects), imageBrands: overrideVIEntityKeys('imageBrands', original, uiImageBrands), imageActivities: overrideVIEntityKeys('imageActivities', original, uiImageActivities), imageColors: overrideVIEntityKeys('imageColors', original, uiImageColors), imageObjects: overrideVIEntityKeys('imageObjects', original, uiImageObjects), imagePeople: overrideVIEntityKeys('imagePeople', original, uiImagePeople), imageContentSensitivity: overrideVIEntityKeys('imageContentSensitivity', original, uiImageContentSensitivity), imageScenes: overrideVIEntityKeys('imageScenes', original, uiImageScenes), imageType: overrideSingleValueEntityKeys('imageType', original, uiImageType), imageSubtype: overrideSingleValueEntityKeys('imageSubtype', original, uiImageSubtype) });
}
function overrideSingleValueEntityKeys(key, original, uiData) {
    var originalValue = original[key];
    var newValue = Object.keys(uiData).find(function (k) { return uiData[k]; }) || '';
    if (!newValue && originalValue) {
        return uiData[originalValue] !== false ? originalValue : '';
    }
    return newValue;
}
function overrideVIEntityKeys(key, original, uiData) {
    var originalData = original[key] || [];
    var originalPropName = key === 'imageColors' ? 'color' : 'label';
    return originalData
        .filter(function (k) { return uiData[k[originalPropName]] !== false; })
        .concat(Object.keys(uiData)
        .map(function (k) {
        var _a;
        return (uiData[k] && !originalData.some(function (val) { return val[originalPropName] === k; })
            ? (_a = {}, _a[originalPropName] = k, _a) : null);
    })
        .filter(function (d) { return d; }));
}
// TODO REMOVE DEPRECATED ASPECTS USAGE
function overrideSentimentEntityKeys(key, original, uiData) {
    var originalData = original[key] || [];
    var mappedUiData = Object.keys(uiData).map(function (k) {
        var isSelected = uiData[k];
        var parts = k.split('_');
        var sentiment = parts.length > 1 ? parts[parts.length - 1] : null;
        var aspect = sentiment ? k.replace("_".concat(sentiment), '') : k;
        return {
            aspect: aspect,
            sentiment: sentiment,
            id: k,
            selected: isSelected,
        };
    });
    var mappedUiDataAspects = mappedUiData.map(function (v) { return v.aspect; });
    return originalData
        .filter(function (value) { return !mappedUiDataAspects.includes(value.aspect); })
        .concat(mappedUiData
        .filter(function (value) { return value.selected; })
        .map(function (_a) {
        var selected = _a.selected, rest = __rest(_a, ["selected"]);
        return rest;
    }));
}
function overrideEntityKeys(key, original, uiData) {
    var originalData = original[key] || [];
    return originalData
        .filter(function (originalKey) { return uiData[originalKey] !== false; })
        .concat(Object.keys(uiData).map(function (k) { return Number(k) || k; }).filter(function (k) { return uiData[k]; }))
        .filter(function (subject, position, array) { return array.indexOf(subject) === position; });
}
function mergeEntity(original, ui) {
    var merger = function (objValue, srcValue) {
        if (typeof objValue === 'object' && !Array.isArray(objValue) && Array.isArray(srcValue)) {
            throw new Error('TypeError: Can\'t merge arrays with objects');
        }
        if (Array.isArray(objValue) && typeof srcValue === 'object' && !Array.isArray(srcValue)) {
            return (0,lodash.merge)(__spreadArray([], __read(objValue), false), Object.keys(srcValue).map(function (k) { return Number(k) || k; }));
        }
        if (Array.isArray(objValue) && Array.isArray(srcValue)) {
            return objValue.concat(srcValue);
        }
        return undefined;
    };
    return ui ? (0,lodash.mergeWith)(original, ui, merger) : original;
}
function addTagDefaultColor(tag) {
    return (tag === null || tag === void 0 ? void 0 : tag.color) ? tag : __assign(__assign({}, tag), { color: colors/* tagsDefaultColor */.QX });
}

;// CONCATENATED MODULE: ./src/state/entities-new/selectors.ts
var selectors_assign = (undefined && undefined.__assign) || function () {
    selectors_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return selectors_assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var selectors_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};



var getCombinedEntities = function (originalEntities, uiEntities, merge) {
    var e_1, _a;
    if (merge === void 0) { merge = mergeEntity; }
    var entities = {};
    try {
        for (var _b = __values(Object.keys(originalEntities)), _c = _b.next(); !_c.done; _c = _b.next()) {
            var entityName = _c.value;
            var originalEntity = originalEntities[entityName];
            var uiEntity = uiEntities[originalEntity.id];
            entities[entityName] = merge(selectors_assign({}, originalEntity), uiEntity);
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return entities;
};
var getMentionOriginalEntities = function (state) { return state.entitiesNew.mentions; };
var getAuthorOriginalEntities = function (state) { return state.entitiesNew.authors; };
var getChannelOriginalEntities = function (state) { return state.entitiesNew.channels; };
var getReportOriginalEntities = function (state) { return state.entitiesNew.reports; };
var getSourceOriginalEntities = function (state) { return state.entitiesNew.sources; };
var getTagOriginalEntities = function (state) {
    var _a;
    return Object.entries((_a = state.entitiesNew) === null || _a === void 0 ? void 0 : _a.tags).reduce(function (previousValue, _a) {
        var _b;
        var _c = selectors_read(_a, 2), key = _c[0], value = _c[1];
        return selectors_assign(selectors_assign({}, previousValue), (_b = {}, _b[key] = addTagDefaultColor(value), _b));
    }, {});
};
var getTrendOriginalEntities = function (state) { return state.entitiesNew.trends; };
var getThemeOriginalEntities = function (state) { return state.entitiesNew.themes; };
var getTaskOriginalEntities = function (state) { return state.entitiesNew.tasks; };
var getUserOriginalEntities = function (state) { return state.entitiesNew.users; };
var getRuleOriginalEntities = function (state) { return state.entitiesNew.rules; };
var getIntegrationOriginalEntities = function (state) { return state.entitiesNew.integrations; };
var getGeoOriginalEntities = function (state) { return state.entitiesNew.geos; };
var getLogosOriginalEntities = function (state) { return state.entitiesNew.logos; };
var getSupportedLogosOriginalEntities = function (state) { return state.entitiesNew.supportedLogos; };
var getMentionEntities = (0,es/* createSelector */.Mz)(getMentionOriginalEntities, getMentionUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities, mergeMention); });
var getAuthorEntities = (0,es/* createSelector */.Mz)(getAuthorOriginalEntities, getAuthorUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities); });
var getChannelEntities = (0,es/* createSelector */.Mz)(getChannelOriginalEntities, getChannelUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities); });
var getSourceEntities = (0,es/* createSelector */.Mz)(getSourceOriginalEntities, getSourceUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities); });
var getThemeEntities = (0,es/* createSelector */.Mz)(getThemeOriginalEntities, getThemeUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities); });
var getTrendEntities = (0,es/* createSelector */.Mz)(getTrendOriginalEntities, getTrendUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities); });
var getIntegrationEntities = (0,es/* createSelector */.Mz)(getIntegrationOriginalEntities, getIntegrationUiEntities, function (originalEntities, uiEntities) { return getCombinedEntities(originalEntities, uiEntities); });
var getTagEntities = (0,es/* createSelector */.Mz)(getTagOriginalEntities, getTagUiEntities, function (entities) { return entities; });
var getUserEntities = (0,es/* createSelector */.Mz)(getUserOriginalEntities, function (entities) { return entities; });
var getReportEntities = (0,es/* createSelector */.Mz)(getReportOriginalEntities, function (entities) { return entities; });
var getTaskEntities = (0,es/* createSelector */.Mz)(getTaskOriginalEntities, function (entities) { return entities; });
var getRuleEntities = (0,es/* createSelector */.Mz)(getRuleOriginalEntities, function (entities) { return entities; });
var getGeoEntities = (0,es/* createSelector */.Mz)(getGeoOriginalEntities, function (entities) { return entities; });
var getLogosEntities = (0,es/* createSelector */.Mz)(getLogosOriginalEntities, function (entities) { return entities; });
var getSupportedLogosEntities = (0,es/* createSelector */.Mz)(getSupportedLogosOriginalEntities, function (entities) { return entities; });
var getFilterEntities = (0,es/* createSelector */.Mz)(getTagEntities, getSourceEntities, getAuthorEntities, getChannelEntities, getTrendEntities, getGeoEntities, function (tags, sources, authors, channels, trends, geos) { return ({ tags: tags, sources: sources, authors: authors, channels: channels, trends: trends, geos: geos }); });
var getFilterMergedEntities = (0,es/* createSelector */.Mz)(getFilterEntities, function (entities) {
    return Object.values(entities)
        .reduce(function (previousValue, currentValue) {
        return selectors_assign(selectors_assign({}, previousValue), currentValue);
    });
});


/***/ }),

/***/ "eTBD":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  P: () => (/* binding */ uiEntitiesModel)
});

// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/state/entities-new/reducer.ts
var reducer = __webpack_require__("BdiN");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
;// CONCATENATED MODULE: ./src/state/entities-new/ui/utils.ts
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};

var merger = function (oldVal, newVal) {
    if (Array.isArray(oldVal) && Array.isArray(newVal)) {
        return oldVal.concat(newVal);
    }
    if (typeof oldVal === 'object' && !Array.isArray(oldVal)) {
        return (0,lodash.merge)(__assign({}, oldVal), newVal);
    }
    return newVal;
};
function mergeInState(prevState, keys, value) {
    return keys.reduce(function (state, key) {
        var _a, _b;
        var prev = state[key];
        if (prev)
            return __assign(__assign({}, state), (_a = {}, _a[key] = (0,lodash.mergeWith)(prev, value, merger), _a));
        return __assign(__assign({}, state), (_b = {}, _b[key] = value, _b));
    }, prevState);
}

;// CONCATENATED MODULE: ./src/state/entities-new/ui/model.ts
/* eslint no-param-reassign: 0, func-names: 0, require-yield: 0 */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};




var UiEntities = /** @class */ (function (_super) {
    __extends(UiEntities, _super);
    function UiEntities() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = reducer/* defaultEntities */.b;
        return _this;
    }
    UiEntities.prototype.updateUiEntities = function (_a) {
        var entity = _a.entity, ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state[entity] = mergeInState(state[entity], ids, value);
            });
            return [2 /*return*/];
        });
    };
    UiEntities.prototype.updateUiMentions = function (_a) {
        var error_1;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'mentions', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    console.error(error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiAuthors = function (_a) {
        var error_2;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'authors', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    console.error(error_2);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiChannel = function (_a) {
        var error_3;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'channels', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiSources = function (_a) {
        var error_4;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'sources', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _b.sent();
                    console.error(error_4);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiTags = function (_a) {
        var error_5;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'tags', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_5 = _b.sent();
                    console.error(error_5);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiUsers = function (_a) {
        var error_6;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'users', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_6 = _b.sent();
                    console.error(error_6);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiThemes = function (_a) {
        var error_7;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'themes', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_7 = _b.sent();
                    console.error(error_7);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiIntegrations = function (_a) {
        var error_8;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'integrations', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_8 = _b.sent();
                    console.error(error_8);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.updateUiTrends = function (_a) {
        var error_9;
        var ids = _a.ids, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.updateUiEntities.bind(this), { entity: 'trends', ids: ids, value: value })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_9 = _b.sent();
                    console.error(error_9);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    UiEntities.prototype.clearUiEntityState = function (_a) {
        var entity = _a.entity;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                if (entity) {
                    state[entity] = reducer/* defaultEntities */.b[entity];
                    return;
                }
                Object.keys(reducer/* defaultEntities */.b).forEach(function (key) { state[key] = reducer/* defaultEntities */.b[key]; });
            });
            return [2 /*return*/];
        });
    };
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiEntities", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiAuthors", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiChannel", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiSources", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiTags", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiUsers", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiThemes", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiIntegrations", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "updateUiTrends", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], UiEntities.prototype, "clearUiEntityState", null);
    UiEntities = __decorate([
        (0,pixieDust/* namespace */.MF)('UiEntities')
    ], UiEntities);
    return UiEntities;
}(pixieDust/* StateModel */.Nd));
var uiEntitiesModel = (0,pixieDust/* pixieDust */.kJ)(UiEntities);


/***/ }),

/***/ "xvzv":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   W: () => (/* binding */ filterModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("+9Gl");
/* harmony import */ var state_routing_actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("8W5t");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("KG/6");
/* harmony import */ var utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("LYLD");
/* harmony import */ var models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("SvIo");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("Qyqr");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("0Zyk");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("+MLa");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("3o2z");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_12__);
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/* eslint-disable func-names,require-yield,generator-star-spacing */













var FilterModel = /** @class */ (function (_super) {
    __extends(FilterModel, _super);
    function FilterModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            facets: {},
            totalCount: 0,
            validateMentionSearchQuery: { isValid: undefined, error: null, validating: false, errorCode: null },
            savedFilters: {
                list: null,
                loaded: false,
                loading: false,
                selectedFilterId: null,
            },
        };
        return _this;
    }
    FilterModel.prototype.fetchAllFilterFacets = function (_a) {
        var facetQuery, results, data, e_1;
        var filter = _a.filter, themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    facetQuery = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.buildFacetQueries(filter);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(facetQuery.map(function (query) {
                            return (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchStatsNew, {
                                themeId: themeId,
                                filter: query.filter,
                                config: query.config,
                            });
                        }))];
                case 1:
                    results = _b.sent();
                    data = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.mergeAggregations(results.map(function (r) { return r.result.aggregations; }));
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.facets.fetchFilterEntitiesNew, {
                            themeId: themeId,
                            filter: filter.toApi(),
                        })];
                case 2:
                    _b.sent();
                    this.setFacets(data);
                    return [3 /*break*/, 4];
                case 3:
                    e_1 = _b.sent();
                    console.error(e_1);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.createFacetResult = function (entities, aggregations) {
        var _a, _b, _c, _d, _e;
        var ent = {
            tags: (_a = entities === null || entities === void 0 ? void 0 : entities.tags) !== null && _a !== void 0 ? _a : {},
            sources: (_b = entities === null || entities === void 0 ? void 0 : entities.sources) !== null && _b !== void 0 ? _b : {},
            authors: (_c = entities === null || entities === void 0 ? void 0 : entities.authors) !== null && _c !== void 0 ? _c : {},
            trends: (_d = entities === null || entities === void 0 ? void 0 : entities.trends) !== null && _d !== void 0 ? _d : {},
            geos: (_e = entities === null || entities === void 0 ? void 0 : entities.geos) !== null && _e !== void 0 ? _e : {},
        };
        return { aggregations: aggregations, entities: ent, uiEntities: ent };
    };
    FilterModel.prototype.fetchAllFilterFacetsAsync = function (_a) {
        var filter = _a.filter, themeId = _a.themeId;
        return __awaiter(this, void 0, void 0, function () {
            var facetQuery, results, filterEntities, aggregations, allEntities, entities, e_2;
            return __generator(this, function (_b) {
                switch (_b.label) {
                    case 0:
                        _b.trys.push([0, 3, , 4]);
                        if (!themeId)
                            return [2 /*return*/, this.createFacetResult({}, {})];
                        facetQuery = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.buildFacetQueries(filter);
                        return [4 /*yield*/, Promise.all(facetQuery.map(function (query) {
                                return apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchStatsNew({
                                    themeId: themeId,
                                    filter: query.filter,
                                    config: query.config,
                                    statsBy: null,
                                });
                            }))];
                    case 1:
                        results = _b.sent();
                        return [4 /*yield*/, apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.facets.fetchFilterEntitiesNew({
                                themeId: themeId,
                                filter: filter.toApi(),
                            })];
                    case 2:
                        filterEntities = _b.sent();
                        aggregations = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.mergeAggregations(results.map(function (r) { return r.result.aggregations; }));
                        allEntities = results.flatMap(function (x) { return x.entities; });
                        entities = allEntities.length > 0 ? lodash__WEBPACK_IMPORTED_MODULE_12__.merge.apply(void 0, __spreadArray(__spreadArray([{}], __read(allEntities), false), [filterEntities.entities], false)) : {};
                        return [2 /*return*/, this.createFacetResult(entities, aggregations)];
                    case 3:
                        e_2 = _b.sent();
                        console.error(e_2);
                        return [2 /*return*/, undefined];
                    case 4: return [2 /*return*/];
                }
            });
        });
    };
    FilterModel.prototype.fetchAllFilterFacetsGlobalAsync = function (topicQuery) {
        return __awaiter(this, void 0, void 0, function () {
            var facetQuery, results, aggregations, allEntities, entities, e_3;
            return __generator(this, function (_a) {
                switch (_a.label) {
                    case 0:
                        _a.trys.push([0, 2, , 3]);
                        facetQuery = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.buildFacetQueries(topicQuery.filter, {
                            authorGender: { size: 20 },
                            authorInterestCategories: { size: 20 },
                            authorInterests: { size: 20 },
                            authorJobs: { size: 20 },
                            countries: { size: 10 },
                            countryGroups: {},
                            cityIds: { size: 10 },
                            regionIds: { size: 10 },
                            languages: { size: 20 },
                            postTypes: {},
                            resourceTypes: {},
                            sources: { size: 20 },
                            imageActivities: { size: 20 },
                            imageBrands: { size: 20 },
                            imageContentSensitivity: { size: 20 },
                            imageObjects: { size: 20 },
                            imagePeople: { size: 20 },
                            imageScenes: { size: 20 },
                            imageSubtypes: { size: 20 },
                            imageTypes: { size: 20 },
                            imageColors: { size: 20 },
                        });
                        return [4 /*yield*/, Promise.all(facetQuery.map(function (query) {
                                return apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchGlobalStats({
                                    topicQuery: __assign(__assign({}, topicQuery), { filter: query.filter.toApi() }),
                                    config: query.config,
                                    statsBy: null,
                                });
                            }))];
                    case 1:
                        results = _a.sent();
                        aggregations = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.mergeAggregations(results.map(function (r) { return r.result.aggregations; }));
                        allEntities = results.flatMap(function (x) { return x.entities; });
                        entities = allEntities.length > 0 ? lodash__WEBPACK_IMPORTED_MODULE_12__.merge.apply(void 0, __spreadArray([{}], __read(allEntities), false)) : {};
                        return [2 /*return*/, this.createFacetResult(entities, aggregations)];
                    case 2:
                        e_3 = _a.sent();
                        console.error(e_3);
                        return [2 /*return*/, undefined];
                    case 3: return [2 /*return*/];
                }
            });
        });
    };
    FilterModel.prototype.fetchDefaultFacetsAsync = function () {
        return __awaiter(this, void 0, void 0, function () {
            var aggregation, e_4;
            return __generator(this, function (_a) {
                switch (_a.label) {
                    case 0:
                        _a.trys.push([0, 2, , 3]);
                        return [4 /*yield*/, apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.metaData.getDefaultFilters()];
                    case 1:
                        aggregation = _a.sent();
                        return [2 /*return*/, filterModel.createFacetResult({}, aggregation)];
                    case 2:
                        e_4 = _a.sent();
                        console.error(e_4);
                        return [2 /*return*/, undefined];
                    case 3: return [2 /*return*/];
                }
            });
        });
    };
    FilterModel.prototype.fetchGlobalFilterEntities = function (topicQuery) {
        return __awaiter(this, void 0, void 0, function () {
            var result;
            return __generator(this, function (_a) {
                switch (_a.label) {
                    case 0: return [4 /*yield*/, apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.facets.fetchGlobalFilterEntities(__assign(__assign({}, topicQuery), { filter: topicQuery.filter.toApi() }))];
                    case 1:
                        result = _a.sent();
                        return [2 /*return*/, this.createFacetResult(result.entities, {})];
                }
            });
        });
    };
    FilterModel.prototype.setFacets = function (data) {
        this.updateWithMutable(function (state) {
            state.facets = data;
        });
    };
    FilterModel.prototype.updateFilterQuery = function (payload) {
        var query, _a, _b, newPathname, _c, newQuery, error_1;
        return __generator(this, function (_d) {
            switch (_d.label) {
                case 0:
                    _d.trys.push([0, 9, , 10]);
                    if (!payload.queryParams) return [3 /*break*/, 2];
                    _b = [{}];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getQuery */ .$Z) || {}];
                case 1:
                    _a = __assign.apply(void 0, [__assign.apply(void 0, _b.concat([(_d.sent())])), payload.queryParams]);
                    return [3 /*break*/, 4];
                case 2: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getQuery */ .$Z)];
                case 3:
                    _a = _d.sent();
                    _d.label = 4;
                case 4:
                    query = _a;
                    _c = payload.pathname;
                    if (_c) return [3 /*break*/, 6];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getPathname */ .Hm)];
                case 5:
                    _c = (_d.sent());
                    _d.label = 6;
                case 6:
                    newPathname = _c;
                    newQuery = payload.filter.replaceQuery(payload.clearAdditionalParams ? { from: query.from, to: query.to } : query);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.action.sendFilterEvent(payload.filter))];
                case 7:
                    _d.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_4__/* .updateSearch */ .YX)({ pathname: newPathname, search: (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_6__/* .stringifyQuery */ ._b)(newQuery) }))];
                case 8:
                    _d.sent();
                    return [3 /*break*/, 10];
                case 9:
                    error_1 = _d.sent();
                    console.error(error_1);
                    return [3 /*break*/, 10];
                case 10: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.clearFilterFacets = function () {
        return __generator(this, function (_a) {
            try {
                apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchStatsNew.prototype.abort();
                this.updateWithMutable(function (state) {
                    state.facets = {};
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    FilterModel.prototype.fetchSocialSearchFilter = function () {
        var results_1, aggregations, data, e_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchSocialSearchFilter)];
                case 1:
                    results_1 = _a.sent();
                    aggregations = Object.keys(results_1).reduce(function (acc, key) {
                        var _a;
                        return __assign(__assign({}, acc), (_a = {}, _a[key] = { values: results_1[key].map(function (x) { return ({ key: x, value: 1 }); }) }, _a));
                    }, {});
                    data = models_filters_Facet__WEBPACK_IMPORTED_MODULE_7__/* .Facet */ .s.mergeAggregations([aggregations]);
                    this.setFacets(data);
                    return [3 /*break*/, 3];
                case 2:
                    e_5 = _a.sent();
                    console.error(e_5);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.updateFilter = function (_a) {
        var err_1;
        var name = _a.name, value = _a.value, _b = _a.locationOptions, locationOptions = _b === void 0 ? undefined : _b, _c = _a.exclude, exclude = _c === void 0 ? false : _c;
        return __generator(this, function (_d) {
            switch (_d.label) {
                case 0:
                    _d.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(filterModel.updateFilter_NEW, {
                            name: name,
                            value: value,
                            locationOptions: locationOptions,
                            exclude: exclude,
                        })];
                case 1:
                    _d.sent();
                    return [3 /*break*/, 3];
                case 2:
                    err_1 = _d.sent();
                    console.error(err_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.updateHighLevelFilter = function (_a) {
        var filter, query, newFilter, err_2;
        var name = _a.name, value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getHighLevelThemeFilter */ .ke)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getQuery */ .$Z)];
                case 2:
                    query = _b.sent();
                    newFilter = filter.set(name, value);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_4__/* .update */ .yo)({
                            query: __assign(__assign({}, query), newFilter.toJS()),
                        }))];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    err_2 = _b.sent();
                    console.error(err_2);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.updateFilterBatched = function (_a) {
        var err_3;
        var updates = _a.updates, locationOptions = _a.locationOptions;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(filterModel.updateFilterBatched_NEW, {
                            updates: updates,
                            locationOptions: locationOptions,
                        })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    err_3 = _b.sent();
                    console.error(err_3);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.updateFilterOperator = function (_a) {
        var query, newQuery, err_4;
        var newOperator = _a.newOperator;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getQuery */ .$Z)];
                case 1:
                    query = _b.sent();
                    newQuery = __assign(__assign({}, query), { op: newOperator });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_4__/* .update */ .yo)({ query: newQuery }))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    err_4 = _b.sent();
                    console.error(err_4);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.updatePeriod = function (_a) {
        var err_5;
        var from = _a.from, to = _a.to;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    // TODO: STATE TO MODEL ->  Remove after migrations
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_11__/* .getAction */ .Th)('UPDATE_PERIOD')({ from: from, to: to }))];
                case 1:
                    // TODO: STATE TO MODEL ->  Remove after migrations
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_4__/* .update */ .yo)({
                            query: { from: from, to: to },
                        }))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    err_5 = _b.sent();
                    console.error(err_5);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.searchMentionsByQuery = function (_a) {
        var validationResult, isValid, errorCode, error_2;
        var text = _a.text, themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setValidateMentionsSearchQuery({ validating: true, error: null, isValid: true });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.mentions.validateMentionsSearchQuery, {
                            text: text,
                            themeId: themeId,
                        })];
                case 1:
                    validationResult = _b.sent();
                    if (!validationResult.isValid) {
                        isValid = validationResult.isValid, errorCode = validationResult.error.errorCode;
                        this.setValidateMentionsSearchQuery({ isValid: isValid, errorCode: errorCode });
                        return [2 /*return*/];
                    }
                    this.setValidateMentionsSearchQuery({ isValid: true });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.updateFilter, {
                            name: 'text',
                            value: text,
                        })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_2 = _b.sent();
                    this.setValidateMentionsSearchQuery({ error: error_2 });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.setValidateMentionsSearchQuery = function (_a) {
        var isValid = _a.isValid, _b = _a.validating, validating = _b === void 0 ? false : _b, _c = _a.error, error = _c === void 0 ? null : _c, _d = _a.errorCode, errorCode = _d === void 0 ? null : _d;
        this.updateWithMutable(function (state) {
            state.validateMentionSearchQuery.isValid = isValid;
            state.validateMentionSearchQuery.validating = validating;
            state.validateMentionSearchQuery.error = error;
            state.validateMentionSearchQuery.errorCode = errorCode;
        });
    };
    FilterModel.prototype.updateFilter_NEW = function (props) {
        var name, value, locationOptions, exclude, prevFilter, newFilter_1, err_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    name = props.name, value = props.value, locationOptions = props.locationOptions, exclude = props.exclude;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getThemeFilter */ .Ic)];
                case 2:
                    prevFilter = _a.sent();
                    newFilter_1 = null;
                    if (exclude) {
                        (0,models_filters_Filter__WEBPACK_IMPORTED_MODULE_10__/* .handleExclude */ .vO)(name, value, prevFilter.copyFilter(), function (_a) {
                            var filter = _a.filter;
                            newFilter_1 = filter;
                        });
                    }
                    else {
                        (0,models_filters_Filter__WEBPACK_IMPORTED_MODULE_10__/* .handleAdd */ .Cb)(name, value, prevFilter.copyFilter(), function (_a) {
                            var filter = _a.filter;
                            newFilter_1 = filter;
                        });
                    }
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(filterModel.action.updateFilterQuery({
                            filter: newFilter_1,
                            pathname: locationOptions === null || locationOptions === void 0 ? void 0 : locationOptions.pathname,
                            queryParams: locationOptions === null || locationOptions === void 0 ? void 0 : locationOptions.query,
                        }))];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    err_6 = _a.sent();
                    console.error(err_6);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.updateFilterBatched_NEW = function (props) {
        var updates, locationOptions, newFilter_2, error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    updates = props.updates, locationOptions = props.locationOptions;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getThemeFilter */ .Ic)];
                case 2:
                    newFilter_2 = _a.sent();
                    updates.forEach(function (group) {
                        if (group.exclude) {
                            (0,models_filters_Filter__WEBPACK_IMPORTED_MODULE_10__/* .handleExclude */ .vO)(group.name, group.value, newFilter_2, function (_a) {
                                var filter = _a.filter;
                                newFilter_2 = filter;
                            });
                            return;
                        }
                        (0,models_filters_Filter__WEBPACK_IMPORTED_MODULE_10__/* .handleAdd */ .Cb)(group.name, group.value, newFilter_2, function (_a) {
                            var filter = _a.filter;
                            newFilter_2 = filter;
                        });
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(filterModel.action.updateFilterQuery({
                            filter: newFilter_2,
                            pathname: locationOptions === null || locationOptions === void 0 ? void 0 : locationOptions.pathname,
                            queryParams: locationOptions === null || locationOptions === void 0 ? void 0 : locationOptions.query,
                        }))];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_3 = _a.sent();
                    console.error({ error: error_3 });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.setTotalCount = function (_a) {
        var total = _a.total;
        return __generator(this, function (_b) {
            this.updateWithMutable(function (state) {
                state.totalCount = total;
            });
            return [2 /*return*/];
        });
    };
    FilterModel.prototype.fetchSavedFilters = function () {
        var themeId, savedFilters_1, error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.savedFilters.loading = true;
                        state.savedFilters.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.themes.fetchSavedFilter, { themeId: themeId })];
                case 2:
                    savedFilters_1 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.savedFilters.loading = false;
                        state.savedFilters.loaded = true;
                        state.savedFilters.list = savedFilters_1.filters;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_4 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.savedFilters.loading = false;
                        state.savedFilters.loaded = true;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.saveFilter = function (name) {
        var themeId, filter, error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.themes.saveFilter, {
                            themeId: themeId,
                            filter: filter.toApi(),
                            name: name,
                        })];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.sendAnalyticalEvent({
                            eventType: 'Saved Filter',
                            properties: {
                                event: 'save',
                                filter: filter.toEvent(),
                            },
                        })];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(filterModel.action.fetchSavedFilters())];
                case 5:
                    _a.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_5 = _a.sent();
                    console.error(error_5);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.editSavedFilter = function (filterId, name) {
        var themeId, filter, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.themes.editSavedFilter, {
                            themeId: themeId,
                            filter: filter.toApi(),
                            id: filterId,
                            name: name,
                        })];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.sendAnalyticalEvent({
                            eventType: 'Saved Filter',
                            properties: {
                                event: 'edit',
                                filter: filter.toEvent(),
                            },
                        })];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(filterModel.action.fetchSavedFilters())];
                case 5:
                    _a.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_6 = _a.sent();
                    console.error(error_6);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.removeSavedFilter = function (filterId) {
        var selectedFilterId, themeId, error_7;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .selectedSavedFilterId */ .a_)];
                case 1:
                    selectedFilterId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getCurrentThemeId */ .Md)];
                case 2:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.themes.removeSavedFilter, {
                            id: filterId,
                            themeId: themeId,
                        })];
                case 3:
                    _a.sent();
                    if (selectedFilterId === filterId) {
                        this.clearSelectedSavedFilter();
                    }
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.sendAnalyticalEvent({
                            eventType: 'Saved Filter',
                            properties: { event: 'remove' },
                        })];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(filterModel.action.fetchSavedFilters())];
                case 5:
                    _a.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_7 = _a.sent();
                    console.error(error_7);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    FilterModel.prototype.clearSelectedSavedFilter = function () {
        this.updateWithMutable(function (state) {
            state.savedFilters.selectedFilterId = null;
        });
    };
    FilterModel.prototype.applySavedFilter = function (savedFilter) {
        var error_8;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, this.updateFilterQuery({ filter: models_filters_Filter__WEBPACK_IMPORTED_MODULE_10__/* .Filter */ .dJ.fromNewApi(savedFilter.filter) })];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_3__/* .analyticsStateModel */ .j.sendAnalyticalEvent({
                            eventType: 'Saved Filter',
                            properties: { event: 'apply' },
                        })];
                case 2:
                    _a.sent();
                    this.updateWithMutable(function (state) {
                        state.savedFilters.selectedFilterId = savedFilter.id;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_8 = _a.sent();
                    console.error(error_8);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "fetchAllFilterFacets", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "updateFilterQuery", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "clearFilterFacets", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(true),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "fetchSocialSearchFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "updateFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "updateHighLevelFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "updateFilterBatched", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "updateFilterOperator", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "updatePeriod", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "searchMentionsByQuery", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "setTotalCount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "fetchSavedFilters", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "saveFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String, String]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "editSavedFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [String]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "removeSavedFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "clearSelectedSavedFilter", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], FilterModel.prototype, "applySavedFilter", null);
    FilterModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('Filter')
    ], FilterModel);
    return FilterModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var filterModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(FilterModel);


/***/ }),

/***/ "0Zyk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Aq: () => (/* binding */ getCountryGroupFacets),
/* harmony export */   CS: () => (/* binding */ getAuthorFacets),
/* harmony export */   Ce: () => (/* binding */ getImageObjectsFacets),
/* harmony export */   E1: () => (/* binding */ getImageColorsFacets),
/* harmony export */   Gq: () => (/* binding */ getSourceIdsFacets),
/* harmony export */   I3: () => (/* binding */ getSidePanelFilter),
/* harmony export */   Ic: () => (/* binding */ getThemeFilter),
/* harmony export */   JI: () => (/* binding */ getSponsoredCount),
/* harmony export */   Ls: () => (/* binding */ getAuthorInterestsFacets),
/* harmony export */   NC: () => (/* binding */ getHostFacets),
/* harmony export */   OA: () => (/* binding */ getContentTypeFacets),
/* harmony export */   Oy: () => (/* binding */ getSentimentFacets),
/* harmony export */   RK: () => (/* binding */ getImageScenesFacets),
/* harmony export */   S: () => (/* binding */ getIndirectCount),
/* harmony export */   Sj: () => (/* binding */ getChannelFacets),
/* harmony export */   TF: () => (/* binding */ isFilterDedup),
/* harmony export */   TR: () => (/* binding */ getPostTypeFacets),
/* harmony export */   V_: () => (/* binding */ getAuthorGenderFacets),
/* harmony export */   Xm: () => (/* binding */ getResourceTypeFacets),
/* harmony export */   YB: () => (/* binding */ getAuthorJobsFacets),
/* harmony export */   a_: () => (/* binding */ selectedSavedFilterId),
/* harmony export */   bE: () => (/* binding */ getCountryFacets),
/* harmony export */   bI: () => (/* binding */ savedFilters),
/* harmony export */   bY: () => (/* binding */ getRegionFacets),
/* harmony export */   cs: () => (/* binding */ getSourceFacets),
/* harmony export */   cz: () => (/* binding */ getAuthorAgeRange),
/* harmony export */   dW: () => (/* binding */ getImageTypesFacets),
/* harmony export */   fH: () => (/* binding */ getTagFacets),
/* harmony export */   gM: () => (/* binding */ getChannelSubscribersRange),
/* harmony export */   gU: () => (/* binding */ getCollectionMethodFacets),
/* harmony export */   gw: () => (/* binding */ getOriginsFacets),
/* harmony export */   hv: () => (/* binding */ getImageSubtypesFacets),
/* harmony export */   iv: () => (/* binding */ loadedSavedFilters),
/* harmony export */   ix: () => (/* binding */ getPeriod),
/* harmony export */   kU: () => (/* binding */ getSubjectsFacets),
/* harmony export */   kc: () => (/* binding */ getTextFilter),
/* harmony export */   ke: () => (/* binding */ getHighLevelThemeFilter),
/* harmony export */   mP: () => (/* binding */ getSystemTagFacets),
/* harmony export */   nJ: () => (/* binding */ getSourceFormatFacets),
/* harmony export */   oe: () => (/* binding */ getAuthorInterestCategoriesFacets),
/* harmony export */   sp: () => (/* binding */ getAuthorSubscribersRange),
/* harmony export */   sy: () => (/* binding */ getTrendFacets),
/* harmony export */   t$: () => (/* binding */ getThemeFilterForRule),
/* harmony export */   t6: () => (/* binding */ getSentimentAspectsFacetsNew),
/* harmony export */   uO: () => (/* binding */ getCityFacets),
/* harmony export */   vo: () => (/* binding */ getLinkFacets),
/* harmony export */   ws: () => (/* binding */ getRatingFacets),
/* harmony export */   xo: () => (/* binding */ getImageActivitiesFacets),
/* harmony export */   zB: () => (/* binding */ getBrandImageFacets),
/* harmony export */   zT: () => (/* binding */ getLanguageFacets),
/* harmony export */   zw: () => (/* binding */ getImagePeopleFacets)
/* harmony export */ });
/* unused harmony exports getPreviewFilter, isMentionSearchQueryValid, getMentionSearchQueryErrorCode, getDisplayFacets, getFilterFacets, getFilterFacetsSelectorByType */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("XFM9");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("KG/6");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("+MLa");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("2N3d");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("Z+iQ");
/* harmony import */ var state_filter_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("d/15");
/* harmony import */ var utils_filterQueryUtils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("iL/N");
/* harmony import */ var utils_themeFilterUtils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("oLrK");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("3o2z");
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};










var getThemeFilter = (0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .createNonCacheSelector */ .Hq)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getQuery */ .$Z, function (query) {
    return models_filters_Filter__WEBPACK_IMPORTED_MODULE_1__/* .Filter */ .dJ.fromQuery(query || {});
});
var getThemeFilterForRule = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getThemeFilter, function (filter) {
    var e_1, _a;
    var ignoredFilterTypesForRules = [
        'dedup',
        'from',
        'to',
        'processed',
        'tagged',
        'starred',
        'assigned',
        'spam',
        'deleted',
        'similar',
        'tag',
        'excludeTag',
        'withTextHighlight',
        'withImage',
        'origin',
        'trend'
    ];
    try {
        for (var ignoredFilterTypesForRules_1 = __values(ignoredFilterTypesForRules), ignoredFilterTypesForRules_1_1 = ignoredFilterTypesForRules_1.next(); !ignoredFilterTypesForRules_1_1.done; ignoredFilterTypesForRules_1_1 = ignoredFilterTypesForRules_1.next()) {
            var filterType = ignoredFilterTypesForRules_1_1.value;
            filter = filter.withoutFilterGroupByName(filterType);
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (ignoredFilterTypesForRules_1_1 && !ignoredFilterTypesForRules_1_1.done && (_a = ignoredFilterTypesForRules_1.return)) _a.call(ignoredFilterTypesForRules_1);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return filter;
});
var getHighLevelThemeFilter = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getQuery */ .$Z, function (query) { return (0,utils_filterQueryUtils__WEBPACK_IMPORTED_MODULE_6__/* .getHighLevelFilterFromQuery */ .Dk)(utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.from(query || {})); });
var getPreviewFilter = function (state) {
    return (state.filter.get('previewFilter')
        ? Filter.createFromImmutableState(state.filter.get('previewFilter'))
        : getThemeFilter(state));
};
var getPeriod = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getThemeFilter, function (filter) { return ({ from: filter.from, to: filter.to }); });
var isFilterDedup = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getThemeFilter, function (filter) { return filter.dedup; });
var getTextFilter = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getThemeFilter, function (filter) { var _a; return ((_a = filter.findByName('text')) === null || _a === void 0 ? void 0 : _a.value) || ''; });
var getSidePanelFilter = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getThemeFilter, function (filter) {
    return createSidePanelFilter(filter);
    function createSidePanelFilter(filterEntity) {
        var getGroupValue = function (fieldName) { var _a; return (_a = filterEntity.findByName(fieldName)) === null || _a === void 0 ? void 0 : _a.value; };
        return {
            word: getGroupValue('word') || [],
            tag: getGroupValue('tag') || [],
        };
    }
});
var isMentionSearchQueryValid = function (state) { var _a; return (_a = Mutable.from(state.filter).validateMentionSearchQuery) === null || _a === void 0 ? void 0 : _a.isValid; };
var getMentionSearchQueryErrorCode = function (state) { var _a; return (_a = Mutable.from(state.filter).validateMentionSearchQuery) === null || _a === void 0 ? void 0 : _a.errorCode; };
var getDisplayFacets = function (_a) {
    var _b;
    var filterGroups = _a.filterGroups, facets = _a.facets, entities = _a.entities, types = _a.types, includeUnknown = _a.includeUnknown, isAspect = _a.isAspect;
    var keys = {};
    if (types) {
        types.forEach(function (id) {
            keys[id] = { id: id, count: 0, selected: false, excluded: false };
        });
    }
    if (includeUnknown) {
        keys.unknown = {
            id: 'unknown',
            count: (_b = facets === null || facets === void 0 ? void 0 : facets.missingCount) !== null && _b !== void 0 ? _b : 0,
            selected: false,
            excluded: false,
        };
    }
    if (filterGroups.length !== 0) {
        filterGroups.forEach(function (f) {
            var isExcludeType = utils_themeFilterUtils__WEBPACK_IMPORTED_MODULE_7__/* .excludeFilterOperatorTypes */ .W4.includes(f.op);
            f.value.forEach(function (value) {
                if (keys[value]) {
                    keys[value].selected = !isExcludeType;
                    keys[value].excluded = isExcludeType;
                }
                else {
                    keys[value] = {
                        id: value,
                        count: 0,
                        selected: !isExcludeType,
                        excluded: isExcludeType,
                    };
                }
            });
        });
    }
    facets === null || facets === void 0 ? void 0 : facets.values.forEach(function (item) {
        if (keys[item.key]) {
            keys[item.key].count = item.count;
        }
        else {
            keys[item.key] = {
                id: item.key,
                count: item.count,
                selected: false,
                excluded: false,
            };
        }
    });
    var comparator = types
        ? function (a, b) {
            var aIndex = types.indexOf(a.id);
            var bIndex = types.indexOf(b.id);
            if (aIndex === -1 && bIndex >= 0) {
                return 1;
            }
            if (bIndex === -1 && aIndex >= 0) {
                return 1;
            }
            return aIndex - bIndex;
        }
        : function (a, b) {
            if (a.id === 'unknown') {
                return 1;
            }
            if (b.id === 'unknown') {
                return -1;
            }
            return b.count - a.count;
        };
    var valueList = Object.values(keys).sort(comparator);
    if (entities) {
        return valueList
            .map(function (item) {
            var entity = entities.get(Number(item.id)) || entities.get(String(item.id));
            if (!entity) {
                return null;
            }
            var merged = entity.merge((0,immutable__WEBPACK_IMPORTED_MODULE_3__.fromJS)(item));
            if (!isAspect) {
                return merged.toJS();
            }
            var sentiments = merged.get('sentiments');
            var mappedSentiments = sentiments.map(function (sentiment) {
                return sentiment
                    .set('selected', filterGroups === null || filterGroups === void 0 ? void 0 : filterGroups.some(function (f) { return utils_themeFilterUtils__WEBPACK_IMPORTED_MODULE_7__/* .filterOperatorTypes */ .Ev.includes(f.op) && f.value.includes(sentiment.get('key')); }))
                    .set('excluded', filterGroups === null || filterGroups === void 0 ? void 0 : filterGroups.some(function (f) { return utils_themeFilterUtils__WEBPACK_IMPORTED_MODULE_7__/* .excludeFilterOperatorTypes */ .W4.includes(f.op) && f.value.includes(sentiment.get('key')); }));
            });
            var selected = mappedSentiments.valueSeq().every(function (sentiment) { return sentiment.get('selected'); });
            var excluded = mappedSentiments.valueSeq().every(function (sentiment) { return sentiment.get('excluded'); });
            return merged
                .set('sentiments', mappedSentiments)
                .set('selected', selected)
                .set('excluded', excluded)
                .toJS();
        })
            .filter(function (item) { return item; });
    }
    return valueList;
};
var getFilterFacets = function (state) { var _a; return (_a = state.filter.get('facets')) === null || _a === void 0 ? void 0 : _a.toJS(); };
var getFilterFacetsSelectorByType = function (type) { return (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getFilterFacets, function (facets) { return facets === null || facets === void 0 ? void 0 : facets[type]; }); };
var createFacetsSelector = function (_a) {
    var facetType = _a.facetType, filterName = _a.filterName, types = _a.types, includeUnknown = _a.includeUnknown, _b = _a.entitiesSelector, entitiesSelector = _b === void 0 ? function () { } : _b;
    return function (state, previewFilter, facets) {
        var fakeState = {
            entities: (0,immutable__WEBPACK_IMPORTED_MODULE_3__.fromJS)({
                original: facets === null || facets === void 0 ? void 0 : facets.entities,
                ui: facets === null || facets === void 0 ? void 0 : facets.uiEntities,
            }),
        };
        var result = getDisplayFacets({
            filterGroups: previewFilter.findAllGroupsByName(filterName),
            facets: facets === null || facets === void 0 ? void 0 : facets.aggregations[facetType],
            entities: entitiesSelector ? entitiesSelector(fakeState) : null,
            includeUnknown: includeUnknown,
            types: types,
        });
        return utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.from(result);
    };
};
var getSentimentAspectsFacetsNew = function (state, filter, facets) {
    var aspectFacets = (0,immutable__WEBPACK_IMPORTED_MODULE_3__.fromJS)(facets === null || facets === void 0 ? void 0 : facets.aggregations['sentimentAspects']);
    var aspectsList = state.metaData.aspects.list;
    var preparedFacets = (0,state_filter_utils__WEBPACK_IMPORTED_MODULE_5__/* .mergeAspectFacetsWithAspectList */ .X)(aspectFacets, aspectsList);
    return getDisplayFacets({
        filterGroups: filter.findAllGroupsByName('aspect'),
        facets: preparedFacets === null || preparedFacets === void 0 ? void 0 : preparedFacets.toJS(),
        entities: preparedFacets && (0,immutable__WEBPACK_IMPORTED_MODULE_3__.Map)(preparedFacets.get('values').map(function (v) { return [v.get('key'), v]; })),
        isAspect: true,
        types: undefined,
    });
};
var getSentimentFacets = createFacetsSelector({
    facetType: 'sentiment',
    filterName: 'sentiment',
    types: ['positive', 'neutral', 'negative'],
});
var getContentTypeFacets = createFacetsSelector({
    facetType: 'contentTypes',
    filterName: 'contentType',
    types: ['text', 'image', 'video', 'link', 'sticker', 'poll', 'location', 'subtitles', 'album'],
});
var getPostTypeFacets = createFacetsSelector({
    facetType: 'postTypes',
    filterName: 'postType',
    types: ['post', 'comment', 'repost', 'extendedRepost'],
});
var getResourceTypeFacets = createFacetsSelector({
    facetType: 'resourceTypes',
    filterName: 'resourceType',
    types: ['social', 'forum', 'news', 'reviews', 'blog', 'messenger'],
});
var getSourceFormatFacets = createFacetsSelector({
    facetType: 'sourceFormat',
    filterName: 'sourceFormat',
    types: ['instagramReels', 'instagramStories', 'pinterestStoryPins', 'youTubeShorts', 'facebookReels', 'facebookLive', 'twitchLive'],
});
var getRatingFacets = createFacetsSelector({
    facetType: 'starRating',
    filterName: 'starRating',
    types: [1, 2, 3, 4, 5],
});
var getCollectionMethodFacets = createFacetsSelector({
    facetType: 'collectionMethods',
    filterName: 'collectionMethod',
    types: ['text', 'ocrText', 'imageLogo', 'imageFeature', 'channel', 'manual'],
});
var getAuthorGenderFacets = createFacetsSelector({
    facetType: 'authorGender',
    filterName: 'gender',
    types: ['male', 'female', 'community', 'unknown'],
});
var getAuthorFacets = createFacetsSelector({
    facetType: 'authors',
    filterName: 'authorId',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getAuthorEntities */ .fU,
});
var getAuthorInterestsFacets = createFacetsSelector({
    facetType: 'authorInterests',
    filterName: 'authorInterests',
});
var getAuthorInterestCategoriesFacets = createFacetsSelector({
    facetType: 'authorInterestCategories',
    filterName: 'authorInterestCategories',
});
var getAuthorJobsFacets = createFacetsSelector({
    facetType: 'authorJobs',
    filterName: 'authorJobs',
});
var getChannelFacets = createFacetsSelector({
    facetType: 'channels',
    filterName: 'channelId',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getAuthorEntities */ .fU,
});
var getLinkFacets = createFacetsSelector({
    facetType: 'links',
    filterName: 'link',
});
var getHostFacets = createFacetsSelector({
    facetType: 'hosts',
    filterName: 'host',
});
var getSourceIdsFacets = createFacetsSelector({
    facetType: 'sources',
    filterName: 'sourceId',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getSourceEntities */ .tw,
});
var getSourceFacets = createFacetsSelector({
    facetType: 'sources',
    filterName: 'source',
});
var getCountryFacets = createFacetsSelector({
    facetType: 'countries',
    filterName: 'country',
    includeUnknown: true,
});
var getCountryGroupFacets = createFacetsSelector({
    facetType: 'countryGroups',
    filterName: 'countryGroup',
    types: ['europe', 'asia', 'northAmerica', 'centralAmerica', 'theCaribbean', 'southAmerica', 'africa', 'oceania'],
});
var getRegionFacets = createFacetsSelector({
    facetType: 'regionIds',
    filterName: 'region',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getGeoEntities */ .vQ,
});
var getCityFacets = createFacetsSelector({
    facetType: 'cityIds',
    filterName: 'city',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getGeoEntities */ .vQ,
});
var getTagFacets = createFacetsSelector({
    facetType: 'tags',
    filterName: 'tag',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getTagEntities */ .ul,
});
var getTrendFacets = createFacetsSelector({
    facetType: 'trends',
    filterName: 'trend',
    entitiesSelector: state_entities_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getTrendEntities */ .zR,
});
var getSystemTagFacets = createFacetsSelector({
    facetType: 'systemTags',
    filterName: 'systemTags',
    types: [
        'wom',
        'commercial',
        'donation',
        'article',
        'porn',
        'pornImage',
        'recipe',
        'promotion',
        'listBeta',
        'captionBeta',
        'advertisement',
        'giveaway',
        'vacancy',
        'socialPromo',
        'article',
        'captionBeta',
        'listBeta',
        'porn',
        'pornImage',
        'teaserBeta',
        'wom',
        'womReview',
        'womQuestion',
        'womComparison',
        'womComplaint',
        'womRecommendation',
        'womOfficialResponse',
        'advertisement',
        'commercial',
        'donation',
        'giveaway',
        'promotion',
        'recipe',
        'socialPromo',
        'vacancy'
    ],
});
var getLanguageFacets = createFacetsSelector({
    facetType: 'languages',
    filterName: 'language',
});
var getBrandImageFacets = createFacetsSelector({
    facetType: 'imageBrands',
    filterName: 'imageBrand',
});
var getImageObjectsFacets = createFacetsSelector({
    facetType: 'imageObjects',
    filterName: 'imageObject',
    types: ['text', 'clothing', 'car', 'plant', 'poster'],
});
var getImageScenesFacets = createFacetsSelector({
    facetType: 'imageScenes',
    filterName: 'imageScene',
    types: ['sport', 'art', 'fashion', 'competition'],
});
var getImagePeopleFacets = createFacetsSelector({
    facetType: 'imagePeople',
    filterName: 'imagePeople',
    types: ['man', 'woman', 'team', 'child'],
});
var getImageActivitiesFacets = createFacetsSelector({
    facetType: 'imageActivities',
    filterName: 'imageActivities',
    types: ['smile', 'play', 'conversation', 'standing'],
});
var getImageTypesFacets = createFacetsSelector({
    facetType: 'imageTypes',
    filterName: 'imageType',
    types: ['ILLUSTRATION', 'PHOTO'],
});
var getImageSubtypesFacets = createFacetsSelector({
    facetType: 'imageSubtypes',
    filterName: 'imageSubtype',
    types: ['advertising', 'photo caption', 'screenshot', 'cartoon', 'graphics'],
});
var getImageColorsFacets = createFacetsSelector({
    facetType: 'imageColors',
    filterName: 'imageColors',
});
var getSubjectsFacets = createFacetsSelector({
    facetType: 'subjects',
    filterName: 'subject',
});
var getOriginsFacets = createFacetsSelector({
    facetType: 'origins',
    filterName: 'origin',
});
var getIndirectCount = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getFilterFacetsSelectorByType('indirect'), function (facets) {
    if (!facets || Object.keys(facets).length === 0 || Object.keys(facets.values).length === 0) {
        return null;
    }
    return facets.values[0].count || null;
});
var getSponsoredCount = (0,reselect__WEBPACK_IMPORTED_MODULE_9__/* .createSelector */ .Mz)(getFilterFacetsSelectorByType('sponsored'), function (facets) {
    if (!facets || Object.keys(facets).length === 0 || Object.keys(facets.values).length === 0) {
        return null;
    }
    return facets.values[0].count || null;
});
var getAuthorAgeRange = function (previewFilter) {
    var authorAgeFilter = previewFilter.findByName('authorAge');
    return authorAgeFilter
        ? authorAgeFilter.value
        : null;
};
var getAuthorSubscribersRange = function (previewFilter) {
    var authorSubscribersFilter = previewFilter.findByName('authorSubscribers');
    return authorSubscribersFilter
        ? authorSubscribersFilter.value
        : null;
};
var getChannelSubscribersRange = function (previewFilter) {
    var channelSubscribersFilter = previewFilter.findByName('channelSubscribers');
    return channelSubscribersFilter
        ? channelSubscribersFilter.value
        : null;
};
var savedFilters = function (state) { var _a; return (_a = state.filter.savedFilters) === null || _a === void 0 ? void 0 : _a.list; };
var loadedSavedFilters = function (state) { var _a; return (_a = state.filter.savedFilters) === null || _a === void 0 ? void 0 : _a.loaded; };
var selectedSavedFilterId = function (state) { var _a; return (_a = state.filter.savedFilters) === null || _a === void 0 ? void 0 : _a.selectedFilterId; };


/***/ }),

/***/ "OwkF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   k: () => (/* binding */ galleryModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("0Zyk");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("Qyqr");
/* harmony import */ var state_gallery_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("/Jcm");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("kHEK");
/* eslint no-param-reassign: 0, func-names: 0 */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};






var Gallery = /** @class */ (function (_super) {
    __extends(Gallery, _super);
    function Gallery() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initial = {
            ids: [],
            total: 0,
            loading: true,
        };
        return _this;
    }
    Gallery.prototype.fetchMentions = function (payload) {
        var more, filter, themeId, currentPage, page_1, params, response_1, error_1;
        if (payload === void 0) { payload = { more: false }; }
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 5, , 6]);
                    more = payload === null || payload === void 0 ? void 0 : payload.more;
                    if (!more) {
                        this.updateWithImmer(function (state) {
                            state.loading = true;
                        });
                    }
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getCurrentThemeId */ .Md)];
                case 2:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_gallery_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getGalleryMentionsPage */ .$U)];
                case 3:
                    currentPage = (_a.sent());
                    page_1 = more ? currentPage + 1 : 1;
                    params = {
                        filter: filter,
                        themeId: themeId,
                        page: page_1,
                        perPage: 50,
                    };
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.mentions.gallery, params)];
                case 4:
                    response_1 = (_a.sent());
                    this.updateWithImmer(function (state) {
                        var result = response_1.result;
                        var newMentionIds = result.mentions.map(Number);
                        state.ids = page_1 === 1 ? newMentionIds : __spreadArray(__spreadArray([], __read(state.ids), false), __read(newMentionIds), false);
                        state.total = result.total;
                        state.error = null;
                        state.loading = false;
                        state.page = page_1;
                    });
                    return [3 /*break*/, 6];
                case 5:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.error = error_1;
                        state.loading = false;
                    });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Gallery.prototype, "fetchMentions", null);
    Gallery = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Gallery')
    ], Gallery);
    return Gallery;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var galleryModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(Gallery);


/***/ }),

/***/ "/Jcm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $U: () => (/* binding */ getGalleryMentionsPage),
/* harmony export */   Ex: () => (/* binding */ getGalleryMentions),
/* harmony export */   b4: () => (/* binding */ hasMoreGalleryMentions),
/* harmony export */   yi: () => (/* binding */ isLoadingGalleryMentions)
/* harmony export */ });
/* unused harmony export getGalleryMentionIds */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};


var getGalleryMentionIds = function (state) { return state.gallery.ids; };
var getGalleryMentionsPage = function (state) { return state.gallery.page; };
var isLoadingGalleryMentions = function (state) { return state.gallery.loading; };
var hasMoreGalleryMentions = function (state) { return state.gallery.total > state.gallery.ids.length; };
var getGalleryMentions = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getMentionEntities */ .W2, getGalleryMentionIds, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getChannelEntities */ .JK, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getSourceEntities */ .tw, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, function (entities, ids, channels, sources, users) { return ids.map(function (id) {
    var entity = entities[id] || {};
    var assigneeId = entity.assigneeId;
    var sourceId = entity.source;
    var channelId = entity.channel;
    var tagIds = entity.tags;
    return __assign(__assign({}, entity), { assignee: users[assigneeId], source: sources[sourceId], channel: channels[channelId], tagIds: tagIds });
}); });


/***/ }),

/***/ "zgQp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   m: () => (/* binding */ hubEventsModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var api_Hub__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("ZHGk");
/* harmony import */ var state_currentUser_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("cGQa");
/* harmony import */ var state_tasks_model__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("612L");
/* harmony import */ var state_mentionStream_newCount_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("+qv3");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("X9tB");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("Qyqr");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("0Zyk");
/* harmony import */ var state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("wDA8");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};











var HubEvents = /** @class */ (function (_super) {
    __extends(HubEvents, _super);
    function HubEvents() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            error: null,
        };
        return _this;
    }
    HubEvents.prototype.receiveTasksHubEvent = function (_a) {
        var err_1;
        var data = _a.data;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_tasks_model__WEBPACK_IMPORTED_MODULE_5__/* .tasksModel */ .o.action.updateTasks(data))];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    err_1 = _b.sent();
                    console.error(err_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    HubEvents.prototype.receiveMentionCountHubEvent = function (_a) {
        var err_2;
        var data = _a.data;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_mentionStream_newCount_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamCountModel */ .B.action.updateMentionsCount({ count: data }))];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    err_2 = _b.sent();
                    console.error(err_2);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    HubEvents.prototype.initHubConnection = function (_a) {
        var user, userLoading, error_1;
        var eventHandlers = _a.eventHandlers;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 7, , 8]);
                    this.updateWithImmer(function (state) {
                        state.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.hub.setMessageHandlers, { eventHandlers: eventHandlers })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.hub.startListening)];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getCurrentUser */ .HW)];
                case 3:
                    user = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_7__/* .isCurrentUserLoading */ .BR)];
                case 4:
                    userLoading = _b.sent();
                    if (!(!user && !userLoading)) return [3 /*break*/, 6];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_currentUser_model__WEBPACK_IMPORTED_MODULE_4__/* .currentUserStateModel */ .b.action.fetchUserProfile())];
                case 5:
                    _b.sent();
                    _b.label = 6;
                case 6: return [3 /*break*/, 8];
                case 7:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.error = error_1;
                    });
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    HubEvents.prototype.subscribeForMentionsCountUpdate = function () {
        var themeId, filter, mentionsLastId, err_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getMentionsLastId */ .rx)];
                case 3:
                    mentionsLastId = _a.sent();
                    if (!mentionsLastId) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.hub.sendMessage, {
                            methodName: api_Hub__WEBPACK_IMPORTED_MODULE_3__/* .METHOD_NAMES */ .NT.SUBSCRIBE_FOR_MENTION_COUNT_UPDATE,
                            args: [__assign({ fromId: mentionsLastId, themeId: themeId }, (filter ? filter.toJS() || {} : {}))],
                        })];
                case 4:
                    _a.sent();
                    _a.label = 5;
                case 5: return [3 /*break*/, 7];
                case 6:
                    err_3 = _a.sent();
                    console.error(err_3);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    HubEvents.prototype.unsubscribeFromMentionsCountUpdate = function () {
        var err_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.hub.sendMessage, {
                            methodName: api_Hub__WEBPACK_IMPORTED_MODULE_3__/* .METHOD_NAMES */ .NT.UNSUBSCRIBE_FROM_MENTION_COUNT_UPDATE,
                            args: [],
                        })];
                case 1:
                    _a.sent();
                    return [3 /*break*/, 3];
                case 2:
                    err_4 = _a.sent();
                    console.error(err_4);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], HubEvents.prototype, "receiveTasksHubEvent", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], HubEvents.prototype, "receiveMentionCountHubEvent", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], HubEvents.prototype, "initHubConnection", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], HubEvents.prototype, "subscribeForMentionsCountUpdate", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], HubEvents.prototype, "unsubscribeFromMentionsCountUpdate", null);
    HubEvents = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('HubEvents')
    ], HubEvents);
    return HubEvents;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var hubEventsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(HubEvents);


/***/ }),

/***/ "PLo1":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   c: () => (/* binding */ imagesDashboardModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("0Zyk");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("KG/6");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("LwCN");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */






var ImagesDashboard = /** @class */ (function (_super) {
    __extends(ImagesDashboard, _super);
    function ImagesDashboard() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            visualComparison: {
                visualTags: null,
                isLoading: false,
                error: null,
            },
            visualInsights: {
                data: null,
                isLoading: false,
                error: null,
            },
            visualInsightsInterconnections: {
                data: null,
                isLoading: false,
                error: null,
            },
            visualInsightsTrends: {
                data: null,
                isLoading: false,
                error: null,
            },
        };
        return _this;
    }
    ImagesDashboard.prototype.fetchViComparisonAuto = function (_a) {
        var filter, clean, requestParams, visualTags_1, error_1;
        var logos = _a.logos;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.visualComparison.isLoading = true;
                        state.visualComparison.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getQuery */ .$Z)];
                case 2:
                    clean = (_b.sent()).clean;
                    requestParams = {
                        visualTagsCount: 20,
                        comparedLogos: logos.map(function (l) { return ({
                            label: l.name,
                            themeId: l.themeId,
                        }); }),
                    };
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchViComparisonAutoSuggestion, { request: requestParams, filter: filter, clean: clean })];
                case 3:
                    visualTags_1 = (_b.sent()).visualTags;
                    this.updateWithImmer(function (state) {
                        state.visualComparison.isLoading = false;
                        state.visualComparison.visualTags = visualTags_1;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualComparison.isLoading = false;
                        state.visualComparison.error = error_1;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    ImagesDashboard.prototype.fetchViComparison = function (_a) {
        var filter, clean, requestParams, visualTags_2, error_2;
        var logos = _a.logos, viTags = _a.viTags;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.visualComparison.isLoading = true;
                        state.visualComparison.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getQuery */ .$Z)];
                case 2:
                    clean = (_b.sent()).clean;
                    requestParams = __assign({ comparedLogos: logos.map(function (l) { return ({
                            label: l.name,
                            themeId: l.themeId,
                        }); }) }, (0,_utils__WEBPACK_IMPORTED_MODULE_5__/* .getViComparisonRequestViTags */ .Y)(viTags));
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchViComparison, { request: requestParams, filter: filter, clean: clean })];
                case 3:
                    visualTags_2 = (_b.sent()).visualTags;
                    this.updateWithImmer(function (state) {
                        state.visualComparison.isLoading = false;
                        state.visualComparison.visualTags = visualTags_2;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualComparison.isLoading = false;
                        state.visualComparison.error = error_2;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    ImagesDashboard.prototype.fetchVisualInsights = function (_a) {
        var filter, response_1, error_3;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.visualInsights.isLoading = true;
                        state.visualInsights.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchVisualInsights, {
                            themeId: themeId,
                            filter: filter,
                            activitiesCount: 20,
                            objectsCount: 50,
                            peopleCount: 20,
                            scenesCount: 20,
                            brandsCount: 10,
                        })];
                case 2:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualInsights.isLoading = false;
                        state.visualInsights.data = response_1;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualInsights.isLoading = false;
                        state.visualInsights.error = error_3;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    ImagesDashboard.prototype.fetchVisualInsightsInterconnections = function (_a) {
        var filter, response_2, error_4;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.visualInsightsInterconnections.isLoading = true;
                        state.visualInsightsInterconnections.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchVisualInsightsInterconnections, {
                            themeId: themeId,
                            filter: filter,
                            topLevelCount: 8,
                            descendantsCount: 10,
                        })];
                case 2:
                    response_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualInsightsInterconnections.isLoading = false;
                        state.visualInsightsInterconnections.data = response_2;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualInsightsInterconnections.isLoading = false;
                        state.visualInsightsInterconnections.error = error_4;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    ImagesDashboard.prototype.fetchVisualInsightsTrends = function (_a) {
        var filter, response_3, error_5;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.visualInsightsTrends.isLoading = true;
                        state.visualInsightsTrends.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.stats.fetchVisualInsightsTrends, { themeId: themeId, filter: filter })];
                case 2:
                    response_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualInsightsTrends.isLoading = false;
                        state.visualInsightsTrends.data = response_3;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.visualInsightsTrends.isLoading = false;
                        state.visualInsightsTrends.error = error_5;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ImagesDashboard.prototype, "fetchViComparisonAuto", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ImagesDashboard.prototype, "fetchViComparison", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ImagesDashboard.prototype, "fetchVisualInsights", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ImagesDashboard.prototype, "fetchVisualInsightsInterconnections", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], ImagesDashboard.prototype, "fetchVisualInsightsTrends", null);
    ImagesDashboard = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('ImagesDashboard')
    ], ImagesDashboard);
    return ImagesDashboard;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var imagesDashboardModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(ImagesDashboard);


/***/ }),

/***/ "FnmF":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   B0: () => (/* binding */ getViComparisonSuggestionLoading),
/* harmony export */   Ct: () => (/* binding */ getManuallySelectedVisualTags),
/* harmony export */   U6: () => (/* binding */ getIsVisualInsightsLoading),
/* harmony export */   jW: () => (/* binding */ getIsVisualInsightsInterconnectionsLoading),
/* harmony export */   kU: () => (/* binding */ getCompareLogosWith),
/* harmony export */   km: () => (/* binding */ getVisualInsightsTrends),
/* harmony export */   lt: () => (/* binding */ getViComparisonSuggestion),
/* harmony export */   u1: () => (/* binding */ getVisualInsights),
/* harmony export */   xy: () => (/* binding */ getVisualInsightsInterconnections),
/* harmony export */   z6: () => (/* binding */ getCompareVisualInsights)
/* harmony export */ });
/* unused harmony exports getCompareLogoIds, getVisualInsightsStatistics, getVisualInsightsInterconnectionStatistics, getVisualInsightsTrendsStatistics */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("XFM9");
/* harmony import */ var models_NetworkGraph__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ckFD");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KG/6");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("Qyqr");
/* harmony import */ var utils_constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("L02r");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("LwCN");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var getCompareLogoIds = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return ((query === null || query === void 0 ? void 0 : query.logos) ? query === null || query === void 0 ? void 0 : query.logos : []); });
var getCompareLogosWith = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getCompareLogoIds, state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getThemesWithoutStats */ .aj, function (logoIds, themes) {
    // TODO: Checked. Used by native JS code
    return ((0,lodash__WEBPACK_IMPORTED_MODULE_4__.isEmpty)(themes)
        ? []
        : logoIds.map(function (logoId) {
            var logoData = logoId.split('_in_');
            var theme = themes.find(function (t) { return t.id === Number(logoData[1]); });
            return {
                id: logoId,
                name: logoData[0],
                themeName: theme.name,
                themeId: theme.id,
            };
        })
            .slice(0, 10));
});
var getManuallySelectedVisualTags = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return query === null || query === void 0 ? void 0 : query.manuallySelectedTags; });
var getCompareVisualInsights = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) {
    return Object.keys(query)
        .map(function (key) { return (key.includes('compareVI') ? key : null); })
        .filter(Boolean)
        .reduce(function (visualInsightFeatures, key) {
        return visualInsightFeatures.concat(query[key].map(function (name) { return ({
            name: name,
            type: key.replace('compareVI_', ''),
        }); }));
    }, [])
        .flat();
});
var getViComparisonSuggestion = function (state) {
    return state.imagesDashboard.visualComparison.visualTags;
};
var getViComparisonSuggestionLoading = function (state) {
    return state.imagesDashboard.visualComparison.isLoading;
};
var getIsVisualInsightsLoading = function (state) { return state.imagesDashboard.visualInsights.isLoading; };
var getVisualInsightsStatistics = function (state) { var _a; return (_a = state.imagesDashboard.visualInsights.data) === null || _a === void 0 ? void 0 : _a.aggregations; };
var getIsVisualInsightsInterconnectionsLoading = function (state) {
    return state.imagesDashboard.visualInsightsInterconnections.isLoading;
};
var getVisualInsightsInterconnectionStatistics = function (state) { var _a; return (_a = state.imagesDashboard.visualInsightsInterconnections.data) === null || _a === void 0 ? void 0 : _a.aggregations; };
var getVisualInsightsTrendsStatistics = function (state) { return state.imagesDashboard.visualInsightsTrends.data; };
var getVisualInsightsTrends = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getVisualInsightsTrendsStatistics, function (trends) {
    if (!trends)
        return null;
    var dateRanges = {
        currentDateRange: trends.currentDateRange,
        previousDateRange: trends.previousDateRange,
    };
    var topTrends = utils_constants__WEBPACK_IMPORTED_MODULE_3__/* .VISUAL_INSIGHTS_FEATURES */ .l3.reduce(function (acc, key) {
        var trendsByType = trends[key];
        if (trendsByType === null || trendsByType === void 0 ? void 0 : trendsByType.length) {
            acc[(0,_utils__WEBPACK_IMPORTED_MODULE_6__/* .formatVisualInsightsTagTypes */ .U)(key)] = trendsByType.filter(function (trend) { return trend.previousCount; });
        }
        return acc;
    }, {});
    return { dateRanges: dateRanges, data: topTrends };
});
var getVisualInsights = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getVisualInsightsStatistics, function (stats) {
    return utils_constants__WEBPACK_IMPORTED_MODULE_3__/* .VISUAL_INSIGHTS_FEATURES */ .l3.reduce(function (acc, imageTagType) {
        if (stats && stats[imageTagType]) {
            acc[imageTagType] = stats[imageTagType].values
                .map(function (data) { return (__assign(__assign({}, data), { type: (0,_utils__WEBPACK_IMPORTED_MODULE_6__/* .formatVisualInsightsTagTypes */ .U)(imageTagType), name: data.key })); });
        }
        return acc;
    }, {});
});
var getVisualInsightsInterconnections = (0,reselect__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .Mz)(getVisualInsightsInterconnectionStatistics, function (stats) {
    if (!stats)
        return null;
    return new models_NetworkGraph__WEBPACK_IMPORTED_MODULE_0__/* .VisualInsightsGraph */ .q0(stats);
});


/***/ }),

/***/ "LwCN":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   U: () => (/* binding */ formatVisualInsightsTagTypes),
/* harmony export */   Y: () => (/* binding */ getViComparisonRequestViTags)
/* harmony export */ });
function getViComparisonRequestViTags(viTags) {
    var mapper = {
        imageObject: 'comparedObjects',
        imageActivities: 'comparedActivities',
        imagePeople: 'comparedPeople',
        imageScene: 'comparedScenes',
    };
    return viTags.reduce(function (acc, viTag) {
        var key = mapper[viTag.type];
        if (!acc[key]) {
            acc[key] = [];
        }
        acc[key].push(viTag.name);
        return acc;
    }, {});
}
function formatVisualInsightsTagTypes(viTagName) {
    return {
        imagePeople: 'imagePeople',
        imageObjects: 'imageObject',
        imageScenes: 'imageScene',
        imageActivities: 'imageActivities',
        imageBrands: 'imageBrand',
    }[viTagName] || viTagName;
}


/***/ }),

/***/ "HH70":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   e: () => (/* binding */ insightsCopilotStateModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var models_insightsCopilot_History__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("vQyv");
/* harmony import */ var state_currentUser_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("cGQa");
/* harmony import */ var state_routing_actions__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("8W5t");
/* harmony import */ var state_insightsCopilot_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("laSw");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};







var InsightsCopilot = /** @class */ (function (_super) {
    __extends(InsightsCopilot, _super);
    function InsightsCopilot() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            history: { data: null, loading: false },
            question: { data: null, loading: false },
            usage: { data: { used: 0, limit: 0 }, loading: false },
            stats: { data: {}, loading: false },
            savedPointData: {
                text: '',
                id: '',
            },
        };
        return _this;
    }
    InsightsCopilot.prototype.fetchInsightsCopilotStats = function (_a) {
        var count_1, error_1;
        var id = _a.id, topicId = _a.topicId, filter = _a.filter;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.stats.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.count, { filter: filter, themeId: topicId })];
                case 1:
                    count_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        var _a;
                        state.stats = { data: __assign(__assign({}, state.stats.data), (_a = {}, _a[id] = count_1, _a)), loading: false };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    console.error(error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.fetchInsightsCopilotUsage = function () {
        var usage_1, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.usage.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.getInsightsCopilotUsage)];
                case 1:
                    usage_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.usage.data = __assign({}, usage_1);
                        state.usage.loading = false;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _a.sent();
                    console.error(error_2);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    // eslint-disable-next-line require-yield
    InsightsCopilot.prototype.clearInsightsCopilotHistory = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.history = { data: null, loading: true };
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    InsightsCopilot.prototype.fetchInsightsCopilotHistory = function (_a) {
        var history_1, error_3;
        var topicId = _a.topicId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.insightsCopilot.fetchHistory, { topicId: topicId })];
                case 1:
                    history_1 = (_b.sent()).history;
                    this.updateWithImmer(function (state) {
                        state.history = { data: history_1, loading: false };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.requestInsightsCopilotHistory = function (_a) {
        var error_4;
        var topicId = _a.topicId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.history = { data: null, loading: true };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchInsightsCopilotHistory.bind(this), { topicId: topicId })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _b.sent();
                    console.error(error_4);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    // eslint-disable-next-line require-yield
    InsightsCopilot.prototype.clearInsightsCopilotQuestion = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.question = { data: null, loading: false };
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    InsightsCopilot.prototype.updateInsightsCopilotSettings = function (settings) {
        var error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(state_currentUser_model__WEBPACK_IMPORTED_MODULE_4__/* .currentUserStateModel */ .b.updateUiSettings.bind(state_currentUser_model__WEBPACK_IMPORTED_MODULE_4__/* .currentUserStateModel */ .b), { insightsCopilot: settings })];
                case 1:
                    _a.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_5 = _a.sent();
                    console.error(error_5);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.sendInsightsCopilotQuestion = function (_a) {
        var history_2, q_1, error_6;
        var request = _a.request, filter = _a.filter, topicId = _a.topicId, threadId = _a.threadId, enhanceQuery = _a.enhanceQuery, isAboutTrend = _a.isAboutTrend, isAboutAspect = _a.isAboutAspect, isAboutSubject = _a.isAboutSubject, predefinedQuestionId = _a.predefinedQuestionId, language = _a.language;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    this.updateWithImmer(function (state) {
                        state.question = {
                            data: {
                                threadId: threadId,
                                request: request,
                                filter: filter,
                                id: null,
                                response: [],
                            },
                            loading: true,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_insightsCopilot_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getUsedInsightsCopilotHistory */ .t9)];
                case 1:
                    history_2 = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.insightsCopilot.askQuestion, { topicId: topicId, threadId: threadId, request: request, filter: filter, enhanceQuery: enhanceQuery, isAboutTrend: isAboutTrend, isAboutAspect: isAboutAspect, isAboutSubject: isAboutSubject, predefinedQuestionId: predefinedQuestionId, language: language })];
                case 2:
                    q_1 = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchInsightsCopilotHistory.bind(this), { topicId: topicId })];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.question = {
                            data: {
                                threadId: threadId || q_1.threadId,
                                request: request,
                                filter: filter,
                                id: q_1.callId,
                                response: [],
                            },
                            loading: false,
                        };
                    });
                    if (!(!history_2.isEmpty && history_2.has(q_1.threadId))) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(state_routing_actions__WEBPACK_IMPORTED_MODULE_5__/* .update */ .yo, {
                            query: {
                                mode: models_insightsCopilot_History__WEBPACK_IMPORTED_MODULE_3__/* .HISTORY_MODE */ .Z5.DETAILED,
                                threadId: threadId || q_1.threadId,
                            },
                        })];
                case 4:
                    _b.sent();
                    _b.label = 5;
                case 5: return [3 /*break*/, 7];
                case 6:
                    error_6 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.question = {
                            data: {
                                id: null,
                                request: request,
                                filter: filter,
                                response: [{ action: 'display_text', call_arguments: { text: 'An error has occurred. Please try again later.' } }],
                            },
                            loading: false,
                        };
                    });
                    console.error(error_6);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.cancelInsightsCopilotQuestion = function (_a) {
        var error_7;
        var topicId = _a.topicId, questionId = _a.questionId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.insightsCopilot.cancel, { topicId: topicId, questionId: questionId })];
                case 1:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.question = {
                            data: null,
                            loading: false,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchInsightsCopilotHistory.bind(this), { topicId: topicId })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_7 = _b.sent();
                    console.error(error_7);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.hideInsightsCopilotAnswer = function (_a) {
        var error_8;
        var topicId = _a.topicId, questionId = _a.questionId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.insightsCopilot.hideAnswer, { topicId: topicId, questionId: questionId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchInsightsCopilotHistory.bind(this), { topicId: topicId })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_8 = _b.sent();
                    console.error(error_8);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.hideInsightsCopilotThread = function (_a) {
        var history_3, hideRequests_1, thread, error_9;
        var _this = this;
        var topicId = _a.topicId, threadId = _a.threadId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_insightsCopilot_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getUsedInsightsCopilotHistory */ .t9)];
                case 1:
                    history_3 = _b.sent();
                    hideRequests_1 = [];
                    thread = history_3.threads.find(function (t) { return t.threadId === threadId; });
                    thread.questions.forEach(function (question) {
                        hideRequests_1.push(_this.hideInsightsCopilotAnswer({ topicId: topicId, questionId: question.id }));
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(hideRequests_1)];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchInsightsCopilotHistory.bind(this), { topicId: topicId })];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_9 = _b.sent();
                    console.error(error_9);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.sendFeedback = function (_a) {
        var error_10;
        var id = _a.id, topicId = _a.topicId, type = _a.type;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.insightsCopilot.sendFeedback, { id: id, topicId: topicId, type: type })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchInsightsCopilotHistory.bind(this), { topicId: topicId })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_10 = _b.sent();
                    console.error(error_10);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    InsightsCopilot.prototype.sendMentionFeedback = function (_a) {
        var pointData, error_11;
        var mentionId = _a.mentionId, topicId = _a.topicId, isCorrect = _a.isCorrect;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_insightsCopilot_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getSavedPointData */ .SS)];
                case 1:
                    pointData = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.insightsCopilot.sendMentionFeedback, { mentionId: mentionId, topicId: topicId, isCorrect: isCorrect, pointText: pointData.text, questionId: pointData.id })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_11 = _b.sent();
                    console.error(error_11);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    // eslint-disable-next-line require-yield
    InsightsCopilot.prototype.savePointData = function (_a) {
        var text = _a.text, questionId = _a.questionId;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.savedPointData.text = text;
                state.savedPointData.id = questionId;
            });
            return [2 /*return*/];
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "fetchInsightsCopilotStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "fetchInsightsCopilotUsage", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "clearInsightsCopilotHistory", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "fetchInsightsCopilotHistory", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "requestInsightsCopilotHistory", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "clearInsightsCopilotQuestion", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "updateInsightsCopilotSettings", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "sendInsightsCopilotQuestion", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "cancelInsightsCopilotQuestion", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "hideInsightsCopilotAnswer", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "hideInsightsCopilotThread", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "sendFeedback", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "sendMentionFeedback", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], InsightsCopilot.prototype, "savePointData", null);
    InsightsCopilot = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('InsightsCopilot')
    ], InsightsCopilot);
    return InsightsCopilot;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var insightsCopilotStateModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(InsightsCopilot);


/***/ }),

/***/ "laSw":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $3: () => (/* binding */ getInsightsCopilotUsage),
/* harmony export */   AW: () => (/* binding */ getInsightsCopilotStatsForAction),
/* harmony export */   SS: () => (/* binding */ getSavedPointData),
/* harmony export */   dx: () => (/* binding */ getInsightsCopilotSettings),
/* harmony export */   e6: () => (/* binding */ getSavedInsightsCopilotSettings),
/* harmony export */   hh: () => (/* binding */ isInsightsCopilotLimitReached),
/* harmony export */   o8: () => (/* binding */ getInsightsCopilotQuestion),
/* harmony export */   t9: () => (/* binding */ getUsedInsightsCopilotHistory)
/* harmony export */ });
/* unused harmony exports getInsightsCopilotHistory, getInsightsCopilotStats */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("XFM9");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("X9tB");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KG/6");
/* harmony import */ var models_insightsCopilot_History__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("vQyv");
/* harmony import */ var models_insightsCopilot_Settings__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("9I83");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};





var getInsightsCopilotHistory = function (state) { return state.insightsCopilot.history.data; };
var getInsightsCopilotUsage = function (state) { return state.insightsCopilot.usage.data; };
var getInsightsCopilotQuestion = function (state) { return state.insightsCopilot.question.data; };
var getInsightsCopilotStats = function (state) { return state.insightsCopilot.stats.data; };
var getSavedPointData = function (state) { return state.insightsCopilot.savedPointData; };
var getInsightsCopilotStatsForAction = (0,reselect__WEBPACK_IMPORTED_MODULE_4__/* .createSelector */ .Mz)(getInsightsCopilotStats, function (_, _a) {
    var id = _a.id;
    return id;
}, function (stats, id) { return stats[id]; });
var getSavedInsightsCopilotSettings = (0,reselect__WEBPACK_IMPORTED_MODULE_4__/* .createSelector */ .Mz)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getCurrentUserUiSettings */ .KC, function (uiSettings) {
    if (!uiSettings)
        return {};
    return uiSettings.insightsCopilot;
});
var getInsightsCopilotSettings = (0,reselect__WEBPACK_IMPORTED_MODULE_4__/* .createSelector */ .Mz)(getSavedInsightsCopilotSettings, getInsightsCopilotUsage, function (settings, usage) { return new models_insightsCopilot_Settings__WEBPACK_IMPORTED_MODULE_3__/* .Settings */ .w(__assign(__assign({}, settings), { usedQuestionsCount: Number(usage === null || usage === void 0 ? void 0 : usage.used) || 0, questionsLimit: Number(usage === null || usage === void 0 ? void 0 : usage.limit) || 0 })); });
var isInsightsCopilotLimitReached = (0,reselect__WEBPACK_IMPORTED_MODULE_4__/* .createSelector */ .Mz)(getInsightsCopilotUsage, function (usage) { return usage && (usage.limit - usage.used) === 0; });
var getUsedInsightsCopilotHistory = (0,reselect__WEBPACK_IMPORTED_MODULE_4__/* .createSelector */ .Mz)(getInsightsCopilotHistory, state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, getInsightsCopilotSettings, function (history, query, settings) {
    var copilotHistoryMode = query.copilotHistoryMode, threadId = query.threadId;
    return new models_insightsCopilot_History__WEBPACK_IMPORTED_MODULE_2__/* .History */ .BZ({
        mode: copilotHistoryMode,
        currentThreadId: threadId,
        threads: history || [],
    });
});


/***/ }),

/***/ "mBdu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   F: () => (/* binding */ integrationsModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_rules_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("BKff");
/* harmony import */ var state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("iY5o");
/* harmony import */ var state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("SbqI");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("Qyqr");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("9jXX");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("3o2z");
/* harmony import */ var state_themes_model__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("JJJ0");
/* eslint no-param-reassign: 0, func-names: 0, require-yield: 0, generator-star-spacing: 0 */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};










var ASYNC_INTEGRATION_CREATION_SELECTORS = {
    slack: state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isSlackIntegrationCreated */ .H7,
    telegram: state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isTelegramIntegrationCreated */ .yG,
    zendesk: state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isZendeskIntegrationCreated */ .d_,
    angrySpace: state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isAngrySpaceIntegrationCreated */ .Aq,
    hubspot: state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isHubspotIntegrationCreated */ .yD,
};
var IntegrationsModel = /** @class */ (function (_super) {
    __extends(IntegrationsModel, _super);
    function IntegrationsModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            idsByTopic: {},
            typesAvailability: {},
            telegramCode: {
                data: null,
                loading: false,
                error: null,
            },
            zendeskData: {
                data: null,
                loading: false,
                error: null,
            },
            lastSlackIntegrationId: {
                data: null,
                loading: false,
                error: null,
            },
            lastAngrySpaceIntegrationId: {
                data: null,
                loading: false,
                error: null,
            },
            lastHubspotIntegrationId: {
                data: null,
                loading: false,
                error: null,
            },
            test: {
                isTesting: false,
                isTestSucceeded: false,
                settings: null,
                result: null,
                error: null,
            },
            creation: {
                isCreating: false,
                isCreated: false,
                error: null,
            },
            deletion: {
                isDeleting: false,
                isDeleted: false,
                error: null,
            },
            mentionCountByMonth: {
                isFetching: false,
                count: null,
                error: null,
            },
        };
        return _this;
    }
    IntegrationsModel.prototype.fetchIntegrations = function (_a) {
        var response_1, error_1;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.integrations.list, { themeId: themeId })];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.idsByTopic[themeId] = response_1.result.integrations;
                        state.typesAvailability = response_1.result._links;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    console.error(error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.fetchTelegramCode = function () {
        var themeId, code_1, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.telegramCode.loading = true;
                        state.telegramCode.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.integrations.getTelegramCode, { themeId: themeId })];
                case 2:
                    code_1 = (_a.sent()).invitationCode;
                    this.updateWithImmer(function (state) {
                        state.telegramCode.data = code_1;
                        state.telegramCode.loading = false;
                        state.telegramCode.error = null;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.telegramCode.loading = false;
                        state.telegramCode.error = error_2;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.fetchZendeskLink = function (_a) {
        var themeId, redirectUrl_1, error_3;
        var subdomain = _a.subdomain;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.zendeskData.loading = true;
                        state.zendeskData.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.integrations.getZendeskLink, { themeId: themeId, subdomain: subdomain })];
                case 2:
                    redirectUrl_1 = (_b.sent()).redirectUrl;
                    this.updateWithImmer(function (state) {
                        state.zendeskData.data = { redirectUrl: redirectUrl_1, subdomain: subdomain };
                        state.zendeskData.loading = false;
                        state.zendeskData.error = null;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.zendeskData.loading = false;
                        state.zendeskData.error = error_3;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.resetZendeskIntegration = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.zendeskData.data = null;
                state.zendeskData.loading = false;
                state.zendeskData.error = null;
            });
            return [2 /*return*/];
        });
    };
    IntegrationsModel.prototype.initSlackIntegration = function () {
        var id_1, error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.lastSlackIntegrationId.loading = true;
                        state.lastSlackIntegrationId.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getLastSlackIntegrationId */ .g9)];
                case 1:
                    id_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.lastSlackIntegrationId.data = id_1;
                        state.lastSlackIntegrationId.loading = false;
                        state.lastSlackIntegrationId.error = null;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.lastSlackIntegrationId.loading = false;
                        state.lastSlackIntegrationId.error = error_4;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.initSlackIntegrationReset = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.lastSlackIntegrationId.data = null;
                state.lastSlackIntegrationId.loading = false;
                state.lastSlackIntegrationId.error = null;
            });
            return [2 /*return*/];
        });
    };
    IntegrationsModel.prototype.initAngrySpaceIntegration = function () {
        var id_2, error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.lastAngrySpaceIntegrationId.loading = true;
                        state.lastAngrySpaceIntegrationId.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getLastAngrySpaceIntegrationId */ .nh)];
                case 1:
                    id_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.lastAngrySpaceIntegrationId.data = id_2;
                        state.lastAngrySpaceIntegrationId.loading = false;
                        state.lastAngrySpaceIntegrationId.error = null;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_5 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.lastAngrySpaceIntegrationId.loading = false;
                        state.lastAngrySpaceIntegrationId.error = error_5;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.initAngrySpaceIntegrationReset = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.lastAngrySpaceIntegrationId.data = null;
                state.lastAngrySpaceIntegrationId.loading = false;
                state.lastAngrySpaceIntegrationId.error = null;
            });
            return [2 /*return*/];
        });
    };
    IntegrationsModel.prototype.initHubspotIntegration = function () {
        var id_3, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.lastHubspotIntegrationId.loading = true;
                        state.lastHubspotIntegrationId.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_integrations_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getLastHubspotIntegrationId */ .zf)];
                case 1:
                    id_3 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.lastHubspotIntegrationId.data = id_3;
                        state.lastHubspotIntegrationId.loading = false;
                        state.lastHubspotIntegrationId.error = null;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_6 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.lastHubspotIntegrationId.loading = false;
                        state.lastHubspotIntegrationId.error = error_6;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.testIntegration = function (_a) {
        var themeId, testResult_1, error_7;
        var integrationType = _a.integrationType, settings = _a.settings;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 8, , 10]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('TEST_INTEGRATION')({ integrationType: integrationType, settings: settings }))];
                case 1:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.test.isTesting = true;
                        state.test.isTestSucceeded = false;
                        state.test.result = null;
                        state.test.error = null;
                        state.test.settings = settings;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 2:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.integrations.test, { themeId: themeId, settings: settings, type: integrationType })];
                case 3:
                    testResult_1 = _b.sent();
                    if (!testResult_1.success) return [3 /*break*/, 5];
                    this.updateWithImmer(function (state) {
                        state.test.isTesting = false;
                        state.test.isTestSucceeded = true;
                        state.test.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('TEST_INTEGRATION_SUCCESS')(__assign({ themeId: themeId }, testResult_1)))];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 7];
                case 5:
                    this.updateWithImmer(function (state) {
                        state.test.isTesting = false;
                        state.test.isTestSucceeded = false;
                        state.test.error = testResult_1.response;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('TEST_INTEGRATION_FAILURE')(__assign({ themeId: themeId }, testResult_1)))];
                case 6:
                    _b.sent();
                    _b.label = 7;
                case 7: return [3 /*break*/, 10];
                case 8:
                    error_7 = _b.sent();
                    this.updateWithImmer(function (state) {
                        var _a;
                        state.test.isTesting = false;
                        state.test.isTestSucceeded = false;
                        state.test.error = ((_a = error_7.response) === null || _a === void 0 ? void 0 : _a.data) || error_7.message;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('TEST_INTEGRATION_FAILURE')({ error: error_7 }))];
                case 9:
                    _b.sent();
                    return [3 /*break*/, 10];
                case 10: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.createIntegrationAsync = function (_a) {
        var integrationCreated, _b, _c, _d, error_8;
        var integrationType = _a.integrationType;
        return __generator(this, function (_e) {
            switch (_e.label) {
                case 0:
                    _e.trys.push([0, 9, , 10]);
                    this.updateWithImmer(function (state) {
                        state.creation.isCreating = true;
                        state.creation.error = null;
                    });
                    _e.label = 1;
                case 1:
                    if (false) {}
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(ASYNC_INTEGRATION_CREATION_SELECTORS[integrationType])];
                case 2:
                    integrationCreated = _e.sent();
                    if (!integrationCreated) return [3 /*break*/, 3];
                    this.updateWithImmer(function (state) {
                        state.creation.isCreating = false;
                        state.creation.isCreated = true;
                        state.creation.error = null;
                    });
                    return [3 /*break*/, 8];
                case 3: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .delay */ .cb)(1000)];
                case 4:
                    _e.sent();
                    _b = redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy;
                    _c = [this.fetchIntegrations.bind(this)];
                    _d = {};
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 5: return [4 /*yield*/, _b.apply(void 0, _c.concat([(_d.themeId = _e.sent(), _d)]))];
                case 6:
                    _e.sent();
                    _e.label = 7;
                case 7: return [3 /*break*/, 1];
                case 8: return [3 /*break*/, 10];
                case 9:
                    error_8 = _e.sent();
                    this.updateWithImmer(function (state) {
                        state.creation.isCreating = false;
                        state.creation.isCreated = false;
                        state.creation.error = error_8;
                    });
                    return [3 /*break*/, 10];
                case 10: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.resetCreateIntegrationData = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.test.isTesting = false;
                state.test.isTestSucceeded = false;
                state.test.error = null;
                state.creation.isCreating = false;
                state.creation.isCreated = false;
                state.creation.error = null;
            });
            return [2 /*return*/];
        });
    };
    IntegrationsModel.prototype.createIntegration = function (_a) {
        var asyncIntegrations, themeId, error_9;
        var integrationType = _a.integrationType, settings = _a.settings;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 7, , 8]);
                    this.updateWithImmer(function (state) {
                        state.creation.isCreating = true;
                        state.creation.error = null;
                    });
                    asyncIntegrations = Object.keys(ASYNC_INTEGRATION_CREATION_SELECTORS);
                    if (!asyncIntegrations.includes(integrationType)) return [3 /*break*/, 2];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.createIntegrationAsync.bind(this), { integrationType: integrationType })];
                case 1:
                    _b.sent();
                    return [2 /*return*/];
                case 2: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 3:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.integrations.add, { themeId: themeId, settings: settings, type: integrationType })];
                case 4:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.creation.isCreating = false;
                        state.creation.isCreated = true;
                        state.creation.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.fetchIntegrations.bind(this), { themeId: themeId })];
                case 5:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_themes_model__WEBPACK_IMPORTED_MODULE_9__/* .themesModel */ .i.action.fetchThemeData({ themeId: themeId }))];
                case 6:
                    _b.sent();
                    return [3 /*break*/, 8];
                case 7:
                    error_9 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.creation.isCreating = false;
                        state.creation.isCreated = false;
                        state.creation.error = error_9;
                    });
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.fetchMentionCountByMonth = function () {
        var filter, themeId, response_2, error_10;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.mentionCountByMonth.isFetching = true;
                        state.mentionCountByMonth.error = null;
                    });
                    filter = {
                        from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_7__/* .getDayMonthAgo */ .y8)(),
                        to: new Date(),
                    };
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchDynamics, { themeId: themeId, filter: filter })];
                case 2:
                    response_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.mentionCountByMonth.isFetching = false;
                        state.mentionCountByMonth.count = response_2.totalCount;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_10 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.mentionCountByMonth.isFetching = false;
                        state.mentionCountByMonth.error = error_10;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.deleteIntegration = function (_a) {
        var themeId, error_11;
        var integrationId = _a.integrationId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    this.updateWithImmer(function (state) {
                        state.deletion.isDeleting = true;
                        state.deletion.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.integrations.delete, { themeId: themeId, integrationId: integrationId })];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_4__/* .updateUiIntegrations */ .hw)({
                            ids: [integrationId],
                            value: { deleting: true },
                        }))];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.deletion.isDeleting = false;
                        state.deletion.isDeleted = true;
                        state.deletion.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.fetchIntegrations.bind(this), { themeId: themeId })];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_themes_model__WEBPACK_IMPORTED_MODULE_9__/* .themesModel */ .i.action.fetchThemeData({ themeId: themeId }))];
                case 5:
                    _b.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_11 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.deletion.isDeleting = false;
                        state.deletion.isDeleted = false;
                        state.deletion.error = error_11.response;
                    });
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    IntegrationsModel.prototype.resetDeleteIntegrationData = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.deletion.isDeleting = false;
                state.deletion.isDeleted = false;
                state.deletion.error = null;
            });
            return [2 /*return*/];
        });
    };
    IntegrationsModel.prototype.clearIntegrationState = function () {
        var error_12;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 7, , 8]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.resetCreateIntegrationData.bind(this))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.resetDeleteIntegrationData.bind(this))];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.initSlackIntegrationReset.bind(this))];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.initAngrySpaceIntegrationReset.bind(this))];
                case 4:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.resetZendeskIntegration.bind(this))];
                case 5:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(state_rules_model__WEBPACK_IMPORTED_MODULE_3__/* .rulesModel */ .h.resetCreateRuleData.bind(state_rules_model__WEBPACK_IMPORTED_MODULE_3__/* .rulesModel */ .h))];
                case 6:
                    _a.sent();
                    return [3 /*break*/, 8];
                case 7:
                    error_12 = _a.sent();
                    console.error(error_12);
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "fetchIntegrations", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "fetchTelegramCode", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "fetchZendeskLink", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "resetZendeskIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "initSlackIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "initSlackIntegrationReset", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "initAngrySpaceIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "initAngrySpaceIntegrationReset", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "initHubspotIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "testIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "createIntegrationAsync", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "resetCreateIntegrationData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "createIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "fetchMentionCountByMonth", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "deleteIntegration", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "resetDeleteIntegrationData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], IntegrationsModel.prototype, "clearIntegrationState", null);
    IntegrationsModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Integrations')
    ], IntegrationsModel);
    return IntegrationsModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var integrationsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(IntegrationsModel);


/***/ }),

/***/ "SbqI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $B: () => (/* binding */ getZendeskIntegrationLink),
/* harmony export */   $I: () => (/* binding */ getMentionCountByMonth),
/* harmony export */   Aq: () => (/* binding */ isAngrySpaceIntegrationCreated),
/* harmony export */   E2: () => (/* binding */ getCreateIntegrationTestSettings),
/* harmony export */   Et: () => (/* binding */ getHubspotInvitationLink),
/* harmony export */   F$: () => (/* binding */ isIntegrationTesting),
/* harmony export */   H7: () => (/* binding */ isSlackIntegrationCreated),
/* harmony export */   HC: () => (/* binding */ isIntegrationCreated),
/* harmony export */   Lz: () => (/* binding */ isIntegrationTypeUnavailable),
/* harmony export */   Ob: () => (/* binding */ isIntegrationTestSucceeded),
/* harmony export */   Yl: () => (/* binding */ getIntegrations),
/* harmony export */   bC: () => (/* binding */ getCreateIntegrationTestError),
/* harmony export */   br: () => (/* binding */ getTelegramCode),
/* harmony export */   cE: () => (/* binding */ isIntegrationDeleted),
/* harmony export */   d_: () => (/* binding */ isZendeskIntegrationCreated),
/* harmony export */   g9: () => (/* binding */ getLastSlackIntegrationId),
/* harmony export */   i: () => (/* binding */ isIntegrationTypeAvailable),
/* harmony export */   kc: () => (/* binding */ getSlackInvitationLink),
/* harmony export */   l8: () => (/* binding */ getAngrySpaceInvitationLink),
/* harmony export */   li: () => (/* binding */ isIntegrationTypeHidden),
/* harmony export */   nh: () => (/* binding */ getLastAngrySpaceIntegrationId),
/* harmony export */   rs: () => (/* binding */ getIntegrationById),
/* harmony export */   s1: () => (/* binding */ getDeleteIntegrationError),
/* harmony export */   tV: () => (/* binding */ getCreateIntegrationError),
/* harmony export */   ts: () => (/* binding */ isIntegrationDeleting),
/* harmony export */   vw: () => (/* binding */ isIntegrationsLoaded),
/* harmony export */   xW: () => (/* binding */ isTelegramCodeLoading),
/* harmony export */   yD: () => (/* binding */ isHubspotIntegrationCreated),
/* harmony export */   yG: () => (/* binding */ isTelegramIntegrationCreated),
/* harmony export */   zf: () => (/* binding */ getLastHubspotIntegrationId)
/* harmony export */ });
/* unused harmony exports getIntegrationIdsByTheme, getIntegrationsLinks, getZendeskIntegrationData, getLastZendeskIntegrationSubdomain, getCreatedZendeskIntegration, getCreatedTelegramIntegration, getCreatedSlackIntegration, getCreatedAngrySpaceIntegration, getCreatedHubspotIntegration */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Qyqr");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};



var getIntegrationIdsByTheme = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getCurrentThemeId */ .Md, function (state) { return state.integrations.idsByTopic; }, function (themeId, integrations) { return integrations[themeId] || []; });
var isIntegrationsLoaded = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getCurrentThemeId */ .Md, function (state) { return state.integrations.idsByTopic; }, function (themeId, integrations) { return Boolean(integrations[themeId]); });
var getIntegrations = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getIntegrationEntities */ .cp, getIntegrationIdsByTheme, function (entities, ids) { return ids.map(function (id) { return entities[id]; }); });
var getIntegrationById = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getIntegrationEntities */ .cp, function (_state, id) { return id; }, function (entities, id) { return entities[id]; });
var getIntegrationsLinks = function (state) { return state.integrations.typesAvailability; };
var isIntegrationTypeAvailable = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrationsLinks, function (_state, type) { return type; }, function (links, type) { return links[type] && !links[type].denied; });
var isIntegrationTypeHidden = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrationsLinks, function (_state, type) { return type; }, function (links, type) { return !links[type] || (links[type] && links[type].denied && links[type].denyReason === 'INTEGRATION_TYPE_NOT_ALLOWED'); });
var isIntegrationTypeUnavailable = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrationsLinks, function (_state, type) { return type; }, function (links, type) { return links[type] && links[type].denied && links[type].denyReason === 'SUBSCRIPTION_FEATURE_UNAVAILABLE'; });
var isIntegrationDeleting = function (state) { return state.integrations.deletion.isDeleting; };
var isIntegrationDeleted = function (state) { return state.integrations.deletion.isDeleted; };
var getDeleteIntegrationError = function (state) { return state.integrations.deletion.error; };
var isIntegrationCreated = function (state) { return state.integrations.creation.isCreated; };
var getCreateIntegrationError = function (state) { return state.integrations.creation.error; };
var isIntegrationTesting = function (state) { return state.integrations.test.isTesting; };
var isIntegrationTestSucceeded = function (state) { return state.integrations.test.isTestSucceeded; };
var getCreateIntegrationTestError = function (state) { return state.integrations.test.error; };
var getCreateIntegrationTestSettings = function (state) { return state.integrations.test.settings; };
var getMentionCountByMonth = function (state) { return state.integrations.mentionCountByMonth.count; };
var isTelegramCodeLoading = function (state) { return state.integrations.telegramCode.loading; };
var getTelegramCode = function (state) { return state.integrations.telegramCode.data; };
var getZendeskIntegrationData = function (state) { return state.integrations.zendeskData.data; };
var getZendeskIntegrationLink = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getZendeskIntegrationData, function (zendeskData) { return zendeskData && zendeskData.redirectUrl; });
var getLastZendeskIntegrationSubdomain = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getZendeskIntegrationData, function (zendeskData) { return zendeskData && zendeskData.subdomain; });
var getCreatedZendeskIntegration = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getLastZendeskIntegrationSubdomain, getIntegrations, function (subdomain, integrations) { return subdomain && integrations.find(function (integration) { var _a; return ((_a = integration.settings) === null || _a === void 0 ? void 0 : _a.domain) === subdomain; }); });
var isZendeskIntegrationCreated = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCreatedZendeskIntegration, function (integration) { return !!integration; });
var getCreatedTelegramIntegration = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getTelegramCode, getIntegrations, function (code, integrations) { return integrations.find(function (integration) { var _a; return ((_a = integration.settings) === null || _a === void 0 ? void 0 : _a.invitationCode) === code; }); });
var isTelegramIntegrationCreated = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCreatedTelegramIntegration, function (integration) { return !!integration; });
var getSlackInvitationLink = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrationsLinks, function (links) { return links.slack.href; });
var getLastSlackIntegrationId = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrations, function (integrations) {
    return Math.max.apply(Math, __spreadArray([], __read(integrations
        .filter(function (integration) { return integration.type === 'slack'; })
        .map(function (integration) { return integration.id; })), false)) || 0;
});
var getCreatedSlackIntegration = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(function (state) { return state.integrations.lastSlackIntegrationId.data; }, getIntegrations, function (lastId, integrations) { return integrations.find(function (integration) {
    return integration.type === 'slack' && integration.id > lastId;
}); });
var isSlackIntegrationCreated = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCreatedSlackIntegration, function (integration) { return !!integration; });
var getAngrySpaceInvitationLink = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrationsLinks, function (links) { return links.angrySpace.href; });
var getLastAngrySpaceIntegrationId = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrations, function (integrations) {
    return Math.max.apply(Math, __spreadArray([], __read(integrations
        .filter(function (integration) { return integration.type === 'angrySpace'; })
        .map(function (integration) { return integration.id; })), false)) || 0;
});
var getCreatedAngrySpaceIntegration = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(function (state) { return state.integrations.lastAngrySpaceIntegrationId.data; }, getIntegrations, function (lastId, integrations) { return integrations.find(function (integration) {
    return integration.type === 'angrySpace' && integration.id > lastId;
}); });
var isAngrySpaceIntegrationCreated = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCreatedAngrySpaceIntegration, function (integration) { return !!integration; });
var getHubspotInvitationLink = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrationsLinks, function (links) { return links.hubspot.href; });
var getLastHubspotIntegrationId = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getIntegrations, function (integrations) {
    return Math.max.apply(Math, __spreadArray([], __read(integrations
        .filter(function (integration) { return integration.type === 'hubspot'; })
        .map(function (integration) { return integration.id; })), false)) || 0;
});
var getCreatedHubspotIntegration = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(function (state) { return state.integrations.lastHubspotIntegrationId.data; }, getIntegrations, function (lastId, integrations) { return integrations.find(function (integration) {
    return integration.type === 'hubspot' && integration.id > lastId;
}); });
var isHubspotIntegrationCreated = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getCreatedHubspotIntegration, function (integration) { return !!integration; });


/***/ }),

/***/ "iA1B":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  a: () => (/* binding */ mentionStreamCommandsModel)
});

// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/state/entities-new/ui/model.ts + 1 modules
var model = __webpack_require__("eTBD");
// EXTERNAL MODULE: ./src/state/mentionStream/selected/model.ts
var selected_model = __webpack_require__("gP3j");
// EXTERNAL MODULE: ./src/state/mentionStream/model.ts
var mentionStream_model = __webpack_require__("cpfI");
// EXTERNAL MODULE: ./src/models/filters/FilterOption.ts
var FilterOption = __webpack_require__("XA9s");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/mentionStream/selectors.ts
var mentionStream_selectors = __webpack_require__("wDA8");
// EXTERNAL MODULE: ./src/state/filter/selectors.ts
var filter_selectors = __webpack_require__("0Zyk");
// EXTERNAL MODULE: ./src/state/utils.ts
var utils = __webpack_require__("3o2z");
;// CONCATENATED MODULE: ./src/state/mentionStream/commands/utils.ts
var FILTER_CHECK_FNS = [
    { actionProp: 'sentiment', filterName: 'sentiment' },
    { actionProp: 'systemTags', filterName: 'systemTags' },
    { actionProp: 'subjects', filterName: 'subject' },
    { actionProp: 'aspects', filterName: 'aspect' },
    { actionProp: 'imageBrands', filterName: 'imageBrand' },
    { actionProp: 'imageActivities', filterName: 'imageActivities' },
    { actionProp: 'imageColors', filterName: 'imageColors' },
    { actionProp: 'imageObjects', filterName: 'imageObject' },
    { actionProp: 'imagePeople', filterName: 'imagePeople' },
    { actionProp: 'imageContentSensitivity', filterName: 'imageContentSensitivity' },
    { actionProp: 'imageScenes', filterName: 'imageScene' },
    { actionProp: 'imageType', filterName: 'imageType' },
    { actionProp: 'imageSubtype', filterName: 'imageSubtype' }
].map(function (_a) {
    var filterName = _a.filterName, actionProp = _a.actionProp;
    return function (_a) {
        var action = _a.action, filter = _a.filter;
        return action[actionProp] && (filter.findByName(filterName));
    };
});
function shouldRefreshStream(action, filter) {
    var _a;
    if (action.tags) {
        if (filter.findByName('tagged')) {
            return true;
        }
        if (filter.findByName('tag')) {
            return didTagsConflictWithFilter(action.tags, filter.findByName('tag'));
        }
        if (((_a = filter.findByName('tag')) === null || _a === void 0 ? void 0 : _a.op) === 'notOneOf') {
            return didTagsConflictWithFilter(action.tags, filter.findByName('tag'));
        }
    }
    if (filter.findByName('assigned') && action.assigneeId && filter.findByName('assigned')) {
        return true;
    }
    if (FILTER_CHECK_FNS.some(function (fn) { return fn({ action: action, filter: filter }); })) {
        return true;
    }
    return (action.deleting
        || action.deleted
        || action.restored
        || action.spam
        || matches(filter.processed, action.processed)
        || matches(filter.starred, action.starred)
        || matches(filter.spam, action.spam));
}
function didTagsConflictWithFilter(tags, tagFilter) {
    return tagFilter.value.some(function (tagId) { return !!tags[tagId]; });
}
function matches(filterValue, actionValue) {
    return filterValue !== undefined && actionValue !== undefined && filterValue !== actionValue;
}

;// CONCATENATED MODULE: ./src/state/mentionStream/commands/model.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */












var MentionStreamCommands = /** @class */ (function (_super) {
    __extends(MentionStreamCommands, _super);
    function MentionStreamCommands() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {};
        return _this;
    }
    MentionStreamCommands.prototype.refreshStreamWithSavedSelection = function () {
        var themeId, invisibleSelectedMentionIds, err_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getCurrentThemeId */.Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(mentionStream_model/* mentionStreamModel */.K.action.fetchMentions({ themeId: themeId }))];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* take */.s)(mentionStream_model/* mentionStreamModel */.K.action.fetchMentions.successAction)];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(mentionStream_selectors/* getInvisibleSelectedMentionIds */.jO)];
                case 4:
                    invisibleSelectedMentionIds = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(selected_model/* mentionStreamSelectedModel */.n.action.deselectMentions({ mentionIds: invisibleSelectedMentionIds }))];
                case 5:
                    _a.sent();
                    return [3 /*break*/, 7];
                case 6:
                    err_1 = _a.sent();
                    console.error(err_1);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.starMentions = function (params) {
        var error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.star, uiMentionState: { starred: true } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('STAR_MENTIONS')(params))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_1 = _a.sent();
                    console.log(error_1);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.unstarMentions = function (params) {
        var error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.unstar, uiMentionState: { starred: false } }))];
                case 1:
                    _a.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _a.sent();
                    console.log(error_2);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.addNoteMentions = function (_a) {
        var themeId, err_2;
        var mentionIds = _a.mentionIds, note = _a.note;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getCurrentThemeId */.Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* uiEntitiesModel */.P.action.updateUiMentions({
                            ids: mentionIds,
                            value: { note: note },
                        }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.mentions.addNote, { note: note, themeId: themeId, mentionIds: mentionIds })];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('ADD_NOTE_MENTIONS')({ mentionIds: mentionIds, note: note }))];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    err_2 = _b.sent();
                    console.error(err_2);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.markAsSpamMentions = function (params) {
        var error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.markAsSpam, uiMentionState: { spam: true } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('MARK_AS_SPAM_MENTIONS')(params))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _a.sent();
                    console.log(error_3);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.markAsHamMentions = function (params) {
        var error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.markAsHam, uiMentionState: { spam: false } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('MARK_AS_HAM_MENTIONS')(params))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_4 = _a.sent();
                    console.log(error_4);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.markProcessedMentions = function (params) {
        var error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.markProcessed, uiMentionState: { processed: true } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('MARK_PROCESSED_MENTIONS')(params))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_5 = _a.sent();
                    console.log(error_5);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.markUnprocessedMentions = function (params) {
        var error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.markUnprocessed, uiMentionState: { processed: false } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('MARK_UNPROCESSED_MENTIONS')(params))];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_6 = _a.sent();
                    console.log(error_6);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.deleteMentions = function (params) {
        var error_7;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.delete, uiMentionState: { deleting: true } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* uiEntitiesModel */.P.action.updateUiMentions({
                            ids: params.mentionIds,
                            value: { deleted: true },
                        }))];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('DELETE_MENTIONS')(params))];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_7 = _a.sent();
                    console.log(error_7);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.restoreMentions = function (params) {
        var error_8;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.restore, uiMentionState: { deleted: false, restored: true } }))];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* uiEntitiesModel */.P.action.updateUiMentions({
                            ids: params.mentionIds,
                            value: { deleted: false, restored: true, deleting: false },
                        }))];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('RESTORE_MENTIONS')(params))];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_8 = _a.sent();
                    console.log(error_8);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.setSentimentMentions = function (_a) {
        var error_9;
        var sentiment = _a.sentiment, params = __rest(_a, ["sentiment"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    // @ts-ignore
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.setSentiment, uiMentionState: { sentiment: sentiment, manualSentiment: sentiment }, data: { sentiment: sentiment } }))];
                case 1:
                    // @ts-ignore
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('SET_SENTIMENT_MENTIONS')(params))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_9 = _b.sent();
                    console.log(error_9);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.setTagsMentions = function (_a) {
        var error_10;
        var tags = _a.tags, params = __rest(_a, ["tags"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    // @ts-ignore
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.setTags, uiMentionState: { tags: tags }, data: { tags: tags } }))];
                case 1:
                    // @ts-ignore
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('SET_TAGS_MENTIONS')(params))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_10 = _b.sent();
                    console.log(error_10);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.setFeedbackLoopMentions = function (_a) {
        var uiMentionState, error_11;
        var smartFeatures = _a.smartFeatures, params = __rest(_a, ["smartFeatures"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    uiMentionState = Object.keys(smartFeatures)
                        .reduce(function (mapped, featureName) {
                        var _a;
                        return (__assign(__assign({}, mapped), (_a = {}, _a[featureName] = smartFeatures[featureName], _a)));
                    }, {});
                    // @ts-ignore
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.setFeedback, uiMentionState: uiMentionState, data: smartFeatures }))];
                case 1:
                    // @ts-ignore
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_11 = _b.sent();
                    console.log(error_11);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.assignMentions = function (_a) {
        var error_12;
        var assigneeId = _a.assigneeId, message = _a.message, params = __rest(_a, ["assigneeId", "message"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    // @ts-ignore
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.assign, uiMentionState: { assigneeId: assigneeId }, data: { assigneeId: assigneeId, message: message } }))];
                case 1:
                    // @ts-ignore
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('ASSIGN_MENTIONS')(params))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_12 = _b.sent();
                    console.log(error_12);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.sendToIntegrationMentions = function (_a) {
        var error_13;
        var note = _a.note, integrationId = _a.integrationId, params = __rest(_a, ["note", "integrationId"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    // @ts-ignore
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.executeMentionCommand.bind(this), __assign(__assign({}, params), { apiCommand: apiSingleton/* default */.A.mentions.sendToIntegration, uiMentionState: { integrations: [integrationId] }, data: { note: note, integrationId: integrationId } }))];
                case 1:
                    // @ts-ignore
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('SEND_TO_INTEGRATION_MENTIONS')(params))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_13 = _b.sent();
                    console.log(error_13);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStreamCommands.prototype.executeMentionCommand = function (_a) {
        var themeId, themeName, dedup, topicFilter, filter, apiData, selectedMentions, selectedMentionTextHashes, response, err_3;
        var apiCommand = _a.apiCommand, mentionIds = _a.mentionIds, data = _a.data, uiMentionState = _a.uiMentionState, all = _a.all;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 15, , 18]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getCurrentThemeId */.Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getCurrentThemeName */.EY)];
                case 2:
                    themeName = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* uiEntitiesModel */.P.action.updateUiMentions({
                            ids: mentionIds,
                            value: __assign(__assign({}, uiMentionState), { commandError: false }),
                        }))];
                case 3:
                    _b.sent();
                    if (!(mentionIds.length > 1)) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(selected_model/* mentionStreamSelectedModel */.n.action.applyGroupActions({ value: uiMentionState }))];
                case 4:
                    _b.sent();
                    _b.label = 5;
                case 5: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* isFilterDedup */.TF)];
                case 6:
                    dedup = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(filter_selectors/* getThemeFilter */.Ic)];
                case 7:
                    topicFilter = _b.sent();
                    filter = topicFilter.copyFilter();
                    filter.dedup = false;
                    apiData = __assign(__assign({}, data), { themeId: themeId, themeName: themeName, filter: filter });
                    if (!(!all && dedup)) return [3 /*break*/, 9];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(mentionStream_selectors/* getMentionsByIds */.$N, mentionIds)];
                case 8:
                    selectedMentions = _b.sent();
                    selectedMentionTextHashes = selectedMentions.map(function (mention) { return mention.textHash; });
                    if (selectedMentions.length !== 0) {
                        apiData.filter.addGlobalOption(new FilterOption/* ArrayFilterOption */.jt('duplicates', selectedMentionTextHashes));
                    }
                    else {
                        apiData.mentionIds = mentionIds;
                    }
                    _b.label = 9;
                case 9:
                    if (!all && !dedup) {
                        apiData.mentionIds = mentionIds;
                    }
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiCommand, apiData)];
                case 10:
                    response = _b.sent();
                    if (!response.taskId) return [3 /*break*/, 12];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(mentionStream_model/* mentionStreamModel */.K.action.lrtRequested({ pendingLrtId: response.taskId }))];
                case 11:
                    _b.sent();
                    _b.label = 12;
                case 12:
                    if (!shouldRefreshStream(uiMentionState, filter)) return [3 /*break*/, 14];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* fork */.Zy)(this.refreshStreamWithSavedSelection.bind(this))];
                case 13:
                    _b.sent();
                    _b.label = 14;
                case 14: return [3 /*break*/, 18];
                case 15:
                    err_3 = _b.sent();
                    // @ts-ignore
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* uiEntitiesModel */.P.action.clearUiEntityState())];
                case 16:
                    // @ts-ignore
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* uiEntitiesModel */.P.action.updateUiMentions({
                            ids: mentionIds,
                            value: { commandError: true },
                        }))];
                case 17:
                    _b.sent();
                    console.error(err_3);
                    return [3 /*break*/, 18];
                case 18: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "refreshStreamWithSavedSelection", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "starMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "unstarMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "addNoteMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "markAsSpamMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "markAsHamMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "markProcessedMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "markUnprocessedMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "deleteMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "restoreMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "setSentimentMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "setTagsMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "setFeedbackLoopMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "assignMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "sendToIntegrationMentions", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamCommands.prototype, "executeMentionCommand", null);
    MentionStreamCommands = __decorate([
        (0,pixieDust/* namespace */.MF)('MentionStreamCommands')
    ], MentionStreamCommands);
    return MentionStreamCommands;
}(pixieDust/* StateModel */.Nd));
var mentionStreamCommandsModel = (0,pixieDust/* pixieDust */.kJ)(MentionStreamCommands);


/***/ }),

/***/ "cpfI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   K: () => (/* binding */ mentionStreamModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_mentionStream_selected_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("gP3j");
/* harmony import */ var state_mentionStream_newCount_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("+qv3");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("+9Gl");
/* harmony import */ var state_hubEvents_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("zgQp");
/* harmony import */ var state_filter_model__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("xvzv");
/* harmony import */ var state_routing_actions__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("8W5t");
/* harmony import */ var state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("wDA8");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("0Zyk");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("Qyqr");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("KG/6");
/* harmony import */ var models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("qBsj");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("3o2z");
/* harmony import */ var utils_routing__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("aALz");
/* harmony import */ var state_themes_model__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("JJJ0");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */

















var MentionStream = /** @class */ (function (_super) {
    __extends(MentionStream, _super);
    function MentionStream() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            list: {
                ids: [],
                total: 0,
                isLoading: false,
                error: null,
            },
            exampleList: {
                ids: [],
                total: 0,
                isLoading: false,
                error: null,
            },
            lastId: null,
            savedStream: {
                query: null,
                pathname: null,
            },
            mention: {
                id: null,
                isLoading: false,
                error: null,
            },
            pendingLrtId: null,
            addMention: {
                mentionId: null,
                isLoading: false,
                error: null,
            },
            mentionPreview: {
                mention: null,
                isLoading: false,
                error: null,
            },
        };
        return _this;
    }
    MentionStream.prototype.fetchMentionsGeneric = function (_a) {
        var page, perPage, orderBy, requestedMentionIds, params, _b, response_1, lastId_1, error_1;
        var themeId = _a.themeId, otherParams = __rest(_a, ["themeId"]);
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 9, , 10]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getCurrentPage */ .p$)];
                case 1:
                    page = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getNumberOfMentionsPerPage */ .Kc)];
                case 2:
                    perPage = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getMentionsOrderBy */ .NE)];
                case 3:
                    orderBy = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getRequestedMentionIds */ .ts)];
                case 4:
                    requestedMentionIds = _c.sent();
                    _b = {};
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getThemeFilter */ .Ic)];
                case 5:
                    params = __assign.apply(void 0, [(_b.filter = _c.sent(), _b.themeId = themeId, _b.orderBy = orderBy, _b.perPage = perPage, _b.page = page, _b.requestedMentionIds = requestedMentionIds, _b), otherParams]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.list, params)];
                case 6:
                    response_1 = _c.sent();
                    lastId_1 = response_1.result.lastId;
                    this.updateWithImmer(function (state) {
                        state.list.ids = response_1.result.mentions;
                        state.list.total = response_1.result.total;
                        state.list.isLoading = false;
                        state.list.error = null;
                    });
                    if (lastId_1) {
                        this.updateWithImmer(function (state) {
                            state.lastId = lastId_1;
                        });
                    }
                    this.putSuccessAction();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_hubEvents_model__WEBPACK_IMPORTED_MODULE_6__/* .hubEventsModel */ .m.action.subscribeForMentionsCountUpdate())];
                case 7:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.setTotalCount({ total: response_1.result.total }))];
                case 8:
                    _c.sent();
                    return [3 /*break*/, 10];
                case 9:
                    error_1 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.list.isLoading = false;
                        state.list.error = error_1;
                    });
                    return [3 /*break*/, 10];
                case 10: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.fetchMentionsRequest = function (_a) {
        var error_2;
        var themeId = _a.themeId, otherParams = __rest(_a, ["themeId"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.list.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchMentionsGeneric.bind(this), __assign({ themeId: themeId }, otherParams))];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.isLoading = false;
                        state.list.error = error_2;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.clearMentionStream = function (_a) {
        var themeId = _a.themeId, otherParams = __rest(_a, ["themeId"]);
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.list.isLoading = false;
                state.list.ids = [];
                state.list.total = 0;
                state.list.error = null;
            });
            return [2 /*return*/];
        });
    };
    MentionStream.prototype.fetchMentions = function (params) {
        var error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.fetchMentionsGeneric.bind(this), params)];
                case 1:
                    _a.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_3 = _a.sent();
                    console.error(error_3);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.refreshMentionStream = function (params) {
        var error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_mentionStream_selected_model__WEBPACK_IMPORTED_MODULE_3__/* .mentionStreamSelectedModel */ .n.action.deselectAllMentions())];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchMentionsRequest.bind(this), params)];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_mentionStream_newCount_model__WEBPACK_IMPORTED_MODULE_4__/* .mentionStreamCountModel */ .B.action.resetMentionsCount())];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_themes_model__WEBPACK_IMPORTED_MODULE_15__/* .themesModel */ .i.action.fetchThemeData({ themeId: params.themeId }))];
                case 4:
                    _a.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_4 = _a.sent();
                    console.error(error_4);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.fetchExampleMentions = function (_a) {
        var params, response_2, error_5;
        var themeId = _a.themeId, otherParams = __rest(_a, ["themeId"]);
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    params = __assign({ themeId: themeId, orderBy: 'published', perPage: 100, page: 1 }, otherParams);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.list, params)];
                case 1:
                    response_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.exampleList.ids = response_2.result.mentions;
                        state.exampleList.total = response_2.result.total;
                        state.exampleList.isLoading = false;
                        state.exampleList.error = null;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.exampleList.isLoading = false;
                        state.exampleList.error = error_5;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.fetchDemoMentions = function () {
        var themeId, filter, params, response_3, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.list.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _a.sent();
                    params = {
                        filter: filter,
                        themeId: themeId,
                        orderBy: 'id',
                        perPage: 30,
                        page: 1,
                    };
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.list, params)];
                case 3:
                    response_3 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.list.ids = response_3.result.mentions;
                        state.list.total = response_3.result.total;
                        state.list.isLoading = false;
                        state.list.error = null;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_6 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.list.isLoading = false;
                        state.list.error = error_6;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.fetchMention = function (_a) {
        var filter, params, response_4, error_7;
        var themeId = _a.themeId, mentionId = _a.mentionId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.mention.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    params = {
                        filter: filter,
                        mentionId: mentionId,
                        themeId: themeId,
                    };
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.getFull, params)];
                case 2:
                    response_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.mention.id = response_4.result;
                        state.mention.isLoading = false;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_7 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.mention.isLoading = false;
                        state.mention.error = error_7;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.saveCurrentStreamState = function () {
        var query_1, pathname_1, error_8;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__/* .getQuery */ .$Z)];
                case 1:
                    query_1 = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__/* .getPathname */ .Hm)];
                case 2:
                    pathname_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.savedStream.query = query_1;
                        state.savedStream.pathname = pathname_1;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_8 = _a.sent();
                    console.error(error_8);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.changePageNumber = function (_a) {
        var themeId, query, error_9;
        var page = _a.page;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__/* .getQuery */ .$Z)];
                case 2:
                    query = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_8__/* .update */ .yo)({
                            query: __assign(__assign({}, query), { page: page !== 1 ? page : undefined }),
                        }))];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.refreshMentionStream.bind(this), { themeId: themeId })];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_9 = _b.sent();
                    console.error(error_9);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.changePerPageNumber = function (_a) {
        var themeId, query, error_10;
        var perPage = _a.perPage;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__/* .getQuery */ .$Z)];
                case 2:
                    query = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_8__/* .update */ .yo)({
                            query: __assign(__assign({}, query), { perPage: perPage !== 50 ? perPage : undefined }),
                        }))];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.refreshMentionStream.bind(this), { themeId: themeId })];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_10 = _b.sent();
                    console.error(error_10);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.changeOrderBy = function (_a) {
        var themeId, query, error_11;
        var orderBy = _a.orderBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 8, , 9]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__/* .getQuery */ .$Z)];
                case 2:
                    query = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_8__/* .update */ .yo)({
                            query: __assign(__assign({}, query), { orderBy: orderBy }),
                        }))];
                case 3:
                    _b.sent();
                    if (!(orderBy === 'duplicates')) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                            name: 'dedup',
                            value: true,
                        }))];
                case 4:
                    _b.sent();
                    _b.label = 5;
                case 5: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.refreshMentionStream.bind(this), { themeId: themeId })];
                case 6:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_14__/* .getAction */ .Th)('CHANGE_ORDER_BY')(orderBy))];
                case 7:
                    _b.sent();
                    return [3 /*break*/, 9];
                case 8:
                    error_11 = _b.sent();
                    console.error(error_11);
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.filterDuplicates = function (_a) {
        var themeId, query, error_12;
        var duplicate = _a.duplicate;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 9, , 10]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_12__/* .getQuery */ .$Z)];
                case 2:
                    query = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.saveCurrentStreamState.bind(this))];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_8__/* .update */ .yo)({
                            query: __assign(__assign({}, query), { page: 1 }),
                        }))];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                            name: 'duplicates',
                            value: [duplicate],
                        }))];
                case 5:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                            name: 'dedup',
                            value: false,
                        }))];
                case 6:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.refreshMentionStream.bind(this), { themeId: themeId })];
                case 7:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_14__/* .getAction */ .Th)('FILTER_DUPLICATES')())];
                case 8:
                    _b.sent();
                    return [3 /*break*/, 10];
                case 9:
                    error_12 = _b.sent();
                    console.error(error_12);
                    return [3 /*break*/, 10];
                case 10: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.filterSimilar = function (_a) {
        var error_13;
        var similar = _a.similar;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.saveCurrentStreamState.bind(this))];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                            name: 'similar',
                            value: [similar],
                        }))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_13 = _b.sent();
                    console.error(error_13);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.filterDiscussion = function (_a) {
        var filter, newFilter, error_14;
        var id = _a.id;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.saveCurrentStreamState.bind(this))];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _b.sent();
                    newFilter = filter.withoutFilter();
                    newFilter.addGlobalOption((0,models_filters_domain_FilterOptionTypeCatalog__WEBPACK_IMPORTED_MODULE_13__/* .createFilterOption */ .K3)([id], 'discussions'));
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateFilterQuery({ filter: newFilter }))];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_14 = _b.sent();
                    console.error(error_14);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.restoreStreamState = function () {
        var savedStreamState, themeId, error_15;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 10, , 11]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_9__/* .getSavedStreamState */ .VL)];
                case 1:
                    savedStreamState = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 2:
                    themeId = _a.sent();
                    if (!savedStreamState) return [3 /*break*/, 4];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_8__/* .push */ .VC)({
                            search: (0,utils_routing__WEBPACK_IMPORTED_MODULE_16__/* .queryToSearch */ .w)(savedStreamState.query || {}),
                            pathname: savedStreamState.pathname,
                        }))];
                case 3:
                    _a.sent();
                    this.updateWithImmer(function (state) {
                        state.savedStream.query = null;
                        state.savedStream.pathname = null;
                    });
                    return [3 /*break*/, 8];
                case 4: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                        name: 'duplicates',
                        value: [],
                    }))];
                case 5:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                            name: 'similar',
                            value: [],
                        }))];
                case 6:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_filter_model__WEBPACK_IMPORTED_MODULE_7__/* .filterModel */ .W.action.updateHighLevelFilter({
                            name: 'discussion',
                            value: [],
                        }))];
                case 7:
                    _a.sent();
                    _a.label = 8;
                case 8: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.refreshMentionStream.bind(this), { themeId: themeId })];
                case 9:
                    _a.sent();
                    return [3 /*break*/, 11];
                case 10:
                    error_15 = _a.sent();
                    console.error(error_15);
                    return [3 /*break*/, 11];
                case 11: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.mentionAdditionPreview = function (_a) {
        var themeId, response_5, error_16;
        var url = _a.url;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.mentionPreview.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.previewMention, { themeId: themeId, url: url })];
                case 2:
                    response_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.mentionPreview.mention = response_5;
                        state.mentionPreview.isLoading = false;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_16 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.mentionPreview.isLoading = false;
                        state.mentionPreview.error = error_16;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.clearMentionAdditionPreviewState = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.mentionPreview.mention = null;
                state.mentionPreview.isLoading = false;
                state.mentionPreview.error = null;
            });
            return [2 /*return*/];
        });
    };
    MentionStream.prototype.addMention = function (_a) {
        var themeId, response_6, source, error_17;
        var _b;
        var url = _a.url, mention = _a.mention;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.addMention.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_11__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _c.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.mentions.add, { themeId: themeId, url: url, mention: mention })];
                case 2:
                    response_6 = _c.sent();
                    source = (_b = mention === null || mention === void 0 ? void 0 : mention.source) === null || _b === void 0 ? void 0 : _b.name;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_5__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'Mention: manually added',
                            properties: source ? __assign({}, source) : undefined,
                        }))];
                case 3:
                    _c.sent();
                    this.updateWithImmer(function (state) {
                        state.addMention.mentionId = response_6.mentionId;
                        state.addMention.isLoading = false;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_17 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.addMention.isLoading = false;
                        state.addMention.error = error_17;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    MentionStream.prototype.clearAddMentionState = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.addMention.mentionId = null;
                state.addMention.isLoading = false;
                state.addMention.error = null;
            });
            return [2 /*return*/];
        });
    };
    MentionStream.prototype.lrtRequested = function (_a) {
        var pendingLrtId = _a.pendingLrtId;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.pendingLrtId = pendingLrtId;
            });
            return [2 /*return*/];
        });
    };
    MentionStream.prototype.lrtProcessingStarted = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.pendingLrtId = null;
            });
            return [2 /*return*/];
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "fetchMentionsGeneric", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "fetchMentionsRequest", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "clearMentionStream", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "fetchMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "refreshMentionStream", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "fetchExampleMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "fetchDemoMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "fetchMention", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "saveCurrentStreamState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "changePageNumber", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "changePerPageNumber", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "changeOrderBy", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "filterDuplicates", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "filterSimilar", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "filterDiscussion", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "restoreStreamState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "mentionAdditionPreview", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "clearMentionAdditionPreviewState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "addMention", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "clearAddMentionState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "lrtRequested", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStream.prototype, "lrtProcessingStarted", null);
    MentionStream = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('MentionStream')
    ], MentionStream);
    return MentionStream;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var mentionStreamModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(MentionStream);


/***/ }),

/***/ "+qv3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   B: () => (/* binding */ mentionStreamCountModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */

var MentionStreamNewCount = /** @class */ (function (_super) {
    __extends(MentionStreamNewCount, _super);
    function MentionStreamNewCount() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            count: null,
            isLoading: false,
            error: null,
        };
        return _this;
    }
    MentionStreamNewCount.prototype.updateMentionsCount = function (_a) {
        var count = _a.count;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.isLoading = false;
                state.count = count;
            });
            return [2 /*return*/];
        });
    };
    MentionStreamNewCount.prototype.resetMentionsCount = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.count = null;
            });
            return [2 /*return*/];
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamNewCount.prototype, "updateMentionsCount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamNewCount.prototype, "resetMentionsCount", null);
    MentionStreamNewCount = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('MentionStreamNewCount')
    ], MentionStreamNewCount);
    return MentionStreamNewCount;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var mentionStreamCountModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(MentionStreamNewCount);


/***/ }),

/***/ "gP3j":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   n: () => (/* binding */ mentionStreamSelectedModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("0Zyk");
/* harmony import */ var state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("oq+A");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("Qyqr");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("kHEK");
/* harmony import */ var state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("wDA8");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("3o2z");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */









var MentionStreamSelected = /** @class */ (function (_super) {
    __extends(MentionStreamSelected, _super);
    function MentionStreamSelected() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            ids: [],
            allSelected: false,
            pageSelected: false,
            changes: {},
            selectedCount: {
                count: null,
                isLoading: false,
            },
        };
        return _this;
    }
    MentionStreamSelected.prototype.selectMentions = function (_a) {
        var ids;
        var mentionIds = _a.mentionIds;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getSelectedMentionIds */ .aX)];
                case 1:
                    ids = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.ids = Array.from(new Set(__spreadArray(__spreadArray([], __read(ids), false), __read(mentionIds), false)));
                        state.allSelected = false;
                        state.changes = {};
                        state.selectedCount.count = 0;
                        state.selectedCount.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.countRealSelectedMentionCount.bind(this))];
                case 2:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    MentionStreamSelected.prototype.selectMentionsOnPage = function () {
        var mentionIds;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getMentionIds */ .p3)];
                case 1:
                    mentionIds = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.pageSelected = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('SELECT_MENTIONS_ON_PAGE')())];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.selectMentions.bind(this), { mentionIds: mentionIds })];
                case 3:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    MentionStreamSelected.prototype.selectAllMentions = function () {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.allSelected = true;
                        state.changes = {};
                        state.selectedCount.count = 0;
                        state.selectedCount.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('SELECT_ALL_MENTIONS')())];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.countRealSelectedMentionCount.bind(this))];
                case 2:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    MentionStreamSelected.prototype.deselectMentions = function (_a) {
        var ids;
        var mentionIds = _a.mentionIds;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getSelectedMentionIds */ .aX)];
                case 1:
                    ids = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.ids = __spreadArray([], __read(ids), false).filter(function (id) { return !mentionIds.includes(id); });
                        state.allSelected = false;
                        state.pageSelected = false;
                        state.changes = {};
                        state.selectedCount.count = 0;
                        state.selectedCount.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.countRealSelectedMentionCount.bind(this))];
                case 2:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    MentionStreamSelected.prototype.deselectAllMentions = function () {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.ids = [];
                        state.allSelected = false;
                        state.pageSelected = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.countRealSelectedMentionCount.bind(this))];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    MentionStreamSelected.prototype.countRealSelectedMentionCount = function () {
        var dedup, allSelected, selectedMentions, count, themeId, filter, count, err_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 11, , 12]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .isFilterDedup */ .TF)];
                case 1:
                    dedup = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_4__/* .isAllSelected */ .dE)];
                case 2:
                    allSelected = _a.sent();
                    if (!(dedup && !allSelected)) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getSelectedMentions */ .bR)];
                case 3:
                    selectedMentions = _a.sent();
                    count = selectedMentions.reduce(function (sum, mention) { return sum + mention.duplicatesCount; }, 0);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.setRealSelectedMentionCount.bind(this), { count: count })];
                case 4:
                    _a.sent();
                    _a.label = 5;
                case 5:
                    if (!(dedup && allSelected)) return [3 /*break*/, 10];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentThemeId */ .Md)];
                case 6:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 7:
                    filter = _a.sent();
                    filter.dedup = false;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A.mentions.count, {
                            filter: filter,
                            themeId: themeId,
                        })];
                case 8:
                    count = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.setRealSelectedMentionCount.bind(this), { count: count })];
                case 9:
                    _a.sent();
                    _a.label = 10;
                case 10: return [3 /*break*/, 12];
                case 11:
                    err_1 = _a.sent();
                    console.error(err_1);
                    return [3 /*break*/, 12];
                case 12: return [2 /*return*/];
            }
        });
    };
    MentionStreamSelected.prototype.setRealSelectedMentionCount = function (_a) {
        var count = _a.count;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.selectedCount.count = count;
                state.selectedCount.isLoading = false;
            });
            return [2 /*return*/];
        });
    };
    MentionStreamSelected.prototype.applyGroupActions = function (_a) {
        var value = _a.value;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.changes = (0,lodash__WEBPACK_IMPORTED_MODULE_2__.merge)(state.changes, value);
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_8__/* .getAction */ .Th)('APPLY_GROUP_ACTIONS')({ value: value }))];
                case 1:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "selectMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "selectMentionsOnPage", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "selectAllMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "deselectMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "deselectAllMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "countRealSelectedMentionCount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "setRealSelectedMentionCount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], MentionStreamSelected.prototype, "applyGroupActions", null);
    MentionStreamSelected = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('MentionStreamSelected')
    ], MentionStreamSelected);
    return MentionStreamSelected;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var mentionStreamSelectedModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(MentionStreamSelected);


/***/ }),

/***/ "oq+A":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Bt: () => (/* binding */ isPageSelected),
/* harmony export */   Dd: () => (/* binding */ getSentimentValue),
/* harmony export */   Lc: () => (/* binding */ getSelectedMentionsFeedbackLoopSmartFeatureValues),
/* harmony export */   R9: () => (/* binding */ getRealSelectedMentionCount),
/* harmony export */   SY: () => (/* binding */ isRealSelectedMentionCountCalculating),
/* harmony export */   _I: () => (/* binding */ isSelectingMentions),
/* harmony export */   aX: () => (/* binding */ getSelectedMentionIds),
/* harmony export */   bR: () => (/* binding */ getSelectedMentions),
/* harmony export */   d6: () => (/* binding */ getAssigneeValue),
/* harmony export */   dE: () => (/* binding */ isAllSelected),
/* harmony export */   jy: () => (/* binding */ getStarredValue),
/* harmony export */   m7: () => (/* binding */ getProcessedValue),
/* harmony export */   nP: () => (/* binding */ getDeletedValue),
/* harmony export */   tt: () => (/* binding */ getSpamValue),
/* harmony export */   z: () => (/* binding */ getTagsValue)
/* harmony export */ });
/* unused harmony exports isMentionSelected, getGroupActionChanges */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("XFM9");
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("sYBo");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("+Oxy");
/* harmony import */ var state_tags_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("x5Gk");
/* harmony import */ var state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("wDA8");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("0Zyk");
/* harmony import */ var state_metaData_selectors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("UhQz");
/* harmony import */ var utils_constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("L02r");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_6__);
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};










var getSelectedMentionIds = function (state) { return state.mentionStreamSelected.ids; };
var isSelectingMentions = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentionIds, function (ids) { return !!ids.length; });
var isPageSelected = function (state) { return state.mentionStreamSelected.pageSelected; };
var isAllSelected = function (state) { return state.mentionStreamSelected.allSelected; };
var getSelectedMentions = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getMentionEntities */ .W2, getSelectedMentionIds, function (mentions, ids) { return __spreadArray([], __read(ids), false).map(function (id) { return mentions[id]; }); });
var getRealSelectedMentionCount = function (state) { return state.mentionStreamSelected.selectedCount.count; };
var isRealSelectedMentionCountCalculating = function (state) { return state.mentionStreamSelected.selectedCount.isLoading; };
var isMentionSelected = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentionIds, function (_state, mentionId) { return mentionId; }, function (selectedIds, mentionId) { return selectedIds.includes(mentionId); });
var getGroupActionChanges = function (state) { return state.mentionStreamSelected.changes; };
var getStarredValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentions, getGroupActionChanges, isAllSelected, function (mentions, changes, allSelected) {
    if (allSelected) {
        return changes.starred || false;
    }
    return mentions.every(function (mention) { return mention.starred; });
});
var getProcessedValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentions, getGroupActionChanges, state_filter_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeFilter */ .Ic, isAllSelected, function (mentions, changes, filter, allSelected) {
    if (allSelected)
        return filter.processed || changes.processed;
    return mentions.every(function (mention) { return mention.processed; });
});
var getSpamValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentions, getGroupActionChanges, state_filter_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeFilter */ .Ic, isAllSelected, function (mentions, changes, filter, allSelected) {
    if (allSelected)
        return filter.spam || changes.spam;
    return mentions.every(function (mention) { return mention.spam; });
});
var getDeletedValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentions, state_filter_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeFilter */ .Ic, isAllSelected, function (mentions, filter, allSelected) {
    if (allSelected)
        return filter.deleted || false;
    return mentions.every(function (mention) { return mention.deleted; });
});
var getAssigneeValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getGroupActionChanges, function (changes) { return changes.assigneeId; });
var getSentimentValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getGroupActionChanges, function (changes) { return changes.manualSentiment; });
var getTagsValue = (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentions, getGroupActionChanges, isAllSelected, state_tags_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getTags */ .Q2, function (mentions, changes, allSelected, tags) {
    var allTags = tags.map(function (tag) { return tag.id; });
    if (allSelected) {
        var changedTags_1 = changes.tags || [];
        var selectedTags_1 = Object.keys(changedTags_1).filter(function (key) { return changedTags_1[key]; }).map(function (k) { return k; });
        var deselectedTags_1 = Object.keys(changedTags_1).filter(function (key) { return !changedTags_1[key]; }).map(function (k) { return k; });
        return {
            indeterminate: (0,lodash__WEBPACK_IMPORTED_MODULE_0__.reject)(allTags, function (tag) { return selectedTags_1.includes(tag) || deselectedTags_1.includes(tag); }),
            selected: selectedTags_1,
            deselected: deselectedTags_1,
        };
    }
    var mentionsNumber = mentions.length;
    var tagsArray = allTags.reduce(function (tagsAcc, tag) {
        return tagsAcc.concat({ tag: tag, count: 0 });
    }, []);
    var tagCounts = mentions.reduce(function (arr, mention) {
        return arr.map(function (_a) {
            var tag = _a.tag, count = _a.count;
            return ({ tag: tag, count: mention.tags.includes(tag) ? count + 1 : count });
        });
    }, tagsArray);
    return {
        indeterminate: tagCounts.filter(function (_a) {
            var count = _a.count;
            return count > 0 && count < mentionsNumber;
        }).map(function (_a) {
            var tag = _a.tag;
            return tag;
        }),
        selected: tagCounts.filter(function (_a) {
            var count = _a.count;
            return count === mentionsNumber;
        }).map(function (_a) {
            var tag = _a.tag;
            return tag;
        }),
        deselected: tagCounts.filter(function (_a) {
            var count = _a.count;
            return !count;
        }).map(function (_a) {
            var tag = _a.tag;
            return tag;
        }),
    };
});
var getFilteredAspectIds = function (filterFn, aspects) { return aspects.filter(filterFn).map(function (_a) {
    var feature = _a.feature;
    return feature;
}); };
var getFeedbackLoopAspectsValue = function (mentions, changes, allSelected, feedbackLoopFeaturesList) {
    var allFeatures = feedbackLoopFeaturesList;
    if (allSelected) {
        var aspectKeys = __spreadArray([], __read((new Set((feedbackLoopFeaturesList === null || feedbackLoopFeaturesList === void 0 ? void 0 : feedbackLoopFeaturesList.map(function (f) { return f.split('_')[0]; })) || []))), false);
        var changedAspects = changes.aspects || [];
        var selectedAspectIds_1 = getFilteredAspectIds(function (_a) {
            var aspect = _a.aspect;
            return aspect;
        }, changedAspects);
        var deselectedAspectIds_1 = getFilteredAspectIds(function (_a) {
            var aspect = _a.aspect;
            return !aspect;
        }, changedAspects);
        var indeterminate_1 = __spreadArray([], __read(aspectKeys), false).filter(function (aspect) { return !selectedAspectIds_1.includes(aspect)
            || !deselectedAspectIds_1.includes(aspect); })
            .map(function (aspect) { return aspect; });
        return {
            indeterminate: indeterminate_1,
            selected: selectedAspectIds_1,
        };
    }
    var mentionsNumber = mentions.length;
    var featuresArray = allFeatures.reduce(function (acc, feature) {
        return acc.concat({ feature: feature, count: 0 });
    }, []);
    var featureCount = mentions.reduce(function (arr, mention) { return arr.map(function (_a) {
        var count = _a.count, feature = _a.feature;
        var mentionAspects = (mention.aspects || []).map(function (value) { return value === null || value === void 0 ? void 0 : value.id; });
        return {
            feature: feature,
            count: mentionAspects.includes(feature)
                ? count + 1
                : count,
        };
    }); }, featuresArray);
    var indeterminate = getFilteredAspectIds(function (_a) {
        var count = _a.count;
        return count > 0 && count < mentionsNumber;
    }, featureCount);
    var selected = getFilteredAspectIds(function (_a) {
        var count = _a.count;
        return count === mentionsNumber;
    }, featureCount);
    var getFeatureValueByKey = function (id) {
        var aspect = id.split('_')[0];
        var sentiment = id.split('_')[1];
        return {
            aspect: aspect,
            sentiment: sentiment,
            id: id,
        };
    };
    var mapIndeterminateValues = function (values) { return values
        .map(getFeatureValueByKey)
        .map(function (value) { return value.aspect; }); };
    var mapSelectedValues = function (values) { return values
        .map(getFeatureValueByKey)
        .map(function (value) { return value; }); };
    return {
        selected: mapSelectedValues(selected),
        indeterminate: mapIndeterminateValues(indeterminate),
    };
};
var getFeedbackLoopSmartFeatureValue = function (featureName) { return (0,reselect__WEBPACK_IMPORTED_MODULE_7__/* .createSelector */ .Mz)(getSelectedMentions, getGroupActionChanges, isAllSelected, state_metaData_selectors__WEBPACK_IMPORTED_MODULE_8__/* .feedbackLoopFeatures */ .n8, function (mentions, changes, allSelected, feedbackLoopFeaturesList) {
    if (featureName === 'aspects') {
        return getFeedbackLoopAspectsValue(mentions, changes, allSelected, (feedbackLoopFeaturesList === null || feedbackLoopFeaturesList === void 0 ? void 0 : feedbackLoopFeaturesList[featureName]) || []);
    }
    var allFeatures = (feedbackLoopFeaturesList === null || feedbackLoopFeaturesList === void 0 ? void 0 : feedbackLoopFeaturesList[featureName]) || [];
    if (allSelected) {
        var changedFeatures = changes[featureName] || [];
        var selectedFeatures_1 = changedFeatures.filter(function (feature) { return feature; }).map(function (_v, k) { return k; });
        var deselectedFeatures_1 = changedFeatures.filter(function (feature) { return !feature; }).map(function (_v, k) { return k; });
        var indeterminateFeatures = allFeatures.filter(function (feature) { return !selectedFeatures_1.includes(feature) || !deselectedFeatures_1.includes(feature); });
        return {
            indeterminate: indeterminateFeatures,
            selected: selectedFeatures_1,
            deselected: deselectedFeatures_1,
        };
    }
    var mentionsNumber = mentions.length;
    var featuresArray = allFeatures.reduce(function (acc, feature) {
        return acc.concat({ feature: feature, count: 0 });
    }, []);
    var featureCount = utils_constants__WEBPACK_IMPORTED_MODULE_5__/* .VISUAL_INSIGHTS_FEATURES */ .l3.includes(featureName)
        ? mentions.reduce(function (arr, mention) {
            return arr.map(function (_a) {
                var _b;
                var feature = _a.feature, count = _a.count;
                return ({
                    feature: feature,
                    count: ((_b = mention[featureName]) === null || _b === void 0 ? void 0 : _b.some(function (vv) { return (vv.label || vv.color) === feature; })) ? count + 1 : count,
                });
            });
        }, featuresArray)
        : mentions.reduce(function (arr, mention) { return arr.map(function (_a) {
            var feature = _a.feature, count = _a.count;
            if (utils_constants__WEBPACK_IMPORTED_MODULE_5__/* .FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES */ .eu.includes(featureName)) {
                return {
                    feature: feature,
                    count: mention[featureName] === feature
                        ? count + 1
                        : count,
                };
            }
            var values = (mention[featureName] || [])
                .map(function (value) { return (typeof value === 'string' ? value : value.id); });
            return {
                feature: feature,
                count: values.includes(feature)
                    ? count + 1
                    : count,
            };
        }); }, featuresArray);
    var indeterminate = featureCount.filter(function (_a) {
        var count = _a.count;
        return count > 0 && count < mentionsNumber;
    }).map(function (_a) {
        var feature = _a.feature;
        return feature;
    });
    var selected = featureCount.filter(function (_a) {
        var count = _a.count;
        return count === mentionsNumber;
    }).map(function (_a) {
        var feature = _a.feature;
        return feature;
    });
    var deselected = featureCount.filter(function (_a) {
        var count = _a.count;
        return !count;
    }).map(function (_a) {
        var feature = _a.feature;
        return feature;
    });
    return {
        indeterminate: indeterminate,
        selected: selected,
        deselected: deselected,
    };
}); };
var provideState = function (fn, state) { return function () {
    var args = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
    }
    return fn.apply(void 0, __spreadArray([], __read(args), false))(state);
}; };
var getSelectedMentionsFeedbackLoopSmartFeatureValues = function (state) {
    var allowedFeatures = utils_constants__WEBPACK_IMPORTED_MODULE_5__/* .FEEDBACK_LOOP_SMART_FEATURE_NAMES */ .BU
        .filter(provideState(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_3__/* .canShowFeedbackLoopSmartFeature */ .WS, state));
    return allowedFeatures.reduce(function (featureValues, featureName) { return (0,redux__WEBPACK_IMPORTED_MODULE_9__/* .compose */ .Zz)(function (_a) {
        var name = _a.name, value = _a.value;
        return ({
            selected: (0,lodash__WEBPACK_IMPORTED_MODULE_0__.set)(featureValues.selected || {}, name, (0,immutable__WEBPACK_IMPORTED_MODULE_6__.fromJS)(value.selected)),
            indeterminate: (0,lodash__WEBPACK_IMPORTED_MODULE_0__.set)(featureValues.indeterminate || {}, name, (0,immutable__WEBPACK_IMPORTED_MODULE_6__.fromJS)(value.indeterminate)),
        });
    }, function (name) { return ({
        name: (0,state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getFeedbackLoopSmartFeatureName */ .iS)(name),
        value: getFeedbackLoopSmartFeatureValue(name)(state),
    }); })(featureName); }, {});
};


/***/ }),

/***/ "wDA8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $N: () => (/* binding */ getMentionsByIds),
/* harmony export */   Ag: () => (/* binding */ getAddMentionError),
/* harmony export */   C$: () => (/* binding */ isExampleMentionsLoading),
/* harmony export */   CG: () => (/* binding */ isLoadingMentions),
/* harmony export */   E9: () => (/* binding */ isMentionAdding),
/* harmony export */   HM: () => (/* binding */ isMentionAlreadyExists),
/* harmony export */   Kc: () => (/* binding */ getNumberOfMentionsPerPage),
/* harmony export */   Ll: () => (/* binding */ isCopilotActive),
/* harmony export */   N: () => (/* binding */ getFeedbackLoopSmartFeaturePermissions),
/* harmony export */   NE: () => (/* binding */ getMentionsOrderBy),
/* harmony export */   OM: () => (/* binding */ getMentions),
/* harmony export */   Pf: () => (/* binding */ getPendingLrtId),
/* harmony export */   U3: () => (/* binding */ getSelectedMentionsCount),
/* harmony export */   VL: () => (/* binding */ getSavedStreamState),
/* harmony export */   WS: () => (/* binding */ canShowFeedbackLoopSmartFeature),
/* harmony export */   _: () => (/* binding */ getExampleMentions),
/* harmony export */   bx: () => (/* binding */ getPreviewMention),
/* harmony export */   dg: () => (/* binding */ getPreviewMentionError),
/* harmony export */   iS: () => (/* binding */ getFeedbackLoopSmartFeatureName),
/* harmony export */   jO: () => (/* binding */ getInvisibleSelectedMentionIds),
/* harmony export */   m9: () => (/* binding */ getAddedMentionId),
/* harmony export */   oL: () => (/* binding */ getOpenedMention),
/* harmony export */   or: () => (/* binding */ getTotalMentions),
/* harmony export */   p$: () => (/* binding */ getCurrentPage),
/* harmony export */   p3: () => (/* binding */ getMentionIds),
/* harmony export */   rx: () => (/* binding */ getMentionsLastId),
/* harmony export */   sg: () => (/* binding */ isTopicTaskStarted),
/* harmony export */   ts: () => (/* binding */ getRequestedMentionIds),
/* harmony export */   vS: () => (/* binding */ getMentionStreamError),
/* harmony export */   wk: () => (/* binding */ isOpenedMentionLoading),
/* harmony export */   xc: () => (/* binding */ isPreviewMentionLoading),
/* harmony export */   yQ: () => (/* binding */ getPreviewMentionId)
/* harmony export */ });
/* unused harmony exports getExampleMentionIds, getOpenedMentionId */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KG/6");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("Qyqr");
/* harmony import */ var state_account_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("FFtF");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("X9tB");
/* harmony import */ var state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("oq+A");
/* harmony import */ var utils_constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("L02r");
/* harmony import */ var models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("xFwg");
/* harmony import */ var state_tasks_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("ZV04");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};










var getMentionIds = function (state) { return state.mentionStream.list.ids; };
var getTotalMentions = function (state) { return state.mentionStream.list.total; };
var isLoadingMentions = function (state) { return state.mentionStream.list.isLoading; };
var getMentionStreamError = function (state) { return state.mentionStream.list.error; };
var getExampleMentionIds = function (state) { return state.mentionStream.exampleList.ids; };
var isExampleMentionsLoading = function (state) { return state.mentionStream.exampleList.isLoading; };
var getExampleMentions = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(getExampleMentionIds, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getMentionEntities */ .W2, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getChannelEntities */ .JK, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getSourceEntities */ .tw, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getTrendEntities */ .zR, function (ids, entities, channels, sources, users, trends) { return ids.map(function (id) {
    var entity = entities[id];
    var sourceId = entity.source;
    var assigneeId = entity.assigneeId;
    var channelId = entity.channel;
    var tagIds = entity.tags;
    var trendList = entity.trends;
    return __assign(__assign({}, entity), { assignee: users[assigneeId], source: sources[sourceId], channel: channels[channelId], tagIds: tagIds, trends: trendList.map(function (t) { return trends[t.id]; }) });
}); });
var getMentionsLastId = function (state) { return state.mentionStream.lastId; };
var getSavedStreamState = function (state) { return state.mentionStream.savedStream; };
var getOpenedMentionId = function (state) { return state.mentionStream.mention.id; };
var isOpenedMentionLoading = function (state) { return state.mentionStream.mention.isLoading; };
var getPreviewMention = function (state) { return state.mentionStream.mentionPreview.mention; };
var isPreviewMentionLoading = function (state) { return state.mentionStream.mentionPreview.isLoading; };
var getPreviewMentionError = function (state) { return state.mentionStream.mentionPreview.error; };
var getPendingLrtId = function (state) { return state.mentionStream.pendingLrtId; };
var isTopicTaskStarted = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(getPendingLrtId, state_tasks_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getCurrentTask */ .$R, function (pendingLrt, task) { return pendingLrt || !!task; });
var getPreviewMentionId = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(getPreviewMention, function (preview) { return preview === null || preview === void 0 ? void 0 : preview.mentionId; });
var isMentionAlreadyExists = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(getPreviewMention, function (preview) { return preview === null || preview === void 0 ? void 0 : preview.alreadyExists; });
var getAddedMentionId = function (state) { return state.mentionStream.addMention.mentionId; };
var isMentionAdding = function (state) { return state.mentionStream.addMention.isLoading; };
var getAddMentionError = function (state) { return state.mentionStream.addMention.error; };
var getMentions = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getMentionEntities */ .W2, getMentionIds, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getChannelEntities */ .JK, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getSourceEntities */ .tw, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getSelectedMentionIds */ .aX, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getTrendEntities */ .zR, function (entities, ids, channels, sources, users, selected, trends) { return ids.map(function (id) {
    var entity = entities[id];
    var sourceId = entity.source;
    var assigneeId = entity.assigneeId;
    var channelId = entity.channel;
    var tagIds = entity.tags;
    var trendList = entity.trends;
    return __assign(__assign({}, entity), { assignee: users[assigneeId], source: sources[sourceId], channel: channels[channelId], tagIds: tagIds, selected: selected.includes(entity.id), trends: trendList.map(function (t) { return trends[t.id]; }) });
}); });
var getMentionsByIds = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(getMentions, function (_state, ids) { return ids; }, function (mentions, ids) { return mentions.filter(function (mention) { return ids.includes(mention.id); }); });
var getInvisibleSelectedMentionIds = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getSelectedMentionIds */ .aX, getMentionIds, function (selectedIds, visibleIds) { return selectedIds.filter(function (id) { return !visibleIds.includes(id); }); });
var getCurrentPage = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return Number(query === null || query === void 0 ? void 0 : query.page) || 1; });
var getNumberOfMentionsPerPage = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return Number(query === null || query === void 0 ? void 0 : query.perPage) || 50; });
var getMentionsOrderBy = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return (query === null || query === void 0 ? void 0 : query.orderBy) || 'published'; });
var FEEDBACK_LOOP_SMART_FEATURE_PERMISSION_SELECTOR = {
    // @ts-ignore
    systemTags: function (state) { return (0,state_account_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getSubscriptionFeatureValue */ .ts)(state, 'smartTags'); },
    aspects: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canShowAspects */ .d2,
    subjects: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canShowSubjects */ .n7,
    imageBrands: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imageColors: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imageObjects: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imagePeople: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imageContentSensitivity: state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_4__/* .isCurrentUserAccountAdmin */ .B5 || state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_4__/* .isSupportUser */ .x3,
    imageScenes: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imageActivities: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imageType: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
    imageSubtype: state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .canUseImageRecognitionFeatures */ .ZL,
};
var getFeedbackLoopSmartFeaturePermissions = function (state) {
    return Object.keys(FEEDBACK_LOOP_SMART_FEATURE_PERMISSION_SELECTOR)
        .reduce(function (permissions, featureName) {
        var _a;
        return (__assign(__assign({}, permissions), (_a = {}, _a[featureName] = FEEDBACK_LOOP_SMART_FEATURE_PERMISSION_SELECTOR[featureName](state), _a)));
    }, {});
};
var getOpenedMention = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getMentionEntities */ .W2, getOpenedMentionId, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getChannelEntities */ .JK, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getSourceEntities */ .tw, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, function (entities, id, channels, sources, users) {
    if (!id)
        return null;
    var entity = entities[id];
    var sourceId = entity.source;
    var assigneeId = entity.assigneeId;
    var channelId = entity.channel;
    var tagIds = entity.tags;
    return __assign(__assign({}, entity), { assignee: users[assigneeId], source: sources[sourceId], channel: channels[channelId], tagIds: tagIds });
});
var getSelectedMentionsCount = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isAllSelected */ .dE, state_mentionStream_selected_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getSelectedMentionIds */ .aX, getTotalMentions, getMentionIds, function (allSelected, selectedIds, total, visibleIds) {
    if (allSelected)
        return total;
    return selectedIds.filter(function (id) { return visibleIds.includes(id); }).length;
});
var getRequestedMentionIds = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return (query === null || query === void 0 ? void 0 : query.requestedMentionIds) || []; });
var canShowFeedbackLoopSmartFeature = function (featureName) {
    return FEEDBACK_LOOP_SMART_FEATURE_PERMISSION_SELECTOR[featureName];
};
var getFeedbackLoopSmartFeatureName = function (featureName) { return (utils_constants__WEBPACK_IMPORTED_MODULE_6__/* .VISUAL_INSIGHTS_FEATURES */ .l3.includes(featureName)
    ? "visualInsights.".concat(featureName)
    : featureName); };
var isCopilotActive = (0,reselect__WEBPACK_IMPORTED_MODULE_8__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return (query === null || query === void 0 ? void 0 : query.isCopilotActive) && (0,models_filters_utils_TypeUtils__WEBPACK_IMPORTED_MODULE_9__/* .toBoolean */ .G)(query.isCopilotActive); });


/***/ }),

/***/ "gw28":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   o: () => (/* binding */ mentionStreamTrendsModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("Qyqr");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("0Zyk");
/* harmony import */ var utils_detectStatsConfigPeriod__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("uZfh");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("kHEK");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */






var MentionStreamTrends = /** @class */ (function (_super) {
    __extends(MentionStreamTrends, _super);
    function MentionStreamTrends() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            isLoading: false,
            data: null,
            error: null,
        };
        return _this;
    }
    MentionStreamTrends.prototype.fetchMentionStremTrendsRequest = function () {
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchMentionStremTrends.bind(this))];
                case 1:
                    _a.sent();
                    return [2 /*return*/];
            }
        });
    };
    MentionStreamTrends.prototype.fetchMentionStremTrends = function () {
        var themeId, filter, config, response_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 2:
                    filter = _a.sent();
                    config = (0,utils_detectStatsConfigPeriod__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Ay)({ aggregations: { words: { size: 25 }, date: { interval: 'Day' }, tags: {}, sentiment: {} } }, filter.from, filter.to);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A.stats.fetchStatsNew, {
                            themeId: themeId,
                            filter: filter,
                            config: config,
                        })];
                case 3:
                    response_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.isLoading = false;
                        state.data = response_1.result.aggregations;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.isLoading = false;
                        state.error = error_1;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamTrends.prototype, "fetchMentionStremTrendsRequest", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MentionStreamTrends.prototype, "fetchMentionStremTrends", null);
    MentionStreamTrends = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('MentionStreamTrends')
    ], MentionStreamTrends);
    return MentionStreamTrends;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var mentionStreamTrendsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(MentionStreamTrends);


/***/ }),

/***/ "Jpep":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  v: () => (/* binding */ metaDataModel)
});

// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
;// CONCATENATED MODULE: ./src/models/state/MetaData.ts
var FEEDBACK_LOOP_FEATURES = [
    'systemTags',
    'aspects',
    'subjects',
    'imageBrands',
    'imageColors',
    'imageObjects',
    'imagePeople',
    'imageScenes',
    'imageActivities',
    'imageContentSensitivity',
    'imageType',
    'imageSubtype'
];

// EXTERNAL MODULE: ./src/models/filters/Facet.ts
var Facet = __webpack_require__("SvIo");
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var selectors = __webpack_require__("Qyqr");
// EXTERNAL MODULE: ./src/state/metaData/selectors.ts
var metaData_selectors = __webpack_require__("UhQz");
;// CONCATENATED MODULE: ./src/state/metaData/model.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */







var MetaData = /** @class */ (function (_super) {
    __extends(MetaData, _super);
    function MetaData() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            aspects: {
                list: {},
                loading: false,
                loaded: false,
                error: null,
            },
            feedbackLoopFeatures: null,
        };
        return _this;
    }
    MetaData.prototype.fetchAspects = function () {
        var aspects_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.aspects.loading = true;
                    });
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.metaData.getAspects)];
                case 1:
                    aspects_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.aspects.loading = false;
                        state.aspects.loaded = true;
                        state.aspects.list = aspects_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.aspects.loading = false;
                        state.aspects.error = error_1;
                        state.aspects.loaded = true;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    MetaData.prototype.fetchFeedbackLoopFeatures = function () {
        var themeId, aspectsLoaded, aspects, query, res, facets, feedbackLoopFeatures;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getCurrentThemeId */.Md)];
                case 1:
                    themeId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(metaData_selectors/* isAspectsListLoaded */.pR)];
                case 2:
                    aspectsLoaded = _a.sent();
                    if (!!aspectsLoaded) return [3 /*break*/, 4];
                    return [4 /*yield*/, this.fetchAspects()];
                case 3:
                    _a.sent();
                    _a.label = 4;
                case 4: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(metaData_selectors/* getAspectsList */.o$)];
                case 5:
                    aspects = _a.sent();
                    query = Facet/* Facet */.s.buildFacetQueryWithoutFilter();
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchStatsNew, {
                            themeId: themeId,
                            filter: query.filter,
                            config: query.config,
                        })];
                case 6:
                    res = _a.sent();
                    facets = res.result.aggregations;
                    feedbackLoopFeatures = {};
                    FEEDBACK_LOOP_FEATURES.forEach(function (f) {
                        var _a, _b;
                        if (f === 'aspects') {
                            feedbackLoopFeatures[f] = [];
                            Object.values(aspects).forEach(function (a) {
                                feedbackLoopFeatures[f].push(a === null || a === void 0 ? void 0 : a.negative);
                                feedbackLoopFeatures[f].push(a === null || a === void 0 ? void 0 : a.positive);
                                feedbackLoopFeatures[f].push(a === null || a === void 0 ? void 0 : a.neutral);
                            });
                            return;
                        }
                        var values = (_b = (_a = facets[f]) === null || _a === void 0 ? void 0 : _a.values) === null || _b === void 0 ? void 0 : _b.map(function (v) { return v === null || v === void 0 ? void 0 : v.key; });
                        feedbackLoopFeatures[f] = values || [];
                    });
                    this.updateWithImmer(function (state) {
                        state.feedbackLoopFeatures = feedbackLoopFeatures;
                    });
                    return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MetaData.prototype, "fetchAspects", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], MetaData.prototype, "fetchFeedbackLoopFeatures", null);
    MetaData = __decorate([
        (0,pixieDust/* namespace */.MF)('MetaData')
    ], MetaData);
    return MetaData;
}(pixieDust/* StateModel */.Nd));
var metaDataModel = (0,pixieDust/* pixieDust */.kJ)(MetaData);


/***/ }),

/***/ "UhQz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   MQ: () => (/* binding */ isAspectsListLoading),
/* harmony export */   n8: () => (/* binding */ feedbackLoopFeatures),
/* harmony export */   o$: () => (/* binding */ getAspectsList),
/* harmony export */   pR: () => (/* binding */ isAspectsListLoaded)
/* harmony export */ });
var getAspectsList = function (state) { return state.metaData.aspects.list; };
var isAspectsListLoading = function (state) { return state.metaData.aspects.loading; };
var isAspectsListLoaded = function (state) { return state.metaData.aspects.loaded; };
var feedbackLoopFeatures = function (state) { return state.metaData.feedbackLoopFeatures; };


/***/ }),

/***/ "DuoS":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   AS: () => (/* reexport safe */ redux_modal__WEBPACK_IMPORTED_MODULE_0__.jD),
/* harmony export */   to: () => (/* reexport safe */ redux_modal__WEBPACK_IMPORTED_MODULE_0__.WU)
/* harmony export */ });
/* harmony import */ var redux_modal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("R9/U");






/***/ }),

/***/ "MOpq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   C: () => (/* binding */ NotificationsModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var models_Authorization__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("XSTB");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};




var Notifications = /** @class */ (function (_super) {
    __extends(Notifications, _super);
    function Notifications() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            loading: false,
            notificationSettings: {
                authorizations: [],
                authorizationRequire: models_Authorization__WEBPACK_IMPORTED_MODULE_3__/* .AuthorizationRequireType */ .Fg.NotRequire,
            },
            error: null,
        };
        return _this;
    }
    Notifications.prototype.fetchNotificationSettings = function () {
        var response_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.notifications.getNotificationSettings)];
                case 1:
                    response_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.loading = false;
                        state.notificationSettings = response_1.notificationSettings;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.loading = false;
                        state.notificationSettings = null;
                        state.error = error_1;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Notifications.prototype.hideAuthorizationNotification = function () {
        var error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.notifications.hideAuthorizationNotification)];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, this.fetchNotificationSettings()];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_2 = _a.sent();
                    console.error(error_2);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Notifications.prototype.hideAuthorizationExpirationNotification = function (_a) {
        var error_3;
        var authorizationId = _a.authorizationId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.notifications.hideAuthorizationExpirationNotification, { authorizationId: authorizationId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchNotificationSettings()];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Notifications.prototype.muteAuthorizationExpirationNotification = function (_a) {
        var error_4;
        var authorizationId = _a.authorizationId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.notifications.muteAuthorizationExpirationNotification, { authorizationId: authorizationId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchNotificationSettings()];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_4 = _b.sent();
                    console.error(error_4);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Notifications.prototype, "fetchNotificationSettings", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Notifications.prototype, "hideAuthorizationNotification", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Notifications.prototype, "hideAuthorizationExpirationNotification", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Notifications.prototype, "muteAuthorizationExpirationNotification", null);
    Notifications = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('Notifications')
    ], Notifications);
    return Notifications;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var NotificationsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(Notifications);


/***/ }),

/***/ "IH55":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Em: () => (/* binding */ request),
/* harmony export */   MF: () => (/* binding */ namespace),
/* harmony export */   Nd: () => (/* binding */ StateModel),
/* harmony export */   QZ: () => (/* binding */ effect),
/* harmony export */   kJ: () => (/* binding */ pixieDust),
/* harmony export */   wv: () => (/* binding */ useDirectUpdate)
/* harmony export */ });
/* unused harmony exports withImmer, withImmutable, withMutable, Model, OperationContext, Action, getNamespace, hasNamespace, actionType */
/* harmony import */ var immer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("IHrx");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("2N3d");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/* eslint-disable no-shadow,array-callback-return,@typescript-eslint/ban-types,redux-saga/no-unhandled-errors,func-names,dot-notation */




var effectMetadataKey = Symbol('effect');
function effect(takeLatest) {
    return Reflect.metadata(effectMetadataKey, { takeLatest: takeLatest });
}
function getEffect(target, propertyKey) {
    return Reflect.getMetadata(effectMetadataKey, target, propertyKey);
}
function isEffect(target, propertyKey) {
    return getEffect(target, propertyKey) !== undefined;
}
var DIRECT_UPDATE_STATE = 'DIRECT_UPDATE_STATE';
var SUCCESS_EFFECT = 'SUCCESS';
var withImmer = function (change) { return function (state) {
    var immutable = utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.isImmutable(state);
    var prepared = immutable ? state.toJS() : state;
    var changed = (0,immer__WEBPACK_IMPORTED_MODULE_3__/* .produce */ .jM)(prepared, change);
    return immutable ? (0,immutable__WEBPACK_IMPORTED_MODULE_0__.fromJS)(changed) : changed;
}; };
var withImmutable = function (change) { return function (state) {
    var immutable = utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.isImmutable(state);
    var prepared = (0,immutable__WEBPACK_IMPORTED_MODULE_0__.fromJS)(state);
    var changed = change(prepared);
    return immutable ? changed : changed.toJS();
}; };
var withMutable = function (change) { return function (state) {
    var isImmutable = utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.isImmutable(state);
    var isMutable = utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.isMutable(state);
    if (isMutable) {
        change(state);
        return utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.from(state);
    }
    var prepared = isImmutable ? state.toJS() : state;
    var mutable = utils_Mutable__WEBPACK_IMPORTED_MODULE_2__/* .Mutable */ .rV.from(prepared);
    change(mutable);
    return isImmutable ? mutable.toImmutable() : mutable.toJS();
}; };
var useDirectUpdate = function (fn) {
    return function (state, action) {
        if (action.type.endsWith(".".concat(DIRECT_UPDATE_STATE))) {
            return action.state;
        }
        return fn(state, action);
    };
};
var Model = /** @class */ (function () {
    function Model() {
    }
    return Model;
}());

var OperationContext = /** @class */ (function () {
    function OperationContext() {
    }
    return OperationContext;
}());

var StateModel = /** @class */ (function () {
    function StateModel() {
        var _this = this;
        this.updateWithImmer = function (change) { return _this.update(withImmer(change)); };
        this.updateWithImmutable = function (change) { return _this.update(withImmutable(change)); };
        this.updateWithMutable = function (change) { return _this.update(withMutable(change)); };
        this.update = function (change) {
            var _a;
            var actionType = (_a = _this.ctx) === null || _a === void 0 ? void 0 : _a.actionType;
            var store = _this.store.getState();
            var updated = (0,immer__WEBPACK_IMPORTED_MODULE_3__/* .produce */ .jM)(store, function (draft) {
                var slice = _this.getState(draft);
                _this.setState(draft, change(slice));
            });
            _this.store.dispatch({ type: "".concat(actionType, ".").concat(DIRECT_UPDATE_STATE), state: updated });
        };
        this.putSuccessAction = function () {
            _this.store.dispatch({ type: "".concat(_this.ctx.actionType, ".").concat(SUCCESS_EFFECT) });
        };
        this.connect = function (store, path) {
            var getState = function (store) { return (path ? store[path] : store); };
            var setState = function (store, state) {
                if (path)
                    store[path] = state;
                else
                    Object.assign(store, state);
            };
            return _this.connectState(store, getState, setState);
        };
        this.connectState = function (store, getState, setState) {
            _this.store = store;
            _this.getState = getState;
            _this.setState = setState;
            var sagas = _this.getSagas();
            return function () {
                return __generator(this, function (_a) {
                    switch (_a.label) {
                        case 0: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(sagas)];
                        case 1:
                            _a.sent();
                            return [2 /*return*/];
                    }
                });
            };
        };
        this.getSagas = function () {
            var createSaga = function (host, type, _a) {
                var propertyKey = _a.propertyKey, actionType = _a.actionType, effect = _a.effect;
                function createInstance() {
                    var ModelType = host['ModelType'];
                    var instance = new ModelType();
                    instance.store = host.store;
                    instance.getState = host.getState;
                    instance.setState = host.setState;
                    return instance;
                }
                var invoker = function (action) {
                    var ctx, instance, target;
                    return __generator(this, function (_a) {
                        switch (_a.label) {
                            case 0:
                                ctx = new OperationContext();
                                ctx.actionType = actionType;
                                instance = createInstance();
                                instance.ctx = ctx;
                                target = instance[propertyKey].bind(instance);
                                return [4 /*yield*/, redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1.apply(void 0, __spreadArray([target], __read(action.payload), false))];
                            case 1: return [2 /*return*/, _a.sent()];
                        }
                    });
                };
                return effect(type, invoker);
            };
            var effects = _this.getEffects();
            return Object.keys(effects).map(function (type) { return createSaga(_this, type, effects[type]); });
        };
        this.getEffects = function () {
            return hasNamespace(_this) ? _this.collectEffects() : {};
        };
        this.collectEffects = function () {
            var namespace = getNamespace(_this);
            return __assign(__assign({}, StateModel.getEffects(_this, namespace)), StateModel.getEffects(Object.getPrototypeOf(_this), namespace));
        };
    }
    Object.defineProperty(StateModel.prototype, "self", {
        get: function () {
            return this;
        },
        enumerable: false,
        configurable: true
    });
    StateModel.getEffects = function (obj, namespace) {
        return Object.keys(obj)
            .filter(function (x) { return typeof obj[x] === 'function' && isEffect(obj, x); })
            .reduce(function (accum, x) {
            var _a;
            return (__assign(__assign({}, accum), (_a = {}, _a[actionTypeOf(namespace, obj, x)] = {
                propertyKey: x,
                actionType: actionTypeOf(namespace, obj, x),
                effect: getEffect(obj, x).isLatest ? redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .takeLatest */ .p8 : redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .takeEvery */ .jP,
            }, _a)));
        }, {});
    };
    StateModel.prototype.getStateUpdaterWithMutable = function (stateKey) {
        var _this = this;
        return function (props) {
            _this.updateStateWithMutable(stateKey, props);
        };
    };
    StateModel.prototype.updateStateWithMutable = function (stateKey, props) {
        this.updateWithMutable(function (state) {
            Object.entries(props).forEach(function (_a) {
                var _b = __read(_a, 2), key = _b[0], value = _b[1];
                state[stateKey][key] = value;
            });
        });
    };
    return StateModel;
}());

var namespaceMetadataKey = Symbol('namespace');
var Action = /** @class */ (function () {
    function Action(payload, type) {
        this.type = '';
        this.type = type || '';
        this.payload = payload;
    }
    return Action;
}());

var namespaces = [];
function namespace(id) {
    return function (constructor) {
        if (namespaces.includes(id)) {
            throw Error("Duplicated namespace ".concat(id));
        }
        namespaces.push(id);
        constructor[namespaceMetadataKey] = id;
    };
}
function getNamespace(obj) {
    var ctor = Object.getPrototypeOf(obj).constructor;
    return ctor[namespaceMetadataKey];
}
function hasNamespace(obj) {
    return getNamespace(obj) !== undefined;
}
function actionTypeOf(namespace, obj, propertyKey) {
    if (!namespace) {
        throw Error("Action creator ".concat(obj.constructor.name, " should have the namespace"));
    }
    return "".concat(namespace, ".").concat(propertyKey);
}
function actionType(obj, propertyKey) {
    var namespace = getNamespace(obj);
    return actionTypeOf(namespace, obj, propertyKey);
}
function request(fn) {
    var _i, _a, entities, rest;
    var params = [];
    for (_i = 1; _i < arguments.length; _i++) {
        params[_i - 1] = arguments[_i];
    }
    return __generator(this, function (_b) {
        switch (_b.label) {
            case 0: return [4 /*yield*/, redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1.apply(void 0, __spreadArray([fn], __read(params), false))];
            case 1:
                _a = _b.sent(), entities = _a.entities, rest = __rest(_a, ["entities"]);
                if (!entities) return [3 /*break*/, 3];
                return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)({
                        type: 'UPDATE_ENTITIES',
                        entities: entities,
                    })];
            case 2:
                _b.sent();
                _b.label = 3;
            case 3: return [2 /*return*/, __assign({}, rest)];
        }
    });
}
function pixieDust(ModelType) {
    var obj = new ModelType();
    obj['ModelType'] = ModelType;
    obj['action'] = new Proxy({}, {
        get: function (target, propertyKey) {
            var action = actionType(obj, propertyKey);
            var actionFunc = function () {
                var args = [];
                for (var _i = 0; _i < arguments.length; _i++) {
                    args[_i] = arguments[_i];
                }
                return {
                    type: action,
                    payload: args,
                    method: true,
                };
            };
            actionFunc.successAction = "".concat(action, ".").concat(SUCCESS_EFFECT);
            return actionFunc;
        },
    });
    return obj;
}


/***/ }),

/***/ "AwTm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   f: () => (/* binding */ publicPagesModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var state_publicPages_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ufcu");
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("872o");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("IihT");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */




var PublicPages = /** @class */ (function (_super) {
    __extends(PublicPages, _super);
    function PublicPages() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    PublicPages.prototype.changeLocaleFromQuery = function () {
        var queryLocale, isLocaleUpdated, err_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Lt)(state_publicPages_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQueryLocale */ .l)];
                case 1:
                    queryLocale = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Lt)(state_publicPages_selectors__WEBPACK_IMPORTED_MODULE_1__/* .isLocaleCorrect */ .b)];
                case 2:
                    isLocaleUpdated = _a.sent();
                    if (!isLocaleUpdated && queryLocale) {
                        (0,i18n__WEBPACK_IMPORTED_MODULE_2__/* .changeLocale */ .pL)(queryLocale);
                    }
                    return [3 /*break*/, 4];
                case 3:
                    err_1 = _a.sent();
                    console.error(err_1);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], PublicPages.prototype, "changeLocaleFromQuery", null);
    PublicPages = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('PublicPages')
    ], PublicPages);
    return PublicPages;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var publicPagesModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(PublicPages);


/***/ }),

/***/ "ufcu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   b: () => (/* binding */ isLocaleCorrect),
/* harmony export */   l: () => (/* binding */ getQueryLocale)
/* harmony export */ });
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("XFM9");
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("872o");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KG/6");
/* harmony import */ var utils_localization__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("Q/k7");




var getQueryLocale = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return (0,utils_localization__WEBPACK_IMPORTED_MODULE_2__/* .convertLanguageToLocale */ .h)(query === null || query === void 0 ? void 0 : query.language); });
var isLocaleCorrect = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getQueryLocale, i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK, function (queryLocale, currentLocale) { return (queryLocale ? queryLocale === currentLocale : true); });


/***/ }),

/***/ "OD1R":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   P: () => (/* binding */ reportsModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("0Zyk");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("Qyqr");
/* harmony import */ var state_reports_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("m2yq");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */






var Reports = /** @class */ (function (_super) {
    __extends(Reports, _super);
    function Reports() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            list: {
                ids: [],
                loading: true,
                error: null,
                total: null,
                page: null,
            },
            create: {
                isScheduling: false,
                isScheduled: false,
                error: null,
            },
        };
        return _this;
    }
    Reports.prototype.createReport = function (_a) {
        var filter, themeId, error_1;
        var reportType = _a.reportType, reportFormat = _a.reportFormat;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.create.isScheduling = true;
                        state.create.isScheduled = false;
                        state.create.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getThemeFilter */ .Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 2:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.reports.create, {
                            filter: filter,
                            themeId: themeId,
                            reportType: reportType,
                            reportFormat: reportFormat,
                        })];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.create.isScheduling = false;
                        state.create.isScheduled = true;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.create.isScheduling = false;
                        state.create.error = error_1;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Reports.prototype.clearCreateReportState = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.create.isScheduling = false;
                state.create.isScheduled = false;
                state.create.error = null;
            });
            return [2 /*return*/];
        });
    };
    Reports.prototype.fetchReports = function (_a) {
        var currentPage, page_1, params, response_1, error_2;
        var themeId = _a.themeId, more = _a.more;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    if (!more) {
                        this.updateWithImmer(function (state) {
                            state.list.ids = [];
                            state.list.loading = true;
                            state.list.error = null;
                        });
                    }
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_reports_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getReportsPage */ .jr)];
                case 1:
                    currentPage = _b.sent();
                    page_1 = more ? currentPage + 1 : 1;
                    params = {
                        themeId: themeId,
                        perPage: 100,
                        page: page_1,
                    };
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.reports.list, __assign({}, params))];
                case 2:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.total = response_1.result.total;
                        state.list.page = page_1;
                        state.list.ids = page_1 === 1
                            ? response_1.result.reports.map(Number)
                            : state.list.ids.concat(response_1.result.reports.map(Number));
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .fork */ .Zy)(this.pollReports.bind(this), { params: params })];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.error = error_2;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Reports.prototype.pollReports = function (_a) {
        var ids, err_1;
        var params = _a.params;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 8, , 9]);
                    _b.label = 1;
                case 1:
                    if (false) {}
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_reports_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getReportsInProgressIds */ .yA)];
                case 2:
                    ids = _b.sent();
                    if (!ids.length) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .delay */ .cb)(2000)];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.reports.list, __assign({}, params))];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5: return [3 /*break*/, 7];
                case 6: return [3 /*break*/, 1];
                case 7: return [3 /*break*/, 9];
                case 8:
                    err_1 = _b.sent();
                    console.error(err_1);
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Reports.prototype, "createReport", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Reports.prototype, "clearCreateReportState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Reports.prototype, "fetchReports", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Reports.prototype, "pollReports", null);
    Reports = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('Reports')
    ], Reports);
    return Reports;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var reportsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(Reports);


/***/ }),

/***/ "m2yq":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   C$: () => (/* binding */ isReportScheduled),
/* harmony export */   Ii: () => (/* binding */ getIsReportsLoading),
/* harmony export */   Q4: () => (/* binding */ getReports),
/* harmony export */   eS: () => (/* binding */ isReportSchedulingFailed),
/* harmony export */   jr: () => (/* binding */ getReportsPage),
/* harmony export */   tQ: () => (/* binding */ hasMoreReports),
/* harmony export */   yA: () => (/* binding */ getReportsInProgressIds)
/* harmony export */ });
/* unused harmony exports getReportIds, getReportSchedulingError */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");
/* eslint  arrow-body-style: 0 */
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};


var getReportIds = function (state) { return state.reports.list.ids; };
var getIsReportsLoading = function (state) { return state.reports.list.loading; };
var hasMoreReports = function (state) {
    return state.reports.list.total > state.reports.list.ids.length;
};
var getReportsPage = function (state) { return state.reports.list.page; };
var getReports = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getReportEntities */ .u1, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, getReportIds, function (entities, users, ids) { return ids.map(function (id) {
    var entity = entities[id] || {};
    return __assign(__assign({}, entity), { user: users[entity.userId] });
}); });
var getReportsInProgressIds = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getReports, function (reports) { return reports.filter(function (report) { return report.status !== 'generated'; }).map(function (report) { return report.id; }); });
var isReportScheduled = function (state) { return state.reports.create.isScheduled; };
var getReportSchedulingError = function (state) { return state.reports.create.error; };
var isReportSchedulingFailed = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getReportSchedulingError, function (error) { return Boolean(error); });


/***/ }),

/***/ "GEn5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  z: () => (/* binding */ createAggregationSaga),
  A: () => (/* binding */ rootSaga)
});

// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/state/billing/model.ts
var model = __webpack_require__("85AV");
// EXTERNAL MODULE: ./src/state/analytics/sagas.js + 1 modules
var sagas = __webpack_require__("n8kL");
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/routing/selectors.ts
var selectors = __webpack_require__("KG/6");
// EXTERNAL MODULE: ./src/utils/dates/dateFilterFormat.js
var dateFilterFormat = __webpack_require__("LYLD");
// EXTERNAL MODULE: ./src/utils/intercom.js
var intercom = __webpack_require__("ah7T");
// EXTERNAL MODULE: ./src/utils/sessionStorage.js
var sessionStorage = __webpack_require__("S6iU");
// EXTERNAL MODULE: ./src/state/stateRouter.ts
var stateRouter = __webpack_require__("tu5+");
;// CONCATENATED MODULE: ./src/state/routing/sagas.ts
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};








function onChangeLocation(newLocation) {
    var _a = newLocation.payload || {}, pathname = _a.pathname, query = _a.query;
    if (pathname && query) {
        var location_1 = (0,sessionStorage/* getItemFromSessionStorage */.lw)(sessionStorage/* AVAILABLE_SESSION_STORAGE_KEYS */.Ec.LOCATION);
        if (location_1) {
            (0,sessionStorage/* saveItemToSessionStorage */.Lo)(sessionStorage/* AVAILABLE_SESSION_STORAGE_KEYS */.Ec.PREVIOUS_LOCATION, location_1);
        }
        (0,sessionStorage/* saveItemToSessionStorage */.Lo)(sessionStorage/* AVAILABLE_SESSION_STORAGE_KEYS */.Ec.LOCATION, { pathname: pathname, query: query });
    }
}
function updateLocation(newLocation) {
    var prevQuery, prevPathname, prevState, error_1;
    return __generator(this, function (_a) {
        switch (_a.label) {
            case 0:
                _a.trys.push([0, 5, , 6]);
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getQuery */.$Z)];
            case 1:
                prevQuery = _a.sent();
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getPathname */.Hm)];
            case 2:
                prevPathname = _a.sent();
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getRoutingState */.wh)];
            case 3:
                prevState = _a.sent();
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* push */.VC)({
                        pathname: newLocation.pathname || prevPathname,
                        search: "?".concat((0,dateFilterFormat/* stringifyQuery */._b)(__assign(__assign({}, prevQuery), newLocation.query))),
                        state: newLocation.state || prevState,
                    }))];
            case 4:
                _a.sent();
                return [3 /*break*/, 6];
            case 5:
                error_1 = _a.sent();
                console.error(error_1);
                return [3 /*break*/, 6];
            case 6: return [2 /*return*/];
        }
    });
}
function replaceLocation(newLocation) {
    var error_2;
    return __generator(this, function (_a) {
        switch (_a.label) {
            case 0:
                _a.trys.push([0, 2, , 3]);
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,stateRouter/* routerReplace */.eq)({
                        pathname: newLocation.pathname,
                        search: "?".concat((0,dateFilterFormat/* stringifyQuery */._b)(newLocation.query)),
                        state: newLocation.state,
                    }))];
            case 1:
                _a.sent();
                if (newLocation.state && newLocation.state.productTourId) {
                    (0,intercom/* startProductTour */.YD)(newLocation.state.productTourId);
                }
                return [3 /*break*/, 3];
            case 2:
                error_2 = _a.sent();
                console.error(error_2);
                return [3 /*break*/, 3];
            case 3: return [2 /*return*/];
        }
    });
}
function updateSearch(newLocation) {
    var prevPathname, prevState, error_3;
    return __generator(this, function (_a) {
        switch (_a.label) {
            case 0:
                _a.trys.push([0, 4, , 5]);
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getPathname */.Hm)];
            case 1:
                prevPathname = _a.sent();
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getRoutingState */.wh)];
            case 2:
                prevState = _a.sent();
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* push */.VC)({
                        pathname: newLocation.pathname || prevPathname,
                        search: "?".concat(newLocation.search),
                        state: newLocation.state || prevState,
                    }))];
            case 3:
                _a.sent();
                return [3 /*break*/, 5];
            case 4:
                error_3 = _a.sent();
                console.error(error_3);
                return [3 /*break*/, 5];
            case 5: return [2 /*return*/];
        }
    });
}
function replaceSearch(newLocation) {
    var error_4;
    return __generator(this, function (_a) {
        switch (_a.label) {
            case 0:
                _a.trys.push([0, 2, , 3]);
                return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,stateRouter/* routerReplace */.eq)({
                        pathname: newLocation.pathname,
                        search: "?".concat(newLocation.search),
                    }))];
            case 1:
                _a.sent();
                return [3 /*break*/, 3];
            case 2:
                error_4 = _a.sent();
                console.error(error_4);
                return [3 /*break*/, 3];
            case 3: return [2 /*return*/];
        }
    });
}
/* harmony default export */ const routing_sagas = (createAggregationSaga([redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, stateRouter/* ROUTER_LOCATION_CHANGE */.Bb, onChangeLocation], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, actions/* types */.gK.UPDATE_LOCATION, updateLocation], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, actions/* types */.gK.REPLACE_LOCATION, replaceLocation], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, actions/* types */.gK.UPDATE_SEARCH, updateSearch], [redux_saga_effects_npm_proxy_esm/* takeEvery */.jP, actions/* types */.gK.REPLACE_SEARCH, replaceSearch]));

// EXTERNAL MODULE: ./src/state/insightsCopilot/model.ts
var insightsCopilot_model = __webpack_require__("HH70");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var analytics_model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./src/state/authors/model.ts
var authors_model = __webpack_require__("azyO");
// EXTERNAL MODULE: ./src/state/channels/model.ts
var channels_model = __webpack_require__("iSPL");
// EXTERNAL MODULE: ./src/state/currentUser/model.ts
var currentUser_model = __webpack_require__("cGQa");
// EXTERNAL MODULE: ./src/state/customDashboards/model.ts
var customDashboards_model = __webpack_require__("D6/I");
// EXTERNAL MODULE: ./src/state/filter/model.ts
var filter_model = __webpack_require__("xvzv");
// EXTERNAL MODULE: ./src/state/gallery/model.ts
var gallery_model = __webpack_require__("OwkF");
// EXTERNAL MODULE: ./src/state/hubEvents/model.ts
var hubEvents_model = __webpack_require__("zgQp");
// EXTERNAL MODULE: ./src/state/integrations/model.ts
var integrations_model = __webpack_require__("mBdu");
// EXTERNAL MODULE: ./src/state/metaData/model.ts + 1 modules
var metaData_model = __webpack_require__("Jpep");
// EXTERNAL MODULE: ./src/state/reports/model.ts
var reports_model = __webpack_require__("OD1R");
// EXTERNAL MODULE: ./src/state/search/model.ts
var search_model = __webpack_require__("0uct");
// EXTERNAL MODULE: ./src/state/session/model.ts + 1 modules
var session_model = __webpack_require__("V7KL");
// EXTERNAL MODULE: ./src/state/settings/model.ts
var settings_model = __webpack_require__("C0Rk");
// EXTERNAL MODULE: ./src/state/sources/model.ts
var sources_model = __webpack_require__("kJVi");
// EXTERNAL MODULE: ./src/state/tasks/model.ts
var tasks_model = __webpack_require__("612L");
// EXTERNAL MODULE: ./src/state/topicsComparison/model.ts
var topicsComparison_model = __webpack_require__("bque");
// EXTERNAL MODULE: ./src/state/users/model.ts
var users_model = __webpack_require__("lWdd");
// EXTERNAL MODULE: ./src/state/socialSearch/model.ts
var socialSearch_model = __webpack_require__("VSkm");
// EXTERNAL MODULE: ./src/state/dashboard/model.ts
var dashboard_model = __webpack_require__("EHNt");
// EXTERNAL MODULE: ./src/state/conversationalInsights/model.ts
var conversationalInsights_model = __webpack_require__("vuoO");
// EXTERNAL MODULE: ./src/state/imagesDashboard/model.ts
var imagesDashboard_model = __webpack_require__("PLo1");
// EXTERNAL MODULE: ./src/state/themes/model.ts
var themes_model = __webpack_require__("JJJ0");
// EXTERNAL MODULE: ./src/state/account/model.ts
var account_model = __webpack_require__("RHZg");
// EXTERNAL MODULE: ./src/state/rules/model.ts
var rules_model = __webpack_require__("BKff");
// EXTERNAL MODULE: ./src/state/tags/model.ts
var tags_model = __webpack_require__("uIUj");
// EXTERNAL MODULE: ./src/state/stats/model.ts + 2 modules
var stats_model = __webpack_require__("Gku9");
// EXTERNAL MODULE: ./src/state/mentionStream/newCount/model.ts
var newCount_model = __webpack_require__("+qv3");
// EXTERNAL MODULE: ./src/state/mentionStream/selected/model.ts
var selected_model = __webpack_require__("gP3j");
// EXTERNAL MODULE: ./src/state/mentionStream/commands/model.ts + 1 modules
var commands_model = __webpack_require__("iA1B");
// EXTERNAL MODULE: ./src/state/mentionStream/trends/model.ts
var trends_model = __webpack_require__("gw28");
// EXTERNAL MODULE: ./src/state/mentionStream/model.ts
var mentionStream_model = __webpack_require__("cpfI");
// EXTERNAL MODULE: ./src/state/entities-new/ui/model.ts + 1 modules
var ui_model = __webpack_require__("eTBD");
// EXTERNAL MODULE: ./src/state/publicPages/model.ts
var publicPages_model = __webpack_require__("AwTm");
// EXTERNAL MODULE: ./src/state/notifications/model.ts
var notifications_model = __webpack_require__("MOpq");
;// CONCATENATED MODULE: ./src/state/rootSaga.ts
/* eslint func-names: 0 */
var rootSaga_generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};








































function createAggregationSaga() {
    var effects = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        effects[_i] = arguments[_i];
    }
    return function () {
        var error_1;
        return rootSaga_generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* all */.Q7)(effects.map(function (effect) {
                            var _a = __read(effect), helper = _a[0], args = _a.slice(1);
                            return helper.apply(void 0, __spreadArray([], __read(args), false));
                        }))];
                case 1:
                    _a.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _a.sent();
                    console.error('An error has occurred in aggregation saga', error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
}
var aggregationSaga = function (store) {
    return createAggregationSaga([redux_saga_effects_npm_proxy_esm/* fork */.Zy, ui_model/* uiEntitiesModel */.P.connect(store, 'uiEntities')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, account_model/* accountModel */.h.connect(store, 'account')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, insightsCopilot_model/* insightsCopilotStateModel */.e.connect(store, 'insightsCopilot')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, model/* billingModel */.X.connect(store, 'billing')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, analytics_model/* analyticsStateModel */.j.connect(store)], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, sagas/* default */.Ay], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, authors_model/* authorsModel */.g.connect(store, 'authors')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, channels_model/* channelsModel */.S.connect(store, 'channels')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, currentUser_model/* currentUserStateModel */.b.connect(store, 'currentUser')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, customDashboards_model/* customDashboardsModel */.i.connect(store, 'customDashboards')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, dashboard_model/* dashboardModel */._.connect(store, 'dashboard')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, conversationalInsights_model/* conversationalInsightsModel */.h.connect(store, 'conversationalInsights')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, imagesDashboard_model/* imagesDashboardModel */.c.connect(store, 'imagesDashboard')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, filter_model/* filterModel */.W.connect(store, 'filter')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, gallery_model/* galleryModel */.k.connect(store, 'gallery')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, hubEvents_model/* hubEventsModel */.m.connect(store, 'hubEvents')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, integrations_model/* integrationsModel */.F.connect(store, 'integrations')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, commands_model/* mentionStreamCommandsModel */.a.connect(store, 'mentionStreamCommands')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, newCount_model/* mentionStreamCountModel */.B.connect(store, 'mentionStreamCount')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, selected_model/* mentionStreamSelectedModel */.n.connect(store, 'mentionStreamSelected')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, trends_model/* mentionStreamTrendsModel */.o.connect(store, 'mentionStreamTrends')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, mentionStream_model/* mentionStreamModel */.K.connect(store, 'mentionStream')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, metaData_model/* metaDataModel */.v.connect(store, 'metaData')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, publicPages_model/* publicPagesModel */.f.connect(store, 'publicPages')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, reports_model/* reportsModel */.P.connect(store, 'reports')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, routing_sagas], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, rules_model/* rulesModel */.h.connect(store, 'rules')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, search_model/* searchModel */.I.connect(store, 'search')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, session_model/* sessionModel */.S.connect(store, 'session')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, settings_model/* settingsModel */.N.connect(store, 'settings')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, sources_model/* sourcesModel */.o.connect(store, 'sources')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, stats_model/* statsModel */.l.connect(store, 'stats')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, tags_model/* tagsModel */.J.connect(store, 'tags')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, tasks_model/* tasksModel */.o.connect(store, 'tasks')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, themes_model/* themesModel */.i.connect(store, 'themes')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, topicsComparison_model/* topicComparisonModel */.M.connect(store, 'topicComparison')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, users_model/* usersModel */.O.connect(store, 'users')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, socialSearch_model/* socialSearchModel */.J.connect(store, 'socialSearch')], [redux_saga_effects_npm_proxy_esm/* fork */.Zy, notifications_model/* NotificationsModel */.C.connect(store, 'notifications')]);
};
/* harmony default export */ const rootSaga = (aggregationSaga);


/***/ }),

/***/ "8W5t":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   HC: () => (/* binding */ replace),
/* harmony export */   VC: () => (/* binding */ push),
/* harmony export */   YX: () => (/* binding */ updateSearch),
/* harmony export */   gK: () => (/* binding */ types),
/* harmony export */   yo: () => (/* binding */ update)
/* harmony export */ });
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("3o2z");
/* harmony import */ var state_stateRouter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("tu5+");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};


var types = __assign(__assign(__assign(__assign(__assign(__assign({}, (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getConstant */ .db)('UPDATE_LOCATION')), (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getConstant */ .db)('REPLACE_LOCATION')), (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getConstant */ .db)('REPLACE_SEARCH')), (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getConstant */ .db)('UPDATE_SEARCH')), (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getConstant */ .db)('REPLACE_SEARCH_FILTER')), (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getConstant */ .db)('SAVE_CURRENT_LOCATION'));
var push = state_stateRouter__WEBPACK_IMPORTED_MODULE_1__/* .routerPush */ .UZ;
var update = (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getAction */ .Th)('UPDATE_LOCATION');
var replace = (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getAction */ .Th)('REPLACE_LOCATION');
var updateSearch = (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .getAction */ .Th)('UPDATE_SEARCH');


/***/ }),

/***/ "KG/6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $Z: () => (/* binding */ getQuery),
/* harmony export */   CN: () => (/* binding */ getPreviousPathname),
/* harmony export */   Hm: () => (/* binding */ getPathname),
/* harmony export */   TK: () => (/* binding */ getSearch),
/* harmony export */   wh: () => (/* binding */ getRoutingState)
/* harmony export */ });
/* unused harmony exports getLocation, getPreviousLocation */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("XFM9");
/* harmony import */ var utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LYLD");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};


var getLocation = function (state) {
    return state.routing.locationBeforeTransitions;
};
var getPreviousLocation = function (state) { return state.routing.previousLocation; };
var getQuery = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getLocation, function (location) { return (0,utils_dates_dateFilterFormat__WEBPACK_IMPORTED_MODULE_0__/* .parseQuery */ .mA)(location === null || location === void 0 ? void 0 : location.search); });
var getSearch = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getLocation, function (location) { return location === null || location === void 0 ? void 0 : location.search; });
(0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getLocation, function (location) {
    var _a;
    return (((_a = location === null || location === void 0 ? void 0 : location.query) === null || _a === void 0 ? void 0 : _a.filterGroups)
        ? location.query.filterGroups.reduce(function (accum, group, key) {
            var _a;
            return (__assign(__assign({}, accum), { filterGroups: __assign(__assign({}, accum.filterGroups), (_a = {}, _a[key] = __assign({}, group), _a)) }));
        }, location.query)
        : location === null || location === void 0 ? void 0 : location.query);
});
var getPathname = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getLocation, function (location) { return location === null || location === void 0 ? void 0 : location.pathname; });
var getPreviousPathname = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getPreviousLocation, function (location) { return location === null || location === void 0 ? void 0 : location.pathname; });
var getRoutingState = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(getLocation, function (location) { return location === null || location === void 0 ? void 0 : location.state; });


/***/ }),

/***/ "BKff":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   h: () => (/* binding */ rulesModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("Qyqr");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("3o2z");
/* harmony import */ var state_themes_model__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("JJJ0");
/* eslint no-param-reassign: 0, func-names: 0, require-yield: 0, generator-star-spacing: 0 */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};






var RulesModel = /** @class */ (function (_super) {
    __extends(RulesModel, _super);
    function RulesModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            list: {
                idsByTopic: {},
                loading: false,
                error: null,
            },
            createRule: {
                id: null,
                creating: false,
                created: false,
                error: null,
            },
        };
        return _this;
    }
    RulesModel.prototype.fetchRules = function () {
        var topicId_1, response_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.list.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId_1 = _a.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.listRules, topicId_1)];
                case 2:
                    response_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.idsByTopic[topicId_1] = response_1.result.rules;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_4__/* .getAction */ .Th)('FETCH_RULES_SUCCESS')())];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.error = error_1;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    RulesModel.prototype.createRule = function (rule) {
        var topicId, response_2, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        state.createRule.creating = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.createRule, topicId, rule)];
                case 2:
                    response_2 = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_themes_model__WEBPACK_IMPORTED_MODULE_5__/* .themesModel */ .i.action.fetchGeneralThemeInfo({ themeId: topicId }))];
                case 3:
                    _a.sent();
                    this.updateWithImmer(function (state) {
                        state.createRule.id = response_2.result;
                        state.createRule.creating = false;
                        state.createRule.created = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_4__/* .getAction */ .Th)('CREATE_RULE_SUCCESS')(rule))];
                case 4:
                    _a.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.createRule.error = error_2;
                        state.createRule.creating = false;
                        state.createRule.created = false;
                    });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    RulesModel.prototype.resetCreateRuleData = function () {
        return __generator(this, function (_a) {
            this.updateWithImmer(function (state) {
                state.createRule.id = null;
                state.createRule.created = false;
                state.createRule.creating = false;
            });
            return [2 /*return*/];
        });
    };
    RulesModel.prototype.deleteRule = function (ruleId) {
        var topicId, error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.deleteRule, topicId, ruleId)];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.fetchRules.bind(this))];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_4__/* .getAction */ .Th)('DELETE_RULE_SUCCESS')())];
                case 4:
                    _a.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_3 = _a.sent();
                    console.error(error_3);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], RulesModel.prototype, "fetchRules", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], RulesModel.prototype, "createRule", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], RulesModel.prototype, "resetCreateRuleData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], RulesModel.prototype, "deleteRule", null);
    RulesModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Rules')
    ], RulesModel);
    return RulesModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var rulesModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(RulesModel);


/***/ }),

/***/ "0uct":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   I: () => (/* binding */ searchModel)
/* harmony export */ });
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("kHEK");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */


var Search = /** @class */ (function (_super) {
    __extends(Search, _super);
    function Search() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            accounts: {
                error: null,
                loading: false,
                suggestions: null,
            },
        };
        return _this;
    }
    Search.prototype.fetchAccountsSuggestions = function (_a) {
        var response_1, error_1;
        var query = _a.query;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accounts.loading = true;
                        state.accounts.error = null;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.account.search, { query: query })];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accounts.loading = false;
                        state.accounts.suggestions = response_1.accounts;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accounts.loading = false;
                        state.accounts.error = error_1;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Search.prototype, "fetchAccountsSuggestions", null);
    Search = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Search')
    ], Search);
    return Search;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var searchModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(Search);


/***/ }),

/***/ "V7KL":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  S: () => (/* binding */ sessionModel)
});

// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./src/state/currentUser/model.ts
var model = __webpack_require__("cGQa");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./src/state/utils.ts
var utils = __webpack_require__("3o2z");
;// CONCATENATED MODULE: ./src/state/actions.js

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }

var types = _objectSpread({}, (0,utils/* getConstant */.db)('RESET_STATE'));
var resetState = (0,utils/* getAction */.Th)(types.RESET_STATE);
// EXTERNAL MODULE: ./src/state/routing/actions.ts
var actions = __webpack_require__("8W5t");
// EXTERNAL MODULE: ./src/state/routing/selectors.ts
var selectors = __webpack_require__("KG/6");
// EXTERNAL MODULE: ./src/state/account/selectors.ts
var account_selectors = __webpack_require__("FFtF");
// EXTERNAL MODULE: ./src/state/themes/utils.ts
var themes_utils = __webpack_require__("UN+n");
// EXTERNAL MODULE: ./src/utils/localStorage.ts
var localStorage = __webpack_require__("S/wQ");
// EXTERNAL MODULE: ./src/utils/sessionStorage.js
var sessionStorage = __webpack_require__("S6iU");
// EXTERNAL MODULE: ./src/utils/analytics.js
var analytics = __webpack_require__("iyim");
// EXTERNAL MODULE: ./src/state/themes/model.ts
var themes_model = __webpack_require__("JJJ0");
// EXTERNAL MODULE: ./src/state/account/model.ts
var account_model = __webpack_require__("RHZg");
;// CONCATENATED MODULE: ./src/state/session/model.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */















var Session = /** @class */ (function (_super) {
    __extends(Session, _super);
    function Session() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            authentication: {
                loggedIn: false,
                loading: false,
                error: null,
            },
            logOn: {
                loggedOn: false,
                loading: false,
                error: null,
            },
            resetPassword: {
                isPasswordReset: false,
                loading: false,
                error: null,
            },
            newPassword: {
                isNewPasswordSet: false,
                loading: false,
                error: null,
            },
            verifyPasswordToken: {
                loading: false,
                loaded: false,
                error: null,
                isTokenExpired: false,
                userLogin: null,
            },
        };
        return _this;
    }
    Session.prototype.logIn = function (credentials) {
        var authResult, _a, userSession, error_1;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 7, , 8]);
                    this.updateWithImmer(function (state) {
                        state.authentication.loggedIn = false;
                        state.authentication.loading = true;
                        state.authentication.error = null;
                    });
                    if (!('username' in credentials)) return [3 /*break*/, 2];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.authenticate, credentials)];
                case 1:
                    _a = _b.sent();
                    return [3 /*break*/, 4];
                case 2: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.authenticateCode, credentials)];
                case 3:
                    _a = _b.sent();
                    _b.label = 4;
                case 4:
                    authResult = _a;
                    userSession = {
                        accessToken: authResult.access_token,
                        tokenType: authResult.token_type,
                    };
                    apiSingleton/* default */.A.apiClient.setAccessToken(userSession);
                    (0,localStorage/* saveSession */.E1)(userSession);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(account_model/* accountModel */.h.action.fetchAccount())];
                case 5:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* currentUserStateModel */.b.action.saveUserBrowserSettings())];
                case 6:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.authentication.loggedIn = true;
                        state.authentication.loading = false;
                        state.authentication.error = null;
                    });
                    return [3 /*break*/, 8];
                case 7:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.authentication.loggedIn = false;
                        state.authentication.loading = false;
                        state.authentication.error = error_1;
                    });
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    Session.prototype.clearAuthenticationData = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.authentication.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Session.prototype.logOn = function (_a) {
        var error_2;
        var themeId = _a.themeId, accountId = _a.accountId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 7]);
                    this.updateWithImmer(function (state) {
                        state.logOn.loading = true;
                        state.logOn.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.impersonate.bind(this), { themeId: themeId, accountId: accountId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(account_model/* accountModel */.h.action.fetchAccount())];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* currentUserStateModel */.b.action.fetchUserProfile())];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* currentUserStateModel */.b.action.saveUserBrowserSettings())];
                case 4:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.logOn.loggedOn = true;
                        state.logOn.loading = false;
                        state.logOn.error = null;
                    });
                    return [3 /*break*/, 7];
                case 5:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.logOn.loggedOn = false;
                        state.logOn.loading = false;
                        state.logOn.error = error_2;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* replace */.HC)({ pathname: '/login' }))];
                case 6:
                    _b.sent();
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    Session.prototype.clearLogOnData = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.logOn.loggedOn = false;
                    state.logOn.loading = false;
                    state.logOn.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Session.prototype.openWithImpersonation = function (_a) {
        var accountId = _a.accountId, pathname = _a.pathname;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.impersonate.bind(this), { themeId: null, accountId: accountId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* replace */.HC)({ pathname: pathname }))];
                case 2:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    /* eslint-disable no-underscore-dangle */
    Session.prototype.impersonate = function (_a) {
        var newAuthData, newUserSession, accountAccess, error_3;
        var themeId = _a.themeId, accountId = _a.accountId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 9, , 11]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.impersonate, { themeId: themeId, accountId: accountId })];
                case 1:
                    newAuthData = _b.sent();
                    newUserSession = {
                        accessToken: newAuthData.access_token,
                        tokenType: newAuthData.token_type,
                    };
                    apiSingleton/* default */.A.apiClient.setAccessToken(newUserSession);
                    (0,localStorage/* saveSession */.E1)(newUserSession);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(account_model/* accountModel */.h.action.fetchAccount())];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* currentUserStateModel */.b.action.fetchUserProfile())];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(account_selectors/* isAccountAccessAllowed */.aL)];
                case 4:
                    accountAccess = _b.sent();
                    if (!accountAccess) return [3 /*break*/, 8];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* clearSession */.q7)];
                case 5:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sessionStorage/* clearSessionStorage */.D6)];
                case 6:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* saveSession */.E1, newUserSession)];
                case 7:
                    _b.sent();
                    _b.label = 8;
                case 8: return [3 /*break*/, 11];
                case 9:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,actions/* replace */.HC)({ pathname: '/login' }))];
                case 10:
                    _b.sent();
                    return [3 /*break*/, 11];
                case 11: return [2 /*return*/];
            }
        });
    };
    /* eslint-enable no-underscore-dangle */
    Session.prototype.resetPassword = function (_a) {
        var error_4;
        var email = _a.email;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.resetPassword.isPasswordReset = false;
                        state.resetPassword.loading = true;
                        state.resetPassword.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.resetPassword, { email: email })];
                case 1:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.resetPassword.isPasswordReset = true;
                        state.resetPassword.loading = false;
                        state.resetPassword.error = null;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.resetPassword.isPasswordReset = false;
                        state.resetPassword.loading = false;
                        state.resetPassword.error = error_4;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Session.prototype.clearResetPasswordData = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.resetPassword.isPasswordReset = false;
                    state.resetPassword.loading = false;
                    state.resetPassword.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Session.prototype.setNewPassword = function (_a) {
        var error_5;
        var password = _a.password, token = _a.token, username = _a.username;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.newPassword.isNewPasswordSet = false;
                        state.newPassword.loading = true;
                        state.newPassword.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.setNewPassword, { password: password, token: token })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(this.logIn.bind(this), { username: username, password: password })];
                case 2:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.newPassword.isNewPasswordSet = true;
                        state.newPassword.loading = false;
                        state.newPassword.error = null;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.newPassword.isNewPasswordSet = false;
                        state.newPassword.loading = false;
                        state.newPassword.error = error_5.response;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Session.prototype.clearNewPasswordData = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.newPassword.isNewPasswordSet = false;
                    state.newPassword.loading = false;
                    state.newPassword.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Session.prototype.verifyPasswordToken = function (_a) {
        var userInfo_1, query, currentUser, error_6;
        var token = _a.token;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.verifyPasswordToken.loading = true;
                        state.verifyPasswordToken.loaded = false;
                        state.verifyPasswordToken.isTokenExpired = false;
                        state.verifyPasswordToken.userLogin = null;
                        state.verifyPasswordToken.error = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.verifyPasswordToken, { token: token })];
                case 1:
                    userInfo_1 = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getQuery */.$Z)];
                case 2:
                    query = _b.sent();
                    currentUser = __assign(__assign({}, userInfo_1), { id: userInfo_1.userId, account: {
                            id: userInfo_1.accountId,
                            name: userInfo_1.accountName,
                            status: userInfo_1.accountStatus,
                        }, settings: { language: query === null || query === void 0 ? void 0 : query.language } });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)((0,utils/* getAction */.Th)('VERIFY_PASSWORD_TOKEN_SUCCESS')({ currentUser: currentUser }))];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.verifyPasswordToken.loading = false;
                        state.verifyPasswordToken.loaded = true;
                        state.verifyPasswordToken.userLogin = userInfo_1.login;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_6 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.verifyPasswordToken.loading = false;
                        state.verifyPasswordToken.loaded = true;
                        state.verifyPasswordToken.isTokenExpired = true;
                        state.verifyPasswordToken.userLogin = null;
                        state.verifyPasswordToken.error = error_6;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Session.prototype.clearVerifyTokenData = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.verifyPasswordToken.loading = false;
                    state.verifyPasswordToken.loaded = false;
                    state.verifyPasswordToken.isTokenExpired = false;
                    state.verifyPasswordToken.userLogin = null;
                    state.verifyPasswordToken.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Session.prototype.restoreSession = function (_a) {
        var storedSession, pathname, _b, themeId, error_7, currentUser, error_8;
        var callback = _a.callback;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 13, , 14]);
                    this.updateWithImmer(function (state) {
                        state.authentication.loggedIn = false;
                        state.authentication.loading = true;
                        state.authentication.error = null;
                    });
                    storedSession = (0,localStorage/* extractSession */.ES)();
                    apiSingleton/* default */.A.apiClient.setAccessToken(storedSession);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.auth.test)];
                case 1:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getPathname */.Hm)];
                case 2:
                    pathname = _c.sent();
                    if (!pathname.match(/themes\/\d+/)) return [3 /*break*/, 9];
                    _b = __read(pathname.match(/themes\/(\d+)/), 2), themeId = _b[1];
                    _c.label = 3;
                case 3:
                    _c.trys.push([3, 5, , 9]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.themes.fetchTheme, { themeId: themeId })];
                case 4:
                    _c.sent();
                    return [3 /*break*/, 9];
                case 5:
                    error_7 = _c.sent();
                    if (!(0,themes_utils/* isThemeAccessDenied */.t)(error_7)) return [3 /*break*/, 8];
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(apiSingleton/* default */.A.users.getCurrentUser)];
                case 6:
                    currentUser = _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(themes_model/* themesModel */.i.themeNotFound, {
                            themeId: themeId,
                            allowed: currentUser.role === 'administrator',
                            sessionRestoring: true,
                        })];
                case 7:
                    _c.sent();
                    _c.label = 8;
                case 8: return [3 /*break*/, 9];
                case 9: return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(account_model/* accountModel */.h.fetchAccount.bind(account_model/* accountModel */.h))];
                case 10:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* currentUserStateModel */.b.action.fetchUserProfile())];
                case 11:
                    _c.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* currentUserStateModel */.b.action.saveUserBrowserSettings())];
                case 12:
                    _c.sent();
                    this.updateWithImmer(function (state) {
                        state.authentication.loggedIn = true;
                        state.authentication.loading = false;
                        state.authentication.error = null;
                    });
                    return [3 /*break*/, 14];
                case 13:
                    error_8 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.authentication.loggedIn = false;
                        state.authentication.loading = false;
                        state.authentication.error = (error_8 === null || error_8 === void 0 ? void 0 : error_8.data) ? error_8 : null;
                    });
                    return [3 /*break*/, 14];
                case 14:
                    // FIXME : Need to find a way to do this without passing callback
                    callback();
                    return [2 /*return*/];
            }
        });
    };
    Session.prototype.logOut = function () {
        var error_9;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(resetState())];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(analytics/* reset */.cL)];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(localStorage/* clearSession */.q7)];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* call */.T1)(sessionStorage/* clearSessionStorage */.D6)];
                case 4:
                    _a.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_9 = _a.sent();
                    console.error(error_9);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "logIn", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "clearAuthenticationData", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "logOn", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "clearLogOnData", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "openWithImpersonation", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "impersonate", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "resetPassword", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "clearResetPasswordData", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "setNewPassword", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "clearNewPasswordData", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "verifyPasswordToken", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "clearVerifyTokenData", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "restoreSession", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Session.prototype, "logOut", null);
    Session = __decorate([
        (0,pixieDust/* namespace */.MF)('Session')
    ], Session);
    return Session;
}(pixieDust/* StateModel */.Nd));
var sessionModel = (0,pixieDust/* pixieDust */.kJ)(Session);


/***/ }),

/***/ "4gVp":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Hb: () => (/* binding */ isPasswordTokenVerified),
/* harmony export */   M3: () => (/* binding */ isLoggedIn),
/* harmony export */   Te: () => (/* binding */ isPasswordReset),
/* harmony export */   V5: () => (/* binding */ isLoggingOn),
/* harmony export */   Yk: () => (/* binding */ getLogInError),
/* harmony export */   _y: () => (/* binding */ isPasswordTokenVerifying),
/* harmony export */   e5: () => (/* binding */ isLoggedOn),
/* harmony export */   ew: () => (/* binding */ getNewPasswordError),
/* harmony export */   i2: () => (/* binding */ isNewPasswordSet),
/* harmony export */   mA: () => (/* binding */ isNewPasswordSetting),
/* harmony export */   ml: () => (/* binding */ getLogInErrorData),
/* harmony export */   pP: () => (/* binding */ isPasswordResetting),
/* harmony export */   sY: () => (/* binding */ isPasswordTokenExpired),
/* harmony export */   wF: () => (/* binding */ getVerificationUserLogin),
/* harmony export */   xk: () => (/* binding */ isLoggingIn)
/* harmony export */ });
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("XFM9");

var isLoggedIn = function (state) { return state.session.authentication.loggedIn; };
var isLoggingIn = function (state) { return state.session.authentication.loading; };
var getLogInError = function (state) { return state.session.authentication.error; };
var getLogInErrorData = (0,reselect__WEBPACK_IMPORTED_MODULE_0__/* .createSelector */ .Mz)(getLogInError, function (error) { var _a, _b; return (_b = (_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.error; });
var isLoggedOn = function (state) { return state.session.logOn.loggedOn; };
var isLoggingOn = function (state) { return state.session.logOn.loading; };
var isPasswordReset = function (state) { return state.session.resetPassword.isPasswordReset; };
var isPasswordResetting = function (state) { return state.session.resetPassword.loading; };
var isNewPasswordSet = function (state) { return state.session.newPassword.isNewPasswordSet; };
var isNewPasswordSetting = function (state) { return state.session.newPassword.loading; };
var getNewPasswordError = function (state) { return state.session.newPassword.error; };
var isPasswordTokenVerifying = function (state) { return state.session.verifyPasswordToken.loading; };
var isPasswordTokenVerified = function (state) { return state.session.verifyPasswordToken.loaded; };
var isPasswordTokenExpired = function (state) { return state.session.verifyPasswordToken.isTokenExpired; };
var getVerificationUserLogin = function (state) { return state.session.verifyPasswordToken.userLogin; };


/***/ }),

/***/ "C0Rk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   N: () => (/* binding */ settingsModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_users_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("lWdd");
/* harmony import */ var state_account_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("RHZg");
/* harmony import */ var state_themes_model__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("JJJ0");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */






var Settings = /** @class */ (function (_super) {
    __extends(Settings, _super);
    function Settings() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            accountInfo: {
                loading: false,
                loaded: false,
            },
            mentionsUsage: {
                loading: false,
                history: null,
            },
            accountStatistics: {
                loading: false,
                topicsStats: null,
                channelsStats: null,
            },
            authorizationRevoke: { loading: false, error: null },
            authorizationLinks: { links: null, loading: false, error: null },
            authorizationsData: { loading: false },
            accountMaxOverdueDays: { loading: false },
            accountPaid: { loading: false },
            accountRenaming: { loading: false },
            accountOrigin: { loading: false },
            accountTrialPeriod: { loading: false },
            accountDeactivation: { loading: false },
            accountCoverage: { loading: false },
            accountActivation: { loading: false },
            instagramAccounts: { loading: false },
        };
        return _this;
    }
    Settings.prototype.setRequestData = function (stateKey) {
        this.updateWithImmer(function (state) {
            state[stateKey].loading = true;
            state[stateKey].loaded = false;
            state[stateKey].error = null;
        });
    };
    Settings.prototype.setFailureData = function (stateKey, error) {
        this.updateWithImmer(function (state) {
            state[stateKey].loading = false;
            state[stateKey].loaded = true;
            state[stateKey].error = error;
        });
    };
    Settings.prototype.fetchAccountInfo = function () {
        var response_1, error_1;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.setRequestData('accountInfo');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.get)];
                case 1:
                    response_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountInfo.loading = false;
                        state.accountInfo.loaded = true;
                        state.accountInfo.info = response_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _a.sent();
                    this.setFailureData('accountInfo', error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchAuthorizations = function () {
        var authorizationsAPI, authorizations_1, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.setRequestData('authorizationsData');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.externalAuthorizations.fetchAuthorizationsData)];
                case 1:
                    authorizationsAPI = _a.sent();
                    authorizations_1 = authorizationsAPI.integrations;
                    this.updateWithImmer(function (state) {
                        state.authorizationsData.loading = false;
                        state.authorizationsData.loaded = true;
                        state.authorizationsData.authorizations = authorizations_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _a.sent();
                    this.setFailureData('authorizationsData', error_2);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchUsersPageData = function () {
        var error_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_users_model__WEBPACK_IMPORTED_MODULE_3__/* .usersModel */ .O.action.fetchAccountUsers())];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .put */ .yJ)(state_themes_model__WEBPACK_IMPORTED_MODULE_5__/* .themesModel */ .i.action.fetchThemesWithoutStats())];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, settingsModel.fetchAccountInfo()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_3 = _a.sent();
                    console.error({ error: error_3 });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.revokeAuthorization = function (props) {
        var userId, type, error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.authorizationRevoke.loading = true;
                        state.authorizationRevoke.error = null;
                    });
                    userId = props.userId, type = props.type;
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.externalAuthorizations.revokeAuthorization, { id: userId, type: type })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAuthorizations()];
                case 3:
                    _a.sent();
                    this.updateWithImmer(function (state) {
                        state.authorizationRevoke.loading = false;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_4 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.authorizationRevoke.loading = false;
                        state.authorizationRevoke.error = error_4;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchAuthorizationLink = function () {
        var link_1, error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.authorizationLinks.loading = true;
                        state.authorizationLinks.error = null;
                    });
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.externalAuthorizations.fetchAuthorizationLink)];
                case 2:
                    link_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.authorizationLinks.loading = false;
                        state.authorizationLinks.links = link_1;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_5 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.authorizationLinks.loading = false;
                        state.authorizationLinks.error = error_5;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.enableThemePermissions = function () {
        var error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.enablePermissions)];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_6 = _a.sent();
                    console.error({ error: error_6 });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.disableThemePermissions = function () {
        var error_7;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.disablePermissions)];
                case 1:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _a.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_7 = _a.sent();
                    console.error({ error: error_7 });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.renameAccount = function (_a) {
        var error_8;
        var name = _a.name;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setRequestData('accountRenaming');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.rename, { name: name })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountRenaming.loading = false;
                        state.accountRenaming.loaded = true;
                        state.accountRenaming.renamed = true;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_8 = _b.sent();
                    this.setFailureData('accountRenaming', error_8);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.changeAccountTrialPeriod = function (_a) {
        var error_9;
        var activeTo = _a.activeTo;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.setRequestData('accountTrialPeriod');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.changeAccountTrialPeriod, { activeTo: activeTo })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h.fetchAccount.bind(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h))];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountTrialPeriod.loading = false;
                        state.accountTrialPeriod.loaded = true;
                        state.accountTrialPeriod.changed = true;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_9 = _b.sent();
                    this.setFailureData('accountTrialPeriod', error_9);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.activateAccount = function () {
        var error_10;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.setRequestData('accountActivation');
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.activateAccount)];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 3:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h.fetchAccount.bind(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h))];
                case 4:
                    _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountActivation.loading = false;
                        state.accountActivation.loaded = true;
                        state.accountActivation.activated = true;
                    });
                    return [3 /*break*/, 6];
                case 5:
                    error_10 = _a.sent();
                    this.setFailureData('accountActivation', error_10);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.deactivateAccount = function (_a) {
        var error_11;
        var notifyUsers = _a.notifyUsers;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.setRequestData('accountDeactivation');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.deactivateAccount, { notifyUsers: notifyUsers })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h.fetchAccount.bind(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h))];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountDeactivation.loading = false;
                        state.accountDeactivation.loaded = true;
                        state.accountDeactivation.deactivated = true;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_11 = _b.sent();
                    this.setFailureData('accountDeactivation', error_11);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.advanceAccountToPaid = function (_a) {
        var error_12;
        var paidTo = _a.paidTo;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.setRequestData('accountPaid');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.advanceAccountToPaid, { paidTo: paidTo })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h.fetchAccount.bind(state_account_model__WEBPACK_IMPORTED_MODULE_4__/* .accountModel */ .h))];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountPaid.loading = false;
                        state.accountPaid.loaded = true;
                        state.accountPaid.advancedToPaid = true;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_12 = _b.sent();
                    this.setFailureData('accountPaid', error_12);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.changeAccountMaxOverdueDays = function (_a) {
        var error_13;
        var maxOverdueDays = _a.maxOverdueDays;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setRequestData('accountMaxOverdueDays');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.changeAccountMaxOverdueDays, { maxOverdueDays: maxOverdueDays })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountMaxOverdueDays.loading = false;
                        state.accountMaxOverdueDays.loaded = true;
                        state.accountMaxOverdueDays.changed = true;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_13 = _b.sent();
                    this.setFailureData('accountMaxOverdueDays', error_13);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.changeAccountOrigin = function (_a) {
        var error_14;
        var origin = _a.origin;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setRequestData('accountOrigin');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.changeAccountOrigin, { origin: origin })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountOrigin.loading = false;
                        state.accountOrigin.loaded = true;
                        state.accountOrigin.changed = true;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_14 = _b.sent();
                    this.setFailureData('accountOrigin', error_14);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.changeAccountCoverage = function (_a) {
        var error_15;
        var coverage = _a.coverage;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.setRequestData('accountCoverage');
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.account.changeAccountCoverage, { coverage: coverage })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchAccountInfo()];
                case 2:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountCoverage.loading = false;
                        state.accountCoverage.loaded = true;
                        state.accountCoverage.changed = true;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_15 = _b.sent();
                    this.setFailureData('accountCoverage', error_15);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchMentionsUsageHistory = function (_a) {
        var history_1, error_16;
        var accountId = _a.accountId, userId = _a.userId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.settings.getMentionsUsageHistory, { accountId: accountId, userId: userId })];
                case 1:
                    history_1 = (_b.sent()).history;
                    this.updateWithImmer(function (state) {
                        state.mentionsUsage.history = history_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_16 = _b.sent();
                    this.setFailureData('mentionsUsage', error_16);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchAccountTopicsStats = function (_a) {
        var topics_1, error_17;
        var accountId = _a.accountId, from = _a.from, to = _a.to;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountStatistics.topicsStats = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.settings.getAccountTopicsStats, { accountId: accountId, from: from, to: to })];
                case 1:
                    topics_1 = (_b.sent()).topics;
                    this.updateWithImmer(function (state) {
                        state.accountStatistics.topicsStats = topics_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_17 = _b.sent();
                    this.setFailureData('accountStatistics', error_17);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.exportAccountTopicsStats = function (_a) {
        var error_18;
        var accountId = _a.accountId, from = _a.from, to = _a.to;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.settings.exportAccountTopicsStats, { accountId: accountId, from: from, to: to })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_18 = _b.sent();
                    this.setFailureData('accountStatistics', error_18);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchAccountChannelsStats = function (_a) {
        var channels_1, error_19;
        var accountId = _a.accountId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountStatistics.channelsStats = null;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.settings.getAccountChannelsStats, { accountId: accountId })];
                case 1:
                    channels_1 = (_b.sent()).channels;
                    this.updateWithImmer(function (state) {
                        state.accountStatistics.channelsStats = channels_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_19 = _b.sent();
                    this.setFailureData('accountStatistics', error_19);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.exportAccountChannelsStats = function (_a) {
        var error_20;
        var accountId = _a.accountId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.settings.exportAccountChannelStats, { accountId: accountId })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_20 = _b.sent();
                    this.setFailureData('accountStatistics', error_20);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Settings.prototype.fetchInstagramAccounts = function () {
        var accounts_1, error_21;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    this.updateWithImmer(function (state) {
                        state.instagramAccounts.loading = true;
                        state.instagramAccounts.error = null;
                    });
                    _a.label = 1;
                case 1:
                    _a.trys.push([1, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.externalAuthorizations.fetchInstagramPages)];
                case 2:
                    accounts_1 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.instagramAccounts.loading = false;
                        state.instagramAccounts.accounts = accounts_1;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_21 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.instagramAccounts.loading = false;
                        state.instagramAccounts.error = error_21;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchAccountInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchAuthorizations", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchUsersPageData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "revokeAuthorization", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchAuthorizationLink", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "enableThemePermissions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "disableThemePermissions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "renameAccount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "changeAccountTrialPeriod", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "activateAccount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "deactivateAccount", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "advanceAccountToPaid", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "changeAccountMaxOverdueDays", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "changeAccountOrigin", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "changeAccountCoverage", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchMentionsUsageHistory", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchAccountTopicsStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "exportAccountTopicsStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchAccountChannelsStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "exportAccountChannelsStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Settings.prototype, "fetchInstagramAccounts", null);
    Settings = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('AccountSettings')
    ], Settings);
    return Settings;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var settingsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(Settings);


/***/ }),

/***/ "YQsP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $8: () => (/* binding */ canAdvanceAccountToPaid),
/* harmony export */   AP: () => (/* binding */ getAuthorizationLink),
/* harmony export */   CK: () => (/* binding */ isAccountChangingTrialPeriod),
/* harmony export */   DT: () => (/* binding */ getAuthorizations),
/* harmony export */   Gf: () => (/* binding */ getAccountInfo),
/* harmony export */   I8: () => (/* binding */ isAccountAdvancingToPaid),
/* harmony export */   J$: () => (/* binding */ canActivateAccount),
/* harmony export */   JA: () => (/* binding */ isAccessRightsEnabled),
/* harmony export */   Jz: () => (/* binding */ getSubscriptionEndDate),
/* harmony export */   Ng: () => (/* binding */ isAccountRenaming),
/* harmony export */   PL: () => (/* binding */ isAccountCoverageChanging),
/* harmony export */   QC: () => (/* binding */ canDeactivateAccount),
/* harmony export */   RJ: () => (/* binding */ isAuthorizationRevoking),
/* harmony export */   R_: () => (/* binding */ canAdministrateAccount),
/* harmony export */   Su: () => (/* binding */ getAccountTopicStats),
/* harmony export */   WN: () => (/* binding */ isThemePermissionsAllowed),
/* harmony export */   YI: () => (/* binding */ canChangeAccountSubscriptionPlan),
/* harmony export */   aF: () => (/* binding */ isAccountRenamed),
/* harmony export */   bf: () => (/* binding */ getMentionsUsageHistory),
/* harmony export */   cy: () => (/* binding */ canRenameAccount),
/* harmony export */   iQ: () => (/* binding */ getAccountChannelStats),
/* harmony export */   kO: () => (/* binding */ canChangeAccountOrigin),
/* harmony export */   ko: () => (/* binding */ isAccountMaxOverdueDaysChanging),
/* harmony export */   l6: () => (/* binding */ isUsersPageDataLoaded),
/* harmony export */   lM: () => (/* binding */ isAccountOriginChanging),
/* harmony export */   le: () => (/* binding */ getSubscriptionPlan),
/* harmony export */   nR: () => (/* binding */ isAccountDeactivating),
/* harmony export */   nj: () => (/* binding */ getInstagramAccounts),
/* harmony export */   v5: () => (/* binding */ canChangeAccountTrialPeriod),
/* harmony export */   wY: () => (/* binding */ isAccountActivating),
/* harmony export */   yN: () => (/* binding */ canChangeAccountCoverage),
/* harmony export */   zR: () => (/* binding */ isAuthorizationsLoading)
/* harmony export */ });
/* unused harmony exports isAccountTrial, getTrialExpirationDate, getPaidPeriodEndDate, getPaidPeriodEndDateToShow */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("XFM9");
/* harmony import */ var state_users_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zcN7");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("X9tB");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("3o2z");




var getAccountInfo = function (state) { return state.settings.accountInfo.info; };
var isThemePermissionsAllowed = function (state) { var _a, _b; return (_b = (_a = state.settings.accountInfo) === null || _a === void 0 ? void 0 : _a.info) === null || _b === void 0 ? void 0 : _b.subscriptionFeatures.themesPermissions; };
var getMentionsUsageHistory = function (state) { return state.settings.mentionsUsage.history; };
var getAccountTopicStats = function (state) { return state.settings.accountStatistics.topicsStats; };
var getAccountChannelStats = function (state) { return state.settings.accountStatistics.channelsStats; };
var getAuthorizations = function (state) { return state.settings.authorizationsData.authorizations; };
var isAuthorizationsLoading = function (state) { return state.settings.authorizationsData.loading; };
var getAuthorizationLink = function (state) { return state.settings.authorizationLinks.links; };
var isAuthorizationRevoking = function (state) { return state.settings.authorizationRevoke.loading; };
var isAccountRenaming = function (state) { return state.settings.accountRenaming.loading; };
var isAccountRenamed = function (state) { return state.settings.accountRenaming.renamed; };
var isAccountChangingTrialPeriod = function (state) { return state.settings.accountTrialPeriod.loading; };
var isAccountActivating = function (state) { return state.settings.accountActivation.loading; };
var isAccountDeactivating = function (state) { return state.settings.accountDeactivation.loading; };
var isAccountAdvancingToPaid = function (state) { return state.settings.accountPaid.loading; };
var isAccountOriginChanging = function (state) { return state.settings.accountOrigin.loading; };
var isAccountCoverageChanging = function (state) { return state.settings.accountCoverage.loading; };
var isAccountMaxOverdueDaysChanging = function (state) { return state.settings.accountMaxOverdueDays.loading; };
var getSubscriptionPlan = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, function (accountInfo) { return accountInfo && accountInfo.subscriptionPlan; });
var isAccessRightsEnabled = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, function (accountInfo) { return accountInfo && accountInfo.accessRightsEnabled; });
var isUsersPageDataLoaded = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(state_users_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getAccountUsers */ .IM, state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getCurrentUserId */ .WR, function (accountUsers, currentUserId) { return !!(Object.keys(accountUsers).length && currentUserId); });
var isAccountTrial = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, function (accountInfo) { return accountInfo && accountInfo.status === 'trial'; });
var getTrialExpirationDate = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, function (accountInfo) { return accountInfo && accountInfo.trialExpirationDate; });
var getPaidPeriodEndDate = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, function (accountInfo) { return accountInfo && accountInfo.payedTo; });
// FIXME: temporary hack with hardcoded date, need to speak with API Lord - vansha
var getPaidPeriodEndDateToShow = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getPaidPeriodEndDate, function (paidPeriodEndDate) { return paidPeriodEndDate !== '0001-01-01T00:00:00+00:00' && paidPeriodEndDate; });
var getSubscriptionEndDate = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(isAccountTrial, getTrialExpirationDate, getPaidPeriodEndDateToShow, function (isTrial, trialExpirationDate, paidPeriodEndDate) { return (isTrial ? trialExpirationDate : paidPeriodEndDate); });
var canRenameAccount = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('renameAccount'));
var canAdvanceAccountToPaid = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('advanceAccountToPaid'));
var canActivateAccount = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('activateAccount'));
var canDeactivateAccount = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('deactivateAccount'));
var canChangeAccountTrialPeriod = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('changeAccountTrialPeriod'));
var canChangeAccountSubscriptionPlan = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('changeAccountSubscriptionPlan'));
var canChangeAccountOrigin = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('changeAccountOrigin'));
var canChangeAccountCoverage = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAccountInfo, (0,state_utils__WEBPACK_IMPORTED_MODULE_2__/* .isFeatureAllowed */ .To)('changeAccountCoverage'));
var canAdministrateAccount = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(canRenameAccount, canAdvanceAccountToPaid, canActivateAccount, canDeactivateAccount, canChangeAccountTrialPeriod, canChangeAccountSubscriptionPlan, canChangeAccountOrigin, function () {
    var adminActions = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        adminActions[_i] = arguments[_i];
    }
    return adminActions.some(function (x) { return x; });
});
var getInstagramAccounts = function (state) { return state.settings.instagramAccounts.accounts; };


/***/ }),

/***/ "VSkm":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   J: () => (/* binding */ socialSearchModel)
/* harmony export */ });
/* unused harmony export MENTIONS_PER_PAGE */
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_socialSearch_selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("dHbk");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/* eslint-disable redux-saga/no-unhandled-errors, generator-star-spacing, require-yield */




var MENTIONS_PER_PAGE = 50;
var SocialSearch = /** @class */ (function (_super) {
    __extends(SocialSearch, _super);
    function SocialSearch() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            stats: {},
            queryValidationResults: [],
            mentions: {
                isFetching: false,
                data: [],
                error: null,
            },
            wordCloud: {
                isFetching: false,
                data: [],
                error: null,
            },
        };
        return _this;
    }
    SocialSearch.prototype.validateSearchQueries = function (searchQueries) {
        var validationResults;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(searchQueries.map(function (query) {
                        return (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.validateSocialSearchQuery, { query: query });
                    }))];
                case 1:
                    validationResults = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.queryValidationResults = validationResults;
                    });
                    return [2 /*return*/];
            }
        });
    };
    SocialSearch.prototype.clearStatsByIndex = function (_a) {
        var key = _a.key, index = _a.index;
        return __generator(this, function (_b) {
            this.updateWithImmer(function (state) {
                state.stats[key] = {
                    isFetching: false,
                    data: state.stats[key].data.filter(function (_x, i) { return i !== index; }),
                    error: null,
                };
            });
            return [2 /*return*/];
        });
    };
    SocialSearch.prototype.fetchSocialSearchStatsByQuery = function (_a) {
        var response_1, error_1;
        var key = _a.key, index = _a.index, query = _a.query, filter = _a.filter, config = _a.config, statsBy = _a.statsBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.stats[key] = __assign(__assign({}, state.stats[key]), { isFetching: true });
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchSocialSearchStats, {
                            config: config,
                            query: query,
                            filter: filter,
                            statsBy: statsBy,
                        })];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        var data = __spreadArray([], __read(state.stats[key].data), false);
                        data[index] = response_1.result;
                        state.stats[key] = {
                            isFetching: false,
                            data: data,
                            error: null,
                        };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    console.error(error_1);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    SocialSearch.prototype.fetchSocialSearchStats = function (_a) {
        var response_2, error_2;
        var key = _a.key, queries = _a.queries, filter = _a.filter, config = _a.config, statsBy = _a.statsBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.stats[key] = {
                            isFetching: true,
                            data: null,
                            error: null,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(queries.map(function (query) { return (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchSocialSearchStats, { config: config, query: query, filter: filter, statsBy: statsBy }); }))];
                case 1:
                    response_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.stats[key] = {
                            isFetching: false,
                            data: response_2.map(function (x) { return x.result; }),
                            error: null,
                        };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.stats[key] = {
                            isFetching: false,
                            data: null,
                            error: error_2,
                        };
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    SocialSearch.prototype.fetchSocialSearchMentions = function (_a) {
        var response_3, error_3;
        var queries = _a.queries, filter = _a.filter, orderBy = _a.orderBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.mentions = {
                            isFetching: true,
                            data: state.mentions.data,
                            error: null,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(queries.map(function (query) { return (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchSocialSearchMentions, {
                            query: query,
                            filter: filter,
                            orderBy: orderBy,
                            perPage: MENTIONS_PER_PAGE,
                        }); }))];
                case 1:
                    response_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.mentions = {
                            isFetching: false,
                            data: response_3.map(function (x) { return x.result; }),
                            error: null,
                        };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.mentions = {
                            isFetching: false,
                            data: null,
                            error: error_3,
                        };
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    SocialSearch.prototype.fetchMoreSocialSearchMentions = function (_a) {
        var tokens, queryIndex_1, _b, response_4, error_4;
        var queries = _a.queries, filter = _a.filter, orderBy = _a.orderBy;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 4, , 5]);
                    this.updateWithImmer(function (state) {
                        state.mentions = {
                            isFetching: true,
                            data: state.mentions.data,
                            error: null,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_socialSearch_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getContinuationTokens */ .Iy)];
                case 1:
                    tokens = _c.sent();
                    _b = Number;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Lt)(state_socialSearch_selectors__WEBPACK_IMPORTED_MODULE_3__/* .getSelectedQueryIndex */ .yZ)];
                case 2:
                    queryIndex_1 = _b.apply(void 0, [_c.sent()]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchSocialSearchMentions, {
                            query: queries[queryIndex_1],
                            filter: filter,
                            orderBy: orderBy,
                            perPage: MENTIONS_PER_PAGE,
                            continuationToken: tokens[queryIndex_1],
                        })];
                case 3:
                    response_4 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.mentions = {
                            isFetching: false,
                            data: state.mentions.data.map(function (x, i) {
                                if (i === queryIndex_1) {
                                    return __assign(__assign({}, x), { continuationToken: response_4.result.continuationToken, 
                                        // @ts-ignore
                                        mentions: x.mentions.concat(response_4.result.mentions) });
                                }
                                return x;
                            }),
                            error: null,
                        };
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_4 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.mentions = {
                            isFetching: false,
                            data: null,
                            error: error_4,
                        };
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    SocialSearch.prototype.fetchSocialSearchWordCloud = function (_a) {
        var response_5, error_5;
        var queries = _a.queries, filter = _a.filter;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.wordCloud = {
                            isFetching: true,
                            data: state.wordCloud.data,
                            error: null,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .all */ .Q7)(queries.map(function (query) { return (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchSocialSearchWordCloud, { query: query, filter: filter }); }))];
                case 1:
                    response_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.wordCloud = {
                            isFetching: false,
                            data: response_5,
                            error: null,
                        };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.wordCloud = {
                            isFetching: false,
                            data: null,
                            error: error_5,
                        };
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "validateSearchQueries", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "clearStatsByIndex", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "fetchSocialSearchStatsByQuery", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "fetchSocialSearchStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "fetchSocialSearchMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "fetchMoreSocialSearchMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], SocialSearch.prototype, "fetchSocialSearchWordCloud", null);
    SocialSearch = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('SocialSearch')
    ], SocialSearch);
    return SocialSearch;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var socialSearchModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(SocialSearch);


/***/ }),

/***/ "dHbk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $y: () => (/* binding */ getMentionsByQuery),
/* harmony export */   Bd: () => (/* binding */ getInterestsDistributionStats),
/* harmony export */   F2: () => (/* binding */ getOverviewDistributionStats),
/* harmony export */   FM: () => (/* binding */ getOccupationCloudData),
/* harmony export */   Fk: () => (/* binding */ getOverviewLineStats),
/* harmony export */   Iy: () => (/* binding */ getContinuationTokens),
/* harmony export */   LJ: () => (/* binding */ getGeoMapStats),
/* harmony export */   Lf: () => (/* binding */ getSearchQueries),
/* harmony export */   Lx: () => (/* binding */ getOverviewCardStats),
/* harmony export */   Mk: () => (/* binding */ getAuthorsLineStats),
/* harmony export */   Op: () => (/* binding */ isWordCloudFetching),
/* harmony export */   Ro: () => (/* binding */ getGenderDistributionLineStats),
/* harmony export */   SZ: () => (/* binding */ getSentimentDistributionBarStats),
/* harmony export */   Tj: () => (/* binding */ getGeoDistributionStats),
/* harmony export */   UD: () => (/* binding */ getSourcesDistributionStats),
/* harmony export */   VF: () => (/* binding */ getHasMoreMentions),
/* harmony export */   YA: () => (/* binding */ isMentionsFetching),
/* harmony export */   _$: () => (/* binding */ getStatsByKey),
/* harmony export */   be: () => (/* binding */ getWordsByQuery),
/* harmony export */   cA: () => (/* binding */ getAudienceInfoCardStats),
/* harmony export */   cS: () => (/* binding */ getInterestsData),
/* harmony export */   mr: () => (/* binding */ getValidationResults),
/* harmony export */   nh: () => (/* binding */ getSentimentPieStats),
/* harmony export */   qj: () => (/* binding */ getOccupationsDistributionStats),
/* harmony export */   tg: () => (/* binding */ getQueriesHash),
/* harmony export */   x1: () => (/* binding */ isComparisonMode),
/* harmony export */   xD: () => (/* binding */ getGenderDistributionStats),
/* harmony export */   xe: () => (/* binding */ getSentimentLineStats),
/* harmony export */   yZ: () => (/* binding */ getSelectedQueryIndex)
/* harmony export */ });
/* unused harmony exports getStats, createStatsSelector, getMentionsData, getWordCloudData */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("XFM9");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("3o2z");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KG/6");
/* harmony import */ var containers_audience_Demographics_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("+Olt");
/* harmony import */ var utils_sentiments__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("ofyo");
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
/* eslint-disable no-bitwise */





var getSearchQueries = (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .createNonCacheSelector */ .Hq)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return query.searchQueries || []; });
var getQueriesHash = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getSearchQueries, function (queries) { return queries
    .join('')
    .split('')
    .reduce(function (a, b) {
    a = ((a << 5) - a) + b.charCodeAt(0);
    return a & a;
}, 0); });
var getValidationResults = function (state) { return state.socialSearch.queryValidationResults; };
var getSelectedQueryIndex = (0,state_utils__WEBPACK_IMPORTED_MODULE_0__/* .createNonCacheSelector */ .Hq)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getQuery */ .$Z, function (query) { return query.selectedQuery || 0; });
var isComparisonMode = function (state) { return getSearchQueries(state).length > 1; };
var getStats = function (state) { return state.socialSearch.stats; };
var getStatsByKey = function (state, key) { return getStats(state)[key]; };
var createStatsSelector = function (key) { return function (state) { return getStatsByKey(state, key); }; };
var getOverviewLineStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('overviewLine'), function (stats) { var _a; return (_a = stats.data) === null || _a === void 0 ? void 0 : _a.map(function (x) { return x.aggregations.dates.values; }); });
var getOverviewDistributionStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('overviewDistribution'), function (stats) { var _a; return (_a = stats.data) === null || _a === void 0 ? void 0 : _a.map(function (x) { return x.totalCount; }); });
var getOverviewCardStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('overviewCard'), function (stats) { return stats.data[0]; });
var getSentimentPieStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('sentimentPie'), function (stats) { return stats.data[0].aggregations.sentiment.values; });
var getSentimentLineStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('sentimentLine'), function (stats) { return stats.data[0].aggregations.dates.values.reduce(function (acc, x) {
    Object.keys(acc).forEach(function (sentimentKey) {
        var _a;
        var count = ((_a = x.sentiment.values.find(function (y) { return y.key === sentimentKey; })) === null || _a === void 0 ? void 0 : _a.count) || 0;
        acc[sentimentKey].push({ date: x.date, dateAsUtc: x.dateAsUtc, count: count });
    });
    return acc;
}, { positive: [], negative: [], neutral: [] }); });
var getSentimentDistributionBarStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('sentimentDistributionBar'), function (stats) {
    var _a;
    return ({
        sentimentNames: utils_sentiments__WEBPACK_IMPORTED_MODULE_2__/* .SENTIMENT_NAMES */ .dY,
        data: (_a = stats.data) === null || _a === void 0 ? void 0 : _a.map(function (x) { return x.aggregations.sentiment.values; }),
    });
});
var getSourcesDistributionStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('sourcesDistribution'), function (stats) {
    var sourceNames = [];
    stats.data.forEach(function (stat) {
        stat.aggregations.sources.values.forEach(function (source) {
            if (!sourceNames.includes(source.key))
                sourceNames.push(source.key);
        });
    });
    return ({
        sourceNames: sourceNames,
        data: stats.data,
    });
});
var getCountryNamesFromStats = function (stats) {
    var countryNames = [];
    stats.data.forEach(function (stat) {
        stat.aggregations.countries.values.forEach(function (country) {
            if (!countryNames.includes(country.key))
                countryNames.push(country.key);
        });
    });
    return countryNames;
};
var getGeoMapStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('geoMap'), function (stats) {
    var countryNames = getCountryNamesFromStats(stats);
    var countries = [];
    countryNames.forEach(function (countryName) {
        stats.data.forEach(function (stat) {
            var _a;
            var countriesByQuery = stat.aggregations.countries.values;
            var matchingCountry = countries.find(function (c) { return c.key === countryName; });
            var currentCountryByQueryCount = ((_a = countriesByQuery.find(function (c) { return c.key === countryName; })) === null || _a === void 0 ? void 0 : _a.count) || 0;
            if (!matchingCountry)
                countries.push({ key: countryName, value: [currentCountryByQueryCount] });
            else
                matchingCountry.value.push(currentCountryByQueryCount);
        });
    });
    return ({
        countries: countries,
        data: stats.data,
        series: countries,
    });
});
var getGeoDistributionStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('geoDistribution'), function (stats) {
    var countryNames = getCountryNamesFromStats(stats);
    return ({
        countries: countryNames,
        data: stats.data,
    });
});
var getMentionsData = function (state) { return state.socialSearch.mentions.data; };
var isMentionsFetching = function (state) { return state.socialSearch.mentions.isFetching; };
var getMentionsByQuery = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getMentionsData, getSelectedQueryIndex, function (data, queryIndex) { var _a; return data && ((_a = data[Number(queryIndex)]) === null || _a === void 0 ? void 0 : _a.mentions); });
var getHasMoreMentions = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getMentionsData, getSelectedQueryIndex, function (data, queryIndex) { var _a; return data && ((_a = data[Number(queryIndex)]) === null || _a === void 0 ? void 0 : _a.hasMore); });
var getContinuationTokens = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getMentionsData, function (data) { return data.map(function (x) { return x.continuationToken; }); });
var getWordCloudData = function (state) { return state.socialSearch.wordCloud.data; };
var isWordCloudFetching = function (state) { return state.socialSearch.wordCloud.isFetching; };
var getWordsByQuery = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getWordCloudData, getSelectedQueryIndex, function (data, queryIndex) { return data && data[Number(queryIndex)]; });
var getAudienceInfoCardStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('audienceInfoCard'), function (stats) {
    var e_1, _a;
    var values = stats.data[0].aggregations.authorGender.values;
    var totalCount = 0;
    var distribution = { other: 0 };
    try {
        for (var values_1 = __values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) {
            var value = values_1_1.value;
            var key = value.key;
            if (containers_audience_Demographics_utils__WEBPACK_IMPORTED_MODULE_4__/* .GENDERS */ .n.includes(key))
                distribution[key] = value.metricTotal;
            else
                distribution.other += value.metricTotal;
            totalCount += value.metricTotal;
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (values_1_1 && !values_1_1.done && (_a = values_1.return)) _a.call(values_1);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return {
        totalCount: totalCount,
        distribution: distribution,
    };
});
var getGenderDistributionLineStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('genderDistributionLine'), function (stats) { return stats.data[0].aggregations.dates.values.reduce(function (acc, x) {
    Object.keys(acc).forEach(function (genderKey) {
        var _a;
        var count = ((_a = x.authorGender.values.find(function (y) { return y.key === genderKey; })) === null || _a === void 0 ? void 0 : _a.metricTotal) || 0;
        acc[genderKey].push({ date: x.date, dateAsUtc: x.dateAsUtc, count: count });
    });
    return acc;
}, { male: [], female: [] }); });
var getOccupationCloudData = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('audienceOccupationsCloud'), function (stats) {
    if (!stats.data[0])
        return {};
    var data = stats.data[0].aggregations.authorJobs.values;
    var audienceData = {
        totalCount: 0,
        data: [],
    };
    if (data) {
        data.forEach(function (x) {
            audienceData.data.push({
                name: x.key,
                authors: x.metricTotal,
                engagement: x.totalEngagement,
            });
            audienceData.totalCount += x.metricTotal;
        });
    }
    return audienceData;
});
var getInterestsData = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('audienceInterestsBubble'), function (stats) {
    if (!stats.data[0])
        return [];
    return stats.data[0].aggregations.authorInterests.values;
});
var getAuthorsLineStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('authorsLine'), function (stats) { var _a; return (_a = stats.data) === null || _a === void 0 ? void 0 : _a.map(function (x) { return x.aggregations.dates.values; }); });
var getInterestsDistributionStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('interestsDistribution'), function (stats) {
    var interestNames = [];
    stats.data.forEach(function (stat) {
        stat.aggregations.authorInterests.values.forEach(function (interest) {
            if (!interestNames.includes(interest.key))
                interestNames.push(interest.key);
        });
    });
    return ({
        interestNames: interestNames,
        data: stats.data,
    });
});
var getOccupationsDistributionStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('occupationsDistribution'), function (stats) {
    var occupationNames = [];
    stats.data.forEach(function (stat) {
        stat.aggregations.authorJobs.values.forEach(function (occupation) {
            if (!occupationNames.includes(occupation.key))
                occupationNames.push(occupation.key);
        });
    });
    return ({
        occupationNames: occupationNames,
        data: stats.data,
    });
});
var getGenderDistributionStats = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(createStatsSelector('genderDistributionBar'), function (stats) {
    var _a;
    return ({
        genderNames: containers_audience_Demographics_utils__WEBPACK_IMPORTED_MODULE_4__/* .GENDERS */ .n,
        data: (_a = stats.data) === null || _a === void 0 ? void 0 : _a.map(function (x) { return x.aggregations.authorGender.values; }),
    });
});


/***/ }),

/***/ "kJVi":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   o: () => (/* binding */ sourcesModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("2N3d");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("kHEK");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("+MLa");
/* harmony import */ var models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("NLA2");
/* harmony import */ var state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("cpfI");
/* harmony import */ var state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("iY5o");
/* harmony import */ var state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("eTBD");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("9jXX");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("3o2z");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};











var Sources = /** @class */ (function (_super) {
    __extends(Sources, _super);
    function Sources() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            loading: false,
            data: null,
            error: null,
        };
        return _this;
    }
    Sources.prototype.excludeSource = function (_a) {
        var filter, deletion, error_1;
        var themeId = _a.themeId, sourceId = _a.sourceId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 8, , 9]);
                    // TODO: Remove after migrations
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_10__/* .getAction */ .Th)('EXCLUDE_SOURCE')({ themeId: themeId, sourceId: sourceId }))];
                case 1:
                    // TODO: Remove after migrations
                    _b.sent();
                    // TODO: remove old entities usage
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)((0,state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_7__/* .updateUiSources */ .m_)({
                            ids: [sourceId],
                            value: { excluding: true },
                        }))];
                case 2:
                    // TODO: remove old entities usage
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_8__/* .uiEntitiesModel */ .P.action.updateUiSources({
                            ids: [sourceId],
                            value: { excluding: true },
                        }))];
                case 3:
                    _b.sent();
                    filter = new models_filters_Filter__WEBPACK_IMPORTED_MODULE_4__/* .Filter */ .dJ({
                        from: new Date(0),
                        to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_9__/* .getDayFiveYearsAgo */ .M3)(),
                        filterGroups: [new models_filters_FilterGroup__WEBPACK_IMPORTED_MODULE_5__/* .ListFilterGroup */ .II('sourceId', 'oneOf', [sourceId], false)],
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.mentions.delete, { themeId: themeId, filter: utils_Mutable__WEBPACK_IMPORTED_MODULE_1__/* .Mutable */ .rV.from(filter) })];
                case 4:
                    deletion = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.sources.exclude, { themeId: themeId, sourceId: sourceId })];
                case 5:
                    _b.sent();
                    if (!(deletion && !deletion.lrt)) return [3 /*break*/, 7];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .put */ .yJ)(state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamModel */ .K.action.refreshMentionStream({ themeId: themeId }))];
                case 6:
                    _b.sent();
                    _b.label = 7;
                case 7: return [3 /*break*/, 9];
                case 8:
                    error_1 = _b.sent();
                    console.log(error_1);
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    Sources.prototype.fetchExcludedSources = function (_a) {
        var response_1, error_2;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.sources.getExcluded, { themeId: themeId })];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.loading = false;
                        state.data = response_1.sources;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.loading = false;
                        state.data = null;
                        state.error = error_2;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Sources.prototype.restoreExcludedSource = function (_a) {
        var error_3;
        var themeId = _a.themeId, sourceName = _a.sourceName;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_2__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.sources.restore, { themeId: themeId, sourceName: sourceName })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchExcludedSources({ themeId: themeId })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Sources.prototype, "excludeSource", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Sources.prototype, "fetchExcludedSources", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Sources.prototype, "restoreExcludedSource", null);
    Sources = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('Sources')
    ], Sources);
    return Sources;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var sourcesModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(Sources);


/***/ }),

/***/ "tu5+":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   As: () => (/* binding */ initRouterInStore),
/* harmony export */   Bb: () => (/* binding */ ROUTER_LOCATION_CHANGE),
/* harmony export */   UZ: () => (/* binding */ routerPush),
/* harmony export */   eq: () => (/* binding */ routerReplace),
/* harmony export */   wf: () => (/* binding */ routerMiddleware)
/* harmony export */ });
var ROUTER_LOCATION_CHANGE = 'APP_LOCATION_CHANGE';
var ROUTER_PUSH = 'APP_ROUTING_PUSH';
var ROUTER_REPLACE = 'APP_ROUTING_REPLACE';
var routerMiddleware = function (history) { return function (store) {
    history.listen(function (action) {
        store.dispatch({
            type: ROUTER_LOCATION_CHANGE,
            payload: action.location,
        });
    });
    return function (next) { return function (action) {
        if (action.type === ROUTER_PUSH) {
            var actionPayload = action.payload;
            if (typeof actionPayload === 'string') {
                history.push(actionPayload);
            }
            else {
                history.push(actionPayload, actionPayload === null || actionPayload === void 0 ? void 0 : actionPayload.state);
            }
        }
        if (action.type === ROUTER_REPLACE) {
            var actionPayload = action.payload;
            if (typeof actionPayload === 'string') {
                history.replace(actionPayload);
            }
            else {
                history.replace(actionPayload, actionPayload === null || actionPayload === void 0 ? void 0 : actionPayload.state);
            }
        }
        return next(action);
    }; };
}; };
var initRouterInStore = function (store, history) {
    // Set initial location
    store.dispatch({
        type: ROUTER_LOCATION_CHANGE,
        payload: history.location,
    });
};
var routerPush = function (payload) { return ({
    type: ROUTER_PUSH,
    payload: payload,
}); };
var routerReplace = function (payload) { return ({
    type: ROUTER_REPLACE,
    payload: payload,
}); };


/***/ }),

/***/ "Gku9":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  l: () => (/* binding */ statsModel)
});

// EXTERNAL MODULE: ./src/state/pixieDust.ts
var pixieDust = __webpack_require__("IH55");
// EXTERNAL MODULE: ./node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.esm.js + 1 modules
var redux_saga_effects_npm_proxy_esm = __webpack_require__("IihT");
// EXTERNAL MODULE: ./src/apiSingleton.js + 31 modules
var apiSingleton = __webpack_require__("kHEK");
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/utils/dates/dateUtils.ts
var dateUtils = __webpack_require__("9jXX");
;// CONCATENATED MODULE: ./src/utils/previousPeriodFilter.ts
/* eslint import/prefer-default-export: 0 */


/* harmony default export */ function previousPeriodFilter(filter) {
    var from = moment_default()(filter.from).toDate();
    var to = (0,dateUtils/* isDateWithTime */.Wo)(filter.to)
        ? filter.to
        : moment_default()(filter.to).add(1, 'days').toDate(); // 1 day is not always 24 * 60 * 60 * 1000 ms
    var diff = (to.getTime() - from.getTime());
    var mappedFrom = new Date(from.getTime() - diff);
    // Stats API formatters add 1 day to "to" date if it's without time: 24-25 -> 24-26
    var mappedTo = (0,dateUtils/* isDateWithTime */.Wo)(from)
        ? from
        : moment_default()(from).subtract(1, 'days').toDate();
    filter.to = mappedTo;
    filter.from = mappedFrom;
    return filter;
}

// EXTERNAL MODULE: ./src/state/themes/model.ts
var model = __webpack_require__("JJJ0");
// EXTERNAL MODULE: ./src/state/filter/selectors.ts
var selectors = __webpack_require__("0Zyk");
;// CONCATENATED MODULE: ./src/state/stats/utils.ts
/* eslint-disable import/prefer-default-export */
var getDigestConfig = function (interval) {
    if (interval === void 0) { interval = 'Day'; }
    return ({
        aggregations: {
            authorscount: {},
            engagement: {},
            sentimentAspects: {},
            trends: {
                size: 12,
                aggregations: {
                    date: {},
                    sentiment: {},
                    sources: {
                        size: 1,
                    },
                    authorgender: {},
                    authorscount: {},
                    engagement: {},
                },
            },
            date: {
                interval: interval,
                aggregations: {
                    authorscount: {},
                    sentiment: {},
                    engagement: {},
                },
            },
            sentiment: {
                aggregations: {
                    date: {
                        interval: interval,
                    },
                },
            },
            phrases: {
                size: 30,
            },
            hashtags: {
                size: 30,
            },
            emojis: {
                size: 30,
            },
            objects: {
                size: 30,
            },
            characteristics: {
                size: 30,
            },
            actions: {
                size: 30,
            },
            words: {
                size: 100,
            },
            countries: {
                size: 300,
                aggregations: {
                    sentiment: {},
                    regionIds: {
                        size: 300,
                    },
                    date: {
                        interval: interval,
                    },
                    source: {
                        size: 10,
                    },
                },
            },
            regionIds: {
                size: 10,
                aggregations: {
                    sentiment: {},
                    date: {
                        interval: interval,
                    },
                    source: {
                        size: 10,
                    },
                },
            },
            sources: {
                size: 7,
                aggregations: {
                    date: {
                        interval: interval,
                    },
                },
            },
            authorGender: {
                aggregations: {
                    sentiment: {},
                    date: {
                        interval: interval,
                    },
                },
            },
            authorAge: {},
            authors: {
                size: 10,
                sort: 'totalEngagement',
                aggregations: {
                    sentiment: {},
                    engagement: {},
                },
            },
            tags: {
                size: 10,
            },
        },
    });
};

// EXTERNAL MODULE: ./src/utils/statsBy.ts
var statsBy = __webpack_require__("4ok8");
;// CONCATENATED MODULE: ./src/state/stats/model.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};








var Stats = /** @class */ (function (_super) {
    __extends(Stats, _super);
    function Stats() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            // @ts-ignore
            statistics: {},
            digest: {
                isLoading: false,
                stats: null,
                error: null,
            },
            authors: {
                isLoading: false,
                error: null,
                data: null,
            },
            statsBy: statsBy/* DEFAULT_STATS_BY */._b,
            visualTags: {
                isLoading: false,
                labels: null,
                error: null,
            },
            phrasesBySubjects: {
                isLoading: false,
                data: null,
                error: null,
            },
        };
        return _this;
    }
    Stats.prototype.fetchStats = function (_a) {
        var calls, _b, response_1, responsePrev_1, error_1;
        var key = _a.key, themeId = _a.themeId, filter = _a.filter, prevPeriod = _a.prevPeriod, config = _a.config, statsBy = _a.statsBy;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.statistics[key] = {
                            isLoading: true,
                            data: null,
                            prevData: null,
                        };
                    });
                    calls = [
                        (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchStatsNew, {
                            themeId: themeId,
                            filter: filter,
                            config: config,
                            statsBy: statsBy,
                        })
                    ];
                    if (prevPeriod) {
                        calls.push((0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchStatsNew, {
                            filter: previousPeriodFilter(filter.copyFilter()),
                            themeId: themeId,
                            config: config,
                            statsBy: statsBy,
                        }));
                    }
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* all */.Q7)(calls)];
                case 1:
                    _b = __read.apply(void 0, [_c.sent(), 2]), response_1 = _b[0], responsePrev_1 = _b[1];
                    this.updateWithImmer(function (state) {
                        state.statistics[key] = {
                            isLoading: false,
                            data: response_1.result,
                            prevData: responsePrev_1 === null || responsePrev_1 === void 0 ? void 0 : responsePrev_1.result,
                            key: key,
                        };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _c.sent();
                    this.updateWithImmer(function (state) {
                        state.statistics[key] = {
                            isLoading: false,
                            error: error_1,
                            key: key,
                        };
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Stats.prototype.fetchAuthorStats = function (_a) {
        var config, response_2, error_2;
        var themeId = _a.themeId, filter = _a.filter, sorting = _a.sorting;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.authors.isLoading = true;
                        state.authors.data = null;
                        state.authors.error = null;
                    });
                    config = {
                        aggregations: {
                            authors: {
                                size: 300,
                                sort: sorting,
                                aggregations: {
                                    sentiment: {},
                                    engagement: {},
                                    authorJobs: {},
                                    authorInterests: {},
                                },
                            },
                        },
                    };
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchStatsNew, {
                            themeId: themeId,
                            filter: filter,
                            config: config,
                        })];
                case 1:
                    response_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.authors.isLoading = false;
                        state.authors.data = response_2.result;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.authors.isLoading = false;
                        state.authors.data = null;
                        state.authors.error = error_2;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Stats.prototype.fetchStatsForDigest = function (_a) {
        var filter, stats_1, error_3;
        var themeId = _a.themeId, statsInterval = _a.statsInterval;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        state.digest.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* themesModel */.i.action.fetchThemesWithoutStats())];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* put */.yJ)(model/* themesModel */.i.action.fetchGeneralThemeInfo({ themeId: themeId }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getThemeFilter */.Ic)];
                case 3:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchStatsNew, {
                            themeId: themeId,
                            filter: filter,
                            config: getDigestConfig(statsInterval),
                        })];
                case 4:
                    stats_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.digest.isLoading = false;
                        state.digest.stats = stats_1;
                    });
                    return [3 /*break*/, 6];
                case 5:
                    error_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.digest.isLoading = false;
                        state.digest.error = error_3;
                    });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    Stats.prototype.clearStatsForDigest = function () {
        this.updateWithImmer(function (state) {
            state.digest.isLoading = false;
            state.digest.stats = null;
            state.digest.error = null;
        });
    };
    Stats.prototype.setStatsBy = function (_a) {
        var statsBy = _a.statsBy;
        this.updateWithImmer(function (state) {
            state.statsBy = statsBy;
        });
    };
    Stats.prototype.fetchVisualTags = function () {
        var labels_1, error_4;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.visualTags.isLoading = true;
                    });
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchVisualTags)];
                case 1:
                    labels_1 = (_a.sent()).labels;
                    this.updateWithImmer(function (state) {
                        state.visualTags.isLoading = false;
                        state.visualTags.labels = labels_1;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.visualTags.isLoading = false;
                        state.visualTags.error = error_4;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Stats.prototype.fetchPhrasesBySubjects = function (_a) {
        var filter, data_1, error_5;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithImmer(function (state) {
                        state.phrasesBySubjects.isLoading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects_npm_proxy_esm/* select */.Lt)(selectors/* getThemeFilter */.Ic)];
                case 1:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,pixieDust/* request */.Em)(apiSingleton/* default */.A.stats.fetchPhrasesBySubjects, { themeId: themeId, filter: filter })];
                case 2:
                    data_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.phrasesBySubjects.isLoading = false;
                        state.phrasesBySubjects.data = data_1;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.phrasesBySubjects.isLoading = false;
                        state.phrasesBySubjects.error = error_5;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "fetchStats", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "fetchAuthorStats", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "fetchStatsForDigest", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "clearStatsForDigest", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "setStatsBy", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "fetchVisualTags", null);
    __decorate([
        (0,pixieDust/* effect */.QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Stats.prototype, "fetchPhrasesBySubjects", null);
    Stats = __decorate([
        (0,pixieDust/* namespace */.MF)('Stats')
    ], Stats);
    return Stats;
}(pixieDust/* StateModel */.Nd));
var statsModel = (0,pixieDust/* pixieDust */.kJ)(Stats);


/***/ }),

/***/ "K9kJ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  xL: () => (/* binding */ getAllVisualTags),
  Zr: () => (/* binding */ getAspectsStats),
  GT: () => (/* binding */ getAudienceGeoData),
  nj: () => (/* binding */ getAuthorsData),
  X_: () => (/* binding */ getDigestError),
  QM: () => (/* binding */ getDigestStats),
  uf: () => (/* binding */ getHostsByCount),
  m2: () => (/* binding */ getHostsByEngagement),
  Gw: () => (/* binding */ getInsightsCopilotDynamics),
  p7: () => (/* binding */ getInterestsByCategories),
  _u: () => (/* binding */ getLinksByCount),
  ME: () => (/* binding */ getLinksByEngagement),
  VQ: () => (/* binding */ getOccupationsData),
  lJ: () => (/* binding */ getPotentialCrisesSubjects),
  EI: () => (/* binding */ getSentimentDistribution),
  lh: () => (/* binding */ getSentimentDistributionTS),
  Yc: () => (/* binding */ getSentimentPieChartData),
  sV: () => (/* binding */ getSourceDynamics),
  hd: () => (/* binding */ getSourcesCounts),
  sl: () => (/* binding */ getSourcesCountsForPie),
  aJ: () => (/* binding */ getSourcesOtherCount),
  Cc: () => (/* binding */ getSourcesSentiment),
  b8: () => (/* binding */ getStatsBy),
  _$: () => (/* binding */ getStatsByKey),
  FI: () => (/* binding */ getStatsOverview),
  u7: () => (/* binding */ getSubjects),
  VW: () => (/* binding */ getSubjectsCountsForPie),
  nO: () => (/* binding */ getSubjectsOtherCount),
  HQ: () => (/* binding */ getTagDynamics),
  Q2: () => (/* binding */ getTags),
  mz: () => (/* binding */ getTagsCounts),
  fy: () => (/* binding */ getTagsSentiment),
  $6: () => (/* binding */ getTopSourcesStats),
  mZ: () => (/* binding */ getTotalSourcesCount),
  sf: () => (/* binding */ getTrendDynamics),
  Fg: () => (/* binding */ getTrendStatistics),
  d7: () => (/* binding */ getTrendsList),
  gh: () => (/* binding */ isAuthorsPageLoading),
  iq: () => (/* binding */ isDigestLoaded)
});

// UNUSED EXPORTS: createStatsSelector, getAuthors, getAuthorsByEngagementData, getAuthorsByScoreData, getAuthorsStats, getInfluencersData, getPercentage, getPhrasesBySubjects, getSubjectsSentiment, getTrends, getTrendsListForGeneralLine, isDigestLoading, isPhrasesBySubjectsLoading

// EXTERNAL MODULE: ./node_modules/reselect/es/index.js + 1 modules
var es = __webpack_require__("XFM9");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/state/entities-new/selectors.ts + 2 modules
var selectors = __webpack_require__("+Oxy");
// EXTERNAL MODULE: ./src/state/routing/selectors.ts
var routing_selectors = __webpack_require__("KG/6");
// EXTERNAL MODULE: ./src/utils/constants.ts
var constants = __webpack_require__("L02r");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("zThL");
// EXTERNAL MODULE: ./src/utils/getColorName.js
var getColorName = __webpack_require__("HIua");
;// CONCATENATED MODULE: ./src/utils/smartFeaturesFeedbackLoop/localVisualTags.js

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,defineProperty/* default */.A)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }


/* eslint-disable quote-props */
/* harmony default export */ const localVisualTags = (Object.freeze({
  imageContentSensitivity: {
    drawings: [],
    porn: [],
    sexy: [],
    hentai: [],
    neutral: []
  },
  imageColors: _objectSpread({}, Object.keys(getColorName/* colorNames */.i).reduce(function (prev, key) {
    return _objectSpread(_objectSpread({}, prev), {}, (0,defineProperty/* default */.A)({}, key, []));
  }, {}))
}));
// EXTERNAL MODULE: ./src/containers/filters/filterPanels/SubjectsFilter/utils.ts
var utils = __webpack_require__("TGGk");
;// CONCATENATED MODULE: ./src/state/stats/selectors.ts
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};







var getStatsByKey = function (state, key) { return state.stats.statistics[key]; };
var createStatsSelector = function (key) { return function (state) { return getStatsByKey(state, key); }; };
var getStatsBy = function (state) { return state.stats.statsBy; };
var getSelectedTags = (0,es/* createSelector */.Mz)(routing_selectors/* getQuery */.$Z, function (query) {
    var _a;
    if (typeof (query === null || query === void 0 ? void 0 : query.selectedTags) === 'string') {
        return [Number(query.selectedTags)];
    }
    return ((_a = query === null || query === void 0 ? void 0 : query.selectedTags) === null || _a === void 0 ? void 0 : _a.map(Number)) || [];
});
var getInsightsCopilotDynamics = (0,es/* createSelector */.Mz)(function (state, key) { return createStatsSelector(key)(state); }, selectors/* getSourceEntities */.tw, selectors/* getAuthorEntities */.fU, selectors/* getTagEntities */.ul, selectors/* getTrendEntities */.zR, selectors/* getGeoEntities */.vQ, function (stats, sourceEntities, authorEntities, tagEntities, trendEntities, geoEntities) {
    var _a;
    if (!((_a = stats === null || stats === void 0 ? void 0 : stats.data) === null || _a === void 0 ? void 0 : _a.aggregations))
        return {};
    var aggregations = stats.data.aggregations;
    var createDynamics = function (key, entities) {
        var _a;
        var _b, _c;
        return __assign(__assign({}, aggregations), (_a = {}, _a[key] = __assign(__assign({}, aggregations[key]), { values: (_c = (_b = aggregations[key]) === null || _b === void 0 ? void 0 : _b.values) === null || _c === void 0 ? void 0 : _c.map(function (value) {
                var entity = entities[value.key];
                return __assign(__assign({}, value), entity);
            }) }), _a));
    };
    if (aggregations.tags)
        return createDynamics('tags', tagEntities);
    if (aggregations.sources)
        return createDynamics('sources', sourceEntities);
    if (aggregations.authors)
        return createDynamics('authors', authorEntities);
    if (aggregations.trends)
        return createDynamics('trends', trendEntities);
    if (aggregations.regionIds)
        return createDynamics('regionIds', geoEntities);
    if (aggregations.cityIds)
        return createDynamics('cityIds', geoEntities);
    if (aggregations.dates)
        return __assign(__assign({}, aggregations), { date: aggregations.dates });
    return stats.data.aggregations;
});
var getSourceDynamics = (0,es/* createSelector */.Mz)(createStatsSelector('sourcesDynamics'), selectors/* getSourceEntities */.tw, function (stats, entities) { return (stats
    .data.aggregations.sources.values
    .map(function (value) {
    var entity = entities[value.key];
    return __assign(__assign({}, entity), { dates: value.dates.values, key: value.key, count: value.count });
})); });
var getTotalSourcesCount = (0,es/* createSelector */.Mz)(createStatsSelector('sourcesDynamics'), function (stats) { return (stats.data.aggregations.sourcesCount); });
var getTagDynamics = (0,es/* createSelector */.Mz)(createStatsSelector('tagsDynamics'), getSelectedTags, selectors/* getTagEntities */.ul, function (stats, selectedTags, entities) {
    var _a, _b, _c;
    return ((_c = (_b = (_a = stats === null || stats === void 0 ? void 0 : stats.data) === null || _a === void 0 ? void 0 : _a.aggregations.tags.values) === null || _b === void 0 ? void 0 : _b.filter(function (value) { return selectedTags.includes(value.key); })) === null || _c === void 0 ? void 0 : _c.map(function (value) {
        var entity = __assign({}, entities[value.key]);
        return __assign(__assign({}, entity), { dates: value.dates.values, key: value.key, count: value.count });
    }));
});
var getTrends = (0,es/* createSelector */.Mz)(createStatsSelector('generalDynamics'), selectors/* getTrendEntities */.zR, function (stats, entities) {
    var _a;
    return ((0,lodash.flatten)((_a = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.dates.values) === null || _a === void 0 ? void 0 : _a.map(function (date) {
        var trends = date.trends.values
            .filter(function (trend) { return trend.count > constants/* TREND_THRESHOLD */.GO; });
        if (!trends.length) {
            return null;
        }
        return trends.map(function (trend) {
            var trendKey = trend.key;
            var entity = entities[trendKey];
            return {
                key: date.key,
                date: date.key,
                count: date.count,
                dateAsUtc: date.dateAsUtc,
                trend: {
                    key: trendKey,
                    count: trend.count,
                    authorsCount: trend.authorsCount,
                    engagement: trend.engagement,
                    name: entity && entity.name,
                    sentiment: entity && entity.sentiment,
                    trendDetails: entity && entity.trendDetails,
                },
            };
        });
    }).filter(Boolean)));
});
var getTrendsList = (0,es/* createSelector */.Mz)(createStatsSelector('trendList'), selectors/* getTrendEntities */.zR, function (stats, entities) {
    var values = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.trends.values;
    if (!values)
        return [];
    return values
        .filter(function (value) { return value.count > constants/* TREND_THRESHOLD */.GO; })
        .filter(function (value) { return value.engagement > 0; })
        .map(function (value) {
        var trendKey = value.key;
        var entity = entities[trendKey];
        return {
            key: value.key,
            count: value.count,
            dates: value.dates.values,
            name: entity === null || entity === void 0 ? void 0 : entity.name,
            sentiment: entity === null || entity === void 0 ? void 0 : entity.sentiment,
            engagement: value.engagement,
        };
    });
});
var getTrendsListForGeneralLine = (0,es/* createSelector */.Mz)(createStatsSelector('generalDynamics'), function (stats) {
    var values = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.trends.values;
    if (!values)
        return [];
    return values.filter(function (value) { return value.engagement > 0; });
});
var getTrendDynamics = (0,es/* createSelector */.Mz)(createStatsSelector('generalDynamics'), getTrends, getTrendsListForGeneralLine, function (stats, trends, trendsList) {
    var sortedTrends = trends
        .map(function (date) {
        var _a;
        var trend = date.trend;
        var fullTrend = trendsList.find(function (t) { return t.key === trend.key; });
        return __assign(__assign({}, date), { trend: __assign(__assign({}, trend), { totalCount: (_a = fullTrend === null || fullTrend === void 0 ? void 0 : fullTrend.count) !== null && _a !== void 0 ? _a : trend.count }) });
    })
        .sort(function (a, b) { return (a.trend.engagement > b.trend.engagement ? 1 : -1); });
    var addedTrends = [];
    return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.dates.values.map(function (date) {
        var filteredTrends = sortedTrends
            .filter(function (trend) { return trend.key === date.key
            && trend.trend.engagement > 0
            && !addedTrends.includes(trend.trend.key); });
        var topTrendByDate = filteredTrends.length
            ? filteredTrends.reduce(function (acc, trend) {
                return trend.trend.engagement > acc.trend.engagement ? trend : acc;
            }, filteredTrends[0])
            : null;
        addedTrends.push(topTrendByDate === null || topTrendByDate === void 0 ? void 0 : topTrendByDate.trend.key);
        return {
            date: date.key,
            count: date.count,
            dateAsUtc: date.dateAsUtc,
            trend: topTrendByDate === null || topTrendByDate === void 0 ? void 0 : topTrendByDate.trend,
        };
    });
});
var getSourcesCounts = (0,es/* createSelector */.Mz)(createStatsSelector('sourcesBarChart'), selectors/* getSourceEntities */.tw, function (stats, entities) {
    var totalCount = (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.metricTotal) || (stats === null || stats === void 0 ? void 0 : stats.data.totalCount);
    return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.sources.values.map(function (value) {
        var entity = entities[value.key];
        return __assign(__assign({}, entity), { total: value.count, percentage: getPercentage(value.count, totalCount) });
    });
});
var getTagsCounts = (0,es/* createSelector */.Mz)(createStatsSelector('tagsBarChart'), getSelectedTags, selectors/* getTagEntities */.ul, function (stats, selectedTags, entities) {
    var _a, _b, _c;
    return ((_c = (_b = (_a = stats === null || stats === void 0 ? void 0 : stats.data) === null || _a === void 0 ? void 0 : _a.aggregations.tags.values) === null || _b === void 0 ? void 0 : _b.filter(function (value) { return selectedTags.includes(value.key); })) === null || _c === void 0 ? void 0 : _c.map(function (value) {
        var entity = __assign({}, entities[value.key]);
        return __assign(__assign({}, entity), { total: value.count });
    }));
});
var getSourcesCountsForPie = (0,es/* createSelector */.Mz)(createStatsSelector('sourcesPieChart'), selectors/* getSourceEntities */.tw, function (stats, entities) { return (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.sources.values.map(function (value) {
    var entity = entities[value.key];
    return __assign(__assign({}, entity), { total: value.count });
})); });
var getSourcesOtherCount = (0,es/* createSelector */.Mz)(createStatsSelector('sourcesPieChart'), function (stats) { return stats.data.aggregations.sources.otherCount; });
var getSourcesSentiment = (0,es/* createSelector */.Mz)(createStatsSelector('sourcesSentimentChart'), selectors/* getSourceEntities */.tw, function (stats, entities) { return (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.sources.values.map(function (value) {
    var entity = entities[value.key];
    var sentiment = value.sentiment.values;
    return __assign(__assign({}, entity), { total: value.count, sentiment: getSentimentDistributionTS(sentiment) });
})); });
var getSubjectsCountsForPie = (0,es/* createSelector */.Mz)(createStatsSelector('subjectsDistributionChart'), function (stats) { return (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.subjects.values.map(function (value) {
    return __assign(__assign({}, value), { total: value.count });
})); });
var getPotentialCrisesSubjects = (0,es/* createSelector */.Mz)(createStatsSelector('subjectsPotentialCrisesChart'), function (stats) {
    if (!(stats === null || stats === void 0 ? void 0 : stats.data))
        return null;
    var totalCount = (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.metricTotal) || (stats === null || stats === void 0 ? void 0 : stats.data.totalCount);
    return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.subjects.values.filter(function (value) { return utils/* SUBJECT_ORDERS */.d.potentialCrisis.includes(value.key); }).map(function (value) {
        return __assign(__assign({}, value), { percentage: getPercentage(value.count, totalCount) });
    });
});
var getSubjectsOtherCount = (0,es/* createSelector */.Mz)(createStatsSelector('subjectsDistributionChart'), function (stats) { return stats.data.aggregations.subjects.otherCount; });
var getSubjectsSentiment = (0,es/* createSelector */.Mz)(createStatsSelector('subjectsSentimentChart'), function (stats) {
    var totalCount = (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.metricTotal) || (stats === null || stats === void 0 ? void 0 : stats.data.totalCount);
    return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.subjects.values.map(function (value) {
        var sentiment = value.sentiment.values;
        return __assign(__assign({}, value), { total: value.count, percentage: getPercentage(value.count, totalCount), sentiment: getSentimentDistributionTS(sentiment) });
    });
});
var getTagsSentiment = (0,es/* createSelector */.Mz)(createStatsSelector('tagsSentimentChart'), getSelectedTags, selectors/* getTagEntities */.ul, function (stats, selectedTags, entities) {
    var _a;
    return ((_a = stats === null || stats === void 0 ? void 0 : stats.data) === null || _a === void 0 ? void 0 : _a.aggregations.tags.values.filter(function (value) { return selectedTags.includes(value.key); }).map(function (value) {
        var entity = __assign({}, entities[value.key]);
        var sentiment = value.sentiment.values;
        return __assign(__assign({}, entity), { total: value.count, sentiment: getSentimentDistributionTS(sentiment) });
    }));
});
var getSentimentPieChartData = (0,es/* createSelector */.Mz)(createStatsSelector('sentimentPie'), function (stats) {
    var sentimentData = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.sentiment.values;
    return sentimentData && sentimentData.reduce(function (distribution, dataPoint) {
        distribution[dataPoint.key] = dataPoint.count;
        return distribution;
    }, {
        positive: 0,
        neutral: 0,
        negative: 0,
        undefined: 0,
    });
});
var getSubjects = (0,es/* createSelector */.Mz)(createStatsSelector('subjectsChart'), function (stats) { return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.subjects.values; });
var getTrendStatistics = (0,es/* createSelector */.Mz)(createStatsSelector('trends'), selectors/* getTrendEntities */.zR, function (trends, entities) {
    if (!trends)
        return null;
    return trends.data.aggregations.trends.values
        .map(function (value) { return (__assign(__assign({}, value), entities[value.key])); });
});
var isPhrasesBySubjectsLoading = function (state) { return state.stats.phrasesBySubjects.isLoading; };
var getPhrasesBySubjects = function (state) { var _a; return (_a = state.stats.phrasesBySubjects.data) === null || _a === void 0 ? void 0 : _a.subjects; };
var getStatsOverview = (0,es/* createSelector */.Mz)(createStatsSelector('statsOverview'), function (stats) {
    if (!stats)
        return {};
    var data = stats.data, prevData = stats.prevData;
    var aggregations = data.aggregations;
    var prevAggregations = prevData.aggregations;
    var nsrCount = aggregations.sentiment.nsr;
    var prevNsrCount = prevAggregations.sentiment.nsr;
    var sentimentData = aggregations.sentiment.values;
    var prevSentimentData = prevAggregations.sentiment.values;
    var metricTotal = aggregations.metricTotal;
    var prevMetricTotal = prevAggregations.metricTotal;
    var total = Number.isInteger(metricTotal) ? metricTotal : data.totalCount;
    var prevTotal = Number.isInteger(prevMetricTotal) ? prevMetricTotal : prevData.totalCount;
    var authorsCount = aggregations.authorsCount;
    var prevAuthorsCount = prevAggregations.authorsCount;
    var engagementCount = aggregations.engagement;
    var prevEngagementCount = prevAggregations.engagement;
    var distributeSentiment = function (distribution, dataPoint) {
        distribution[dataPoint.key] = dataPoint.count;
        return distribution;
    };
    var sentiment = sentimentData.reduce(distributeSentiment, {
        positive: 0,
        neutral: 0,
        negative: 0,
        undefined: 0,
    });
    var prevSentiment = prevSentimentData.reduce(distributeSentiment, {
        positive: 0,
        neutral: 0,
        negative: 0,
        undefined: 0,
    });
    return {
        total: total,
        prevTotal: prevTotal,
        engagementCount: engagementCount,
        authorsCount: authorsCount,
        prevAuthorsCount: prevAuthorsCount,
        prevEngagementCount: prevEngagementCount,
        sentiment: sentiment,
        prevSentiment: prevSentiment,
        nsrCount: nsrCount,
        prevNsrCount: prevNsrCount,
    };
});
var getTopSourcesStats = (0,es/* createSelector */.Mz)(createStatsSelector('topSourcesList'), selectors/* getSourceEntities */.tw, function (stats, entities) {
    var totalCount = (stats === null || stats === void 0 ? void 0 : stats.data.aggregations.metricTotal) || (stats === null || stats === void 0 ? void 0 : stats.data.totalCount);
    return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.sources.values.map(function (value) {
        var prevValue = stats
            .prevData.aggregations.sources.values
            .find(function (v) { return v.key === value.key; }) || {};
        var entity = entities[value.key];
        return __assign(__assign({}, entity), { dates: value.dates.values, percentage: getPercentage(value.count, totalCount), key: value.key, total: value.count, prevTotal: prevValue.count || 0 });
    });
});
var getInterestsByCategories = (0,es/* createSelector */.Mz)(createStatsSelector('audienceInterestsByCategories'), function (stats) {
    var interestCategories = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.authorInterestCategories.values;
    var interests = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.authorInterests.values;
    var interestsByCategoriesData = {
        totalCount: 0,
        categories: interestCategories,
        interests: [],
    };
    if (interests) {
        interests.forEach(function (x) {
            interestsByCategoriesData.interests.push({
                name: x.key,
                count: x.count,
                engagement: x.totalEngagement,
            });
        });
    }
    interestCategories.forEach(function (x) {
        interestsByCategoriesData.totalCount += x.count;
    });
    return interestsByCategoriesData;
});
var getOccupationsData = (0,es/* createSelector */.Mz)(createStatsSelector('audienceOccupations'), function (stats) {
    var data = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.authorJobs.values;
    var audienceData = {
        totalCount: 0,
        data: [],
    };
    if (data) {
        data.forEach(function (x) {
            audienceData.data.push({
                name: x.key,
                authors: x.count,
                engagement: x.totalEngagement,
            });
            audienceData.totalCount += x.count;
        });
    }
    return audienceData;
});
var getAuthors = function (stats, entities) {
    return stats
        ? stats.map(function (value) {
            var entity = entities[value.key];
            var sentiment = value.sentiment.values;
            return __assign(__assign({}, entity), { mentions: value.count, engagement: value.engagement, interests: value.authorInterests.values, occupations: value.authorJobs.values, sentiment: getSentimentDistributionTS(sentiment), influenceScore: value.influenceScore, normalizedInfluenceScore: (value.influenceScore + value.engagementRateNormalized) || 0, engagementRateByFollowers: value.engagementRateByFollowers, engagementRateByViews: value.engagementRateByViews, engagementP50: value.engagementP50, viewsP50: value.viewsP50 });
        })
        : null;
};
var getAuthorsStats = function (state) { return state.stats.authors; };
var isAuthorsPageLoading = (0,es/* createSelector */.Mz)(getAuthorsStats, function (stats) { return stats === null || stats === void 0 ? void 0 : stats.isLoading; });
var getAuthorsData = (0,es/* createSelector */.Mz)(getAuthorsStats, selectors/* getAuthorEntities */.fU, function (stats, entities) { var _a; return getAuthors((_a = stats.data) === null || _a === void 0 ? void 0 : _a.aggregations.authors.values, entities); });
var getInfluencersData = (0,es/* createSelector */.Mz)(createStatsSelector('authorsTable'), selectors/* getAuthorEntities */.fU, function (stats, entities) { return getAuthors(stats.data.aggregations.influencers.values, entities); });
var getAuthorsByScoreData = (0,es/* createSelector */.Mz)(createStatsSelector('authorsTable'), selectors/* getAuthorEntities */.fU, function (stats, entities) { return getAuthors(stats.data.aggregations.engagementRates.values, entities); });
var getAuthorsByEngagementData = (0,es/* createSelector */.Mz)(createStatsSelector('authorsTableByEngagement'), selectors/* getAuthorEntities */.fU, function (stats, entities) { return getAuthors(stats.data.aggregations.authors.values, entities); });
var getAudienceGeoData = (0,es/* createSelector */.Mz)(createStatsSelector('audienceMap'), function (countries) {
    var _a;
    return (_a = countries === null || countries === void 0 ? void 0 : countries.data.aggregations.countries.values) === null || _a === void 0 ? void 0 : _a.map(function (country) { return ({
        key: country.key,
        count: country.count,
    }); });
});
var getLinksByCount = (0,es/* createSelector */.Mz)(createStatsSelector('linksTableByCount'), function (stats) {
    var links = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.links.values;
    return links === null || links === void 0 ? void 0 : links.map(function (value) {
        var entity = { name: value.key };
        var sentiment = value.sentiment.values;
        return __assign(__assign({}, entity), { mentions: value.count, engagement: value.totalEngagement, sentiment: getSentimentDistributionTS(sentiment) });
    });
});
var getLinksByEngagement = (0,es/* createSelector */.Mz)(createStatsSelector('linksTableByEngagement'), function (stats) {
    var links = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.links.values;
    return links === null || links === void 0 ? void 0 : links.map(function (value) {
        var entity = { name: value.key };
        var sentiment = value.sentiment.values;
        return __assign(__assign({}, entity), { mentions: value.count, engagement: value.totalEngagement, sentiment: getSentimentDistributionTS(sentiment) });
    });
});
var getHostsByCount = (0,es/* createSelector */.Mz)(createStatsSelector('hostsTableByCount'), function (stats) {
    var hosts = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.hosts.values;
    return hosts === null || hosts === void 0 ? void 0 : hosts.map(function (value) {
        var entity = { name: value.key };
        var sentiment = value.sentiment.values;
        return __assign(__assign({}, entity), { mentions: value.count, engagement: value.totalEngagement, sentiment: getSentimentDistributionTS(sentiment) });
    });
});
var getHostsByEngagement = (0,es/* createSelector */.Mz)(createStatsSelector('hostsTableByEngagement'), function (stats) {
    var hosts = stats === null || stats === void 0 ? void 0 : stats.data.aggregations.hosts.values;
    return hosts === null || hosts === void 0 ? void 0 : hosts.map(function (value) {
        var entity = { name: value.key };
        var sentiment = value.sentiment.values;
        return __assign(__assign({}, entity), { mentions: value.count, engagement: value.totalEngagement, sentiment: getSentimentDistributionTS(sentiment) });
    });
});
var getAspectsStats = (0,es/* createSelector */.Mz)(createStatsSelector('aspectsChart'), selectors/* getTagEntities */.ul, function (stats, tagEntities) {
    if (!stats || !stats.data)
        return {};
    var aspects = stats.data.aggregations.sentimentAspects.values;
    var tagsData = stats.data.aggregations.tags.values;
    var tags = tagsData === null || tagsData === void 0 ? void 0 : tagsData.map(function (data) {
        var tag = tagEntities[data.key];
        return __assign(__assign({}, tag), { isTag: true, key: tagEntities[data.key].name, count: data.count, metricValue: data.metricValue, sentiments: data.sentiment.values.reduce(function (acc, sentiment) {
                acc[sentiment.key] = __assign(__assign({}, sentiment), { percentage: Math.round((sentiment.count / data.count) * 100) });
                return acc;
            }, { neutral: {}, positive: {}, negative: {} }) });
    });
    return { aspects: aspects, tags: tags };
});
var getPercentage = function (a, b) {
    if (a === void 0) { a = 0; }
    return Math.round((a * 100) / b);
};
var getSentimentDistribution = function (sentimentData) { return (sentimentData === null || sentimentData === void 0 ? void 0 : sentimentData.reduce(function (distribution, dataPoint) {
    distribution[dataPoint.key] = dataPoint.count;
    return distribution;
}, {
    positive: 0,
    neutral: 0,
    negative: 0,
    undefined: 0,
})); };
var getSentimentDistributionTS = function (sentimentData) { return (sentimentData === null || sentimentData === void 0 ? void 0 : sentimentData.reduce(function (distribution, dataPoint) {
    var _a;
    return (__assign(__assign({}, distribution), (_a = {}, _a[dataPoint.key] = dataPoint.count, _a)));
}, {
    positive: 0,
    neutral: 0,
    negative: 0,
    undefined: 0,
})); };
var getTags = (0,es/* createSelector */.Mz)(createStatsSelector('tagsSelector'), selectors/* getTagEntities */.ul, function (stats, tags) {
    if (!(stats === null || stats === void 0 ? void 0 : stats.data))
        return null;
    return stats === null || stats === void 0 ? void 0 : stats.data.aggregations.tags.values.map(function (tag) { return tags[tag.key]; });
});
var isDigestLoading = function (state) { return state.stats.digest.isLoading; };
var getDigestError = function (state) { return state.stats.digest.error; };
var getDigestStats = (0,es/* createSelector */.Mz)(function (state) { return state.stats.digest.stats; }, function (stats) { return stats === null || stats === void 0 ? void 0 : stats.result; });
var isDigestLoaded = (0,es/* createSelector */.Mz)(isDigestLoading, getDigestStats, function (loading, stats) { return !loading && !!stats; });
var getAllVisualTags = function (state, params) {
    if (params === void 0) { params = { excludedVisualTags: ['imageType', 'imageSubtype'] }; }
    var allVisualTags = (__assign(__assign({}, (state.stats.visualTags.labels || {})), localVisualTags));
    return Object.keys(allVisualTags)
        .filter(function (key) { return !params.excludedVisualTags.includes(key); })
        .reduce(function (visualTags, key) {
        visualTags[key] = allVisualTags[key];
        return visualTags;
    }, {});
};


/***/ }),

/***/ "uIUj":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   J: () => (/* binding */ tagsModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var models_filters_Filter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("+MLa");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("Qyqr");
/* harmony import */ var utils_alert__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("X4yY");
/* eslint no-param-reassign: 0, func-names: 0, require-yield: 0, generator-star-spacing: 0 */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};






var TagsModel = /** @class */ (function (_super) {
    __extends(TagsModel, _super);
    function TagsModel() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            list: {
                idsByTopic: {},
                loading: false,
                error: null,
            },
            tagsDescription: {},
            tagStats: {},
            createTag: {
                tagId: null,
                creating: false,
                error: null,
            },
            deleteTag: {
                deleted: false,
                deleting: false,
                error: null,
            },
        };
        return _this;
    }
    TagsModel.prototype.fetchTags = function (_a) {
        var response_1, error_1;
        var topicId = _a.topicId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.list.loading = true;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.listTags, topicId)];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.idsByTopic[topicId] = response_1.result.tags;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.error = error_1;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.describeTags = function (_a) {
        var response_2, error_2;
        var topicId = _a.topicId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.describeTags, { topicId: topicId })];
                case 1:
                    response_2 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.tagsDescription = response_2;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _b.sent();
                    console.error(error_2);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.fetchTagsWithStats = function (_a) {
        var filter, config, response_3, error_3;
        var topicId = _a.topicId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.fetchTags.bind(this), { topicId: topicId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.describeTags.bind(this), { topicId: topicId })];
                case 2:
                    _b.sent();
                    filter = new models_filters_Filter__WEBPACK_IMPORTED_MODULE_3__/* .Filter */ .dJ({ from: new Date(0), to: new Date() });
                    config = {
                        aggregations: {
                            tags: {},
                        },
                    };
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchStats, { themeId: topicId, config: config, filter: filter })];
                case 3:
                    response_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.tagStats = response_3.result.aggregations.tags.values.reduce(function (stats, _a) {
                            var _b;
                            var key = _a.key, count = _a.count;
                            return (__assign(__assign({}, stats), (_b = {}, _b[key] = count, _b)));
                        }, {});
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_3 = _b.sent();
                    console.error(error_3);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.createTag = function (_a) {
        var topicId, response_4, error_4;
        var _b, _c;
        var tag = _a.tag;
        return __generator(this, function (_d) {
            switch (_d.label) {
                case 0:
                    _d.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _d.sent();
                    this.updateWithImmer(function (state) {
                        state.createTag.creating = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.createTag, topicId, tag)];
                case 2:
                    response_4 = _d.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.fetchTags.bind(this), { topicId: topicId })];
                case 3:
                    _d.sent();
                    this.updateWithImmer(function (state) {
                        state.createTag.creating = false;
                        state.createTag.tagId = response_4.result;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_4 = _d.sent();
                    if (error_4.response.data.errorCode === 'VALIDATION_ERROR' && ((_c = (_b = error_4.response.data.errors) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.errorCode) === 'length_error') {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('The length of a tag name could only be under 100 symbols.'),
                        });
                    }
                    else if (error_4.response.data.errorCode === 'ALREADY_EXISTS') {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('Tag with given name already exists'),
                        });
                    }
                    else if (error_4.response.data.errorCode === 'SUBSCRIPTION_PLAN_VIOLATION') {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('You have reached tags limit for current topic'),
                        });
                    }
                    else {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('Please try again or contact our support team'),
                        });
                    }
                    this.updateWithImmer(function (state) {
                        state.createTag.creating = false;
                        state.createTag.error = error_4;
                    });
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.changeTag = function (_a) {
        var topicId, response, error_5;
        var _b, _c;
        var tag = _a.tag;
        return __generator(this, function (_d) {
            switch (_d.label) {
                case 0:
                    _d.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _d.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.changeTag, topicId, tag)];
                case 2:
                    response = _d.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(__assign({ type: 'UPDATE_ENTITIES' }, response))];
                case 3:
                    _d.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_5 = _d.sent();
                    if (error_5.response.data.errorCode === 'VALIDATION_ERROR' && ((_c = (_b = error_5.response.data.errors) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.errorCode) === 'length_error') {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('The length of a tag name could only be under 100 symbols.'),
                        });
                    }
                    else if (error_5.data.errorCode === 'ALREADY_EXISTS') {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('Tag with given name already exists'),
                        });
                    }
                    else {
                        (0,utils_alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)({
                            title: l('An error has occurred'),
                            message: l('Please try again or contact our support team'),
                        });
                    }
                    console.error(error_5);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.deleteTagFromList = function (tagId) {
        var topicId, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.deleteTag, topicId, tagId)];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.fetchTags.bind(this), { topicId: topicId })];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_6 = _a.sent();
                    console.error(error_6);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.deleteTag = function (tagId) {
        var topicId, response, error_7;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.deleteTag.deleting = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.removeTag, { topicId: topicId, tagId: tagId })];
                case 2:
                    response = _a.sent();
                    if (!!response.lrt) return [3 /*break*/, 4];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.deleteTagFromList.bind(this), tagId)];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    // This is a BAD (VERY BAD) hack. But for now we need to do this
                    // because there is no way to retrieve tagId from LRT later
                    // @ts-ignore
                    window.removeTag__LRT = tagId;
                    _a.label = 5;
                case 5:
                    this.updateWithImmer(function (state) {
                        state.deleteTag.deleting = false;
                        state.deleteTag.deleted = true;
                    });
                    return [3 /*break*/, 7];
                case 6:
                    error_7 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.deleteTag.deleting = false;
                        state.deleteTag.error = error_7;
                    });
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    TagsModel.prototype.clearDeleteTagState = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.deleteTag.deleting = false;
                    state.deleteTag.deleted = false;
                    state.deleteTag.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "fetchTags", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "describeTags", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "fetchTagsWithStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "createTag", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "changeTag", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "deleteTagFromList", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "deleteTag", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], TagsModel.prototype, "clearDeleteTagState", null);
    TagsModel = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Tags')
    ], TagsModel);
    return TagsModel;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var tagsModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(TagsModel);


/***/ }),

/***/ "x5Gk":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   B6: () => (/* binding */ isTagsLoaded),
/* harmony export */   EW: () => (/* binding */ getCreatedTagId),
/* harmony export */   Od: () => (/* binding */ getTagsLoading),
/* harmony export */   Q2: () => (/* binding */ getTags),
/* harmony export */   b2: () => (/* binding */ getTagNames),
/* harmony export */   dj: () => (/* binding */ getDescribeTags),
/* harmony export */   h: () => (/* binding */ getTagsWithStats),
/* harmony export */   nP: () => (/* binding */ getTagById),
/* harmony export */   ou: () => (/* binding */ getTagListByIds),
/* harmony export */   qJ: () => (/* binding */ isCreatingTag)
/* harmony export */ });
/* unused harmony exports getTagIdsByTheme, getTagsStats */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Qyqr");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};



var getTagIdsByTheme = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getCurrentThemeId */ .Md, function (state) { return state.tags.list.idsByTopic; }, function (topicId, tags) { return tags[topicId] || []; });
var isTagsLoaded = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getCurrentThemeId */ .Md, function (state) { return state.tags.list.idsByTopic; }, function (topicId, tags) { return Boolean(tags[topicId]); });
var getTagsLoading = function (state) { return state.tags.list.loading; };
var getTagsStats = function (state) { return state.tags.tagStats; };
var getDescribeTags = function (state) { return state.tags.tagsDescription; };
var getTags = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getTagEntities */ .ul, getTagIdsByTheme, function (entities, ids) {
    return ids
        .map(function (id) { return entities[id]; })
        .filter(function (tag) { return tag; })
        .sort(function (a, b) { return (a.name.toLowerCase() > b.name.toLowerCase() ? 1 : -1); });
});
var getTagNames = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getTags, function (tags) { return tags.map(function (tag) { return tag.name; }); });
var getTagsWithStats = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(getTags, getTagsStats, function (tags, counts) { return tags.map(function (tag) { return (__assign(__assign({}, tag), { mentionsCount: counts[tag.id] || 0 })); }); });
var getTagListByIds = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getTagEntities */ .ul, function (_state, tagIds) { return tagIds; }, function (entities, tagIds) { return tagIds.map(function (id) { return entities[id]; }); });
var getTagById = (0,reselect__WEBPACK_IMPORTED_MODULE_2__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getTagEntities */ .ul, function (_state, tagId) { return tagId; }, function (entities, tagId) { return entities[tagId]; });
var isCreatingTag = function (state) { return state.tags.createTag.creating; };
var getCreatedTagId = function (state) { return state.tags.createTag.tagId; };


/***/ }),

/***/ "612L":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   o: () => (/* binding */ tasksModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var state_tags_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("uIUj");
/* harmony import */ var state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("eTBD");
/* harmony import */ var state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("iY5o");
/* harmony import */ var state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("cpfI");
/* harmony import */ var state_tasks_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("ZV04");
/* harmony import */ var state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("wDA8");
/* eslint no-param-reassign: 0, func-names: 0, require-yield: 0 */
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};









var Tasks = /** @class */ (function (_super) {
    __extends(Tasks, _super);
    function Tasks() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            ids: [],
        };
        return _this;
    }
    Tasks.prototype.cancelTask = function (_a) {
        var err_1;
        var themeId = _a.themeId, taskId = _a.taskId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.tasks.cancel, { themeId: themeId, taskId: taskId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamModel */ .K.action.lrtProcessingStarted())];
                case 2:
                    _b.sent();
                    // TODO: UIEntities - remove legacy usage
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_5__/* .clearUiEntityState */ .kP)({ entity: 'sources' }))];
                case 3:
                    // TODO: UIEntities - remove legacy usage
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_4__/* .uiEntitiesModel */ .P.action.clearUiEntityState({ entity: 'sources' }))];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    err_1 = _b.sent();
                    console.error(err_1);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    Tasks.prototype.clearTasks = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.ids = [];
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Tasks.prototype.storeTasks = function (newTasks, storedTasks, pendingTaskId) {
        var notStoredTasks_1, err_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 7, , 8]);
                    if (!newTasks.includes(pendingTaskId)) return [3 /*break*/, 2];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamModel */ .K.action.lrtProcessingStarted())];
                case 1:
                    _a.sent();
                    _a.label = 2;
                case 2:
                    if (!(newTasks.length === 0)) return [3 /*break*/, 4];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.clearTasks.bind(this))];
                case 3:
                    _a.sent();
                    _a.label = 4;
                case 4:
                    notStoredTasks_1 = this.getNotStoredTasks(storedTasks, newTasks);
                    if (!(notStoredTasks_1.length > 0)) return [3 /*break*/, 6];
                    this.updateWithImmer(function (state) {
                        state.ids = state.ids.concat(notStoredTasks_1);
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_mentionStream_model__WEBPACK_IMPORTED_MODULE_6__/* .mentionStreamModel */ .K.action.lrtProcessingStarted())];
                case 5:
                    _a.sent();
                    _a.label = 6;
                case 6: return [3 /*break*/, 8];
                case 7:
                    err_2 = _a.sent();
                    console.error("[storeTasks] tryCatch error: ".concat(err_2));
                    throw err_2;
                case 8: return [2 /*return*/];
            }
        });
    };
    Tasks.prototype.getNotStoredTasks = function (storedTasks, newTasks) {
        return newTasks.filter(function (item) { return !storedTasks.includes(item); });
    };
    Tasks.prototype.fetchTasks = function (_a) {
        var response, newTasks, storedTasks, pendingTask, err_3;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.tasks.list, { themeId: themeId })];
                case 1:
                    response = _b.sent();
                    newTasks = response.result.processes;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_tasks_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getTaskIds */ .eA)];
                case 2:
                    storedTasks = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getPendingLrtId */ .Pf)];
                case 3:
                    pendingTask = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.storeTasks.bind(this), newTasks, storedTasks, pendingTask)];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    err_3 = _b.sent();
                    console.error("[fetchTasks] tryCatch error: ".concat(err_3));
                    console.error(err_3);
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    Tasks.prototype.retryTask = function (_a) {
        var err_4;
        var themeId = _a.themeId, taskId = _a.taskId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.tasks.retry, { themeId: themeId, taskId: taskId })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    err_4 = _b.sent();
                    console.error(err_4);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Tasks.prototype.updateTasks = function (_a) {
        var pendingTask, newTasks, storedTasks, removeTagTask, error_1;
        var result = _a.result, entities = _a.entities;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 7, , 8]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_mentionStream_selectors__WEBPACK_IMPORTED_MODULE_8__/* .getPendingLrtId */ .Pf)];
                case 1:
                    pendingTask = _b.sent();
                    newTasks = result.tasks;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_tasks_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getTaskIds */ .eA)];
                case 2:
                    storedTasks = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(this.storeTasks.bind(this), newTasks, storedTasks, pendingTask)];
                case 3:
                    _b.sent();
                    removeTagTask = Object.keys(entities.tasks)
                        .map(function (key) { return entities.tasks[key]; })
                        .find(function (task) { return task.type === 'removeTag' && task.status === 'completed'; });
                    if (!removeTagTask) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(state_tags_model__WEBPACK_IMPORTED_MODULE_3__/* .tagsModel */ .J.deleteTagFromList.bind(state_tags_model__WEBPACK_IMPORTED_MODULE_3__/* .tagsModel */ .J), window.removeTag__LRT)];
                case 4:
                    _b.sent();
                    delete window.removeTag__LRT;
                    _b.label = 5;
                case 5: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)({ type: 'UPDATE_ENTITIES', entities: entities })];
                case 6:
                    _b.sent();
                    return [3 /*break*/, 8];
                case 7:
                    error_1 = _b.sent();
                    console.error("[updateTasks] tryCatch error: ".concat(error_1));
                    console.error(error_1);
                    return [3 /*break*/, 8];
                case 8: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Tasks.prototype, "cancelTask", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Tasks.prototype, "clearTasks", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object, Object, String]),
        __metadata("design:returntype", void 0)
    ], Tasks.prototype, "storeTasks", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Tasks.prototype, "fetchTasks", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Tasks.prototype, "retryTask", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Tasks.prototype, "updateTasks", null);
    Tasks = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Tasks')
    ], Tasks);
    return Tasks;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var tasksModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(Tasks);


/***/ }),

/***/ "ZV04":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  $R: () => (/* binding */ getCurrentTask),
  eA: () => (/* binding */ getTaskIds)
});

// UNUSED EXPORTS: getTasks

// EXTERNAL MODULE: ./node_modules/reselect/es/index.js + 1 modules
var es = __webpack_require__("XFM9");
// EXTERNAL MODULE: ./src/state/entities-new/selectors.ts + 2 modules
var selectors = __webpack_require__("+Oxy");
// EXTERNAL MODULE: ./src/state/themes/selectors.ts
var themes_selectors = __webpack_require__("Qyqr");
;// CONCATENATED MODULE: ./src/state/tasks/utils.ts
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
function decorateTask(task) {
    return __assign(__assign({}, task), { determinate: isTaskDeterminate(task), percentage: getPercentage(task) });
}
function getPercentage(task) {
    if (!isTaskDeterminate(task)) {
        return undefined;
    }
    var percentage = (task.processed * 100) / task.total;
    return percentage > 1 ? percentage : 1;
}
function isTaskDeterminate(task) {
    return !!(task.total && task.processed);
}

;// CONCATENATED MODULE: ./src/state/tasks/selectors.ts




var getTaskIds = function (state) { return state.tasks.ids; };
var getTasks = (0,es/* createSelector */.Mz)(getTaskIds, selectors/* getTaskEntities */.xk, function (ids, tasks) { return ids.map(function (id) { return tasks[id]; }); });
var getCurrentTask = (0,es/* createSelector */.Mz)(getTasks, themes_selectors/* getCurrentThemeId */.Md, function (tasks, themeId) { return (tasks
    .filter(function (task) { return (task === null || task === void 0 ? void 0 : task.themeId) === themeId && (task === null || task === void 0 ? void 0 : task.status) !== 'completed'; })
    .map(decorateTask)
    .reverse()[0]); });


/***/ }),

/***/ "JJJ0":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   i: () => (/* binding */ themesModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IH55");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
/* harmony import */ var models_Topic__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("31cT");
/* harmony import */ var state_tags_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("uIUj");
/* harmony import */ var state_users_model__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("lWdd");
/* harmony import */ var state_session_model__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("V7KL");
/* harmony import */ var state_integrations_model__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("mBdu");
/* harmony import */ var state_account_model__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("RHZg");
/* harmony import */ var state_settings_model__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("C0Rk");
/* harmony import */ var state_authors_model__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("azyO");
/* harmony import */ var state_channels_model__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("iSPL");
/* harmony import */ var state_sources_model__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("kJVi");
/* harmony import */ var state_analytics_model__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("+9Gl");
/* harmony import */ var state_currentUser_model__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("cGQa");
/* harmony import */ var state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("eTBD");
/* harmony import */ var state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("iY5o");
/* harmony import */ var state_routing_actions__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("8W5t");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("Qyqr");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__("X9tB");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__("3o2z");
/* harmony import */ var state_themes_utils__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__("UN+n");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__("9jXX");
/* harmony import */ var utils_historyCollection__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__("mo7E");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__("2N3d");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */

























var defaultFilter = utils_Mutable__WEBPACK_IMPORTED_MODULE_23__/* .Mutable */ .rV.from({ from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_21__/* .getDayMonthAgo */ .y8)(), to: new Date() });
var themeStatsConfig = { aggregations: { date: { interval: 'Day' }, sentiment: {} } };
var Themes = /** @class */ (function (_super) {
    __extends(Themes, _super);
    function Themes() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            historyCollectionValidation: {
                loading: false,
                validation: null,
                error: null,
            },
            historyCollection: {
                elastic: { info: null },
            },
            historyInfo: {
                loading: false,
                info: null,
            },
            lastHistoryDataRequest: {
                error: null,
            },
            clearMentions: {
                isMentionsClearing: false,
            },
            filterReady: false,
            currentTheme: null,
            searchQuery: '',
            sortType: 'NAME',
            changeTopicScale: {
                changed: false,
                loading: false,
            },
            audit: {
                loading: false,
            },
            list: {
                ids: [],
                loading: false,
            },
            listWithoutStats: {
                ids: [],
                loading: false,
            },
            statsByTheme: {},
            themeDetails: {
                list: {},
                loading: false,
            },
            notifications: {
                alerts: {
                    data: [],
                    loading: false,
                },
                reports: {
                    data: [],
                    loading: false,
                },
            },
            notificationsUsers: {
                users: [],
                loading: false,
            },
        };
        return _this;
    }
    Themes.prototype.themeNotFound = function (_a) {
        var impersonateAllowed, accountAccessDenied, error_1, error_2;
        var _b, _c;
        var themeId = _a.themeId, _d = _a.allowed, allowed = _d === void 0 ? undefined : _d, _e = _a.sessionRestoring, sessionRestoring = _e === void 0 ? undefined : _e;
        return __generator(this, function (_f) {
            switch (_f.label) {
                case 0:
                    _f.trys.push([0, 14, , 16]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_19__/* .isCurrentUserAdmin */ .u4)];
                case 1:
                    impersonateAllowed = _f.sent();
                    if (!(!allowed && !impersonateAllowed)) return [3 /*break*/, 4];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_17__/* .replace */ .HC)({ pathname: '/themes/not_found' }))];
                case 2:
                    _f.sent();
                    if (sessionRestoring) {
                        return [2 /*return*/];
                    }
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .cancel */ .ZT)()];
                case 3:
                    _f.sent();
                    _f.label = 4;
                case 4:
                    accountAccessDenied = false;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_session_model__WEBPACK_IMPORTED_MODULE_6__/* .sessionModel */ .S.action.impersonate({ themeId: themeId, accountId: null }))];
                case 5:
                    _f.sent();
                    _f.label = 6;
                case 6:
                    _f.trys.push([6, 8, , 13]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchTheme, { themeId: themeId })];
                case 7:
                    _f.sent();
                    return [3 /*break*/, 13];
                case 8:
                    error_1 = _f.sent();
                    if (!(((_c = (_b = error_1 === null || error_1 === void 0 ? void 0 : error_1.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.message) === 'ACCOUNT_ACCESS_DENIED')) return [3 /*break*/, 12];
                    accountAccessDenied = true;
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_currentUser_model__WEBPACK_IMPORTED_MODULE_14__/* .currentUserStateModel */ .b.action.fetchUserProfile())];
                case 9:
                    _f.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_account_model__WEBPACK_IMPORTED_MODULE_8__/* .accountModel */ .h.action.fetchAccount())];
                case 10:
                    _f.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_17__/* .replace */ .HC)({ pathname: '/settings' }))];
                case 11:
                    _f.sent();
                    _f.label = 12;
                case 12: return [3 /*break*/, 13];
                case 13: return [3 /*break*/, 16];
                case 14:
                    error_2 = _f.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_routing_actions__WEBPACK_IMPORTED_MODULE_17__/* .replace */ .HC)({ pathname: '/themes/not_found' }))];
                case 15:
                    _f.sent();
                    return [3 /*break*/, 16];
                case 16: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchGeneralThemeInfo = function (_a) {
        var response_1, error_3;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 5]);
                    this.updateWithMutable(function (state) {
                        state.themeDetails.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchTheme, { themeId: themeId })];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.themeDetails.loading = false;
                        state.themeDetails.list[themeId] = response_1;
                    });
                    return [3 /*break*/, 5];
                case 2:
                    error_3 = _b.sent();
                    if (!(0,state_themes_utils__WEBPACK_IMPORTED_MODULE_24__/* .isThemeAccessDenied */ .t)(error_3)) return [3 /*break*/, 4];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .fork */ .Zy)(this.themeNotFound, { themeId: themeId })];
                case 3:
                    _b.sent();
                    _b.label = 4;
                case 4: return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemeData = function (_a) {
        var shouldFetchHistory, error_4;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 10, , 11]);
                    if (!themeId) return [3 /*break*/, 8];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_tags_model__WEBPACK_IMPORTED_MODULE_4__/* .tagsModel */ .J.action.fetchTags({ topicId: themeId }))];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_users_model__WEBPACK_IMPORTED_MODULE_5__/* .usersModel */ .O.action.fetchUsers({ themeId: themeId }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_integrations_model__WEBPACK_IMPORTED_MODULE_7__/* .integrationsModel */ .F.action.fetchIntegrations({ themeId: themeId }))];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, this.fetchGeneralThemeInfo({ themeId: themeId })];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .canViewHistory */ .yu)];
                case 5:
                    shouldFetchHistory = _b.sent();
                    if (!shouldFetchHistory) return [3 /*break*/, 7];
                    return [4 /*yield*/, this.fetchThemeHistoryCollections({ themeId: themeId })];
                case 6:
                    _b.sent();
                    _b.label = 7;
                case 7: return [3 /*break*/, 9];
                case 8: throw new Error('[fetchThemeData]: No themeId was provided');
                case 9: return [3 /*break*/, 11];
                case 10:
                    error_4 = _b.sent();
                    console.error(error_4);
                    return [3 /*break*/, 11];
                case 11: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemes = function () {
        var response, themeIds_1, stats_1, statsByTheme_1, e_1, error_5;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 6, , 7]);
                    this.updateWithMutable(function (state) {
                        state.list.loading = true;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.list, defaultFilter)];
                case 1:
                    response = _a.sent();
                    themeIds_1 = response.result.themes;
                    this.updateWithMutable(function (state) {
                        state.list.loading = false;
                        state.list.ids = themeIds_1;
                    });
                    _a.label = 2;
                case 2:
                    _a.trys.push([2, 4, , 5]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.stats.fetchThemeListStats, { filter: defaultFilter, config: themeStatsConfig })];
                case 3:
                    stats_1 = _a.sent();
                    statsByTheme_1 = themeIds_1.reduce(function (byId, themeId) {
                        var _a;
                        var themeStats = stats_1.result.themes[themeId];
                        return __assign(__assign({}, byId), (_a = {}, _a[themeId] = themeStats
                            ? __assign({ total: themeStats.totalCount }, themeStats.aggregations) : {}, _a));
                    }, {});
                    this.updateWithMutable(function (state) {
                        state.statsByTheme = statsByTheme_1;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    e_1 = _a.sent();
                    console.error(e_1);
                    return [3 /*break*/, 5];
                case 5: return [3 /*break*/, 7];
                case 6:
                    error_5 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.list.loading = false;
                        state.list.ids = [];
                    });
                    console.error(error_5);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemesWithoutStats = function () {
        var response_2, error_6;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithMutable(function (state) {
                        state.listWithoutStats.loading = true;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.list, defaultFilter)];
                case 1:
                    response_2 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.listWithoutStats.loading = false;
                        state.listWithoutStats.ids = response_2.result.themes;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_6 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.listWithoutStats.loading = false;
                    });
                    console.error(error_6);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemeAudit = function (_a) {
        var response_3, error_7;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithMutable(function (state) {
                        state.audit.loading = true;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchThemeAudit, { themeId: themeId })];
                case 1:
                    response_3 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.audit.loading = false;
                        state.audit.events = response_3;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_7 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.audit.loading = false;
                        state.audit.error = error_7;
                    });
                    console.error(error_7);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.deleteTheme = function (_a) {
        var error_8;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.delete, { themeId: themeId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(themesModel.action.fetchThemes())];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_settings_model__WEBPACK_IMPORTED_MODULE_9__/* .settingsModel */ .N.action.fetchAccountInfo())];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_currentUser_model__WEBPACK_IMPORTED_MODULE_14__/* .currentUserStateModel */ .b.action.fetchUserProfile())];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_13__/* .analyticsStateModel */ .j.sendAnalyticalEvent({ eventType: 'Theme: deleted' })];
                case 5:
                    _b.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_8 = _b.sent();
                    console.error(error_8);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.collectEngagement = function (_a) {
        var error_9;
        var themeId = _a.themeId, from = _a.from, to = _a.to;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.collectEngagement, { themeId: themeId, from: from, to: to })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchGeneralThemeInfo({ themeId: themeId })];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_9 = _b.sent();
                    console.error(error_9);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.collectCustomHistory = function (_a) {
        var error_10;
        var themeId = _a.themeId, from = _a.from, to = _a.to, _b = _a.paid, paid = _b === void 0 ? undefined : _b, historySource = _a.historySource;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.collectCustomHistory, { themeId: themeId, from: from, to: to, paid: paid, historySource: historySource })];
                case 1:
                    _c.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_10 = _c.sent();
                    console.error(error_10);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.stopHistoryCollection = function (_a) {
        var error_11;
        var themeId = _a.themeId, historySource = _a.historySource;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.stopHistoryCollection, { themeId: themeId, historySource: historySource })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_11 = _b.sent();
                    console.error(error_11);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemeExclusions = function (_a) {
        var error_12;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_authors_model__WEBPACK_IMPORTED_MODULE_10__/* .authorsModel */ .g.action.fetchExcludedAuthors({ themeId: themeId }))];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_sources_model__WEBPACK_IMPORTED_MODULE_12__/* .sourcesModel */ .o.action.fetchExcludedSources({ themeId: themeId }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_channels_model__WEBPACK_IMPORTED_MODULE_11__/* .channelsModel */ .S.action.fetchExcludedChannels({ themeId: themeId }))];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_12 = _b.sent();
                    console.error(error_12);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.sortThemes = function (_a) {
        var sortType = _a.sortType;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    this.updateWithMutable(function (state) {
                        state.sortType = sortType;
                    });
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_13__/* .analyticsStateModel */ .j.sendAnalyticalEvent({ eventType: 'Theme list: sorted', properties: { type: sortType } })];
                case 1:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    Themes.prototype.searchThemes = function (_a) {
        var searchQuery = _a.searchQuery;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    this.updateWithMutable(function (state) {
                        state.searchQuery = searchQuery;
                    });
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_13__/* .analyticsStateModel */ .j.sendAnalyticalEvent({ eventType: 'Theme list: searched', properties: { search: searchQuery } })];
                case 1:
                    _b.sent();
                    return [2 /*return*/];
            }
        });
    };
    Themes.prototype.setCurrentTheme = function (_a) {
        var currentThemeId, error_13;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    this.updateWithMutable(function (state) {
                        state.currentTheme = Number(themeId);
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    currentThemeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_15__/* .uiEntitiesModel */ .P.action.clearUiEntityState({ entity: 'mentions' }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_entities_new_ui_model__WEBPACK_IMPORTED_MODULE_15__/* .uiEntitiesModel */ .P.action.clearUiEntityState({ entity: 'sources' }))];
                case 3:
                    _b.sent();
                    if (!(String(currentThemeId) !== themeId)) return [3 /*break*/, 5];
                    return [4 /*yield*/, this.fetchThemeData({ themeId: themeId })];
                case 4:
                    _b.sent();
                    _b.label = 5;
                case 5: return [3 /*break*/, 7];
                case 6:
                    error_13 = _b.sent();
                    console.error(error_13);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.resetCurrentTheme = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithMutable(function (state) {
                    state.currentTheme = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Themes.prototype.setFilterReady = function (_a) {
        var ready = _a.ready;
        return __generator(this, function (_b) {
            this.updateWithMutable(function (state) {
                state.filterReady = ready;
            });
            return [2 /*return*/];
        });
    };
    Themes.prototype.updateThemeName = function (_a) {
        var themeId, error_14;
        var name = _a.name;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 6, , 7]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    themeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_entities_ui_actions__WEBPACK_IMPORTED_MODULE_16__/* .updateUiThemes */ .qw)({ ids: [themeId], value: { name: name } }))];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.updateName, { themeId: themeId, name: name })];
                case 3:
                    _b.sent();
                    return [4 /*yield*/, this.fetchGeneralThemeInfo({ themeId: themeId })];
                case 4:
                    _b.sent();
                    return [4 /*yield*/, state_analytics_model__WEBPACK_IMPORTED_MODULE_13__/* .analyticsStateModel */ .j.sendAnalyticalEvent({ eventType: 'Theme: name changed' })];
                case 5:
                    _b.sent();
                    return [3 /*break*/, 7];
                case 6:
                    error_14 = _b.sent();
                    console.error(error_14);
                    return [3 /*break*/, 7];
                case 7: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.clearMentions = function (_a) {
        var error_15;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    this.updateWithMutable(function (state) {
                        state.clearMentions.isMentionsClearing = true;
                    });
                    return [4 /*yield*/, this.purgeThemeMentions({ themeId: themeId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchThemeData({ themeId: themeId })];
                case 2:
                    _b.sent();
                    this.updateWithMutable(function (state) {
                        state.clearMentions.isMentionsClearing = false;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_15 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.clearMentions.isMentionsClearing = false;
                        state.clearMentions.error = error_15;
                    });
                    console.error(error_15);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.purgeThemeMentions = function (_a) {
        var error_16;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.purgeThemeMentions, { themeId: themeId })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_16 = _b.sent();
                    console.error(error_16);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemeHistoryData = function (_a) {
        var error_17;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 4, , 5]);
                    this.updateWithMutable(function (state) {
                        state.lastHistoryDataRequest.themeId = themeId;
                        state.lastHistoryDataRequest.error = null;
                    });
                    return [4 /*yield*/, this.fetchGeneralThemeInfo({ themeId: themeId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, this.fetchThemeHistoryCollections({ themeId: themeId })];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)((0,state_utils__WEBPACK_IMPORTED_MODULE_20__/* .getAction */ .Th)('FETCH_ACCOUNT_HISTORY_STATS_REQUEST')())];
                case 3:
                    _b.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_17 = _b.sent();
                    this.updateWithMutable(function (state) {
                        state.lastHistoryDataRequest.error = error_17;
                    });
                    console.error(error_17);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemeHistoryCollections = function (_a) {
        var error_18;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, this.fetchThemeHistoryInfoBySource({ themeId: themeId, historySource: models_Topic__WEBPACK_IMPORTED_MODULE_3__/* .HistorySources */ .J9.ELASTIC })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_18 = _b.sent();
                    console.error({ error: error_18 });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchThemeHistoryInfoBySource = function (_a) {
        var response_4, error_19;
        var themeId = _a.themeId, _b = _a.historySource, historySource = _b === void 0 ? models_Topic__WEBPACK_IMPORTED_MODULE_3__/* .HistorySources */ .J9.ELASTIC : _b;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchThemeHistoryInfo, { themeId: themeId, historySource: historySource })];
                case 1:
                    response_4 = _c.sent();
                    this.updateWithMutable(function (state) {
                        state.historyCollection[historySource].info = response_4;
                        state.historyInfo.info = response_4;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_19 = _c.sent();
                    console.error({ error: error_19 });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.validateHistoryCollection = function (_a) {
        var validation_1, notificationText_1, isAllowed, hasNotification, isPaidCollection, isOutOfDeepCollections, error_20;
        var themeId = _a.themeId, from = _a.from, to = _a.to, _b = _a.paid, paid = _b === void 0 ? undefined : _b;
        return __generator(this, function (_c) {
            switch (_c.label) {
                case 0:
                    _c.trys.push([0, 4, , 5]);
                    this.updateWithMutable(function (state) {
                        state.historyCollectionValidation.loading = true;
                        state.historyCollectionValidation.error = null;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.validateHistoryCollection, { themeId: themeId, from: from, to: to, paid: paid })];
                case 1:
                    validation_1 = _c.sent();
                    notificationText_1 = validation_1.notificationText, isAllowed = validation_1.isAllowed;
                    hasNotification = function (notificationTextType) { return notificationText_1.some(function (t) { return t === notificationTextType; }); };
                    if (!!isAllowed) return [3 /*break*/, 3];
                    isPaidCollection = hasNotification(utils_historyCollection__WEBPACK_IMPORTED_MODULE_22__/* .NOTIFICATION_TEXT_TYPE */ .Px.OVER_FREE_DATE_RANGE);
                    isOutOfDeepCollections = hasNotification(utils_historyCollection__WEBPACK_IMPORTED_MODULE_22__/* .NOTIFICATION_TEXT_TYPE */ .Px.DEEP_COLLECTIONS_LIMIT_EXCEEDED);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .put */ .yJ)(state_analytics_model__WEBPACK_IMPORTED_MODULE_13__/* .analyticsStateModel */ .j.action.sendAnalyticalEvent({
                            eventType: 'History collection rejected',
                            properties: {
                                value: isPaidCollection ? 'paid collection' : isOutOfDeepCollections && 'deep collections unavailable',
                            },
                        }))];
                case 2:
                    _c.sent();
                    _c.label = 3;
                case 3:
                    this.updateWithMutable(function (state) {
                        state.historyCollectionValidation.loading = false;
                        state.historyCollectionValidation.validation = validation_1;
                    });
                    return [3 /*break*/, 5];
                case 4:
                    error_20 = _c.sent();
                    this.updateWithMutable(function (state) {
                        state.historyCollectionValidation.loading = false;
                        state.historyCollectionValidation.error = error_20;
                    });
                    console.error(error_20);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.resetHistoryCollectionValidation = function () {
        return __generator(this, function (_a) {
            this.updateWithMutable(function (state) {
                state.historyCollectionValidation.loading = false;
                state.historyCollectionValidation.error = null;
                state.historyCollectionValidation.validation = null;
            });
            return [2 /*return*/];
        });
    };
    Themes.prototype.fetchNotificationsUsers = function () {
        var topicId, response_5, error_21;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.notificationsUsers.loading = true;
                        state.notificationsUsers.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchNotificationsUsers, { topicId: topicId })];
                case 2:
                    response_5 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.notificationsUsers.loading = false;
                        state.notificationsUsers.loaded = true;
                        state.notificationsUsers.users = response_5.users;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_21 = _a.sent();
                    console.error({ error: error_21 });
                    this.updateWithMutable(function (state) {
                        state.notificationsUsers.loading = false;
                        state.notificationsUsers.loaded = true;
                        state.notificationsUsers.error = error_21;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchAlerts = function () {
        var topicId, response_6, error_22;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.notifications.alerts.loading = true;
                        state.notifications.alerts.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchAlerts, { topicId: topicId })];
                case 2:
                    response_6 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.notifications.alerts.loading = false;
                        state.notifications.alerts.loaded = true;
                        state.notifications.alerts.data = response_6.alerts;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_22 = _a.sent();
                    console.error({ error: error_22 });
                    this.updateWithMutable(function (state) {
                        state.notifications.alerts.loading = false;
                        state.notifications.alerts.loaded = true;
                        state.notifications.alerts.error = error_22;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.saveAlert = function (newAlert) {
        var topicId, error_23;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.saveAlert, { topicId: topicId, alert: newAlert.toApi() })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAlerts()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_23 = _a.sent();
                    console.error(error_23);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.updateAlert = function (updatedAlert) {
        var topicId, error_24;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.updateAlert, { topicId: topicId, alert: updatedAlert.toApi() })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAlerts()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_24 = _a.sent();
                    console.error(error_24);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.removeAlert = function (alertId) {
        var topicId, e_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.removeAlert, { topicId: topicId, alertId: alertId })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchAlerts()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    e_2 = _a.sent();
                    console.error(e_2);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.fetchReports = function () {
        var topicId, response_7, error_25;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.notifications.reports.loading = true;
                        state.notifications.reports.loaded = false;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.fetchRecurrentEmailReports, { topicId: topicId })];
                case 2:
                    response_7 = _a.sent();
                    this.updateWithMutable(function (state) {
                        state.notifications.reports.loading = false;
                        state.notifications.reports.loaded = true;
                        state.notifications.reports.data = response_7.reports;
                    });
                    return [3 /*break*/, 4];
                case 3:
                    error_25 = _a.sent();
                    console.error({ error: error_25 });
                    this.updateWithMutable(function (state) {
                        state.notifications.reports.loading = false;
                        state.notifications.reports.loaded = true;
                        state.notifications.reports.error = error_25;
                    });
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.saveReport = function (newReport) {
        var topicId, error_26;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.saveRecurrentEmailReport, { topicId: topicId, report: newReport.toApi() })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchReports()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_26 = _a.sent();
                    console.error(error_26);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.updateReport = function (updatedReport) {
        var topicId, error_27;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.updateRecurrentEmailReport, { topicId: topicId, report: updatedReport.toApi() })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchReports()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    error_27 = _a.sent();
                    console.error(error_27);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    Themes.prototype.removeReport = function (reportId) {
        var topicId, e_3;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 4, , 5]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_18__/* .getCurrentThemeId */ .Md)];
                case 1:
                    topicId = _a.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.removeRecurrentEmailReport, { topicId: topicId, reportId: reportId })];
                case 2:
                    _a.sent();
                    return [4 /*yield*/, this.fetchReports()];
                case 3:
                    _a.sent();
                    return [3 /*break*/, 5];
                case 4:
                    e_3 = _a.sent();
                    console.error(e_3);
                    return [3 /*break*/, 5];
                case 5: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchGeneralThemeInfo", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchThemeData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchThemes", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchThemesWithoutStats", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchThemeAudit", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "deleteTheme", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "collectEngagement", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "collectCustomHistory", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "stopHistoryCollection", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchThemeExclusions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "sortThemes", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "searchThemes", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "setCurrentTheme", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "resetCurrentTheme", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "setFilterReady", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "updateThemeName", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "clearMentions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchThemeHistoryData", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "validateHistoryCollection", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "resetHistoryCollectionValidation", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchNotificationsUsers", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchAlerts", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "saveAlert", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "updateAlert", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Number]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "removeAlert", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "fetchReports", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "saveReport", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "updateReport", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Number]),
        __metadata("design:returntype", void 0)
    ], Themes.prototype, "removeReport", null);
    Themes = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .namespace */ .MF)('Themes')
    ], Themes);
    return Themes;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .StateModel */ .Nd));
var themesModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_1__/* .pixieDust */ .kJ)(Themes);


/***/ }),

/***/ "Qyqr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $i: () => (/* binding */ getIsThemesLoading),
/* harmony export */   Au: () => (/* binding */ isThemeMentionsClearing),
/* harmony export */   BN: () => (/* binding */ getSortType),
/* harmony export */   Ch: () => (/* binding */ getCurrentThemeIntegrations),
/* harmony export */   Dj: () => (/* binding */ canUseFeedbackLoopFeature),
/* harmony export */   E7: () => (/* binding */ canViewChannels),
/* harmony export */   EC: () => (/* binding */ getCurrentThemePermissionValue),
/* harmony export */   EY: () => (/* binding */ getCurrentThemeName),
/* harmony export */   GF: () => (/* binding */ hasUnlimitedHistory),
/* harmony export */   Gl: () => (/* binding */ getManagedThemes),
/* harmony export */   Hy: () => (/* binding */ canViewIntegrations),
/* harmony export */   I2: () => (/* binding */ getIsThemesWithoutStatsLoading),
/* harmony export */   Lf: () => (/* binding */ getHistoryInfo),
/* harmony export */   M2: () => (/* binding */ canAddMention),
/* harmony export */   MC: () => (/* binding */ getCurrentThemeSamplingRate),
/* harmony export */   Md: () => (/* binding */ getCurrentThemeId),
/* harmony export */   Mn: () => (/* binding */ isThemeDetailsLoading),
/* harmony export */   Mq: () => (/* binding */ canEditSavedFilter),
/* harmony export */   N: () => (/* binding */ canShowLogoFilter),
/* harmony export */   N4: () => (/* binding */ canRemoveSystemTags),
/* harmony export */   O9: () => (/* binding */ canCustomizeMentionWall),
/* harmony export */   OO: () => (/* binding */ getReportsError),
/* harmony export */   Pr: () => (/* binding */ isAuditPageLoading),
/* harmony export */   Q4: () => (/* binding */ getReports),
/* harmony export */   S$: () => (/* binding */ getHistoryCollectionValidation),
/* harmony export */   S1: () => (/* binding */ getAlertsError),
/* harmony export */   SR: () => (/* binding */ canSaveFilter),
/* harmony export */   TZ: () => (/* binding */ isReportsLoaded),
/* harmony export */   U8: () => (/* binding */ canGenerateDigest),
/* harmony export */   V8: () => (/* binding */ getSearchQuery),
/* harmony export */   VD: () => (/* binding */ isAlertsLoaded),
/* harmony export */   ZL: () => (/* binding */ canUseImageRecognitionFeatures),
/* harmony export */   aj: () => (/* binding */ getThemesWithoutStats),
/* harmony export */   b5: () => (/* binding */ isVisualInsightsExploreAllowed),
/* harmony export */   bE: () => (/* binding */ getNotificationsUsers),
/* harmony export */   bb: () => (/* binding */ isHistoryCollecting),
/* harmony export */   c: () => (/* binding */ canShowTrendingWordsChart),
/* harmony export */   d2: () => (/* binding */ canShowAspects),
/* harmony export */   dm: () => (/* binding */ isYoutubeStatistics),
/* harmony export */   dz: () => (/* binding */ shouldShowIntegrationAlert),
/* harmony export */   eG: () => (/* binding */ canAddChannels),
/* harmony export */   h: () => (/* binding */ canUseExperimentalFilters),
/* harmony export */   h7: () => (/* binding */ getThemeWithoutStatsIds),
/* harmony export */   h9: () => (/* binding */ getThemeAudit),
/* harmony export */   i9: () => (/* binding */ canViewMentionWall),
/* harmony export */   iV: () => (/* binding */ isFilterReady),
/* harmony export */   j1: () => (/* binding */ getCurrentTheme),
/* harmony export */   j_: () => (/* binding */ isCurrentThemeHistoryCollecting),
/* harmony export */   k7: () => (/* binding */ canAdministrateCurrentTheme),
/* harmony export */   lf: () => (/* binding */ canAccessTrends),
/* harmony export */   mQ: () => (/* binding */ getCurrentThemeRuleIntegrations),
/* harmony export */   mS: () => (/* binding */ canRunPaidHistoryCollection),
/* harmony export */   n7: () => (/* binding */ canShowSubjects),
/* harmony export */   nQ: () => (/* binding */ getThemeEntity),
/* harmony export */   qn: () => (/* binding */ getFilteredThemes),
/* harmony export */   qu: () => (/* binding */ getAlerts),
/* harmony export */   se: () => (/* binding */ getThemeDetails),
/* harmony export */   t7: () => (/* binding */ isRuleLimitExceeded),
/* harmony export */   xp: () => (/* binding */ getPreviousHistoryCollections),
/* harmony export */   yQ: () => (/* binding */ isHistoryCollectionValidationLoading),
/* harmony export */   yu: () => (/* binding */ canViewHistory)
/* harmony export */ });
/* unused harmony exports getThemeIds, getStatsByTheme, getThemeAuditArray, isThemeAuditLoading, getThemes, formatThemeStats, getThemesWithStats, getCurrentThemePermissions, getCurrentTopicScale, getCurrentTextRecognitionQuery */
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("XFM9");
/* harmony import */ var models_Topic__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("31cT");
/* harmony import */ var models_emailNotification_Alert__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("yu8y");
/* harmony import */ var models_emailNotification_Report__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("x8Pq");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("+Oxy");
/* harmony import */ var state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("X9tB");
/* harmony import */ var state_account_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("FFtF");
/* harmony import */ var utils_historyCollection__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("mo7E");
/* harmony import */ var utils_Mutable__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("2N3d");
/* harmony import */ var state_utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("3o2z");
/* harmony import */ var state_stats_selectors__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("K9kJ");
/* harmony import */ var state_themes_utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("UN+n");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};













var getThemeEntities = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeEntities */ .PW, function (entities) { return utils_Mutable__WEBPACK_IMPORTED_MODULE_8__/* .Mutable */ .rV.from(entities); });
var getSortType = function (state) { return state.themes.sortType; };
var getThemeIds = function (state) { return state.themes.list.ids; };
var getThemeDetailsList = function (state) { return state.themes.themeDetails.list; };
var getThemeDetails = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getThemeDetailsList, function (themeDetailsList) { return themeDetailsList.toJS(); });
var isThemeDetailsLoading = function (state) { return state.themes.themeDetails.loading; };
var getStatsByTheme = function (state) { return state.themes.statsByTheme; };
var getIsThemesLoading = function (state) { return state.themes.list.loading; };
var getThemeWithoutStatsIds = function (state) { return state.themes.listWithoutStats.ids || []; };
var getIsThemesWithoutStatsLoading = function (state) { return state.themes.listWithoutStats.loading; };
var getSearchQuery = function (state) { return state.themes.searchQuery; };
var getThemeAuditArray = function (state) { return state.themes.audit.events; };
var isThemeAuditLoading = function (state) { return state.themes.audit.loading; };
var isThemeMentionsClearing = function (state) { return state.themes.clearMentions.isMentionsClearing; };
var getHistoryCollectionValidation = function (state) { return state.themes.historyCollectionValidation.validation; };
var isHistoryCollectionValidationLoading = function (state) { return state.themes.historyCollectionValidation.loading; };
var getAlerts = function (state) { return models_emailNotification_Alert__WEBPACK_IMPORTED_MODULE_2__/* .Alert */ .F.fromApiArray(state.themes.notifications.alerts.data); };
var isAlertsLoaded = function (state) { return state.themes.notifications.alerts.loaded; };
var getAlertsError = function (state) { return state.themes.notifications.alerts.error; };
var getReports = function (state) { return models_emailNotification_Report__WEBPACK_IMPORTED_MODULE_3__/* .Report */ .p.fromApiArray(state.themes.notifications.reports.data); };
var isReportsLoaded = function (state) { return state.themes.notifications.reports.loaded; };
var getReportsError = function (state) { return state.themes.notifications.reports.error; };
var getNotificationsUsers = function (state) { return state.themes.notificationsUsers.users; };
var getThemeAudit = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(
// TODO: Checked. Used by native JS code
getThemeAuditArray, function (themeAuditArray) { return themeAuditArray && themeAuditArray.events; });
var isAuditPageLoading = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(isThemeAuditLoading, state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isCurrentUserLoading */ .BR, function (themeAuditLoading, currentUserLoading) { return themeAuditLoading || currentUserLoading; });
var getThemeEntity = function (topicId) { return (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(
// TODO: Checked. Used by native JS code
getThemeEntities, function (topics) { return topics[topicId]; }); };
var getThemes = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(
// TODO: Checked. Used by native JS code
getThemeEntities, getThemeIds, function (entities, ids) { return ids.map(function (id) { return entities[id]; }); });
var getThemesWithoutStats = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(
// TODO: Checked. Used by native JS code
state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeEntities */ .PW, getThemeWithoutStatsIds, function (entities, ids) { return ids.map(function (id) { return entities[id]; }); });
var formatThemeStats = function (stats) {
    var _a, _b;
    // TODO: Checked. Used by native JS code
    if (!stats) {
        return {};
    }
    return {
        total: stats.total,
        dynamics: (_a = stats.dates) === null || _a === void 0 ? void 0 : _a.values,
        sentiment: (0,state_stats_selectors__WEBPACK_IMPORTED_MODULE_10__/* .getSentimentDistribution */ .EI)((_b = stats.sentiment) === null || _b === void 0 ? void 0 : _b.values),
    };
};
var getThemesWithStats = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getThemes, getStatsByTheme, function (themes, stats) {
    // TODO: Checked. Used by native JS code
    return themes.map(function (theme) {
        var themeIdString = String(theme.id);
        return __assign(__assign({}, theme), { stats: formatThemeStats(stats[themeIdString]) });
    });
});
var getFilteredThemes = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getThemesWithStats, getSortType, getSearchQuery, function (themes, sortType, searchQuery) {
    // TODO: Checked. Used by native JS code
    return themes
        .filter(function (theme) {
        var searchString = theme.name + theme.topicQuery.textQuery + theme.id;
        return searchString.toLowerCase()
            .includes(searchQuery.toLowerCase());
    })
        .sort(function (themeA, themeB) { return (0,state_themes_utils__WEBPACK_IMPORTED_MODULE_12__/* .compareThemes */ .u)(sortType, themeA, themeB); });
});
var getCurrentThemeId = function (state) { return state.themes.currentTheme; };
var isFilterReady = function (state) { return state.themes.filterReady; };
var getCurrentTheme = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(
// TODO: Checked. Used by native JS code
getCurrentThemeId, state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getThemeEntities */ .PW, getThemeDetails, function (id, themes, themeDetails) {
    var theme = themes[id];
    if (theme) {
        var themeDetail = (themeDetails === null || themeDetails === void 0 ? void 0 : themeDetails[id.toString()]) || {};
        return __assign(__assign({}, theme), themeDetail);
    }
    return theme;
});
var getCurrentThemeIntegrations = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) {
    if (theme && theme.integrations) {
        return utils_Mutable__WEBPACK_IMPORTED_MODULE_8__/* .Mutable */ .rV.from(theme.integrations.map(function (integration) { return (__assign(__assign({}, integration), { type: integration.integrationType })); }));
    }
    return utils_Mutable__WEBPACK_IMPORTED_MODULE_8__/* .Mutable */ .rV.from([]);
});
var getCurrentThemeRuleIntegrations = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentThemeIntegrations, function (integrations) {
    return integrations.filter(function (integration) { return !models_Topic__WEBPACK_IMPORTED_MODULE_1__/* .MESSENGERS */ .HD.includes(integration.get('type')); });
});
var isCurrentThemeHistoryCollecting = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) { return theme && theme.historyStatus === 'collecting'; });
var permissionMapping = {
    view: utils_Mutable__WEBPACK_IMPORTED_MODULE_8__/* .Mutable */ .rV.from({
        manageTags: false,
        manageAuthors: false,
        manageSources: false,
        manageMentions: false,
        viewSettings: false,
        changeSettings: false,
        deleteTheme: false,
        purgeMentions: false,
        changeIntegrations: false,
    }),
    edit: utils_Mutable__WEBPACK_IMPORTED_MODULE_8__/* .Mutable */ .rV.from({
        manageTags: true,
        manageAuthors: true,
        manageSources: true,
        manageMentions: true,
        viewSettings: true,
        changeSettings: false,
        deleteTheme: false,
        purgeMentions: false,
        changeIntegrations: false,
    }),
    manage: utils_Mutable__WEBPACK_IMPORTED_MODULE_8__/* .Mutable */ .rV.from({
        manageTags: true,
        manageAuthors: true,
        manageSources: true,
        manageMentions: true,
        viewSettings: true,
        changeSettings: true,
        deleteTheme: true,
        purgeMentions: true,
        changeIntegrations: true,
    }),
};
var getCurrentThemePermissions = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) {
    var permission = theme ? theme.permission : 'view';
    return permissionMapping[permission];
});
var getCurrentThemePermissionValue = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentThemePermissions, function (_state, key) { return key; }, function (permissions, key) { return permissions[key]; });
var getCurrentThemeName = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) { return (theme ? theme.name : ''); });
var getCurrentThemeSamplingRate = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) { return (theme ? theme.samplingRate : null); });
var getCurrentTopicScale = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) { return (theme ? theme.scale : null); });
var getManagedThemes = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(
// TODO: Checked. Used by native JS code
getThemesWithoutStats, function (themes) {
    return themes.filter(function (theme) { return theme.permission === 'manage'; }).toJS();
});
var getHistoryInfo = function (state) { return state.themes.historyCollection.elastic.info; };
var isHistoryCollecting = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getHistoryInfo, function (historyInfo) { return (historyInfo === null || historyInfo === void 0 ? void 0 : historyInfo.status) === utils_historyCollection__WEBPACK_IMPORTED_MODULE_7__/* .HISTORY_STATUS */ .W5.COLLECTING; });
var getCurrentTextRecognitionQuery = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) {
    if (!theme) {
        return '';
    }
    var ocrQuery = theme.topicQuery.viQuery || '';
    return ocrQuery.replace(/\s\s+/g, ' ');
});
var isRuleLimitExceeded = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) { var _a, _b; return theme && ((_b = (_a = theme === null || theme === void 0 ? void 0 : theme._links) === null || _a === void 0 ? void 0 : _a.createRule) === null || _b === void 0 ? void 0 : _b.denyReason) === 'THEME_RULES_LIMIT_REACHED'; });
var isYoutubeStatistics = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) { var _a, _b; return theme && ((_b = (_a = theme === null || theme === void 0 ? void 0 : theme._links) === null || _a === void 0 ? void 0 : _a.youtubeStatistics) === null || _b === void 0 ? void 0 : _b.denied); });
var shouldShowIntegrationAlert = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, function (theme) {
    var _a, _b;
    var inviteToIntegrationsDenied = theme && ((_b = (_a = theme === null || theme === void 0 ? void 0 : theme._links) === null || _a === void 0 ? void 0 : _a.inviteToIntegrations) === null || _b === void 0 ? void 0 : _b.denied);
    if (inviteToIntegrationsDenied === undefined) {
        return false;
    }
    return !inviteToIntegrationsDenied;
});
var isVisualInsightsExploreAllowed = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(state_currentUser_selectors__WEBPACK_IMPORTED_MODULE_5__/* .isTextRecognitionAllowed */ .F3, getCurrentTextRecognitionQuery, state_account_selectors__WEBPACK_IMPORTED_MODULE_6__/* .canAddAccountLogos */ .Hj, state_account_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getCurrentThemeLogos */ .hZ, function (isOCRAllowed, ocrQuery, logosAllowed, currentTopicLogos) {
    return ((isOCRAllowed && ocrQuery !== '') || (logosAllowed && currentTopicLogos.length));
});
var hasUnlimitedHistory = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('unlimitedHistory'));
var canViewHistory = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('viewHistory'));
var canViewChannels = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('listChannels'));
var canRemoveSystemTags = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('removeAutoCategory'));
var canSaveFilter = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('savedFilters'));
var canEditSavedFilter = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('editSavedFilters'));
var canAddChannels = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('addChannel'));
var canViewIntegrations = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('listIntegrations'));
var canAdministrateCurrentTheme = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('transferTheme'));
var canUseExperimentalFilters = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('labs'));
var canUseImageRecognitionFeatures = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('visualInsights'));
var canAccessTrends = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('trends'));
var canAddMention = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('addMention'));
var canViewMentionWall = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('mentionWall'));
var canCustomizeMentionWall = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('configureMentionWall'));
var canRunPaidHistoryCollection = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('paidHistoryCollection'));
var canGenerateDigest = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('generatePdf'));
var canShowSubjects = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('subjectsFilter'));
var canShowAspects = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('aspects'));
var canShowTrendingWordsChart = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('trendWordsChart'));
var canShowLogoFilter = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('logoFilter'));
var canUseFeedbackLoopFeature = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(getCurrentTheme, (0,state_utils__WEBPACK_IMPORTED_MODULE_9__/* .isFeatureAllowed */ .To)('setCorrections'));
var getPreviousHistoryCollections = (0,reselect__WEBPACK_IMPORTED_MODULE_11__/* .createSelector */ .Mz)(hasUnlimitedHistory, getCurrentThemeId, state_account_selectors__WEBPACK_IMPORTED_MODULE_6__/* .getAccountHistoryStats */ .bt, function (hasUnlimitedHistoryCollection, currentThemeId, historyStats) {
    var _a;
    var accountHistoryCollections = !(0,lodash__WEBPACK_IMPORTED_MODULE_0__.isEmpty)(historyStats)
        ? (_a = historyStats === null || historyStats === void 0 ? void 0 : historyStats.history) === null || _a === void 0 ? void 0 : _a.filter(function (v) { return (v === null || v === void 0 ? void 0 : v.status) !== utils_historyCollection__WEBPACK_IMPORTED_MODULE_7__/* .HISTORY_STATUS */ .W5.COLLECTING; })
        : [];
    var currentTopicHistoryCollections = accountHistoryCollections === null || accountHistoryCollections === void 0 ? void 0 : accountHistoryCollections.filter(function (v) { return v.topicId === currentThemeId; });
    return hasUnlimitedHistoryCollection ? currentTopicHistoryCollections : accountHistoryCollections;
});


/***/ }),

/***/ "UN+n":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   t: () => (/* binding */ isThemeAccessDenied),
/* harmony export */   u: () => (/* binding */ compareThemes)
/* harmony export */ });
/* eslint import/prefer-default-export: 0 */
function compareThemes(sortType, a, b) {
    switch (sortType) {
        case 'NAME': {
            return a.name.localeCompare(b.name, 'en', { numeric: true, sensitivity: 'base' });
        }
        case 'DATE': {
            return a.id > b.id ? -1 : 1;
        }
        case 'MENTIONS': {
            return a.stats.total < b.stats.total ? 1 : -1;
        }
        default: {
            return 0;
        }
    }
}
var isThemeAccessDenied = function (error) {
    return error.response && error.response.status === 404;
};


/***/ }),

/***/ "bque":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   M: () => (/* binding */ topicComparisonModel)
/* harmony export */ });
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("kHEK");
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("IH55");
/* harmony import */ var state_tags_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("uIUj");
/* harmony import */ var state_topicsComparison_selectors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("nqra");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("Qyqr");
/* harmony import */ var state_tags_selectors__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("x5Gk");
/* harmony import */ var state_filter_selectors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("0Zyk");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
/* eslint-disable func-names,require-yield,redux-saga/no-unhandled-errors,generator-star-spacing */








var TopicComparison = /** @class */ (function (_super) {
    __extends(TopicComparison, _super);
    function TopicComparison() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {};
        return _this;
    }
    TopicComparison.prototype.fetchStats = function (_a) {
        var themeIds_1, currentThemeId, tagsLoaded, filter, response_1, error_1;
        var key = _a.key, config = _a.config, statsBy = _a.statsBy;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 8, , 9]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_topicsComparison_selectors__WEBPACK_IMPORTED_MODULE_4__/* .getAllComparingTopicIds */ .j$)];
                case 1:
                    themeIds_1 = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_themes_selectors__WEBPACK_IMPORTED_MODULE_5__/* .getCurrentThemeId */ .Md)];
                case 2:
                    currentThemeId = _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_tags_selectors__WEBPACK_IMPORTED_MODULE_6__/* .isTagsLoaded */ .B6)];
                case 3:
                    tagsLoaded = _b.sent();
                    this.updateWithImmer(function (state) {
                        state[key] = {
                            isFetching: true,
                            error: null,
                            data: null,
                        };
                    });
                    if (!!tagsLoaded) return [3 /*break*/, 5];
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .call */ .T1)(state_tags_model__WEBPACK_IMPORTED_MODULE_3__/* .tagsModel */ .J.fetchTags.bind(state_tags_model__WEBPACK_IMPORTED_MODULE_3__/* .tagsModel */ .J), { themeId: currentThemeId })];
                case 4:
                    _b.sent();
                    _b.label = 5;
                case 5: return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_0__/* .select */ .Lt)(state_filter_selectors__WEBPACK_IMPORTED_MODULE_7__/* .getThemeFilter */ .Ic)];
                case 6:
                    filter = _b.sent();
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.stats.fetchStatsNew, {
                            themeId: themeIds_1,
                            filter: filter,
                            config: config,
                            statsBy: statsBy,
                        })];
                case 7:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state[key].isFetching = false;
                        state[key].data = themeIds_1.map(function (id) { return response_1.result.themes[id]; });
                    });
                    return [3 /*break*/, 9];
                case 8:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state[key].isFetching = false;
                        state[key].error = error_1;
                    });
                    return [3 /*break*/, 9];
                case 9: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], TopicComparison.prototype, "fetchStats", null);
    TopicComparison = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .namespace */ .MF)('TopicComparison')
    ], TopicComparison);
    return TopicComparison;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .StateModel */ .Nd));
var topicComparisonModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_2__/* .pixieDust */ .kJ)(TopicComparison);


/***/ }),

/***/ "nqra":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   H9: () => (/* binding */ getCompareTopicIds),
/* harmony export */   J4: () => (/* binding */ getTopicsToCompareWith),
/* harmony export */   _$: () => (/* binding */ getStatsByKey),
/* harmony export */   b7: () => (/* binding */ getComparingTopics),
/* harmony export */   j$: () => (/* binding */ getAllComparingTopicIds)
/* harmony export */ });
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("XFM9");
/* harmony import */ var state_routing_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("KG/6");
/* harmony import */ var state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Qyqr");
/* harmony import */ var state_entities_selectors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("Z+iQ");




var getCompareTopicIds = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(state_routing_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getQuery */ .$Z, function (query) { return (query === null || query === void 0 ? void 0 : query.themeIds) || []; });
// @ts-ignore
var getAllComparingTopicIds = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getCompareTopicIds, state_themes_selectors__WEBPACK_IMPORTED_MODULE_1__/* .getCurrentThemeId */ .Md, 
// @ts-ignore
function (topicIds, topicId) {
    return [topicId].concat(topicIds);
});
var getTopicsToCompareWith = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getCompareTopicIds, state_entities_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getThemeEntities */ .PW, function (topicIds, topics) { return topicIds.map(function (id) { return topics.toJS()[Number(id)]; }).filter(function (t) { return !!t; }); });
var getComparingTopics = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelector */ .Mz)(getAllComparingTopicIds, state_entities_selectors__WEBPACK_IMPORTED_MODULE_2__/* .getThemeEntities */ .PW, function (ids, topics) { return ids.map(function (id) { return topics.toJS()[Number(id)]; }).filter(function (t) { return !!t; }); });
var getStatsByKey = function (state, key) { return state.topicComparison[key]; };


/***/ }),

/***/ "lWdd":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   O: () => (/* binding */ usersModel)
/* harmony export */ });
/* harmony import */ var state_pixieDust__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("IH55");
/* harmony import */ var redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("IihT");
/* harmony import */ var apiSingleton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("kHEK");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};



var Users = /** @class */ (function (_super) {
    __extends(Users, _super);
    function Users() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.initialState = {
            list: {
                loading: false,
                idsByTheme: {},
                error: null,
            },
            accountUsers: {
                loading: false,
                loaded: false,
                users: [],
                error: null,
            },
            accountUserPermissions: {
                loading: false,
                loaded: false,
                permissions: null,
                error: null,
            },
            inviteLinks: {},
            editUser: {
                editing: false,
                isEdited: false,
                error: null,
            },
        };
        return _this;
    }
    Users.prototype.fetchUsers = function (_a) {
        var response_1, error_1;
        var themeId = _a.themeId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.list.loading = true;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.themes.listUsers, themeId)];
                case 1:
                    response_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.idsByTheme[themeId] = response_1.result.users;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_1 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.list.loading = false;
                        state.list.error = error_1;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Users.prototype.fetchAccountUsers = function () {
        var response_2, error_2;
        return __generator(this, function (_a) {
            switch (_a.label) {
                case 0:
                    _a.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountUsers.loading = true;
                    });
                    return [4 /*yield*/, (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .request */ .Em)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.fetch)];
                case 1:
                    response_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountUsers.loading = false;
                        state.accountUsers.loaded = true;
                        state.accountUsers.users = response_2.users;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_2 = _a.sent();
                    this.updateWithImmer(function (state) {
                        state.accountUsers.loading = false;
                        state.accountUsers.error = error_2;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Users.prototype.fetchUserPermissions = function (_a) {
        var response_3, error_3;
        var userId = _a.userId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.accountUserPermissions.loading = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.getPermissions, { userId: userId })];
                case 1:
                    response_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountUserPermissions.loading = false;
                        state.accountUserPermissions.loaded = true;
                        state.accountUserPermissions.permissions = response_3.themePermissions;
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_3 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.accountUserPermissions.loading = false;
                        state.accountUserPermissions.error = error_3;
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    Users.prototype.fetchUserInviteLink = function (_a) {
        var response_4, error_4;
        var userId = _a.userId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    this.updateWithImmer(function (state) {
                        state.inviteLinks[userId] = {
                            loading: true,
                            link: null,
                            error: null,
                        };
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.getInviteLink, { userId: userId })];
                case 1:
                    response_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.inviteLinks[userId] = {
                            loading: false,
                            link: response_4.link,
                            error: null,
                        };
                    });
                    return [3 /*break*/, 3];
                case 2:
                    error_4 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.inviteLinks[userId] = {
                            loading: false,
                            link: null,
                            error: new Error(error_4),
                        };
                    });
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    // eslint-disable-next-line require-yield
    Users.prototype.clearUserInviteLinksState = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.inviteLinks = {};
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Users.prototype.editUser = function (_a) {
        var error_5;
        var userId = _a.userId, info = _a.info, role = _a.role, permissions = _a.permissions;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 5, , 6]);
                    this.updateWithImmer(function (state) {
                        state.editUser.editing = true;
                    });
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.edit, { userId: userId, info: info })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.changeRole, { userId: userId, role: role })];
                case 2:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.changePermissions, { userId: userId, permissions: permissions })];
                case 3:
                    _b.sent();
                    this.updateWithImmer(function (state) {
                        state.editUser.editing = false;
                        state.editUser.isEdited = true;
                    });
                    return [4 /*yield*/, this.fetchAccountUsers()];
                case 4:
                    _b.sent();
                    return [3 /*break*/, 6];
                case 5:
                    error_5 = _b.sent();
                    this.updateWithImmer(function (state) {
                        state.editUser.editing = false;
                        state.editUser.isEdited = false;
                        state.editUser.error = error_5;
                    });
                    return [3 /*break*/, 6];
                case 6: return [2 /*return*/];
            }
        });
    };
    // eslint-disable-next-line require-yield
    Users.prototype.clearEditUserState = function () {
        return __generator(this, function (_a) {
            try {
                this.updateWithImmer(function (state) {
                    state.editUser.editing = false;
                    state.editUser.isEdited = false;
                    state.editUser.error = null;
                });
            }
            catch (error) {
                console.error(error);
            }
            return [2 /*return*/];
        });
    };
    Users.prototype.deleteUser = function (_a) {
        var error_6;
        var userId = _a.userId;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 3, , 4]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.delete, { userId: userId })];
                case 1:
                    _b.sent();
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(this.fetchAccountUsers.bind(this))];
                case 2:
                    _b.sent();
                    return [3 /*break*/, 4];
                case 3:
                    error_6 = _b.sent();
                    console.error(error_6);
                    return [3 /*break*/, 4];
                case 4: return [2 /*return*/];
            }
        });
    };
    Users.prototype.updateUserPermissions = function (_a) {
        var error_7;
        var userId = _a.userId, themePermissions = _a.themePermissions;
        return __generator(this, function (_b) {
            switch (_b.label) {
                case 0:
                    _b.trys.push([0, 2, , 3]);
                    return [4 /*yield*/, (0,redux_saga_effects__WEBPACK_IMPORTED_MODULE_1__/* .call */ .T1)(apiSingleton__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.users.setPermissions, { userId: userId, themePermissions: themePermissions })];
                case 1:
                    _b.sent();
                    return [3 /*break*/, 3];
                case 2:
                    error_7 = _b.sent();
                    console.error(error_7);
                    return [3 /*break*/, 3];
                case 3: return [2 /*return*/];
            }
        });
    };
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "fetchUsers", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "fetchAccountUsers", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "fetchUserPermissions", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "fetchUserInviteLink", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "clearUserInviteLinksState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "editUser", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", []),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "clearEditUserState", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "deleteUser", null);
    __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .effect */ .QZ)(),
        __metadata("design:type", Function),
        __metadata("design:paramtypes", [Object]),
        __metadata("design:returntype", void 0)
    ], Users.prototype, "updateUserPermissions", null);
    Users = __decorate([
        (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .namespace */ .MF)('Users')
    ], Users);
    return Users;
}(state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .StateModel */ .Nd));
var usersModel = (0,state_pixieDust__WEBPACK_IMPORTED_MODULE_0__/* .pixieDust */ .kJ)(Users);


/***/ }),

/***/ "zcN7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   B8: () => (/* binding */ getUsersMap),
/* harmony export */   G$: () => (/* binding */ getEditUserError),
/* harmony export */   IM: () => (/* binding */ getAccountUsers),
/* harmony export */   Rg: () => (/* binding */ isPermissionsLoading),
/* harmony export */   SP: () => (/* binding */ getUserInviteLinks),
/* harmony export */   ks: () => (/* binding */ isUserEditing),
/* harmony export */   lA: () => (/* binding */ getUserListByIds),
/* harmony export */   lo: () => (/* binding */ getUsers),
/* harmony export */   pT: () => (/* binding */ isUserEdited),
/* harmony export */   ug: () => (/* binding */ getUserPermissions),
/* harmony export */   zA: () => (/* binding */ getUsersLoading)
/* harmony export */ });
/* unused harmony export getUserIdsByTheme */
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("XFM9");
/* harmony import */ var state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+Oxy");


var getUserIdsByTheme = function (state, props) { return state.users.list.idsByTheme[Number(props.themeId)] || []; };
var getUsersLoading = function (state) { return state.users.list.loading; };
var getAccountUsers = function (state) { return state.users.accountUsers.users; };
var getUserPermissions = function (state) { return state.users.accountUserPermissions.permissions; };
var isPermissionsLoading = function (state) { return state.users.accountUserPermissions.loading; };
var isUserEdited = function (state) { return state.users.editUser.isEdited; };
var isUserEditing = function (state) { return state.users.editUser.editing; };
var getEditUserError = function (state) { return state.users.editUser.error; };
var getUserInviteLinks = function (state) { return state.users.inviteLinks; };
var getUserListByIds = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, function (state, ids) { return ids; }, function (entities, ids) { return ids.map(function (id) { return entities[id]; }); });
var getUsers = (0,reselect__WEBPACK_IMPORTED_MODULE_1__/* .createSelector */ .Mz)(state_entities_new_selectors__WEBPACK_IMPORTED_MODULE_0__/* .getUserEntities */ .Nn, getUserIdsByTheme, function (entities, ids) { return ids.map(function (id) { return entities[id]; }); });
var getUsersMap = function (state) {
    var users = getAccountUsers(state);
    return users === null || users === void 0 ? void 0 : users.reduce(function (usersAcc, user) {
        usersAcc[user.id.toString()] = user;
        return usersAcc;
    }, {});
};


/***/ }),

/***/ "3o2z":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Hq: () => (/* binding */ createNonCacheSelector),
/* harmony export */   Ni: () => (/* binding */ getFeatureDenyReason),
/* harmony export */   Th: () => (/* binding */ getAction),
/* harmony export */   To: () => (/* binding */ isFeatureAllowed),
/* harmony export */   db: () => (/* binding */ getConstant),
/* harmony export */   z8: () => (/* binding */ enhanceAction)
/* harmony export */ });
/* unused harmony exports injectSagas, reducerInitialState, createUpdatingReducer, createClearableUpdatingReducer, createStorageReducer, createClearableStorageReducer, createAsyncReducer */
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("JPcv");
/* harmony import */ var immutable__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(immutable__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var reflect_metadata__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("mNvP");
/* harmony import */ var reflect_metadata__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(reflect_metadata__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var reselect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("XFM9");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
/* eslint-disable no-shadow,array-callback-return,@typescript-eslint/ban-types,redux-saga/no-unhandled-errors,func-names */




function getConstant(constant) {
    var _a;
    return _a = {},
        _a[constant] = "".concat(constant),
        _a;
}
function getAction(type, additionalParams, additionalHandler) {
    if (!type) {
        throw new Error('[getAction] Passed action type is undefined!');
    }
    return function (params) {
        if (additionalHandler) {
            additionalHandler(params || {});
        }
        return __assign(__assign({ type: type }, additionalParams), params);
    };
}
function enhanceAction(action, additionalParams, additionalHandler) {
    return function (params) {
        if (params === void 0) { params = {}; }
        if (additionalHandler) {
            additionalHandler(params);
        }
        return __assign(__assign({}, action(params)), additionalParams);
    };
}
function injectSagas(sagas) {
    return sagas.map(function (saga) { return saga(); });
}
var reducerInitialState = (0,immutable__WEBPACK_IMPORTED_MODULE_0__.fromJS)({ loading: false });
function createUpdatingReducer(actionTypes, overrideInitialState) {
    if (overrideInitialState === void 0) { overrideInitialState = {}; }
    var _a = __read(actionTypes, 3), requestType = _a[0], successType = _a[1], failureType = _a[2];
    var defaultState = reducerInitialState.mergeDeep(fromJS(overrideInitialState));
    return function (state, action) {
        if (state === void 0) { state = defaultState; }
        switch (action.type) {
            case requestType: {
                return state
                    .set('updating', true)
                    .set('error', null);
            }
            case successType: {
                return state
                    .set('updating', false)
                    .set('isUpdated', true);
            }
            case failureType: {
                return state
                    .set('isUpdated', false)
                    .set('updating', false)
                    .set('error', action.error);
            }
            default: {
                return state;
            }
        }
    };
}
function createClearableUpdatingReducer(actionTypes, overrideInitialState) {
    if (overrideInitialState === void 0) { overrideInitialState = {}; }
    var _a = __read(actionTypes, 4), requestType = _a[0], successType = _a[1], failureType = _a[2], clearType = _a[3];
    var defaultState = reducerInitialState.mergeDeep(fromJS(overrideInitialState));
    return function (state, action) {
        if (state === void 0) { state = defaultState; }
        switch (action.type) {
            case requestType: {
                return state
                    .set('updating', true)
                    .set('error', null);
            }
            case successType: {
                return state
                    .set('updating', false)
                    .set('isUpdated', true);
            }
            case failureType: {
                return state
                    .set('isUpdated', false)
                    .set('updating', false)
                    .set('error', action.error);
            }
            case clearType: {
                return state
                    .set('isUpdated', false)
                    .set('loading', false)
                    .set('error', null);
            }
            default: {
                return state;
            }
        }
    };
}
function createStorageReducer(actionTypes, data, actionDataKey, overrideInitialState, clearOnRequest) {
    if (overrideInitialState === void 0) { overrideInitialState = {}; }
    if (clearOnRequest === void 0) { clearOnRequest = true; }
    var _a = __read(actionTypes, 3), requestType = _a[0], successType = _a[1], failureType = _a[2];
    var defaultState = reducerInitialState.mergeDeep(fromJS(overrideInitialState));
    return function (state, action) {
        if (state === void 0) { state = defaultState; }
        switch (action.type) {
            case requestType: {
                return (clearOnRequest ? state.set(data, null) : state)
                    .set('loading', true)
                    .set('loaded', false);
            }
            case successType: {
                return (!clearOnRequest ? state.set(data, null) : state)
                    .set(data, fromJS(get(action, actionDataKey)))
                    .set('loading', false)
                    .set('loaded', true);
            }
            case failureType: {
                return (!clearOnRequest ? state.set(data, null) : state)
                    .set('loading', false)
                    .set('error', action.error);
            }
            default: {
                return state;
            }
        }
    };
}
function createClearableStorageReducer(actionTypes, data, actionDataKey, overrideInitialState) {
    if (overrideInitialState === void 0) { overrideInitialState = {}; }
    var _a = __read(actionTypes, 4), requestType = _a[0], successType = _a[1], failureType = _a[2], clearType = _a[3];
    var defaultState = reducerInitialState.mergeDeep(fromJS(overrideInitialState));
    return function (state, action) {
        if (state === void 0) { state = defaultState; }
        switch (action.type) {
            case requestType: {
                return state
                    .set(data, null)
                    .set('loading', true);
            }
            case successType: {
                return state
                    .set(data, fromJS(get(action, actionDataKey)))
                    .set('loading', false);
            }
            case failureType: {
                return state
                    .set('loading', false)
                    .set('error', action.error);
            }
            case clearType: {
                return state
                    .set(data, null)
                    .set('loading', false)
                    .set('error', null);
            }
            default: {
                return state;
            }
        }
    };
}
function createAsyncReducer(actionTypes, actionDataMapper, initialDataState) {
    if (actionDataMapper === void 0) { actionDataMapper = function (action) { return action.payload; }; }
    if (initialDataState === void 0) { initialDataState = null; }
    var initialState = {
        done: false,
        loading: false,
        error: null,
        data: initialDataState,
        alreadyDone: false,
    };
    var _a = __read(actionTypes, 4), requestType = _a[0], successType = _a[1], failureType = _a[2], clearType = _a[3];
    return function (state, action) {
        if (state === void 0) { state = initialState; }
        if (clearType && action.type === clearType) {
            return initialState;
        }
        switch (action.type) {
            case requestType: {
                return __assign(__assign({}, state), { loading: true, done: false });
            }
            case successType: {
                return __assign(__assign({}, state), { loading: false, alreadyLoaded: true, data: actionDataMapper(action), done: true });
            }
            case failureType: {
                return __assign(__assign({}, state), { loading: false, error: action.error, done: false });
            }
            default: {
                return state;
            }
        }
    };
}
var isFeatureAllowed = function (linkName) { return function (entity) {
    var _a, _b, _c;
    if (!entity)
        return false;
    return (_c = !((_b = (_a = entity === null || entity === void 0 ? void 0 : entity._links) === null || _a === void 0 ? void 0 : _a[linkName]) === null || _b === void 0 ? void 0 : _b.denied)) !== null && _c !== void 0 ? _c : true;
}; };
var getFeatureDenyReason = function (linkName) { return function (entity) {
    var _a, _b;
    return entity && entity._links[linkName].denied
        ? (_b = (_a = entity === null || entity === void 0 ? void 0 : entity._links) === null || _a === void 0 ? void 0 : _a[linkName]) === null || _b === void 0 ? void 0 : _b.denyReason
        : null;
}; };
var createNonCacheSelector = (0,reselect__WEBPACK_IMPORTED_MODULE_3__/* .createSelectorCreator */ .Ad)(function (fn) { return fn; });


/***/ }),

/***/ "2N3d":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  rV: () => (/* binding */ Mutable)
});

// UNUSED EXPORTS: MutableList, MutableMap, Serializable

// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./node_modules/immutable/dist/immutable.js
var immutable = __webpack_require__("JPcv");
;// CONCATENATED MODULE: ./src/utils/logStackTrace.ts
/* harmony default export */ const logStackTrace = (function (message) {
    if (message === void 0) { message = 'StackTracer'; }
    if (true)
        return;
    return;
    console.groupCollapsed(message);
    console.log((new Error()).stack);
    console.groupEnd();
});

;// CONCATENATED MODULE: ./src/utils/Mutable.ts
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};



var IS_ITERABLE_SENTINEL = '@@__IMMUTABLE_ITERABLE__@@';
var IS_MUTABLE_SENTINEL = '@@__MUTABLE__@@';
var Serializable = /** @class */ (function () {
    function Serializable() {
    }
    Serializable.isSerializable = function (obj) {
        return obj.toJS !== undefined;
    };
    Serializable.toJS = function (obj) {
        var e_1, _a;
        if (!obj || isPrimitive(obj))
            return obj;
        if (obj.constructor === Date)
            return new Date(obj);
        if (Mutable.isImmutable(obj))
            return obj.toJS();
        if (this.isSerializable(obj))
            return obj.toJS();
        if (Array.isArray(obj)) {
            var ar = [];
            try {
                for (var obj_1 = __values(obj), obj_1_1 = obj_1.next(); !obj_1_1.done; obj_1_1 = obj_1.next()) {
                    var each = obj_1_1.value;
                    ar.push(this.toJS(each));
                }
            }
            catch (e_1_1) { e_1 = { error: e_1_1 }; }
            finally {
                try {
                    if (obj_1_1 && !obj_1_1.done && (_a = obj_1.return)) _a.call(obj_1);
                }
                finally { if (e_1) throw e_1.error; }
            }
            return ar;
        }
        if (typeof obj === 'object') {
            var result = {};
            this.assign(result, obj);
            return result;
        }
        return obj.toString();
    };
    Serializable.assign = function (target, source) {
        var e_2, _a;
        try {
            for (var _b = __values(Object.getOwnPropertyNames(source)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var prop = _c.value;
                var value = source[prop];
                if (typeof value !== 'function') {
                    target[prop] = this.toJS(value);
                }
            }
        }
        catch (e_2_1) { e_2 = { error: e_2_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_2) throw e_2.error; }
        }
    };
    return Serializable;
}());

function isPrimitive(obj) {
    var type = typeof obj;
    return type === 'string' || type === 'number' || type === 'boolean' || type === 'bigint' || type === 'undefined';
}
var Mutable = /** @class */ (function () {
    function Mutable() {
    }
    Mutable.from = function (source) {
        if (!source || isPrimitive(source))
            return source;
        if (source.constructor === Date)
            return new Date(source);
        var obj = Serializable.toJS(source);
        if (Array.isArray(obj))
            return MutableList.from(obj);
        return typeof obj === 'object' ? MutableMap.from(obj) : obj;
    };
    Mutable.toImmutable = function (obj) {
        return (0,immutable.fromJS)(Serializable.toJS(obj));
    };
    Mutable.isMutable = function (obj) {
        return IS_MUTABLE_SENTINEL in obj;
    };
    Mutable.isImmutable = function (obj) {
        return obj instanceof immutable.Map || obj instanceof immutable.List;
    };
    return Mutable;
}());

var MutableMap = /** @class */ (function () {
    function MutableMap() {
    }
    MutableMap.prototype.get = function (path) {
        logStackTrace("get of MutableMap. Please, don't use that");
        return this[path];
    };
    MutableMap.prototype.getIn = function (path) {
        logStackTrace("getIn of MutableMap. Please, don't use that");
        return (0,lodash.get)(this, path);
    };
    MutableMap.prototype.set = function (key, value) {
        logStackTrace("set of MutableMap. Please, don't use that");
        this[key] = Mutable.from(value);
        return this;
    };
    MutableMap.prototype.setIn = function (path, value) {
        logStackTrace("setIn of MutableMap. Please, don't use that");
        (0,lodash.set)(this, path, value);
        return this;
    };
    MutableMap.from = function (source) {
        // logStackTrace("from of MutableMap. Please, don't use that");
        var mutable = new MutableMap();
        this.assign(mutable, source);
        return mutable;
    };
    MutableMap.assign = function (target, source) {
        var e_3, _a;
        try {
            for (var _b = __values(Object.getOwnPropertyNames(source)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var prop = _c.value;
                target[prop] = Mutable.from(source[prop]);
            }
        }
        catch (e_3_1) { e_3 = { error: e_3_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_3) throw e_3.error; }
        }
    };
    MutableMap.prototype.toImmutable = function () {
        logStackTrace("toImmutable of MutableMap. Please, don't use that");
        return Mutable.toImmutable(this);
    };
    MutableMap.prototype.toJS = function () {
        var e_4, _a;
        // logStackTrace("toJS of MutableMap. Please, don't use that");
        var result = {};
        try {
            for (var _b = __values(Object.getOwnPropertyNames(this)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var prop = _c.value;
                result[prop] = Serializable.toJS(this[prop]);
            }
        }
        catch (e_4_1) { e_4 = { error: e_4_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_4) throw e_4.error; }
        }
        return result;
    };
    MutableMap.prototype.equals = function (source) {
        logStackTrace("equals of MutableMap. Please, don't use that");
        return (0,lodash.isEqual)(this, source);
    };
    MutableMap.prototype.isEmpty = function () {
        logStackTrace("isEmpty of MutableMap. Please, don't use that");
        return Object.keys(this).length === 0;
    };
    MutableMap.prototype.remove = function (key) {
        logStackTrace("remove of MutableMap. Please, don't use that");
        delete this[key];
        return this;
    };
    MutableMap.prototype.toList = function () {
        logStackTrace("toList of MutableMap. Please, don't use that");
        return MutableList.from(Object.values(this));
    };
    MutableMap.prototype.toArray = function () {
        logStackTrace("toArray of MutableMap. Please, don't use that");
        return Object.entries(this);
    };
    MutableMap.prototype.reduce = function (callback, accumulator) {
        // logStackTrace("reduce of MutableMap. Please, don't use that");
        return (0,lodash.reduce)(this, callback, accumulator);
    };
    MutableMap.prototype.filter = function (callback) {
        // logStackTrace("filter of MutableMap. Please, don't use that");
        return Mutable.from(Object.entries(this)
            .filter(function (_a) {
            var _b = __read(_a, 2), key = _b[0], value = _b[1];
            return callback(value, key);
        })
            .reduce(function (acc, _a) {
            var _b;
            var _c = __read(_a, 2), key = _c[0], value = _c[1];
            return (__assign(__assign({}, acc), (_b = {}, _b[key] = value, _b)));
        }, {}));
    };
    MutableMap.prototype.filterNot = function (callback) {
        logStackTrace("filterNot of MutableMap. Please, don't use that");
        return this.filter(function () {
            // eslint-disable-next-line prefer-rest-params
            return !callback.apply(this, arguments);
        });
    };
    MutableMap.prototype.map = function (callback) {
        return Mutable.from(Object.entries(this)
            .reduce(function (acc, _a) {
            var _b;
            var _c = __read(_a, 2), key = _c[0], value = _c[1];
            return (__assign(__assign({}, acc), (_b = {}, _b[key] = callback(value, key), _b)));
        }, {}));
    };
    MutableMap.prototype.forEach = function (callback) {
        Object.entries(this)
            .forEach(function (_a) {
            var _b = __read(_a, 2), key = _b[0], value = _b[1];
            callback(value, key);
        });
    };
    MutableMap.prototype.merge = function (sources) {
        logStackTrace("merge of MutableMap. Please, don't use that");
        return Mutable.from((0,lodash.merge)(this.toJS(), (sources === null || sources === void 0 ? void 0 : sources.toJS()) || {}));
    };
    MutableMap.prototype.mergeDeep = function (sources) {
        logStackTrace("mergeDeep of MutableMap. Please, don't use that");
        return Mutable.from((0,lodash.merge)(this.toJS(), sources.toJS()));
    };
    MutableMap.prototype.has = function (source) {
        logStackTrace("has of MutableMap. Please, don't use that");
        return (0,lodash.has)(this, source);
    };
    MutableMap.prototype.valueSeq = function () {
        logStackTrace("valueSeq of MutableMap. Please, don't use that");
        return MutableList.from(Object.values(this));
    };
    MutableMap.prototype.groupBy = function (iteratee) {
        logStackTrace("groupBy of MutableMap. Please, don't use that");
        return Mutable.from((0,lodash.groupBy)(this, iteratee));
    };
    MutableMap.prototype.delete = function (key) {
        logStackTrace("delete of MutableMap. Please, don't use that");
        delete this[key];
        return this;
    };
    return MutableMap;
}());

MutableMap.prototype[IS_ITERABLE_SENTINEL] = true;
MutableMap.prototype[IS_MUTABLE_SENTINEL] = true;
var MutableList = /** @class */ (function (_super) {
    __extends(MutableList, _super);
    function MutableList() {
        var _this = _super.call(this) || this;
        Object.setPrototypeOf(_this, MutableList.prototype);
        return _this;
    }
    MutableList.from = function (source) {
        // logStackTrace("from of MutableList. Please, don't use that");
        var result = new MutableList();
        result.pushMutable.apply(result, __spreadArray([], __read(source), false));
        return result;
    };
    Object.defineProperty(MutableList.prototype, "size", {
        get: function () {
            logStackTrace("size of MutableList. Please, don't use that");
            return this.length;
        },
        enumerable: false,
        configurable: true
    });
    MutableList.prototype.get = function (index) {
        logStackTrace("get of MutableList. Please, don't use that");
        return this[index];
    };
    MutableList.prototype.getIn = function (path) {
        logStackTrace("getIn of MutableList. Please, don't use that");
        return (0,lodash.get)(this, path);
    };
    // @ts-ignore
    MutableList.prototype.push = function () {
        var items = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            items[_i] = arguments[_i];
        }
        // logStackTrace('push of MutableList. Please, rewrite usages');
        _super.prototype.push.apply(this, __spreadArray([], __read(items), false));
        return this;
    };
    MutableList.prototype.pushMutable = function () {
        var e_5, _a;
        var items = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            items[_i] = arguments[_i];
        }
        try {
            // logStackTrace("pushMutable of MutableList. Please, don't use that");
            for (var items_1 = __values(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {
                var item = items_1_1.value;
                _super.prototype.push.call(this, Mutable.from(item));
            }
        }
        catch (e_5_1) { e_5 = { error: e_5_1 }; }
        finally {
            try {
                if (items_1_1 && !items_1_1.done && (_a = items_1.return)) _a.call(items_1);
            }
            finally { if (e_5) throw e_5.error; }
        }
        return this;
    };
    // @ts-ignore
    MutableList.prototype.map = function (callback, thisArg) {
        var result = new MutableList();
        return result.push.apply(result, __spreadArray([], __read(_super.prototype.map.call(this, function (v, i, a) { return callback(v, i, a); }, thisArg)), false));
    };
    MutableList.prototype.mapMutable = function (callback, thisArg) {
        logStackTrace("mapMutable of MutableList. Please, don't use that");
        return MutableList.from(_super.prototype.map.call(this, function (v, i, a) { return callback(v, i, a); }, thisArg));
    };
    // @ts-ignore
    MutableList.prototype.filter = function (predicate, thisArg) {
        return MutableList.from(_super.prototype.filter.call(this, predicate, thisArg));
    };
    MutableList.prototype.isEmpty = function () {
        logStackTrace("isEmpty of MutableList. Please, don't use that");
        return this.length === 0;
    };
    MutableList.prototype.remove = function (predicate) {
        logStackTrace("remove of MutableList. Please, don't use that");
        return this.filter(function (x) { return !predicate(x); });
    };
    MutableList.prototype.toImmutable = function () {
        logStackTrace("toImmutable of MutableList. Please, don't use that");
        return Mutable.toImmutable(this);
    };
    MutableList.prototype.toJS = function () {
        // logStackTrace("toJS of MutableList. Please, don't use that");
        return Array.from(_super.prototype.map.call(this, function (x) { return Serializable.toJS(x); }));
    };
    MutableList.prototype.unwrap = function () {
        logStackTrace("unwrap of MutableList. Please, don't use that");
        return Array.from(this);
    };
    MutableList.prototype.first = function () {
        logStackTrace("first of MutableList. Please, don't use that");
        return this[0];
    };
    // @ts-ignore
    MutableList.prototype.pop = function () {
        // logStackTrace('pop of MutableList. Please, rewrite usages to JS');
        _super.prototype.pop.call(this);
        return this;
    };
    MutableList.prototype.toArray = function () {
        logStackTrace("toArray of MutableList. Please, don't use that");
        return this.unwrap();
    };
    MutableList.prototype.equals = function (source) {
        logStackTrace("equals of MutableList. Please, don't use that");
        return (0,lodash.isEqual)(this, source);
    };
    // @ts-ignore
    MutableList.prototype.filterNot = function (predicate, _thisArg) {
        logStackTrace("filterNot of MutableList. Please, don't use that");
        return this.filter(function () {
            // eslint-disable-next-line prefer-rest-params
            return !predicate.apply(this, arguments);
        });
    };
    MutableList.prototype.concat = function (array) {
        return MutableList.from(__spreadArray(__spreadArray([], __read(this), false), __read(array), false));
    };
    MutableList.prototype.groupBy = function (iteratee) {
        logStackTrace("groupBy of MutableMap. Please, don't use that");
        return Mutable.from((0,lodash.groupBy)(this, iteratee));
    };
    return MutableList;
}(Array));

MutableList.prototype[IS_ITERABLE_SENTINEL] = true;
MutableList.prototype[IS_MUTABLE_SENTINEL] = true;


/***/ }),

/***/ "X4yY":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ alert_alert)
});

// EXTERNAL MODULE: ./node_modules/react-confirm/lib/index.js
var lib = __webpack_require__("tib1");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./src/components/ui/Modal/index.ts
var Modal = __webpack_require__("V5xf");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
;// CONCATENATED MODULE: ./src/components/other/Alert/Alert.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Alert = ({"base":"YVcZ26sWWAfAkiiqTsW2"});
;// CONCATENATED MODULE: ./src/components/other/Alert/Alert.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};






var Alert_Alert = function (_a) {
    var show = _a.show, buttonPrimary = _a.buttonPrimary, title = _a.title, message = _a.message, actionLabel = _a.actionLabel, dismiss = _a.dismiss, proceed = _a.proceed;
    return ((0,jsx_runtime.jsxs)(Modal/* default */.A, __assign({ isOpen: show, title: title, className: Alert.base, onRequestClose: dismiss }, { children: [message, (0,jsx_runtime.jsx)(ButtonBar/* default */.A, { children: (0,jsx_runtime.jsx)(Button/* default */.A, { primary: buttonPrimary, label: actionLabel || l('Ok'), onClick: proceed }) })] })));
};
/* harmony default export */ const other_Alert_Alert = ((0,lib/* confirmable */.r)(Alert_Alert));

;// CONCATENATED MODULE: ./src/components/other/Alert/index.tsx


;// CONCATENATED MODULE: ./src/utils/alert.ts


var callConfirm = (0,lib/* createConfirmation */.AV)(other_Alert_Alert);
function alert_alert(_a) {
    var message = _a.message, title = _a.title, actionLabel = _a.actionLabel, buttonPrimary = _a.buttonPrimary, type = _a.type, options = _a.options;
    return callConfirm({ message: message, title: title, actionLabel: actionLabel, buttonPrimary: buttonPrimary, type: type, options: options });
}


/***/ }),

/***/ "KV3C":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Cg: () => (/* binding */ visualInsightsChartColors),
/* harmony export */   Fs: () => (/* binding */ EDUCATIONAL_MATERIALS_CARD_COLORS),
/* harmony export */   HS: () => (/* binding */ getSentimentColor),
/* harmony export */   ID: () => (/* binding */ getSentimentColors),
/* harmony export */   KK: () => (/* binding */ getCurrentChartColorScheme),
/* harmony export */   MB: () => (/* binding */ SOURCE_COLOR),
/* harmony export */   MF: () => (/* binding */ palette),
/* harmony export */   Mu: () => (/* binding */ socialSearchColors),
/* harmony export */   Py: () => (/* binding */ tagColors),
/* harmony export */   QX: () => (/* binding */ tagsDefaultColor),
/* harmony export */   RU: () => (/* binding */ wordCloudColorList),
/* harmony export */   SM: () => (/* binding */ getChartColorSchemes),
/* harmony export */   Tj: () => (/* binding */ colors),
/* harmony export */   Wx: () => (/* binding */ communitiesColors),
/* harmony export */   a: () => (/* binding */ wordCloudPickerColors),
/* harmony export */   hx: () => (/* binding */ getColorsByTheme),
/* harmony export */   iF: () => (/* binding */ wordCloudPalettes),
/* harmony export */   ke: () => (/* binding */ opacity),
/* harmony export */   kg: () => (/* binding */ wordCloudSentimentPalette),
/* harmony export */   lC: () => (/* binding */ CATEGORIZED_COLORS),
/* harmony export */   wM: () => (/* binding */ getGeneralDynamicsColor),
/* harmony export */   xb: () => (/* binding */ sentimentByChartColorScheme),
/* harmony export */   yk: () => (/* binding */ alternativeChartColors)
/* harmony export */ });
/* unused harmony exports getGeneralDynamicsByChartColorScheme, getGeneralDynamicsColors */
/* harmony import */ var color__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("aSns");
/* harmony import */ var color__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(color__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var colorHandler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("MShE");



var getColorsByTheme = function () {
    var isDarkMode = (0,colorHandler__WEBPACK_IMPORTED_MODULE_2__/* .isDarkTheme */ .g4)();
    return {
        textColor: isDarkMode ? 'rgba(255,255,255,.67)' : 'rgba(0,0,0,.87)',
        secondaryTextColor: isDarkMode ? 'rgba(255,255,255,.54)' : 'rgba(0,0,0,.54)',
        hintTextColor: isDarkMode ? 'rgba(255,255,255,.26)' : 'rgba(0,0,0,.26)',
        bordersColor: isDarkMode ? 'rgba(250,250,250,.2)' : 'rgba(0,0,0,.12)',
        iconsColor: isDarkMode ? '#7a7a7a' : '#898989',
        black: isDarkMode ? '#FFFFFF' : '#000000',
        white: isDarkMode ? '#2A2A2A' : '#FFFFFF',
        grayBase: isDarkMode ? '#9E9E9E' : '#9E9E9E',
        grayLightest: isDarkMode ? '#424242' : '#EEEEEE',
        grayLighter: isDarkMode ? '#616161' : '#E0E0E0',
        grayLight: isDarkMode ? '#757575' : '#BDBDBD',
        grayDark: isDarkMode ? '#BDBDBD' : '#757575',
        grayDarker: isDarkMode ? '#E0E0E0' : '#616161',
        grayDarkest: isDarkMode ? '#EEEEEE' : '#424242',
        primary: isDarkMode ? '#61b53d' : '#2196f3',
        primaryLight: isDarkMode ? '#80c363' : '#42a5f4',
        primaryLighter: isDarkMode ? '#b0da9e' : '#d2eafc',
        pink: '#E91E63',
        pinkLight: '#FF80AB',
        purple: '#9447A0',
        indigo: '#1976D2',
        yellow: '#FFEB3B',
        amber: '#FFC107',
        orange: '#FF9800',
        blue: '#2196F3',
        green: '#66bb6a',
        red: '#F44336',
        gray: '#90A4AE',
    };
};
var colors = {
    pink: '#E91E63',
    pinkLight: '#FF80AB',
    purpleDarker: '#6A308E',
    purpleDark: '#7B3F8E',
    purple: '#9447A0',
    purpleLight: '#A75CBA',
    purpleLighter: '#B97ABB',
    purpleLightest: '#C9A0DC',
    yellowDarker: '#DBC500',
    yellowDark: '#FFE60B',
    yellow: '#FFEB3B',
    yellowLighter: '#FFF389',
    amber: '#FFC107',
    orangeDarker: '#b26a00',
    orangeDark: '#d88100',
    orange: '#FF9800',
    orangeLight: '#ffa726',
    orangeLighter: '#ffc165',
    orangeLightest: '#ffdca8',
    indigo: '#1976D2',
    blueDarker: '#096AB7',
    blueDark: '#0C81DE',
    blue: '#2196F3',
    blueLight: '#42A5F4',
    blueLighter: '#79C0F7',
    greenDarker: '#437E2A',
    greenDark: '#57A236',
    green: '#66BB6A',
    greenLight: '#80C363',
    greenLighter: '#B0DA9E',
    greenLightest: '#d0ecc6',
    redDarker: '#C5170A',
    redDark: '#F01C0D',
    red: '#F44336',
    redLight: '#F55F54',
    redLighter: '#F88A86',
    redLightest: '#ffb7b4',
    black: '#000000',
    white: '#FFFFFF',
    gray: '#90A4AE',
    grayBase: '#9E9E9E',
    grayLightest: '#EEEEEE',
    grayLighter: '#E0E0E0',
    grayLight: '#BDBDBD',
    grayDark: '#757575',
    grayDarker: '#616161',
    grayDarkest: '#424242',
};
var CATEGORIZED_COLORS = {
    neutral: '#2196F3',
    negative: '#F44336',
    positive: '#8BC34A',
    female: '#E91E63',
    male: '#2196F3',
    community: '#FFC107',
    unknown: '#90A4AE',
    social: '#1D83C9',
    messenger: '#66BB6A',
    reviews: '#FF9800',
    news: '#9E9E9E',
    blog: '#FF80AB',
    forum: '#FFEB3B',
    constructor: '#549032',
};
var communitiesColors = [
    '#F2E900',
    '#04D4A2',
    '#FA6FB9',
    '#527DFF',
    '#975EF5',
    '#2ECAF5',
    '#FF805A',
    '#BE29C1'
];
var opacity = function (colorToConvert, fadeBy) {
    if (fadeBy === void 0) { fadeBy = 0.55; }
    return color__WEBPACK_IMPORTED_MODULE_0___default()(colorToConvert).rgb().fade(fadeBy).string();
};
var getGeneralDynamicsByChartColorScheme = function (colorSchemeType) {
    var isDarkMode = (0,colorHandler__WEBPACK_IMPORTED_MODULE_2__/* .isDarkTheme */ .g4)();
    return {
        default: {
            line: '#4F82FF',
            map: {
                minColor: isDarkMode ? 'rgba(97, 181, 61, 0.16)' : '#E3F2FD',
                maxColor: isDarkMode ? '#61D53D' : '#2257D2',
            },
        },
        oldSchool: {
            line: colors.blue,
            map: {
                minColor: isDarkMode ? 'rgba(97, 181, 61, 0.16)' : '#E3F2FD',
                maxColor: isDarkMode ? '#61D53D' : '#093272',
            },
        },
        bright: {
            line: '#4F82FF',
            map: {
                minColor: isDarkMode ? 'rgba(97, 181, 61, 0.16)' : '#E3F2FD',
                maxColor: isDarkMode ? '#61D53D' : '#2257D2',
            },
        },
        pastel: {
            line: '#24AAF6',
            map: {
                minColor: isDarkMode ? 'rgba(97, 181, 61, 0.16)' : '#E3F2FD',
                maxColor: isDarkMode ? '#61D53D' : '#0b86cb',
            },
        },
    }[colorSchemeType];
};
var getGeneralDynamicsColors = function () { return getGeneralDynamicsByChartColorScheme((0,colorHandler__WEBPACK_IMPORTED_MODULE_2__/* .getCurrentColorSchemeType */ .uS)()); };
var getGeneralDynamicsColor = function (chartType) { return getGeneralDynamicsColors()[chartType]; };
var sentimentByChartColorScheme = {
    default: {
        positive: '#8DD03E',
        neutral: '#648efa',
        negative: '#E85B4C',
        undefined: '',
    },
    oldSchool: {
        positive: '#8BC34A',
        neutral: '#2196F3',
        negative: '#F44336',
        undefined: '',
    },
    bright: {
        positive: '#8DD03E',
        neutral: '#4A7DFF',
        negative: '#E85B4C',
        undefined: '',
    },
    pastel: {
        positive: '#7dd55d',
        neutral: '#44b1f3',
        negative: '#E6695C',
        undefined: '',
    },
};
var getSentimentColors = function () { return sentimentByChartColorScheme[(0,colorHandler__WEBPACK_IMPORTED_MODULE_2__/* .getCurrentColorSchemeType */ .uS)()]; };
var getSentimentColor = function (sentiment) { return getSentimentColors()[sentiment]; };
var getChartColorSchemes = function (colorSchemeType) {
    return {
        default: [
            '#00618c',
            '#ffa600',
            '#f95d6a',
            '#ff7c43',
            '#665191',
            '#c75082',
            '#5570bb',
            '#b05da5',
            '#FFD88C'
        ],
        oldSchool: [
            colors.blue,
            colors.orange,
            colors.green,
            colors.purple,
            colors.pinkLight,
            colors.red,
            colors.indigo,
            colors.yellow,
            colors.grayBase,
            colors.black
        ],
        bright: [
            '#EBBC00',
            '#E5484D',
            '#006ADC',
            '#3DB9CF',
            '#46A758',
            '#DA3176',
            '#F2E94E',
            '#F76808',
            '#8C5888',
            '#63419C'
        ],
        pastel: [
            '#ff9545',
            '#7770bb',
            '#53c7f3',
            '#f6e720',
            '#17668A',
            '#F48897',
            '#96D78B',
            '#4086B7'
        ],
    }[colorSchemeType];
};
var getCurrentChartColorScheme = function () { return getChartColorSchemes((0,colorHandler__WEBPACK_IMPORTED_MODULE_2__/* .getCurrentColorSchemeType */ .uS)()); };
var palette = {
    primary: colors.blue,
    error: colors.red,
};
var visualInsightsChartColors = {
    imageObject: '#5fc3e6',
    imageScene: '#ff798b',
    imageActivities: '#f4c845',
    imagePeople: '#82df82',
    imageBrand: '#9675DC',
};
var tagColors = {
    red: '#F44336',
    pink: '#F06292',
    purple: '#9C27B0',
    indigo: '#3F51B5',
    blue: '#2196F3',
    teal: '#009688',
    green: '#4CAF50',
    lime: '#CDDC39',
    yellow: '#FFEB3B',
    amber: '#FFC107',
    orange: '#FF9800',
    gray: '#607D8B',
};
var tagsDefaultColor = 'blue';
var wordCloudPickerColors = {
    blue: colors.blue,
    purple: colors.purple,
    green: colors.green,
    orange: colors.orange,
    red: colors.red,
};
var wordCloudSentimentPalette = {
    words: {
        positive: colors.greenLighter,
        negative: colors.redLighter,
        neutral: colors.grayLight,
    },
    objects: {
        positive: colors.greenLighter,
        negative: colors.redLighter,
        neutral: colors.grayLight,
    },
    phrases: {
        positive: colors.greenLight,
        negative: colors.redLight,
        neutral: colors.gray,
    },
    hashtags: {
        positive: colors.green,
        negative: colors.red,
        neutral: colors.grayBase,
    },
    actions: {
        positive: colors.greenDark,
        negative: colors.redDark,
        neutral: colors.grayDark,
    },
    characteristics: {
        positive: colors.greenDarker,
        negative: colors.redDarker,
        neutral: colors.grayDarker,
    },
    persons: {
        positive: colors.greenLighter,
        negative: colors.redLighter,
        neutral: colors.grayLight,
    },
    locations: {
        positive: colors.greenLight,
        negative: colors.redLight,
        neutral: colors.gray,
    },
    organizations: {
        positive: colors.green,
        negative: colors.red,
        neutral: colors.grayBase,
    },
    emojis: {
        positive: '',
        negative: '',
        neutral: '',
    },
};
var wordCloudPalettes = {
    default: {
        words: '#9079BE',
        objects: '#9079BE',
        phrases: '#00897B',
        hashtags: '#F38C52',
        actions: '#3A76AF',
        characteristics: '#489DEB',
        emojis: '#EDB421',
        persons: '#5E9F5E',
        locations: '#F9A65A',
        organizations: '#F05A5A',
    },
    blue: {
        words: colors.indigo,
        objects: colors.indigo,
        phrases: colors.blueDarker,
        hashtags: colors.blueDark,
        actions: colors.blue,
        characteristics: colors.blueLight,
        emojis: colors.blueLighter,
        persons: colors.indigo,
        locations: colors.blueDark,
        organizations: colors.blueLighter,
    },
    purple: {
        words: colors.purpleDarker,
        objects: colors.purpleDarker,
        phrases: colors.purpleDark,
        hashtags: colors.purple,
        actions: colors.purpleLight,
        characteristics: colors.purpleLighter,
        emojis: colors.purpleLightest,
        persons: colors.purpleDarker,
        locations: colors.purple,
        organizations: colors.purpleLightest,
    },
    green: {
        words: colors.greenDarker,
        objects: colors.greenDarker,
        phrases: colors.greenDark,
        hashtags: colors.green,
        actions: colors.greenLight,
        characteristics: colors.greenLighter,
        emojis: colors.greenLightest,
        persons: colors.greenDarker,
        locations: colors.green,
        organizations: colors.greenLightest,
    },
    orange: {
        words: colors.orangeDarker,
        objects: colors.orangeDarker,
        phrases: colors.orangeDark,
        hashtags: colors.orange,
        actions: colors.orangeLight,
        characteristics: colors.orangeLighter,
        emojis: colors.orangeLightest,
        persons: colors.orangeDarker,
        locations: colors.orange,
        organizations: colors.orangeLightest,
    },
    red: {
        words: colors.redDarker,
        objects: colors.redDarker,
        phrases: colors.redDark,
        hashtags: colors.red,
        actions: colors.redLight,
        characteristics: colors.redLighter,
        emojis: colors.redLightest,
        persons: colors.redDarker,
        locations: colors.red,
        organizations: colors.redLightest,
    },
};
var wordCloudColorList = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.shuffle)(Object.values(wordCloudPalettes).flatMap(function (i) { return Object.values(i); }));
var socialSearchColors = [colors.blue, colors.redLight, colors.yellowDarker, colors.greenDark, colors.pinkLight];
var alternativeChartColors = [
    '#1B4E6B',
    '#40558F',
    '#864E9B',
    '#BD61AA',
    '#F177B3',
    '#FF8173',
    '#F4AB33',
    '#F76F19',
    '#e39700',
    '#c6b900',
    '#8F9B00',
    '#5B6A00'
];
var SOURCE_COLOR = {
    FACEBOOK: alternativeChartColors[0],
    INSTAGRAM: alternativeChartColors[1],
    TELEGRAM: alternativeChartColors[2],
    TWITTER: alternativeChartColors[3],
    REDDIT: alternativeChartColors[4],
    YOUTUBE: alternativeChartColors[5],
    TIKTOK: alternativeChartColors[6],
    PINTEREST: alternativeChartColors[7],
    VKONTAKTE: alternativeChartColors[8],
};
var EDUCATIONAL_MATERIALS_CARD_COLORS = ['purple', 'orange', 'green'];


/***/ }),

/***/ "Z9RP":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  A: () => (/* binding */ confirm_confirm)
});

// EXTERNAL MODULE: ./node_modules/react-confirm/lib/index.js
var lib = __webpack_require__("tib1");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/components/ui/Modal/index.ts
var Modal = __webpack_require__("V5xf");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/TextField/index.js + 1 modules
var TextField = __webpack_require__("C4iS");
// EXTERNAL MODULE: ./src/components/helpers/Toolbar/ButtonBar.tsx + 1 modules
var ButtonBar = __webpack_require__("A2Ed");
// EXTERNAL MODULE: ./src/components/helpers/VerticalSpacer/index.ts + 2 modules
var VerticalSpacer = __webpack_require__("RrxW");
;// CONCATENATED MODULE: ./src/components/other/Confirm/Confirm.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Confirm_Confirm = ({"base":"fAnwXIO8FJe3vXX9xjdG","buttons":"JpHijNOuSMncGl4K3OOE"});
;// CONCATENATED MODULE: ./src/components/other/Confirm/Confirm.tsx
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};









var Confirm = /** @class */ (function (_super) {
    __extends(Confirm, _super);
    function Confirm(props) {
        var _this = _super.call(this, props) || this;
        _this.handleValidationValueChange = function (validationValue) {
            _this.setState({ validationValue: validationValue });
        };
        _this.state = __assign(__assign({}, ((props.stateCreator && props.stateCreator()) || {})), { validationValue: '' });
        return _this;
    }
    Object.defineProperty(Confirm.prototype, "stateModifiers", {
        get: function () {
            var _this = this;
            var modifiers = {};
            Object.entries(this.props.stateReducers).forEach(function (_a) {
                var _b = __read(_a, 2), key = _b[0], reducer = _b[1];
                modifiers[key] = function () {
                    var args = [];
                    for (var _i = 0; _i < arguments.length; _i++) {
                        args[_i] = arguments[_i];
                    }
                    return _this.setState(function (prevState) { return reducer.apply(void 0, __spreadArray([prevState], __read(args), false)); });
                };
            });
            return modifiers;
        },
        enumerable: false,
        configurable: true
    });
    Confirm.prototype.render = function () {
        var _a;
        var _b = this.props, show = _b.show, dismiss = _b.dismiss, proceed = _b.proceed, cancel = _b.cancel, title = _b.title, message = _b.message, actionLabel = _b.actionLabel, buttonType = _b.buttonType, maxModalWidth = _b.maxModalWidth, validation = _b.validation, validationLabel = _b.validationLabel;
        var buttonProps = (_a = {
                label: actionLabel || l('Confirm')
            },
            _a[buttonType || 'danger'] = true,
            _a);
        var isConfirmButtonActive = validation && validation(this.state.validationValue);
        return ((0,jsx_runtime.jsxs)(Modal/* default */.A, __assign({ isOpen: show, title: title, className: Confirm_Confirm.base, maxWidth: maxModalWidth, onRequestClose: dismiss }, { children: [typeof message === 'function'
                    ? message(this.state, this.stateModifiers)
                    : message, validation
                    && ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)("span", { children: validationLabel }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(TextField/* default */.A, { fullWidth: true, value: this.state.value, onChange: this.handleValidationValueChange }), (0,jsx_runtime.jsx)(VerticalSpacer/* default */.A, {})] })), (0,jsx_runtime.jsxs)(ButtonBar/* default */.A, __assign({ className: Confirm_Confirm.buttons }, { children: [(0,jsx_runtime.jsx)(Button/* default */.A, { label: l('Cancel'), onClick: cancel }), (0,jsx_runtime.jsx)(Button/* default */.A, __assign({}, buttonProps, { disabled: validation && !isConfirmButtonActive, onClick: proceed }))] }))] })));
    };
    return Confirm;
}(react.Component));
/* harmony default export */ const other_Confirm_Confirm = ((0,lib/* confirmable */.r)(Confirm));

;// CONCATENATED MODULE: ./src/components/other/Confirm/index.js

;// CONCATENATED MODULE: ./src/utils/confirm.ts


var callConfirm = (0,lib/* createConfirmation */.AV)(other_Confirm_Confirm);
function confirm_confirm(_a) {
    var message = _a.message, title = _a.title, actionLabel = _a.actionLabel, buttonType = _a.buttonType, validation = _a.validation, validationLabel = _a.validationLabel, options = _a.options, stateCreator = _a.stateCreator, stateReducers = _a.stateReducers, maxModalWidth = _a.maxModalWidth;
    return callConfirm({
        message: message,
        title: title,
        actionLabel: actionLabel,
        buttonType: buttonType,
        validation: validation,
        validationLabel: validationLabel,
        options: options,
        stateCreator: stateCreator,
        stateReducers: stateReducers,
        maxModalWidth: maxModalWidth,
    });
}


/***/ }),

/***/ "L02r":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   BU: () => (/* binding */ FEEDBACK_LOOP_SMART_FEATURE_NAMES),
/* harmony export */   CH: () => (/* binding */ FACEBOOK_BUSINESS_INTEGRATION_LINK),
/* harmony export */   GO: () => (/* binding */ TREND_THRESHOLD),
/* harmony export */   Te: () => (/* binding */ SUPPORT_EMAIL),
/* harmony export */   eu: () => (/* binding */ FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES),
/* harmony export */   fA: () => (/* binding */ FEEDBACK_LOOP_SUPPORT_ONLY_NAVIGATION_LINK_NAMES),
/* harmony export */   gq: () => (/* binding */ FEEDBACK_LOOP_NAVIGATION_LINK_NAMES),
/* harmony export */   j4: () => (/* binding */ SUPPORTED_COUNTRIES_WITH_REGIONS),
/* harmony export */   l3: () => (/* binding */ VISUAL_INSIGHTS_FEATURES),
/* harmony export */   oQ: () => (/* binding */ ReCAPTCHA_KEY)
/* harmony export */ });
/* unused harmony export COUNTRY_CODES */
/* harmony import */ var _3rd_party_mapdata__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("gXmr");
/* eslint-disable import/prefer-default-export */

var ReCAPTCHA_KEY = '6Lf7V-QZAAAAAODR8gjiT_oyX30MC8uO1frAV4V4';
var SUPPORT_EMAIL = 'support@youscan.io';
var TREND_THRESHOLD = 20;
var COUNTRY_CODES = Object.freeze({
    NOT_DEFINED: 'NOT_DEFINED',
});
var SUPPORTED_COUNTRIES_WITH_REGIONS = Object.keys(_3rd_party_mapdata__WEBPACK_IMPORTED_MODULE_0__/* .countries */ .X);
var FEEDBACK_LOOP_SMART_FEATURE_NAMES = [
    'systemTags',
    'aspects',
    'subjects',
    'imageActivities',
    'imageBrands',
    'imageColors',
    'imageObjects',
    'imageScenes',
    'imagePeople',
    'imageContentSensitivity',
    'imageType',
    'imageSubtype'
];
var FEEDBACK_LOOP_SINGLE_VALUE_SMART_FEATURE_NAMES = [
    'imageType',
    'imageSubtype'
];
var VISUAL_INSIGHTS_FEATURES = [
    'imageActivities',
    'imageBrands',
    'imageColors',
    'imageObjects',
    'imageScenes',
    'imagePeople',
    'imageContentSensitivity'
];
var FEEDBACK_LOOP_SUPPORT_ONLY_NAVIGATION_LINK_NAMES = [
    'visualInsights.imageContentSensitivity'
];
var FEEDBACK_LOOP_NAVIGATION_LINK_NAMES = [
    'systemTags',
    'aspects',
    'subjects',
    'visualInsights',
    'visualInsights.imageActivities',
    'visualInsights.imageBrands',
    'visualInsights.imageColors',
    'visualInsights.imageObjects',
    'visualInsights.imageScenes',
    'visualInsights.imagePeople',
    'visualInsights.imageContentSensitivity',
    'imageType',
    'imageSubtype'
];
var FACEBOOK_BUSINESS_INTEGRATION_LINK = 'https://www.facebook.com/settings?tab=business_tools&ref=settings';


/***/ }),

/***/ "V1lb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  NI: () => (/* binding */ CUSTOM_DASHBOARD_AGGREGATION_GROUPS),
  IT: () => (/* binding */ CUSTOM_DASHBOARD_AGGREGATION_GROUP_ICON),
  E4: () => (/* binding */ CUSTOM_DASHBOARD_SECOND_DIMENSION_SUPPORTED_AGGREGATIONS),
  wo: () => (/* binding */ CUSTOM_DASHBOARD_SUPPORTED_AGGREGATIONS),
  _L: () => (/* binding */ aggregationToFilter),
  _7: () => (/* binding */ getAggregationSize),
  Ty: () => (/* binding */ getAggregationTimeInterval)
});

// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/state/filter/utils.js
var utils = __webpack_require__("d/15");
;// CONCATENATED MODULE: ./src/models/MentionsFilter.ts
var MENTION_FILTERS = [
    'from',
    'to',
    'addedFrom',
    'addedTo',
    'text',
    'word',
    'excludeWord',
    'link',
    'excludeLink',
    'host',
    'excludeHost',
    'source',
    'excludeSource',
    'sources',
    'excludeSources',
    'author',
    'excludeAuthor',
    'channel',
    'excludeChannel',
    'authorInterests',
    'excludeAuthorInterests',
    'authorInterestCategories',
    'excludeAuthorInterestCategories',
    'authorJobs',
    'excludeAuthorJobs',
    'sentiment',
    'excludeSentiment',
    'countryGroup',
    'excludeCountryGroup',
    'country',
    'excludeCountry',
    'region',
    'regionId',
    'excludeRegionId',
    'city',
    'cityId',
    'excludeCityId',
    'gender',
    'excludeGender',
    'ageFrom',
    'ageTo',
    'authorSubscribersFrom',
    'authorSubscribersTo',
    'channelSubscribersFrom',
    'channelSubscribersTo',
    'resourceType',
    'excludeResourceType',
    'postType',
    'excludePostType',
    'indirect',
    'contentType',
    'excludeContentType',
    'language',
    'excludeLanguage',
    'tag',
    'excludeTag',
    'trend',
    'excludeTrend',
    'tagged',
    'rule',
    'excludeRule',
    'sentimentAffect',
    'excludeSentimentAffect',
    'imageBrand',
    'excludeImageBrand',
    'imageObject',
    'excludeImageObject',
    'imageScene',
    'excludeImageScene',
    'imageContentSensitivity',
    'excludeImageContentSensitivity',
    'imagePeople',
    'excludeImagePeople',
    'imageActivities',
    'excludeImageActivities',
    'imageColors',
    'excludeImageColors',
    'imageType',
    'excludeImageType',
    'imageSubtype',
    'excludeImageSubtype',
    'topic',
    'excludeTopic',
    'subject',
    'excludeSubject',
    'aspect',
    'excludeAspect',
    'origin',
    'excludeOrigin',
    'collectionMethod',
    'excludeCollectionMethod',
    'parentPostId',
    'excludeParentPostId',
    'discussionId',
    'excludeDiscussionId',
    'apiCode',
    'excludeApiCode',
    'systemTag',
    'excludeSystemTag',
    'sourceName',
    'sourceId',
    'authorNameOrNickname',
    'channelNameOrNickname',
    'spam',
    'processed',
    'deleted',
    'starred',
    'assigned',
    'unavailable',
    'withImage',
    'withTextHighlight',
    'duplicates',
    'similar',
    'fromId',
    'toId',
    'samplingRate'
];

// EXTERNAL MODULE: ./src/utils/customDashboards/constants.ts
var constants = __webpack_require__("7vdz");
// EXTERNAL MODULE: ./src/utils/customDashboards/dates.tsx
var dates = __webpack_require__("wlTg");
;// CONCATENATED MODULE: ./src/utils/customDashboards/aggregation.ts





var aggregationToFilter = function (metric) {
    if (!metric) {
        return null;
    }
    if (metric === 'sources')
        return 'sourceId';
    var aggregationTypeToFilter = (0,lodash.invert)(utils/* filterTypeToAggregationTypeMapping */.q);
    if (aggregationTypeToFilter[metric]) {
        return aggregationTypeToFilter[metric];
    }
    var singular = metric.replace(/s$/, '');
    if (MENTION_FILTERS.includes(singular)) {
        return singular;
    }
    if (MENTION_FILTERS.includes(metric)) {
        return metric;
    }
    switch (metric) {
        case 'cities': {
            return 'cityId';
        }
        case 'sentimentAspects': {
            return 'aspect';
        }
        case 'discussions': {
            return 'discussionId';
        }
        case 'influencers': {
            return 'author';
        }
        case 'significantWords': {
            return 'word';
        }
        case 'emojis': {
            return 'emoji';
        }
        /*
         * emojis, imageTags, dates,
         * engagement, authorsCount, sourcesCount, viewsCount, subscribersCount, maxDate,
         * mentionIds, medianAuthorEngagement, metricTotal
         */
        default:
            return null;
    }
};
var BASIC_AGGREGATION_SIZE = {
    sentiment: 3,
    default: 5,
    indirectParticular: 1,
    indirectWhole: 2,
};
var getBasicAggregationSize = function (aggregation) {
    switch (aggregation) {
        case 'sentiment': {
            return BASIC_AGGREGATION_SIZE.sentiment;
        }
        default: {
            return BASIC_AGGREGATION_SIZE.default;
        }
    }
};
var getAggregationSize = function (aggregation) {
    var filterName = aggregationToFilter(aggregation);
    if (aggregation === 'date') {
        return null;
    }
    if (filterName === 'indirect') {
        return BASIC_AGGREGATION_SIZE.indirectParticular;
    }
    return getBasicAggregationSize(aggregation);
};
var getAggregationTimeInterval = function (aggregation, dateRange) {
    if (aggregation !== 'date') {
        return null;
    }
    var nonEmptyDateRange = dateRange || constants/* DEFAULT_DATE_RANGE */.Rc;
    return (0,dates/* getTimeInterval */.NR)(nonEmptyDateRange);
};
var CUSTOM_DASHBOARD_AGGREGATION_GROUPS = [
    'common',
    'sources',
    'author',
    'geo',
    'textAnalysis',
    'imageAnalysis',
    'others'
];
var CUSTOM_DASHBOARD_AGGREGATION_GROUP_ICON = {
    common: '/static/images/aggregation-groups/common.svg',
    sources: '/static/images/aggregation-groups/sources.svg',
    author: '/static/images/aggregation-groups/authors.svg',
    geo: '/static/images/aggregation-groups/geo.svg',
    textAnalysis: '/static/images/aggregation-groups/text-analyzis.svg',
    imageAnalysis: '/static/images/aggregation-groups/image-analyzis.svg',
    others: '/static/images/aggregation-groups/other-mentions.svg',
};
var CUSTOM_DASHBOARD_SUPPORTED_AGGREGATIONS = [
    { value: 'date', group: 'common' },
    { value: 'tags', group: 'common' },
    { value: 'sentiment', group: 'common' },
    { value: 'sources', group: 'sources' },
    { value: 'resourceTypes', group: 'sources' },
    { value: 'authors', group: 'author' },
    { value: 'authorAge', group: 'author' },
    { value: 'authorAgeRange', group: 'author' },
    { value: 'authorGender', group: 'author' },
    { value: 'channels', group: 'author' },
    { value: 'authorInterests', group: 'author' },
    { value: 'authorInterestCategories', group: 'author' },
    { value: 'authorJobs', group: 'author' },
    { value: 'countryGroups', group: 'geo' },
    { value: 'countries', group: 'geo' },
    { value: 'regionIds', group: 'geo' },
    { value: 'cityIds', group: 'geo' },
    { value: 'systemTags', group: 'textAnalysis' },
    { value: 'sentimentAspects', group: 'textAnalysis' },
    { value: 'subjects', group: 'textAnalysis' },
    { value: 'sentiment', group: 'textAnalysis' },
    { value: 'trends', group: 'textAnalysis' },
    { value: 'imageBrands', group: 'imageAnalysis' },
    { value: 'imagePeople', group: 'imageAnalysis' },
    { value: 'imageActivities', group: 'imageAnalysis' },
    { value: 'imageObjects', group: 'imageAnalysis' },
    { value: 'imageScenes', group: 'imageAnalysis' },
    { value: 'imageColors', group: 'imageAnalysis' },
    { value: 'date', group: 'others' },
    { value: 'collectionMethods', group: 'others' },
    { value: 'postTypes', group: 'others' },
    { value: 'contentTypes', group: 'others' },
    { value: 'words', group: 'others' },
    { value: 'emojis', group: 'others' },
    { value: 'languages', group: 'others' }
];
var CUSTOM_DASHBOARD_SECOND_DIMENSION_SUPPORTED_AGGREGATIONS = CUSTOM_DASHBOARD_SUPPORTED_AGGREGATIONS.filter(function (a) { return a.value !== 'sentimentAspects'; });


/***/ }),

/***/ "7vdz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   QK: () => (/* binding */ CUSTOM_DASHBOARD_DIMENSION),
/* harmony export */   Rc: () => (/* binding */ DEFAULT_DATE_RANGE),
/* harmony export */   eK: () => (/* binding */ EMPTY_GRID_CELL)
/* harmony export */ });
/* harmony import */ var models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("svtq");

var CUSTOM_DASHBOARD_DIMENSION = 3;
var EMPTY_GRID_CELL = '.';
var DEFAULT_DATE_RANGE = { from: '-30d', type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .DateRangeType */ .ci.RELATIVE };


/***/ }),

/***/ "wlTg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $P: () => (/* binding */ isDate),
/* harmony export */   $Q: () => (/* binding */ getAbsoluteDateRange),
/* harmony export */   NH: () => (/* binding */ getDateRangeMessage),
/* harmony export */   NR: () => (/* binding */ getTimeInterval),
/* harmony export */   RW: () => (/* binding */ isDateIntervalHigherThanDateRange),
/* harmony export */   X: () => (/* binding */ predictDateRange),
/* harmony export */   Xf: () => (/* binding */ getCustomDateRangeOptions),
/* harmony export */   _J: () => (/* binding */ getTo),
/* harmony export */   gA: () => (/* binding */ getRelativeDateRangeOptions),
/* harmony export */   i3: () => (/* binding */ getAllowedTimeIntervals)
/* harmony export */ });
/* unused harmony exports getAbsoluteDateRangeMessage, IsValidDate */
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("nKUr");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("wd/R");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("TpeJ");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("cHAT");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("cnyc");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("Xep9");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("aetl");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("9ig3");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("vHCX");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("1unF");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__("M34a");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__("piIK");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__("74sN");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__("16cF");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__("phiu");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__("2EWP");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__("wsN2");
/* harmony import */ var date_fns_fp__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("pSC6");
/* harmony import */ var date_fns_fp__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__("h1dx");
/* harmony import */ var date_fns_fp__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__("7glb");
/* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("sYBo");
/* harmony import */ var models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("svtq");
/* harmony import */ var models_Aggregation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("ttpX");
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("9jXX");
/* harmony import */ var utils_dates_formats__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("RYjn");
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("872o");
/* harmony import */ var components_ui_Icon__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("LtxQ");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("7vdz");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var _a, _b, _c;

/* eslint-disable import/prefer-default-export */











var MONDAY = 1;
var SUNDAY = 0;
var getDuration = function (_a) {
    var start = _a.start, end = _a.end;
    var _b = __read([date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A, date_fns__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A, date_fns__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .A].map(function (fn) { return fn(start); }), 3), fromDate = _b[0], fromMonth = _b[1], fromYear = _b[2];
    var _c = __read([date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A, date_fns__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A, date_fns__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .A].map(function (fn) { return fn(end); }), 3), toDate = _c[0], toMonth = _c[1], toYear = _c[2];
    return {
        years: toYear - fromYear,
        months: toMonth - fromMonth,
        days: toDate - fromDate,
    };
};
var getAbsoluteDateRangeMessage = function (from, to) {
    var _a = getDuration({
        start: from,
        end: to,
    }), years = _a.years, months = _a.months, days = _a.days;
    if (!years && !months && !days) {
        return (0,utils_dates_formats__WEBPACK_IMPORTED_MODULE_5__/* .formatOneDayRange */ .rX)(from);
    }
    if (!years && !months) {
        return (0,utils_dates_formats__WEBPACK_IMPORTED_MODULE_5__/* .formatOneMonthRange */ .RS)(from, to);
    }
    if (!years) {
        return (0,utils_dates_formats__WEBPACK_IMPORTED_MODULE_5__/* .formatOneYearRange */ .sd)(from, to);
    }
    return (0,utils_dates_formats__WEBPACK_IMPORTED_MODULE_5__/* .formatDifferentYearsRange */ .OK)(from, to);
};
var getShiftExplainMessage = function (quantity, interval) {
    var result;
    switch (interval) {
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.DAY: {
            result = (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(nl('%d day', '%d days', quantity), quantity);
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.WEEK: {
            result = (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(nl('%d week', '%d weeks', quantity), quantity);
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.MONTH: {
            result = (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(nl('%d month', '%d months', quantity), quantity);
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.YEAR: {
            result = (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(nl('%d year', '%d years', quantity), quantity);
            break;
        }
        default: {
            result = null;
        }
    }
    return "".concat(result, " ").concat(l('ago'));
};
var getShiftDateRange = function (from, to, shift) {
    var _a = parseDateRangeShift(shift), quantity = _a.quantity, interval = _a.interval;
    var shiftFrom = subDayMethods[interval](from, quantity);
    var shiftTo = subDayMethods[interval](to, quantity);
    return {
        from: shiftFrom,
        to: shiftTo,
        quantity: quantity,
        interval: interval,
    };
};
function getShiftMessages(shift, from, to) {
    var _a = getShiftDateRange(from, to, shift), quantity = _a.quantity, interval = _a.interval, shiftFrom = _a.from, shiftTo = _a.to;
    return { shiftRangeMessage: getAbsoluteDateRangeMessage(shiftFrom, shiftTo), shiftExplainMessage: getShiftExplainMessage(quantity, interval) };
}
var getRelativeDateRangeOptions = function () {
    var formatDateRangeOption = function (daysBack, message, shiftedMessage) { return function (shift, short) {
        var to = new Date();
        var from = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(to, daysBack);
        if (shift) {
            var _a = getShiftMessages(shift, from, to), shiftRangeMessage = _a.shiftRangeMessage, shiftExplainMessage = _a.shiftExplainMessage;
            return short ? "".concat(shiftedMessage, ", ").concat(shiftExplainMessage) : "".concat(shiftedMessage, ", ").concat(shiftExplainMessage, ": ").concat(shiftRangeMessage);
        }
        return short ? message : "".concat(message, ": ").concat(getAbsoluteDateRangeMessage(from, to));
    }; };
    return [
        {
            label: l('Last 24 hours'),
            value: {
                from: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .RelativeDateRangeType */ .wE.LAST_24_HOURS,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE,
            },
            formatDateRange: formatDateRangeOption(1, l('Last 24 hours'), l('Corresponding 24 hours')),
        },
        {
            label: l('Last 7 days'),
            value: {
                from: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .RelativeDateRangeType */ .wE.LAST_7_DAYS,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE,
            },
            formatDateRange: formatDateRangeOption(6, l('Last 7 days'), l('Corresponding 7 days')),
        },
        {
            label: l('Last 30 days'),
            value: {
                from: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .RelativeDateRangeType */ .wE.LAST_30_DAYS,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE,
            },
            formatDateRange: formatDateRangeOption(30, l('Last 30 days'), l('Corresponding 30 days')),
        },
        {
            label: l('Last 90 days'),
            value: {
                from: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .RelativeDateRangeType */ .wE.LAST_3_MONTHS,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE,
            },
            formatDateRange: formatDateRangeOption(90, l('Last 90 days'), l('Corresponding 90 days')),
        },
        {
            label: l('Last 365 days'),
            value: {
                from: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .RelativeDateRangeType */ .wE.LAST_YEAR,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE,
            },
            formatDateRange: formatDateRangeOption(365, l('Last 365 days'), l('Corresponding 365 days')),
        }
    ];
};
var getCustomDateRangeOptions = function () {
    var formatDateRangeOption = function (date, message, shiftedMessage) { return function (shift, short) {
        var _a = date(), startDate = _a.startDate, endDate = _a.endDate;
        if (shift) {
            var _b = getShiftMessages(shift, startDate, endDate), shiftRangeMessage = _b.shiftRangeMessage, shiftExplainMessage = _b.shiftExplainMessage;
            return short ? "".concat(shiftedMessage, ", ").concat(shiftExplainMessage) : "".concat(shiftedMessage, ", ").concat(shiftExplainMessage, ": ").concat(shiftRangeMessage);
        }
        return short ? message : "".concat(message, ": ").concat(getAbsoluteDateRangeMessage(startDate, endDate));
    }; };
    return [
        {
            label: l('Today'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.TODAY,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () { return ({ startDate: new Date(), endDate: new Date() }); }, l('Today'), l('Corresponding day')),
        },
        {
            label: l('Yesterday'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.YESTERDAY,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var date = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(new Date(), 1);
                return {
                    startDate: date,
                    endDate: date,
                };
            }, l('Yesterday'), l('Corresponding day')),
        },
        {
            label: l('This week'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_WEEK,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var today = new Date();
                var monday = (0,date_fns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A)(today, { weekStartsOn: MONDAY });
                return {
                    startDate: monday,
                    endDate: today,
                };
            }, l('This week'), l('Corresponding week')),
        },
        {
            label: l('Previous week'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_WEEK,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var sunday = (0,date_fns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A)(new Date(), { weekStartsOn: SUNDAY });
                var previousMonday = (0,date_fns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A)(sunday, { weekStartsOn: MONDAY });
                return {
                    startDate: previousMonday,
                    endDate: sunday,
                };
            }, l('Previous week'), l('Corresponding week')),
        },
        {
            label: l('This month'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_MONTH,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var today = new Date();
                var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .A)(today);
                return {
                    startDate: firstDay,
                    endDate: today,
                };
            }, l('This month'), l('Corresponding month')),
        },
        {
            label: l('Previous month'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_MONTH,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var currentMonthFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .A)(new Date());
                var previousMonthLastDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(currentMonthFirstDay, 1);
                var previousMonthFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .A)(previousMonthLastDay);
                return {
                    startDate: previousMonthFirstDay,
                    endDate: previousMonthLastDay,
                };
            }, l('Previous month'), l('Corresponding month')),
        },
        {
            label: l('This quarter'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_QUARTER,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var today = new Date();
                var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(today);
                return {
                    startDate: firstDay,
                    endDate: today,
                };
            }, l('This quarter'), l('Corresponding quarter')),
        },
        {
            label: l('Previous quarter'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_QUARTER,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var currentQuarterFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(new Date());
                var previousQuarterLastDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(currentQuarterFirstDay, 1);
                var previousQuarterFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(previousQuarterLastDay);
                return {
                    startDate: previousQuarterFirstDay,
                    endDate: previousQuarterLastDay,
                };
            }, l('Previous quarter'), l('Corresponding quarter')),
        },
        {
            label: l('This year'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_YEAR,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var today = new Date();
                var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .A)(today);
                return {
                    startDate: firstDay,
                    endDate: today,
                };
            }, l('This year'), l('Corresponding year')),
        },
        {
            label: l('Previous year'),
            value: {
                input: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_YEAR,
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM,
            },
            formatDateRange: formatDateRangeOption(function () {
                var currentYearFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .A)(new Date());
                var previousYearLastDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(currentYearFirstDay, 1);
                var previousYearFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .A)(previousYearLastDay);
                return {
                    startDate: previousYearFirstDay,
                    endDate: previousYearLastDay,
                };
            }, l('Previous year'), l('Corresponding year')),
        }
    ];
};
var getDateRangeMessage = function (dateRange, short) {
    if (!dateRange) {
        return '';
    }
    var from = dateRange.from, to = dateRange.to, input = dateRange.input, type = dateRange.type;
    if (type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE) {
        var absoluteDate = getRelativeDateRangeOptions().find(function (option) { return option.value.from === from && option.value.to === to; });
        return absoluteDate.formatDateRange(dateRange === null || dateRange === void 0 ? void 0 : dateRange.shift, short);
    }
    if (type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM) {
        var customDate = getCustomDateRangeOptions().find(function (option) { return option.value.input === input; });
        return customDate.formatDateRange(dateRange === null || dateRange === void 0 ? void 0 : dateRange.shift, short);
    }
    return getAbsoluteDateRangeMessage(new Date(from), new Date(to));
};
var resetDate = (0,redux__WEBPACK_IMPORTED_MODULE_17__/* .compose */ .Zz)((0,date_fns_fp__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .A)(0), (0,date_fns_fp__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .A)(0), (0,date_fns_fp__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .A)(0));
var customDateRangeToAbsolute = function (dateRange) {
    var now = new Date();
    var resultDate;
    switch (dateRange.input) {
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.TODAY: {
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(now)),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(now),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.YESTERDAY: {
            var yesterday = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(now, 1);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .A)(yesterday)),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_22__/* ["default"] */ .A)(yesterday)),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_WEEK: {
            var monday = (0,date_fns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A)(now, { weekStartsOn: MONDAY });
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(monday),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(now),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_WEEK: {
            var sunday = (0,date_fns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A)(now, { weekStartsOn: SUNDAY });
            var monday = (0,date_fns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .A)(sunday, { weekStartsOn: MONDAY });
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(monday),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(sunday),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_MONTH: {
            var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .A)(now);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(firstDay),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(now),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_MONTH: {
            var currentMonthFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .A)(now);
            var lastDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(currentMonthFirstDay, 1);
            var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .A)(lastDay);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(firstDay),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(lastDay),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_QUARTER: {
            var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(now);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(firstDay),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(now),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_QUARTER: {
            var currentQuarterFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(now);
            var lastDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(currentQuarterFirstDay, 1);
            var firstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .A)(lastDay);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(firstDay),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(lastDay),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.THIS_YEAR: {
            var currentYearFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .A)(now);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(currentYearFirstDay),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(now),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .CustomDateRangeType */ .pf.PREVIOUS_YEAR: {
            var currentYearFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .A)(now);
            var lastYearLastDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(currentYearFirstDay, 1);
            var lastYearFirstDay = (0,date_fns__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .A)(lastYearLastDay);
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(lastYearFirstDay),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(lastYearLastDay),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
            break;
        }
        default: {
            resultDate = __assign({}, dateRange);
        }
    }
    if (dateRange.shift) {
        var _a = getShiftDateRange(new Date(resultDate.from), new Date(resultDate.to), dateRange.shift), from = _a.from, to = _a.to;
        resultDate.from = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(from);
        resultDate.to = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(to);
    }
    return resultDate;
};
var relativeDateRangeToAbsolute = function (dateRange) {
    var today = resetDate(new Date());
    var now = new Date();
    var resultDate = {
        from: null,
        to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(today),
        type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
    };
    var _a = __read(dateRange.from.match(/(\d+)h/) || [], 2), hours = _a[1];
    var _b = __read(dateRange.from.match(/(\d+)d/) || [], 2), days = _b[1];
    var _c = __read(dateRange.from.match(/(\d+)w/) || [], 2), weeks = _c[1];
    var _d = __read(dateRange.from.match(/(\d+)mo/) || [], 2), months = _d[1];
    var _e = __read(dateRange.from.match(/(\d+)y/) || [], 2), years = _e[1];
    if (hours) {
        resultDate = {
            from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)((0,date_fns__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .A)(now, parseInt(hours, 10))),
            to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)(now),
            type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
        };
    }
    else if (days) {
        if (days === '1') {
            resultDate = {
                from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)((0,date_fns__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .A)(now, 24)),
                to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)(now),
                type: models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE,
            };
        }
        else {
            resultDate = __assign(__assign({}, resultDate), { from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A)(today, parseInt(days, 10))) });
        }
    }
    else if (weeks) {
        resultDate = __assign(__assign({}, resultDate), { from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_24__/* ["default"] */ .A)(today, parseInt(weeks, 10))) });
    }
    else if (months) {
        resultDate = __assign(__assign({}, resultDate), { from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_25__/* ["default"] */ .A)(today, parseInt(months, 10))) });
    }
    else if (years) {
        resultDate = __assign(__assign({}, resultDate), { from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)((0,date_fns__WEBPACK_IMPORTED_MODULE_26__/* ["default"] */ .A)(today, parseInt(years, 10))) });
    }
    if (dateRange.shift) {
        var _f = getShiftDateRange(new Date(resultDate.from), new Date(resultDate.to), dateRange.shift), from = _f.from, to = _f.to;
        resultDate.from = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(from);
        resultDate.to = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDD */ .Cn)(to);
    }
    return resultDate;
};
var getAbsoluteDateRange = function (dateRange) {
    if (dateRange.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE) {
        return dateRange;
    }
    if (dateRange.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM) {
        return customDateRangeToAbsolute(dateRange);
    }
    if (dateRange.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE) {
        return relativeDateRangeToAbsolute(dateRange);
    }
    return dateRange;
};
var DAY = 1;
var WEEK = DAY * 7;
var MONTH = DAY * 31;
var QUARTER = MONTH * 3;
var YEAR = QUARTER * 4;
var MAX_DIFF = (_a = {},
    _a[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Hour] = WEEK,
    _a[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Day] = MONTH * 3,
    _a[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Week] = QUARTER * 2,
    _a[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Month] = YEAR,
    _a[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Quarter] = YEAR * 3,
    _a[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Year] = YEAR * 20,
    _a);
var getTimeIntervalFromAbsoluteDate = function (dateRange) {
    var _a = getAbsoluteDateRange(dateRange || _constants__WEBPACK_IMPORTED_MODULE_8__/* .DEFAULT_DATE_RANGE */ .Rc), from = _a.from, to = _a.to;
    var days = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .getDaysDiff */ .Du)(Date.parse(from), Date.parse(to));
    return (Object.keys(MAX_DIFF).reduce(function (accum, interval) {
        if (accum) {
            return accum;
        }
        return days <= MAX_DIFF[interval] ? interval : accum;
    }, null) || models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Year);
};
var getTimeInterval = function (dateRange) {
    var nonEmptyDateRange = dateRange || _constants__WEBPACK_IMPORTED_MODULE_8__/* .DEFAULT_DATE_RANGE */ .Rc;
    switch (nonEmptyDateRange.type) {
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.ABSOLUTE:
            return getTimeIntervalFromAbsoluteDate(nonEmptyDateRange);
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.CUSTOM:
            return getTimeIntervalFromAbsoluteDate(customDateRangeToAbsolute(nonEmptyDateRange));
        case models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .DateRangeType */ .ci.RELATIVE:
            return getTimeIntervalFromAbsoluteDate(relativeDateRangeToAbsolute(nonEmptyDateRange));
        default:
            return models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Day;
    }
};
var getAllowedTimeIntervals = function (dateRange) {
    var minInterval = getTimeInterval(dateRange || _constants__WEBPACK_IMPORTED_MODULE_8__/* .DEFAULT_DATE_RANGE */ .Rc);
    var intervals = Object.values(models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq);
    var index = intervals.indexOf(minInterval);
    return intervals.slice(index);
};
var DATE_RANGE_DAYS = (_b = {},
    _b[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Hour] = 0,
    _b[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Day] = DAY,
    _b[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Week] = WEEK,
    _b[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Month] = MONTH,
    _b[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Quarter] = QUARTER,
    _b[models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Year] = YEAR,
    _b);
var isDateIntervalHigherThanDateRange = function (interval, dateRange) {
    var _a = getAbsoluteDateRange(dateRange || _constants__WEBPACK_IMPORTED_MODULE_8__/* .DEFAULT_DATE_RANGE */ .Rc), from = _a.from, to = _a.to;
    var days = (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .getDaysDiff */ .Du)(Date.parse(from), Date.parse(to));
    return interval ? days < DATE_RANGE_DAYS[interval] : false;
};
var isDate = function (value) {
    return (value instanceof Date && IsValidDate(value)) || (value && isNaN(value) && IsValidDate(new Date(value)));
};
var IsValidDate = function (date) {
    return date.toString() !== 'Invalid Date';
};
var getTo = function (from, timeInterval) {
    if (!timeInterval) {
        return from;
    }
    if (timeInterval === models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Hour) {
        return (0,moment__WEBPACK_IMPORTED_MODULE_1__.parseZone)(from).add(1, 'hours').format();
    }
    if (timeInterval === models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Day) {
        return (0,moment__WEBPACK_IMPORTED_MODULE_1__.parseZone)(from).add(1, 'days').format();
    }
    if (timeInterval === models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Week) {
        return (0,moment__WEBPACK_IMPORTED_MODULE_1__.parseZone)(from).add(1, 'weeks').format();
    }
    if (timeInterval === models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Month) {
        return (0,moment__WEBPACK_IMPORTED_MODULE_1__.parseZone)(from).add(1, 'months').format();
    }
    if (timeInterval === models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Quarter) {
        return (0,moment__WEBPACK_IMPORTED_MODULE_1__.parseZone)(from).add(1, 'quarters').format();
    }
    if (timeInterval === models_Aggregation__WEBPACK_IMPORTED_MODULE_3__/* .DateInterval */ .Sq.Year) {
        return (0,moment__WEBPACK_IMPORTED_MODULE_1__.parseZone)(from).add(1, 'years').format();
    }
    return null;
};
var subDayMethods = (_c = {},
    _c[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.DAY] = date_fns__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .A,
    _c[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.WEEK] = date_fns__WEBPACK_IMPORTED_MODULE_24__/* ["default"] */ .A,
    _c[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.MONTH] = date_fns__WEBPACK_IMPORTED_MODULE_25__/* ["default"] */ .A,
    _c[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.YEAR] = date_fns__WEBPACK_IMPORTED_MODULE_26__/* ["default"] */ .A,
    _c);
var predictDateRange = function (widget, segment) {
    var segmentsWithSameTopic = widget.segments.filter(function (s) { return s.topicId === segment.topicId; });
    var segmentIndex = segmentsWithSameTopic.findIndex(function (s) { return s.key === segment.key; });
    if (segmentIndex === 0)
        return null;
    var prevSegmentIndexWithSameTopic = segmentsWithSameTopic.slice(0, segmentIndex).length - 1;
    var prevSegmentWithSameTopic = segmentsWithSameTopic[prevSegmentIndexWithSameTopic];
    if (!(prevSegmentWithSameTopic === null || prevSegmentWithSameTopic === void 0 ? void 0 : prevSegmentWithSameTopic.dateRange))
        return null;
    var prevSegmentIndexGeneral = widget.segments.findIndex(function (s) { return s.key === prevSegmentWithSameTopic.key; });
    var absoluteDateRange = getAbsoluteDateRange(prevSegmentWithSameTopic.dateRange);
    var from = new Date(absoluteDateRange.from);
    from.setHours(0, 0);
    var to = new Date(absoluteDateRange.to);
    to.setHours(23, 59);
    var daysDifference = (0,date_fns__WEBPACK_IMPORTED_MODULE_27__/* ["default"] */ .A)(to, from);
    var result = [];
    result.push(getDateRangeOption(prevSegmentWithSameTopic.dateRange, (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(l('Same range as in the %d segment'), prevSegmentIndexGeneral + 1), 0, null));
    if (daysDifference <= 7) {
        var shiftCount = segmentsWithSameTopic.filter(function (s) { var _a, _b; return (_b = (_a = s === null || s === void 0 ? void 0 : s.dateRange) === null || _a === void 0 ? void 0 : _a.shift) === null || _b === void 0 ? void 0 : _b.includes(models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.WEEK); }).length;
        result.push(getDateRangeOption(prevSegmentWithSameTopic.dateRange, (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(l('Same range as in the %d segment one week ago'), prevSegmentIndexGeneral + 1), shiftCount + 1, models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.WEEK));
    }
    if (daysDifference <= 31) {
        var shiftCount = segmentsWithSameTopic.filter(function (s) { var _a, _b; return (_b = (_a = s === null || s === void 0 ? void 0 : s.dateRange) === null || _a === void 0 ? void 0 : _a.shift) === null || _b === void 0 ? void 0 : _b.includes(models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.MONTH); }).length;
        result.push(getDateRangeOption(prevSegmentWithSameTopic.dateRange, (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(l('Same range as in the %d segment one month ago'), prevSegmentIndexGeneral + 1), shiftCount + 1, models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.MONTH));
    }
    if (daysDifference <= 91) {
        var shiftCount = segmentsWithSameTopic.filter(function (s) { var _a, _b; return (_b = (_a = s === null || s === void 0 ? void 0 : s.dateRange) === null || _a === void 0 ? void 0 : _a.shift) === null || _b === void 0 ? void 0 : _b.includes(models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.MONTH); }).length;
        result.push(getDateRangeOption(prevSegmentWithSameTopic.dateRange, (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(l('Same range as in the %d segment one quarter ago'), prevSegmentIndexGeneral + 1), (shiftCount + 1) * 3, models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.MONTH));
    }
    if (daysDifference <= 365) {
        var shiftCount = segmentsWithSameTopic.filter(function (s) { var _a, _b; return (_b = (_a = s === null || s === void 0 ? void 0 : s.dateRange) === null || _a === void 0 ? void 0 : _a.shift) === null || _b === void 0 ? void 0 : _b.includes(models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.YEAR); }).length;
        result.push(getDateRangeOption(prevSegmentWithSameTopic.dateRange, (0,i18n__WEBPACK_IMPORTED_MODULE_6__/* .sprintf */ .nv)(l('Same range as in the %d segment one year ago'), prevSegmentIndexGeneral + 1), shiftCount + 1, models_CustomDashboards__WEBPACK_IMPORTED_MODULE_2__/* .ShiftPeriod */ .GR.YEAR));
    }
    return result;
};
var getDateRangeOption = function (dateRange, label, shiftCount, shiftPeriod) {
    return {
        label: ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(components_ui_Icon__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A, { type: "ai", color: "purple", size: "small" }), " ", label] })),
        value: shiftDateRange(dateRange, shiftCount, shiftPeriod),
        formatDateRange: function () { return ''; },
    };
};
var shiftDateRange = function (currentDateRange, shiftCount, shiftPeriod) {
    if (shiftCount === 0) {
        return currentDateRange;
    }
    if (currentDateRange.type === 'absolute') {
        var absoluteDateRange = getAbsoluteDateRange(currentDateRange);
        var from = new Date(absoluteDateRange.from);
        var to = new Date(absoluteDateRange.to);
        from.setHours(0, 0);
        to.setHours(23, 59);
        var sub = subDayMethods[shiftPeriod];
        return {
            from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)(sub(from, shiftCount)),
            to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_4__/* .toYYYYMMDDTHHMM */ .oX)(sub(to, shiftCount)),
            type: 'absolute',
        };
    }
    return __assign(__assign({}, currentDateRange), { shift: "-".concat(shiftCount).concat(shiftPeriod) });
};
function parseDateRangeShift(shift) {
    var regex = /^(-?\d+)([a-zA-Z]+)$/;
    var match = shift.match(regex);
    if (!match || match.length !== 3) {
        throw new Error('Invalid enum value format');
    }
    var quantity = parseInt(match[1], 10);
    var interval = match[2];
    return { quantity: Math.abs(quantity), interval: interval };
}


/***/ }),

/***/ "TAzt":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $3: () => (/* binding */ supportedLegendWidgets),
/* harmony export */   Dx: () => (/* binding */ LAYOUT_CONTAINER_PADDING),
/* harmony export */   Mk: () => (/* binding */ LAYOUT_ROW_HEIGHT),
/* harmony export */   My: () => (/* binding */ FULL_WIDTH_WIDGET_HEIGHT),
/* harmony export */   O7: () => (/* binding */ LAYOUT_MARGIN),
/* harmony export */   QD: () => (/* binding */ addWidget),
/* harmony export */   b4: () => (/* binding */ PREVIEW_WIDGET_WIDTH),
/* harmony export */   bJ: () => (/* binding */ isWidgetUsed),
/* harmony export */   hW: () => (/* binding */ removeWidget),
/* harmony export */   mc: () => (/* binding */ WIDGET_CHART_HEIGHT),
/* harmony export */   n_: () => (/* binding */ CONSTRUCTOR_VERTICAL_SPACE),
/* harmony export */   rT: () => (/* binding */ CustomDashboardWidgetGridCellMinHeight),
/* harmony export */   t3: () => (/* binding */ CustomDashboardWidgetGridCellMaxHeight),
/* harmony export */   u6: () => (/* binding */ CUSTOM_DASHBOARD_WIDGET_MODAL_ID),
/* harmony export */   vS: () => (/* binding */ FULL_WIDTH_WIDGET_CHART_HEIGHT),
/* harmony export */   wo: () => (/* binding */ CUSTOM_DASHBOARD_TEMPLATE_MODAL_ID)
/* harmony export */ });
/* unused harmony exports LAYOUT_RESIZER_HANDLER_SELECTOR, LAYOUT_CONFIRMATION_MODAL_ID */
/* harmony import */ var models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("svtq");
/* harmony import */ var utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("7vdz");
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
var _a, _b;


var WIDGET_CHART_HEIGHT = 190;
var FULL_WIDTH_WIDGET_CHART_HEIGHT = 660;
var LAYOUT_ROW_HEIGHT = 250;
var FULL_WIDTH_WIDGET_HEIGHT = 800;
var LAYOUT_MARGIN = 16;
var LAYOUT_CONTAINER_PADDING = 16;
var PREVIEW_WIDGET_WIDTH = 1;
var CONSTRUCTOR_VERTICAL_SPACE = '24px';
var LAYOUT_RESIZER_HANDLER_SELECTOR = '.react-resizable-handle.react-resizable-handle-se';
var LAYOUT_CONFIRMATION_MODAL_ID = 'confirmDashboardLayoutChange';
var CUSTOM_DASHBOARD_WIDGET_MODAL_ID = 'customDashboardWidget';
var CUSTOM_DASHBOARD_TEMPLATE_MODAL_ID = 'customDashboardTemplate';
var supportedLegendWidgets = [
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.line,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.stackedBar,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.histogram,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.list,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.dumbbell,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.pie,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.spider,
    models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.text
];
var CustomDashboardWidgetGridCellMinHeight = (_a = {},
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.counter] = 1,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.line] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.dumbbell] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.pie] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.histogram] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.stackedBar] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.spider] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.wordCloud] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.geo] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.list] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.text] = 1,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.trends] = 2,
    _a[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.graph] = 2,
    _a);
var CustomDashboardWidgetGridCellMaxHeight = (_b = {},
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.counter] = 1,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.line] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.dumbbell] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.pie] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.histogram] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.stackedBar] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.spider] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.wordCloud] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.geo] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.list] = 50,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.text] = 3,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.trends] = 50,
    _b[models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.graph] = 3,
    _b);
var isWidgetUsed = function (layout) { return function (widget) {
    var flatten = layout.flat();
    return flatten.some(function (id) { return id === widget.id; });
}; };
var removeWidget = function (layout, newWidget) {
    return layout
        .map(function (row) { return row.map(function (id) { return (id === newWidget.id ? utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .EMPTY_GRID_CELL */ .eK : id); }); })
        .filter(function (row) { return row.filter(function (id) { return id !== utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .EMPTY_GRID_CELL */ .eK; }).length !== 0; });
};
var getCell = function (rowIndex, columnIndex) { return ({ rowIndex: rowIndex, columnIndex: columnIndex }); };
var getPosition = function (start, end) { return ({ start: start, end: end }); };
var getPositionForNewWidget = function (layout, height) {
    var _a;
    var emptyCells = layout.reduce(function (acc, row, rowIndex) { return __spreadArray(__spreadArray([], __read(acc), false), __read(row.map(function (id, columnIndex) { return (id === utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .EMPTY_GRID_CELL */ .eK
        ? getCell(rowIndex, columnIndex)
        : null); }).filter(Boolean)), false); }, []);
    var position = emptyCells.reduce(function (accum, cell, i, cells) {
        var rowIndex = cell.rowIndex, columnIndex = cell.columnIndex;
        var range = Array(height).fill(null).map(function (_, index) { return index + rowIndex; });
        if (range.every(function (index) { return cells.some(function (c) { return c.rowIndex === index && c.columnIndex === columnIndex; }); })) {
            return accum || getPosition(cell, cells.find(function (c) { return c.rowIndex === range[range.length - 1] && c.columnIndex === columnIndex; }));
        }
        return accum;
    }, null);
    if (position) {
        return position;
    }
    var lastRow = layout[layout.length - 1];
    var emptyCellIndex = (_a = lastRow === null || lastRow === void 0 ? void 0 : lastRow.findIndex(function (id) { return id === utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .EMPTY_GRID_CELL */ .eK; })) !== null && _a !== void 0 ? _a : -1;
    if (emptyCellIndex !== -1) {
        return getPosition(getCell(layout.length - 1, emptyCellIndex), getCell(layout.length + height - 2, emptyCellIndex));
    }
    return getPosition(getCell(layout.length, 0), getCell(layout.length + height - 1, 0));
};
var addWidget = function (layout, newWidget, options) {
    var position = getPositionForNewWidget(layout, (options === null || options === void 0 ? void 0 : options.height) || 1);
    var expandedLayout = (position.end.rowIndex > layout.length - 1)
        ? __spreadArray(__spreadArray([], __read(layout), false), __read(Array(position.end.rowIndex - layout.length + 1)
            .fill(Array(utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .CUSTOM_DASHBOARD_DIMENSION */ .QK).fill(utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .EMPTY_GRID_CELL */ .eK))), false) : layout;
    return expandedLayout.map(function (row, rowIndex) { return (rowIndex >= position.start.rowIndex && rowIndex <= position.end.rowIndex
        ? row.map(function (id, columnIndex) { return (columnIndex === position.start.columnIndex ? newWidget.id : id); })
        : row); });
};


/***/ }),

/***/ "ZcyI":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CW: () => (/* binding */ legendAliases),
/* harmony export */   bd: () => (/* binding */ getAlias),
/* harmony export */   k6: () => (/* binding */ toWidgetConfigAlias)
/* harmony export */ });
/* unused harmony export flatWidgetOptionsLegendAliases */
/* harmony import */ var models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("svtq");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

var legendAliases = function (chart, widget) {
    var e_1, _a, _b, _c;
    var _d, _e, _f, _g, _h, _j, _k;
    var result = {
        segments: {
            aliases: {},
        },
        dimension1: {
            type: (_d = widget.dimension1) === null || _d === void 0 ? void 0 : _d.type,
            aliases: {},
        },
        dimension2: {
            type: (_e = widget.dimension2) === null || _e === void 0 ? void 0 : _e.type,
            aliases: {},
        },
    };
    if (!chart)
        return result;
    if (!chart.lines || ((_f = chart.lines) === null || _f === void 0 ? void 0 : _f.length) === 1) {
        if (widget.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.line) {
            return result;
        }
        if (widget.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.pie && ((_g = widget.segments) === null || _g === void 0 ? void 0 : _g.length) > 1) {
            result.segments.aliases = aliasesFromPoint((_h = chart.line) === null || _h === void 0 ? void 0 : _h.points);
            return result;
        }
        result.dimension1.aliases = aliasesFromPoint((_j = chart.line) === null || _j === void 0 ? void 0 : _j.points);
        return result;
    }
    if (((_k = chart.lines) === null || _k === void 0 ? void 0 : _k.length) > 1) {
        try {
            for (var _l = __values(chart.lines), _m = _l.next(); !_m.done; _m = _l.next()) {
                var line = _m.value;
                if (widget.segments.length === 1) {
                    result.dimension1.aliases = __assign(__assign({}, result.dimension1.aliases), (_b = {}, _b[line.key] = alias(line.key), _b));
                }
                else {
                    result.segments.aliases = __assign(__assign({}, result.segments.aliases), (_c = {}, _c[line.key] = alias(line.key), _c));
                }
                // eslint-disable-next-line no-continue
                if (widget.type === models_CustomDashboards__WEBPACK_IMPORTED_MODULE_0__/* .CustomDashboardWidgetType */ .qP.line)
                    continue;
                result.dimension2.aliases = __assign(__assign({}, result.dimension2.aliases), aliasesFromPoint(line.points));
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (_m && !_m.done && (_a = _l.return)) _a.call(_l);
            }
            finally { if (e_1) throw e_1.error; }
        }
    }
    return result;
    function alias(label) {
        var _a, _b;
        if (!((_a = widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.legendAliases))
            return '';
        var aliases = flatWidgetOptionsLegendAliases((_b = widget.widgetOptions) === null || _b === void 0 ? void 0 : _b.legendAliases);
        return aliases[label.toString()] || '';
    }
    function aliasesFromPoint(points) {
        if (points === void 0) { points = []; }
        return points.reduce(function (previousValue, currentValue) {
            var _a;
            return __assign(__assign({}, previousValue), (_a = {}, _a[currentValue.x] = alias(currentValue.x), _a));
        }, {});
    }
};
var flatWidgetOptionsLegendAliases = function (aliases) {
    return Object.values(aliases)
        .reduce(function (result, dimension) {
        return __assign(__assign({}, result), (Object.values(dimension)
            .reduce(function (previousValue, currentValue) {
            var _a;
            return __assign(__assign({}, previousValue), (_a = {}, _a[currentValue.key] = currentValue.alias, _a));
        }, {})));
    }, {});
};
var getAlias = function (widget, label, options) {
    var _a;
    if (!((_a = widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.legendAliases))
        return '';
    var aliases = flatWidgetOptionsLegendAliases(widget.widgetOptions.legendAliases);
    var aliasLabel = label;
    if (options && (options === null || options === void 0 ? void 0 : options.isMonth)) {
        for (var key in aliases) {
            if (aliases === null || aliases === void 0 ? void 0 : aliases.hasOwnProperty(key)) {
                var keyWithoutTimeZone = key.split('T')[0];
                aliases[keyWithoutTimeZone] = aliases[key];
            }
        }
        aliasLabel = String(label).split('T')[0];
    }
    return aliases[aliasLabel] || '';
};
var toWidgetConfigAlias = function (obj) {
    return Object.entries(obj).map(function (_a) {
        var _b = __read(_a, 2), key = _b[0], value = _b[1];
        return {
            key: key,
            alias: value,
        };
    });
};


/***/ }),

/***/ "N9LX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   D: () => (/* binding */ isSameDateRangeInSegments),
/* harmony export */   b: () => (/* binding */ getSegmentKey)
/* harmony export */ });
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("7vdz");


var getSegmentKey = function (topicId) {
    return "".concat(topicId, "_").concat(Date.now());
};
var isSameDateRangeInSegments = function (segments) {
    return segments === null || segments === void 0 ? void 0 : segments.every(function (s) { var _a; return (0,lodash__WEBPACK_IMPORTED_MODULE_0__.isEqual)(((_a = segments[0]) === null || _a === void 0 ? void 0 : _a.dateRange) || utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .DEFAULT_DATE_RANGE */ .Rc, (s === null || s === void 0 ? void 0 : s.dateRange) || utils_customDashboards_constants__WEBPACK_IMPORTED_MODULE_1__/* .DEFAULT_DATE_RANGE */ .Rc); });
};


/***/ }),

/***/ "uIO5":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  k: () => (/* binding */ PREVIEW_WIDGET_COMPONENT),
  x: () => (/* binding */ WIDGET_COMPONENT)
});

// EXTERNAL MODULE: ./node_modules/react-redux/dist/react-redux.mjs
var react_redux = __webpack_require__("SMvd");
// EXTERNAL MODULE: ./src/state/customDashboards/selectors.ts
var selectors = __webpack_require__("z86f");
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__("nKUr");
// EXTERNAL MODULE: ./node_modules/react-sparklines/build/index.js
var build = __webpack_require__("nCnx");
// EXTERNAL MODULE: ./node_modules/numeral/numeral.js
var numeral = __webpack_require__("ZhIB");
var numeral_default = /*#__PURE__*/__webpack_require__.n(numeral);
// EXTERNAL MODULE: ./src/components/ui/H1/index.ts + 2 modules
var H1 = __webpack_require__("OIx8");
// EXTERNAL MODULE: ./src/components/ui/DynamicsIndicator/index.ts + 2 modules
var DynamicsIndicator = __webpack_require__("jRR2");
// EXTERNAL MODULE: ./src/containers/dashboard/OverviewInfoCard/utils.ts
var utils = __webpack_require__("Z8P+");
// EXTERNAL MODULE: ./src/utils/translations/aggregationMetricTranslations.ts
var aggregationMetricTranslations = __webpack_require__("ZFgV");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("LMMr");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Counter/components/Counter.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Counter = ({"base":"GFx1rdJQ4D438gizDhQQ","metrics":"hn8oQLx8e7alkKFEu_vS","baseFullWidth":"llq9jSdsdZyKz42MdiyJ","spark":"AaU87ATmOyAZ9qnRBcXs","centralized":"O0Hr4991Ikiq9TwLZF9C","metricsType":"HJS0EqqM_bjJVZO3N18Y"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Counter/components/Counter.tsx
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};









var SPARKLINES_HEIGHT = {
    WIDE: 90,
    USUAL: 220,
};
var EMPTY_SPARKLINE_DATA = [0, 0];
var Counter_Counter = function (_a) {
    var _b, _c;
    var _d, _e;
    var width = _a.width, height = _a.height, data = _a.data, columnsCount = _a.columnsCount, widget = _a.widget;
    if (!data) {
        return null;
    }
    var isNsrMetric = widget.aggregationMetric === 'sentimentRate';
    var dynamics = isNsrMetric ? Math.round(data.totalCount - data.previousCount) : (0,utils/* getDiff */.G)(data.previousCount, data.totalCount);
    var points = ((_e = (_d = data === null || data === void 0 ? void 0 : data.chart) === null || _d === void 0 ? void 0 : _d.line) === null || _e === void 0 ? void 0 : _e.points) || [];
    var sparklinesHeight = width === columnsCount ? SPARKLINES_HEIGHT.WIDE : SPARKLINES_HEIGHT.USUAL;
    return ((0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Counter.base, (_b = {}, _b[Counter.baseFullWidth] = width === columnsCount, _b)) }, { children: [(0,jsx_runtime.jsxs)("div", __assign({ className: classnames_default()(Counter.metrics) }, { children: [(0,jsx_runtime.jsx)("p", __assign({ className: classnames_default()(Counter.metricsType) }, { children: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget.aggregationMetric) })), (0,jsx_runtime.jsx)(H1/* default */.A, { children: numeral_default()(data.totalCount || 0).format() }), data.totalCount && dynamics !== 0 && (0,jsx_runtime.jsx)(DynamicsIndicator/* default */.A, { value: dynamics, isPercentDynamics: !isNsrMetric })] })), (0,jsx_runtime.jsx)("div", __assign({ className: classnames_default()(Counter.spark, (_c = {}, _c[Counter.centralized] = height > 1, _c)) }, { children: !points || !points.length
                    ? ((0,jsx_runtime.jsx)(build.Sparklines, __assign({ data: EMPTY_SPARKLINE_DATA }, { children: (0,jsx_runtime.jsx)(build.SparklinesLine, { style: { fill: '#90A4AE' }, height: sparklinesHeight }) })))
                    : ((0,jsx_runtime.jsx)(build.Sparklines, __assign({ data: points.map(function (_a) {
                            var y = _a.y;
                            return y;
                        }) }, { children: (0,jsx_runtime.jsx)(build.SparklinesLine, { style: { fill: '#90A4AE' }, height: sparklinesHeight }) }))) }))] })));
};
/* harmony default export */ const components_Counter = (Counter_Counter);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Counter/Counter.tsx



/* harmony default export */ const widgets_Counter_Counter = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        data: (0,selectors/* getDashboardWidgetStatisticsData */.Qe)(dashboardId, widgetId)(state),
        columnsCount: (0,selectors/* getCustomDashboardColumnsCount */.CN)(dashboardId)(state),
        widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
    });
})(components_Counter));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Counter/index.ts


// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__("q1tI");
// EXTERNAL MODULE: ./src/hoc/withRouter.tsx
var withRouter = __webpack_require__("5aoS");
// EXTERNAL MODULE: ./node_modules/redux/dist/redux.mjs
var redux = __webpack_require__("sYBo");
// EXTERNAL MODULE: ./node_modules/deep-object-diff/mjs/diff.js + 1 modules
var diff = __webpack_require__("8WUF");
// EXTERNAL MODULE: ./src/state/analytics/model.ts + 1 modules
var model = __webpack_require__("+9Gl");
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/withChartData.tsx
var withChartData_assign = (undefined && undefined.__assign) || function () {
    withChartData_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return withChartData_assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};









var withChartData = function (WrappedComponent) {
    var hocComponent = function (_a) {
        var getEntities = _a.getEntities, props = __rest(_a, ["getEntities"]);
        var entities = (0,react.useMemo)(function () { return getEntities(); }, []);
        return (0,jsx_runtime.jsx)(WrappedComponent, withChartData_assign({}, props, { entities: entities }));
    };
    return (0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, _a) {
        var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
        return ({
            data: (0,selectors/* getDashboardWidgetStatisticsData */.Qe)(dashboardId, widgetId)(state),
            getEntities: function () { return (0,selectors/* getDashboardWidgetEntities */.YG)(dashboardId, widgetId)(state); },
            widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
            segmentFilter: (0,selectors/* getDashboardWidgetSegmentFilter */.aM)(dashboardId, widgetId)(state),
            dashboardDateRange: (0,selectors/* getCustomDashboardDateRange */.jV)(dashboardId)(state),
        });
    }, {
        sendWidgetChartClickedEvent: model/* analyticsStateModel */.j.action.sendWidgetChartClickedEvent,
    }))((0,react.memo)(hocComponent, function (prevProps, nextProps) {
        var shouldUpdate = Object.keys((0,diff/* default */.A)(prevProps, nextProps))
            .filter(function (key) { return key !== 'getEntities'; })
            .some(function (key) { return !(0,lodash.isEqual)(prevProps[key], nextProps[key]); });
        return shouldUpdate;
    }));
};
/* harmony default export */ const widgets_withChartData = (withChartData);

// EXTERNAL MODULE: ./node_modules/highcharts-react-official/dist/highcharts-react.min.js
var highcharts_react_min = __webpack_require__("lVxW");
var highcharts_react_min_default = /*#__PURE__*/__webpack_require__.n(highcharts_react_min);
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("wd/R");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
// EXTERNAL MODULE: ./src/models/CustomDashboards.ts
var CustomDashboards = __webpack_require__("svtq");
// EXTERNAL MODULE: ./src/models/Aggregation.ts
var Aggregation = __webpack_require__("ttpX");
// EXTERNAL MODULE: ./src/utils/detectStatsConfigPeriod.js
var detectStatsConfigPeriod = __webpack_require__("uZfh");
// EXTERNAL MODULE: ./src/utils/dates/dateUtils.ts
var dateUtils = __webpack_require__("9jXX");
// EXTERNAL MODULE: ./src/utils/filterQueryUtils.js
var filterQueryUtils = __webpack_require__("iL/N");
// EXTERNAL MODULE: ./src/utils/translations/aggregationTranslations.ts
var aggregationTranslations = __webpack_require__("e+Tg");
// EXTERNAL MODULE: ./src/utils/customDashboards/dates.tsx
var dates = __webpack_require__("wlTg");
// EXTERNAL MODULE: ./src/utils/customDashboards/aggregation.ts + 1 modules
var aggregation = __webpack_require__("V1lb");
// EXTERNAL MODULE: ./src/colorHandler.ts
var colorHandler = __webpack_require__("MShE");
// EXTERNAL MODULE: ./src/utils/colors.ts
var colors = __webpack_require__("KV3C");
;// CONCATENATED MODULE: ./src/containers/customDashboard/Theme.ts
var Theme_assign = (undefined && undefined.__assign) || function () {
    Theme_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Theme_assign.apply(this, arguments);
};


var CustomDashboardTheme = /** @class */ (function () {
    function CustomDashboardTheme() {
        this.defaultPreDefinedColors = {
            sentiment: {
                neutral: '#2196F3',
                negative: '#F44336',
                positive: '#8BC34A',
            },
            authorGender: {
                female: '#E91E63',
                male: '#2196F3',
                community: '#FFC107',
                unknown: '#90A4AE',
            },
            resourceType: {
                social: '#1D83C9',
                messenger: '#66BB6A',
                reviews: '#FF9800',
                news: '#9E9E9E',
                blog: '#FF80AB',
                forum: '#FFEB3B',
            },
        };
        this.themes = {
            default: {
                colors: (0,colors/* getChartColorSchemes */.SM)(colorHandler/* ColorSchemeTypes */.MT.DEFAULT),
                preDefinedColors: {
                    sentiment: colors/* sentimentByChartColorScheme */.xb.default,
                },
            },
            oldSchool: {
                colors: (0,colors/* getChartColorSchemes */.SM)(colorHandler/* ColorSchemeTypes */.MT.OLD_SCHOOL),
                preDefinedColors: {
                    sentiment: colors/* sentimentByChartColorScheme */.xb.oldSchool,
                },
            },
            bright: {
                colors: (0,colors/* getChartColorSchemes */.SM)(colorHandler/* ColorSchemeTypes */.MT.BRIGHT),
                preDefinedColors: {
                    sentiment: colors/* sentimentByChartColorScheme */.xb.bright,
                },
            },
            pastel: {
                colors: (0,colors/* getChartColorSchemes */.SM)(colorHandler/* ColorSchemeTypes */.MT.PASTEL),
                preDefinedColors: {
                    sentiment: colors/* sentimentByChartColorScheme */.xb.pastel,
                },
            },
        };
        this.theme = (0,colorHandler/* getCurrentColorSchemeType */.uS)();
    }
    CustomDashboardTheme.prototype.getTheme = function (name) {
        return this.themes[name];
    };
    Object.defineProperty(CustomDashboardTheme.prototype, "colors", {
        get: function () {
            return this.themes[this.theme].colors;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(CustomDashboardTheme.prototype, "preDefinedColors", {
        get: function () {
            return Theme_assign(Theme_assign({}, this.defaultPreDefinedColors), this.themes[this.theme].preDefinedColors);
        },
        enumerable: false,
        configurable: true
    });
    return CustomDashboardTheme;
}());


;// CONCATENATED MODULE: ./src/containers/customDashboard/Color.ts


function pickColor(dashboardId, key, dimension) {
    var picker = get(dashboardId);
    var color = picker.pick(key, dimension);
    store(dashboardId, picker);
    return color;
}
function get(dashboardId) {
    var storedJson = sessionStorage.getItem(storageKey(dashboardId));
    if (storedJson) {
        var stored = JSON.parse(storedJson);
        return new WidgetColorPicker(stored.palette, stored.reservedColors, stored.colorIdx);
    }
    var theme = new CustomDashboardTheme();
    return new WidgetColorPicker(theme.colors, theme.preDefinedColors);
}
function store(dashboardId, picker) {
    sessionStorage.setItem(storageKey(dashboardId), JSON.stringify(picker.snapshot));
}
function storageKey(dashboardId) {
    var currentColorSchemeType = (0,colorHandler/* getCurrentColorSchemeType */.uS)();
    return "cd-colors_".concat(dashboardId, "_").concat(currentColorSchemeType, "_theme");
}
var WidgetColorPicker = /** @class */ (function () {
    // eslint-disable-next-line no-useless-constructor
    function WidgetColorPicker(palette, reservedColors, colorIdx) {
        if (reservedColors === void 0) { reservedColors = {}; }
        if (colorIdx === void 0) { colorIdx = 0; }
        this.palette = palette;
        this.reservedColors = reservedColors;
        this.colorIdx = colorIdx;
    }
    WidgetColorPicker.prototype.pick = function (key, dimension) {
        if (!dimension)
            return this.random();
        if (!this.reservedColors[dimension])
            this.reservedColors[dimension] = {};
        var dimensionColors = this.reservedColors[dimension];
        if (!dimensionColors[key])
            dimensionColors[key] = this.next(Object.getOwnPropertyNames(dimensionColors).length);
        return dimensionColors[key];
    };
    Object.defineProperty(WidgetColorPicker.prototype, "snapshot", {
        get: function () {
            return { palette: this.palette, reservedColors: this.reservedColors, colorIdx: this.colorIdx };
        },
        enumerable: false,
        configurable: true
    });
    WidgetColorPicker.prototype.random = function () {
        return this.next(this.colorIdx++);
    };
    WidgetColorPicker.prototype.next = function (idx) {
        return this.palette[idx % this.palette.length];
    };
    return WidgetColorPicker;
}());

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/hooks/useLegendClick.ts
var useLegendClick_assign = (undefined && undefined.__assign) || function () {
    useLegendClick_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return useLegendClick_assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
var useLegendClick = function (widget, setOmittedDataKeys) {
    var _a;
    var omittedDataKeys = ((_a = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.omittedDataKeys) || [];
    var onOmitDataKey = function (key, _omittedKey) {
        var dataKey = key.toString();
        var omittedKeys = _omittedKey ? __spreadArray([], __read(_omittedKey), false) : __spreadArray([], __read(omittedDataKeys), false);
        setOmittedDataKeys(omittedKeys.includes(dataKey) ? omittedKeys.filter(function (x) { return x !== dataKey; }) : __spreadArray(__spreadArray([], __read(omittedKeys), false), [dataKey], false));
    };
    var filterOmittedLines = function (lines, isPreview, isKeyInPoint) {
        if (isPreview)
            return lines;
        if (isKeyInPoint) {
            return lines.map(function (l) {
                return useLegendClick_assign(useLegendClick_assign({}, l), { points: l.points.filter(function (p) { return !omittedDataKeys.includes(p.x.toString()); }) });
            });
        }
        return lines.filter(function (l) { var _a; return !omittedDataKeys.includes((_a = l === null || l === void 0 ? void 0 : l.key) === null || _a === void 0 ? void 0 : _a.toString()); });
    };
    var isVisibleLine = function (key) {
        return !omittedDataKeys.includes(key === null || key === void 0 ? void 0 : key.toString());
    };
    return {
        omittedDataKeys: omittedDataKeys,
        filterOmittedLines: filterOmittedLines,
        onOmitDataKey: onOmitDataKey,
        isVisibleLine: isVisibleLine,
    };
};

// EXTERNAL MODULE: ./src/utils/translations/commonTranslations.js
var commonTranslations = __webpack_require__("xTZp");
// EXTERNAL MODULE: ./src/utils/customDashboards/legendAlias.ts
var legendAlias = __webpack_require__("ZcyI");
// EXTERNAL MODULE: ./src/utils/customDashboards/segments.ts
var segments = __webpack_require__("N9LX");
// EXTERNAL MODULE: ./src/utils/dates/formats.ts
var formats = __webpack_require__("RYjn");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Line/components/LineChart.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const LineChart = ({"base":"dsgszjpKspKppb59e_Nm","centralized":"XaV69Wru8XOiNjK1eW2O","chart":"mXNCHjaE7W65BhMUGrog","chartSwitcher":"ZvzaTdKYn9YjZpxz4cti","chartBase":"IEf4r15h0_431TbqdSIW"});
// EXTERNAL MODULE: ./node_modules/date-fns/esm/add/index.js
var add = __webpack_require__("IjAw");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/sub/index.js
var sub = __webpack_require__("7wYy");
// EXTERNAL MODULE: ./node_modules/date-fns/esm/format/index.js + 15 modules
var format = __webpack_require__("1ihG");
// EXTERNAL MODULE: ./src/models/filters/Filter.ts
var Filter = __webpack_require__("+MLa");
// EXTERNAL MODULE: ./src/models/filters/domain/FilterGroupTypeCatalog.tsx + 79 modules
var FilterGroupTypeCatalog = __webpack_require__("yMOo");
// EXTERNAL MODULE: ./src/utils/customDashboards/constants.ts
var constants = __webpack_require__("7vdz");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/hooks/useChartPointClick.ts
var useChartPointClick_assign = (undefined && undefined.__assign) || function () {
    useChartPointClick_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return useChartPointClick_assign.apply(this, arguments);
};
var useChartPointClick_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};









var getFirstValue = function (data, entities, e) {
    var _a, _b, _c, _d, _e, _f, _g;
    var name = data.length === 1 ? ((_b = (_a = e.point) === null || _a === void 0 ? void 0 : _a.custom) === null || _b === void 0 ? void 0 : _b.seriesId) || ((_d = (_c = e.point) === null || _c === void 0 ? void 0 : _c.custom) === null || _d === void 0 ? void 0 : _d.pointName) : (_f = (_e = e.point) === null || _e === void 0 ? void 0 : _e.custom) === null || _f === void 0 ? void 0 : _f.seriesId;
    return ((_g = (entities || []).find(function (entity) { return entity.name === name; })) === null || _g === void 0 ? void 0 : _g.id) || name;
};
var getSecondValue = function (entities, e) {
    var _a, _b, _c;
    var pointName = (_b = (_a = e.point) === null || _a === void 0 ? void 0 : _a.custom) === null || _b === void 0 ? void 0 : _b.pointName;
    return ((_c = (entities || []).find(function (entity) { return entity.name === pointName; })) === null || _c === void 0 ? void 0 : _c.id) || pointName;
};
var getFirstDimensionValue = function (widget, data, entities, e) {
    var _a, _b;
    if (!((_a = widget.dimension1) === null || _a === void 0 ? void 0 : _a.type)) {
        return null;
    }
    if (((_b = widget.dimension2) === null || _b === void 0 ? void 0 : _b.type)
        && [CustomDashboards/* CustomDashboardWidgetType */.qP.histogram, CustomDashboards/* CustomDashboardWidgetType */.qP.stackedBar].includes(widget.type)) {
        return getSecondValue(entities, e);
    }
    return getFirstValue(data, entities, e);
};
var getSecondDimensionValue = function (widget, data, entities, e) {
    var _a, _b, _c;
    if (!((_a = widget.dimension2) === null || _a === void 0 ? void 0 : _a.type) && ((_b = widget.dimension1) === null || _b === void 0 ? void 0 : _b.type) !== 'sentimentAspects') {
        return null;
    }
    if (((_c = widget.dimension1) === null || _c === void 0 ? void 0 : _c.type) === 'sentimentAspects') {
        return getSecondValue(entities, e);
    }
    if ([CustomDashboards/* CustomDashboardWidgetType */.qP.histogram, CustomDashboards/* CustomDashboardWidgetType */.qP.stackedBar].includes(widget.type)) {
        return getFirstValue(data, entities, e);
    }
    return getSecondValue(entities, e);
};
var getFilter = function (_a) {
    var widgetFilter = _a.widgetFilter, firstDimensionFilterName = _a.firstDimensionFilterName, secondDimensionFilterName = _a.secondDimensionFilterName, firstDimensionValue = _a.firstDimensionValue, secondDimensionValue = _a.secondDimensionValue;
    var isAspect = firstDimensionFilterName === 'aspect' || firstDimensionFilterName === 'sentimentAspects';
    if (isAspect && !secondDimensionFilterName) {
        return margeDimensionAndWidgetFilters([{ name: 'aspect', value: "".concat(secondDimensionValue, "_").concat(firstDimensionValue) }], widgetFilter);
    }
    return margeDimensionAndWidgetFilters([
        { name: firstDimensionFilterName, value: firstDimensionValue },
        { name: secondDimensionFilterName, value: secondDimensionValue }
    ], widgetFilter);
};
var getTopicFilter = function (_a) {
    var widget = _a.widget, widgetFilter = _a.widgetFilter, entities = _a.entities, data = _a.data, dimension1 = _a.dimension1, dimension2 = _a.dimension2, e = _a.e;
    var firstDimensionValue = getFirstDimensionValue(widget, data || [], entities, e);
    var secondDimensionValue = getSecondDimensionValue(widget, data, entities, e);
    var firstDimensionFilterName = (0,aggregation/* aggregationToFilter */._L)(dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.type);
    var secondDimensionFilterName = (0,aggregation/* aggregationToFilter */._L)(dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.type);
    return getFilter({
        widgetFilter: widgetFilter,
        firstDimensionFilterName: firstDimensionFilterName,
        firstDimensionValue: firstDimensionValue,
        secondDimensionFilterName: secondDimensionFilterName,
        secondDimensionValue: secondDimensionValue,
    });
};
var getCharPointDateValue = function (e) {
    return (0,dates/* isDate */.$P)(e.point.custom.seriesId)
        ? e.point.custom.seriesId
        : e.point.custom.pointName;
};
var useChartPointClick = function (_a) {
    var widget = _a.widget, segmentFilter = _a.segmentFilter, entities = _a.entities, data = _a.data, router = _a.router, dashboardDateRange = _a.dashboardDateRange, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent;
    var onPointClick = (0,react.useCallback)(function (e) {
        var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
        if (!widget || !router) {
            return;
        }
        var dimension1 = widget.dimension1, dimension2 = widget.dimension2, aggregationMetric = widget.aggregationMetric;
        var topicId = (_c = (_b = (_a = e.point) === null || _a === void 0 ? void 0 : _a.custom) === null || _b === void 0 ? void 0 : _b.segment) === null || _c === void 0 ? void 0 : _c.topicId;
        var filter = segmentFilter === null || segmentFilter === void 0 ? void 0 : segmentFilter[(_f = (_e = (_d = e.point) === null || _d === void 0 ? void 0 : _d.custom) === null || _e === void 0 ? void 0 : _e.segment) === null || _f === void 0 ? void 0 : _f.key];
        var dateRange = dashboardDateRange || ((_j = (_h = (_g = e.point) === null || _g === void 0 ? void 0 : _g.custom) === null || _h === void 0 ? void 0 : _h.segment) === null || _j === void 0 ? void 0 : _j.dateRange) || constants/* DEFAULT_DATE_RANGE */.Rc;
        var topicFilter = getTopicFilter({
            widget: widget,
            widgetFilter: filter,
            entities: entities,
            data: data,
            dimension1: dimension1,
            dimension2: dimension2,
            e: e,
        });
        var dateRangeQuery = (dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.type) === 'date' || (dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.type) === 'date'
            ? getDateRangeFromChartPointInterval(getCharPointDateValue(e), (_k = dimension1.timeInterval) !== null && _k !== void 0 ? _k : dimension2.timeInterval)
            : getDateRangeQuery(dateRange) || {};
        var query = useChartPointClick_assign(useChartPointClick_assign({}, topicFilter), dateRangeQuery);
        toTopic({ query: query, aggregationMetric: aggregationMetric, topicId: topicId, router: router });
        sendWidgetChartClickedEvent({
            properties: useChartPointClick_assign({ widgetName: widget.name, widgetType: widget.type, topicId: topicId }, topicFilter),
        });
    }, [widget, segmentFilter]);
    return { onPointClick: onPointClick };
};
var toTopic = function (_a) {
    var query = _a.query, aggregationMetric = _a.aggregationMetric, topicId = _a.topicId, router = _a.router;
    var locationOrigin = window.location.origin;
    if (aggregationMetric === 'authorsCount') {
        var authorsPath = router.createPath({ pathname: "/themes/".concat(topicId, "/audience/list"), query: query });
        window.open("".concat(locationOrigin).concat(authorsPath), '_blank');
        return;
    }
    var mentionsPath = router.createPath({ pathname: "/themes/".concat(topicId, "/mentions"), query: query });
    window.open("".concat(locationOrigin).concat(mentionsPath), '_blank');
};
var getDateRangeQuery = function (dateRange) {
    var absoluteDateRange = dateRange ? (0,dates/* getAbsoluteDateRange */.$Q)(dateRange) : null;
    return absoluteDateRange
        ? {
            from: formatDateString(absoluteDateRange.from),
            to: formatDateString(absoluteDateRange.to),
        }
        : null;
};
function formatDateString(dateString) {
    var _a = useChartPointClick_read(dateString.split('T'), 2), datePart = _a[0], timePartWithZone = _a[1];
    if (timePartWithZone) {
        var timePart = timePartWithZone.split('+')[0].split('-')[0];
        var _b = useChartPointClick_read(timePart.split(':'), 2), hours = _b[0], minutes = _b[1];
        if (hours !== '00' || minutes !== '00') {
            return "".concat(datePart, "T").concat(hours, ":").concat(minutes);
        }
    }
    return datePart;
}
function margeDimensionAndWidgetFilters(dimensions, widgetFilter) {
    var dimensionsFilter = Filter/* Filter */.dJ.empty();
    dimensions.forEach(function (d) {
        if (!d.name || !d.value)
            return;
        dimensionsFilter.addFilterGroup((0,FilterGroupTypeCatalog/* createFilterGroup */.e1)(d.name, 'oneOf', [d.value]));
    });
    var result = Filter/* Filter */.dJ.merge(widgetFilter, dimensionsFilter);
    return result;
}
function getDateRangeFromChartPointInterval(pointDateTime, dateInterval) {
    var from = new Date(pointDateTime);
    var to;
    switch (dateInterval) {
        case Aggregation/* DateInterval */.Sq.Hour:
            to = (0,add/* default */.A)(from, { hours: 1 });
            to = (0,sub/* default */.A)(to, { seconds: 1 });
            return {
                from: pointDateTime,
                to: (0,format/* default */.A)(to, "yyyy-MM-dd'T'HH:mm:ssXXX"),
            };
        case Aggregation/* DateInterval */.Sq.Day:
            to = from;
            break;
        case Aggregation/* DateInterval */.Sq.Week:
            to = (0,add/* default */.A)(from, { weeks: 1 });
            to = (0,sub/* default */.A)(to, { days: 1 });
            break;
        case Aggregation/* DateInterval */.Sq.Month:
            to = (0,add/* default */.A)(from, { months: 1 });
            to = (0,sub/* default */.A)(to, { days: 1 });
            break;
        case Aggregation/* DateInterval */.Sq.Quarter:
            to = (0,add/* default */.A)(from, { months: 3 });
            to = (0,sub/* default */.A)(to, { days: 1 });
            break;
        case Aggregation/* DateInterval */.Sq.Year:
            to = (0,add/* default */.A)(from, { years: 1 });
            to = (0,sub/* default */.A)(to, { days: 1 });
            break;
        default:
            return null;
    }
    return {
        from: (0,format/* default */.A)(from, 'yyyy-MM-dd'),
        to: (0,format/* default */.A)(to, 'yyyy-MM-dd'),
    };
}

// EXTERNAL MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/utils.ts
var widgets_utils = __webpack_require__("ekcE");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Line/components/LineChart.tsx
var LineChart_assign = (undefined && undefined.__assign) || function () {
    LineChart_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return LineChart_assign.apply(this, arguments);
};
var LineChart_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable react/no-this-in-sfc,max-len */






















var strDateToUTC = function (date) {
    return date === null || date === void 0 ? void 0 : date.replace(/([+-]\d{2}:\d{2})$/, 'Z');
};
var mapDateRangeToQuery = function (dateRange, timeInterval) {
    return getDateRangeQuery(LineChart_assign(LineChart_assign({}, dateRange), { to: timeInterval === Aggregation/* DateInterval */.Sq.Hour ? dateRange.to : moment_default().parseZone(dateRange.to).subtract(1, 'days').format() }));
};
var getDimension = function (widget) { var _a; return (((_a = widget.segments) === null || _a === void 0 ? void 0 : _a.length) > 1 ? (0,widgets_utils/* getSegmentsDimension */.zA)(widget) : (0,widgets_utils/* getSeriesDimension */.Mw)(widget)); };
var Chart = function (_a) {
    var _b, _c, _d, _e, _f;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, chart = _a.chart, entities = _a.entities, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys, setValueDisplayKind = _a.setValueDisplayKind;
    if (!chart) {
        return null;
    }
    var _g = LineChart_read((0,react.useState)(((_b = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _b === void 0 ? void 0 : _b.valueDisplayKind) === CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Relative || true), 2), showRelativeChart = _g[0], setShowRelativeChart = _g[1];
    // we should use pointIntervalUnit for the irregular time units, such as month (28, 29, 30, 31 days)
    var getPointIntervalConfig = function (showRelativeChart, interval) {
        if (!showRelativeChart) {
            return { pointInterval: null, pointIntervalUnit: null };
        }
        switch (interval) {
            // day is usually 24 hours, but pointIntervalUnit also takes the DST crossover into consideration
            case 'Day':
            case Aggregation/* DateInterval */.Sq.Day:
                return { pointInterval: null, pointIntervalUnit: 'day' };
            case Aggregation/* DateInterval */.Sq.Month:
                return { pointInterval: null, pointIntervalUnit: 'month' };
            case Aggregation/* DateInterval */.Sq.Year:
                return { pointInterval: null, pointIntervalUnit: 'year' };
            default:
                return { pointInterval: dateUtils/* TIME */.E9[interval], pointIntervalUnit: null };
        }
    };
    var sameDateRangeInSegments = (0,segments/* isSameDateRangeInSegments */.D)(widget === null || widget === void 0 ? void 0 : widget.segments);
    (0,react.useEffect)(function () {
        setShowRelativeChart(sameDateRangeInSegments);
    }, [sameDateRangeInSegments]);
    var _h = useLegendClick(widget, setOmittedDataKeys), filterOmittedLines = _h.filterOmittedLines, onOmitDataKey = _h.onOmitDataKey, isVisibleLine = _h.isVisibleLine;
    var lines = filterOmittedLines((0,widgets_utils/* getChartLines */.WS)(chart), isPreview);
    var firstLine = lines[0];
    var firstLinePoints = (firstLine === null || firstLine === void 0 ? void 0 : firstLine.points) || [];
    var interval = ((_c = widget.dimension1) === null || _c === void 0 ? void 0 : _c.timeInterval)
        || ((_d = widget.dimension2) === null || _d === void 0 ? void 0 : _d.timeInterval)
        || (0,detectStatsConfigPeriod/* getInterval */.A8)(new Date((_e = firstLinePoints[0]) === null || _e === void 0 ? void 0 : _e.x), new Date((_f = firstLinePoints[firstLinePoints.length - 1]) === null || _f === void 0 ? void 0 : _f.x));
    var series = (0,react.useMemo)(function () {
        var _a;
        var isEveryLineHasSegment = lines.length === ((_a = widget.segments) === null || _a === void 0 ? void 0 : _a.length);
        var result = lines.map(function (line, index) {
            var _a, _b, _c, _d, _e, _f, _g, _h;
            var points = line.points;
            var id = line.key;
            var name = (0,legendAlias/* getAlias */.bd)(widget, id)
                || ((_a = entities === null || entities === void 0 ? void 0 : entities.find(function (entity) { var _a; return ((_a = entity.id) === null || _a === void 0 ? void 0 : _a.toString()) === (id === null || id === void 0 ? void 0 : id.toString()); })) === null || _a === void 0 ? void 0 : _a.name)
                || (!!id && (0,commonTranslations/* translate */.Tl)(id.toString()))
                || (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget.aggregationMetric)
                || 'series';
            var seriesId = (id === null || id === void 0 ? void 0 : id.toString()) || 'seriesId';
            var segment = isEveryLineHasSegment ? (_b = widget.segments) === null || _b === void 0 ? void 0 : _b[index] : (_c = widget.segments) === null || _c === void 0 ? void 0 : _c[0];
            var _j = getPointIntervalConfig(showRelativeChart, interval), pointInterval = _j.pointInterval, pointIntervalUnit = _j.pointIntervalUnit;
            return {
                dates: points,
                type: 'spline',
                name: name,
                id: (id === null || id === void 0 ? void 0 : id.toString()) || 'series',
                pointStart: showRelativeChart ? new Date(strDateToUTC((_e = (_d = points[0]) === null || _d === void 0 ? void 0 : _d.x) === null || _e === void 0 ? void 0 : _e.toString())).getTime() : null,
                pointInterval: pointInterval,
                pointIntervalUnit: pointIntervalUnit,
                data: points.map(function (point) {
                    var _a, _b;
                    return ({
                        name: (_a = point.x) === null || _a === void 0 ? void 0 : _a.toString(),
                        y: point.y,
                        custom: { seriesId: seriesId, pointName: (_b = point.x) === null || _b === void 0 ? void 0 : _b.toString(), segment: segment },
                    });
                }),
                color: pickColor(dashboardId, (_f = id === null || id === void 0 ? void 0 : id.toString()) !== null && _f !== void 0 ? _f : (_h = (_g = points[0]) === null || _g === void 0 ? void 0 : _g.x) === null || _h === void 0 ? void 0 : _h.toString(), getDimension(widget)),
                seriesId: seriesId,
                visible: isVisibleLine(id === null || id === void 0 ? void 0 : id.toString()),
            };
        });
        return result;
    }, [lines, showRelativeChart, widget]);
    var axisLabelConfig = (0,react.useMemo)(widgets_utils/* getWidgetAxisLabelConfig */.ap, []);
    var config = (0,react.useMemo)(function () {
        var _a;
        return (LineChart_assign(LineChart_assign({ chart: {
                zooming: {
                    type: 'x',
                },
            }, title: null }, (0,widgets_utils/* getWidgetExportingOptions */.Tm)(widget)), { subtitle: {
                text: null,
            }, xAxis: {
                type: showRelativeChart ? 'datetime' : undefined,
                crosshair: true,
                title: {
                    text: l('Time'),
                    style: {
                        display: 'none',
                    },
                },
                labels: LineChart_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
            }, yAxis: [
                {
                    title: LineChart_assign(LineChart_assign({}, axisLabelConfig), { text: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget.aggregationMetric) }),
                    labels: LineChart_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
                    minTickInterval: 1,
                    endOnTick: false,
                }
            ], tooltip: {
                split: true,
                useHTML: true,
                pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b><br/>',
                formatter: function tooltipFormatter() {
                    if (!showRelativeChart) {
                        var points_1 = this.points || [this.point];
                        return points_1.reduce(function (accum, item) {
                            var date = (0,formats/* formatDate */.Yq)(new Date(item.key), true);
                            var withSeriesName = "".concat(accum, "<span style=\"font-size: 10px\">").concat(date, "</span><br/><span style=\"color:").concat(item.series.color, "\">\u25CF</span> ").concat(item.series.name, ": ");
                            if (item.point && item.point.low && item.point.high) {
                                return "".concat(withSeriesName).concat(item.point.low, " - ").concat(item.point.high);
                            }
                            return "".concat(withSeriesName, "<b>").concat(item.y.toLocaleString('ru-RU'), "</b><br/>");
                        }, '');
                    }
                    var date = (0,formats/* formatDate */.Yq)(new Date(this.x), true);
                    var points = this.points || [this.point];
                    var tooltip = "<span style=\"font-size: 10px\">".concat(date, "</span><br/>");
                    return points.reduce(function (accum, item) {
                        var withSeriesName = "".concat(accum, "<br/><span style=\"color:").concat(item.series.color, "\">\u25CF</span> ").concat(item.series.name, ": ");
                        if (item.point && item.point.low && item.point.high) {
                            return "".concat(withSeriesName).concat(item.point.low, " - ").concat(item.point.high);
                        }
                        return "".concat(withSeriesName, "<b>").concat(item.y.toLocaleString('ru-RU'), "</b>");
                    }, tooltip);
                },
            }, plotOptions: {
                spline: {
                    marker: {
                        enabled: false,
                    },
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: function (e) {
                                var _a, _b;
                                if (!widget || !router) {
                                    return;
                                }
                                var point = e.point;
                                var pointSeries = series.find(function (s) { return s.seriesId === point.custom.seriesId; });
                                var segment = point.custom.segment;
                                var topicId = segment.topicId;
                                var pointFilter = segmentFilter[segment.key];
                                if (!point || !pointSeries) {
                                    return;
                                }
                                var pointIndex = pointSeries.data.findIndex(function (p) { return p.name === point.name; });
                                var nextPoint = pointSeries.data[pointIndex + 1];
                                var dimension1 = widget.dimension1, dimension2 = widget.dimension2, aggregationMetric = widget.aggregationMetric;
                                var from = (_a = point.name) === null || _a === void 0 ? void 0 : _a.toString();
                                var timeInterval = (dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.timeInterval) || (dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.timeInterval);
                                var dateRangeQuery = nextPoint
                                    ? mapDateRangeToQuery({
                                        type: 'absolute',
                                        from: from,
                                        to: (_b = nextPoint.name) === null || _b === void 0 ? void 0 : _b.toString(),
                                    }, timeInterval)
                                    : mapDateRangeToQuery({
                                        type: 'absolute',
                                        from: from,
                                        to: (0,dates/* getTo */._J)(from, timeInterval),
                                    }, timeInterval);
                                if (!(dimension2 === null || dimension2 === void 0 ? void 0 : dimension2.type)) {
                                    toTopic({
                                        query: LineChart_assign(LineChart_assign({}, (0,filterQueryUtils/* removeDefaultsJS */.Ow)(pointFilter)), dateRangeQuery),
                                        aggregationMetric: aggregationMetric,
                                        topicId: topicId,
                                        router: router,
                                    });
                                    sendWidgetChartClickedEvent === null || sendWidgetChartClickedEvent === void 0 ? void 0 : sendWidgetChartClickedEvent({
                                        properties: LineChart_assign({ widgetName: widget.name, widgetType: widget.type, topicId: topicId }, (0,filterQueryUtils/* removeDefaultsJS */.Ow)(pointFilter)),
                                    });
                                    return;
                                }
                                var topicFilter = getFilter({
                                    widgetFilter: pointFilter,
                                    firstDimensionFilterName: (0,aggregation/* aggregationToFilter */._L)(dimension1 === null || dimension1 === void 0 ? void 0 : dimension1.type),
                                    firstDimensionValue: getFirstDimensionValue(widget, lines, entities, e),
                                    secondDimensionFilterName: null,
                                    secondDimensionValue: null,
                                });
                                toTopic({
                                    query: LineChart_assign(LineChart_assign({}, topicFilter), dateRangeQuery),
                                    aggregationMetric: aggregationMetric,
                                    topicId: topicId,
                                    router: router,
                                });
                                sendWidgetChartClickedEvent === null || sendWidgetChartClickedEvent === void 0 ? void 0 : sendWidgetChartClickedEvent({
                                    properties: LineChart_assign({ widgetName: widget.name, widgetType: widget.type, topicId: topicId }, topicFilter),
                                });
                            },
                        },
                    },
                    pointStart: showRelativeChart ? undefined : 1,
                    events: {
                        legendItemClick: function (e) {
                            if (isPreview) {
                                onOmitDataKey(e.target.userOptions.id);
                                return false;
                            }
                        },
                    },
                },
            }, legend: LineChart_assign(LineChart_assign({}, widgets_utils/* WIDGET_LEGEND_CONFIG */.mb), { title: LineChart_assign(LineChart_assign({}, axisLabelConfig), { text: widget.segments.length > 1 ? l('Segments') : (0,aggregationTranslations/* translateAggregation */.j)((_a = widget.dimension1) === null || _a === void 0 ? void 0 : _a.type) }) }), series: series.filter(function (_a) {
                var id = _a.id;
                return id;
            }) }));
    }, isPreview ? null : [showRelativeChart]);
    return ((0,jsx_runtime.jsx)("div", LineChart_assign({ className: LineChart.chartBase }, { children: (0,jsx_runtime.jsx)("div", LineChart_assign({ className: classnames_default()(LineChart.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartInstance }) })) })));
};
var LineChart_LineChart = function (_a) {
    var _b;
    var dashboardId = _a.dashboardId, isPreview = _a.isPreview, data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys, setValueDisplayKind = _a.setValueDisplayKind;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", LineChart_assign({ className: classnames_default()(LineChart.base, (_b = {}, _b[LineChart.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Chart, { dashboardId: dashboardId, isPreview: isPreview, chart: data.chart, entities: entities, widget: widget, segmentFilter: segmentFilter, router: router, dashboardDateRange: dashboardDateRange, setChartInstance: setChartInstance, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent, setOmittedDataKeys: setOmittedDataKeys, setValueDisplayKind: setValueDisplayKind }) })));
};
/* harmony default export */ const components_LineChart = (LineChart_LineChart);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Line/Line.tsx


/* harmony default export */ const Line = (widgets_withChartData(components_LineChart));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Line/index.ts


// EXTERNAL MODULE: ./node_modules/react-dom/server.browser.js
var server_browser = __webpack_require__("KAy6");
// EXTERNAL MODULE: ./src/components/helpers/Space/index.ts + 1 modules
var Space = __webpack_require__("YgU7");
// EXTERNAL MODULE: ./src/components/other/ChartSwitcher/index.ts + 2 modules
var ChartSwitcher = __webpack_require__("MOLi");
// EXTERNAL MODULE: ./src/components/charts/Dumbbell/index.ts + 2 modules
var Dumbbell = __webpack_require__("TJkG");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Dumbbell/components/Dumbbell.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const components_Dumbbell = ({"base":"EOW1p_1pKjLWW5BVN4Ag","centralized":"rdXql5NjbcD1T6D7ymYv","chartBase":"UMg6EY5kVkNQx0t5appU","chart":"OI1fjRZLSINiblS8_hFD","chartSwitcher":"JOEVO7Y3rBf2TS1ZDdAb"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Dumbbell/components/Dumbbell.tsx
var Dumbbell_assign = (undefined && undefined.__assign) || function () {
    Dumbbell_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Dumbbell_assign.apply(this, arguments);
};
var Dumbbell_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var Dumbbell_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable */















var Dumbbell_getDimension = function (widget) {
    var _a, _b;
    return (_b = (_a = (0,widgets_utils/* getPointsDimension */.OG)(widget)) !== null && _a !== void 0 ? _a : (0,widgets_utils/* getSeriesDimension */.Mw)(widget)) !== null && _b !== void 0 ? _b : (0,widgets_utils/* getSegmentsDimension */.zA)(widget);
};
var DIMENSIONS_WITH_COLOR = ['authorGender', 'sentiment'];
var Tooltip = function (_a) {
    var _b;
    var isAspects = _a.isAspects, isMultidimensional = _a.isMultidimensional, isComparison = _a.isComparison, chart = _a.chart, aggregationMetric = _a.aggregationMetric;
    var _c = chart.point, name = _c.name, relativeCount = _c.relativeCount, absoluteCount = _c.absoluteCount, totalCount = _c.totalCount;
    var wordings = isMultidimensional
        ? {
            title: name,
            subtitle: chart.series.name,
        }
        : {
            title: chart.series.name,
            subtitle: isComparison ? name : null,
        };
    return ((0,jsx_runtime.jsxs)("div", Dumbbell_assign({ style: { fontSize: 14, color: (0,colors/* getColorsByTheme */.hx)().textColor } }, { children: [(0,jsx_runtime.jsxs)("h2", Dumbbell_assign({ style: { marginBottom: 10, fontWeight: 600 } }, { children: [isAspects ? null : " ".concat(numeral_default()(relativeCount).format('0.0'), "%"), " ", wordings.title] })), isAspects
                ? null
                : ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)("b", { children: numeral_default()(totalCount).format('0,0') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), (_b = (0,aggregationMetricTranslations/* translateAggregationMetricCased */.h)(aggregationMetric, totalCount)) === null || _b === void 0 ? void 0 : _b.toLowerCase(), (0,jsx_runtime.jsx)(Space/* default */.A, {}), wordings.subtitle ? sprintf(l('in total for %s', 'customDashboards'), wordings.subtitle) : l('in total', 'customDashboards')] }), (0,jsx_runtime.jsx)("br", {})] })), (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)("b", { children: numeral_default()(absoluteCount).format('0,0') }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), sprintf(l('of them contain %s', 'customDashboards'), wordings.title)] })] })));
};
var Dumbbell_Chart = function (_a) {
    var _b, _c;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, chart = _a.chart, entities = _a.entities, widget = _a.widget, segmentFilter = _a.segmentFilter, dashboardDateRange = _a.dashboardDateRange, router = _a.router, setChartInstance = _a.setChartInstance, setValueDisplayKind = _a.setValueDisplayKind, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!chart)
        return null;
    var _d = Dumbbell_read((0,react.useState)(false), 2), isAspects = _d[0], setIsAspects = _d[1];
    var _e = Dumbbell_read((0,react.useState)(((_b = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _b === void 0 ? void 0 : _b.valueDisplayKind)
        ? ((_c = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _c === void 0 ? void 0 : _c.valueDisplayKind) === CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Relative
        : true), 2), showRelativeChart = _e[0], setShowRelativeChart = _e[1];
    (0,react.useEffect)(function () {
        var _a;
        if (((_a = widget.dimension1) === null || _a === void 0 ? void 0 : _a.type) === 'sentimentAspects') {
            setIsAspects(true);
            if (showRelativeChart)
                handleChangeChartView();
        }
        setIsAspects(false);
    }, [widget]);
    var _f = (0,react.useMemo)(function () {
        var _a;
        return ({
            isMultidimensional: !!(widget.dimension1 && widget.dimension2),
            isComparison: ((_a = widget.segments) === null || _a === void 0 ? void 0 : _a.length) > 1
        });
    }, [widget]), isMultidimensional = _f.isMultidimensional, isComparison = _f.isComparison;
    var _g = useLegendClick(widget, setOmittedDataKeys), omittedDataKeys = _g.omittedDataKeys, filterOmittedLines = _g.filterOmittedLines, isVisibleLine = _g.isVisibleLine;
    var lines = filterOmittedLines((0,widgets_utils/* getChartLines */.WS)(chart), isPreview, true);
    var onPointClick = useChartPointClick({
        widget: widget,
        segmentFilter: segmentFilter,
        entities: entities,
        data: lines,
        router: router,
        dashboardDateRange: dashboardDateRange,
        sendWidgetChartClickedEvent: sendWidgetChartClickedEvent,
    }).onPointClick;
    var handleChangeChartView = function () {
        var newValue = !showRelativeChart;
        setShowRelativeChart(newValue);
        if (setValueDisplayKind) {
            setValueDisplayKind(newValue ? CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Relative : CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Absolute);
        }
    };
    var getMultidimensionalSeries = function () {
        var seriesData = [];
        var maxPercentage = 0;
        var dimension = Dumbbell_getDimension(widget);
        lines.forEach(function (line, index) {
            var _a, _b;
            var points = line.points, id = line.key;
            var name = (0,widgets_utils/* getSeriesName */.Jw)(id, entities, widget);
            var segment = ((_a = widget.segments) === null || _a === void 0 ? void 0 : _a[index]) || ((_b = widget.segments) === null || _b === void 0 ? void 0 : _b[0]);
            var data = [];
            points.forEach(function (point) {
                var _a;
                var relativeCount = ((point === null || point === void 0 ? void 0 : point.y) / line.totalCount) * 100;
                if (relativeCount > maxPercentage)
                    maxPercentage = relativeCount;
                data.push({
                    relativeCount: relativeCount,
                    absoluteCount: point === null || point === void 0 ? void 0 : point.y,
                    totalCount: line.totalCount,
                    name: (0,widgets_utils/* getPointName */.IB)(point === null || point === void 0 ? void 0 : point.x, entities, widget, name),
                    y: lines.length - 1 - index,
                    x: showRelativeChart ? point === null || point === void 0 ? void 0 : point.y : relativeCount,
                    custom: { seriesId: id, pointName: point === null || point === void 0 ? void 0 : point.x, segment: segment, omittedDataKeys: omittedDataKeys },
                    color: DIMENSIONS_WITH_COLOR.includes(dimension)
                        ? pickColor(dashboardId, (_a = point === null || point === void 0 ? void 0 : point.x) === null || _a === void 0 ? void 0 : _a.toString(), dimension)
                        : null,
                    visible: isVisibleLine(point === null || point === void 0 ? void 0 : point.x.toString()),
                });
            });
            seriesData.push({
                name: name,
                data: data,
                color: pickColor(dashboardId, id === null || id === void 0 ? void 0 : id.toString(), dimension),
                key: id || 'series',
            });
        });
        return { data: seriesData, maxPercentage: maxPercentage };
    };
    var getSeries = function () {
        var dimension = Dumbbell_getDimension(widget);
        var maxDataLength = Dumbbell_spreadArray([], Dumbbell_read(new Set(lines.map(function (line) { return line.points.map(function (point) { return point === null || point === void 0 ? void 0 : point.x; }); }).flat())), false).length;
        var seriesData = [];
        var maxPercentage = 0;
        lines.forEach(function (line, index) {
            var _a, _b;
            var points = line.points, id = line.key;
            var name = (0,widgets_utils/* getSeriesName */.Jw)(id, entities, widget);
            var segment = ((_a = widget.segments) === null || _a === void 0 ? void 0 : _a[index]) || ((_b = widget.segments) === null || _b === void 0 ? void 0 : _b[0]);
            points.forEach(function (point) {
                var relativeCount = ((point === null || point === void 0 ? void 0 : point.y) / line.totalCount) * 100;
                if (relativeCount > maxPercentage)
                    maxPercentage = relativeCount;
                var existingSerieIndex = seriesData.findIndex(function (serie) { return serie.key === (point === null || point === void 0 ? void 0 : point.x); });
                var data = {
                    name: name,
                    relativeCount: relativeCount,
                    absoluteCount: point === null || point === void 0 ? void 0 : point.y,
                    totalCount: line.totalCount,
                    x: showRelativeChart ? point === null || point === void 0 ? void 0 : point.y : relativeCount,
                    y: maxDataLength - 1 - seriesData.length,
                    color: DIMENSIONS_WITH_COLOR.includes(dimension) && !isComparison
                        ? pickColor(dashboardId, (id || (point === null || point === void 0 ? void 0 : point.x)), dimension)
                        : (0,colors/* getCurrentChartColorScheme */.KK)()[index],
                    custom: { seriesId: id, pointName: point === null || point === void 0 ? void 0 : point.x, segment: segment, omittedDataKeys: omittedDataKeys },
                    visible: isVisibleLine(point === null || point === void 0 ? void 0 : point.x.toString()),
                };
                if (existingSerieIndex >= 0) {
                    data.y = seriesData[existingSerieIndex].data[0].y;
                    seriesData[existingSerieIndex].data.push(data);
                }
                else {
                    seriesData.push({
                        key: point === null || point === void 0 ? void 0 : point.x,
                        name: (0,widgets_utils/* getPointName */.IB)(point === null || point === void 0 ? void 0 : point.x, entities, widget, name),
                        data: [data]
                    });
                }
            });
        });
        return { data: seriesData, maxPercentage: maxPercentage };
    };
    var getSeriesData = function () {
        if (isMultidimensional)
            return getMultidimensionalSeries();
        return getSeries();
    };
    var series = getSeriesData();
    return ((0,jsx_runtime.jsxs)("div", Dumbbell_assign({ className: classnames_default()(components_Dumbbell.chartBase) }, { children: [isAspects ? null : ((0,jsx_runtime.jsx)(ChartSwitcher/* default */.A, { className: classnames_default()(components_Dumbbell.chartSwitcher), isActive: showRelativeChart, icons: {
                    left: {
                        active: '/static/images/aspects_absolute_data_enabled.svg',
                        disabled: '/static/images/aspects_absolute_data_disabled.svg',
                    },
                    right: {
                        active: '/static/images/aspects_percent_data_enabled.svg',
                        disabled: '/static/images/aspects_percent_data_disabled.svg',
                    },
                }, onToggle: handleChangeChartView })), (0,jsx_runtime.jsx)("div", Dumbbell_assign({ className: classnames_default()(components_Dumbbell.chart) }, { children: (0,jsx_runtime.jsx)(Dumbbell/* default */.A, { isRelative: !showRelativeChart, withoutHeader: true, title: '', series: series.data, configOptions: Dumbbell_assign({ tooltip: {
                            useHTML: true,
                            formatter: function () {
                                return (0,server_browser/* renderToString */.F0)(Tooltip({
                                    isAspects: isAspects,
                                    isMultidimensional: isMultidimensional,
                                    isComparison: isComparison,
                                    chart: this,
                                    aggregationMetric: widget.aggregationMetric
                                }));
                            },
                        } }, (0,widgets_utils/* getWidgetExportingOptions */.Tm)(widget)), callback: setChartInstance, onClick: onPointClick }) }))] })));
};
var DumbbellChart = function (_a) {
    var _b;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, dateRange = _a.dateRange, setChartInstance = _a.setChartInstance, setValueDisplayKind = _a.setValueDisplayKind, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", Dumbbell_assign({ className: classnames_default()(components_Dumbbell.base, (_b = {}, _b[components_Dumbbell.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Dumbbell_Chart, { isPreview: isPreview, dashboardId: dashboardId, chart: data === null || data === void 0 ? void 0 : data.chart, entities: entities, widget: widget, segmentFilter: segmentFilter, router: router, dashboardDateRange: dateRange, setChartInstance: setChartInstance, setValueDisplayKind: setValueDisplayKind, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent, setOmittedDataKeys: setOmittedDataKeys }) })));
};
/* harmony default export */ const Dumbbell_components_Dumbbell = (DumbbellChart);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Dumbbell/Dumbbell.tsx


/* harmony default export */ const Dumbbell_Dumbbell = (widgets_withChartData(Dumbbell_components_Dumbbell));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Dumbbell/index.ts


// EXTERNAL MODULE: ./src/utils/chart.js
var utils_chart = __webpack_require__("jxlF");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Pie/components/Pie.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Pie = ({"base":"FR19zdCa7iYddm7XdEjM","chart":"ugJ24RwOyZTqnrDiNtmQ","centralized":"tCqFh2ayRQWrrmEKxTJB"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Pie/components/Pie.tsx
var Pie_assign = (undefined && undefined.__assign) || function () {
    Pie_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Pie_assign.apply(this, arguments);
};











var Pie_getDimension = function (widget) { var _a; return (_a = (0,widgets_utils/* getSeriesDimension */.Mw)(widget)) !== null && _a !== void 0 ? _a : (0,widgets_utils/* getSegmentsDimension */.zA)(widget); };
var Pie_Chart = function (_a) {
    var _b;
    var _c;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, chart = _a.chart, entities = _a.entities, width = _a.width, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, fullWidth = _a.fullWidth, router = _a.router, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!chart) {
        return null;
    }
    var _d = useLegendClick(widget, setOmittedDataKeys), omittedDataKeys = _d.omittedDataKeys, filterOmittedLines = _d.filterOmittedLines, onOmitDataKey = _d.onOmitDataKey, isVisibleLine = _d.isVisibleLine;
    var lines = filterOmittedLines((0,widgets_utils/* getChartLines */.WS)(chart), isPreview, true);
    var onPointClick = useChartPointClick({
        widget: widget,
        segmentFilter: segmentFilter,
        entities: entities,
        data: lines,
        router: router,
        dashboardDateRange: dashboardDateRange,
        sendWidgetChartClickedEvent: sendWidgetChartClickedEvent,
    }).onPointClick;
    var series = lines.map(function (line) {
        var points = line.points;
        var id = line.key;
        var name = (0,widgets_utils/* getSeriesName */.Jw)(id, entities, widget);
        var data = points.map(function (point, index) {
            var _a, _b;
            var segment = ((_a = widget.segments) === null || _a === void 0 ? void 0 : _a[index]) || ((_b = widget.segments) === null || _b === void 0 ? void 0 : _b[0]);
            return {
                name: (0,widgets_utils/* getPointName */.IB)(point === null || point === void 0 ? void 0 : point.x, entities, widget, name),
                key: point === null || point === void 0 ? void 0 : point.x,
                y: point === null || point === void 0 ? void 0 : point.y,
                color: pickColor(dashboardId, point === null || point === void 0 ? void 0 : point.x.toString(), Pie_getDimension(widget)),
                custom: { seriesId: id, pointName: point === null || point === void 0 ? void 0 : point.x, segment: segment, omittedDataKeys: omittedDataKeys },
                visible: isVisibleLine(point === null || point === void 0 ? void 0 : point.x.toString()),
            };
        });
        return {
            type: 'pie',
            name: name,
            data: data,
            key: id || 'series',
        };
    });
    var verticalLegend = series[0] && ((_c = series[0].data) === null || _c === void 0 ? void 0 : _c.length) > 10
        ? {
            align: 'right',
            verticalAlign: 'middle',
        }
        : {};
    var config = (0,react.useMemo)(function () {
        var _a;
        return (Pie_assign(Pie_assign({ chart: {
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false,
                type: 'pie',
                height: (0,widgets_utils/* getChartHeight */.WR)(height, fullWidth),
            }, title: null }, (0,widgets_utils/* getWidgetExportingOptions */.Tm)(widget)), { subtitle: {
                text: null,
            }, tooltip: utils_chart/* TOOLTIPS */.H.pie, plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: width !== 1,
                        format: '{point.percentage:.2f}% ({point.y:,.0f})',
                    },
                    showInLegend: true,
                    point: {
                        events: {
                            legendItemClick: function (e) {
                                if (isPreview) {
                                    onOmitDataKey(e.target.options.key, e.target.custom.omittedDataKeys);
                                    return false;
                                }
                            },
                        },
                    },
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: onPointClick,
                        },
                    },
                },
            }, legend: Pie_assign(Pie_assign(Pie_assign({}, widgets_utils/* WIDGET_LEGEND_CONFIG */.mb), verticalLegend), { title: Pie_assign(Pie_assign({}, (0,widgets_utils/* getWidgetAxisLabelConfig */.ap)()), { text: (0,aggregationTranslations/* translateAggregation */.j)((_a = widget.dimension1) === null || _a === void 0 ? void 0 : _a.type) }) }), series: series }));
    }, isPreview ? null : []);
    return ((0,jsx_runtime.jsx)("div", Pie_assign({ className: classnames_default()(Pie.chart, (_b = {}, _b[Pie.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartInstance }) })));
};
var Pie_Pie = function (_a) {
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, data = _a.data, widget = _a.widget, segmentFilter = _a.segmentFilter, entities = _a.entities, width = _a.width, router = _a.router, dashboardDateRange = _a.dashboardDateRange, fullWidth = _a.fullWidth, height = _a.height, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", Pie_assign({ className: classnames_default()(Pie.base) }, { children: (0,jsx_runtime.jsx)(Pie_Chart, { isPreview: isPreview, dashboardId: dashboardId, chart: data.chart, entities: entities, widget: widget, width: width, segmentFilter: segmentFilter, router: router, dashboardDateRange: dashboardDateRange, fullWidth: fullWidth, height: height, setChartInstance: setChartInstance, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent, setOmittedDataKeys: setOmittedDataKeys }) })));
};
/* harmony default export */ const components_Pie = (Pie_Pie);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Pie/Pie.tsx


/* harmony default export */ const widgets_Pie_Pie = (widgets_withChartData(components_Pie));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Pie/index.ts


;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Histogram/components/Histogram.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Histogram = ({"base":"aZRkNyPaycJBD8a2ftnv","centralized":"YgBCeKO8XpNAVBorIHIK","chart":"kpSOm4JCRhjaviF62D9D"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Histogram/components/Histogram.tsx
var Histogram_assign = (undefined && undefined.__assign) || function () {
    Histogram_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Histogram_assign.apply(this, arguments);
};












var Histogram_getDimension = function (widget) {
    var _a, _b;
    return (_b = (_a = (0,widgets_utils/* getPointsDimension */.OG)(widget)) !== null && _a !== void 0 ? _a : (0,widgets_utils/* getSeriesDimension */.Mw)(widget)) !== null && _b !== void 0 ? _b : (0,widgets_utils/* getSegmentsDimension */.zA)(widget);
};
var Histogram_Chart = function (_a) {
    var _b;
    var isPreview = _a.isPreview, chart = _a.chart, dashboardId = _a.dashboardId, entities = _a.entities, widget = _a.widget, segmentFilter = _a.segmentFilter, dashboardDateRange = _a.dashboardDateRange, router = _a.router, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!chart) {
        return null;
    }
    var isKeyInPoint = !((_b = chart.lines[0]) === null || _b === void 0 ? void 0 : _b.key);
    var _c = useLegendClick(widget, setOmittedDataKeys), filterOmittedLines = _c.filterOmittedLines, onOmitDataKey = _c.onOmitDataKey, isVisibleLine = _c.isVisibleLine;
    var histograms = filterOmittedLines((0,widgets_utils/* getHistograms */.u0)(chart, widget), isPreview);
    var categories = (0,widgets_utils/* getCategories */.bW)(histograms, entities, widget);
    var onPointClick = useChartPointClick({
        widget: widget,
        segmentFilter: segmentFilter,
        entities: entities,
        data: histograms,
        router: router,
        dashboardDateRange: dashboardDateRange,
        sendWidgetChartClickedEvent: sendWidgetChartClickedEvent,
    }).onPointClick;
    var series = histograms.map(function (histogram, lineIndex) {
        var points = histogram.points;
        var id = histogram.key;
        var name = (0,widgets_utils/* getSeriesName */.Jw)(id, entities, widget);
        var data = points.map(function (_a, pointIndex) {
            var _b, _c;
            var x = _a.x, y = _a.y;
            var segment = ((_b = widget.segments) === null || _b === void 0 ? void 0 : _b[isKeyInPoint ? lineIndex : pointIndex]) || ((_c = widget.segments) === null || _c === void 0 ? void 0 : _c[0]);
            return {
                name: (0,widgets_utils/* getPointName */.IB)(x, entities, widget, name),
                y: y === 0 ? null : y,
                custom: { seriesId: id, pointName: x, segment: segment },
            };
        });
        return {
            type: 'column',
            name: name,
            key: id || 'series',
            data: data,
            color: pickColor(dashboardId, id === null || id === void 0 ? void 0 : id.toString(), Histogram_getDimension(widget)),
            visible: isVisibleLine(id),
        };
    });
    var axisLabelConfig = (0,react.useMemo)(widgets_utils/* getWidgetAxisLabelConfig */.ap, []);
    var config = (0,react.useMemo)(function () {
        var _a, _b;
        return (Histogram_assign(Histogram_assign({ chart: {
                type: 'column',
            }, title: null }, (0,widgets_utils/* getWidgetExportingOptions */.Tm)(widget)), { subtitle: {
                text: null,
            }, yAxis: [
                {
                    title: Histogram_assign(Histogram_assign({}, axisLabelConfig), { text: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget.aggregationMetric) }),
                    labels: Histogram_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
                    minTickInterval: 1,
                    endOnTick: false,
                }
            ], xAxis: {
                categories: categories,
                crosshair: true,
                labels: Histogram_assign({ enabled: !!categories }, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
            }, tooltip: utils_chart/* TOOLTIPS */.H.column, plotOptions: {
                column: {
                    minPointLength: 4,
                },
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: onPointClick,
                        },
                    },
                    events: {
                        legendItemClick: function (e) {
                            if (isPreview) {
                                onOmitDataKey(e.target.userOptions.key);
                                return false;
                            }
                        },
                    },
                },
            }, legend: Histogram_assign(Histogram_assign({}, widgets_utils/* WIDGET_LEGEND_CONFIG */.mb), { title: Histogram_assign(Histogram_assign({}, axisLabelConfig), { text: (0,aggregationTranslations/* translateAggregation */.j)(((_a = widget.dimension2) === null || _a === void 0 ? void 0 : _a.type) || ((_b = widget.dimension1) === null || _b === void 0 ? void 0 : _b.type)) }), enabled: (0,widgets_utils/* shouldShowLegend */.uX)(series) }), series: series }));
    }, isPreview ? null : []);
    return ((0,jsx_runtime.jsx)("div", Histogram_assign({ className: classnames_default()(Histogram.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartInstance }) })));
};
var Histogram_Histogram = function (_a) {
    var _b;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", Histogram_assign({ className: classnames_default()(Histogram.base, (_b = {}, _b[Histogram.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Histogram_Chart, { isPreview: isPreview, dashboardId: dashboardId, chart: data === null || data === void 0 ? void 0 : data.chart, entities: entities, widget: widget, segmentFilter: segmentFilter, router: router, dashboardDateRange: dashboardDateRange, setChartInstance: setChartInstance, setOmittedDataKeys: setOmittedDataKeys, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent }) })));
};
/* harmony default export */ const components_Histogram = (Histogram_Histogram);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Histogram/Histogram.tsx


/* harmony default export */ const widgets_Histogram_Histogram = (widgets_withChartData(components_Histogram));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Histogram/index.ts


;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Stacked/components/Stacked.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Stacked = ({"base":"XOdjIoLNux_WoKfmi_H7","centralized":"BFmnnEXQYyEMtGZ1Yaui","chartBase":"RfQNgLnnt7tqmoOhukps","chart":"UJ7yXVj4FmwGPqsZYF0z","chartSwitcher":"CBtT2FgUAdlytVhASRXA"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Stacked/components/Stacked.tsx
var Stacked_assign = (undefined && undefined.__assign) || function () {
    Stacked_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Stacked_assign.apply(this, arguments);
};
var Stacked_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable */













var Stacked_getDimension = function (widget) {
    var _a, _b;
    return (_b = (_a = (0,widgets_utils/* getPointsDimension */.OG)(widget)) !== null && _a !== void 0 ? _a : (0,widgets_utils/* getSeriesDimension */.Mw)(widget)) !== null && _b !== void 0 ? _b : (0,widgets_utils/* getSegmentsDimension */.zA)(widget);
};
var Stacked_Chart = function (_a) {
    var _b, _c;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, chart = _a.chart, entities = _a.entities, widget = _a.widget, segmentFilter = _a.segmentFilter, dashboardDateRange = _a.dashboardDateRange, router = _a.router, setChartInstance = _a.setChartInstance, setValueDisplayKind = _a.setValueDisplayKind, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!chart) {
        return null;
    }
    var _d = useLegendClick(widget, setOmittedDataKeys), filterOmittedLines = _d.filterOmittedLines, onOmitDataKey = _d.onOmitDataKey, isVisibleLine = _d.isVisibleLine;
    var _e = Stacked_read((0,react.useState)(((_b = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _b === void 0 ? void 0 : _b.valueDisplayKind)
        ? ((_c = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _c === void 0 ? void 0 : _c.valueDisplayKind) === CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Relative
        : true), 2), showRelativeChart = _e[0], setShowRelativeChart = _e[1];
    var stackedBars = filterOmittedLines((0,widgets_utils/* getHistograms */.u0)(chart, widget), isPreview);
    var categories = (0,widgets_utils/* getCategories */.bW)(stackedBars, entities, widget);
    var onPointClick = useChartPointClick({
        widget: widget,
        segmentFilter: segmentFilter,
        entities: entities,
        data: stackedBars,
        router: router,
        dashboardDateRange: dashboardDateRange,
        sendWidgetChartClickedEvent: sendWidgetChartClickedEvent,
    }).onPointClick;
    var series = stackedBars.map(function (stackedBar) {
        var points = stackedBar.points;
        var id = stackedBar.key;
        var name = (0,widgets_utils/* getSeriesName */.Jw)(id, entities, widget);
        var data = points.map(function (_a, index) {
            var _b, _c;
            var x = _a.x, y = _a.y;
            var segment = ((_b = widget.segments) === null || _b === void 0 ? void 0 : _b[index]) || ((_c = widget.segments) === null || _c === void 0 ? void 0 : _c[0]);
            return {
                name: (0,widgets_utils/* getPointName */.IB)(x, entities, widget, name),
                key: x,
                y: y === 0 ? null : y,
                custom: { seriesId: id, pointName: x, segment: segment },
            };
        });
        return {
            type: 'column',
            name: name,
            key: id || 'series',
            data: data,
            color: pickColor(dashboardId, id.toString(), Stacked_getDimension(widget)),
            visible: isVisibleLine(id),
        };
    });
    var axisLabelConfig = (0,react.useMemo)(widgets_utils/* getWidgetAxisLabelConfig */.ap, []);
    var config = (0,react.useMemo)(function () {
        var _a, _b;
        return (Stacked_assign(Stacked_assign({ chart: {
                type: 'column',
            }, title: null }, (0,widgets_utils/* getWidgetExportingOptions */.Tm)(widget)), { subtitle: {
                text: null,
            }, yAxis: [
                {
                    title: Stacked_assign(Stacked_assign({}, axisLabelConfig), { text: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget.aggregationMetric) }),
                    labels: Stacked_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
                    minTickInterval: 1,
                    endOnTick: false,
                }
            ], xAxis: {
                categories: categories,
                crosshair: true,
                labels: Stacked_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
            }, tooltip: {
                pointFormat: '<span>{series.name}</span>: <b>{point.y:,.0f}</b> ({point.percentage:,.1f}%)<br/>' +
                    '<span>Total</span>: <b>{point.stackTotal:,.0f}</b> (100%)',
            }, plotOptions: {
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: onPointClick,
                        },
                    },
                    events: {
                        legendItemClick: function (e) {
                            if (isPreview) {
                                onOmitDataKey(e.target.userOptions.key);
                                return false;
                            }
                        },
                    },
                },
                column: {
                    stacking: showRelativeChart ? 'normal' : 'percent',
                    borderColor: (0,colors/* getColorsByTheme */.hx)().white,
                    borderWidth: 1,
                    minPointLength: 2,
                },
            }, legend: Stacked_assign(Stacked_assign({}, widgets_utils/* WIDGET_LEGEND_CONFIG */.mb), { title: Stacked_assign(Stacked_assign({}, axisLabelConfig), { text: (0,aggregationTranslations/* translateAggregation */.j)(((_a = widget.dimension2) === null || _a === void 0 ? void 0 : _a.type) || ((_b = widget.dimension1) === null || _b === void 0 ? void 0 : _b.type)) }) }), series: series }));
    }, isPreview ? null : [showRelativeChart]);
    var handleChangeChartView = function () {
        var newValue = !showRelativeChart;
        setShowRelativeChart(newValue);
        if (setValueDisplayKind) {
            setValueDisplayKind(newValue ? CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Relative : CustomDashboards/* CustomDashboardValueDisplayKind */.VC.Absolute);
        }
    };
    return ((0,jsx_runtime.jsxs)("div", Stacked_assign({ className: classnames_default()(Stacked.chartBase) }, { children: [(0,jsx_runtime.jsx)(ChartSwitcher/* default */.A, { className: classnames_default()(Stacked.chartSwitcher), isActive: showRelativeChart, icons: {
                    left: {
                        active: '/static/images/aspects_absolute_data_enabled.svg',
                        disabled: '/static/images/aspects_absolute_data_disabled.svg',
                    },
                    right: {
                        active: '/static/images/aspects_percent_data_enabled.svg',
                        disabled: '/static/images/aspects_percent_data_disabled.svg',
                    },
                }, onToggle: handleChangeChartView }), (0,jsx_runtime.jsx)("div", Stacked_assign({ className: classnames_default()(Stacked.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartInstance }) }))] })));
};
var Stacked_Stacked = function (_a) {
    var _b;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, setValueDisplayKind = _a.setValueDisplayKind, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", Stacked_assign({ className: classnames_default()(Stacked.base, (_b = {}, _b[Stacked.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Stacked_Chart, { isPreview: isPreview, dashboardId: dashboardId, chart: data === null || data === void 0 ? void 0 : data.chart, entities: entities, widget: widget, segmentFilter: segmentFilter, router: router, dashboardDateRange: dashboardDateRange, setChartInstance: setChartInstance, setValueDisplayKind: setValueDisplayKind, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent, setOmittedDataKeys: setOmittedDataKeys }) })));
};
/* harmony default export */ const components_Stacked = (Stacked_Stacked);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Stacked/Stacked.tsx


/* harmony default export */ const widgets_Stacked_Stacked = (widgets_withChartData(components_Stacked));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Stacked/index.ts


;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Spider/components/Spider.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Spider = ({"base":"IFOy38sLavD9vSiEVB0g","centralized":"zxGuu80xlcgIMGfSpiGQ","chart":"GAUrfaljHPruqFNx3C1u"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Spider/components/Spider.tsx
var Spider_assign = (undefined && undefined.__assign) || function () {
    Spider_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Spider_assign.apply(this, arguments);
};











var Spider_getDimension = function (widget) { var _a; return (_a = (0,widgets_utils/* getPointsDimension */.OG)(widget)) !== null && _a !== void 0 ? _a : (0,widgets_utils/* getSegmentsDimension */.zA)(widget); };
var Spider_Chart = function (_a) {
    var _b;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, chart = _a.chart, entities = _a.entities, widget = _a.widget, segmentFilter = _a.segmentFilter, dashboardDateRange = _a.dashboardDateRange, router = _a.router, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!chart) {
        return null;
    }
    var isKeyInPoint = !((_b = chart.lines[0]) === null || _b === void 0 ? void 0 : _b.key);
    var _c = useLegendClick(widget, setOmittedDataKeys), filterOmittedLines = _c.filterOmittedLines, onOmitDataKey = _c.onOmitDataKey, isVisibleLine = _c.isVisibleLine;
    var lines = filterOmittedLines((0,widgets_utils/* getChartLines */.WS)(chart), isPreview, isKeyInPoint);
    if (widget.segments.length > 1) {
        lines = (0,widgets_utils/* matchSortingSegmentLines */.aZ)(lines);
    }
    var onPointClick = useChartPointClick({
        widget: widget,
        segmentFilter: segmentFilter,
        entities: entities,
        data: lines,
        router: router,
        dashboardDateRange: dashboardDateRange,
        sendWidgetChartClickedEvent: sendWidgetChartClickedEvent,
    }).onPointClick;
    var series = lines.map(function (line) {
        var points = line.points;
        var id = line.key;
        var name = (0,widgets_utils/* getSeriesName */.Jw)(id, entities, widget);
        var data = points.map(function (_a, index) {
            var _b, _c;
            var x = _a.x, y = _a.y;
            var segment = ((_b = widget.segments) === null || _b === void 0 ? void 0 : _b[index]) || ((_c = widget.segments) === null || _c === void 0 ? void 0 : _c[0]);
            return {
                y: y,
                key: x,
                name: (0,widgets_utils/* getPointName */.IB)(x, entities, widget, name),
                custom: { seriesId: id, pointName: x, segment: segment },
            };
        });
        return {
            type: 'area',
            name: name,
            key: id || 'series',
            data: data,
            pointPlacement: 'on',
            color: !isKeyInPoint ? pickColor(dashboardId, id.toString(), Spider_getDimension(widget)) : undefined,
            visible: isVisibleLine(id),
        };
    });
    var config = (0,react.useMemo)(function () {
        var _a;
        return (Spider_assign(Spider_assign({ chart: {
                polar: true,
                type: 'area',
            }, title: null }, (0,widgets_utils/* getWidgetExportingOptions */.Tm)(widget)), { subtitle: {
                text: null,
            }, pane: {
                startAngle: 0,
                endAngle: 360,
                size: '80%',
            }, xAxis: {
                categories: (0,widgets_utils/* getCategories */.bW)(lines, entities, widget),
                tickmarkPlacement: 'on',
                labels: Spider_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
            }, yAxis: {
                title: {
                    text: null,
                },
                endOnTick: false,
                maxPadding: 0.05,
                labels: Spider_assign({}, widgets_utils/* WIDGET_LABELS_CONFIG */.cz),
            }, plotOptions: {
                series: {
                    cursor: 'pointer',
                    point: {
                        events: {
                            click: onPointClick,
                        },
                    },
                    events: {
                        legendItemClick: function (e) {
                            if (isPreview) {
                                onOmitDataKey(e.target.userOptions.key);
                                return false;
                            }
                        },
                    },
                },
            }, legend: Spider_assign(Spider_assign({}, widgets_utils/* WIDGET_LEGEND_CONFIG */.mb), { title: Spider_assign(Spider_assign({}, (0,widgets_utils/* getWidgetAxisLabelConfig */.ap)()), { text: (0,aggregationTranslations/* translateAggregation */.j)((_a = widget.dimension1) === null || _a === void 0 ? void 0 : _a.type) }), enabled: (0,widgets_utils/* shouldShowLegend */.uX)(series) }), series: series, tooltip: utils_chart/* TOOLTIPS */.H.splineSpider }));
    }, isPreview ? null : []);
    return ((0,jsx_runtime.jsx)("div", Spider_assign({ className: classnames_default()(Spider.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: setChartInstance }) })));
};
var Spider_Spider = function (_a) {
    var _b;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", Spider_assign({ className: classnames_default()(Spider.base, (_b = {}, _b[Spider.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Spider_Chart, { isPreview: isPreview, dashboardId: dashboardId, chart: data === null || data === void 0 ? void 0 : data.chart, entities: entities, widget: widget, segmentFilter: segmentFilter, dashboardDateRange: dashboardDateRange, router: router, setChartInstance: setChartInstance, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent, setOmittedDataKeys: setOmittedDataKeys }) })));
};
/* harmony default export */ const components_Spider = (Spider_Spider);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Spider/Spider.tsx


/* harmony default export */ const widgets_Spider_Spider = (widgets_withChartData(components_Spider));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Spider/index.ts


// EXTERNAL MODULE: ./src/components/ui/Icon/index.ts + 1 modules
var Icon = __webpack_require__("LtxQ");
// EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 2 modules
var Button = __webpack_require__("sC2d");
// EXTERNAL MODULE: ./src/components/ui/ColorPicker/index.ts + 4 modules
var ColorPicker = __webpack_require__("JxIt");
// EXTERNAL MODULE: ./src/components/helpers/HorizontalSpacer/index.ts + 2 modules
var HorizontalSpacer = __webpack_require__("5DQj");
// EXTERNAL MODULE: ./src/components/other/ChartLegend/index.ts + 4 modules
var ChartLegend = __webpack_require__("RO5+");
// EXTERNAL MODULE: ./src/components/other/WordCharts/components/WordsChartsSwitcher.tsx + 1 modules
var WordsChartsSwitcher = __webpack_require__("/dW3");
// EXTERNAL MODULE: ./src/components/other/VolumePopover/index.ts + 2 modules
var VolumePopover = __webpack_require__("H+oc");
// EXTERNAL MODULE: ./src/components/other/WordCharts/utils.ts
var WordCharts_utils = __webpack_require__("9rhG");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/WordCloud/components/WordCloud.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const WordCloud = ({"base":"UY0z7JRPUXJ0Hnu508rK","centralized":"f2gnYpt2wqG57daJlTN3","chartBase":"SD6CbMrhfTzOPHLMlgdo","chart":"EXtbJkaalfF70PMvSfhN","legend":"XTw9T0Q0Q3YTINQhV5rY","controls":"AWNCod36sAVTXGJNAUIO","chartControlButton":"gHTDrZ9QfzRBOqW1pCt3"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/WordCloud/components/WordCloud.tsx
var WordCloud_assign = (undefined && undefined.__assign) || function () {
    WordCloud_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return WordCloud_assign.apply(this, arguments);
};
var WordCloud_rest = (undefined && undefined.__rest) || function (s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
};
var WordCloud_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var WordCloud_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};

/* eslint-disable react/no-this-in-sfc */















var MAX_FONT_SIZE = 70;
var MIN_FONT_SIZE = 14;
var WordCloud_Chart = function (_a) {
    var _b;
    var dashboardDateRange = _a.dashboardDateRange, sortByUniqueWords = _a.sortByUniqueWords, visibleRange = _a.visibleRange, _c = _a.wordsColor, wordsColor = _c === void 0 ? 'default' : _c, showWordsSentiment = _a.showWordsSentiment, chart = _a.chart, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys, setWordsColor = _a.setWordsColor, setShouldShowWordsSentiment = _a.setShouldShowWordsSentiment, setUseUniqueTextCounts = _a.setUseUniqueTextCounts, setVisibleRange = _a.setVisibleRange;
    var pathname = router.location.pathname;
    var _d = WordCloud_read((0,react.useState)(null), 2), chartData = _d[0], changeChartData = _d[1];
    var _e = WordCloud_read((0,react.useState)([(visibleRange === null || visibleRange === void 0 ? void 0 : visibleRange.from) || 0, (visibleRange === null || visibleRange === void 0 ? void 0 : visibleRange.to) || 100]), 2), wordsVolume = _e[0], setWordsVolume = _e[1];
    var isPreview = pathname.includes('new') || pathname.includes('edit');
    var handleSelectWordsColor = function (colorPalette) {
        if (colorPalette === wordsColor)
            setWordsColor('default');
        else
            setWordsColor(colorPalette);
    };
    var handleChartRef = function (_chart) {
        changeChartData(_chart);
        setChartInstance(_chart);
    };
    if (!chart) {
        return null;
    }
    var data = WordCloud_rest(chart.words, []);
    var dataForChart = WordCloud_assign({}, data);
    if (!isPreview) {
        dataForChart = Object.keys(data)
            .filter(function (key) { var _a, _b; return !((_b = (_a = widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.omittedDataKeys) === null || _b === void 0 ? void 0 : _b.includes(key)); })
            .reduce(function (acc, key) {
            var _a;
            return (WordCloud_assign(WordCloud_assign({}, acc), (_a = {}, _a[key] = data[key], _a)));
        }, {});
    }
    var _f = (0,WordCharts_utils/* formatWordCloudData */.RP)({
        showSentiment: showWordsSentiment,
        sortByUniqueWords: sortByUniqueWords,
        usedVolume: [(visibleRange === null || visibleRange === void 0 ? void 0 : visibleRange.from) || 0, (visibleRange === null || visibleRange === void 0 ? void 0 : visibleRange.to) || 100],
        data: dataForChart,
        chart: chartData,
        colorType: wordsColor,
    }), points = _f.points, omittedWordsDataKeys = _f.omittedWordsDataKeys, toggleOmittedWordsDataKeys = _f.toggleOmittedWordsDataKeys, legendConfig = _f.legendConfig;
    (0,react.useEffect)(function () {
        var _a;
        if ((_a = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.omittedDataKeys) {
            toggleOmittedWordsDataKeys.apply(void 0, WordCloud_spreadArray([], WordCloud_read(widget.widgetOptions.omittedDataKeys), false));
        }
    }, []);
    (0,react.useEffect)(function () {
        if (setOmittedDataKeys)
            setOmittedDataKeys(omittedWordsDataKeys);
    }, [omittedWordsDataKeys]);
    var config = {
        title: {
            text: 'wordCloud',
            style: {
                display: 'none',
            },
        },
        series: [
            {
                type: 'wordcloud',
                name: 'Count',
                data: points,
                rotation: { orientations: 0 },
                cursor: 'pointer',
                spiral: 'archimedean',
                maxFontSize: MAX_FONT_SIZE,
                minFontSize: MIN_FONT_SIZE,
                style: {
                    fontFamily: '"Twemoji Country Flags", "Helvetica Neue", sans-serif',
                    fontWeight: '500',
                },
                animation: false,
                point: {
                    events: {
                        click: function (e) {
                            if (!widget || !router) {
                                return;
                            }
                            var segment = widget.segments[0];
                            var topicId = segment.topicId;
                            var filter = segmentFilter[segment.key];
                            var text = e.point.data.id;
                            var wordsKey = e.point.data.wordsKey;
                            var filterName = WordCharts_utils/* wordChartDataKeyToFilterName */.CJ[wordsKey];
                            var newFilter = margeDimensionAndWidgetFilters([{
                                    name: filterName,
                                    value: text,
                                }], filter);
                            var dateRangeQuery = getDateRangeQuery(dashboardDateRange || segment.dateRange) || {};
                            var topicFilter = WordCloud_assign(WordCloud_assign({}, newFilter), dateRangeQuery);
                            sendWidgetChartClickedEvent === null || sendWidgetChartClickedEvent === void 0 ? void 0 : sendWidgetChartClickedEvent({
                                properties: WordCloud_assign({ widgetName: widget.name, widgetType: widget.type, topicId: topicId }, topicFilter),
                            });
                            toTopic({
                                query: topicFilter,
                                topicId: topicId,
                                aggregationMetric: widget.aggregationMetric,
                                router: router,
                            });
                        },
                    },
                },
            }
        ],
        tooltip: {
            enabled: true,
            useHTML: true,
            headerFormat: '<span style="font-size: 16px; color:{point.color}"><b>{point.key}</b></span><br/>',
            pointFormatter: function () {
                return "<b>".concat(sprintf(sortByUniqueWords
                    ? nl('%s unique mention', '%s unique mentions', this.weight)
                    : nl('%s mention', '%s mentions', this.weight), this.weight.toLocaleString('ru-RU')), "</b>");
            },
        },
    };
    return ((0,jsx_runtime.jsxs)("div", WordCloud_assign({ className: classnames_default()(WordCloud.chartBase) }, { children: [isPreview && ((0,jsx_runtime.jsxs)("div", WordCloud_assign({ className: WordCloud.controls }, { children: [(0,jsx_runtime.jsx)(ColorPicker/* default */.A, { small: true, className: classnames_default()(WordCloud.colorPicker), selected: wordsColor, colors: colors/* wordCloudPickerColors */.a, type: "popover", onSelect: handleSelectWordsColor }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(Button/* default */.A, { size: "small", ghost: true, primary: showWordsSentiment, className: classnames_default()((_b = {}, _b[WordCloud.chartControlButton] = !showWordsSentiment, _b)), label: (0,jsx_runtime.jsxs)("span", { children: [(0,jsx_runtime.jsx)(Icon/* default */.A, { type: "positive", size: "small" }), (0,jsx_runtime.jsx)(Space/* default */.A, {}), l('Sentiment')] }), onClick: function () { return setShouldShowWordsSentiment(!showWordsSentiment); } }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(WordsChartsSwitcher/* default */.A, { value: sortByUniqueWords, onChange: function (value) { return setUseUniqueTextCounts(value); } }), (0,jsx_runtime.jsx)(HorizontalSpacer/* default */.A, {}), (0,jsx_runtime.jsx)(VolumePopover/* default */.A, { volume: wordsVolume, onChange: setWordsVolume, onFinalChange: function (_a) {
                            var _b = WordCloud_read(_a, 2), from = _b[0], to = _b[1];
                            return setVisibleRange({ from: from, to: to });
                        } })] }))), (0,jsx_runtime.jsx)("div", WordCloud_assign({ className: classnames_default()(WordCloud.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { options: config, callback: handleChartRef }) })), (0,jsx_runtime.jsx)(ChartLegend/* default */.Ay, { className: classnames_default()(WordCloud.legend), itemsConfig: legendConfig, disabledItemsKey: omittedWordsDataKeys })] })));
};
var WordCloud_WordCloud = function (_a) {
    var _b;
    var _c, _d, _e, _f;
    var isPreview = _a.isPreview, data = _a.data, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, router = _a.router, uiConfig = _a.uiConfig, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent, setOmittedDataKeys = _a.setOmittedDataKeys, setWordsColor = _a.setWordsColor, setShouldShowWordsSentiment = _a.setShouldShowWordsSentiment, setUseUniqueTextCounts = _a.setUseUniqueTextCounts, setVisibleRange = _a.setVisibleRange;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", WordCloud_assign({ className: classnames_default()(WordCloud.base, (_b = {}, _b[WordCloud.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(WordCloud_Chart, { sortByUniqueWords: uiConfig
                ? uiConfig.sortByUniqueWords
                : (_c = widget.widgetOptions) === null || _c === void 0 ? void 0 : _c.sortByUniqueWords, wordsColor: uiConfig
                ? uiConfig.wordCloudColorPalette
                : (_d = widget.widgetOptions) === null || _d === void 0 ? void 0 : _d.wordCloudColorPalette, showWordsSentiment: uiConfig
                ? uiConfig.shouldShowWordsSentiment
                : (_e = widget.widgetOptions) === null || _e === void 0 ? void 0 : _e.shouldShowWordsSentiment, visibleRange: (uiConfig === null || uiConfig === void 0 ? void 0 : uiConfig.visibleRange) || ((_f = widget.widgetOptions) === null || _f === void 0 ? void 0 : _f.visibleRange), dashboardDateRange: dashboardDateRange, isPreview: isPreview, chart: data === null || data === void 0 ? void 0 : data.chart, widget: widget, segmentFilter: segmentFilter, router: router, setChartInstance: setChartInstance, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent, setOmittedDataKeys: setOmittedDataKeys, setWordsColor: setWordsColor, setShouldShowWordsSentiment: setShouldShowWordsSentiment, setUseUniqueTextCounts: setUseUniqueTextCounts, setVisibleRange: setVisibleRange }) })));
};
/* harmony default export */ const components_WordCloud = (WordCloud_WordCloud);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/WordCloud/WordCloud.tsx






/* harmony default export */ const widgets_WordCloud_WordCloud = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        data: (0,selectors/* getDashboardWidgetStatisticsData */.Qe)(dashboardId, widgetId)(state),
        widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
        segmentFilter: (0,selectors/* getDashboardWidgetSegmentFilter */.aM)(dashboardId, widgetId)(state),
        dashboardDateRange: (0,selectors/* getCustomDashboardDateRange */.jV)(dashboardId)(state),
    });
}, {
    sendChartExportedEvent: model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}))(components_WordCloud));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/WordCloud/index.ts


// EXTERNAL MODULE: ./src/3rd-party/mapdata/index.js + 26 modules
var mapdata = __webpack_require__("gXmr");
// EXTERNAL MODULE: ./src/components/ui/IconButton/index.ts + 2 modules
var IconButton = __webpack_require__("owUz");
// EXTERNAL MODULE: ./src/utils/debounce.js
var debounce = __webpack_require__("P6/z");
// EXTERNAL MODULE: ./src/utils/constants.ts
var utils_constants = __webpack_require__("L02r");
// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Geo/components/utils.ts
var utils_assign = (undefined && undefined.__assign) || function () {
    utils_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return utils_assign.apply(this, arguments);
};
var utils_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var utils_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
var getCountries = function (chart) {
    var countries = (chart.countries || []).filter(function (country) { return country.count; });
    var pointSet = utils_spreadArray([], utils_read((new Set(countries
        .map(function (_a) {
        var regions = _a.regions;
        return (regions || []).map(function (r) { return r.id; });
    })
        .flat()))), false);
    return countries.map(function (country) {
        var regions = country.regions;
        var extended = pointSet.reduce(function (accum, id) {
            if (accum.some(function (p) { return p.x === id; })) {
                return accum;
            }
            return utils_spreadArray(utils_spreadArray([], utils_read(accum), false), [{ x: id, y: 0 }], false);
        }, (regions || []).map(function (_a) {
            var id = _a.id, count = _a.count;
            return ({ x: id, y: count });
        }));
        var sorted = extended.slice().sort(function (a, b) {
            return pointSet.indexOf(a.x) < pointSet.indexOf(b.x) ? -1 : 1;
        });
        return utils_assign(utils_assign({}, country), { key: country.code, points: sorted });
    });
};

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Geo/components/Geo.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Geo = ({"base":"V61zLxKeYTl8DotPzLAW","centralized":"L2MKWshdBN4s7JMnz33k","chart":"bhm0WEUXISxhWuMKIdLS"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Geo/components/Geo.tsx
var Geo_assign = (undefined && undefined.__assign) || function () {
    Geo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Geo_assign.apply(this, arguments);
};
var Geo_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var Geo_spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};














var mapCountryLines = function (lines) {
    return lines.map(function (_a) {
        var key = _a.key, count = _a.count;
        return ({ 'hc-key': key, value: count, id: null });
    });
};
var mapRegionLines = function (countries, entities) {
    if (countries.length === 1) {
        return countries[0].regions
            .map(function (region) {
            var entity = entities.find(function (e) { return e.id === region.id; });
            return {
                id: region.id,
                'hc-key': entity ? entity['hc-key'] : null,
                value: region.count,
                name: entity === null || entity === void 0 ? void 0 : entity.name,
            };
        })
            .filter(function (region) { return region.value > 0; });
    }
    return [];
};
var mapRegionOnMap = function (country, data) {
    return data
        .map(function (region) { return (Geo_assign(Geo_assign({}, region), { 'hc-key': region['hc-key'], regionId: region.id })); })
        .reduce(function (accum, region) {
        var index = accum.findIndex(function (r) { return r['hc-key'] === region['hc-key']; });
        if (index !== -1) {
            return accum.map(function (r, i) { return (i === index ? Geo_assign(Geo_assign({}, r), { value: r.value + region.value }) : r); });
        }
        return Geo_spreadArray(Geo_spreadArray([], Geo_read(accum), false), [region], false);
    }, []);
};
var setPosition = function (chart, position) {
    var _a, _b, _c, _d, _e, _f;
    if (!chart || !((_a = chart.xAxis) === null || _a === void 0 ? void 0 : _a.length) || !((_b = chart.yAxis) === null || _b === void 0 ? void 0 : _b.length) || !position) {
        return;
    }
    if ([position.x, position.y].some(function (pos) { return !pos || !pos.max || !pos.min; })) {
        return;
    }
    chart.xAxis[0].setExtremes((_c = position.x) === null || _c === void 0 ? void 0 : _c.min, (_d = position.x) === null || _d === void 0 ? void 0 : _d.max, false, false);
    chart.yAxis[0].setExtremes((_e = position.y) === null || _e === void 0 ? void 0 : _e.min, (_f = position.y) === null || _f === void 0 ? void 0 : _f.max, true, false);
};
var WorldChart = function (_a) {
    var chart = _a.chart, widget = _a.widget, setChartInstance = _a.setChartInstance, onCountryClick = _a.onCountryClick, setMapPosition = _a.setMapPosition;
    if (!chart) {
        return null;
    }
    var config = {
        title: {
            text: 'worldMap',
            style: {
                display: 'none',
            },
        },
        chart: {
            events: {
                load: function () {
                    var _a;
                    var position = (_a = widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.mapPosition;
                    if (position && !position.countryCode) {
                        setPosition(this, position);
                    }
                },
            },
        },
        xAxis: {
            events: {
                setExtremes: function (event) {
                    if (setMapPosition) {
                        setMapPosition(event);
                    }
                },
            },
        },
        mapNavigation: {
            enabled: true,
            enableMouseWheelZoom: false,
            enableDoubleClickZoomTo: true,
            enableDoubleClickZoom: true,
            buttonOptions: {
                verticalAlign: 'bottom',
            },
        },
        plotOptions: {
            map: {
                cursor: 'pointer',
                states: {
                    hover: {
                        color: '#EEDD66',
                    },
                },
            },
        },
        series: [
            {
                data: mapCountryLines(getCountries(chart)),
                mapData: (0,getCountryNameTranslation/* getTranslatedChartWorldMap */.pc)(mapdata/* world */.z),
                tooltip: {
                    pointFormat: '{point.name}: {point.value}',
                },
                name: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget === null || widget === void 0 ? void 0 : widget.aggregationMetric),
                borderWidth: 0.5,
                events: {
                    click: function (e) { return onCountryClick(e.point['hc-key']); },
                },
            }
        ],
    };
    return ((0,jsx_runtime.jsx)("div", Geo_assign({ className: classnames_default()(Geo.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { constructorType: "mapChart", highcharts: window.Highmaps, options: config, callback: setChartInstance }) })));
};
var CountryChart = function (_a) {
    var _b;
    var country = _a.country, chart = _a.chart, widget = _a.widget, entities = _a.entities, onClickBack = _a.onClickBack, onOpenTopic = _a.onOpenTopic, setChartInstance = _a.setChartInstance, setMapPosition = _a.setMapPosition;
    if (!chart) {
        return null;
    }
    var countries = ((_b = chart.countries) === null || _b === void 0 ? void 0 : _b.filter(function (c) { return c.code === country; })) || [];
    var chartData = mapRegionOnMap(country, mapRegionLines(countries, entities));
    var config = {
        title: {
            text: 'worldMap',
            style: {
                display: 'none',
            },
        },
        chart: {
            events: {
                load: function () {
                    var _a;
                    var position = (_a = widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.mapPosition;
                    if (position && position.countryCode === country) {
                        setPosition(this, position);
                    }
                },
            },
        },
        mapNavigation: {
            enabled: true,
            enableMouseWheelZoom: false,
            enableDoubleClickZoomTo: true,
            enableDoubleClickZoom: true,
            buttonOptions: {
                verticalAlign: 'bottom',
            },
        },
        xAxis: {
            events: {
                setExtremes: function (event) {
                    if (setMapPosition) {
                        setMapPosition(event, country);
                    }
                },
            },
        },
        plotOptions: {
            map: {
                cursor: 'pointer',
                states: {
                    hover: {
                        color: '#EEDD66',
                    },
                },
            },
        },
        series: [
            {
                data: chartData,
                mapData: (0,getCountryNameTranslation/* getTranslatedChartCountryMap */.b6)(mapdata/* countries */.X[country], chartData),
                tooltip: {
                    pointFormat: '{point.name}: {point.value}',
                },
                name: (0,aggregationMetricTranslations/* translateAggregationMetric */.p)(widget === null || widget === void 0 ? void 0 : widget.aggregationMetric),
                borderWidth: 0.5,
                events: {
                    click: function (e) {
                        var _a;
                        onOpenTopic(country, (_a = e.point) === null || _a === void 0 ? void 0 : _a.regionId);
                    },
                },
            }
        ],
    };
    return ((0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(IconButton/* default */.A, { iconType: "back", onClick: onClickBack }), (0,jsx_runtime.jsx)("div", Geo_assign({ className: classnames_default()(Geo.chart) }, { children: (0,jsx_runtime.jsx)((highcharts_react_min_default()), { constructorType: "mapChart", options: config, highcharts: window.Highmaps, callback: setChartInstance }) }))] }));
};
var Geo_Geo = function (_a) {
    var _b;
    var _c;
    var data = _a.data, height = _a.height, widget = _a.widget, segmentFilter = _a.segmentFilter, entities = _a.entities, router = _a.router, dashboardDateRange = _a.dashboardDateRange, setChartInstance = _a.setChartInstance, setMapPosition = _a.setMapPosition, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent;
    if (!data) {
        return null;
    }
    var _d = Geo_read((0,react.useState)(null), 2), country = _d[0], setCountry = _d[1];
    var _e = Geo_read((0,react.useState)(function () { return (0,debounce/* default */.A)(function (event, countryCode) {
        var _a, _b, _c, _d;
        if (!event || !setMapPosition) {
            return;
        }
        var xPos = (_b = (_a = event.target) === null || _a === void 0 ? void 0 : _a.chart) === null || _b === void 0 ? void 0 : _b.xAxis[0].getExtremes();
        var yPos = (_d = (_c = event.target) === null || _c === void 0 ? void 0 : _c.chart) === null || _d === void 0 ? void 0 : _d.yAxis[0].getExtremes();
        if (!xPos || !yPos) {
            return;
        }
        setMapPosition({
            countryCode: countryCode || null,
            x: {
                min: xPos.userMin,
                max: xPos.userMax,
            },
            y: {
                min: yPos.userMin,
                max: yPos.userMax,
            },
        });
    }, 1000); }), 1), storePosition = _e[0];
    (0,react.useEffect)(function () {
        var _a, _b;
        var code = (_b = (_a = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _a === void 0 ? void 0 : _a.mapPosition) === null || _b === void 0 ? void 0 : _b.countryCode;
        if (code) {
            setCountry(code);
        }
    }, [(_c = widget === null || widget === void 0 ? void 0 : widget.widgetOptions) === null || _c === void 0 ? void 0 : _c.mapPosition]);
    var handleCountryClick = function (selectedCountry) {
        var _a, _b, _c, _d;
        if ((((_d = (_c = (_b = (_a = data.chart) === null || _a === void 0 ? void 0 : _a.countries) === null || _b === void 0 ? void 0 : _b.find(function (c) { return c.code === selectedCountry; })) === null || _c === void 0 ? void 0 : _c.regions) === null || _d === void 0 ? void 0 : _d.length) || 0) === 0) {
            return;
        }
        if (utils_constants/* SUPPORTED_COUNTRIES_WITH_REGIONS */.j4.includes(selectedCountry)) {
            if (setMapPosition) {
                setMapPosition({ countryCode: selectedCountry, x: null, y: null });
            }
            setCountry(selectedCountry);
            return;
        }
        if (!setMapPosition) {
            handleOpenTopic(selectedCountry);
        }
    };
    var handleCountryUnselect = function () {
        if (setMapPosition) {
            setMapPosition({ countryCode: null, x: null, y: null });
        }
        setCountry(null);
    };
    var handleOpenTopic = function (countryFilter, regionFilter) {
        if (!widget || !router) {
            return;
        }
        var segment = widget.segments[0];
        var topicId = segment.topicId;
        var filter = segmentFilter[segment.key].copyFilter();
        if (countryFilter) {
            filter.doSelect('country', [countryFilter]);
        }
        if (regionFilter) {
            filter.doSelect('region', [regionFilter]);
        }
        var topicFilter = Geo_assign({}, (0,filterQueryUtils/* removeDefaultsJS */.Ow)(filter));
        var dateRangeQuery = getDateRangeQuery(dashboardDateRange || segment.dateRange) || {};
        toTopic({
            query: Geo_assign(Geo_assign({}, topicFilter), dateRangeQuery),
            aggregationMetric: widget.aggregationMetric,
            topicId: topicId,
            router: router,
        });
        sendWidgetChartClickedEvent === null || sendWidgetChartClickedEvent === void 0 ? void 0 : sendWidgetChartClickedEvent({
            properties: Geo_assign({ widgetName: widget.name, widgetType: widget.type, topicId: topicId }, topicFilter),
        });
    };
    return ((0,jsx_runtime.jsx)("div", Geo_assign({ className: classnames_default()(Geo.base, (_b = {}, _b[Geo.centralized] = height > 1, _b)) }, { children: country ? ((0,jsx_runtime.jsx)(CountryChart, { country: country, chart: data === null || data === void 0 ? void 0 : data.chart, widget: widget, entities: entities, segmentFilter: segmentFilter, dashboardDateRange: dashboardDateRange, onClickBack: handleCountryUnselect, onOpenTopic: handleOpenTopic, setChartInstance: setChartInstance, setMapPosition: storePosition })) : ((0,jsx_runtime.jsx)(WorldChart, { chart: data === null || data === void 0 ? void 0 : data.chart, widget: widget, onCountryClick: handleCountryClick, setChartInstance: setChartInstance, setMapPosition: storePosition })) })));
};
/* harmony default export */ const components_Geo = ((0,react.memo)(Geo_Geo, function (prev, next) {
    return prev.data === next.data && prev.entities.every(function (e, index) { var _a; return (e === null || e === void 0 ? void 0 : e.id) === ((_a = next.entities[index]) === null || _a === void 0 ? void 0 : _a.id); });
}));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Geo/Geo.tsx


/* harmony default export */ const widgets_Geo_Geo = (widgets_withChartData(components_Geo));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Geo/index.ts


// EXTERNAL MODULE: ./node_modules/react-masonry-component/lib/index.js
var lib = __webpack_require__("pQUg");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
// EXTERNAL MODULE: ./src/components/other/MentionPreview/index.ts + 2 modules
var MentionPreview = __webpack_require__("bkQi");
// EXTERNAL MODULE: ./src/components/other/MentionEngagementCounts/index.js + 2 modules
var MentionEngagementCounts = __webpack_require__("vGGb");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/List/components/List.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const List = ({"visibleScrollBar":"G7F2yKiPuBMFQYvoZG9B","hiddenScrollBar":"hlONg6oE956USYROMpCO","base":"ZQWsAjYJNu_I55qWBw25","centralized":"uynq0bmXP5fi5tRxzHlI","chartBase":"mlAcmQbZQ039JcNDVPEK","grid":"tq__lKzwjPodpyB6Icro","chart":"W66TebQgFLeH8BHJBk4j","mention":"MuGWV70j3b97rckKWRiU","preview":"uQPY6tR_RL4CKHHybsyL","mentionContainer":"x1qP5LIcDc_XNacCPsuf","divider":"gWK8Dw6fjE9xRhZHhWin"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/List/components/List.tsx
var List_assign = (undefined && undefined.__assign) || function () {
    List_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return List_assign.apply(this, arguments);
};
var List_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable react/no-this-in-sfc */






var List_Chart = function (_a) {
    var chart = _a.chart, entities = _a.entities, widget = _a.widget, router = _a.router, isPreview = _a.isPreview, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent;
    if (!chart) {
        return null;
    }
    var items = chart.items;
    var list = items.map(function (item) { return entities.find(function (e) { return e.id === item.id; }); });
    var $base = (0,react.useRef)(null);
    var _b = List_read((0,react.useState)(100), 2), width = _b[0], setWidth = _b[1];
    (0,react.useEffect)(function () {
        var handleResize = function () {
            if (!($base === null || $base === void 0 ? void 0 : $base.current))
                return;
            var clientWidth = $base === null || $base === void 0 ? void 0 : $base.current.clientWidth;
            if (clientWidth < 1000) {
                setWidth(100);
                return;
            }
            if (clientWidth < 1300) {
                setWidth(50);
                return;
            }
            if (clientWidth > 1300) {
                setWidth(33);
            }
        };
        handleResize();
        window.addEventListener('resize', handleResize);
    }, []);
    var handleClick = function (mentionId) {
        if (!widget || !router) {
            return;
        }
        var segment = widget.segments[0];
        var topicId = segment.topicId;
        sendWidgetChartClickedEvent === null || sendWidgetChartClickedEvent === void 0 ? void 0 : sendWidgetChartClickedEvent({
            properties: {
                widgetName: widget.name,
                widgetType: widget.type,
                topicId: topicId,
            },
        });
        var mentionPath = router.createPath({ pathname: "/themes/".concat(topicId, "/mentions/").concat(mentionId) });
        window.open("".concat(window.location.origin).concat(mentionPath), '_blank');
    };
    return ((0,jsx_runtime.jsx)("div", List_assign({ className: classnames_default()(List.chartBase), ref: $base }, { children: (0,jsx_runtime.jsx)((lib_default()), List_assign({ className: classnames_default()(List.grid), options: {
                columnWidth: '.masonryItem',
                transitionDuration: '0.2s',
                itemSelector: '.masonryItem',
                fitWidth: false,
                resize: true,
            } }, { children: list.map(function (m) {
                var _a;
                return ((0,jsx_runtime.jsxs)("div", List_assign({ className: classnames_default()('masonryItem', List.mentionContainer), style: { width: "".concat(width, "%") } }, { children: [(0,jsx_runtime.jsx)(MentionPreview/* default */.A, { hideAvatar: true, className: classnames_default()(List.mention, (_a = {}, _a[List.preview] = isPreview, _a)), title: m.title, text: m.text, author: m.author, imageUrl: m.imageUrl, url: m.url, publicationDate: m.publishedAt, sourceName: m.source.name, rating: m.rating, tags: m.systemTags, sourceFormat: m.sourceFormat, onContentClick: function () { return handleClick(m.id); } }, m.id), m.engagement && ((0,jsx_runtime.jsx)(MentionEngagementCounts/* default */.A, { sourceName: m.source && m.source.name, likes: m.engagement.likes, dislikes: m.engagement.dislikes, reposts: m.engagement.reposts, comments: m.engagement.comments, views: m.engagement.views, impressions: m.engagement.impressions, reach: m.engagement.reach, reactions: m.engagement.reactions, dateCollected: m.engagement.dateCollected, shares: m.engagement.shares, sourceFormat: m.sourceFormat })), (0,jsx_runtime.jsx)("div", { className: List.divider })] }), m.id));
            }) })) })));
};
var List_List = function (_a) {
    var _b;
    var data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, router = _a.router, isPreview = _a.isPreview, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent;
    if (!data) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", List_assign({ className: classnames_default()(List.base, (_b = {}, _b[List.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(List_Chart, { isPreview: isPreview, chart: data === null || data === void 0 ? void 0 : data.chart, entities: entities, widget: widget, router: router, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent }) })));
};
/* harmony default export */ const components_List = (List_List);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/List/List.tsx






/* harmony default export */ const widgets_List_List = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        data: (0,selectors/* getDashboardWidgetStatisticsData */.Qe)(dashboardId, widgetId)(state),
        widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
        entities: (0,selectors/* getListEntities */.i6)(state),
    });
}, {
    sendChartExportedEvent: model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}))(components_List));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/List/index.ts


;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Text/components/Text.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const Text = ({"base":"YHO1ZfxTQc_hD1JSlKzw","centralized":"g_xAQRB7BnRSghPLk0MQ","chartBase":"Y3YVNkfssRvFCYo1AvN9","chart":"MFBFJDNYwRHPd6uyFRlK","chartSwitcher":"rc5qDl0gZ1gL_pTICmVK"});
// EXTERNAL MODULE: ./node_modules/react-quill/lib/index.js
var react_quill_lib = __webpack_require__("rmP6");
var react_quill_lib_default = /*#__PURE__*/__webpack_require__.n(react_quill_lib);
;// CONCATENATED MODULE: ./src/components/ui/TextEditor/TextEditor.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const TextEditor = ({"base":"R7G3I2yzelePeLKd72A9","quill":"ZCIMRxLUbSWPIAgDSGC1"});
;// CONCATENATED MODULE: ./src/components/ui/TextEditor/TextEditor.tsx
var TextEditor_assign = (undefined && undefined.__assign) || function () {
    TextEditor_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return TextEditor_assign.apply(this, arguments);
};




var TextEditor_TextEditor = function (_a) {
    var value = _a.value, onChange = _a.onChange;
    var quillRef = (0,react.useRef)(null);
    var toolbarOptions = [
        [{ header: [1, 2, 3, 4, 5, 6, false] }],
        ['bold', 'italic', 'underline', 'strike'],
        ['blockquote', 'code-block'],
        [{ list: 'ordered' }, { list: 'bullet' }],
        [{ direction: 'rtl' }],
        ['clean']
    ];
    var modules = (0,react.useMemo)(function () { return ({
        toolbar: {
            container: toolbarOptions,
            handlers: {
                image: imageHandler,
            },
        },
    }); }, []);
    function imageHandler() {
        if (!quillRef.current)
            return;
        var editor = quillRef.current.getEditor();
        var range = editor.getSelection();
        var imageUrl = prompt('Please enter the image URL');
        if (imageUrl && range) {
            editor.insertEmbed(range.index, 'image', imageUrl, 'user');
        }
    }
    return ((0,jsx_runtime.jsx)("div", TextEditor_assign({ className: TextEditor.base }, { children: (0,jsx_runtime.jsx)((react_quill_lib_default()), { className: TextEditor.quill, ref: quillRef, modules: modules, value: value, onChange: onChange }) })));
};
/* harmony default export */ const ui_TextEditor_TextEditor = (TextEditor_TextEditor);

// EXTERNAL MODULE: ./src/components/ui/Label/index.ts + 2 modules
var Label = __webpack_require__("HiCK");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Text/components/Text.tsx
var Text_assign = (undefined && undefined.__assign) || function () {
    Text_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Text_assign.apply(this, arguments);
};
var Text_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable */





var Text_Chart = function (_a) {
    var _b, _c;
    var isPreview = _a.isPreview, widget = _a.widget, setContent = _a.setContent;
    var _d = Text_read((0,react.useState)((_c = (_b = widget.widgetOptions) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.text), 2), text = _d[0], setText = _d[1];
    (0,react.useEffect)(function () {
        if (text && setContent)
            setContent({ text: text });
    }, [text]);
    function renderEditMode() {
        return ((0,jsx_runtime.jsxs)("div", { children: [(0,jsx_runtime.jsx)(Label/* default */.A, { children: l('Text') }), (0,jsx_runtime.jsx)(ui_TextEditor_TextEditor, { value: text, onChange: setText })] }));
    }
    function renderShowMode() {
        return ((0,jsx_runtime.jsx)("div", { children: (0,jsx_runtime.jsx)("div", { dangerouslySetInnerHTML: { __html: text } }) }));
    }
    return (0,jsx_runtime.jsx)("div", Text_assign({ className: classnames_default()(Text.chartBase) }, { children: isPreview ? renderEditMode() : renderShowMode() }));
};
var Text_Text = function (_a) {
    var _b;
    var isPreview = _a.isPreview, dashboardId = _a.dashboardId, height = _a.height, widget = _a.widget, setContent = _a.setContent;
    return ((0,jsx_runtime.jsx)("div", Text_assign({ className: classnames_default()(Text.base, (_b = {}, _b[Text.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Text_Chart, { isPreview: isPreview, dashboardId: dashboardId, widget: widget, setContent: setContent }) })));
};
/* harmony default export */ const components_Text = (Text_Text);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Text/Text.tsx


/* harmony default export */ const widgets_Text_Text = (widgets_withChartData(components_Text));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Text/index.ts


// EXTERNAL MODULE: ./src/state/entities-new/selectors.ts + 2 modules
var entities_new_selectors = __webpack_require__("+Oxy");
// EXTERNAL MODULE: ./src/containers/conversationalInsights/TrendsList/components/Trend.tsx
var Trend = __webpack_require__("Oxpf");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Trends/components/Trends.less
// extracted by mini-css-extract-plugin
/* harmony default export */ const Trends = ({"visibleScrollBar":"zQ9dHIT5dmVTsxzXGzrf","hiddenScrollBar":"MVRl8Uu7HsLEFaRNzRia","base":"VKlTvOXoRvxg9umS4qPK","centralized":"vIqU_F0U1GsfNWVMJxSa","chartBase":"dT3qO8Z8Nd4pJVGSD_5Q","grid":"YhtmPK080M7Qv3sKMstD","chart":"v7X_VkfJFyfQI77rStzo","mention":"lk1CAZm52P9vOIDMesnQ","preview":"b6s2bPpIzQ6odYRmfOIa","trendContainer":"PYfoz3OES7HCEVUuzo8I","divider":"QWfMsmHgM9XFD5R54gbQ"});
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Trends/components/Trends.tsx
var Trends_assign = (undefined && undefined.__assign) || function () {
    Trends_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return Trends_assign.apply(this, arguments);
};
var Trends_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable react/no-this-in-sfc */





var Trends_Chart = function (_a) {
    var chart = _a.chart, entities = _a.entities, widget = _a.widget, router = _a.router, isPreview = _a.isPreview, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent;
    if (!chart)
        return null;
    var $base = (0,react.useRef)(null);
    var _b = Trends_read((0,react.useState)(100), 2), width = _b[0], setWidth = _b[1];
    var lines = chart.lines;
    var list = lines === null || lines === void 0 ? void 0 : lines.map(function (item) { return entities[item.key]; });
    (0,react.useEffect)(function () {
        var handleResize = function () {
            if (!($base === null || $base === void 0 ? void 0 : $base.current))
                return;
            var clientWidth = $base === null || $base === void 0 ? void 0 : $base.current.clientWidth;
            if (clientWidth < 1000) {
                setWidth(100);
                return;
            }
            if (clientWidth < 1300) {
                setWidth(50);
                return;
            }
            if (clientWidth > 1300) {
                setWidth(33);
            }
        };
        handleResize();
        window.addEventListener('resize', handleResize);
    }, []);
    var handleClick = function (trendId) {
        if (!widget || !router)
            return;
        var segment = widget.segments[0];
        var topicId = segment.topicId;
        sendWidgetChartClickedEvent === null || sendWidgetChartClickedEvent === void 0 ? void 0 : sendWidgetChartClickedEvent({
            properties: {
                widgetName: widget.name,
                widgetType: widget.type,
                topicId: topicId,
            },
        });
        var filter = Filter/* Filter */.dJ.empty();
        filter.doSelect('trends', [trendId]);
        var mentionStreamPath = router.createPath({ pathname: "/themes/".concat(topicId, "/mentions"), search: filter.toQueryString() });
        window.open("".concat(window.location.origin).concat(mentionStreamPath), '_blank');
    };
    return ((0,jsx_runtime.jsx)("div", Trends_assign({ className: classnames_default()(Trends.chartBase), ref: $base }, { children: (0,jsx_runtime.jsx)("div", Trends_assign({ className: classnames_default()(Trends.grid) }, { children: list === null || list === void 0 ? void 0 : list.map(function (m) { return ((0,jsx_runtime.jsx)("div", Trends_assign({ className: classnames_default()(Trends.trendContainer), style: { width: "".concat(width, "%") } }, { children: (0,jsx_runtime.jsx)(Trend/* default */.A, Trends_assign({ isDemoMode: true, withoutImage: false, themeId: String(widget.segments[0].topicId), filter: Filter/* Filter */.dJ.empty() }, m, { id: m.id, name: m.name, onClick: handleClick, onEdit: null }), m.id) }), m.id)); }) })) })));
};
var Trends_Trends = function (_a) {
    var _b;
    var data = _a.data, entities = _a.entities, height = _a.height, widget = _a.widget, router = _a.router, isPreview = _a.isPreview, sendWidgetChartClickedEvent = _a.sendWidgetChartClickedEvent;
    if (!data || !entities) {
        return null;
    }
    return ((0,jsx_runtime.jsx)("div", Trends_assign({ className: classnames_default()(Trends.base, (_b = {}, _b[Trends.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(Trends_Chart, { isPreview: isPreview, chart: data === null || data === void 0 ? void 0 : data.chart, entities: entities, widget: widget, router: router, sendWidgetChartClickedEvent: sendWidgetChartClickedEvent }) })));
};
/* harmony default export */ const components_Trends = (Trends_Trends);

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Trends/Trends.tsx







/* harmony default export */ const widgets_Trends_Trends = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId, widgetId = _a.widgetId;
    return ({
        data: (0,selectors/* getDashboardWidgetStatisticsData */.Qe)(dashboardId, widgetId)(state),
        widget: (0,selectors/* getDashboardWidget */.vX)(dashboardId, widgetId)(state),
        entities: (0,entities_new_selectors/* getTrendEntities */.zR)(state),
    });
}, {
    sendChartExportedEvent: model/* analyticsStateModel */.j.action.sendChartExportedEvent,
}))(components_Trends));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Trends/index.ts


// EXTERNAL MODULE: ./src/state/conversationalInsights/selectors.ts
var conversationalInsights_selectors = __webpack_require__("uLYw");
// EXTERNAL MODULE: ./src/state/conversationalInsights/model.ts
var conversationalInsights_model = __webpack_require__("vuoO");
// EXTERNAL MODULE: ./src/utils/statsBy.ts
var statsBy = __webpack_require__("4ok8");
// EXTERNAL MODULE: ./src/utils/customDashboards/layout.ts
var layout = __webpack_require__("TAzt");
// EXTERNAL MODULE: ./src/components/other/NetworkGraph/index.ts + 3 modules
var NetworkGraph = __webpack_require__("r7Fg");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/PhrasesBySubjectsGraph/components/PhrasesBySubjectsGraph.css
// extracted by mini-css-extract-plugin
/* harmony default export */ const PhrasesBySubjectsGraph = ({"base":"Ad01TAcQcJ3PTH5TGMVF","centralized":"VEqwtmc4UV5f_odCgp5g","chart":"yK_VnZe9O6YVRwttQTRi","chartSwitcher":"EFzA1VpQ5uWY2f5LgW7E","chartBase":"MhSxr7Qf2FieCYeGkmZR"});
// EXTERNAL MODULE: ./src/models/NetworkGraph.ts + 1 modules
var models_NetworkGraph = __webpack_require__("ckFD");
// EXTERNAL MODULE: ./src/containers/conversationalInsights/SubjectsPhrases/components/ActionButtons.tsx + 1 modules
var ActionButtons = __webpack_require__("FmQ8");
;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/PhrasesBySubjectsGraph/components/PhrasesBySubjectsGraph.tsx
var PhrasesBySubjectsGraph_assign = (undefined && undefined.__assign) || function () {
    PhrasesBySubjectsGraph_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PhrasesBySubjectsGraph_assign.apply(this, arguments);
};
var PhrasesBySubjectsGraph_read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};

/* eslint-disable */







var PhrasesBySubjectsGraph_Chart = function (_a) {
    var fullWidth = _a.fullWidth, height = _a.height, chart = _a.chart, colors = _a.colors;
    if (!chart || !Object.keys(colors).length)
        return null;
    var _b = PhrasesBySubjectsGraph_read((0,react.useState)(false), 2), isSentimentHighlighted = _b[0], setIsSentimentHighlighted = _b[1];
    var _c = PhrasesBySubjectsGraph_read((0,react.useState)(false), 2), isTrendsHighlighted = _c[0], setIsTrendsHighlighted = _c[1];
    var _d = PhrasesBySubjectsGraph_read((0,react.useState)(false), 2), isCommunitiesHighlighted = _d[0], setIsCommunitiesHighlighted = _d[1];
    var handleSentimentHighlight = function () {
        setIsCommunitiesHighlighted(false);
        setIsSentimentHighlighted(!isSentimentHighlighted);
    };
    var handleCommunitiesHighlight = function () {
        setIsSentimentHighlighted(false);
        setIsCommunitiesHighlighted(!isCommunitiesHighlighted);
    };
    var handleTrendsHighlight = function () {
        setIsTrendsHighlighted(!isTrendsHighlighted);
    };
    var data = (0,react.useMemo)(function () {
        var pg = new models_NetworkGraph/* PhraseGraph */.y6(chart.phrases, colors);
        return pg.getChartData({
            highlightCommunities: isCommunitiesHighlighted,
            highlightSentiment: isSentimentHighlighted,
            highlightTrends: isTrendsHighlighted,
        });
    }, [chart, colors, isCommunitiesHighlighted, isSentimentHighlighted, isTrendsHighlighted]);
    return ((0,jsx_runtime.jsx)("div", PhrasesBySubjectsGraph_assign({ className: classnames_default()(PhrasesBySubjectsGraph.chartBase) }, { children: (0,jsx_runtime.jsx)(NetworkGraph/* default */.A, { title: '', height: (0,widgets_utils/* getChartHeight */.WR)(height, fullWidth) - 48, data: data, additionalButtons: (0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [(0,jsx_runtime.jsx)(ActionButtons/* TrendsButton */.Xb, { isHighlighted: isTrendsHighlighted, onClick: handleTrendsHighlight }), (0,jsx_runtime.jsx)(ActionButtons/* SentimentButton */.kE, { isHighlighted: isSentimentHighlighted, onClick: handleSentimentHighlight }), (0,jsx_runtime.jsx)(ActionButtons/* CommunitiesButton */.uT, { isHighlighted: isCommunitiesHighlighted, onClick: handleCommunitiesHighlight })] }), onNodeClick: function (value) {
                console.log('Node clicked', value);
            } }) })));
};
var PhrasesBySubjectsGraph_PhrasesBySubjectsGraph = function (_a) {
    var _b;
    var fullWidth = _a.fullWidth, data = _a.data, colors = _a.colors, height = _a.height;
    if (!data)
        return null;
    return ((0,jsx_runtime.jsx)("div", PhrasesBySubjectsGraph_assign({ className: classnames_default()(PhrasesBySubjectsGraph.base, (_b = {}, _b[PhrasesBySubjectsGraph.centralized] = height > 1, _b)) }, { children: (0,jsx_runtime.jsx)(PhrasesBySubjectsGraph_Chart, { fullWidth: fullWidth, height: height, chart: data === null || data === void 0 ? void 0 : data.chart, colors: colors }) })));
};
/* harmony default export */ const components_PhrasesBySubjectsGraph = ((0,react.memo)(PhrasesBySubjectsGraph_PhrasesBySubjectsGraph));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/PhrasesBySubjectsGraph/PhrasesBySubjectsGraph.tsx
var PhrasesBySubjectsGraph_PhrasesBySubjectsGraph_assign = (undefined && undefined.__assign) || function () {
    PhrasesBySubjectsGraph_PhrasesBySubjectsGraph_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PhrasesBySubjectsGraph_PhrasesBySubjectsGraph_assign.apply(this, arguments);
};











var PhrasesBySubjectsGraphContainer = function (props) {
    (0,react.useEffect)(function () {
        props.matchSubjectsWithColors({ themeId: props.widget.segments[0].topicId, statsBy: statsBy/* DEFAULT_STATS_BY */._b });
    }, [props.widget]);
    return ((0,jsx_runtime.jsx)(components_PhrasesBySubjectsGraph, PhrasesBySubjectsGraph_PhrasesBySubjectsGraph_assign({}, props, { widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.graph, setChartInstance: lodash.noop })));
};
/* harmony default export */ const widgets_PhrasesBySubjectsGraph_PhrasesBySubjectsGraph = ((0,redux/* compose */.Zz)(widgets_withChartData, (0,react_redux/* connect */.Ng)(function (state) { return ({
    colors: (0,conversationalInsights_selectors/* getColorsBySubjects */.l3)(state),
}); }, { matchSubjectsWithColors: conversationalInsights_model/* conversationalInsightsModel */.h.action.matchSubjectsWithColors }))(PhrasesBySubjectsGraphContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/PhrasesBySubjectsGraph/index.ts


;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Counter/PreviewCounter.tsx
var PreviewCounter_assign = (undefined && undefined.__assign) || function () {
    PreviewCounter_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewCounter_assign.apply(this, arguments);
};






var PreviewCounter = function (props) {
    return ((0,jsx_runtime.jsx)(components_Counter, PreviewCounter_assign({}, props, { widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.counter, setChartInstance: lodash.noop })));
};
/* harmony default export */ const Counter_PreviewCounter = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dashboardId = _a.dashboardId;
    return ({
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        columnsCount: (0,selectors/* getCustomDashboardColumnsCount */.CN)(dashboardId)(state),
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
    });
})(PreviewCounter));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Line/PreviewLine.tsx
var PreviewLine_assign = (undefined && undefined.__assign) || function () {
    PreviewLine_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewLine_assign.apply(this, arguments);
};






var LineChartContainer = function (props) {
    return ((0,jsx_runtime.jsx)(components_LineChart, PreviewLine_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.line, setChartInstance: lodash.noop })));
};
/* harmony default export */ const PreviewLine = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(LineChartContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Dumbbell/PreviewDumbbell.tsx
var PreviewDumbbell_assign = (undefined && undefined.__assign) || function () {
    PreviewDumbbell_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewDumbbell_assign.apply(this, arguments);
};






var GeoContainer = function (props) { return ((0,jsx_runtime.jsx)(Dumbbell_components_Dumbbell, PreviewDumbbell_assign({}, props, { widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.dumbbell, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewDumbbell = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(GeoContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Pie/PreviewPie.tsx
var PreviewPie_assign = (undefined && undefined.__assign) || function () {
    PreviewPie_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewPie_assign.apply(this, arguments);
};






var PieContainer = function (props) {
    return ((0,jsx_runtime.jsx)(components_Pie, PreviewPie_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.pie, setChartInstance: lodash.noop })));
};
/* harmony default export */ const PreviewPie = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(PieContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Histogram/PreviewHistogram.tsx
var PreviewHistogram_assign = (undefined && undefined.__assign) || function () {
    PreviewHistogram_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewHistogram_assign.apply(this, arguments);
};






var HistogramContainer = function (props) { return ((0,jsx_runtime.jsx)(components_Histogram, PreviewHistogram_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.histogram, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewHistogram = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(HistogramContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Stacked/PreviewStacked.tsx
var PreviewStacked_assign = (undefined && undefined.__assign) || function () {
    PreviewStacked_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewStacked_assign.apply(this, arguments);
};






var StackedContainer = function (props) { return ((0,jsx_runtime.jsx)(components_Stacked, PreviewStacked_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.stackedBar, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewStacked = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(StackedContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Spider/PreviewSpider.tsx
var PreviewSpider_assign = (undefined && undefined.__assign) || function () {
    PreviewSpider_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewSpider_assign.apply(this, arguments);
};






var SpiderContainer = function (props) { return ((0,jsx_runtime.jsx)(components_Spider, PreviewSpider_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.spider, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewSpider = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(SpiderContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/WordCloud/PreviewWordCloud.tsx
var PreviewWordCloud_assign = (undefined && undefined.__assign) || function () {
    PreviewWordCloud_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewWordCloud_assign.apply(this, arguments);
};








var PreviewWordCloud_HistogramContainer = function (props) { return ((0,jsx_runtime.jsx)(components_WordCloud, PreviewWordCloud_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.histogram, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewWordCloud = ((0,redux/* compose */.Zz)(withRouter/* withRouter */.y, (0,react_redux/* connect */.Ng)(function (state) { return ({
    widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
    data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
    uiConfig: (0,selectors/* getWidgetConstructorUiConfig */.JK)(state),
}); }))(PreviewWordCloud_HistogramContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Geo/PreviewGeo.tsx
var PreviewGeo_assign = (undefined && undefined.__assign) || function () {
    PreviewGeo_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewGeo_assign.apply(this, arguments);
};






var PreviewGeo_GeoContainer = function (props) { return ((0,jsx_runtime.jsx)(components_Geo, PreviewGeo_assign({}, props, { widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.geo, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewGeo = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
    });
})(PreviewGeo_GeoContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/List/PreviewList.tsx
var PreviewList_assign = (undefined && undefined.__assign) || function () {
    PreviewList_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewList_assign.apply(this, arguments);
};






var ListContainer = function (props) { return ((0,jsx_runtime.jsx)(components_List, PreviewList_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.histogram, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewList = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
    data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
    entities: (0,selectors/* getListEntities */.i6)(state),
}); })(ListContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Text/PreviewText.tsx
var PreviewText_assign = (undefined && undefined.__assign) || function () {
    PreviewText_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewText_assign.apply(this, arguments);
};






var PreviewText_StackedContainer = function (props) { return ((0,jsx_runtime.jsx)(components_Text, PreviewText_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.stackedBar, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewText = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
}); })(PreviewText_StackedContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/Trends/PreviewTrends.tsx
var PreviewTrends_assign = (undefined && undefined.__assign) || function () {
    PreviewTrends_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewTrends_assign.apply(this, arguments);
};







var TrendsContainer = function (props) { return ((0,jsx_runtime.jsx)(components_Trends, PreviewTrends_assign({}, props, { isPreview: true, widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.histogram, setChartInstance: lodash.noop }))); };
/* harmony default export */ const PreviewTrends = ((0,react_redux/* connect */.Ng)(function (state) { return ({
    widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
    data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
    entities: (0,entities_new_selectors/* getTrendEntities */.zR)(state),
}); })(TrendsContainer));

;// CONCATENATED MODULE: ./src/containers/customDashboard/CustomDashboard/widgets/PhrasesBySubjectsGraph/PreviewPhrasesBySubjectsGraph.tsx
var PreviewPhrasesBySubjectsGraph_assign = (undefined && undefined.__assign) || function () {
    PreviewPhrasesBySubjectsGraph_assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return PreviewPhrasesBySubjectsGraph_assign.apply(this, arguments);
};










var PreviewPhrasesBySubjectsGraph_PhrasesBySubjectsGraphContainer = function (props) {
    (0,react.useEffect)(function () {
        props.matchSubjectsWithColors({ themeId: props.widget.segments[0].topicId, statsBy: statsBy/* DEFAULT_STATS_BY */._b });
    }, [props.widget]);
    return ((0,jsx_runtime.jsx)(components_PhrasesBySubjectsGraph, PreviewPhrasesBySubjectsGraph_assign({}, props, { widgetId: null, width: layout/* PREVIEW_WIDGET_WIDTH */.b4, height: layout/* CustomDashboardWidgetGridCellMinHeight */.rT.graph, setChartInstance: lodash.noop })));
};
/* harmony default export */ const PreviewPhrasesBySubjectsGraph = ((0,react_redux/* connect */.Ng)(function (state, _a) {
    var dimension1 = _a.dimension1, dimension2 = _a.dimension2;
    return ({
        widget: (0,selectors/* getWidgetConstructorConfig */.tZ)(state),
        data: (0,selectors/* getWidgetConstructorPreviewData */.RB)(state),
        entities: (0,selectors/* getWidgetConstructorEntities */.N3)(dimension1, dimension2)(state),
        colors: (0,conversationalInsights_selectors/* getColorsBySubjects */.l3)(state),
    });
}, { matchSubjectsWithColors: conversationalInsights_model/* conversationalInsightsModel */.h.action.matchSubjectsWithColors })(PreviewPhrasesBySubjectsGraph_PhrasesBySubjectsGraphContainer));

;// CONCATENATED MODULE: ./src/utils/customDashboards/widgets.ts
var _a, _b;
/* eslint-disable import/prefer-default-export */



























var WIDGET_COMPONENT = (_a = {},
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.counter] = widgets_Counter_Counter,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.line] = Line,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.dumbbell] = Dumbbell_Dumbbell,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.pie] = widgets_Pie_Pie,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.histogram] = widgets_Histogram_Histogram,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.spider] = widgets_Spider_Spider,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.stackedBar] = widgets_Stacked_Stacked,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.wordCloud] = widgets_WordCloud_WordCloud,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.geo] = widgets_Geo_Geo,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.list] = widgets_List_List,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.text] = widgets_Text_Text,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.trends] = widgets_Trends_Trends,
    _a[CustomDashboards/* CustomDashboardWidgetType */.qP.graph] = widgets_PhrasesBySubjectsGraph_PhrasesBySubjectsGraph,
    _a);
var PREVIEW_WIDGET_COMPONENT = (_b = {},
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.counter] = Counter_PreviewCounter,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.line] = PreviewLine,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.dumbbell] = PreviewDumbbell,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.pie] = PreviewPie,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.histogram] = PreviewHistogram,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.stackedBar] = PreviewStacked,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.spider] = PreviewSpider,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.geo] = PreviewGeo,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.wordCloud] = PreviewWordCloud,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.list] = PreviewList,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.text] = PreviewText,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.trends] = PreviewTrends,
    _b[CustomDashboards/* CustomDashboardWidgetType */.qP.graph] = PreviewPhrasesBySubjectsGraph,
    _b);


/***/ }),

/***/ "9jXX":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $Q: () => (/* binding */ getDaySixMonthsAgo),
/* harmony export */   AZ: () => (/* binding */ getDayWeekAgo),
/* harmony export */   Cn: () => (/* binding */ toYYYYMMDD),
/* harmony export */   Du: () => (/* binding */ getDaysDiff),
/* harmony export */   E9: () => (/* binding */ TIME),
/* harmony export */   JM: () => (/* binding */ getStartOfPreviousWeek),
/* harmony export */   Ls: () => (/* binding */ getDayYearAgo),
/* harmony export */   M3: () => (/* binding */ getDayFiveYearsAgo),
/* harmony export */   OC: () => (/* binding */ createDateWithoutTimeZone),
/* harmony export */   QS: () => (/* binding */ getEndOfPreviousMonth),
/* harmony export */   TQ: () => (/* binding */ getDayThreeMonthsAgo),
/* harmony export */   TV: () => (/* binding */ minutesToMilliseconds),
/* harmony export */   Un: () => (/* binding */ getEndOfPreviousWeek),
/* harmony export */   Wo: () => (/* binding */ isDateWithTime),
/* harmony export */   gf: () => (/* binding */ trimToDate),
/* harmony export */   jV: () => (/* binding */ getDayTwoWeeksAgo),
/* harmony export */   kc: () => (/* binding */ millisecondsToMinutes),
/* harmony export */   np: () => (/* binding */ isTimeSelected),
/* harmony export */   oX: () => (/* binding */ toYYYYMMDDTHHMM),
/* harmony export */   x9: () => (/* binding */ isDateOlderThanFiveMinutes),
/* harmony export */   xS: () => (/* binding */ getStartOfPreviousMonth),
/* harmony export */   y8: () => (/* binding */ getDayMonthAgo),
/* harmony export */   yy: () => (/* binding */ getPreviousDay)
/* harmony export */ });
/* unused harmony exports getNextDay, isSameDay, formatDateToUTC, getTimeZoneOffsetInMs, ticks, subtract, removeTimeZone */
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("wd/R");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Xep9");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("aetl");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("L8hi");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("9ig3");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("jKzE");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("1ihG");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("08aW");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("3g9J");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("accU");


var TIME = {
    Hour: 3600 * 1000,
    Day: 24 * 3600 * 1000,
    Week: 7 * 24 * 3600 * 1000,
    Month: 30 * 24 * 3600 * 1000,
    Quarter: 3 * 30 * 24 * 3600 * 1000,
    Year: 365 * 24 * 3600 * 1000,
    // CD dimension (aggregation) time interval is lowercased
    hour: 3600 * 1000,
    day: 24 * 3600 * 1000,
    week: 7 * 24 * 3600 * 1000,
    month: 30 * 24 * 3600 * 1000,
    quarter: 3 * 30 * 24 * 3600 * 1000,
    year: 365 * 24 * 3600 * 1000,
};
function getDayFiveYearsAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    var fiveYearsInDays = 1825;
    resultDate.setDate(resultDate.getDate() + fiveYearsInDays);
    return resultDate;
}
function getPreviousDay(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setDate(resultDate.getDate() - 1);
    return resultDate;
}
function getNextDay(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setDate(resultDate.getDate() + 1);
    return resultDate;
}
function getDayWeekAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setDate(resultDate.getDate() - 6);
    return resultDate;
}
function getDayTwoWeeksAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setDate(resultDate.getDate() - 13);
    return resultDate;
}
function getDayMonthAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setMonth(resultDate.getMonth() - 1);
    resultDate = (0,date_fns__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(resultDate, 1);
    return resultDate;
}
function getDayThreeMonthsAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setMonth(resultDate.getMonth() - 3);
    return resultDate;
}
function getDaySixMonthsAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setMonth(resultDate.getMonth() - 6);
    return resultDate;
}
function getDayYearAgo(date) {
    if (date === void 0) { date = new Date(); }
    var resultDate = new Date(date);
    resultDate.setFullYear(resultDate.getFullYear() - 1);
    return resultDate;
}
function getStartOfPreviousWeek(date) {
    if (date === void 0) { date = new Date(); }
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(getDayWeekAgo(date));
}
function getEndOfPreviousWeek(date) {
    if (date === void 0) { date = new Date(); }
    var d = (0,date_fns__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(getDayWeekAgo(date));
    d.setHours(0, 0, 0, 0);
    return d;
}
function getStartOfPreviousMonth(date) {
    if (date === void 0) { date = new Date(); }
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(getDayMonthAgo(date));
}
function getEndOfPreviousMonth(date) {
    if (date === void 0) { date = new Date(); }
    var d = (0,date_fns__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)(getDayMonthAgo(date));
    d.setHours(0, 0, 0, 0);
    return d;
}
function isSameDay() {
    var dates = [];
    for (var _i = 0; _i < arguments.length; _i++) {
        dates[_i] = arguments[_i];
    }
    return dates.every(function (date, i) {
        if (!dates[i + 1]) {
            return true;
        }
        return dates[i].toDateString() === dates[i + 1].toDateString();
    });
}
function getDaysDiff(first, second) {
    return Math.round((second - first) / (1000 * 60 * 60 * 24)) + 1;
}
function formatDateToUTC(date) {
    return moment(date || null).utc();
}
function getTimeZoneOffsetInMs(date) {
    return date.getTimezoneOffset() * 60 * 1000;
}
function isTimeSelected(date) {
    return date && (date.getMinutes() !== 0 || date.getHours() !== 0);
}
function millisecondsToMinutes(milliseconds) {
    return milliseconds / 60000;
}
function minutesToMilliseconds(minutes) {
    return minutes * 60000;
}
function toYYYYMMDD(date) {
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(date, 'yyyy-MM-dd');
}
function toYYYYMMDDTHHMM(date) {
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(date, "yyyy-MM-dd'T'HH:mm");
}
var ticks = function (date) { return date.getTime() * 10000 + 621355968000000000; };
var subtract = function (date, milliseconds) {
    var result = new Date(date);
    result.setMilliseconds(result.getMilliseconds() - milliseconds);
    return result;
};
function trimToDate(date) {
    var result = new Date(date);
    result.setHours(0, 0, 0, 0);
    return result;
}
var isDateWithTime = function (date) {
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A)(date) !== 0
        || (0,date_fns__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(date) !== 0
        || (0,date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A)(date) !== 0;
};
var isDateOlderThanFiveMinutes = function (date) {
    var now = new Date();
    // @ts-ignore
    var diff = now - date;
    var diffInMinutes = diff / (1000 * 60);
    return diffInMinutes > 5;
};
var removeTimeZone = function (dateString) {
    return dateString.replace(/([+-]\d{2}:\d{2}|Z)$/, '');
};
function createDateWithoutTimeZone(dateString) {
    return new Date(removeTimeZone(dateString));
}


/***/ }),

/***/ "RYjn":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   DV: () => (/* binding */ formatLongLocalizedDate),
/* harmony export */   OK: () => (/* binding */ formatDifferentYearsRange),
/* harmony export */   RS: () => (/* binding */ formatOneMonthRange),
/* harmony export */   Yq: () => (/* binding */ formatDate),
/* harmony export */   rX: () => (/* binding */ formatOneDayRange),
/* harmony export */   sd: () => (/* binding */ formatOneYearRange),
/* harmony export */   z8: () => (/* binding */ formatDateWithoutYear)
/* harmony export */ });
/* unused harmony exports getDateLocale, toISOformat */
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("H+Wd");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("1ihG");
/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("TpeJ");
/* harmony import */ var date_fns_tz__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("inu4");
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("872o");
/* harmony import */ var date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("TRC2");
/* harmony import */ var date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("UKhO");
/* harmony import */ var date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("yCWE");
/* harmony import */ var date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("yf44");
/* harmony import */ var date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("DksI");




/* eslint-disable */
var LOCALES = {
    'ru': date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A,
    'uk': date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A,
    'es': date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A,
    'en': date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A,
    'pt-br': date_fns_esm_locale__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A,
};
var ONE_DAY_FORMAT = {
    'ru': 'd MMMM yyyy',
    'uk': 'd MMMM yyyy',
    'es': 'd MMMM yyyy',
    'en': 'MMMM d, yyyy',
    'pt-br': 'd MMMM yyyy',
};
var ONE_DAY_WITHOUT_YEAR_FORMAT = {
    'ru': 'd MMMM',
    'uk': 'd MMMM',
    'es': 'd MMMM',
    'en': 'MMMM d',
    'pt-br': 'd MMMM',
};
/* eslint-enable */
var getDateLocale = function () { return LOCALES[(0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK)()] || LOCALES.en; };
var formatDate = function (date, isConvertToUTC) {
    if (isConvertToUTC === void 0) { isConvertToUTC = false; }
    if (!(0,date_fns__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(date))
        return null;
    if (isConvertToUTC) {
        return (0,date_fns_tz__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A)(date, 'UTC', ONE_DAY_FORMAT[(0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK)()], { locale: getDateLocale() });
    }
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(date, ONE_DAY_FORMAT[(0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK)()], { locale: getDateLocale() });
};
var formatLongLocalizedDate = function (date) {
    if (!(0,date_fns__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(date))
        return null;
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(date, 'PP', { locale: getDateLocale() });
};
var formatDateWithoutYear = function (date) {
    if (!(0,date_fns__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)(date))
        return null;
    return (0,date_fns__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .A)(date, ONE_DAY_WITHOUT_YEAR_FORMAT[(0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK)()], { locale: getDateLocale() });
};
var formatOneDayRange = function (from) {
    return formatDate(new Date(from));
};
var formatOneMonthRange = function (from, to) {
    var fromDate = (0,date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A)(new Date(from));
    var toDate = (0,date_fns__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A)(new Date(to));
    return formatDate(new Date(from)).replace(fromDate.toString(), "$& - ".concat(toDate));
};
var formatOneYearRange = function (from, to) {
    var fromDate = formatDateWithoutYear(new Date(from));
    var toDate = formatDateWithoutYear(new Date(to));
    return formatDate(new Date(from)).replace(fromDate, "$& - ".concat(toDate));
};
var formatDifferentYearsRange = function (from, to) {
    return "".concat(formatDate(new Date(from)), " - ").concat(formatDate(new Date(to)));
};
var toISOformat = function (date) { return date.toISOString().slice(0, 10); };


/***/ }),

/***/ "P8Q3":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   h8: () => (/* binding */ toUTC0Hours),
/* harmony export */   pe: () => (/* binding */ parseTime),
/* harmony export */   vP: () => (/* binding */ getTimeWithTimeZone)
/* harmony export */ });
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("wd/R");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("f0Wu");
/* harmony import */ var moment_timezone__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(moment_timezone__WEBPACK_IMPORTED_MODULE_1__);
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
/* eslint-disable import/prefer-default-export */


var getTimeWithTimeZone = function (_a) {
    var dateTime = _a.dateTime, timeZone = _a.timeZone, _b = _a.format, format = _b === void 0 ? 'LLL' : _b;
    return timeZone
        ? moment_timezone__WEBPACK_IMPORTED_MODULE_1___default()(dateTime).tz(timeZone).format(format)
        : moment__WEBPACK_IMPORTED_MODULE_0___default()(dateTime).format(format);
};
var roundToNearest5 = function (x) { return Math.round(x / 5) * 5; };
// E.g. ('10:33pm') -> { hours: 22, minutes: 30, hours12: 10, amPm: 'PM' }
var parseTime = function (timeString) {
    var _a = __read(timeString.toLowerCase().split(':'), 2), hoursString = _a[0], minutesAndAmPm = _a[1];
    var minutesString = minutesAndAmPm.slice(0, 2);
    var amPm = minutesAndAmPm.slice(2);
    var hours = (function () {
        if (hoursString === '0')
            return 0;
        if (hoursString === '12' && amPm === 'am')
            return 0;
        if (hoursString === '12' && amPm === 'pm')
            return 12;
        if (amPm === 'pm')
            return Number(hoursString) + 12;
        return Number(hoursString);
    })();
    var minutes = roundToNearest5(Number(minutesString));
    var hours12 = Number(hoursString) % 12;
    return {
        hours: hours,
        minutes: minutes,
        hours12: hours12,
        amPm: amPm.toUpperCase(),
    };
};
var toUTC0Hours = function (date) {
    var output = new Date(date);
    output.setHours(12);
    output.setUTCHours(0);
    return output;
};


/***/ }),

/***/ "Lyvr":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
var SUSPICIOUS_CONTENT_SYSTEM_TAGS = ['porn', 'pornImage'];
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (systemTags) { return Boolean(systemTags === null || systemTags === void 0 ? void 0 : systemTags.find(function (st) { return SUSPICIOUS_CONTENT_SYSTEM_TAGS.includes(st); })); });


/***/ }),

/***/ "S/wQ":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   E1: () => (/* binding */ saveSession),
/* harmony export */   ES: () => (/* binding */ extractSession),
/* harmony export */   Mu: () => (/* binding */ removeItemFromLocalStorage),
/* harmony export */   RH: () => (/* binding */ clearStashedEvents),
/* harmony export */   UC: () => (/* binding */ addEventToStash),
/* harmony export */   V9: () => (/* binding */ extractStashedEvents),
/* harmony export */   Wu: () => (/* binding */ getItemFromLocalStorage),
/* harmony export */   e7: () => (/* binding */ saveItemToLocalStorage),
/* harmony export */   hJ: () => (/* binding */ AVAILABLE_STORAGE_KEYS),
/* harmony export */   q7: () => (/* binding */ clearSession)
/* harmony export */ });
/* unused harmony export clearSessionLocalStorage */
/* eslint-disable consistent-return */
/* eslint-disable no-restricted-syntax */
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
/**
 * WARNING!
 * PLEASE PAY ATTENTION TO THE FACT THAT STORED SESSION
 * IS USED BY OUR ADMIN UI. ANY CHANGES MADE TO THE WAY WE STORE IT
 * SHOULD ALSO LEAD TO THE SAME CHANGES FOR ADMIN PANEL.
 */
var AVAILABLE_STORAGE_KEYS = {
    SESSION: 'session',
    CREATE_THEME: 'createTheme',
    LOCALE: 'locale',
    STASHED_EVENTS: 'stashedEvents',
    LANDING_IR_TOKEN: 'landingIrToken',
};
// Generic methods
var saveItemToLocalStorage = function (itemName, item, expiry) {
    try {
        var data = {
            value: item,
        };
        if (expiry) {
            var now = new Date();
            data.expiry = now.getTime() + expiry;
        }
        localStorage.setItem("".concat(itemName), JSON.stringify(data));
    }
    catch (error) {
        console.error(error);
    }
};
var getItemFromLocalStorage = function (itemName) {
    try {
        var data = JSON.parse(localStorage.getItem("".concat(itemName)));
        if ((data === null || data === void 0 ? void 0 : data.expiry) && new Date().getTime() > data.expiry) {
            removeItemFromLocalStorage(itemName);
            return null;
        }
        return (data === null || data === void 0 ? void 0 : data.value) ? data === null || data === void 0 ? void 0 : data.value : data;
    }
    catch (error) {
        console.error(error);
    }
};
var removeItemFromLocalStorage = function (itemName) {
    try {
        localStorage.removeItem(itemName);
    }
    catch (error) {
        console.error(error);
    }
};
var clearSessionLocalStorage = function () {
    var e_1, _a;
    try {
        try {
            for (var _b = __values(Object.values(AVAILABLE_STORAGE_KEYS)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var key = _c.value;
                localStorage.removeItem(key);
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_1) throw e_1.error; }
        }
    }
    catch (error) {
        console.error(error);
    }
};
// Custom wrappers
function saveSession(session) {
    saveItemToLocalStorage(AVAILABLE_STORAGE_KEYS.SESSION, session);
}
function extractSession() {
    return getItemFromLocalStorage(AVAILABLE_STORAGE_KEYS.SESSION);
}
function clearSession() {
    clearSessionLocalStorage();
}
function extractStashedEvents() {
    return getItemFromLocalStorage(AVAILABLE_STORAGE_KEYS.STASHED_EVENTS) || [];
}
function addEventToStash(event) {
    var events = getItemFromLocalStorage(AVAILABLE_STORAGE_KEYS.STASHED_EVENTS) || [];
    saveItemToLocalStorage(AVAILABLE_STORAGE_KEYS.STASHED_EVENTS, __spreadArray(__spreadArray([], __read(events), false), [event], false));
}
function clearStashedEvents() {
    removeItemFromLocalStorage(AVAILABLE_STORAGE_KEYS.STASHED_EVENTS);
}


/***/ }),

/***/ "Q/k7":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   b: () => (/* binding */ convertLocaleToLanguage),
/* harmony export */   h: () => (/* binding */ convertLanguageToLocale)
/* harmony export */ });
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("LvDl");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);

var localeToLanguage = {
    en: 'eng',
    ru: 'rus',
    uk: 'ukr',
    es: 'spa',
    'pt-br': 'por-bra',
};
var languageToLocale = (0,lodash__WEBPACK_IMPORTED_MODULE_0__.invert)(localeToLanguage);
var convertLocaleToLanguage = function (locale) { return localeToLanguage[locale]; };
var convertLanguageToLocale = function (language) { return languageToLocale[language]; };


/***/ }),

/***/ "6Fjb":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Fr: () => (/* binding */ isMobile),
/* harmony export */   IS: () => (/* binding */ isMobileSize),
/* harmony export */   O7: () => (/* binding */ isSimplifiedView),
/* harmony export */   Ro: () => (/* binding */ isTabSize)
/* harmony export */ });
/* unused harmony exports MOBILE_MAX_WIDTH, isMobileUserAgent */
var MOBILE_MAX_WIDTH = 600;
var isMobileSize = function () {
    return Math.max(document.documentElement.clientWidth, window.innerWidth || 0) <= MOBILE_MAX_WIDTH;
};
function isTabSize() {
    return window.matchMedia('(max-width: 992px)').matches;
}
function isSimplifiedView() {
    return isTabSize();
}
function isMobileUserAgent() {
    return /Mobi|Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
}
function isMobile() {
    return isMobileSize() && isMobileUserAgent();
}


/***/ }),

/***/ "RBXy":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CH: () => (/* binding */ getLinkToPromoSite),
/* harmony export */   MH: () => (/* binding */ HELP_YOUSCAN_PATH_NAMES),
/* harmony export */   OP: () => (/* binding */ createHelpLink),
/* harmony export */   _T: () => (/* binding */ getCardBillingTosLink),
/* harmony export */   cO: () => (/* binding */ goToPromoSite),
/* harmony export */   h: () => (/* binding */ PROMO_SITE_PATHS),
/* harmony export */   ud: () => (/* binding */ getLinkToAcademyYouscan),
/* harmony export */   vn: () => (/* binding */ getLinkToHelpYouscan)
/* harmony export */ });
/* unused harmony export removeUrlExtraSlashes */
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("872o");
/* eslint-disable max-len */

var PROMO_SITE_HOST = 'https://youscan.io';
var HELP_YOUSCAN_HOST = 'https://help.youscan.io';
var ACADEMY_YOUSCAN_HOST = 'https://academy.youscan.io';
var HELP_YOUSCAN_PATHS = {
    CHANNELS_LOCAL: {
        en: 'articles/5563235-collection-method-by-channels',
    },
    CHANNELS_GLOBAL: {
        en: 'articles/5563235-collection-method-by-channels',
    },
    HOT_KEYS: {
        en: 'articles/624741-useful-keyboard-shortcuts-for-working-with-mention-streams',
    },
    DIGEST_DOWNLOAD: {
        en: 'articles/3352522-how-to-download-a-digest',
    },
    SMART_ALERTS: {
        en: 'articles/881485-smart-alerts',
    },
    SEARCH_QUERY_RULES: {
        en: 'articles/642981-guide-for-search-query-construction',
    },
    TEXT_RECOGNITION: {
        en: 'articles/3657215-how-text-recognition-works-in-social-media-images',
    },
    WHAT_ARE_TAGS_AND_HOW_TO_USE: {
        en: 'articles/642138-what-are-tags-and-how-to-use-them',
    },
    HISTORICAL_LIMITS: {
        en: 'articles/461541-history-collection-how-far-back-can-you-monitor-a-topic',
    },
    HISTORY_COLLECTION_LIMITATIONS: {
        en: 'articles/461541-history-collection-how-far-back-can-you-monitor-a-topic#h_993c293922',
    },
    INSTAGRAM_AUTHORIZATION: {
        en: 'articles/2882213-adding-instagram-authorization-in-youscan',
    },
    OVERVIEW_OF_THE_RULES_FUNCTION: {
        en: 'articles/1242011-overview-of-the-rules-function',
    },
    USER_TYPES_DIFFERENTIATION: {
        en: 'articles/1617566-what-s-the-difference-between-a-member-and-a-manager',
    },
    EXTERNAL_ACCESS_TO_A_DASHBOARD: {
        en: 'articles/4855217-custom-dashboards#h_4b02ee0e0e',
    },
    CUSTOM_DASHBOARDS: {
        en: 'articles/4855217-custom-dashboards',
    },
    ADDING_META_ACCOUNT_AUTHORIZATION: {
        en: 'articles/2882213-adding-social-media-account-authorization-in-youscan',
    },
    ADDING_LINKEDIN_ACCOUNT_AUTHORIZATION: {
        en: 'articles/6265954-linkedin-authorization-and-monitoring',
    },
    SAMPLED_TOPICS: {
        en: 'articles/5574261-sampled-topics',
    },
    IMAGE_ANALYSIS_WITH_VISUAL_INSIGHTS: {
        en: 'articles/3178348-image-analysis-with-visual-insights',
    },
    AUDIENCE_INSIGHTS: {
        en: 'articles/6211547-audience-insights',
    },
    SMART_TAGS: {
        en: 'articles/4730314-what-are-smart-tags-and-how-to-enable-them-in-your-mention-stream',
    },
    API: {
        en: 'articles/3573682-working-with-youscan-api',
    },
    AUDIO_MONITORING: {
        en: 'articles/7245614-audio-monitoring',
    },
    INSIGHTS_COPILOT: {
        en: 'articles/7670114-insights-copilot',
    },
};
var HELP_YOUSCAN_PATH_NAMES = {
    CHANNELS_LOCAL: 'CHANNELS_LOCAL',
    CHANNELS_GLOBAL: 'CHANNELS_GLOBAL',
    HOT_KEYS: 'HOT_KEYS',
    DIGEST_DOWNLOAD: 'DIGEST_DOWNLOAD',
    SMART_ALERTS: 'SMART_ALERTS',
    SEARCH_QUERY_RULES: 'SEARCH_QUERY_RULES',
    TEXT_RECOGNITION: 'TEXT_RECOGNITION',
    WHAT_ARE_TAGS_AND_HOW_TO_USE: 'WHAT_ARE_TAGS_AND_HOW_TO_USE',
    HISTORICAL_LIMITS: 'HISTORICAL_LIMITS',
    HISTORY_COLLECTION_LIMITATIONS: 'HISTORY_COLLECTION_LIMITATIONS',
    INSTAGRAM_AUTHORIZATION: 'INSTAGRAM_AUTHORIZATION',
    OVERVIEW_OF_THE_RULES_FUNCTION: 'OVERVIEW_OF_THE_RULES_FUNCTION',
    USER_TYPES_DIFFERENTIATION: 'USER_TYPES_DIFFERENTIATION',
    CUSTOM_DASHBOARDS: 'CUSTOM_DASHBOARDS',
    SAMPLED_TOPICS: 'SAMPLED_TOPICS',
    IMAGE_ANALYSIS_WITH_VISUAL_INSIGHTS: 'IMAGE_ANALYSIS_WITH_VISUAL_INSIGHTS',
    AUDIENCE_INSIGHTS: 'AUDIENCE_INSIGHTS',
    SMART_TAGS: 'SMART_TAGS',
    INSIGHTS_COPILOT: 'INSIGHTS_COPILOT',
    API: 'API',
    AUDIO_MONITORING: 'AUDIO_MONITORING',
    ADDING_LINKEDIN_ACCOUNT_AUTHORIZATION: 'ADDING_LINKEDIN_ACCOUNT_AUTHORIZATION',
};
var PROMO_SITE_PATHS = {
    TERMS_OF_USE: 'terms-of-services',
    PRIVACY_POLICY: 'privacy-policy',
    COMPUTER_VISION_API: 'computer-vision-api',
    PRICE: 'pricing',
    BLOG: 'blog',
    BLOG_SMART_ALERTS: 'blog/smart-alerts',
    BLOG_RASPOZNAVANII_LOGOTIPOV: 'blog/raspoznavanii-logotipov',
};
function goToPromoSite(urlPath, target) {
    if (urlPath === void 0) { urlPath = ''; }
    if (target === void 0) { target = '_blank'; }
    window.open(getLinkToPromoSite(urlPath), target);
}
var PROMO_SITE_LOCALES = {
    uk: 'ua',
    en: '',
    ru: 'kz',
    es: 'es',
    'pt-br': 'pt',
};
var removeUrlExtraSlashes = function (url) { return url.replace(/[/]+/g, '/').replace(/(http[s]?:\/)/g, '$1/'); };
// Should always be EN page where Cyprus legal entity is mentioned (used to process card payments)
var getCardBillingTosLink = function () { return "".concat(PROMO_SITE_HOST, "/").concat(PROMO_SITE_PATHS.TERMS_OF_USE); };
function getLinkToPromoSite(urlPath, locale) {
    if (urlPath === void 0) { urlPath = ''; }
    if (locale === void 0) { locale = (0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK)(); }
    var siteLocale = PROMO_SITE_LOCALES[locale];
    return removeUrlExtraSlashes("".concat(PROMO_SITE_HOST, "/").concat(siteLocale, "/").concat(urlPath));
}
function getLinkToHelpYouscan(pathName, locale) {
    if (pathName === void 0) { pathName = ''; }
    if (locale === void 0) { locale = null; }
    var getHelpPath = function () {
        if (pathName === '')
            return getLocal(locale);
        var path = HELP_YOUSCAN_PATHS[pathName][locale] || HELP_YOUSCAN_PATHS[pathName].en;
        return "".concat(getLocal(locale), "/").concat(path);
    };
    return "".concat(HELP_YOUSCAN_HOST, "/").concat(getHelpPath());
}
function createHelpLink(path, locale) {
    return "".concat(HELP_YOUSCAN_HOST, "/").concat(getLocal(locale), "/").concat(path);
}
function getLinkToAcademyYouscan(urlPath) {
    if (urlPath === void 0) { urlPath = ''; }
    return "".concat(ACADEMY_YOUSCAN_HOST, "/").concat(urlPath);
}
function getLocal(locale) {
    var userLocale = locale || (0,i18n__WEBPACK_IMPORTED_MODULE_0__/* .getLocale */ .JK)();
    if (userLocale === 'pt-br') {
        userLocale = 'pt-BR';
    }
    return userLocale;
}


/***/ }),

/***/ "lXfu":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $D: () => (/* binding */ TREND_SCORE_THRESHOLD),
/* harmony export */   A7: () => (/* binding */ formatBubbleChartData),
/* harmony export */   S6: () => (/* binding */ getCSVDataColumns),
/* harmony export */   du: () => (/* binding */ getCSVRelationsColumns),
/* harmony export */   jk: () => (/* binding */ getVIPointTrend),
/* harmony export */   jv: () => (/* binding */ getPhraseTrend)
/* harmony export */ });
/* unused harmony exports getPropotionalSizing, TREND_HIGHLIGHT_SIZING_RANGE */
/* harmony import */ var percentile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("qOpe");
/* harmony import */ var percentile__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(percentile__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var utils_colors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("KV3C");
/* harmony import */ var colorHandler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("MShE");
var __assign = (undefined && undefined.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __values = (undefined && undefined.__values) || function(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};



var formatBubbleChartData = function (data, usedVolume, trends, shouldHighlightTrends) {
    var context = Object.keys(data)
        .flatMap(function (x) { return data[x]; })
        .filter(function (item) { return item !== undefined; })
        .sort(function (a, b) { return a.count - b.count; });
    if (!context.length)
        return [];
    var dataPercentile = percentile__WEBPACK_IMPORTED_MODULE_0___default()(usedVolume, context, function (item) { return item.imagesCount; });
    var types = [];
    return context === null || context === void 0 ? void 0 : context.reduce(function (acc, item) {
        if (!item)
            return acc;
        var shouldHideData = item.imagesCount < dataPercentile[0].imagesCount
            || item.imagesCount > dataPercentile[1].imagesCount;
        var type = item.type;
        var color = utils_colors__WEBPACK_IMPORTED_MODULE_1__/* .visualInsightsChartColors */ .Cg[type];
        var _a = (0,utils_colors__WEBPACK_IMPORTED_MODULE_1__/* .getColorsByTheme */ .hx)(), textColor = _a.textColor, hintTextColor = _a.hintTextColor;
        var defaultTextColor = (0,colorHandler__WEBPACK_IMPORTED_MODULE_2__/* .isDarkTheme */ .g4)() ? 'white' : textColor;
        var trend = shouldHighlightTrends ? getVIPointTrend(trends, type, item.name) : null;
        var useDefaultStyles = !trend || trend.isTopTrend;
        var datum = {
            type: type,
            trend: trend,
            name: item.name,
            value: item.imagesCount,
            imagesCount: item.imagesCount,
            mentionsCount: item.count,
            color: useDefaultStyles ? color : "".concat(color, "40"),
            dataLabels: __assign({ color: useDefaultStyles ? defaultTextColor : hintTextColor }, (shouldHighlightTrends && useDefaultStyles
                ? {
                    filter: {
                        property: 'radius',
                        operator: '>',
                        value: 5,
                    },
                }
                : {})),
            marker: {
                lineWidth: trend === null || trend === void 0 ? void 0 : trend.highlightSize,
                lineColor: "".concat(color, "60"),
            },
        };
        if (!types.includes(type)) {
            types.push(type);
            acc.push({
                name: type,
                color: color,
                data: shouldHideData
                    ? []
                    : [datum],
                showInLegend: false,
            });
        }
        else {
            acc.forEach(function (x) {
                if (x.name === type && !shouldHideData) {
                    x.data.push(datum);
                    x.showInLegend = true;
                }
                return x;
            });
        }
        return acc;
    }, []);
};
var getPropotionalSizing = function (boundaryValues, entities, currentEntity, accessor) {
    var e_1, _a;
    if (!currentEntity || !entities)
        return null;
    var minValue = entities[0][accessor];
    var maxValue = entities[0][accessor];
    try {
        for (var entities_1 = __values(entities), entities_1_1 = entities_1.next(); !entities_1_1.done; entities_1_1 = entities_1.next()) {
            var x = entities_1_1.value;
            if (x[accessor] < minValue)
                minValue = x[accessor];
            if (x[accessor] > maxValue)
                maxValue = x[accessor];
        }
    }
    catch (e_1_1) { e_1 = { error: e_1_1 }; }
    finally {
        try {
            if (entities_1_1 && !entities_1_1.done && (_a = entities_1.return)) _a.call(entities_1);
        }
        finally { if (e_1) throw e_1.error; }
    }
    return (((currentEntity[accessor] - minValue) / (maxValue - minValue))
        * (boundaryValues.max - boundaryValues.min)) + boundaryValues.min;
};
var TREND_HIGHLIGHT_SIZING_RANGE = { min: 10, max: 18 };
var TREND_SCORE_THRESHOLD = 0.4;
var getVIPointTrend = function (trends, viTagType, viTagName) {
    var _a;
    if (!trends || !trends.data || !trends.data[viTagType])
        return null;
    var trendsByType = trends.data[viTagType];
    var trend = __assign({ info: trendsByType.find(function (t) { return t.key === viTagName; }) }, trends.dateRanges);
    var isTopTrend = ((_a = trend.info) === null || _a === void 0 ? void 0 : _a.score) > TREND_SCORE_THRESHOLD;
    return __assign(__assign({}, trend), { isTopTrend: isTopTrend, highlightSize: isTopTrend
            ? getPropotionalSizing(TREND_HIGHLIGHT_SIZING_RANGE, trendsByType, trend.info, 'score')
            : 0 });
};
var getPhraseTrend = function (node, trends) {
    var _a;
    var trend = {
        info: node.additionalData.trend,
    };
    var isTopTrend = ((_a = trend.info) === null || _a === void 0 ? void 0 : _a.score) > TREND_SCORE_THRESHOLD;
    return __assign(__assign({}, trend), { isTopTrend: isTopTrend, highlightSize: isTopTrend
            ? getPropotionalSizing(TREND_HIGHLIGHT_SIZING_RANGE, trends, trend.info, 'score')
            : 0 });
};
var getCSVDataColumns = function () {
    return [
        { header: l('Name'), accessor: function (a) { return a.label; } },
        { header: l('Unique mentions'), accessor: function (a) { return a.additionalData.uniqueCount; } },
        { header: l('All mentions'), accessor: function (a) { return a.additionalData.count; } },
        { header: l('Subject'), accessor: function (a) { return a.type; } }
    ];
};
var getCSVRelationsColumns = function () {
    return [
        { header: l('From'), accessor: function (a) { return a.from; } },
        { header: l('To'), accessor: function (a) { return a.to; } },
        { header: l('Co-occurrence'), accessor: function (a) { return a.value; } }
    ];
};


/***/ }),

/***/ "vdWx":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A: () => (/* binding */ setPersistentRouteState),
/* harmony export */   Q: () => (/* binding */ getPersistentRouteState)
/* harmony export */ });
/* harmony import */ var utils_localStorage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("S/wQ");

var DefaultRouteState = {
    pathname: '/themes',
    query: {},
};
var STORAGE_KEY = '__routeState__';
var EXPIRE_TIME = 1000 * 60 * 10;
var setPersistentRouteState = function (state) {
    (0,utils_localStorage__WEBPACK_IMPORTED_MODULE_0__/* .saveItemToLocalStorage */ .e7)(STORAGE_KEY, state, EXPIRE_TIME);
};
var getPersistentRouteState = function () {
    return (0,utils_localStorage__WEBPACK_IMPORTED_MODULE_0__/* .getItemFromLocalStorage */ .Wu)(STORAGE_KEY) || DefaultRouteState;
};


/***/ }),

/***/ "aALz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   T: () => (/* binding */ locationToQuery),
/* harmony export */   w: () => (/* binding */ queryToSearch)
/* harmony export */ });
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("Qyje");
/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_0__);

function locationToQuery(location) {
    var rawQuery = qs__WEBPACK_IMPORTED_MODULE_0___default().parse(location.search, { ignoreQueryPrefix: true });
    var query = Object.keys(rawQuery).reduce(function (result, key) {
        var value = rawQuery[key];
        if (value === 'true') {
            value = true;
        }
        else if (value === 'false') {
            value = false;
        }
        else if (!isNaN(value)) {
            value = Number(value);
        }
        result[key] = value;
        return result;
    }, {});
    return query;
}
function queryToSearch(query) {
    var search = qs__WEBPACK_IMPORTED_MODULE_0___default().stringify(query, { addQueryPrefix: true });
    return search;
}


/***/ }),

/***/ "ofyo":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Fh: () => (/* binding */ SENTIMENT_ICON_TYPE),
/* harmony export */   Q2: () => (/* binding */ SENTIMENT_ICON_COLOR),
/* harmony export */   dY: () => (/* binding */ SENTIMENT_NAMES)
/* harmony export */ });
var SENTIMENT_ICON_TYPE = {
    positive: 'positive',
    neutral: 'neutral',
    negative: 'negative',
    undefined: 'sentiment-undefined',
};
var SENTIMENT_ICON_COLOR = {
    positive: 'green',
    neutral: 'blue',
    negative: 'red',
    undefined: 'gray',
};
var SENTIMENT_NAMES = ['positive', 'neutral', 'negative'];


/***/ }),

/***/ "4ok8":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   K: () => (/* binding */ getGeoMapLabel),
/* harmony export */   Kl: () => (/* binding */ getTotalCountCardLabel),
/* harmony export */   W1: () => (/* binding */ getChartTooltipLabel),
/* harmony export */   _b: () => (/* binding */ DEFAULT_STATS_BY),
/* harmony export */   oW: () => (/* binding */ getStatsByOptionsForAnalytics),
/* harmony export */   pM: () => (/* binding */ getGeneralLineChartLabel),
/* harmony export */   wd: () => (/* binding */ AVAILABLE_STATS_BY)
/* harmony export */ });
var AVAILABLE_STATS_BY = {
    mentionsCount: {
        value: 'mentionsCount',
        selectLabel: function () { return l('Mentions'); },
        totalCardLabel: function () { return l('Total mentions'); },
        generalLineChartLabel: function () { return l('Mentions over time'); },
        geoMapLabel: function () { return l('Mentions by location'); },
        chartTooltip: function (value) { return nl('%s mention', '%s mentions', value); },
    },
    authorsCount: {
        value: 'authorsCount',
        selectLabel: function () { return l('Authors'); },
        totalCardLabel: function () { return l('Total authors'); },
        generalLineChartLabel: function () { return l('Authors over time'); },
        geoMapLabel: function () { return l('Authors by location'); },
        chartTooltip: function (value) { return nl('%s author', '%s authors', value); },
    },
    sourcesCount: {
        value: 'sourcesCount',
        selectLabel: function () { return l('Sources'); },
        totalCardLabel: function () { return l('Total sources'); },
        generalLineChartLabel: function () { return l('Sources over time'); },
        geoMapLabel: function () { return l('Sources by location'); },
        chartTooltip: function (value) { return nl('%s source', '%s sources', value); },
    },
    engagementSum: {
        value: 'engagementSum',
        selectLabel: function () { return l('Engagement'); },
        totalCardLabel: function () { return l('Total engagement'); },
        generalLineChartLabel: function () { return l('Engagement over time'); },
        geoMapLabel: function () { return l('Engagement by location'); },
        chartTooltip: function (value) { return nl('%s engagement', '%s engagements', value); },
    },
    viewsSum: {
        value: 'viewsSum',
        selectLabel: function () { return l('Views'); },
        totalCardLabel: function () { return l('Total views'); },
        generalLineChartLabel: function () { return l('Views over time'); },
        geoMapLabel: function () { return l('Views by location'); },
        chartTooltip: function (value) { return nl('%s view', '%s views', value); },
    },
    impressionsSum: {
        value: 'impressionsSum',
        selectLabel: function () { return l('Impressions (owned posts)'); },
        totalCardLabel: function () { return l('Total impressions'); },
        generalLineChartLabel: function () { return l('Impressions over time'); },
        geoMapLabel: function () { return l('Impressions by location'); },
        chartTooltip: function (value) { return nl('%s impression', '%s impressions', value); },
    },
    reachSum: {
        value: 'reachSum',
        selectLabel: function () { return l('Reach (owned posts)'); },
        totalCardLabel: function () { return l('Reach (owned posts)'); },
        generalLineChartLabel: function () { return l('Reach over time'); },
        geoMapLabel: function () { return l('Reach by location'); },
        chartTooltip: function (value) { return l('%s reach'); },
    },
    potentialReachSum: {
        value: 'potentialReachSum',
        selectLabel: function () { return l('Potential reach'); },
        totalCardLabel: function () { return l('Potential reach'); },
        generalLineChartLabel: function () { return l('Potential reach over time'); },
        geoMapLabel: function () { return l('Potential reach by location'); },
        chartTooltip: function () { return l('%s people'); },
    },
    commentsSum: {
        value: 'commentsSum',
        selectLabel: function () { return l('Comments'); },
        totalCardLabel: function () { return l('Total comments'); },
        generalLineChartLabel: function () { return l('Comments over time'); },
        geoMapLabel: function () { return l('Comments by location'); },
        chartTooltip: function (value) { return nl('%s comment', '%s comments', value); },
    },
    repostsSum: {
        value: 'repostsSum',
        selectLabel: function () { return l('Reposts'); },
        totalCardLabel: function () { return l('Total reposts'); },
        generalLineChartLabel: function () { return l('Reposts over time'); },
        geoMapLabel: function () { return l('Reposts by location'); },
        chartTooltip: function (value) { return nl('%s repost', '%s reposts', value); },
    },
    likesSum: {
        value: 'likesSum',
        selectLabel: function () { return l('Likes'); },
        totalCardLabel: function () { return l('Total likes'); },
        generalLineChartLabel: function () { return l('Likes over time'); },
        geoMapLabel: function () { return l('Likes by location'); },
        chartTooltip: function (value) { return nl('%s like', '%s likes', value); },
    },
};
var DEFAULT_STATS_BY = 'mentionsCount';
var getGeneralLineChartLabel = function (value) {
    return AVAILABLE_STATS_BY[value].generalLineChartLabel();
};
var getGeoMapLabel = function (value) {
    return AVAILABLE_STATS_BY[value].geoMapLabel();
};
var getTotalCountCardLabel = function (value) {
    return AVAILABLE_STATS_BY[value].totalCardLabel();
};
var getChartTooltipLabel = function (value, count) {
    return AVAILABLE_STATS_BY[value].chartTooltip(count);
};
var getStatsByOptionsForAnalytics = function () {
    return Object.values(AVAILABLE_STATS_BY)
        .filter(function (s) { return (s.value !== 'sourcesCount') && (s.value !== 'authorsCount'); })
        .map(function (s) { return ({ value: s.value, label: s.selectLabel() }); });
};


/***/ }),

/***/ "pEH6":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   z: () => (/* binding */ exportCsv)
/* harmony export */ });
var __read = (undefined && undefined.__read) || function (o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {
    if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
        if (ar || !(i in from)) {
            if (!ar) ar = Array.prototype.slice.call(from, 0, i);
            ar[i] = from[i];
        }
    }
    return to.concat(ar || Array.prototype.slice.call(from));
};
var standardMapper = function (str) { return (str || '-').toString(); };
var screenQuotationMarks = function (value) { return "\"".concat(value.replace(/"/g, '""'), "\""); };
var mapValue = function (mapper) { return function (value) {
    return screenQuotationMarks(mapper(value));
}; };
var prepareData = function (columns, data) { return __spreadArray([
    columns.map(function (_a) {
        var header = _a.header;
        return header;
    })
], __read(data.map(function (entry) { return columns.map(function (_a) {
    var accessor = _a.accessor, mapper = _a.mapper;
    return mapValue(mapper || standardMapper)(accessor(entry));
}); })), false).map(function (row) { return row.join(','); }).join('\n'); };
var exportCsv = function (fileName, columns, data) {
    var blob = new Blob(['\uFEFF', prepareData(columns, data)], { type: 'text/csv;charset=utf-8' });
    // msSaveOrOpenBlob is specific Navigator property only for IE11+ & Edge
    if (window.navigator && window.navigator.msSaveOrOpenBlob) {
        // Manage IE11+ & Edge
        var msSaveOrOpenBlob = window.navigator.msSaveOrOpenBlob;
        msSaveOrOpenBlob(blob, "".concat(fileName, ".csv"));
    }
    else {
        var a = document.createElement('a');
        a.style.display = 'none';
        document.body.appendChild(a);
        a.setAttribute('href', URL.createObjectURL(blob));
        a.setAttribute('download', "".concat(fileName, ".csv"));
        a.click();
        document.body.removeChild(a);
    }
};


/***/ }),

/***/ "oLrK":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   $J: () => (/* binding */ CONTAINS_OPERATOR),
/* harmony export */   Ev: () => (/* binding */ filterOperatorTypes),
/* harmony export */   W4: () => (/* binding */ excludeFilterOperatorTypes),
/* harmony export */   Y4: () => (/* binding */ RANGE_FILTERS),
/* harmony export */   YU: () => (/* binding */ CONTAINS_EXCLUDE_OPERATOR),
/* harmony export */   ZP: () => (/* binding */ DEFAULT_OPERATOR),
/* harmony export */   Z_: () => (/* binding */ DEFAULT_RANGE_OPERATOR),
/* harmony export */   _U: () => (/* binding */ DEFAULT_EXCLUDE_OPERATOR),
/* harmony export */   ey: () => (/* binding */ FROM_RANGE_OPERATOR),
/* harmony export */   k8: () => (/* binding */ TEXT_FILTER_TYPE),
/* harmony export */   ro: () => (/* binding */ getSavingFilter),
/* harmony export */   zy: () => (/* binding */ TO_RANGE_OPERATOR)
/* harmony export */ });
/* unused harmony exports TWITTER_SOURCE_NAME, isTwitterExcluded, isTwitterIncluded */
/* harmony import */ var utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("9jXX");

var getSavingFilter = function (filter) {
    return {
        from: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_0__/* .toYYYYMMDDTHHMM */ .oX)(filter.from),
        to: (0,utils_dates_dateUtils__WEBPACK_IMPORTED_MODULE_0__/* .toYYYYMMDDTHHMM */ .oX)(filter.to),
        dedup: filter.dedup,
    };
};
var TWITTER_SOURCE_NAME = 'twitter.com';
var isTwitterExcluded = function (filter) { var _a, _b; return ((_b = (_a = filter.source) === null || _a === void 0 ? void 0 : _a.exclude) === null || _b === void 0 ? void 0 : _b.includes(TWITTER_SOURCE_NAME)) === true; };
var isTwitterIncluded = function (filter) { var _a, _b; return !isTwitterExcluded(filter) && (!((_a = filter.source) === null || _a === void 0 ? void 0 : _a.include) || ((_b = filter.source.include) === null || _b === void 0 ? void 0 : _b.includes(TWITTER_SOURCE_NAME))); };
var DEFAULT_OPERATOR = 'oneOf';
var CONTAINS_OPERATOR = 'containsAll';
var DEFAULT_EXCLUDE_OPERATOR = 'notOneOf';
var CONTAINS_EXCLUDE_OPERATOR = 'notContainsAll';
var DEFAULT_RANGE_OPERATOR = 'range';
var FROM_RANGE_OPERATOR = 'greaterOrEqual';
var TO_RANGE_OPERATOR = 'lessOrEqual';
var filterOperatorTypes = [DEFAULT_OPERATOR, CONTAINS_OPERATOR];
var excludeFilterOperatorTypes = [DEFAULT_EXCLUDE_OPERATOR, CONTAINS_EXCLUDE_OPERATOR];
var TEXT_FILTER_TYPE = 'text';
var RANGE_FILTERS = ['authorSubscribers', 'channelSubscribers', 'authorAge'];


/***/ }),

/***/ "ZFgV":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   h: () => (/* binding */ translateAggregationMetricCased),
/* harmony export */   p: () => (/* binding */ translateAggregationMetric)
/* harmony export */ });
var getCasedTranslations = function (num) { return ({
    mentionsCount: nl('mention', 'mentions', num, 'aggregationMetric'),
    authorsCount: nl('author', 'authors', num, 'aggregationMetric'),
    sourcesCount: nl('source', 'sources', num, 'aggregationMetric'),
    engagementSum: l('engagement', 'aggregationMetric'),
    viewsSum: nl('view', 'views', num, 'aggregationMetric'),
    impressionsSum: nl('impression', 'impressions', num, 'aggregationMetric'),
    reachSum: l('reach', 'aggregationMetric'),
    potentialReachSum: l('potential reach', 'aggregationMetric'),
    likesSum: nl('like', 'likes', num, 'aggregationMetric'),
    repostsSum: nl('repost', 'reposts', num, 'aggregationMetric'),
    commentsSum: nl('comment', 'comments', num, 'aggregationMetric'),
    sentimentRate: nl('nsr', 'nsr', num, 'aggregationMetric'),
}); };
var translateAggregationMetricCased = function (aggregationMetric, num) {
    return getCasedTranslations(num)[aggregationMetric];
};
var getTranslations = function () { return ({
    mentionsCount: l('Mentions', 'aggregationMetric'),
    authorsCount: l('Authors', 'aggregationMetric'),
    sourcesCount: l('Sources', 'aggregationMetric'),
    engagementSum: l('Engagement', 'aggregationMetric'),
    viewsSum: l('Views', 'aggregationMetric'),
    impressionsSum: l('Impressions (owned posts)', 'aggregationMetric'),
    reachSum: l('Reach (owned posts)', 'aggregationMetric'),
    potentialReachSum: l('Potential reach', 'aggregationMetric'),
    likesSum: l('Likes', 'aggregationMetric'),
    repostsSum: l('Reposts', 'aggregationMetric'),
    commentsSum: l('Comments', 'aggregationMetric'),
    sentimentRate: l('NSR', 'aggregationMetric'),
}); };
var translateAggregationMetric = function (aggregationMetric) {
    return getTranslations()[aggregationMetric];
};


/***/ }),

/***/ "e+Tg":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   Q: () => (/* binding */ translateAggregationGroup),
/* harmony export */   j: () => (/* binding */ translateAggregation)
/* harmony export */ });
var getTranslations = function () { return ({
    // are part of Custom Dashboard filtering mechanism
    sentiment: l('Sentiment'),
    postTypes: l('Post type'),
    contentTypes: l('Content type', 'aggregation'),
    collectionMethods: l('Collection method'),
    indirect: l('Indirect mentions'),
    languages: l('Language'),
    systemTags: l('Auto-category'),
    subjects: l('Subject'),
    resourceTypes: l('Source type'),
    sources: l('Source'),
    sourceFormat: l('Source-specific format'),
    starRating: l('Rating'),
    authorGender: l('Author\'s gender'),
    authorAgeRange: l('Author\'s age range'),
    authors: l('Author'),
    channels: l('Publication place'),
    countryGroups: l('World region'),
    countries: l('Country'),
    regionIds: l('Region'),
    cityIds: l('City'),
    tags: l('Tag'),
    aspects: l('Aspects'),
    trends: l('Trends'),
    imageBrands: l('Logo'),
    imageTypes: l('Type'),
    imageSubtypes: l('Subtype'),
    imageObjects: l('Object'),
    imageScenes: l('Scene'),
    imagePeople: l('Person', 'filter'),
    imageContentSensitivity: l('Content sensitivity'),
    imageActivities: l('Activity'),
    imageColors: l('Color'),
    words: l('Words', 'aggregation'),
    authorAge: l('Author\'s age', 'aggregation'),
    authorInterests: l('Author\'s interests', 'aggregation'),
    authorJobs: l('Author\'s occupations', 'aggregation'),
    authorInterestCategories: l('Author\'s interest categories', 'aggregation'),
    links: l('Link', 'aggregation'),
    hosts: l('Host', 'aggregation'),
    emojis: l('Emoji', 'aggregation'),
    objects: l('Objects'),
    imageTags: l('Image tag', 'aggregation'),
    sentimentAspects: l('Aspects'),
    date: l('Date', 'aggregation'),
    // are not used in Custom Dashboards so the translations can be meaningless, pls check
    influencers: l('influencers', 'aggregation'),
    influenceScore: l('Influence Score', 'aggregation'),
    engagementRates: l('Engagement rate', 'aggregation'),
    regions: l('Region'),
    cities: l('City'),
    significantWords: l('Significant Word', 'aggregation'),
    discussions: l('Discussion', 'aggregation'),
    rules: l('Rule', 'aggregation'),
    sentimentAffects: l('Sentiment affect', 'aggregation'),
    topics: l('Topic', 'aggregation'),
    origins: l('Origin', 'aggregation'),
    dates: l('Date', 'aggregation'),
    engagement: l('Engagement', 'aggregation'),
    authorsCount: l('Authors count', 'aggregation'),
    sourcesCount: l('Sources count', 'aggregation'),
    viewsCount: l('Views count', 'aggregation'),
    subscribersCount: l('Subscribers count', 'aggregation'),
    maxDate: l('Max date', 'aggregation'),
    mentionIds: l('Mention IDs', 'aggregation'),
    medianAuthorEngagement: l('Median author engagement', 'aggregation'),
    metricTotal: l('Metric total', 'aggregation'),
    sponsored: l('Sponsored content', 'aggregation'),
}); };
var translateAggregation = function (aggregation) {
    return getTranslations()[aggregation] || aggregation;
};
var getGroupTranslations = function () { return ({
    common: l('Frequent categories', 'aggregationGroup'),
    sources: l('Sources', 'aggregationGroup'),
    author: l('Author', 'aggregationGroup'),
    geo: l('Geography', 'aggregationGroup'),
    textAnalysis: l('Mention text analysis', 'aggregationGroup'),
    imageAnalysis: l('Image analysis', 'aggregationGroup'),
    others: l('Others', 'aggregationGroup'),
}); };
var translateAggregationGroup = function (group) {
    return getGroupTranslations()[group] || group;
};


/***/ }),

/***/ "Rotz":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   O$: () => (/* binding */ getCollectionMethodTranslations),
/* harmony export */   sL: () => (/* binding */ getCollectionMethodsFilterTranslation),
/* harmony export */   z7: () => (/* binding */ getCollectionMethodsFilterLabel)
/* harmony export */ });
/* eslint-disable max-len */
var getCollectionMethodTranslations = function () { return ({
    text: {
        label: l('Text', 'collectionMethodFilter'),
        title: l('Mentions with keywords that match your topic query'),
    },
    ocrText: {
        label: l('Text recognition', 'collectionMethodFilter'),
        title: l('Mentions with images that match your topic query'),
    },
    imageLogo: {
        label: l('Logo recognition', 'collectionMethodFilter'),
        title: l('Mentions that have images with your brand logo'),
    },
    imageFeature: {
        label: l('Image recognition', 'collectionMethodFilter'),
        title: l('Posts with specific objects, scenes, people, and activities in the image'),
    },
    channel: {
        label: l('Channel', 'collectionMethodFilter'),
        title: l('All posts and comments published on added channels'),
    },
    manual: {
        label: l('Manually added', 'collectionMethodFilter'),
        title: l('Mentions that were added to your topic manually'),
    },
    imageSimilarity: {
        label: l('Similar image', 'collectionMethodFilter'),
        title: l('Posts with images that are similar to the preset image.'),
    },
}); };
var getCollectionMethodsFilterLabel = function (key) {
    return getCollectionMethodsFilterTranslation(key).label;
};
function getCollectionMethodsFilterTranslation(key) {
    return getCollectionMethodTranslations()[key] || {
        label: key,
        title: key,
    };
}


/***/ }),

/***/ "OA2L":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, {
  Ip: () => (/* binding */ getCountryGroupLabel),
  X7: () => (/* binding */ getCountryGroupTranslation),
  $: () => (/* binding */ getTranslations)
});

// UNUSED EXPORTS: getCountryGroupTitle

;// CONCATENATED MODULE: ./src/models/Country.ts
var _a;
// https://github.com/youscan/shared-contracts/blob/master/Source/Contracts/IsoCountryCode.cs
var CountryCode;
(function (CountryCode) {
    CountryCode["AF"] = "af";
    CountryCode["AL"] = "al";
    CountryCode["DZ"] = "dz";
    CountryCode["AS"] = "as";
    CountryCode["AD"] = "ad";
    CountryCode["AO"] = "ao";
    CountryCode["AI"] = "ai";
    CountryCode["AQ"] = "aq";
    CountryCode["AG"] = "ag";
    CountryCode["AR"] = "ar";
    CountryCode["AM"] = "am";
    CountryCode["AW"] = "aw";
    CountryCode["AU"] = "au";
    CountryCode["AT"] = "at";
    CountryCode["AZ"] = "az";
    CountryCode["BS"] = "bs";
    CountryCode["BH"] = "bh";
    CountryCode["BD"] = "bd";
    CountryCode["BB"] = "bb";
    CountryCode["BY"] = "by";
    CountryCode["BE"] = "be";
    CountryCode["BZ"] = "bz";
    CountryCode["BJ"] = "bj";
    CountryCode["BM"] = "bm";
    CountryCode["BT"] = "bt";
    CountryCode["BO"] = "bo";
    CountryCode["BQ"] = "bq";
    CountryCode["BA"] = "ba";
    CountryCode["BW"] = "bw";
    CountryCode["BV"] = "bv";
    CountryCode["BR"] = "br";
    CountryCode["IO"] = "io";
    CountryCode["BN"] = "bn";
    CountryCode["BG"] = "bg";
    CountryCode["BF"] = "bf";
    CountryCode["BI"] = "bi";
    CountryCode["CV"] = "cv";
    CountryCode["KH"] = "kh";
    CountryCode["CM"] = "cm";
    CountryCode["CA"] = "ca";
    CountryCode["KY"] = "ky";
    CountryCode["CF"] = "cf";
    CountryCode["TD"] = "td";
    CountryCode["CL"] = "cl";
    CountryCode["CN"] = "cn";
    CountryCode["CX"] = "cx";
    CountryCode["CC"] = "cc";
    CountryCode["CO"] = "co";
    CountryCode["KM"] = "km";
    CountryCode["CG"] = "cg";
    CountryCode["CD"] = "cd";
    CountryCode["CK"] = "ck";
    CountryCode["CR"] = "cr";
    CountryCode["HR"] = "hr";
    CountryCode["CU"] = "cu";
    CountryCode["CW"] = "cw";
    CountryCode["CY"] = "cy";
    CountryCode["CZ"] = "cz";
    CountryCode["CI"] = "ci";
    CountryCode["DK"] = "dk";
    CountryCode["DJ"] = "dj";
    CountryCode["DM"] = "dm";
    CountryCode["DO"] = "do";
    CountryCode["EC"] = "ec";
    CountryCode["EG"] = "eg";
    CountryCode["SV"] = "sv";
    CountryCode["GQ"] = "gq";
    CountryCode["ER"] = "er";
    CountryCode["EE"] = "ee";
    CountryCode["SZ"] = "sz";
    CountryCode["ET"] = "et";
    CountryCode["FK"] = "fk";
    CountryCode["FO"] = "fo";
    CountryCode["FJ"] = "fj";
    CountryCode["FI"] = "fi";
    CountryCode["FR"] = "fr";
    CountryCode["GF"] = "gf";
    CountryCode["PF"] = "pf";
    CountryCode["TF"] = "tf";
    CountryCode["GA"] = "ga";
    CountryCode["GM"] = "gm";
    CountryCode["GE"] = "ge";
    CountryCode["DE"] = "de";
    CountryCode["GH"] = "gh";
    CountryCode["GI"] = "gi";
    CountryCode["GR"] = "gr";
    CountryCode["GL"] = "gl";
    CountryCode["GD"] = "gd";
    CountryCode["GP"] = "gp";
    CountryCode["GU"] = "gu";
    CountryCode["GT"] = "gt";
    CountryCode["GG"] = "gg";
    CountryCode["GN"] = "gn";
    CountryCode["GW"] = "gw";
    CountryCode["GY"] = "gy";
    CountryCode["HT"] = "ht";
    CountryCode["HM"] = "hm";
    CountryCode["VA"] = "va";
    CountryCode["HN"] = "hn";
    CountryCode["HK"] = "hk";
    CountryCode["HU"] = "hu";
    CountryCode["IS"] = "is";
    CountryCode["IN"] = "in";
    CountryCode["ID"] = "id";
    CountryCode["IR"] = "ir";
    CountryCode["IQ"] = "iq";
    CountryCode["IE"] = "ie";
    CountryCode["IM"] = "im";
    CountryCode["IL"] = "il";
    CountryCode["IT"] = "it";
    CountryCode["JM"] = "jm";
    CountryCode["JP"] = "jp";
    CountryCode["JE"] = "je";
    CountryCode["JO"] = "jo";
    CountryCode["KZ"] = "kz";
    CountryCode["KE"] = "ke";
    CountryCode["KI"] = "ki";
    CountryCode["KP"] = "kp";
    CountryCode["KR"] = "kr";
    CountryCode["KW"] = "kw";
    CountryCode["KG"] = "kg";
    CountryCode["LA"] = "la";
    CountryCode["LV"] = "lv";
    CountryCode["LB"] = "lb";
    CountryCode["LS"] = "ls";
    CountryCode["LR"] = "lr";
    CountryCode["LY"] = "ly";
    CountryCode["LI"] = "li";
    CountryCode["LT"] = "lt";
    CountryCode["LU"] = "lu";
    CountryCode["MO"] = "mo";
    CountryCode["MG"] = "mg";
    CountryCode["MW"] = "mw";
    CountryCode["MY"] = "my";
    CountryCode["MV"] = "mv";
    CountryCode["ML"] = "ml";
    CountryCode["MT"] = "mt";
    CountryCode["MH"] = "mh";
    CountryCode["MQ"] = "mq";
    CountryCode["MR"] = "mr";
    CountryCode["MU"] = "mu";
    CountryCode["YT"] = "yt";
    CountryCode["MX"] = "mx";
    CountryCode["FM"] = "fm";
    CountryCode["MD"] = "md";
    CountryCode["MC"] = "mc";
    CountryCode["MN"] = "mn";
    CountryCode["ME"] = "me";
    CountryCode["MS"] = "ms";
    CountryCode["MA"] = "ma";
    CountryCode["MZ"] = "mz";
    CountryCode["MM"] = "mm";
    CountryCode["NA"] = "na";
    CountryCode["NR"] = "nr";
    CountryCode["NP"] = "np";
    CountryCode["NL"] = "nl";
    CountryCode["NC"] = "nc";
    CountryCode["NZ"] = "nz";
    CountryCode["NI"] = "ni";
    CountryCode["NE"] = "ne";
    CountryCode["NG"] = "ng";
    CountryCode["NU"] = "nu";
    CountryCode["NF"] = "nf";
    CountryCode["MK"] = "mk";
    CountryCode["MP"] = "mp";
    CountryCode["NO"] = "no";
    CountryCode["OM"] = "om";
    CountryCode["PK"] = "pk";
    CountryCode["PW"] = "pw";
    CountryCode["PS"] = "ps";
    CountryCode["PA"] = "pa";
    CountryCode["PG"] = "pg";
    CountryCode["PY"] = "py";
    CountryCode["PE"] = "pe";
    CountryCode["PH"] = "ph";
    CountryCode["PN"] = "pn";
    CountryCode["PL"] = "pl";
    CountryCode["PT"] = "pt";
    CountryCode["PR"] = "pr";
    CountryCode["QA"] = "qa";
    CountryCode["RO"] = "ro";
    CountryCode["RU"] = "ru";
    CountryCode["RW"] = "rw";
    CountryCode["RE"] = "re";
    CountryCode["BL"] = "bl";
    CountryCode["SH"] = "sh";
    CountryCode["KN"] = "kn";
    CountryCode["LC"] = "lc";
    CountryCode["MF"] = "mf";
    CountryCode["PM"] = "pm";
    CountryCode["VC"] = "vc";
    CountryCode["WS"] = "ws";
    CountryCode["SM"] = "sm";
    CountryCode["ST"] = "st";
    CountryCode["SA"] = "sa";
    CountryCode["SN"] = "sn";
    CountryCode["RS"] = "rs";
    CountryCode["SC"] = "sc";
    CountryCode["SL"] = "sl";
    CountryCode["SG"] = "sg";
    CountryCode["SX"] = "sx";
    CountryCode["SK"] = "sk";
    CountryCode["SI"] = "si";
    CountryCode["SB"] = "sb";
    CountryCode["SO"] = "so";
    CountryCode["ZA"] = "za";
    CountryCode["GS"] = "gs";
    CountryCode["SS"] = "ss";
    CountryCode["ES"] = "es";
    CountryCode["LK"] = "lk";
    CountryCode["SD"] = "sd";
    CountryCode["SR"] = "sr";
    CountryCode["SJ"] = "sj";
    CountryCode["SE"] = "se";
    CountryCode["CH"] = "ch";
    CountryCode["SY"] = "sy";
    CountryCode["TW"] = "tw";
    CountryCode["TJ"] = "tj";
    CountryCode["TZ"] = "tz";
    CountryCode["TH"] = "th";
    CountryCode["TL"] = "tl";
    CountryCode["TG"] = "tg";
    CountryCode["TK"] = "tk";
    CountryCode["TO"] = "to";
    CountryCode["TT"] = "tt";
    CountryCode["TN"] = "tn";
    CountryCode["TR"] = "tr";
    CountryCode["TM"] = "tm";
    CountryCode["TC"] = "tc";
    CountryCode["TV"] = "tv";
    CountryCode["UG"] = "ug";
    CountryCode["UA"] = "ua";
    CountryCode["AE"] = "ae";
    CountryCode["GB"] = "gb";
    CountryCode["UM"] = "um";
    CountryCode["US"] = "us";
    CountryCode["UY"] = "uy";
    CountryCode["UZ"] = "uz";
    CountryCode["VU"] = "vu";
    CountryCode["VE"] = "ve";
    CountryCode["VN"] = "vn";
    CountryCode["VG"] = "vg";
    CountryCode["VI"] = "vi";
    CountryCode["WF"] = "wf";
    CountryCode["EH"] = "eh";
    CountryCode["YE"] = "ye";
    CountryCode["ZM"] = "zm";
    CountryCode["ZW"] = "zw";
    CountryCode["AX"] = "ax";
    CountryCode["XK"] = "xk";
})(CountryCode || (CountryCode = {}));
var CountryGroup;
(function (CountryGroup) {
    CountryGroup["Europe"] = "europe";
    CountryGroup["Asia"] = "asia";
    CountryGroup["NorthAmerica"] = "northAmerica";
    CountryGroup["CentralAmerica"] = "centralAmerica";
    CountryGroup["TheCaribbean"] = "theCaribbean";
    CountryGroup["SouthAmerica"] = "southAmerica";
    CountryGroup["Africa"] = "africa";
    CountryGroup["Oceania"] = "oceania";
})(CountryGroup || (CountryGroup = {}));
var CountryGroups = (_a = {},
    _a[CountryGroup.Europe] = [
        CountryCode.AD,
        CountryCode.AL,
        CountryCode.AT,
        CountryCode.BA,
        CountryCode.BE,
        CountryCode.BG,
        CountryCode.BY,
        CountryCode.CH,
        CountryCode.CY,
        CountryCode.CZ,
        CountryCode.DE,
        CountryCode.DK,
        CountryCode.EE,
        CountryCode.ES,
        CountryCode.FI,
        CountryCode.FR,
        CountryCode.GB,
        CountryCode.GR,
        CountryCode.HR,
        CountryCode.HU,
        CountryCode.IE,
        CountryCode.IS,
        CountryCode.IT,
        CountryCode.LI,
        CountryCode.LT,
        CountryCode.LU,
        CountryCode.LV,
        CountryCode.MC,
        CountryCode.MD,
        CountryCode.ME,
        CountryCode.MK,
        CountryCode.MT,
        CountryCode.NL,
        CountryCode.NO,
        CountryCode.PL,
        CountryCode.PT,
        CountryCode.RU,
        CountryCode.RO,
        CountryCode.RS,
        CountryCode.SE,
        CountryCode.SI,
        CountryCode.SK,
        CountryCode.SM,
        CountryCode.UA,
        CountryCode.XK // Kosovo
    ],
    _a[CountryGroup.Asia] = [
        CountryCode.AF,
        CountryCode.AM,
        CountryCode.AZ,
        CountryCode.BH,
        CountryCode.BD,
        CountryCode.BT,
        CountryCode.BN,
        CountryCode.KH,
        CountryCode.CN,
        CountryCode.TL,
        CountryCode.GE,
        CountryCode.HK,
        CountryCode.IN,
        CountryCode.ID,
        CountryCode.IR,
        CountryCode.IQ,
        CountryCode.IL,
        CountryCode.JP,
        CountryCode.JO,
        CountryCode.KZ,
        CountryCode.KW,
        CountryCode.KG,
        CountryCode.LA,
        CountryCode.LB,
        CountryCode.MO,
        CountryCode.MY,
        CountryCode.MV,
        CountryCode.MN,
        CountryCode.MM,
        CountryCode.NP,
        CountryCode.KP,
        CountryCode.KR,
        CountryCode.OM,
        CountryCode.PK,
        CountryCode.PS,
        CountryCode.QA,
        CountryCode.SA,
        CountryCode.SG,
        CountryCode.LK,
        CountryCode.SY,
        CountryCode.TW,
        CountryCode.TJ,
        CountryCode.TH,
        CountryCode.PH,
        CountryCode.TR,
        CountryCode.TM,
        CountryCode.AE,
        CountryCode.UZ,
        CountryCode.VN,
        CountryCode.YE // Yemen
    ],
    _a[CountryGroup.NorthAmerica] = [
        CountryCode.CA,
        CountryCode.US,
        CountryCode.MX // Mexico
    ],
    _a[CountryGroup.CentralAmerica] = [
        CountryCode.GT,
        CountryCode.BZ,
        CountryCode.HN,
        CountryCode.SV,
        CountryCode.NI,
        CountryCode.CR,
        CountryCode.PA // Panama
    ],
    _a[CountryGroup.TheCaribbean] = [
        CountryCode.AG,
        CountryCode.AW,
        CountryCode.BS,
        CountryCode.BB,
        CountryCode.CU,
        CountryCode.DM,
        CountryCode.GD,
        CountryCode.GP,
        CountryCode.HT,
        CountryCode.KY,
        CountryCode.TC,
        CountryCode.VG,
        CountryCode.VI,
        CountryCode.JM,
        CountryCode.MQ,
        CountryCode.PR,
        CountryCode.DO,
        CountryCode.KN,
        CountryCode.VC,
        CountryCode.LC // Saint Lucia
    ],
    _a[CountryGroup.SouthAmerica] = [
        CountryCode.AR,
        CountryCode.BO,
        CountryCode.BR,
        CountryCode.CL,
        CountryCode.CO,
        CountryCode.EC,
        CountryCode.GY,
        CountryCode.PY,
        CountryCode.PE,
        CountryCode.SR,
        CountryCode.TT,
        CountryCode.UY,
        CountryCode.VE,
        CountryCode.GF // French Guiana
    ],
    _a[CountryGroup.Africa] = [
        CountryCode.DZ,
        CountryCode.AO,
        CountryCode.BJ,
        CountryCode.BW,
        CountryCode.BF,
        CountryCode.BI,
        CountryCode.CM,
        CountryCode.CV,
        CountryCode.CF,
        CountryCode.TD,
        CountryCode.KM,
        CountryCode.CG,
        CountryCode.CD,
        CountryCode.DJ,
        CountryCode.EG,
        CountryCode.GQ,
        CountryCode.ER,
        CountryCode.SZ,
        CountryCode.ET,
        CountryCode.GA,
        CountryCode.GH,
        CountryCode.GN,
        CountryCode.GW,
        CountryCode.CI,
        CountryCode.KE,
        CountryCode.LS,
        CountryCode.LR,
        CountryCode.LY,
        CountryCode.MG,
        CountryCode.MW,
        CountryCode.ML,
        CountryCode.MR,
        CountryCode.MU,
        CountryCode.MA,
        CountryCode.MZ,
        CountryCode.NA,
        CountryCode.NE,
        CountryCode.NG,
        CountryCode.RW,
        CountryCode.ST,
        CountryCode.SN,
        CountryCode.SC,
        CountryCode.SL,
        CountryCode.SO,
        CountryCode.ZA,
        CountryCode.SS,
        CountryCode.SD,
        CountryCode.TZ,
        CountryCode.GM,
        CountryCode.TG,
        CountryCode.TN,
        CountryCode.UG,
        CountryCode.ZM,
        CountryCode.ZW // Zimbabwe
    ],
    _a[CountryGroup.Oceania] = [
        CountryCode.AU,
        CountryCode.FJ,
        CountryCode.NR,
        CountryCode.NZ,
        CountryCode.PW // Palau
    ],
    _a);

// EXTERNAL MODULE: ./src/utils/translations/getCountryNameTranslation.js
var getCountryNameTranslation = __webpack_require__("ExDt");
;// CONCATENATED MODULE: ./src/utils/translations/countryGroupTranslations.ts


var getTranslations = function () { return ({
    europe: {
        label: l('Europe', 'countryGroup'),
        title: listOfCountries('europe'),
    },
    asia: {
        label: l('Asia', 'countryGroup'),
        title: listOfCountries('asia'),
    },
    northAmerica: {
        label: l('North America', 'countryGroup'),
        title: listOfCountries('northAmerica'),
    },
    centralAmerica: {
        label: l('Central America', 'countryGroup'),
        title: listOfCountries('centralAmerica'),
    },
    theCaribbean: {
        label: l('The Caribbean', 'countryGroup'),
        title: listOfCountries('theCaribbean'),
    },
    southAmerica: {
        label: l('South America', 'countryGroup'),
        title: listOfCountries('southAmerica'),
    },
    africa: {
        label: l('Africa', 'countryGroup'),
        title: listOfCountries('africa'),
    },
    oceania: {
        label: l('Oceania', 'countryGroup'),
        title: listOfCountries('oceania'),
    },
}); };
var getCountryGroupTranslation = function (key) {
    return getTranslations()[key] || { label: key, title: '' };
};
var getCountryGroupLabel = function (key) {
    return getCountryGroupTranslation(key).label;
};
var getCountryGroupTitle = function (key) {
    return getCountryGroupTranslation(key).title;
};
var getListOfCountries = function (key) {
    return CountryGroups[key].map(function (code) { return (0,getCountryNameTranslation/* getCountryNameTranslation */.RB)(code); }).join(', ');
};
var getCachedListOfCountries = function () {
    var cache = {};
    return function (key) {
        if (cache[key])
            return cache[key];
        var countries = getListOfCountries(key);
        cache[key] = countries;
        return countries;
    };
};
var listOfCountries = getCachedListOfCountries();


/***/ }),

/***/ "U8ND":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   I: () => (/* binding */ translateLogo)
/* harmony export */ });
var translateLogo = function (key) { return ({
    'Parimatch symbol': 'Parimatch Rombs',
    'Parimatch symbol PM': 'Parimatch Monogram',
})[key] || key; };


/***/ }),

/***/ "/veU":
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   A9: () => (/* binding */ translateTrendTypesGroup),
/* harmony export */   _n: () => (/* binding */ getTrendTypesTranslationByKey)
/* harmony export */ });
/* unused harmony export getTrendTypes */
var getTrendTypesTranslations = function () { return ({
    all: l('All', 'trendType'),
    viralNews: l('Viral', 'trendType'),
    popularVideos: l('Popular videos', 'trendType'),
    popularVideo: l('Popular video', 'trendType'),
    popularPosts: l('Popular posts', 'trendType'),
    popularPost: l('Popular post', 'trendType'),
    activeDiscussions: l('Active discussions', 'trendType'),
    activeDiscussion: l('Active discussion', 'trendType'),
}); };
var getTrendTypes = function () { return [
    { value: 'all', label: getTrendTypesTranslationByKey('all') },
    { value: 'viralNews', label: getTrendTypesTranslationByKey('viralNews') },
    { value: 'popularVideo', label: getTrendTypesTranslationByKey('popularVideo') },
    { value: 'popularPost', label: getTrendTypesTranslationByKey('popularPost') },
    { value: 'activeDiscussion', label: getTrendTypesTranslationByKey('activeDiscussion') },
]; };
var translateTrendTypesGroup = function (groupName) {
    return {
        all: 'all',
        viralNews: 'viralNews',
        popularVideos: 'popularVideo',
        popularPosts: 'popularPost',
        activeDiscussions: 'activeDiscussion',
    }[groupName] || groupName;
};
var getTrendTypesTranslationByKey = function (key) { return getTrendTypesTranslations()[key] || key; };


/***/ }),

/***/ "T374":
/***/ (() => {

/* (ignored) */

/***/ }),

/***/ "R50I":
/***/ ((module) => {

"use strict";
module.exports = /*#__PURE__*/JSON.parse('{"refreshInterval":30000,"logo":"/static/images/logo/mainVersion/logo_outline.svg","bg":"#001F26","cardBgColor":"linear-gradient(135deg,#60ca23,#35d88a)","textColor":"#19191a","showCredit":false,"showSentiment":false,"headerStyle":{"height":"120px"},"logoStyle":{"height":"60%"},"creditBg":"#001F26","creditStyle":{"height":"80px","align-items":"center"},"creditImageSrc":"/static/images/youscan.io.svg","creditImageStyle":{"height":"70%"}}');

/***/ }),

/***/ "ecuP":
/***/ ((module) => {

"use strict";
module.exports = /*#__PURE__*/JSON.parse('{"EN":{"UA":"Ukraine","RU":"Russia","BY":"Belarus","PL":"Poland","GB":"United Kingdom","US":"United States","AF":"Afghanistan","AL":"Albania","DZ":"Algeria","AS":"American Samoa","AD":"Andorra","AO":"Angola","AI":"Anguilla","AQ":"Antarctica","AG":"Antigua and Barbuda","AR":"Argentina","AM":"Armenia","AW":"Aruba","AU":"Australia","AT":"Austria","AZ":"Azerbaijan","BS":"Bahamas","BH":"Bahrain","BD":"Bangladesh","BB":"Barbados","BE":"Belgium","BZ":"Belize","BJ":"Benin","BM":"Bermuda","BT":"Bhutan","BO":"Bolivia","BA":"Bosnia and Herzegovina","BW":"Botswana","BV":"Bouvet Island","BR":"Brazil","IO":"British Indian Ocean Territory","VG":"British Virgin Islands","BN":"Brunei","BG":"Bulgaria","BF":"Burkina Faso","BI":"Burundi","KH":"Cambodia","CM":"Cameroon","CA":"Canada","CT":"Canton and Enderbury Islands","CV":"Cape Verde","KY":"Cayman Islands","CF":"Central African Republic","TD":"Chad","CL":"Chile","CN":"China","CX":"Christmas Island","CC":"Cocos [Keeling] Islands","CO":"Colombia","KM":"Comoros","CG":"Congo - Brazzaville","CD":"Congo - Kinshasa","CK":"Cook Islands","CR":"Costa Rica","HR":"Croatia","CU":"Cuba","CY":"Cyprus","CZ":"Czech Republic","CI":"Côte d’Ivoire","DK":"Denmark","DJ":"Djibouti","DM":"Dominica","DO":"Dominican Republic","NQ":"Dronning Maud Land","EC":"Ecuador","EG":"Egypt","SV":"El Salvador","GQ":"Equatorial Guinea","ER":"Eritrea","EE":"Estonia","ET":"Ethiopia","FK":"Falkland Islands","FO":"Faroe Islands","FJ":"Fiji","FI":"Finland","FR":"France","GF":"French Guiana","PF":"French Polynesia","TF":"French Southern Territories","FQ":"French Southern and Antarctic Territories","GA":"Gabon","GM":"Gambia","GE":"Georgia","DE":"Germany","GH":"Ghana","GI":"Gibraltar","GR":"Greece","GL":"Greenland","GD":"Grenada","GP":"Guadeloupe","GU":"Guam","GT":"Guatemala","GG":"Guernsey","GN":"Guinea","GW":"Guinea-Bissau","GY":"Guyana","HT":"Haiti","HM":"Heard Island and McDonald Islands","HN":"Honduras","HK":"Hong Kong SAR China","HU":"Hungary","IS":"Iceland","IN":"India","ID":"Indonesia","IR":"Iran","IQ":"Iraq","IE":"Ireland","IM":"Isle of Man","IL":"Israel","IT":"Italy","JM":"Jamaica","JP":"Japan","JE":"Jersey","JT":"Johnston Island","JO":"Jordan","KZ":"Kazakhstan","KE":"Kenya","KI":"Kiribati","KW":"Kuwait","KG":"Kyrgyzstan","LA":"Laos","LV":"Latvia","LB":"Lebanon","LS":"Lesotho","LR":"Liberia","LY":"Libya","LI":"Liechtenstein","LT":"Lithuania","LU":"Luxembourg","MO":"Macau SAR China","MK":"Macedonia","MG":"Madagascar","MW":"Malawi","MY":"Malaysia","MV":"Maldives","ML":"Mali","MT":"Malta","MH":"Marshall Islands","MQ":"Martinique","MR":"Mauritania","MU":"Mauritius","YT":"Mayotte","FX":"Metropolitan France","MX":"Mexico","FM":"Micronesia","MI":"Midway Islands","MD":"Moldova","MC":"Monaco","MN":"Mongolia","ME":"Montenegro","MS":"Montserrat","MA":"Morocco","MZ":"Mozambique","MM":"Myanmar [Burma]","NA":"Namibia","NR":"Nauru","NP":"Nepal","NL":"Netherlands","NT":"Neutral Zone","NC":"New Caledonia","NZ":"New Zealand","NI":"Nicaragua","NE":"Niger","NG":"Nigeria","NU":"Niue","NF":"Norfolk Island","KP":"North Korea","MP":"Northern Mariana Islands","NO":"Norway","OM":"Oman","PC":"Pacific Islands Trust Territory","PK":"Pakistan","PW":"Palau","PS":"Palestinian Territories","PA":"Panama","PG":"Papua New Guinea","PY":"Paraguay","YD":"People\'s Democratic Republic of Yemen","PE":"Peru","PH":"Philippines","PN":"Pitcairn Islands","PT":"Portugal","PR":"Puerto Rico","QA":"Qatar","RO":"Romania","RW":"Rwanda","RE":"Réunion","BL":"Saint Barthélemy","SH":"Saint Helena","KN":"Saint Kitts and Nevis","LC":"Saint Lucia","MF":"Saint Martin","PM":"Saint Pierre and Miquelon","VC":"Saint Vincent and the Grenadines","WS":"Samoa","SM":"San Marino","SA":"Saudi Arabia","SN":"Senegal","RS":"Serbia","CS":"Serbia and Montenegro","SC":"Seychelles","SL":"Sierra Leone","SG":"Singapore","SK":"Slovakia","SI":"Slovenia","SB":"Solomon Islands","SO":"Somalia","ZA":"South Africa","GS":"South Georgia and the South Sandwich Islands","KR":"South Korea","ES":"Spain","LK":"Sri Lanka","SD":"Sudan","SR":"Suriname","SJ":"Svalbard and Jan Mayen","SZ":"Swaziland","SE":"Sweden","CH":"Switzerland","SY":"Syria","ST":"São Tomé and Príncipe","TW":"Taiwan","TJ":"Tajikistan","TZ":"Tanzania","TH":"Thailand","TL":"Timor-Leste","TG":"Togo","TK":"Tokelau","TO":"Tonga","TT":"Trinidad and Tobago","TN":"Tunisia","TR":"Turkey","TM":"Turkmenistan","TC":"Turks and Caicos Islands","TV":"Tuvalu","UG":"Uganda","AE":"United Arab Emirates","UY":"Uruguay","UZ":"Uzbekistan","VU":"Vanuatu","VA":"Vatican City","VE":"Venezuela","VN":"Vietnam","VI":"Virgin Islands (U.S.A.)","WK":"Wake Island","YE":"Yemen","ZM":"Zambia","ZW":"Zimbabwe","AX":"Åland Islands","CW":"Curaçao","SX":"Sint Maarten","UM":"United States Minor Outlying Islands","SS":"South Sudan","WF":"Wallis and Futuna","SW":"Serranilla Bank","BU":"Bajo Nuevo Bank","XK":"Kosovo","NOT_DEFINED":"Not defined"},"UK":{"UA":"Україна","RU":"Росія","BY":"Білорусь","PL":"Польща","GB":"Великобританія","US":"США","EG":"Єгипет","YE":"Ємен","IL":"Ізраїль","ID":"Індонезія","IN":"Індія","IQ":"Ірак","IR":"Іран","IE":"Ірландія","IS":"Ісландія","ES":"Іспанія","IT":"Італія","AU":"Австралія","AT":"Австрія","AZ":"Азербайджан","AX":"Аландські острови","AL":"Албанія","DZ":"Алжир","AS":"Американське Самоа","AO":"Ангола","AI":"Ангілья","AD":"Андорра","AQ":"Антарктида","AG":"Антигуа і Барбуда","AR":"Аргентина","AW":"Аруба","AF":"Афганістан","BS":"Багами","BD":"Бангладеш","BB":"Барбадос","BH":"Бахрейн","BE":"Бельгія","BZ":"Беліз","BJ":"Бенін","BM":"Бермуди","BG":"Болгарія","BO":"Болівія","BA":"Боснія і Герцоговина","BW":"Ботсвана","BR":"Бразилія","IO":"Британські території Індійського океану","BN":"Бруней","BF":"Буркіна-Фасо","BI":"Бурунді","BT":"Бутан","VN":"Вʼєтнам","VU":"Вануату","VA":"Ватикан","VE":"Венесуела","VG":"Віргінські острови Британії","VI":"Віргінські острови (США)","AM":"Вірменія","GA":"Габон","GY":"Гайана","GM":"Гамбія","GH":"Гана","HT":"Гаїті","GP":"Гваделупа","GT":"Гватемала","GN":"Гвінея","GW":"Гвінея-Біссау","GG":"Гернсі","HN":"Гондурас","HK":"Гонконґ О.А.Р. Китаю","GD":"Гренада","GL":"Гренландія","GR":"Греція","GE":"Грузія","GU":"Гуам","GI":"Гібралтар","DK":"Данія","CD":"Демократична Республіка Конґо","JE":"Джерсі","DJ":"Джібуті","DM":"Домінік","DO":"Домініканська Республіка","EC":"Еквадор","GQ":"Екваторіальна Гвінея","ER":"Еритрея","EE":"Естонія","ET":"Ефіопія","ZM":"Замбія","ZW":"Зімбабве","JO":"Йорданія","CV":"Кабо-Верде","KZ":"Казахстан","KY":"Кайманові острови","KH":"Камбоджа","CM":"Камерун","CA":"Канада","QA":"Катар","KE":"Кенія","KG":"Киргизстан","CN":"Китай","CC":"Кокосові острови","CO":"Колумбія","KM":"Коморські Острови","CG":"Конґо - Браззавіль","CR":"Коста-Рика","CI":"Кот д’Івуар","CU":"Куба","KW":"Кувейт","CY":"Кіпр","KI":"Кірибаті","LA":"Лаос","LV":"Латвія","LS":"Лесото","LT":"Литва","LU":"Люксембург","LR":"Ліберія","LB":"Ліван","LY":"Лівія","LI":"Ліхтенштейн","MM":"Мʼянма","MU":"Маврикій","MR":"Мавританія","MG":"Мадагаскар","YT":"Майот","MO":"Макао О.А.Р. Китаю","MK":"Македонія","MW":"Малаві","MY":"Малайзія","MV":"Мальдіви","MT":"Мальта","ML":"Малі","MA":"Марокко","MQ":"Мартиніка","MH":"Маршаллові Острови","MX":"Мексика","MZ":"Мозамбік","MD":"Молдова","MC":"Монако","MN":"Монголія","MS":"Монсеррат","FM":"Мікронезія","NA":"Намібія","NR":"Науру","NP":"Непал","NZ":"Нова Зеландія","NC":"Нова Каледонія","NO":"Норвегія","NE":"Нігер","NG":"Нігерія","NL":"Нідерланди","NI":"Нікарагуа","DE":"Німеччина","NU":"Нія","AE":"Обʼєднані Арабські Емірати","OM":"Оман","CK":"Острови Кука","SJ":"Острови Свальбард та Ян-Маєн","HM":"Острови Херд і Мак-Дональд","BV":"Острів Буве","IM":"Острів Мен","NF":"Острів Норфолк","CX":"Острів Різдва","BL":"Острів Святого Бартоломея","MF":"Острів Святого Мартіна","SH":"Острів Святої Єлени","ZA":"ПАР","PK":"Пакистан","PW":"Палау","PS":"Палестина","PA":"Панама","PG":"Папуа Нова Гвінея","PY":"Парагвай","PE":"Перу","PT":"Португалія","PR":"Пуерто-Ріко","GS":"Південна Джорджія та Південні Сандвічеві Острови","KR":"Південна Корея","KP":"Північна Корея","MP":"Північні Маріанські Острови","PN":"Піткерн","RE":"Реюньйон","RW":"Руанда","RO":"Румунія","SV":"Сальвадор","WS":"Самоа","SM":"Сан-Марино","ST":"Сан-Томе і Прінсіпі","SA":"Саудівська Аравія","SZ":"Свазіленд","SC":"Сейшели","PM":"Сен-Пʼєр і Мікелон","SN":"Сенегал","VC":"Сент-Вінсент і Гренадини","KN":"Сент-Кітс і Невіс","LC":"Сент-Люсія","RS":"Сербія","CS":"Сербія та Чорногорія","SY":"Сирія","SK":"Словакія","SI":"Словенія","SB":"Соломонові Острови","SO":"Сомалі","SD":"Судан","SR":"Суринам","TL":"Східний Тимор","SL":"Сьєрра-Леоне","SG":"Сінгапур","TJ":"Таджикистан","TW":"Тайвань","TZ":"Танзанія","TH":"Таїланд","TC":"Теркс і Кайкос","TG":"Того","TK":"Токелау","TO":"Тонга","TT":"Тринідад і Тобаго","TV":"Тувалу","TN":"Туніс","TR":"Туреччина","TM":"Туркменистан","UG":"Уганда","HU":"Угорщина","UZ":"Узбекистан","UY":"Уругвай","FO":"Фарерські острови","FK":"Фолклендські острови","GF":"Французька Гвіана","PF":"Французька Полінезія","TF":"Французькі Південні Території","FR":"Франція","FJ":"Фіджі","PH":"Філіппіни","FI":"Фінляндія","HR":"Хорватія","CF":"Центральноафриканська Республіка","TD":"Чад","CZ":"Чеська республіка","CL":"Чилі","ME":"Чорногорія","CH":"Швейцарія","SE":"Швеція","LK":"Шрі-Ланка","JM":"Ямайка","JP":"Японія","CW":"Кюрасао","SX":"Сінт-Мартен","UM":"Зовнішні малі острови США","SS":"Південний Судан","WF":"Волліс і Футуна","SW":"Серанілла Банк","BU":"Бахо-Нуево","XK":"Косово","NOT_DEFINED":"Не визначено"},"RU":{"UA":"Украина","RU":"Россия","BY":"Беларусь","PL":"Польша","GB":"Великобритания","US":"США","AU":"Австралия","AT":"Австрия","AZ":"Азербайджан","AX":"Аландские острова","AL":"Албания","DZ":"Алжир","AS":"Американское Самоа","AO":"Ангола","AI":"Ангуилла","AD":"Андорра","AQ":"Антарктика","AG":"Антигуа и Барбуда","AR":"Аргентина","AM":"Армения","AW":"Аруба","AF":"Афганистан","BS":"Багамские острова","BD":"Бангладеш","BB":"Барбадос","BH":"Бахрейн","BZ":"Белиз","BE":"Бельгия","BJ":"Бенин","BM":"Бермудские Острова","BG":"Болгария","BO":"Боливия","BA":"Босния и Герцеговина","BW":"Ботсвана","BR":"Бразилия","IO":"Британская территория в Индийском океане","VG":"Британские Виргинские Острова","VI":"Виргинские Острова (США)","BN":"Бруней Даруссалам","BF":"Буркина Фасо","BI":"Бурунди","BT":"Бутан","VU":"Вануату","VA":"Ватикан","HU":"Венгрия","VE":"Венесуэла","TL":"Восточный Тимор","VN":"Вьетнам","GA":"Габон","HT":"Гаити","GY":"Гайана","GM":"Гамбия","GH":"Гана","GP":"Гваделупа","GT":"Гватемала","GN":"Гвинея","GW":"Гвинея-Биссау","DE":"Германия","GG":"Гернси","GI":"Гибралтар","HN":"Гондурас","HK":"Гонконг, Особый Административный Район Китая","GD":"Гренада","GL":"Гренландия","GR":"Греция","GE":"Грузия","GU":"Гуам","DK":"Дания","CD":"Демократическая Республика Конго","JE":"Джерси","DJ":"Джибути","DO":"Доминиканская Республика","EG":"Египет","ZM":"Замбия","ZW":"Зимбабве","IL":"Израиль","IN":"Индия","ID":"Индонезия","JO":"Иордания","IQ":"Ирак","IR":"Иран","IE":"Ирландия","IS":"Исландия","ES":"Испания","IT":"Италия","YE":"Йемен","KZ":"Казахстан","KY":"Каймановы острова","KH":"Камбоджа","CM":"Камерун","CA":"Канада","QA":"Катар","KE":"Кения","CY":"Кипр","KI":"Кирибати","CN":"Китай","CC":"Кокосовые острова","CO":"Колумбия","KM":"Коморские Острова","CG":"Конго","KP":"Корейская Народно-Демократическая Республика","CR":"Коста-Рика","CI":"Кот д’Ивуар","CU":"Куба","KW":"Кувейт","KG":"Кыргызстан","LA":"Лаос","LV":"Латвия","LS":"Лесото","LR":"Либерия","LB":"Ливан","LY":"Ливия","LT":"Литва","LI":"Лихтенштейн","LU":"Люксембург","MU":"Маврикий","MR":"Мавритания","MG":"Мадагаскар","YT":"Майотта","MO":"Макао (особый административный район КНР)","MK":"Македония","MW":"Малави","MY":"Малайзия","ML":"Мали","MV":"Мальдивы","MT":"Мальта","MA":"Марокко","MQ":"Мартиник","MH":"Маршалловы Острова","MX":"Мексика","MZ":"Мозамбик","MD":"Молдова","MC":"Монако","MN":"Монголия","MS":"Монсеррат","MM":"Мьянма","NA":"Намибия","NR":"Науру","NP":"Непал","NE":"Нигер","NG":"Нигерия","NL":"Нидерланды","NI":"Никарагуа","NU":"Ниуе","NZ":"Новая Зеландия","NC":"Новая Каледония","NO":"Норвегия","AE":"Объединенные Арабские Эмираты","OM":"Оман","BV":"Остров Буве","DM":"Остров Доминика","IM":"Остров Мэн","NF":"Остров Норфолк","CX":"Остров Рождества","BL":"Остров Святого Бартоломея","MF":"Остров Святого Мартина","SH":"Остров Святой Елены","CV":"Острова Зеленого Мыса","CK":"Острова Кука","TC":"Острова Тёркс и Кайкос","HM":"Острова Херд и Макдональд","PK":"Пакистан","PW":"Палау","PS":"Палестинская автономия","PA":"Панама","PG":"Папуа-Новая Гвинея","PY":"Парагвай","PE":"Перу","PN":"Питкерн","PT":"Португалия","PR":"Пуэрто-Рико","KR":"Республика Корея","RE":"Реюньон","RW":"Руанда","RO":"Румыния","SV":"Сальвадор","WS":"Самоа","SM":"Сан-Марино","ST":"Сан-Томе и Принсипи","SA":"Саудовская Аравия","SZ":"Свазиленд","SJ":"Свальбард и Ян-Майен","MP":"Северные Марианские Острова","SC":"Сейшельские Острова","PM":"Сен-Пьер и Микелон","SN":"Сенегал","VC":"Сент-Винсент и Гренадины","KN":"Сент-Киттс и Невис","LC":"Сент-Люсия","RS":"Сербия","CS":"Сербия и Черногория","SG":"Сингапур","SY":"Сирийская Арабская Республика","SK":"Словакия","SI":"Словения","SB":"Соломоновы Острова","SO":"Сомали","SD":"Судан","SR":"Суринам","SL":"Сьерра-Леоне","TJ":"Таджикистан","TH":"Таиланд","TW":"Тайвань","TZ":"Танзания","TG":"Того","TK":"Токелау","TO":"Тонга","TT":"Тринидад и Тобаго","TV":"Тувалу","TN":"Тунис","TM":"Туркменистан","TR":"Турция","UG":"Уганда","UZ":"Узбекистан","UY":"Уругвай","FO":"Фарерские острова","FM":"Федеративные Штаты Микронезии","FJ":"Фиджи","PH":"Филиппины","FI":"Финляндия","FK":"Фолклендские острова","FR":"Франция","GF":"Французская Гвиана","PF":"Французская Полинезия","TF":"Французские Южные Территории","HR":"Хорватия","CF":"Центрально-Африканская Республика","TD":"Чад","ME":"Черногория","CZ":"Чешская республика","CL":"Чили","CH":"Швейцария","SE":"Швеция","LK":"Шри-Ланка","EC":"Эквадор","GQ":"Экваториальная Гвинея","ER":"Эритрея","EE":"Эстония","ET":"Эфиопия","ZA":"Южная Африка","GS":"Южная Джорджия и Южные Сандвичевы Острова","JM":"Ямайка","JP":"Япония","CW":"Кюрасао","SX":"Синт-Мартен","UM":"Внешние малые острова США","SS":"Южный Судан","WF":"Уоллис и Футуна","SW":"Серранилла Банк","BU":"Бахо-Нуэво","XK":"Республика Косово","NOT_DEFINED":"Не определено"},"ES":{"AF":"Afganistán","AX":"Islas Aland","AL":"Albania","DZ":"Argelia","AS":"Samoa Americana","AD":"Andorra","AO":"Angola","AI":"Anguila","AQ":"Antártida","AG":"Antigua y Barbuda","AR":"Argentina","AM":"Armenia","AW":"Aruba","AU":"Australia","AT":"Austria","AZ":"Azerbaiyán","BS":"Bahamas","BH":"Baréin","BD":"Bangladesh","BB":"Barbados","BY":"Bielorrusia","BE":"Bélgica","BZ":"Belice","BJ":"Benín","BM":"Islas Bermudas","BT":"Bután","BO":"Bolivia","BQ":"Bonaire, San Eustaquio y Saba","BA":"Bosnia y Herzegovina","BW":"Botsuana","BV":"Isla Bouvet","BR":"Brasil","IO":"Territorio Británico del Océano Índico","BN":"Brunei Darussalam","BG":"Bulgaria","BF":"Burkina Faso","BI":"Burundi","KH":"Camboya","CM":"Camerún","CA":"Canadá","CV":"Cabo Verde","KY":"Islas Caimán","CF":"República Centroafricana","TD":"Chad","CL":"Chile","CN":"China","CX":"Isla de Navidad","CC":"Islas Cocos (Keeling)","CO":"Colombia","KM":"Comoras","CG":"Congo","CD":"Congo (República Democrática del)","CK":"Islas Cook","CR":"Costa Rica","CI":"Costa de Marfil","HR":"Croacia","CU":"Cuba","CW":"Curazao","CY":"Chipre","CZ":"República Checa","DK":"Dinamarca","DJ":"Yibuti","DM":"Dominica","DO":"República Dominicana","EC":"Ecuador","EG":"Egipto","SV":"El Salvador","GQ":"Guinea Ecuatorial","ER":"Eritrea","EE":"Estonia","ET":"Etiopía","FK":"Islas Malvinas (Malvinas)","FO":"Islas Faroe","FJ":"Fiyi","FI":"Finlandia","FR":"Francia","GF":"Guayana Francesa","PF":"Polinesia Francesa","TF":"Francia de ultramar","GA":"Gabón","GM":"Gambia","GE":"Georgia","DE":"Alemania","GH":"Ghana","GI":"Gibraltar","GR":"Grecia","GL":"Groenlandia","GD":"Granada","GP":"Guadalupe","GU":"Guam","GT":"Guatemala","GG":"Guernesey","GN":"Guinea","GW":"Guinea-Bisáu","GY":"Guayana","HT":"Haití","HM":"Islas Heard y McDonald","VA":"Santa Sede","HN":"Honduras","HK":"Hong Kong","HU":"Hungría","IS":"Islandia","IN":"India","ID":"Indonesia","IR":"Irán (República Islámica de)","IQ":"Irak","IE":"Irlanda","IM":"Isla de Man","IL":"Israel","IT":"Italia","JM":"Jamaica","JP":"Japón","JE":"Jersey","JO":"Jordania","KZ":"Kazajistán","KE":"Kenia","KI":"Kiribati","KP":"República de Corea, Popular Democrática de)","KW":"Kuwait","KG":"Kirguistán","LA":"República Democrática Popular Lao","LV":"Letonia","LB":"Líbano","LS":"Lesoto","LR":"Liberia","LY":"Libia","LI":"Liechtenstein","LT":"Lituania","LU":"Luxemburgo","MO":"Macao","MK":"Macedonia (República de Macedonia del Norte)","MG":"Madagascar","MW":"Malaui","MY":"Malasia","MV":"Maldivas","ML":"Malí","MT":"Malta","MH":"Islas Marshall","MQ":"Martinica","MR":"Mauritania","MU":"Mauricio","YT":"Mayotte","MX":"México","FM":"Micronesia (Estados Federados de)","MD":"Moldavia (República de)","MC":"Mónaco","MN":"Mongolia","ME":"Montenegro","MS":"Montserrat","MA":"Marruecos","MZ":"Mozambique","MM":"Birmania","NA":"Namibia","NR":"Nauru","NP":"Nepal","NL":"Países Bajos","NC":"Nueva Caledonia","NZ":"Nueva Zelanda","NI":"Nicaragua","NE":"Níger","NG":"Nigeria","NU":"Niue","NF":"Isla Norfolk","MP":"Islas Marianas del Norte","NO":"Noruega","OM":"Omán","PK":"Pakistán","PW":"Palaos","PS":"Palestina, (Estado de)","PA":"Panamá","PG":"Papúa Nueva Guinea","PY":"Paraguay","PE":"Perú","PH":"Filipinas","PN":"Pitcairn","PL":"Polonia","PT":"Portugal","PR":"Puerto Rico","QA":"Catar","RE":"Reunión","RO":"Rumania","RU":"Federación Rusa","RW":"Ruanda","BL":"San Bartolomé","SH":"Santa Elena, Ascensión y Tristan da Cunha","KN":"San Cristóbal y Nieves","LC":"Santa Lucía","MF":"San Martín (Teritorio Francés)","PM":"San Pedro y Miquelón","VC":"San Vicente y las Granadinas","WS":"Samoa","SM":"San Marino","ST":"Santo Tomé y Príncipe","SA":"Arabia Saudita","SN":"Senegal","RS":"Serbia","SC":"Seychelles","SL":"Sierra Leona","SG":"Singapur","SX":"País de San Martín (Territorio Holandés)","SK":"Eslovaquia","SI":"Eslovenia","SB":"Islas Salomón","SO":"Somalia","ZA":"Sudáfrica","GS":"Islas Georgias del Sur y Sandwich del Sur","SS":"Sudán del Sur","ES":"España","LK":"Sri Lanka","SD":"Sudán","SR":"Surinam","SJ":"Svalbard y Jan Mayen","SZ":"Suazilandia","SE":"Suecia","CH":"Suiza","SY":"República Árabe Siria","TW":"Taiwan, Provincia de China","TJ":"Tayikistán","TZ":"Tanzanía, República Unida de","TH":"Tailandia","TL":"Timor Oriental","TG":"Togo","TK":"Tokelau","TO":"Tonga","TT":"Trinidad y Tobago","TN":"Túnez","TR":"Turquía","TM":"Turkmenistán","TC":"Islas Turcas y Caicos","TV":"Tuvalu","UG":"Uganda","UA":"Ucrania","AE":"Emiratos Árabes Unidos","GB":"Reino Unido","US":"EE.UU","UM":"Islas Ultramarinas Menores de los Estados Unidos","UY":"Uruguay","UZ":"Uzbekistán","VU":"Vanuatu","VE":"Venezuela (República Bolivariana de)","VN":"Vietnam","VG":"Islas Vírgenes (Británicas)","VI":"Islas Vírgenes (EE. UU.)","WF":"Wallis y Futuna","EH":"Sahara Occidental","YE":"Yemen","ZM":"Zambia","ZW":"Zimbabue","XK":"Kosovo","CT":"Islas Cantón y Enderbury","SW":"Banco de serranilla","BU":"Bajo Nuevo Bank","WK":"Wake Island","VD":"Vietnam del Norte","KR":"Corea del Sur","CS":"Serbia y Montenegro","YD":"República Democrática Popular de Yemen","PC":"Pacific Islands Trust Territorio","NT":"Zona neutral","MI":"Islas Midway","FX":"Francia metropolitana","JT":"Isla Johnston","FQ":"Territorios franceses del sur y antártico","NQ":"Dronning Maud Land","NOT_DEFINED":"No definida"},"PT-BR":{"UA":"Ucrânia","RU":"Rússia","BY":"Bielorrússia","PL":"Polónia","GB":"Reino Unido","US":"Estados Unidos","AF":"Afeganistão","AL":"Albânia","DZ":"Argélia","AS":"Samoa Americana","AD":"Andorra","AO":"Angola","AI":"Anguila","AQ":"Antárctica","AG":"Antígua e Barbuda","AR":"Argentina","AM":"Arménia","AW":"Aruba","AU":"Austrália","AT":"Áustria","AZ":"Azerbaijão","BS":"Bahamas","BH":"Barém","BD":"Bangladesh","BB":"Barbados","BE":"Bélgica","BZ":"Belize","BJ":"Benim","BM":"Bermudas","BT":"Butão","BO":"Bolívia","BA":"Bósnia e Herzegovina","BW":"Botsuana","BV":"Ilha Bouvet","BR":"Brasil","IO":"Território Britânico do Oceano Índico","VG":"Ilhas Virgens Britânicas","BN":"Brunei","BG":"Bulgária","BF":"Burkina Faso","BI":"Burundi","KH":"Camboja","CM":"Camarões","CA":"Canadá","CT":"Cantão e Ilhas Enderbury","CV":"Cabo Verde","KY":"Ilhas Caimão","CF":"República Centro-Africana","TD":"Chade","CL":"Chile","CN":"China","CX":"Ilha Christmas","CC":"Ilhas Cocos [Keeling]","CO":"Colômbia","KM":"Comores","CG":"Congo - Brazzaville","CD":"Congo - Kinshasa","CK":"Ilhas Cook","CR":"Costa Rica","HR":"Croácia","CU":"Cuba","CY":"Chipre","CZ":"República Checa","CI":"Côte d’Ivoire","DK":"Dinamarca","DJ":"Djibuti","DM":"Domínica","DO":"República Dominicana","NQ":"Dronning Maud Land","EC":"Equador","EG":"Egipto","SV":"El Salvador","GQ":"Guiné Equatorial","ER":"Eritreia","EE":"Estónia","ET":"Etiópia","FK":"Ilhas Falkland","FO":"Ilhas Faroé","FJ":"Fiji","FI":"Finlândia","FR":"França","GF":"Guiana Francesa","PF":"Polinésia Francesa","TF":"Territórios Franceses do Sul","FQ":"Territórios Austrais e Antárcticos Franceses","GA":"Gabão","GM":"Gâmbia","GE":"Geórgia","DE":"Alemanha","GH":"Gana","GI":"Gibraltar","GR":"Grécia","GL":"Gronelândia","GD":"Granada","GP":"Guadalupe","GU":"Guam","GT":"Guatemala","GG":"Guernsey","GN":"Guiné","GW":"Guiné-Bissau","GY":"Guiana","HT":"Haiti","HM":"Ilha Heard e Ilhas McDonald","HN":"Honduras","HK":"Hong Kong SAR China","HU":"Hungria","IS":"Islândia","IN":"Índia","ID":"Indonésia","IR":"Irão","IQ":"Iraque","IE":"Irlanda","IM":"Ilha de Man","IL":"Israel","IT":"Itália","JM":"Jamaica","JP":"Japão","JE":"Jersey","JT":"Ilha Johnston","JO":"Jordânia","KZ":"Cazaquistão","KE":"Quénia","KI":"Kiribati","KW":"Kuwait","KG":"Quirguizistão","LA":"Laos","LV":"Letónia","LB":"Líbano","LS":"Lesoto","LR":"Libéria","LY":"Líbia","LI":"Liechtenstein","LT":"Lituânia","LU":"Luxemburgo","MO":"Macau SAR China","MK":"Macedónia","MG":"Madagáscar","MW":"Malawi","MY":"Malásia","MV":"Maldivas","ML":"Mali","MT":"Malta","MH":"Ilhas Marshall","MQ":"Martinica","MR":"Mauritânia","MU":"Maurícia","YT":"Mayotte","FX":"França Metropolitana","MX":"México","FM":"Micronésia","MI":"Ilhas Midway","MD":"Moldávia","MC":"Mónaco","MN":"Mongólia","ME":"Montenegro","MS":"Monserrate","MA":"Marrocos","MZ":"Moçambique","MM":"Myanmar [Birmânia]","NA":"Namíbia","NR":"Nauru","NP":"Nepal","NL":"Países Baixos","NT":"Zona Neutra","NC":"Nova Caledónia","NZ":"Nova Zelândia","NI":"Nicarágua","NE":"Níger","NG":"Nigéria","NU":"Niue","NF":"Ilha Norfolk","KP":"Coreia do Norte","MP":"Ilhas Marianas do Norte","NO":"Noruega","OM":"Omã","PC":"Território Fiduciário das Ilhas do Pacífico","PK":"Paquistão","PW":"Palau","PS":"Territórios Palestinianos","PA":"Panamá","PG":"Papuásia-Nova Guiné","PY":"Paraguai","YD":"República Democrática e Popular do Iémen","PE":"Peru","PH":"Filipinas","PN":"Ilhas Pitcairn","PT":"Portugal","PR":"Porto Rico","QA":"Qatar","RO":"Roménia","RW":"Ruanda","RE":"Réunião","BL":"São Bartolomeu","SH":"Santa Helena","KN":"São Cristóvão e Nevis","LC":"Santa Lúcia","MF":"São Martinho","PM":"São Pedro e Miquelon","VC":"São Vicente e Granadinas","WS":"Samoa","SM":"São Marino","SA":"Arábia Saudita","SN":"Senegal","RS":"Sérvia","CS":"Sérvia e Montenegro","SC":"Seicheles","SL":"Serra Leoa","SG":"Singapura","SK":"Eslováquia","SI":"Eslovénia","SB":"Ilhas Salomão","SO":"Somália","ZA":"África do Sul","GS":"Geórgia do Sul e Ilhas Sandwich do Sul","KR":"Coreia do Sul","ES":"Espanha","LK":"Sri Lanka","SD":"Sudão","SR":"Suriname","SJ":"Svalbard e Jan Mayen","SZ":"Suazilândia","SE":"Suécia","CH":"Suíça","SY":"Síria","ST":"São Tomé e Príncipe","TW":"Taiwan","TJ":"Tajiquistão","TZ":"Tanzânia","TH":"Tailândia","TL":"Timor-Leste","TG":"Togo","TK":"Tokelau","TO":"Tonga","TT":"Trinidade e Tobago","TN":"Tunísia","TR":"Turquia","TM":"Turquemenistão","TC":"Ilhas Turcas e Caicos","TV":"Tuvalu","UG":"Uganda","AE":"Emirados Árabes Unidos","UY":"Uruguai","UZ":"Uzbequistão","VU":"Vanuatu","VA":"Cidade do Vaticano","VE":"Venezuela","VN":"Vietname","VI":"Ilhas Virgens (E.U.A.)","WK":"Ilha Wake","YE":"Iémen","ZM":"Zâmbia","ZW":"Zimbabué","AX":"Ilhas Ålandas","CW":"Curaçao","SX":"Sint Maarten","UM":"United States Minor Outlying Islands","SS":"Sudão do Sul","WF":"Wallis e Futuna","SW":"Banco de Serranilla","BU":"Banco Bajo Nuevo","XK":"Kosovo","NOT_DEFINED":"Não definido"}}');

/***/ })

},
/******/ __webpack_require__ => { // webpackRuntimeModules
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
/******/ __webpack_require__.O(0, [96], () => (__webpack_exec__("bZMm"), __webpack_exec__("sHfo")));
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ }
]);
//# sourceMappingURL=main.9d4605b9418eaf51912d.js.map